Fix unsigned overflow in minsyms reader.
[external/binutils.git] / gdb / ChangeLog
1 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
2
3         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
4         overflow.
5
6 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
7
8         * configure: Regenerate.
9
10 2018-11-09  Tom de Vries  <tdevries@suse.de>
11
12         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
13         unconditionally, to set the language of the symbol.  Manage freeing
14         returned pointer using gdb::unique_xmalloc_ptr.
15
16 2018-11-08  Tom Tromey  <tom@tromey.com>
17
18         * record.c (require_record_target): Upper-case "<TAB>".
19
20 2018-11-08  Tom Tromey  <tom@tromey.com>
21
22         * python/lib/gdb/command/pretty_printers.py
23         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
24
25 2018-11-08  Tom Tromey  <tom@tromey.com>
26
27         PR gdb/23555:
28         PR gdb/23838:
29         * target.h (target_supports_terminal_ours): Return bool.
30         * target.c (target_supports_terminal_ours): Handle case where
31         current_top_target returns nullptr.  Return bool.
32
33 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
34
35         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
36         return the correct count for potential HFAs.
37
38 2018-11-08  Jan Beulich  <jbeulich@suse.com>
39
40         * i387-tdep.c (i387_supply_xsave): Split handling of
41         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
42         (i387_collect_xsave): Likewise.
43
44 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
45
46         * riscv-tdep.c (riscv_insn::decode): Update header comment.
47         (riscv_frame_this_id): Catch errors thrown while building the
48         frame cache, leave the frame id as the default, which is the outer
49         frame id.
50
51 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
52
53         * ada-lang.c (read_atcb): Only set task_info->called_task if
54         task_info->state == Entry_Caller_Sleep.
55         (print_ada_task_info): Do not check task_info->state before
56         checking task_info->called_task.
57         (info_task): Likewise.
58
59 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
60
61         * ada-tasks.c (read_atcb): Clear task_info before computing
62         the value of each of its fields.
63
64 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
65
66         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
67         NULL before dereferencing it.
68
69 2018-11-06  Tom de Vries  <tdevries@suse.de>
70
71         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
72         program headers.
73
74 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
75
76         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
77         so that it applies to uclinux as well.
78
79 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
80
81         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
82         when on AAPCS.
83
84 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
85
86         * riscv-fbsd-nat.c (getregs_supplies): Return true for
87         RISCV_CSR_SSTATUS_REGNUM.
88
89 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
90
91         * source.c (open_source_file): Fix leak by transferring the
92         current s->fullname to the unique_xmalloc_ptr fullname given
93         to find_and_open_source.
94
95 2018-11-04  Tom Tromey  <tom@tromey.com>
96
97         * varobj.c (install_default_visualizer): Update.
98         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
99         Return gdbpy_ref.
100         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
101         (find_pretty_printer_from_progspace)
102         (find_pretty_printer_from_gdb, find_pretty_printer)
103         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
104         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
105         Update.
106
107 2018-11-04  Tom Tromey  <tom@tromey.com>
108
109         * python/python.c (gdbpy_parameter_value): Update.
110         * python/python-internal.h (python_string_to_unicode)
111         (python_string_to_target_python_string)
112         (host_string_to_python_string): Return gdbpy_ref.
113         * python/py-utils.c (python_string_to_unicode)
114         (unicode_to_encoded_python_string)
115         (unicode_to_target_python_string)
116         (python_string_to_target_string)
117         (python_string_to_target_python_string): Return gdbpy_ref.
118         (python_string_to_host_string): Update.
119         (host_string_to_python_string): Return gdbpy_ref.
120         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
121         (stpy_fullname): Update.
122         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
123         Update.
124         * python/py-prettyprint.c (print_string_repr): Update.
125         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
126         (objfpy_get_build_id): Update.
127         * python/py-breakpoint.c (bppy_get_location)
128         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
129         Update.
130
131 2018-11-04  Tom Tromey  <tom@tromey.com>
132
133         * python/python-internal.h (gdb_py_object_from_longest)
134         (gdb_py_object_from_ulongest): Return gdbpy_ref.
135         * python/py-value.c (valpy_int): Update.
136         * python/py-utils.c (gdb_py_object_from_longest): Return
137         gdbpy_ref.
138         (gdb_py_object_from_ulongest): Likewise.
139         * python/py-type.c (typy_get_alignof): Update.
140         * python/py-linetable.c (ltpy_get_all_source_lines)
141         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
142         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
143
144 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
145
146         * ada-lang.c (_initialize_ada_language): Fix typo.
147
148 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
149
150         * language.c (type): Remove.
151         (_initialize_language): Remove assignment to type.
152
153 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
154
155         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
156         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
157         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
158         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
159         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
160         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
161         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
162         and aarch64-ravenscar-thread.o.
163         * NEWS: Add entry documenting Ravenscar tasking support
164         on AArch64 ELF.
165
166 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
167
168         * symtab.c (info_functions_command): Initialize quiet flag.
169         * stack.c (info_args_command): Likewise.
170
171 2018-11-01  Jim Wilson  <jimw@sifive.com>
172
173         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
174         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
175         debugging messages.
176
177 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
178
179         * ada-lang.c (ada_watch_location_expression): New function.
180         (ada_language_defn): Set la_watch_location_expression to
181         ada_watch_location_expression.
182
183 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
184
185         * print-utils.c (int_string): Remove unnecessary trailing spaces.
186
187 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
188
189         * rs6000-tdep.c (skip_prologue): Fix potential negative left
190         shifting.
191
192 2018-11-01  Jerome Guitton  <guitton@adacore.com>
193             Joel Brobecker  <brobecker@adacore.com>
194
195         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
196         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
197         * arm-pikeos-tdep.c: New file.
198         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
199         embedded system.
200         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
201
202 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
203
204         * common/pathstuff.c (get_standard_temp_dir): New.
205         * common/pathstuff.h (get_standard_temp_dir): New.
206         * config.in: Re-generate.
207         * configure: Re-generate.
208         * configure.ac: Don't check for mkdtemp.
209         * gnulib/aclocal-m4-deps.mk: Re-generate.
210         * gnulib/aclocal.m4: Re-generate.
211         * gnulib/config.in: Re-generate.
212         * gnulib/configure: Re-generate.
213         * gnulib/import/Makefile.am: Re-generate.
214         * gnulib/import/Makefile.in: Re-generate.
215         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
216         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
217         * gnulib/import/m4/mkdtemp.m4: New file.
218         * gnulib/import/mkdtemp.c: New file.
219         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
220         Add mkdtemp module.
221         * unittests/mkdir-recursive-selftests.c (test): Use
222         get_standard_temp_dir.
223         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
224         ifdef.
225         * compile/compile.c (get_compile_file_tempdir): Likewise.
226
227 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
228
229         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
230         (SIG_FRAME_LR_OFFSET64): New define.
231         (SIG_FRAME_FP_OFFSET64): New define.
232         (aix_sighandle_frame_cache): New Function.
233         (aix_sighandle_frame_this_id): New Function.
234         (aix_sighandle_frame_prev_register): New Function.
235         (aix_sighandle_frame_sniffer): New Function.
236         (aix_sighandle_frame_unwind): New global variable.
237         (rs6000_aix_init_osabi): Install new frame unwinder.
238
239 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
240
241         PR gdb/23835
242         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
243         already defined.
244
245 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
246
247         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
248
249 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
250
251         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
252         (producer_is_icc): New function.
253         (check_producer): Set producer_is_icc field on dwarf2_cu.
254         (dwarf2_init_integer_type): New function.
255         (read_base_type): Call dwarf2_init_integer_type instead of
256         init_integer_type in all cases.
257         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
258         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
259         LEN is greater than 0.
260
261 2018-10-30  Tom Tromey  <tom@tromey.com>
262
263         * main.c (captured_main_1): Check return value of bfd_init.
264
265 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
266
267         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
268         Adjust comments.
269
270 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
271
272         * procfs.c: Include common/pathstuff.h.
273
274 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
275
276         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
277         Add missing braces.  No functional change.
278
279 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
280
281         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
282         to report a bad option and fix indentation.
283         * demangle.c (demangle_command): Use report_unrecognized_option_error
284         to report a bad option and correctly report the bad option.
285
286 2018-10-27  Tom Tromey  <tom@tromey.com>
287
288         PR cli/23364:
289         * darwin-nat.c (copied_shell): New global.
290         (may_have_sip): Rename from should_disable_startup_with_shell.
291         (copy_shell_to_cache, maybe_cache_shell): New functions.
292         (darwin_nat_target::create_inferior): Update.  Use
293         copied_shell.
294
295 2018-10-27  Tom Tromey  <tom@tromey.com>
296
297         * unittests/scoped_fd-selftests.c (test_to_file): New function.
298         (run_tests): Call test_to_file.
299         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
300         temporary files.
301         * common/scoped_fd.h (scoped_fd::to_file): New method.
302
303 2018-10-27  Tom Tromey  <tom@tromey.com>
304
305         * unittests/scoped_mmap-selftests.c (test_normal): Use
306         gdb_mkostemp_cloexec.
307         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
308         Use gdb_mkostemp_cloexec.
309         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
310         gnulib/config.in, gnulib/configure,
311         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
312         gnulib/import/m4/gnulib-cache.m4,
313         gnulib/import/m4/gnulib-comp.m4: Update.
314         * gnulib/import/m4/mkostemp.m4: New file.
315         * gnulib/import/m4/mkstemp.m4: Remove.
316         * gnulib/import/mkostemp.c: New file.
317         * gnulib/import/mkstemp.m4: Remove.
318         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
319         mkstemp, add mkostemp.  Apply new patch.
320         * gnulib/import/stdlib.in.h: Apply patch.
321         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
322         New file.
323         * dwarf-index-write.c (write_psymtabs_to_index): Use
324         gdb_mkostemp_cloexec.
325         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
326
327 2018-10-27  Tom Tromey  <tom@tromey.com>
328
329         * unittests/mkdir-recursive-selftests.c: New file.
330         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
331         unittests/mkdir-recursive-selftests.c.
332         * dwarf-index-cache.c (mkdir_recursive): Move to
333         common/filestuff.c.
334         (index_cache::store): Check return value of mkdir_recursive.
335         (create_dir_and_check, test_mkdir_recursive): Move to new file.
336         (_initialize_index_cache): Don't register test.
337         * common/filestuff.h (mkdir_recursive): Declare.
338         * common/filestuff.c (mkdir_recursive): Move from
339         dwarf-index-cache.c.  Return bool.
340
341 2018-10-27  Tom Tromey  <tom@tromey.com>
342
343         * dwarf-index-write.c (write_psymtabs_to_index): Move
344         make_temp_filename to common/pathstuff.c.
345         * common/pathstuff.h (make_temp_filename): Declare.
346         * common/pathstuff.c (make_temp_filename): New function, moved
347         from dwarf-index-write.c.
348
349 2018-10-27  Tom Tromey  <tom@tromey.com>
350
351         * procfs.c (procfs_target::create_inferior): Use get_shell.
352         * cli/cli-cmds.c (shell_escape): Use get_shell.
353         * windows-nat.c (windows_nat_target::create_inferior): Use
354         get_shell.
355         * common/pathstuff.c (get_shell): New function.
356         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
357         (fork_inferior): Use get_shell.
358         * common/pathstuff.h (get_shell): Declare.
359
360 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
361
362         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
363
364 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
365
366         * stack.c (print_variable_and_value_data): Add preg and treg.
367         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
368         and update callers.
369         (print_frame_arg_vars): Likewise.
370         (prepare_reg): New function.
371         (info_locals_command): Extract info print args and use them.
372         (info_args_command): Likewise.
373         (_initialize_stack): Modify on-line help.
374         * symtab.c (treg_matches_sym_type_name): New function.
375         (search_symbols): New arg t_regexp.
376         (symtab_symbol_info): New args quiet, regexp, t_regexp.
377         (info_variables_command): Extract info print args and use them.
378         (info_functions_command): Likewise.
379         (info_types_command): Update call to symtab_symbol_info.
380         (_initialize_symtab): Modify on-line help.
381         * symtab.h (treg_matches_sym_type_name): New function.
382         (search_symbols): New t_regexp arg.
383
384 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
385
386         * cli-utils.c (extract_arg_maybe_quoted): New function.
387         (extract_info_print_args): New function.
388         (info_print_args_help): New function.
389         (report_unrecognized_option_error): New function.
390         * cli-utils.h (extract_arg_maybe_quoted): New function.
391         (extract_info_print_args): New function.
392         (info_print_args_help): New function.
393         (report_unrecognized_option_error): New function.
394
395 2018-10-26  Tom Tromey  <tom@tromey.com>
396
397         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
398         (compute_compunit_symtab_includes): Update.
399         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
400         (compunit_symtab_ptr): Likewise.
401
402 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
403
404         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
405         default_print_auxv_entry for specific tag values.
406
407 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
408
409         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
410
411 2018-10-26  Jim Wilson  <jimw@sifive.com>
412
413         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
414         (riscv_linux_sigframe_init): Declare.
415         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
416         (riscv_linux_sigframe): New.
417         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
418         (riscv_linux_sigframe_init): Define.
419         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
420
421         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
422         (riscv_isa_flen): Likewise.  Drop static.
423         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
424         (riscv_isa_flen): Likewise.  Declare.
425
426 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
427             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
428
429         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
430         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
431         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
432         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
433         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
434         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
435         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
436         Define.
437         (struct ppc_linux_features) <htm>: New field.
438         (ppc_linux_no_features): Add initializer for htm field.
439         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
440         new tdescs.
441         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
442         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
443         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
444         Define if not already defined.
445         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
446         and rs6000/powerpc-isa207-htm-vsx64l.
447         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
448         rs6000/powerpc-isa207-htm-vsx64l.xml.
449         * features/rs6000/power-htm-spr.xml: New file.
450         * features/rs6000/power-htm-core.xml: New file.
451         * features/rs6000/power64-htm-core.xml: New file.
452         * features/rs6000/power-htm-fpu.xml: New file.
453         * features/rs6000/power-htm-altivec.xml: New file.
454         * features/rs6000/power-htm-vsx.xml: New file.
455         * features/rs6000/power-htm-ppr.xml: New file.
456         * features/rs6000/power-htm-dscr.xml: New file.
457         * features/rs6000/power-htm-tar.xml: New file.
458         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
459         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
460         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
461         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
462         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
463         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
464         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
465         fetch_regset with HTM regsets.
466         (store_register, store_ppc_registers): Call store_regset with HTM
467         regsets.
468         (ppc_linux_nat_target::read_description): Set htm field in the
469         features struct if needed.
470         * ppc-linux-tdep.c: Include
471         features/rs6000/powerpc-isa207-htm-vsx32l.c and
472         features/rs6000/powerpc-isa207-htm-vsx64l.c.
473         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
474         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
475         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
476         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
477         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
478         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
479         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
480         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
481         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
482         (ppc32_linux_ctarregset): New globals.
483         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
484         (ppc_linux_collect_core_cpgrregset): New function.
485         (ppc_linux_iterate_over_regset_sections): Call back with the htm
486         regsets.
487         (ppc_linux_core_read_description): Check if the tm spr section is
488         present and set htm in the features struct.
489         (_initialize_ppc_linux_tdep): Call
490         initialize_tdesc_powerpc_isa207_htm_vsx32l and
491         initialize_tdesc_powerpc_isa207_htm_vsx64l.
492         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
493         Declare.
494         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
495         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
496         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
497         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
498         New fields.
499         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
500         Likewise.
501         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
502         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
503         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
504         New enum fields.
505         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
506         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
507         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
508         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
509         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
510         <PPC_CTAR_REGNUM>: Likewise.
511         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
512         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
513         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
514         (IS_CEFP_PSEUDOREG): Define.
515         (rs6000_register_name): Hide the upper halves of checkpointed VSX
516         registers.  Return names for the checkpointed DFP, VSX, and EFP
517         pseudo registers.
518         (rs6000_pseudo_register_type): Remove initial assert and raise an
519         internal error in the else clause instead.  Return types for the
520         checkpointed DFP, VSX, and EFP pseudo registers.
521         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
522         checkpointed DFP pseudo registers.
523         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
524         checkpointed VSX pseudo registers.
525         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
526         from efpr_pseudo_register_read and
527         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
528         registers.
529         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
530         Handle checkpointed DFP, VSX, and EFP registers.
531         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
532         (efp_ax_pseudo_register_collect): New functions.
533         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
534         register logic to new functions.  Handle checkpointed DFP, VSX,
535         and EFP pseudo registers.
536         (rs6000_gdbarch_init): Look for and validate the htm features.
537         Include checkpointed DFP, VSX and EFP pseudo-registers.
538         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
539         HTM registers.
540
541 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
542
543         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
544         without altivec or fpu.
545
546 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
547             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
548
549         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
550         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
551         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
552         Define if not already defined.
553         * features/rs6000/power-ebb.xml: New file.
554         * features/rs6000/power-linux-pmu.xml: New file.
555         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
556         features.
557         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
558         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
559         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
560         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
561         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
562         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
563         fetch_regset with ebb and pmu regsets.
564         (store_register, store_ppc_registers): Call store_regset with ebb
565         and pmu regsets.
566         (ppc_linux_nat_target::read_description): Set isa207 field in the
567         features struct if ebb and pmu are avaiable.
568         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
569         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
570         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
571         and pmu regsets.
572         (ppc_linux_core_read_description): Check if the pmu section is
573         present and set isa207 in the features struct.
574         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
575         (ppc32_linux_pmuregset): Declare.
576         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
577         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
578         <ppc_sier_regnum>: New field.
579         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
580         New enum values.
581         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
582         values.
583         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
584         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
585         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
586         ebb and pmu features.
587
588 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
589             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
590
591         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
592         (tdesc_powerpc_isa207_vsx64l): Declare.
593         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
594         (struct ppc_linux_features) <isa207>: New field.
595         (ppc_linux_no_features): Add initializer for isa207 field.
596         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
597         new tdescs.
598         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
599         (NT_PPC_TAR): Define if not already defined.
600         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
601         rs6000/powerpc-isa207-vsx64l.
602         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
603         rs6000/powerpc-isa207-vsx64l.xml.
604         * features/rs6000/power-tar.xml: New file.
605         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
606         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
607         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
608         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
609         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
610         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
611         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
612         fetch_regset with the TAR regset.
613         (store_register, store_ppc_registers): Call store_regset with the
614         TAR regset.
615         (ppc_linux_nat_target::read_description): Set isa207 field in the
616         features struct if needed.
617         * ppc-linux-tdep.c: Include
618         features/rs6000/powerpc-isa207-vsx32l.c and
619         features/rs6000/powerpc-isa207-vsx64l.c.
620         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
621         (ppc_linux_iterate_over_regset_sections): Call back with the tar
622         regset.
623         (ppc_linux_core_read_description): Check if the tar section is
624         present and set isa207 in the features struct.
625         (_initialize_ppc_linux_tdep): Call
626         initialize_tdesc_powerpc_isa207_vsx32l and
627         initialize_tdesc_powerpc_isa207_vsx64l.
628         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
629         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
630         (enum) <PPC_TAR_REGNUM>: New enum value.
631         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
632         feature.
633         (ppc_process_record_op31): Record changes to TAR.
634
635 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
636             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
637
638         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
639         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
640         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
641         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
642         (struct ppc_linux_features) <ppr_dscr>: New field.
643         (ppc_linux_no_features): Add initializer for ppr_dscr field.
644         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
645         new tdescs.
646         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
647         Define if not already defined.
648         * features/Makefile (WHICH): Add
649         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
650         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
651         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
652         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
653         * features/rs6000/power-dscr.xml: New file.
654         * features/rs6000/power-ppr.xml: New file.
655         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
656         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
657         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
658         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
659         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
660         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
661         * ppc-linux-nat.c: Include <sys/uio.h>.
662         (fetch_regset, store_regset, check_regset): New functions.
663         (fetch_register, fetch_ppc_registers): Call fetch_regset with
664         DSCR and PPR regsets.
665         (store_register, store_ppc_registers): Call store_regset with
666         DSCR and PPR regsets.
667         (ppc_linux_get_hwcap2): New function.
668         (ppc_linux_nat_target::read_description): Call
669         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
670         features struct if needed.
671         * ppc-linux-tdep.c: Include
672         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
673         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
674         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
675         (ppc32_linux_dscrregset): New globals.
676         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
677         and dscr regsets.
678         (ppc_linux_core_read_description): Check if the ppr and dscr
679         sections are present and set ppr_dscr in the features struct.
680         (_initialize_ppc_linux_tdep): Call
681         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
682         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
683         * ppc-linux-tdep.h (ppc32_linux_pprregset)
684         (ppc32_linux_dscrregset): Declare.
685         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
686         <ppc_dscr_regnum>: New field.
687         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
688         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
689         and dscr features.
690         (ppc_process_record_op31): Record changes to PPR and DSCR.
691
692 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
693
694         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
695         second initializer line for the have_* variables.  Initialize
696         have_fpu to 0 instead of 1.
697
698 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
699
700         * arch/ppc-linux-common.c (ppc_linux_match_description):
701         Parenthesize tdesc assignements and indent them properly.
702
703 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
704
705         * ppc-linux-nat.c (fetch_register): Change if statement to else
706         if.
707         (store_register): Likewise.
708
709 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
710
711         * rs6000-tdep.c: Remove reggroups.h include.
712         (rs6000_pseudo_register_reggroup_p): Remove.
713         (rs6000_gdbarch_init): Remove call to
714         set_tdesc_pseudo_register_reggroup_p.
715
716 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
717
718         * reggroups.c (default_register_reggroup_p): Return true for
719         decfloat registers and float_reggroup.
720
721 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
722
723         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
724         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
725         ppc_linux_collect_vrregset by regcache_collect_regset.
726
727 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
728
729         * linux-tdep.c (linux_collect_regset_section_cb): Use
730         std::vector<gdb_byte> instead of char * and malloc for buf.
731         Remove xfree.
732
733 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
734
735         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
736         symtab_start instead of always using language_unknown.
737
738 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
739
740         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
741         READ_P parameter, catch and ignore register access errors from
742         either the old or new MISA location.
743         (riscv_has_feature): Update call to riscv_read_misa_reg.
744
745 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
746
747         * python/py-function.c (convert_values_to_python): Return
748         gdbpy_ref<>.  Add header comment.
749         (fnpy_call): Adjust.
750
751 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
752
753         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
754         (cmdpy_completer_handle_brkchars): Adjust.
755         (cmdpy_completer): Adjust.
756
757 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
758
759         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
760         Pass correct regnum to raw_supply_zeroed.
761
762 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
763
764         * regcache.c (cooked_read_test): Add CSKY to the list of
765         architectures with a save_reggroup
766
767 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
768
769         PR gdb/23368
770         * infrun.c (follow_exec): In the follow_exec_mode_new case,
771         transfer terminal state from old new new inferior.
772         * terminal.h (swap_terminal_info): New function.
773         * inflow.c (swap_terminal_info): New function.
774
775 2018-10-23  Tom Tromey  <tom@tromey.com>
776
777         * record-btrace.c (get_thread_current_frame_id): Rename from
778         get_thread_current_frame.  Return a frame_id.
779         (record_btrace_start_replaying): Update.
780
781 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
782
783         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
784         for CSRs.
785
786 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
787
788         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
789         have_nonsteppable_watchpoint attribute to 1.
790
791 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
792
793         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
794         register names.
795         (struct register_alias): Rename to...
796         (struct riscv_register_alias): ...this, and update comment.
797         (riscv_register_aliases): Update type, and alias names.  Remove
798         CSR names from this list.
799         (riscv_register_name): Use riscv_gdb_reg_names for int and float
800         register names.  Add an extra assertion.
801         (riscv_is_regnum_a_named_csr): New function.
802         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
803
804 2018-10-22  Jim Wilson  <jimw@sifive.com>
805
806         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
807         FP reg smaller than FP reg size, and fill with -1 instead of 0.
808
809         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
810         (riscv_register_type): Use them.
811         (riscv_print_one_register_info): Handle union of floats same as float.
812         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
813         riscv_fpreg_q_type fields.
814
815 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
816
817         * gdbarch.sh (gdbarch_num_cooked_regs): New.
818         * gdbarch.h: Re-generate.
819         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
820         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
821         * eval.c (evaluate_subexp_standard): Likewise.
822         * findvar.c (value_of_register): Likewise.
823         (value_of_register_lazy): Likewise.
824         (address_from_register): Likewise.
825         * frame.c (get_frame_register_bytes): Likewise.
826         * gdbarch-selftests.c (register_to_value_test): Likewise.
827         * h8300-tdep.c (h8300_register_type): Likewise.
828         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
829         (i386_svr4_reg_to_regnum): Likewise.
830         * infcmd.c (default_print_registers_info): Likewise.
831         (registers_info): Likewise.
832         (print_vector_info): Likewise.
833         (default_print_float_info): Likewise.
834         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
835         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
836         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
837         (mi_cmd_data_list_changed_registers): Likewise.
838         (mi_cmd_data_list_register_values): Likewise.
839         (mi_cmd_data_write_register_values): Likewise.
840         (mi_cmd_trace_frame_collected): Likewise.
841         * mips-tdep.c (print_gp_register_row): Likewise.
842         (mips_print_registers_info): Likewise.
843         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
844         * regcache.c (init_regcache_descr): Likewise.
845         (register_size): Likewise.
846         (register_dump::dump): Likewise.
847         (cooked_read_test): Likewise.
848         (cooked_write_test): Likewise.
849         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
850         (rs6000_gdbarch_init): Likewise.
851         * stabsread.c (stab_reg_to_regnum): Likewise.
852         * stack.c (info_frame_command): Likewise.
853         * target-descriptions.c (tdesc_register_name): Likewise.
854         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
855         * tui/tui-regs.c (tui_show_register_group): Likewise.
856         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
857         (user_reg_map_regnum_to_name): Likewise.
858         (value_of_user_reg): Likewise.
859         (maintenance_print_user_registers): Likewise.
860         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
861         (xtensa_register_name): Likewise.
862         (xtensa_register_type): Likewise.
863         (xtensa_reg_to_regnum): Likewise.
864         (xtensa_pseudo_register_read): Likewise.
865         (xtensa_pseudo_register_write): Likewise.
866
867 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
868
869         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
870         correctly-sized buffer with raw_read.
871         (amd64_pseudo_register_write): Use correctly-sized buffer for
872         raw_read/raw_write.
873
874 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
875
876         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
877         in add_prefix_cmd of set print type.
878
879 2018-10-19  Tom Tromey  <tom@tromey.com>
880
881         PR tui/18388:
882         * NEWS: Mention tabset deprecation.
883         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
884         (update_tab_width): New function.
885         (tui_set_tab_width, tui_show_tab_width): New functions.
886         (tui_set_tab_width_command): Use update_tab_width.
887         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
888         Add new "set tui tab-width" command.
889         * tui/tui-source.c (tui_set_source_content): Update.
890         * tui/tui-disasm.c (tui_set_disassem_content): Update.
891         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
892         Don't declare.
893         (tui_tab_width): Declare.
894         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
895         (tui_set_default_tab_len): Remove.
896
897 2018-10-19  Tom Tromey  <tom@tromey.com>
898
899         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
900         (key_is_backspace, tui_getc): Don't declare.
901         * tui/tui-io.c (key_is_start_sequence): Now static.
902         (key_is_end_sequence, key_is_backspace): Remove.
903         (tui_getc): Now static.
904
905 2018-10-19  Tom Tromey  <tom@tromey.com>
906
907         * symfile.c (reread_symbols): Clear "static_links".
908
909 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
910
911         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
912         define.
913         (aarch64_linux_sigframe_init): Extra boundary checks.
914
915 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
916
917         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
918         the possibly non-existent tdesc type 'vec128', but the type of raw
919         register v16 instead.
920
921 2018-10-19  Gary Benson <gbenson@redhat.com>
922
923         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
924
925 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
926
927         PR cli/23785
928         * cli/cli-dump.c (restore_binary_file): Check if "file" is
929         NULL.
930
931 2018-10-17  Paul Koning  <paul_koning@dell.com>
932
933         * charset.c (convert_between_encodings): Fix unsigned overflow.
934
935 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
936
937         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
938         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
939         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
940         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
941         New functions.
942         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
943         and fbsd_info_proc_mappings_header.
944         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
945         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
946         New.
947
948 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
949
950         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
951         Solaris Maintainer.
952
953 2018-10-15  Tom Tromey  <tom@tromey.com>
954
955         * tui/tui.c (strcat_to_buf): Remove casts.
956         * tui/tui-winsource.c (tui_show_source_line)
957         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
958         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
959         * tui/tui-windata.c (tui_first_data_item_displayed)
960         (tui_delete_data_content_windows, tui_erase_data_content)
961         (tui_display_all_data, tui_display_data_from)
962         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
963         * tui/tui-win.c (tui_set_win_height)
964         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
965         casts.
966         * tui/tui-win.c (tui_resize_all): Remove casts.
967         (tui_scroll_backward_command, tui_set_focus)
968         (tui_set_tab_width_command): Likewise.
969         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
970         * tui/tui-regs.c (tui_show_register_group): Remove cast.
971         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
972         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
973         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
974         Remove casts.
975
976 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
977
978         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
979         AArch64/ARM maintainer.
980
981 2018-10-11  Gary Benson <gbenson@redhat.com>
982
983         * interps.h (interp::m_name): Make private and mutable.
984         * interps.c (interp::~interp): Free m_name.
985
986 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
987             Simon Marchi <simark@simark.ca>
988
989         * README (`configure' options): Add documentation for new
990         "--enable-unit-tests" option.
991         * acinclude.m4: Include "selftest.m4".
992         * configure: Regenerate.
993         * configure.ac: Use "GDB_AC_SELFTEST".
994         * maint.c (maintenance_selftest): Update message informing
995         that selftests have been disabled.
996         (maintenance_info_selftests): Likewise.
997         * selftest.m4: New file.
998
999 2018-10-10  Gary Benson <gbenson@redhat.com>
1000
1001         * remote.c (remote_target::remote_send_printf): Add
1002         missing va_end found by Coverity.
1003
1004 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1005
1006         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1007
1008 2018-10-09  Tom Tromey  <tom@tromey.com>
1009
1010         * configure: Rebuild.
1011         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1012         * NEWS: Update --enable-ubsan documentation.
1013
1014 2018-10-09  Gary Benson <gbenson@redhat.com>
1015
1016         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1017         found by Coverity.
1018
1019 2018-10-08  Tom Tromey  <tom@tromey.com>
1020
1021         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1022         variable.
1023         (riscv_fbsd_init_abi): Likewise.
1024
1025 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1026         * valops.c (value_struct_elt_for_reference): Rename local variable
1027         to work around the shadowing a previous local warning.
1028
1029 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1030
1031         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1032         * NEWS: Mention new FreeBSD/riscv native configuration.
1033         * configure.host: Add riscv*-*-freebsd*.
1034         * configure.nat: Likewise.
1035         * riscv-fbsd-nat.c: New file.
1036
1037 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1038
1039         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1040         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1041         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1042         * NEWS: Mention new FreeBSD/riscv target.
1043         * configure.tgt: Add riscv*-*-freebsd*.
1044         * riscv-fbsd-tdep.c: New file.
1045         * riscv-fbsd-tdep.h: New file.
1046
1047 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1048
1049         * regcache.h (struct regcache_map_entry): Note that this type can
1050         be used with traditional frame caches.
1051         * trad-frame.c (trad_frame_set_reg_regmap): New.
1052         * trad-frame.h (trad_frame_set_reg_regmap): New.
1053
1054 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1055
1056         PR c++/16841
1057         * valops.c (get_virtual_base_offset): New function.
1058         (value_struct_elt_for_reference): Use it to get virtual base offset
1059         and add it in calculating class member address.
1060
1061 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1062
1063     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1064       (check_producer): Check if the producer is codewarrior.
1065       (producer_is_codewarrior): New function.
1066       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1067        produced by codewarrior.
1068       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1069
1070 2018-10-06  Tom Tromey  <tom@tromey.com>
1071
1072         PR python/19399:
1073         * python/py-inferior.c: Add "architecture" entry.
1074         (infpy_architecture): New function.
1075
1076 2018-10-06  Tom Tromey  <tom@tromey.com>
1077
1078         PR python/21765:
1079         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1080         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1081         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1082         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1083
1084 2018-10-06  Tom Tromey  <tom@tromey.com>
1085
1086         PR build/17077:
1087         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1088         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1089         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1090         #include.
1091
1092 2018-10-06  Tom Tromey  <tom@tromey.com>
1093
1094         * python/py-breakpoint.c (bppy_get_location): Handle a
1095         bp_breakpoint without a location.
1096
1097 2018-10-06  Tom Tromey  <tom@tromey.com>
1098
1099         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1100         (_RegEx): Reformat help text.
1101         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1102         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1103         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1104         text.
1105         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1106         (EnableXMethod, DisableXMethod): Remove help indentation.
1107         Capitalize meta-syntactic variables.
1108         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1109         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1110         Capitalize meta-syntactic variables.
1111         * python/lib/gdb/command/explore.py (ExploreCommand)
1112         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1113         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1114         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1115         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1116         Remove help indentation.
1117         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1118         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1119         (DisableFrameFilter, SetFrameFilterPriority)
1120         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1121
1122 2018-10-06  Tom Tromey  <tom@tromey.com>
1123
1124         PR tui/28819:
1125         * tui/tui-io.c (gdb_wgetch): New function.
1126         (tui_mld_getc, tui_getc): Use it.
1127
1128 2018-10-05  Tom Tromey  <tom@tromey.com>
1129
1130         * sol-thread.c (sol_thread_target::wait): Rename inner
1131         "save_ptid".
1132
1133 2018-10-04  Tom Tromey  <tom@tromey.com>
1134
1135         * configure: Rebuild.
1136         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1137
1138 2018-10-04  Tom Tromey  <tom@tromey.com>
1139
1140         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1141         declaration of "block".
1142
1143 2018-10-04  Tom Tromey  <tom@tromey.com>
1144
1145         * common/filestuff.c (fdwalk): Remove inner declaration of
1146         "result".
1147
1148 2018-10-04  Tom Tromey  <tom@tromey.com>
1149
1150         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1151         "structs_addr" and hoist declaration.
1152
1153 2018-10-04  Tom Tromey  <tom@tromey.com>
1154
1155         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1156         variable "size".
1157
1158 2018-10-04  Tom Tromey  <tom@tromey.com>
1159
1160         * mdebugread.c (parse_partial_symbols): Use std::string.
1161
1162 2018-10-04  Tom Tromey  <tom@tromey.com>
1163
1164         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1165         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1166         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1167         header.
1168         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1169         more inner scope.
1170         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1171         * varobj.c (varobj_update): Rename inner "newobj",
1172         "type_changed".
1173         * valprint.c (generic_emit_char): Rename inner "buf".
1174         * valops.c (find_overload_match): Rename inner "temp".
1175         (value_struct_elt_for_reference): Declare "v" in more inner
1176         scope.
1177         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1178         * unittests/array-view-selftests.c (run_tests): Rename inner
1179         "vec".
1180         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1181         header.
1182         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1183         "tsv" in more inner scope.
1184         (print_one_static_tracepoint_marker): Rename inner
1185         "tuple_emitter".
1186         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1187         (tic6x_push_dummy_call): Don't redeclare "addr".
1188         * target-float.c: Declare "dto" lower.
1189         * symtab.c (lookup_local_symbol): Rename inner "sym".
1190         (find_pc_sect_line): Rename inner "pc".
1191         * stack.c (print_frame): Don't redeclare "gdbarch".
1192         (return_command): Rename inner "gdbarch".
1193         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1194         "sp".
1195         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1196         header.
1197         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1198         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1199         scope.
1200         * remote.c (remote_target::update_thread_list): Don't redeclare
1201         "tp".
1202         (remote_target::process_initial_stop_replies): Rename inner
1203         "thread".
1204         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1205         (remote_target::wait_as): Don't redeclare "stop_reply".
1206         (remote_target::get_thread_local_address): Rename inner
1207         "result".
1208         (remote_target::get_tib_address): Likewise.
1209
1210         * regcache.c (cooked_read_test): Rename "regnum".
1211         * record-btrace.c (cmd_record_btrace_start): Rename inner
1212         "exception".
1213         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1214         loop header.
1215         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1216         header.
1217         (ppu2spu_sniffer): Rename inner "buf".
1218         * parse.c (operator_check_standard): Rename inner "type",
1219         "objfile".
1220         * p-valprint.c (pascal_val_print): Introduce new scope for
1221         "low_bound", "high_bound".
1222         * p-exp.y (yylex): Declare "i" in loop header.
1223         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1224         Lower declaration of "s".
1225         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1226         header.
1227         (nios2_push_dummy_call): Rename "len".
1228         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1229         "buf".
1230         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1231         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1232         (linux_xfer_osdata_modules): Likewise.
1233         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1234         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1235         (mips_o64_push_dummy_call): Likewise.
1236         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1237         "op".
1238         * mi/mi-main.c (list_available_thread_groups): Rename inner
1239         "tuple_emitter".
1240         (mi_cmd_data_read_memory): Rename inner "opts".
1241         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1242         "tuple_emitter".
1243         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1244         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1245         more inner scope.
1246         (parse_partial_symbols): Rename inner "pst", "p", "name"
1247         * main.c (captured_main_1): Rename inner "i"s.
1248         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1249         "oso2".
1250         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1251         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1252         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1253         (handle_signal_stop): Rename inner "gdbarch".
1254         (handle_command): Declare "signum" in loop header.
1255         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1256         "status".
1257         (examine_prologue): Rename inner "sol" and "sof".
1258         (ia64_extract_return_value): Rename inner "val".  Declare another
1259         "val" in a more inner scope.
1260         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1261         inner scope.
1262         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1263         "except".
1264         * findvar.c (default_read_var_value): Don't redeclare "addr".
1265         * f-exp.y (yylex): Declare "i" in loop header.
1266         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1267         Rename inner "type", "expect_type".
1268         (evaluate_subexp_for_sizeof): Rename inner "pc".
1269         * elfread.c (elf_symfile_read): Rename inner "abfd".
1270         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1271         "bytes_read".
1272         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1273         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1274         (dwarf_decode_line_header): Rename inner "lh".
1275         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1276         "offset".  Declare "i" in loop header.
1277         (disassemble_dwarf_expression): Rename inner "addr_size".
1278         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1279         inner "result".
1280         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1281         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1282         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1283         "inner_list_emitter".
1284         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1285         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1286         declaration in a block.
1287         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1288         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1289         "obstack_final_size".
1290         * cp-support.c (inspect_type): Declare "i" in loop header.
1291         * compile/compile.c (compile_instance::insert_symbol_error):
1292         Rename inner "e".
1293         * common/agent.c (agent_run_command): Remove inner "ret"
1294         declaration.
1295         * coffread.c (coff_symfile_read): Rename inner "name".
1296         (coff_symfile_read): Rename inner "abfd".
1297         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1298         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1299         "high".
1300         * c-exp.y (lex_one_token): Move "len" declaration lower.
1301         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1302         "gdbarch".
1303         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1304         "b".
1305         (watch_command_1): Declare "mark" later.
1306         (clear_command): Don't shadow "a" or "b".
1307         (delete_command): Rename inner "b".
1308         (delete_trace_command): Likewise.
1309         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1310         "op".
1311         (arm_gdbarch_init): Remove inner "e_flags".
1312         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1313         "offset" in inner blocks.
1314
1315 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1316
1317         * dwarf-index-write.c (file_write): Don't write if the vector is
1318         empty.
1319
1320 2018-10-05  Tom de Vries  <tdevries@suse.de>
1321
1322         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1323         PyArg_ParseTuple call.
1324
1325 2018-10-05  Tom de Vries  <tdevries@suse.de>
1326
1327         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1328         PyArg_ParseTuple call.
1329
1330 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1331
1332         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1333         to avoid exceeding 80 characters per line limit.
1334
1335 2018-10-04  Tom Tromey  <tom@tromey.com>
1336
1337         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1338         (reread_symbols): Update.
1339         * complaints.h (clear_complaints): Remove argument.
1340         * complaints.c (enum complaint_series): Remove.
1341         (series): Remove global.
1342         (complaint_internal): Update.
1343         (clear_complaints): Remove argument.
1344
1345 2018-10-04  Tom Tromey  <tom@tromey.com>
1346
1347         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1348         debugging symbols" message if there is a separate debug objfile.
1349
1350 2018-10-04  Tom Tromey  <tom@tromey.com>
1351
1352         PR cli/19551:
1353         * symfile.c (symbol_file_add_with_addrs): Update output.
1354         * psymtab.c (require_partial_symbols): Update output.
1355
1356 2018-10-04  Tom Tromey  <tom@tromey.com>
1357
1358         PR cli/22234:
1359         * complaints.c: Emit \n.
1360
1361 2018-10-04  Tom Tromey  <tom@tromey.com>
1362
1363         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1364         (separate_debug_file_exists, find_separate_debug_file)
1365         (add_symbol_file_command, reread_symbols, allocate_symtab)
1366         (allocate_compunit_symtab): Use filtered printing, not
1367         unfiltered.
1368         * psymtab.c (require_partial_symbols, dump_psymtab)
1369         (allocate_psymtab): Use filtered printing, not unfiltered.
1370
1371 2018-10-04  Tom Tromey  <tom@tromey.com>
1372
1373         * complaints.c (complaint_internal): Correctly check complaint
1374         count.
1375
1376 2018-10-04  Tom Tromey  <tom@tromey.com>
1377
1378         * complaints.h (struct complaints): Remove declaration.
1379         * complaints.c (clear_complaints): Remove an unused variable.
1380
1381 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1382
1383         * MAINTAINERS (Write After Approval): Add self.
1384
1385 2018-10-03  Tom Tromey  <tom@tromey.com>
1386
1387         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1388         "buffer_contents".
1389         * coffread.c (coff_symtab_read): Initialize "newobj".
1390
1391 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1392
1393         * dwarf2read.c (read_func_scope): Remove struct keyword in
1394         range-based for.
1395
1396 2018-10-03  Tom Tromey  <tom@tromey.com>
1397
1398         * README: Mention --enable-ubsan.
1399         * NEWS: Mention --enable-ubsan.
1400         * acinclude.m4: Include sanitize.m4.
1401         * configure: Rebuild.
1402         * configure.ac: Call AM_GDB_UBSAN.
1403         * sanitize.m4: New file.
1404
1405 2018-10-03  Tom Tromey  <tom@tromey.com>
1406
1407         * expression.h (enum exp_opcode): Use uint8_t as base type.
1408         * expprint.c (op_name): Handle invalid opcodes.
1409
1410 2018-10-03  Tom Tromey  <tom@tromey.com>
1411
1412         * parse.c (prefixify_expression): Add assert.
1413         (parse_exp_in_context_1): Throw exception if the expression is
1414         empty.
1415
1416 2018-10-03  Tom Tromey  <tom@tromey.com>
1417
1418         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1419
1420 2018-10-03  Tom Tromey  <tom@tromey.com>
1421
1422         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1423
1424 2018-10-03  Tom Tromey  <tom@tromey.com>
1425
1426         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1427         unsigned.
1428
1429 2018-10-03  Tom Tromey  <tom@tromey.com>
1430
1431         * findvar.c (extract_integer): Do work in an unsigned type.
1432
1433 2018-10-03  Tom Tromey  <tom@tromey.com>
1434
1435         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1436         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1437         base type.
1438         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1439         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1440         type.
1441         * c-lang.h (enum c_string_type_values): Use unsigned as base
1442         type.
1443         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1444
1445 2018-10-03  Tom Tromey  <tom@tromey.com>
1446
1447         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1448         <~dwarf2_frame_state_reg_info>: Update.
1449         <dwarf2_frame_state_reg_info>: Update.
1450         <alloc_regs>: Add assertion.  Update.
1451         <reg>: Now a std::vector.
1452         <num_regs>: Remove.
1453         <swap>: Update.
1454         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1455         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1456
1457 2018-10-03  Tom Tromey  <tom@tromey.com>
1458
1459         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1460
1461 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1462
1463         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1464
1465 2018-10-02  Tom Tromey  <tom@tromey.com>
1466
1467         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1468
1469 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1470
1471         * NEWS: Mention changed commands.
1472         * ser-uds.c: New file.
1473         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1474         * configure: Regenerate.
1475         * Makefile.in: Add new file.
1476         * serial.c (serial_open): Check if filename is a socket
1477           and lookup the appropriate interface accordingly.
1478
1479 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1480
1481         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1482         define.
1483         (AARCH64_EXTRA_MAGIC): Likewise.
1484         (AARCH64_FPSIMD_MAGIC): Likewise.
1485         (AARCH64_SVE_MAGIC): Likewise.
1486         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1487         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1488         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1489         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1490         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1491         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1492         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1493         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1494         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1495         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1496         (read_aarch64_ctx): Add function.
1497         (aarch64_linux_sigframe_init): Detect FP registers.
1498
1499 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1500
1501         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1502         (AARCH64_D0_REGNUM): Likewise.
1503         (AARCH64_S0_REGNUM): Likewise.
1504         (AARCH64_H0_REGNUM): Likewise.
1505         (AARCH64_B0_REGNUM): Likewise.
1506         (AARCH64_SVE_V0_REGNUM): Likewise.
1507         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1508         (AARCH64_D0_REGNUM): Likewise.
1509         (AARCH64_S0_REGNUM): Likewise.
1510         (AARCH64_H0_REGNUM): Likewise.
1511         (AARCH64_B0_REGNUM): Likewise.
1512         (AARCH64_SVE_V0_REGNUM): Likewise.
1513
1514 2018-10-01  Gary Benson <gbenson@redhat.com>
1515
1516         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1517         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1518         prfpregset_t instead of gdb_prfpregset_t.
1519         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1520         * configure, config.in: Rebuild.
1521
1522 2018-10-01  Gary Benson <gbenson@redhat.com>
1523
1524         * common/gdb_proc_service.h: New file, factored out from...
1525         * gdb_proc_service.h: Moved common code to the above file.
1526         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1527
1528 2018-10-01  Gary Benson <gbenson@redhat.com>
1529
1530         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1531         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1532
1533 2018-10-01  Gary Benson <gbenson@redhat.com>
1534
1535         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1536         (AC_CHECK_HEADERS): Check for linux/elf.h.
1537         * configure, config.in: Rebuild.
1538         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1539         doesn't define elf_fpregset_t.
1540
1541 2018-10-01  Gary Benson <gbenson@redhat.com>
1542
1543         * gdb_proc_service.h: Whitespace change.
1544
1545 2018-10-01  Tom Tromey  <tom@tromey.com>
1546
1547         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1548         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1549         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1550
1551 2018-10-01  Tom Tromey  <tom@tromey.com>
1552
1553         * README: Minor change.
1554
1555 2018-09-30  Pedro Alves  <palves@redhat.com>
1556
1557         * darwin-nat-info.c (darwin_debug_regions_recurse)
1558         (info_mach_exceptions_command): Remove unused local variables.
1559         * darwin-nat.c (darwin_decode_notify_message)
1560         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1561         (darwin_stop_inferior, darwin_setup_exceptions)
1562         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1563         (darwin_nat_target::attach, darwin_nat_target::detach)
1564         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1565         local variables.
1566         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1567         variables.
1568
1569 2018-09-29  Tom Tromey  <tom@tromey.com>
1570
1571         * README: Remove some leftover text.
1572
1573 2018-09-29  Tom Tromey  <tom@tromey.com>
1574
1575         * PROBLEMS: Rewrite.
1576         * README: Update.
1577
1578 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1579
1580         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1581         case with explicit breakpoint kind.
1582         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1583         'additional_info' and related logic.
1584         (riscv_debug_breakpoints): New variable.
1585         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1586         instruction to determine the breakpoint kind.
1587         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1588         flag.  Update description of 'set/show riscv
1589         use-compressed-breakpoints' flag.
1590
1591 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1592
1593         (NEWS): Mention changes to frame related commands.
1594         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1595         (add_prefix_cmd_suppress_notification): New function.
1596         (add_com_suppress_notification): Call
1597         add_cmd_suppress_notification.
1598         * command.h (add_cmd_suppress_notification): Declare.
1599         (add_prefix_cmd_suppress_notification): Declare.
1600         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1601         (parse_frame_specification): Moved from stack.c, with
1602         simplification to handle a single argument.
1603         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1604         switch to the selected frame.  Add a header comment.
1605         * stack.c: Remove 'safe-ctype.h' include.
1606         (find_frame_for_function): Add declaration.
1607         (find_frame_for_address): New function.
1608         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1609         (frame_selection_by_function_completer): New function.
1610         (info_frame_command): Rename to...
1611         (info_frame_command_core): ...this, and update parameter types.
1612         (select_frame_command): Rename to...
1613         (select_frame_command_core): ...this, and update parameter types.
1614         (frame_command): Rename to...
1615         (frame_command_core): ...this, and update parameter types.
1616         (class frame_command_helper): New class to wrap implementations of
1617         frame related sub-commands.
1618         (frame_apply_cmd_list): New static global.
1619         (frame_cmd_list): Make static.
1620         (select_frame_cmd_list): New global for sub-commands.
1621         (info_frame_cmd_list): New global for sub-commands.
1622         (_initialize_stack): Register sub-commands for 'frame',
1623         'select-frame', and 'info frame'.  Update 'frame apply' commands
1624         to use frame_apply_cmd_list.  Move function local static
1625         frame_apply_list to file static frame_apply_cmd_list for
1626         consistency.
1627         * stack.h (select_frame_command): Delete declarationn.
1628         (select_frame_for_mi): Declare new function.
1629
1630 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1631
1632         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1633         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1634         and NOP.
1635
1636 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1637
1638         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1639
1640 2018-09-26  Tom Tromey  <tom@tromey.com>
1641
1642         * valops.c (auto_abandon): Remove dead code.
1643
1644 2018-09-26  Tom Tromey  <tom@tromey.com>
1645
1646         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1647
1648 2018-09-24  Tom Tromey  <tom@tromey.com>
1649
1650         * common/pathstuff.c (get_standard_cache_dir): Make
1651         "xdg_cache_home" and "home" const.
1652         * top.c (init_history): Make "tmpenv" const.
1653         * main.c (get_init_files): Make "homedir" const.
1654
1655 2018-09-23  Tom Tromey  <tom@tromey.com>
1656
1657         PR python/18852:
1658         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1659
1660 2018-09-23  Tom Tromey  <tom@tromey.com>
1661
1662         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1663         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1664         * python/python-internal.h (gdbpy_handle_exception): Declare.
1665         * python/py-utils.c (gdbpy_handle_exception): New function.
1666
1667 2018-09-23  Tom Tromey  <tom@tromey.com>
1668
1669         PR python/17284:
1670         * python/py-type.c (typy_template_argument): Check for negative
1671         argument number.
1672
1673 2018-09-23  Tom Tromey  <tom@tromey.com>
1674
1675         PR python/14062:
1676         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1677
1678 2018-09-23  Tom Tromey  <tom@tromey.com>
1679
1680         PR python/18170:
1681         * python/py-value.c (valpy_int): Allow conversion from pointer
1682         type.
1683
1684 2018-09-23  Tom Tromey  <tom@tromey.com>
1685
1686         PR python/20126:
1687         * python/py-value.c (valpy_int): Respect type sign.
1688
1689 2018-09-23  Tom Tromey  <tom@tromey.com>
1690
1691         PR python/18352;
1692         * python/py-value.c (valpy_float): Allow conversions from int or
1693         char.
1694         (valpy_int, valpy_long): Allow conversions from float.
1695
1696 2018-09-23  Tom Tromey  <tom@tromey.com>
1697
1698         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1699         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1700
1701 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1702
1703         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1704         __sighndlr.
1705         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1706
1707 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1708
1709         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1710         target_terminal::ours().
1711
1712 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1713
1714         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1715         of vl to ULONGEST.
1716
1717 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1718
1719         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1720         redundant condition.
1721
1722 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1723
1724         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1725
1726         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1727         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1728         * sol-thread.c (ps_pdmodel): Don't guard definition.
1729
1730         * procfs.c: Fix formatting.
1731
1732         * procfs.c (sysset_t_alloc): Remove.
1733         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1734         (procfs_debug_inferior): Likewise.
1735         (procfs_set_exec_trap): Likewise.
1736         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1737         (proc_set_traced_sysexit): Likewise.
1738
1739         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1740         (dead_procinfo): Likewise.
1741         (proc_warn): Likewise.
1742         (proc_error): Likewise.
1743         (proc_get_LDT_entry): Likewise.
1744         (do_attach): Likewise.
1745         (procfs_target::pid_to_str): Likewise.
1746         (iterate_over_mappings): Likewise.
1747
1748         * procfs.c (create_procinfo): Fix ARI warning.
1749         (proc_get_status): Likewise.
1750         (proc_stop_process): Likewise.
1751         (proc_run_process): Likewise.
1752         (proc_kill): Likewise.
1753         (proc_get_LDT_entry): Likewise.
1754         (procfs_find_LDT_entry): Likewise.
1755         (proc_update_threads): Likewise.
1756         (proc_iterate_over_threads): Likewise.
1757         (do_attach): Likewise.
1758         (procfs_xfer_memory): Likewise.
1759         (invalidate_cache): Likewise.
1760         (procfs_target::resume): Likewise.
1761         (procfs_init_inferior): Likewise.
1762         (procfs_set_exec_trap): Likewise.
1763         (procfs_target::thread_alive): Likewise.
1764         (procfs_target::pid_to_exec_file): Likewise.
1765         (iterate_over_mappings): Likewise.
1766         (procfs_target::make_corefile_notes): Likewise.
1767         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1768
1769         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1770         (procfs_find_LDT_entry): Likewise.
1771         * sol-thread.c (ps_lgetLDT): Likewise.
1772
1773 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1774
1775         PR tdep/17903
1776         * procfs.c (procfs_target): Declare pid_to_exec_file.
1777         (procfs_target::pid_to_exec_file): New.
1778
1779 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1780
1781         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1782         renaming.
1783         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1784         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1785
1786 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1787
1788         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1789         (supply_fpregset, fill_fpregset): Move ...
1790         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1791         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1792         Remove references to ioctl-based procfs.
1793         Include <sys/reg.h>.
1794         Remove PR_MODEL_NATIVE guards.
1795         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1796         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1797
1798 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1799
1800         PR gdb/20981:
1801         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1802         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1803         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1804
1805 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1806
1807         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1808         (fbsd_print_sockaddr_in6): Likewise.
1809
1810 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1811             Chris January  <chris.january@arm.com>
1812
1813         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1814         (evaluate_subexp_standard): Return a dummy type when
1815         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1816         OP_F77_UNDETERMINED_ARGLIST case.
1817         * expression.h (enum noside): Update comment.
1818
1819 2018-09-19  George Vasick <george.vasick@oracle.com>
1820
1821         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1822
1823 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1824             April Chin <april.chin@oracle.com>
1825             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1826
1827         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1828         uint_t lwpid_t.
1829         (create_procinfo): Print pids in /proc without leading zeros.
1830
1831 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1832
1833         * nios2-tdep.c (nios2_gcc_target_options): New.
1834         (nios2_gdb_arch_init): Install new hook.
1835
1836 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1837
1838         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1839         New file.
1840         * update-gnulib.sh: Apply patch.
1841         * configure: Re-generate.
1842
1843 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1844
1845         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1846         description.  Make "info proc" command descriptions more
1847         consistent.
1848
1849 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1850
1851         * NEWS: Mention 'info proc files' command.
1852
1853 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1854
1855         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1856         descriptors for IP_FILES and IP_ALL.
1857
1858 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1859
1860         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1861         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1862         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1863         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1864         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1865         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1866         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1867         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1868         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1869         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1870         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1871         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1872         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1873         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1874         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1875         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1876         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1877         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1878         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1879         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1880         (struct fbsd_sockaddr_un): New types.
1881         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1882         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1883         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1884         (fbsd_core_info_proc_files): New functions.
1885         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1886         IP_ALL.
1887         * fbsd-tdep.h (fbsd_info_proc_files_header)
1888         (fbsd_info_proc_files_entry): New.
1889
1890 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1891
1892         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1893         * infcmd.c (info_proc_cmd_files): New function.
1894         (_initialize_infcmd): Register 'info proc files' command.
1895
1896 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1897
1898         * gnulib/aclocal-m4-deps.mk: Re-generate.
1899         * gnulib/aclocal.m4: Re-generate.
1900         * gnulib/config.in: Re-generate.
1901         * gnulib/configure: Re-generate.
1902         * gnulib/import/Makefile.am: Re-generate.
1903         * gnulib/import/Makefile.in: Re-generate.
1904         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1905         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1906         * gnulib/import/arpa_inet.in.h: New file.
1907         * gnulib/import/inet_ntop.c: New file.
1908         * gnulib/import/m4/arpa_inet_h.m4: New file.
1909         * gnulib/import/m4/inet_ntop.m4: New file.
1910         * gnulib/import/m4/netinet_in_h.m4: New file.
1911         * gnulib/import/m4/socklen.m4: New file.
1912         * gnulib/import/m4/sockpfaf.m4: New file.
1913         * gnulib/import/m4/stdalign.m4: New file.
1914         * gnulib/import/m4/sys_uio_h.m4: New file.
1915         * gnulib/import/netinet_in.in.h: New file.
1916         * gnulib/import/stdalign.in.h: New file.
1917         * gnulib/import/sys_socket.c: New file.
1918         * gnulib/import/sys_socket.in.h: New file.
1919         * gnulib/import/sys_uio.in.h: New file.
1920         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1921         module.
1922
1923 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1924
1925         * gnulib/aclocal-m4-deps.mk: New file.
1926         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1927         deterministically.
1928
1929 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1930
1931         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1932         KVE_PATH.
1933
1934 2018-09-18  Tom Tromey  <tom@tromey.com>
1935
1936         * compile/compile-object-load.c (struct
1937         link_hash_table_cleanup_data): Add constructor and destructor.
1938         Use DISABLE_COPY_AND_ASSIGN.
1939         (~link_hash_table_cleanup_data): Rename from
1940         link_hash_table_free.  Now a destructor.
1941         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1942
1943 2018-09-18  Tom Tromey  <tom@tromey.com>
1944
1945         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1946         * compile/compile-object-load.c (struct munmap_list): Move to
1947         header file.
1948         (munmap_list::add): Rename from munmap_list_add; rewrite.
1949         (munmap_list::~munmap_list): Rename from munmap_list_free.
1950         (munmap_listp_free_cleanup): Remove.
1951         (compile_object_load): Update.
1952         * compile/compile-object-load.h (struct munmap_list): Move from
1953         compile-object-load.c.  Rewrite.
1954
1955 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1956
1957         * aarch64-tdep.c (pass_in_v): Use register size.
1958         (aarch64_extract_return_value): Likewise.
1959         (aarch64_store_return_value): Likewise.
1960
1961 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1962
1963         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1964         rlim_t.
1965
1966 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1967
1968         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1969         Fix short help line.
1970
1971 2018-09-17  Tom Tromey  <tom@tromey.com>
1972
1973         PR python/20445:
1974         * configure: Rebuild.
1975         * configure.ac: Conditionally use -DNDEBUG for Python.
1976
1977 2018-09-17  Tom Tromey  <tom@tromey.com>
1978
1979         * configure: Rebuild.
1980         * configure.ac: Use gmp as a library dependency when checking for
1981         mpfr.
1982
1983 2018-09-17  Pedro Alves  <palves@redhat.com>
1984
1985         * python/py-inferior.c (find_inferior_object): Delete.
1986
1987 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1988
1989         * compile/compile-cplus-types.c
1990         (compile_cplus_instance::enter_scope): Don't use new_scope after
1991         std::move.
1992
1993 2018-09-17  Tom Tromey  <tom@tromey.com>
1994
1995         * common/pathstuff.c (get_standard_cache_dir): Use
1996         ~/Library/Caches on macOS.
1997         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1998
1999 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2000
2001         PR python/23669
2002         * breakpoint.c (commands_cmd_element): New.
2003         (_initialize_breakpoint): Assign commands_cmd_element.
2004         * breakpoint.h (commands_cmd_element): New.
2005         * cli/cli-script.c (while_cmd_element, if_command,
2006         define_cmd_element): New.
2007         (command_name_equals): Remove.
2008         (process_next_line): Compare commands by pointer, not by name.
2009         (_initialize_cli_script): Assign the various cmd_list_element
2010         variables.
2011         * compile/compile.c (compile_cmd_element): New.
2012         (_initialize_compile): Assign compile_cmd_element.
2013         * compile/compile.h (compile_cmd_element): New.
2014         * guile/guile.c (guile_cmd_element): New.
2015         (install_gdb_commands): Assign guile_cmd_element.
2016         * guile/guile.h (guile_cmd_element): New.
2017         * python/python.c (python_cmd_element): New.
2018         (_initialize_python): Assign python_cmd_element.
2019         * python/python.h (python_cmd_element): New.
2020         * tracepoint.c (while_stepping_cmd_element): New.
2021         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2022         * tracepoint.h (while_stepping_cmd_element): New.
2023
2024 2018-09-17  Tom Tromey  <tom@tromey.com>
2025
2026         * infrun.c (save_infcall_suspend_state): Return
2027         infcall_suspend_state_up.
2028         (save_infcall_control_state): Return infcall_control_state_up.
2029         * inferior.h (save_infcall_suspend_state)
2030         (save_infcall_control_state): Declare later.  Return unique
2031         pointers.
2032
2033 2018-09-17  Tom Tromey  <tom@tromey.com>
2034
2035         * infrun.c (struct stop_context): Declare constructor,
2036         destructor, "changed" method.
2037         (stop_context::stop_context): Rename from save_stop_context.
2038         (stop_context::~stop_context): Rename from
2039         release_stop_context_cleanup.
2040         (normal_stop): Update.
2041         (stop_context::changed): Rename from stop_context_changed.  Return
2042         bool.
2043
2044 2018-09-17  Tom Tromey  <tom@tromey.com>
2045
2046         * inferior.h (struct infcall_suspend_state_deleter): New.
2047         (infcall_suspend_state_up): New typedef.
2048         (struct infcall_control_state_deleter): New.
2049         (infcall_control_state_up): New typedef.
2050         (make_cleanup_restore_infcall_suspend_state)
2051         (make_cleanup_restore_infcall_control_state): Don't declare.
2052         * infcall.c (call_function_by_hand_dummy): Update.
2053         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2054         (make_cleanup_restore_infcall_suspend_state): Remove.
2055         (do_restore_infcall_control_state_cleanup)
2056         (make_cleanup_restore_infcall_control_state): Remove.
2057
2058 2018-09-17  Tom Tromey  <tom@tromey.com>
2059
2060         * gdbthread.h (struct thread_control_state): Add initializer.
2061         (class thread_info) <control>: Remove initializer.
2062         * inferior.h (struct inferior_control_state): Add initializer.
2063         (class inferior) <control>: Remove initializer.
2064         (exit_inferior_1): Update.
2065         * infrun.c (struct infcall_control_state): Add constructors.
2066         (save_infcall_control_state): Use new.
2067         (restore_infcall_control_state, discard_infcall_control_state):
2068         Use delete.
2069
2070 2018-09-17  Tom Tromey  <tom@tromey.com>
2071
2072         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2073         unique_ptr.
2074         <siginfo_data>: Now a unique_xmalloc_ptr.
2075         (save_infcall_suspend_state, restore_infcall_suspend_state)
2076         (discard_infcall_suspend_state)
2077         (get_infcall_suspend_state_regcache): Update.
2078
2079 2018-09-17  Tom Tromey  <tom@tromey.com>
2080
2081         * gdbthread.h (struct thread_suspend_state): Add initializers.
2082         (class thread_info) <suspend>: Remove initializer.
2083         * infrun.c (struct infcall_suspend_state): Add initializers.
2084         (save_infcall_suspend_state): Use new.
2085         (discard_infcall_suspend_state): Use delete.
2086
2087 2018-09-16  Tom Tromey  <tom@tromey.com>
2088
2089         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2090         Remove.
2091         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2092         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2093         (py_varobj_iter_new): Likewise.
2094         (py_varobj_get_iterator): Use gdbpy_ref.
2095
2096 2018-09-16  Tom Tromey  <tom@tromey.com>
2097
2098         * python/py-threadevent.c (py_get_event_thread): Simplify.
2099         * python/py-inferior.c (infpy_thread_from_thread_handle):
2100         Return immediately after calling thread_to_thread_object.  Use
2101         Py_RETURN_NONE.
2102         (thread_to_thread_object): Set the exception on a NULL return.
2103
2104 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2105
2106         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2107
2108 2018-09-16  Tom Tromey  <tom@tromey.com>
2109
2110         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2111         Remove.
2112
2113 2018-09-16  Tom Tromey  <tom@tromey.com>
2114
2115         * python/python-internal.h (thread_to_thread_object): Change
2116         return type.
2117         * python/py-inferior.c (thread_to_thread_object): Return a new
2118         reference.
2119         (infpy_thread_from_thread_handle): Update.
2120         * python/py-infthread.c (gdbpy_selected_thread): Update.
2121         * python/py-stopevent.c (create_stop_event_object): Update.
2122         * python/py-threadevent.c (py_get_event_thread): Return a new
2123         reference.
2124         (py_get_event_thread): Update.
2125         * python/py-event.h (py_get_event_thread): Change return type.
2126         * python/py-continueevent.c (create_continue_event_object):
2127         Update.
2128
2129 2018-09-16  Tom Tromey  <tom@tromey.com>
2130
2131         * python/py-progspace.c (pspy_get_objfiles): Update.
2132         * python/python-internal.h (objfile_to_objfile_object): Change
2133         return type.
2134         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2135         Update.
2136         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2137         Update.
2138         * python/python.c (gdbpy_get_current_objfile): Update.
2139         (gdbpy_objfiles): Update.
2140         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2141         Update.
2142         (objfile_to_objfile_object): Return a new reference.
2143         * python/py-symtab.c (stpy_get_objfile): Update.
2144         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2145         Update.
2146
2147 2018-09-16  Tom Tromey  <tom@tromey.com>
2148
2149         * python/py-inferior.c (infpy_get_progspace): Update.
2150         * python/python-internal.h (pspace_to_pspace_object): Change
2151         return type.
2152         * python/py-newobjfileevent.c
2153         (create_clear_objfiles_event_object): Update.
2154         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2155         Update.
2156         * python/python.c (gdbpy_get_current_progspace): Update.
2157         (gdbpy_progspaces): Update.
2158         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2159         reference.
2160         * python/py-objfile.c (objfpy_get_progspace): Update.
2161         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2162         Update.
2163
2164 2018-09-16  Tom Tromey  <tom@tromey.com>
2165
2166         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2167         (solib_name, block_for_pc, find_pc_line): New functions.
2168         (execute_unwinders): Update.
2169         * python/py-block.c (gdbpy_block_for_pc): Remove.
2170         * python/py-inferior.c (infpy_get_progspace): New function.
2171         (inferior_object_getset) <progspace>: Add.
2172         * python/py-progspace.c (pspy_objfiles): Rewrite.
2173         (pspy_solib_name, pspy_block_for_pc)
2174         (pspy_find_pc_line, pspy_is_valid): New functions.
2175         (progspace_object_methods): Add entries for solib_name,
2176         block_for_pc, find_pc_line, is_valid.
2177         * python/python-internal.h (gdbpy_block_for_pc)
2178         (build_objfiles_list): Don't declare.
2179         * python/python.c: Don't include solib.h.
2180         (gdbpy_solib_name, gdbpy_find_pc_line)
2181         (gdbpy_get_current_progspace, build_objfiles_list)
2182         (gdbpy_objfiles): Remove.
2183         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2184         solib_name, find_pc_line>: Remove entries.
2185
2186 2018-09-16  Tom Tromey  <tom@tromey.com>
2187
2188         * top.c (new_ui_command): Use GNU style for metasyntactic
2189         variables.
2190         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2191         variables.
2192         * maint.c (maintenance_translate_address): Remove "<>" around
2193         text.
2194         * interps.c (interpreter_exec_cmd): Use GNU style for
2195         metasyntactic variables.
2196         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2197         metasyntactic variables.
2198         * tracepoint.c (tfind_range_command): Use GNU style for
2199         metasyntactic variables.
2200         (tfind_outside_command): Likewise.
2201         (_initialize_tracepoint): Likewise.
2202         * remote.c (extended_remote_target::create_inferior): Use GNU
2203         style for metasyntactic variables.
2204         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2205         metasyntactic variables.
2206         (adi_assign_command): Likewise.
2207
2208 2018-09-16  Tom Tromey  <tom@tromey.com>
2209
2210         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2211         metasyntactic variables.  Print message if no disassembler options
2212         are available.
2213
2214 2018-09-15  Tom Tromey  <tom@tromey.com>
2215
2216         * infcmd.c (get_inferior_args): Return const char *.
2217         * inferior.h (get_inferior_args): Return type now const.
2218         * linux-tdep.c (linux_fill_prpsinfo): Update.
2219         * procfs.c (procfs_target::make_corefile_notes): Update.
2220
2221 2018-09-07  Tom Tromey  <tom@tromey.com>
2222
2223         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2224         inside the TRY.
2225
2226 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2227
2228         * nios2-tdep.c (nios2_type_align): New.
2229         (nios2_gdb_arch_init): Install type_align hook.
2230
2231 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2232
2233         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2234         type that is neither object file owned, nor gdbarch owned.
2235         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2236         gdbarch is non-NULL.
2237         (alloc_type_instance): Allocate non-objfile owned types on the
2238         gdbarch obstack.
2239         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2240         using TYPE_ALLOC to ensure memory is allocated on the correct
2241         obstack.
2242         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2243         obstack, or the gdbarch obstack.
2244         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2245
2246 2018-09-14  Tom Tromey  <tom@tromey.com>
2247
2248         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2249         block.
2250
2251 2018-09-14  Tom Tromey  <tom@tromey.com>
2252
2253         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2254
2255 2018-09-13  Tom Tromey  <tom@tromey.com>
2256
2257         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2258         static.
2259
2260 2018-09-13  Tom Tromey  <tom@tromey.com>
2261
2262         * exec.c (try_open_exec_file): Use std::string.
2263
2264 2018-09-13  Tom Tromey  <tom@tromey.com>
2265
2266         * utils.h (gdb_bfd_errmsg): Return std::string.
2267         * exec.c (exec_file_attach): Update.
2268         * compile/compile-object-load.c (compile_object_load): Update.
2269         * utils.c (gdb_bfd_errmsg): Return std::string.
2270
2271 2018-09-13  Tom Tromey  <tom@tromey.com>
2272
2273         * procfs.c (struct procinfo_deleter): New.
2274         (procinfo_up): New typedef.
2275         (do_destroy_procinfo_cleanup): Remove.
2276         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2277
2278 2018-09-13  Tom Tromey  <tom@tromey.com>
2279
2280         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2281
2282 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2283 2018-09-13  Tom Tromey  <tom@tromey.com>
2284
2285         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2286         (pspy_get_objfiles): New function.
2287         (progspace_object_methods): New.
2288         (pspace_object_type): Add tp_methods callback.
2289         * python/python-internal.h (build_objfiles_list): New
2290         declaration.
2291         * python/python.c (build_objfiles_list): New function.
2292         (gdbpy_objfiles): Implement using build_objfiles_list.
2293         * NEWS: Mention the Progspace.objfiles method.
2294
2295 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2296
2297         * python/py-inferior.c (infpy_get_progspace): New function.
2298         (inferior_object_getset): Add progspace property.
2299         * NEWS: Mention the new property.
2300
2301 2018-09-13  Tom Tromey  <tom@tromey.com>
2302
2303         PR rust/23650:
2304         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2305
2306 2018-09-13  Tom Tromey  <tom@tromey.com>
2307
2308         PR rust/23626:
2309         * rust-lang.c (rust_enum_variant): Now static.
2310         (rust_empty_enum_p): New function.
2311         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2312         Handle empty enum.
2313
2314 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2315
2316         * python/py-inferior.c (infpy_repr): New.
2317         (inferior_object_type): Register infpy_repr.
2318         * python/py-objfile.c (objfpy_repr): New.
2319         (objfile_object_type): Register objfpy_repr.
2320
2321 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2322
2323         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2324
2325 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2326
2327         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2328         typo.
2329
2330 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2331
2332         * common/common-utils.c: Don't include '<sys/stat.h>'.
2333         (is_regular_file): Move to...
2334         * common/filestuff.c (is_regular_file): ... here.
2335         * common/common-utils.h (is_regular_file): Move to...
2336         * common/filestuff.h (is_regular_file): ... here.
2337
2338 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2339
2340         * skip.c (debug_skip): New variable.
2341         (skiplist_entry::do_skip_file_p): Add debug output.
2342         (skiplist_entry::do_skip_gfile_p): Likewise.
2343         (skiplist_entry::skip_function_p): Likewise.
2344         (_initialize_step_skip): Create debug command.
2345         * NEWS: Mention set/show debug skip.
2346
2347 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2348
2349         * darwin-nat.c (should_disable_startup_with_shell):
2350         New function.
2351         (darwin_nat_target::create_inferior): Add call.
2352
2353 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2354
2355         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2356         inf_port, msg_state>: Initialize.
2357         (struct darwin_thread_info) <signaled, single_step>: Change
2358         type and initialize.
2359         (struct darwin_thread_info) <event>: Initialize.
2360
2361 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2362
2363         PR gdb/23555
2364         PR gdb/23558
2365         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2366         guesses.
2367
2368 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2369
2370         Revert:
2371         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2372
2373         PR gdb/23555
2374         PR gdb/23558
2375         * gnulib/aclocal.m4: Regenerate.
2376         * gnulib/config.in: Regenerate.
2377         * gnulib/configure: Regenerate.
2378         * gnulib/import/Makefile.am: Update.
2379         * gnulib/import/Makefile.in: Update.
2380         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2381         * gnulib/import/_Noreturn.h: ... this.
2382         * gnulib/import/alloca.in.h: Update.
2383         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2384         * gnulib/import/arg-nonnull.h: ... this.
2385         * gnulib/import/assure.h: Update.
2386         * gnulib/import/at-func.c: Update.
2387         * gnulib/import/basename-lgpl.c: Update.
2388         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2389         * gnulib/import/c++defs.h: ... this.
2390         * gnulib/import/canonicalize-lgpl.c: Update.
2391         * gnulib/import/cdefs.h: Update.
2392         * gnulib/import/chdir-long.c: Update.
2393         * gnulib/import/chdir-long.h: Update.
2394         * gnulib/import/cloexec.c: Update.
2395         * gnulib/import/cloexec.h: Update.
2396         * gnulib/import/close.c: Update.
2397         * gnulib/import/closedir.c: Update.
2398         * gnulib/import/config.charset: Update.
2399         * gnulib/import/dirent-private.h: Update.
2400         * gnulib/import/dirent.in.h: Update.
2401         * gnulib/import/dirfd.c: Update.
2402         * gnulib/import/dirname-lgpl.c: Update.
2403         * gnulib/import/dirname.h: Update.
2404         * gnulib/import/dosname.h: Update.
2405         * gnulib/import/dup-safer-flag.c: Update.
2406         * gnulib/import/dup-safer.c: Update.
2407         * gnulib/import/dup.c: Update.
2408         * gnulib/import/dup2.c: Update.
2409         * gnulib/import/errno.in.h: Update.
2410         * gnulib/import/error.c: Update.
2411         * gnulib/import/error.h: Update.
2412         * gnulib/import/exitfail.c: Update.
2413         * gnulib/import/exitfail.h: Update.
2414         * gnulib/import/extra/update-copyright: Update.
2415         * gnulib/import/fchdir.c: Update.
2416         * gnulib/import/fcntl.c: Update.
2417         * gnulib/import/fcntl.in.h: Update.
2418         * gnulib/import/fd-hook.c: Update.
2419         * gnulib/import/fd-hook.h: Update.
2420         * gnulib/import/fd-safer-flag.c: Update.
2421         * gnulib/import/fd-safer.c: Update.
2422         * gnulib/import/fdopendir.c: Update.
2423         * gnulib/import/filename.h: Update.
2424         * gnulib/import/filenamecat-lgpl.c: Update.
2425         * gnulib/import/filenamecat.h: Update.
2426         * gnulib/import/flexmember.h: Update.
2427         * gnulib/import/float+.h: Update.
2428         * gnulib/import/float.c: Update.
2429         * gnulib/import/float.in.h: Update.
2430         * gnulib/import/fnmatch.c: Update.
2431         * gnulib/import/fnmatch.in.h: Update.
2432         * gnulib/import/fnmatch_loop.c: Update.
2433         * gnulib/import/fpucw.h: Update.
2434         * gnulib/import/frexp.c: Update.
2435         * gnulib/import/frexpl.c: Update.
2436         * gnulib/import/fstat.c: Update.
2437         * gnulib/import/fstatat.c: Update.
2438         * gnulib/import/getcwd-lgpl.c: Update.
2439         * gnulib/import/getcwd.c: Update.
2440         * gnulib/import/getdtablesize.c: Update.
2441         * gnulib/import/getlogin_r.c: Update.
2442         * gnulib/import/getprogname.c: Update.
2443         * gnulib/import/getprogname.h: Update.
2444         * gnulib/import/gettext.h: Update.
2445         * gnulib/import/gettimeofday.c: Update.
2446         * gnulib/import/glob-libc.h: Update.
2447         * gnulib/import/glob.c: Update.
2448         * gnulib/import/glob.in.h: Update.
2449         * gnulib/import/glob_internal.h: Update.
2450         * gnulib/import/glob_pattern_p.c: Update.
2451         * gnulib/import/globfree.c: Update.
2452         * gnulib/import/hard-locale.c: Update.
2453         * gnulib/import/hard-locale.h: Update.
2454         * gnulib/import/intprops.h: Update.
2455         * gnulib/import/inttypes.in.h: Update.
2456         * gnulib/import/isnan.c: Update.
2457         * gnulib/import/isnand-nolibm.h: Update.
2458         * gnulib/import/isnand.c: Update.
2459         * gnulib/import/isnanl-nolibm.h: Update.
2460         * gnulib/import/isnanl.c: Update.
2461         * gnulib/import/itold.c: Update.
2462         * gnulib/import/libc-config.h: Update.
2463         * gnulib/import/limits.in.h: Update.
2464         * gnulib/import/localcharset.c: Update.
2465         * gnulib/import/localcharset.h: Update.
2466         * gnulib/import/localtime-buffer.c: Update.
2467         * gnulib/import/localtime-buffer.h: Update.
2468         * gnulib/import/lstat.c: Update.
2469         * gnulib/import/m4/00gnulib.m4: Update.
2470         * gnulib/import/m4/__inline.m4: Update.
2471         * gnulib/import/m4/absolute-header.m4: Update.
2472         * gnulib/import/m4/alloca.m4: Update.
2473         * gnulib/import/m4/builtin-expect.m4: Update.
2474         * gnulib/import/m4/canonicalize.m4: Update.
2475         * gnulib/import/m4/chdir-long.m4: Update.
2476         * gnulib/import/m4/close.m4: Update.
2477         * gnulib/import/m4/closedir.m4: Update.
2478         * gnulib/import/m4/configmake.m4: Update.
2479         * gnulib/import/m4/d-ino.m4: Update.
2480         * gnulib/import/m4/d-type.m4: Update.
2481         * gnulib/import/m4/dirent_h.m4: Update.
2482         * gnulib/import/m4/dirfd.m4: Update.
2483         * gnulib/import/m4/dirname.m4: Update.
2484         * gnulib/import/m4/double-slash-root.m4: Update.
2485         * gnulib/import/m4/dup.m4: Update.
2486         * gnulib/import/m4/dup2.m4: Update.
2487         * gnulib/import/m4/eealloc.m4: Update.
2488         * gnulib/import/m4/environ.m4: Update.
2489         * gnulib/import/m4/errno_h.m4: Update.
2490         * gnulib/import/m4/error.m4: Update.
2491         * gnulib/import/m4/exponentd.m4: Update.
2492         * gnulib/import/m4/exponentl.m4: Update.
2493         * gnulib/import/m4/extensions.m4: Update.
2494         * gnulib/import/m4/extern-inline.m4: Update.
2495         * gnulib/import/m4/fchdir.m4: Update.
2496         * gnulib/import/m4/fcntl-o.m4: Update.
2497         * gnulib/import/m4/fcntl.m4: Update.
2498         * gnulib/import/m4/fcntl_h.m4: Update.
2499         * gnulib/import/m4/fdopendir.m4: Update.
2500         * gnulib/import/m4/filenamecat.m4: Update.
2501         * gnulib/import/m4/flexmember.m4: Update.
2502         * gnulib/import/m4/float_h.m4: Update.
2503         * gnulib/import/m4/fnmatch.m4: Update.
2504         * gnulib/import/m4/fnmatch_h.m4: Update.
2505         * gnulib/import/m4/fpieee.m4: Update.
2506         * gnulib/import/m4/frexp.m4: Update.
2507         * gnulib/import/m4/frexpl.m4: Update.
2508         * gnulib/import/m4/fstat.m4: Update.
2509         * gnulib/import/m4/fstatat.m4: Update.
2510         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2511         * gnulib/import/m4/getcwd-path-max.m4: Update.
2512         * gnulib/import/m4/getcwd.m4: Update.
2513         * gnulib/import/m4/getdtablesize.m4: Update.
2514         * gnulib/import/m4/getlogin.m4: Update.
2515         * gnulib/import/m4/getlogin_r.m4: Update.
2516         * gnulib/import/m4/getpagesize.m4: Update.
2517         * gnulib/import/m4/getprogname.m4: Update.
2518         * gnulib/import/m4/gettimeofday.m4: Update.
2519         * gnulib/import/m4/glibc21.m4: Update.
2520         * gnulib/import/m4/glob.m4: Update.
2521         * gnulib/import/m4/glob_h.m4: Update.
2522         * gnulib/import/m4/gnulib-cache.m4: Update.
2523         * gnulib/import/m4/gnulib-common.m4: Update.
2524         * gnulib/import/m4/gnulib-comp.m4: Update.
2525         * gnulib/import/m4/gnulib-tool.m4: Update.
2526         * gnulib/import/m4/hard-locale.m4: Update.
2527         * gnulib/import/m4/include_next.m4: Update.
2528         * gnulib/import/m4/inttypes-pri.m4: Update.
2529         * gnulib/import/m4/inttypes.m4: Update.
2530         * gnulib/import/m4/isnand.m4: Update.
2531         * gnulib/import/m4/isnanl.m4: Update.
2532         * gnulib/import/m4/largefile.m4: Update.
2533         * gnulib/import/m4/limits-h.m4: Update.
2534         * gnulib/import/m4/localcharset.m4: Update.
2535         * gnulib/import/m4/locale-fr.m4: Update.
2536         * gnulib/import/m4/locale-ja.m4: Update.
2537         * gnulib/import/m4/locale-zh.m4: Update.
2538         * gnulib/import/m4/localtime-buffer.m4: Update.
2539         * gnulib/import/m4/longlong.m4: Update.
2540         * gnulib/import/m4/lstat.m4: Update.
2541         * gnulib/import/m4/malloc.m4: Update.
2542         * gnulib/import/m4/malloca.m4: Update.
2543         * gnulib/import/m4/math_h.m4: Update.
2544         * gnulib/import/m4/mbrtowc.m4: Update.
2545         * gnulib/import/m4/mbsinit.m4: Update.
2546         * gnulib/import/m4/mbsrtowcs.m4: Update.
2547         * gnulib/import/m4/mbstate_t.m4: Update.
2548         * gnulib/import/m4/memchr.m4: Update.
2549         * gnulib/import/m4/memmem.m4: Update.
2550         * gnulib/import/m4/mempcpy.m4: Update.
2551         * gnulib/import/m4/memrchr.m4: Update.
2552         * gnulib/import/m4/mkdir.m4: Update.
2553         * gnulib/import/m4/mkstemp.m4: Update.
2554         * gnulib/import/m4/mmap-anon.m4: Update.
2555         * gnulib/import/m4/mode_t.m4: Update.
2556         * gnulib/import/m4/msvc-inval.m4: Update.
2557         * gnulib/import/m4/msvc-nothrow.m4: Update.
2558         * gnulib/import/m4/multiarch.m4: Update.
2559         * gnulib/import/m4/nocrash.m4: Update.
2560         * gnulib/import/m4/off_t.m4: Update.
2561         * gnulib/import/m4/onceonly.m4: Update.
2562         * gnulib/import/m4/open-cloexec.m4: Update.
2563         * gnulib/import/m4/open.m4: Update.
2564         * gnulib/import/m4/openat.m4: Update.
2565         * gnulib/import/m4/opendir.m4: Update.
2566         * gnulib/import/m4/pathmax.m4: Update.
2567         * gnulib/import/m4/rawmemchr.m4: Update.
2568         * gnulib/import/m4/readdir.m4: Update.
2569         * gnulib/import/m4/readlink.m4: Update.
2570         * gnulib/import/m4/realloc.m4: Update.
2571         * gnulib/import/m4/rename.m4: Update.
2572         * gnulib/import/m4/rewinddir.m4: Update.
2573         * gnulib/import/m4/rmdir.m4: Update.
2574         * gnulib/import/m4/save-cwd.m4: Update.
2575         * gnulib/import/m4/secure_getenv.m4: Update.
2576         * gnulib/import/m4/setenv.m4: Update.
2577         * gnulib/import/m4/signal_h.m4: Update.
2578         * gnulib/import/m4/ssize_t.m4: Update.
2579         * gnulib/import/m4/stat-time.m4: Update.
2580         * gnulib/import/m4/stat.m4: Update.
2581         * gnulib/import/m4/std-gnu11.m4: Update.
2582         * gnulib/import/m4/stdbool.m4: Update.
2583         * gnulib/import/m4/stddef_h.m4: Update.
2584         * gnulib/import/m4/stdint.m4: Update.
2585         * gnulib/import/m4/stdio_h.m4: Update.
2586         * gnulib/import/m4/stdlib_h.m4: Update.
2587         * gnulib/import/m4/strchrnul.m4: Update.
2588         * gnulib/import/m4/strdup.m4: Update.
2589         * gnulib/import/m4/strerror.m4: Update.
2590         * gnulib/import/m4/string_h.m4: Update.
2591         * gnulib/import/m4/strstr.m4: Update.
2592         * gnulib/import/m4/strtok_r.m4: Update.
2593         * gnulib/import/m4/sys_socket_h.m4: Update.
2594         * gnulib/import/m4/sys_stat_h.m4: Update.
2595         * gnulib/import/m4/sys_time_h.m4: Update.
2596         * gnulib/import/m4/sys_types_h.m4: Update.
2597         * gnulib/import/m4/tempname.m4: Update.
2598         * gnulib/import/m4/time_h.m4: Update.
2599         * gnulib/import/m4/unistd-safer.m4: Update.
2600         * gnulib/import/m4/unistd_h.m4: Update.
2601         * gnulib/import/m4/warn-on-use.m4: Update.
2602         * gnulib/import/m4/wchar_h.m4: Update.
2603         * gnulib/import/m4/wchar_t.m4: Update.
2604         * gnulib/import/m4/wctype_h.m4: Update.
2605         * gnulib/import/m4/wint_t.m4: Update.
2606         * gnulib/import/malloc.c: Update.
2607         * gnulib/import/malloc/scratch_buffer.h: Update.
2608         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2609         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2610         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2611         * gnulib/import/malloca.c: Update.
2612         * gnulib/import/malloca.h: Update.
2613         * gnulib/import/malloca.valgrind: Update.
2614         * gnulib/import/math.in.h: Update.
2615         * gnulib/import/mbrtowc.c: Update.
2616         * gnulib/import/mbsinit.c: Update.
2617         * gnulib/import/mbsrtowcs-impl.h: Update.
2618         * gnulib/import/mbsrtowcs-state.c: Update.
2619         * gnulib/import/mbsrtowcs.c: Update.
2620         * gnulib/import/memchr.c: Update.
2621         * gnulib/import/memmem.c: Update.
2622         * gnulib/import/mempcpy.c: Update.
2623         * gnulib/import/memrchr.c: Update.
2624         * gnulib/import/mkdir.c: Update.
2625         * gnulib/import/mkstemp.c: Update.
2626         * gnulib/import/msvc-inval.c: Update.
2627         * gnulib/import/msvc-inval.h: Update.
2628         * gnulib/import/msvc-nothrow.c: Update.
2629         * gnulib/import/msvc-nothrow.h: Update.
2630         * gnulib/import/open.c: Update.
2631         * gnulib/import/openat-die.c: Update.
2632         * gnulib/import/openat-priv.h: Update.
2633         * gnulib/import/openat-proc.c: Update.
2634         * gnulib/import/openat.c: Update.
2635         * gnulib/import/openat.h: Update.
2636         * gnulib/import/opendir.c: Update.
2637         * gnulib/import/pathmax.h: Update.
2638         * gnulib/import/pipe-safer.c: Update.
2639         * gnulib/import/rawmemchr.c: Update.
2640         * gnulib/import/readdir.c: Update.
2641         * gnulib/import/readlink.c: Update.
2642         * gnulib/import/realloc.c: Update.
2643         * gnulib/import/ref-add.sin: Update.
2644         * gnulib/import/ref-del.sin: Update.
2645         * gnulib/import/rename.c: Update.
2646         * gnulib/import/rewinddir.c: Update.
2647         * gnulib/import/rmdir.c: Update.
2648         * gnulib/import/same-inode.h: Update.
2649         * gnulib/import/save-cwd.c: Update.
2650         * gnulib/import/save-cwd.h: Update.
2651         * gnulib/import/scratch_buffer.h: Update.
2652         * gnulib/import/secure_getenv.c: Update.
2653         * gnulib/import/setenv.c: Update.
2654         * gnulib/import/signal.in.h: Update.
2655         * gnulib/import/stat-time.c: Update.
2656         * gnulib/import/stat-time.h: Update.
2657         * gnulib/import/stat-w32.c: Update.
2658         * gnulib/import/stat-w32.h: Update.
2659         * gnulib/import/stat.c: Update.
2660         * gnulib/import/stdbool.in.h: Update.
2661         * gnulib/import/stddef.in.h: Update.
2662         * gnulib/import/stdint.in.h: Update.
2663         * gnulib/import/stdio.in.h: Update.
2664         * gnulib/import/stdlib.in.h: Update.
2665         * gnulib/import/str-two-way.h: Update.
2666         * gnulib/import/strchrnul.c: Update.
2667         * gnulib/import/strdup.c: Update.
2668         * gnulib/import/streq.h: Update.
2669         * gnulib/import/strerror-override.c: Update.
2670         * gnulib/import/strerror-override.h: Update.
2671         * gnulib/import/strerror.c: Update.
2672         * gnulib/import/string.in.h: Update.
2673         * gnulib/import/stripslash.c: Update.
2674         * gnulib/import/strnlen1.c: Update.
2675         * gnulib/import/strnlen1.h: Update.
2676         * gnulib/import/strstr.c: Update.
2677         * gnulib/import/strtok_r.c: Update.
2678         * gnulib/import/sys_stat.in.h: Update.
2679         * gnulib/import/sys_time.in.h: Update.
2680         * gnulib/import/sys_types.in.h: Update.
2681         * gnulib/import/tempname.c: Update.
2682         * gnulib/import/tempname.h: Update.
2683         * gnulib/import/time.in.h: Update.
2684         * gnulib/import/unistd--.h: Update.
2685         * gnulib/import/unistd-safer.h: Update.
2686         * gnulib/import/unistd.in.h: Update.
2687         * gnulib/import/unsetenv.c: Update.
2688         * gnulib/import/verify.h: Update.
2689         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2690         * gnulib/import/wchar.in.h: Update.
2691         * gnulib/import/wctype.in.h: Update.
2692         * gnulib/import/xalloc-oversized.h: Update.
2693         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2694         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2695
2696 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2697
2698         * record-btrace.c (get_thread_current_frame): Remove
2699         old_inferior_ptid.
2700
2701 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2702
2703         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2704         with check_tag to 1 if and only if the type is tagged and the
2705         component being searched cannot been found in the current
2706         view. Otherwise, always call ada_to_fixed_type with
2707         check_tag to 0.
2708
2709 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2710
2711         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2712         declaration.
2713         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2714         * ada-varobj.c (ada_varobj_get_number_of_children,
2715         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2716
2717 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2718
2719         * ada-valprint.c (ada_value_print): Use type instead of
2720         enclosing type.
2721
2722 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2723
2724         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2725         an array of access to unconstrained array.
2726
2727 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2728
2729         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2730         (ada_check_typedef): Use it.
2731
2732 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2733
2734         * ada-varobj.c (ada_varobj_describe_struct_child)
2735         (ada_varobj_describe_child): Handle union case like struct one.
2736
2737 2018-09-10  Tom Tromey  <tom@tromey.com>
2738
2739         PR python/18380:
2740         * python/python.c (_initialize_python): Make example in "python"
2741         help work in Python 3.
2742
2743 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2744
2745         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2746         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2747         $(EXEEXT) to the script, as it is not a program.
2748
2749 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2750
2751         * python/py-prettyprint.c (pretty_print_one_value): Return
2752         gdbpy_ref<>.
2753         (print_string_repr): Adjust.
2754         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2755         * python/python-internal.h (apply_varobj_pretty_printer): Return
2756         gdbpy_ref<>.
2757         * varobj.c (varobj_value_get_print_value): Adjust.
2758
2759 2018-09-08  Tom Tromey  <tom@tromey.com>
2760
2761         PR python/16047:
2762         * python/py-prettyprint.c (pretty_print_one_value): Check for
2763         to_string method.
2764
2765 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2766
2767         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2768         replace_operator_with_call.
2769
2770 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2771
2772         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2773
2774 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2775
2776         * ada-typeprint.c (print_range): Print the bounds using TYPE
2777         rather than its TYPE_TARGET_TYPE.
2778
2779 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2780
2781         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2782         call to ada_to_fixed_value_create.
2783
2784 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2785
2786         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2787
2788 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2789
2790         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2791         by calls to error.
2792
2793 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2794
2795         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2796         Move update of loop variable "fi".
2797
2798 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2799
2800         * ada-lang.c (value_assign_to_component): In the case of
2801         big-endian targets, extract the bits of the given VAL
2802         using an src_offset of zero if container is not a scalar.
2803
2804 2018-09-06  Simon Ser  <contact@emersion.fr>
2805
2806         PR gdb/23105
2807         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2808         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2809         * fbsd-tdep.c (fbsd_make_note_desc): New.
2810         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2811         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2812         * target.h (enum target_object) Add FreeBSD-specific
2813         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2814
2815 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2816
2817         * compile/compile-c.h (generate_c_for_variable_locations):
2818         Change reference to pointer.
2819         * compile/compile-c-support.c (compile_program) <compute>:
2820         Likewise.
2821         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2822         (generate_c_for_for_one_variable): Likewise
2823         (generate_c_for_variable_locations): Likewise
2824         * compile/compile-c-types.c (compile_c_instance::convert_type):
2825         Likewise
2826         * compile/compile-cplus-symbols.c (convert_one_symbol):
2827         std::move the scope passed to enter_scope.
2828         * compile/compile-cplus-types.c
2829         (compile_cplus_instance::enter_scope): Make parameter
2830         rvalue-reference.
2831         (compile_cplus_instance::new_scope): Change reference to
2832         pointer.
2833         (compile_cplus_instance::convert_type): Likewise
2834         (compile_cplus_convert_typedef): std::move the scope passed to
2835         enter_scope.
2836         (compile_cplus_convert_struct_or_union): Likewise.
2837         (compile_cplus_convert_enum): Likewise.
2838         (compile_cplus_convert_namespace): Likewise.
2839         * compile/compile-cplus.h (compile_cplus_instance)
2840         <enter_scope>: Make parameter rvalue-reference.
2841         * compile/compile-internal.h (compile_instance)
2842         <get_cached_type>: Likewise
2843         * compile/compile-loc2c.c (push): Likewise
2844         (pushf): Likewise
2845         (unary): Likewise
2846         (binary): Likewise
2847         (print_label): Likewise
2848         (pushf_register_address): Likewise
2849         (pushf_register): Likewise
2850         (do_compile_dwarf_expr_to_c): Likewise
2851         (compile_dwarf_expr_to_c): Likewise
2852         (compile_dwarf_bounds_to_c): Likewise
2853         * compile/compile.c (compile_instance::get_cached_type):
2854         Likewise
2855         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2856         (compile_dwarf_bounds_to_c): Likewise
2857         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2858         (dwarf2_compile_property_to_c): Likewise
2859         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2860         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2861         Likewise
2862
2863 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2864
2865         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2866         * tui/tui-data.c (init_content_element): Don't initialize it.
2867
2868 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2869
2870         * tui/tui-data.h (struct tui_win_info)
2871         <detail::opaque>: Remove.
2872         * tui/tui-data.c (init_win_info): Remove assignment.
2873
2874 2018-09-05  Tom Tromey  <tom@tromey.com>
2875
2876         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2877         -Wformat-nonliteral.
2878         * target-float.c (host_float_ops<T>::to_string)
2879         (host_float_ops<T>::from_string): Use
2880         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2881         * configure: Rebuild.
2882
2883 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2884
2885         * printcmd.c (printf_c_string): Use
2886         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2887         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2888
2889 2018-09-05  Tom Tromey  <tom@tromey.com>
2890
2891         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2892
2893 2018-09-05  Tom de Vries  <tdevries@suse.de>
2894
2895         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2896         with resolve_abstract_p == true.
2897         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2898         defaulting to false. Propagate resolve_abstract_p to
2899         dwarf2_fetch_die_loc_sect_off.
2900         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2901         parameter, defaulting to false.
2902         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2903         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2904         parameter.
2905         * dwarf2read.h (struct die_info): Forward-declare.
2906         (die_info_ptr): New typedef.
2907         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2908
2909 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2910
2911         GDB 8.2 released.
2912
2913 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2914             Pedro Alves  <palves@redhat.com>
2915
2916         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2917         "aclocal-m4-deps.mk".  Include file here.
2918         $(srcdir)/aclocal.m4: Add "configure.ac".
2919         * gnulib/aclocal-m4-deps.mk: New file.
2920         * gnulib/update-gnulib.sh: Automatically update
2921         "aclocal-m4-deps.mk".
2922
2923 2018-09-04  Tom Tromey  <tom@tromey.com>
2924
2925         * configure: Rebuild.
2926         * configure.ac: Remove multi-ice code.
2927
2928 2018-09-04  Tom Tromey  <tom@tromey.com>
2929
2930         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2931         (ada-exp.o): Update.
2932
2933 2018-09-04  Tom Tromey  <tom@tromey.com>
2934
2935         * Makefile.in (printcmd.o, target-float.o): Remove.
2936         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2937
2938 2018-09-04  Tom Tromey  <tom@tromey.com>
2939
2940         * gnulib/Makefile.in: Remove obsolete comment.
2941         * Makefile.in: Remove obsolete comment.
2942
2943 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2944
2945         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2946         line with '+'.
2947
2948 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2949
2950         * riscv-tdep.c: Add 'prologue-value.h' include.
2951         (struct riscv_unwind_cache): New struct.
2952         (riscv_debug_unwinder): New global.
2953         (riscv_scan_prologue): Update arguments, capture register details
2954         from prologue scan.
2955         (riscv_skip_prologue): Reformat arguments line, move end of
2956         prologue calculation into riscv_scan_prologue.
2957         (riscv_frame_cache): Update return type, create
2958         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2959         details.
2960         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2961         (riscv_frame_prev_register): Use the trad_frame within the
2962         riscv_unwind_cache.
2963         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2964         flag.
2965
2966 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2967
2968         * trad-frame.h (trad_frame_set_realreg): Declare.
2969         (trad_frame_set_addr): Declare.
2970         * trad-frame.c (trad_frame_set_realreg): Define new function.
2971         (trad_frame_set_addr): Define new function.
2972         (trad_frame_set_reg_realreg): Use new function.
2973         (trad_frame_set_reg_addr): Use new function.
2974
2975 2018-09-01  Keith Seitz  <keiths@redhat.com>
2976
2977         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2978         pulongest instead of "%lld".
2979         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2980         ATTRIBUTE_UNUSED.
2981
2982 2018-08-31  Tom Tromey  <tom@tromey.com>
2983
2984         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2985         variant part type.
2986
2987 2018-08-31  Pedro Alves  <palves@redhat.com>
2988
2989         * gdbarch.h: Regenerate.
2990
2991 2018-08-31  Pedro Alves  <palves@redhat.com>
2992
2993         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2994         * target.h (Hardware watchpoint interfaces): Describe
2995         continuable/steppable/non-steppable watchpoints.
2996         * gdbarch.h, gdbarch.c: Regenerate.
2997
2998 2018-08-31  Pedro Alves  <palves@redhat.com>
2999
3000         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3001         Delete.
3002         * s390-linux-nat.c
3003         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3004         * target.h (target_ops::have_continuable_watchpoint): Delete.
3005         (target_have_continuable_watchpoint): Delete.
3006         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3007         * target-delegates.c: Regenerate.
3008
3009 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3010
3011         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3012         the files present in "gnulib/import/m4/".
3013
3014 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3015
3016         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3017         c.sw, c.swsp, and c.sdsp.
3018
3019 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3020
3021         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3022         (riscv_read_misa_reg): Don't cache value read into inferior data.
3023         (riscv_new_inferior_data): Delete.
3024         (riscv_inferior_data_cleanup): Delete.
3025         (riscv_inferior_data): Delete.
3026         (riscv_invalidate_inferior_data): Delete.
3027         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3028
3029 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3030
3031         * compile/compile-cplus-types.c
3032         (compile_cplus_instance::leave_scope): Take the address of scope
3033         object.
3034         (compile_cplus_instance::convert_qualified_base): Compare quals
3035         to 0.
3036
3037 2018-08-30  Keith Seitz  <keiths@redhat.com>
3038
3039         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3040         Use "%s" and host_address_to_string instead of "%p" in printf.
3041
3042 2018-08-29  Keith Seitz  <keiths@redhat.com>
3043
3044         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3045         and compile-cplus-types.c.
3046         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3047         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3048         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3049         Declare.
3050         * compile/compile-c-support.c: Include compile-cplus.h.
3051         (load_libcompile): Templatize.
3052         (get_compile_context): "New" function.
3053         (c_get_compile_context): Use get_compile_context.
3054         (cplus_get_compile_context): New function.
3055         (cplus_push_user_expression, cplus_pop_user_expression)
3056         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3057         (cplus_compute_program): Define new structs/functions.
3058         * compile/compile-cplus-symmbols.c: New file.
3059         * compile/compile-cplus-types.c: New file.
3060         * compile/compile-cplus.h: New file.
3061         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3062         Declare.
3063         * compile/compile-object-load.c (get_out_value_type): Use
3064         strncmp_iw when comparing symbol names.
3065         (compile_object_load): Add mst_bss and mst_data.
3066         * compile/compile.c (_initialize_compile): Remove
3067         -Wno-implicit-function-declaration from `compile_args'.
3068         * compile/gcc-cp-plugin.h: New file.
3069         * NEWS: Mention C++ compile support and new debug options.
3070
3071 2018-08-29  Keith Seitz  <keiths@redhat.com>
3072
3073         * linespec.c (collect_info::add_symbol): Make virtual.
3074         (struct symbol_searcher_collect_info): New struct.
3075         (symbol_searcher::find_all_symbols): New method.
3076         * symtab.h (class symbol_searcher): New class.
3077
3078 2018-08-29  Keith Seitz  <keiths@redhat.com>
3079
3080         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3081         Change to vector of block_symbol.  Update all users.
3082         (struct collect_info) <symbols>: Likewise.
3083         (collect_info::add_symbol): Take block_symbol as argument.
3084         Update all callers.
3085         (decode_compound_collector) <m_symbols>: Change type to vector
3086         of block_symbol.  Update all users.
3087         (decode_compound_collector::operator ()): Change parameter type
3088         to block_symbol.
3089         (find_method, find_function_symbols, find_linespec_symbols)
3090         (find_label_symbols_in_block, find_label_symbols): Change symbol
3091         vectors to block_symbol vectors.
3092         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3093         block_symbol.
3094
3095 2018-08-29  Keith Seitz  <keiths@redhat.com>
3096
3097         * linespec.c (symbolp): Remove typedef and VEC definitions.
3098         (bound_minimal_symbol_d): Likewise.
3099
3100 2018-08-29  Keith Seitz  <keiths@redhat.com>
3101
3102         * linespec.c (decode_compound_collector::decode_compound_collector):
3103         Remove initialization for `m_symtabs'.
3104         (decode_compound_collector::release_symbols): Change return type
3105         to std::vector.  Update all callers.
3106         (class decode_compound_collector) <m_symbols>: Change type to
3107         std::vector.
3108         (lookup_prefix_sym): Change return type to std::vector.  Update all
3109         callers.
3110         (compare_symbols): Remove.
3111         (std_compare_symbols): Rename to `compare_symbols'.
3112         (find_method): Change `sym_classes' parameter to std::vector.
3113         Update all callers.  Use std::sort to sort sym_classes.
3114         (find_linespec_symbols): Remove cleanup.
3115
3116 2018-08-29  Keith Seitz  <keiths@redhat.com>
3117
3118         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3119         std::vector.  Update all users.
3120         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3121         (struct collect_info) <minimal_symbols>: Likewise.
3122         (compare_msymbols): Return bool.  Change parameters to const
3123         bound_minimal_symbol references.
3124         (find_method, find_function_symbols, find_linespec_symbols): Change
3125         `minsyms' parameter to std::vector.  Update all callers.
3126
3127 2018-08-29  Keith Seitz  <keiths@redhat.com>
3128
3129         * linespec.c (struct linespec) <label_symbols>: Change type to
3130         std::vector.  Update all users.
3131         (find_label_symbols_in_block): Change `result' parameter to
3132         std::vector.  Update all callers.
3133         (find_label_symbols): Return std::vector.  Update all callers.
3134
3135 2018-08-29  Keith Seitz  <keiths@redhat.com>
3136
3137         * linespec.c (struct linespec) <function_symbols>: Change type to
3138         std::vector.  Update all users.
3139         (struct collect_info) <function_symbols>: Likewise.
3140         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3141         (std_compare_symbols): New function.
3142         (find_method, find_function_symbols, find_linespec_symbols)
3143         (find_label_symbols_in_block): Change `symbols' parameter to
3144         std::vector.  Update all callers.
3145         (find_label_symbols): Likewise for `function_symbols' and
3146         `label_funcs_ret'.
3147
3148 2018-08-29  Keith Seitz  <keiths@redhat.com>
3149
3150         * linespec.c (symtab_vector_up): Define.
3151         (struct linespec) <file_symtabs>: Change type to std::vector *.
3152         Update all uses.
3153         (struct collect_info) <file_symtabs>: Likewise.
3154         (collect_symtabs_from_filename): Return symtab_vector_up.
3155         Update all callers.
3156         (decode_objc): Remove cleanup.
3157         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3158         (symtab_collector::release_symtabs): Return symtab_vector_up.
3159         Update all callers.
3160         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3161         Update all users.
3162         (collect_symtabs_from_filename, symtabs_from_filename): Return
3163         symtab_vector_up.  Update all callers.
3164
3165 2018-08-29  Tom Tromey  <tom@tromey.com>
3166
3167         * csky-tdep.c (csky_analyze_prologue): Use
3168         core_addr_to_string_nz.
3169
3170 2018-08-29  Tom Tromey  <tom@tromey.com>
3171
3172         * windows-nat.c (struct xlate_exception) <them>: Change type to
3173         DWORD.
3174         (xlate): Fix formatting.  Remove last entry.
3175         (struct xlate_exception, xlate): Comment out.
3176         (windows_nat_target::resume): Use ranged for.
3177
3178 2018-08-29  Jim Wilson  <jimw@sifive.com>
3179
3180         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3181         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3182         of NT_PRFPREG.
3183         (riscv_linux_nat_target::store_registers): Likewise.
3184
3185 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3186
3187         PR gdb/23555
3188         PR gdb/23558
3189         * gnulib/aclocal.m4: Regenerate.
3190         * gnulib/config.in: Regenerate.
3191         * gnulib/configure: Regenerate.
3192         * gnulib/import/Makefile.am: Update.
3193         * gnulib/import/Makefile.in: Update.
3194         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3195         * gnulib/import/_Noreturn.h: ... this.
3196         * gnulib/import/alloca.in.h: Update.
3197         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3198         * gnulib/import/arg-nonnull.h: ... this.
3199         * gnulib/import/assure.h: Update.
3200         * gnulib/import/at-func.c: Update.
3201         * gnulib/import/basename-lgpl.c: Update.
3202         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3203         * gnulib/import/c++defs.h: ... this.
3204         * gnulib/import/canonicalize-lgpl.c: Update.
3205         * gnulib/import/cdefs.h: Update.
3206         * gnulib/import/chdir-long.c: Update.
3207         * gnulib/import/chdir-long.h: Update.
3208         * gnulib/import/cloexec.c: Update.
3209         * gnulib/import/cloexec.h: Update.
3210         * gnulib/import/close.c: Update.
3211         * gnulib/import/closedir.c: Update.
3212         * gnulib/import/config.charset: Update.
3213         * gnulib/import/dirent-private.h: Update.
3214         * gnulib/import/dirent.in.h: Update.
3215         * gnulib/import/dirfd.c: Update.
3216         * gnulib/import/dirname-lgpl.c: Update.
3217         * gnulib/import/dirname.h: Update.
3218         * gnulib/import/dosname.h: Update.
3219         * gnulib/import/dup-safer-flag.c: Update.
3220         * gnulib/import/dup-safer.c: Update.
3221         * gnulib/import/dup.c: Update.
3222         * gnulib/import/dup2.c: Update.
3223         * gnulib/import/errno.in.h: Update.
3224         * gnulib/import/error.c: Update.
3225         * gnulib/import/error.h: Update.
3226         * gnulib/import/exitfail.c: Update.
3227         * gnulib/import/exitfail.h: Update.
3228         * gnulib/import/extra/update-copyright: Update.
3229         * gnulib/import/fchdir.c: Update.
3230         * gnulib/import/fcntl.c: Update.
3231         * gnulib/import/fcntl.in.h: Update.
3232         * gnulib/import/fd-hook.c: Update.
3233         * gnulib/import/fd-hook.h: Update.
3234         * gnulib/import/fd-safer-flag.c: Update.
3235         * gnulib/import/fd-safer.c: Update.
3236         * gnulib/import/fdopendir.c: Update.
3237         * gnulib/import/filename.h: Update.
3238         * gnulib/import/filenamecat-lgpl.c: Update.
3239         * gnulib/import/filenamecat.h: Update.
3240         * gnulib/import/flexmember.h: Update.
3241         * gnulib/import/float+.h: Update.
3242         * gnulib/import/float.c: Update.
3243         * gnulib/import/float.in.h: Update.
3244         * gnulib/import/fnmatch.c: Update.
3245         * gnulib/import/fnmatch.in.h: Update.
3246         * gnulib/import/fnmatch_loop.c: Update.
3247         * gnulib/import/fpucw.h: Update.
3248         * gnulib/import/frexp.c: Update.
3249         * gnulib/import/frexpl.c: Update.
3250         * gnulib/import/fstat.c: Update.
3251         * gnulib/import/fstatat.c: Update.
3252         * gnulib/import/getcwd-lgpl.c: Update.
3253         * gnulib/import/getcwd.c: Update.
3254         * gnulib/import/getdtablesize.c: Update.
3255         * gnulib/import/getlogin_r.c: Update.
3256         * gnulib/import/getprogname.c: Update.
3257         * gnulib/import/getprogname.h: Update.
3258         * gnulib/import/gettext.h: Update.
3259         * gnulib/import/gettimeofday.c: Update.
3260         * gnulib/import/glob-libc.h: Update.
3261         * gnulib/import/glob.c: Update.
3262         * gnulib/import/glob.in.h: Update.
3263         * gnulib/import/glob_internal.h: Update.
3264         * gnulib/import/glob_pattern_p.c: Update.
3265         * gnulib/import/globfree.c: Update.
3266         * gnulib/import/hard-locale.c: Update.
3267         * gnulib/import/hard-locale.h: Update.
3268         * gnulib/import/intprops.h: Update.
3269         * gnulib/import/inttypes.in.h: Update.
3270         * gnulib/import/isnan.c: Update.
3271         * gnulib/import/isnand-nolibm.h: Update.
3272         * gnulib/import/isnand.c: Update.
3273         * gnulib/import/isnanl-nolibm.h: Update.
3274         * gnulib/import/isnanl.c: Update.
3275         * gnulib/import/itold.c: Update.
3276         * gnulib/import/libc-config.h: Update.
3277         * gnulib/import/limits.in.h: Update.
3278         * gnulib/import/localcharset.c: Update.
3279         * gnulib/import/localcharset.h: Update.
3280         * gnulib/import/localtime-buffer.c: Update.
3281         * gnulib/import/localtime-buffer.h: Update.
3282         * gnulib/import/lstat.c: Update.
3283         * gnulib/import/m4/00gnulib.m4: Update.
3284         * gnulib/import/m4/__inline.m4: Update.
3285         * gnulib/import/m4/absolute-header.m4: Update.
3286         * gnulib/import/m4/alloca.m4: Update.
3287         * gnulib/import/m4/builtin-expect.m4: Update.
3288         * gnulib/import/m4/canonicalize.m4: Update.
3289         * gnulib/import/m4/chdir-long.m4: Update.
3290         * gnulib/import/m4/close.m4: Update.
3291         * gnulib/import/m4/closedir.m4: Update.
3292         * gnulib/import/m4/configmake.m4: Update.
3293         * gnulib/import/m4/d-ino.m4: Update.
3294         * gnulib/import/m4/d-type.m4: Update.
3295         * gnulib/import/m4/dirent_h.m4: Update.
3296         * gnulib/import/m4/dirfd.m4: Update.
3297         * gnulib/import/m4/dirname.m4: Update.
3298         * gnulib/import/m4/double-slash-root.m4: Update.
3299         * gnulib/import/m4/dup.m4: Update.
3300         * gnulib/import/m4/dup2.m4: Update.
3301         * gnulib/import/m4/eealloc.m4: Update.
3302         * gnulib/import/m4/environ.m4: Update.
3303         * gnulib/import/m4/errno_h.m4: Update.
3304         * gnulib/import/m4/error.m4: Update.
3305         * gnulib/import/m4/exponentd.m4: Update.
3306         * gnulib/import/m4/exponentl.m4: Update.
3307         * gnulib/import/m4/extensions.m4: Update.
3308         * gnulib/import/m4/extern-inline.m4: Update.
3309         * gnulib/import/m4/fchdir.m4: Update.
3310         * gnulib/import/m4/fcntl-o.m4: Update.
3311         * gnulib/import/m4/fcntl.m4: Update.
3312         * gnulib/import/m4/fcntl_h.m4: Update.
3313         * gnulib/import/m4/fdopendir.m4: Update.
3314         * gnulib/import/m4/filenamecat.m4: Update.
3315         * gnulib/import/m4/flexmember.m4: Update.
3316         * gnulib/import/m4/float_h.m4: Update.
3317         * gnulib/import/m4/fnmatch.m4: Update.
3318         * gnulib/import/m4/fnmatch_h.m4: Update.
3319         * gnulib/import/m4/fpieee.m4: Update.
3320         * gnulib/import/m4/frexp.m4: Update.
3321         * gnulib/import/m4/frexpl.m4: Update.
3322         * gnulib/import/m4/fstat.m4: Update.
3323         * gnulib/import/m4/fstatat.m4: Update.
3324         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3325         * gnulib/import/m4/getcwd-path-max.m4: Update.
3326         * gnulib/import/m4/getcwd.m4: Update.
3327         * gnulib/import/m4/getdtablesize.m4: Update.
3328         * gnulib/import/m4/getlogin.m4: Update.
3329         * gnulib/import/m4/getlogin_r.m4: Update.
3330         * gnulib/import/m4/getpagesize.m4: Update.
3331         * gnulib/import/m4/getprogname.m4: Update.
3332         * gnulib/import/m4/gettimeofday.m4: Update.
3333         * gnulib/import/m4/glibc21.m4: Update.
3334         * gnulib/import/m4/glob.m4: Update.
3335         * gnulib/import/m4/glob_h.m4: Update.
3336         * gnulib/import/m4/gnulib-cache.m4: Update.
3337         * gnulib/import/m4/gnulib-common.m4: Update.
3338         * gnulib/import/m4/gnulib-comp.m4: Update.
3339         * gnulib/import/m4/gnulib-tool.m4: Update.
3340         * gnulib/import/m4/hard-locale.m4: Update.
3341         * gnulib/import/m4/include_next.m4: Update.
3342         * gnulib/import/m4/inttypes-pri.m4: Update.
3343         * gnulib/import/m4/inttypes.m4: Update.
3344         * gnulib/import/m4/isnand.m4: Update.
3345         * gnulib/import/m4/isnanl.m4: Update.
3346         * gnulib/import/m4/largefile.m4: Update.
3347         * gnulib/import/m4/limits-h.m4: Update.
3348         * gnulib/import/m4/localcharset.m4: Update.
3349         * gnulib/import/m4/locale-fr.m4: Update.
3350         * gnulib/import/m4/locale-ja.m4: Update.
3351         * gnulib/import/m4/locale-zh.m4: Update.
3352         * gnulib/import/m4/localtime-buffer.m4: Update.
3353         * gnulib/import/m4/longlong.m4: Update.
3354         * gnulib/import/m4/lstat.m4: Update.
3355         * gnulib/import/m4/malloc.m4: Update.
3356         * gnulib/import/m4/malloca.m4: Update.
3357         * gnulib/import/m4/math_h.m4: Update.
3358         * gnulib/import/m4/mbrtowc.m4: Update.
3359         * gnulib/import/m4/mbsinit.m4: Update.
3360         * gnulib/import/m4/mbsrtowcs.m4: Update.
3361         * gnulib/import/m4/mbstate_t.m4: Update.
3362         * gnulib/import/m4/memchr.m4: Update.
3363         * gnulib/import/m4/memmem.m4: Update.
3364         * gnulib/import/m4/mempcpy.m4: Update.
3365         * gnulib/import/m4/memrchr.m4: Update.
3366         * gnulib/import/m4/mkdir.m4: Update.
3367         * gnulib/import/m4/mkstemp.m4: Update.
3368         * gnulib/import/m4/mmap-anon.m4: Update.
3369         * gnulib/import/m4/mode_t.m4: Update.
3370         * gnulib/import/m4/msvc-inval.m4: Update.
3371         * gnulib/import/m4/msvc-nothrow.m4: Update.
3372         * gnulib/import/m4/multiarch.m4: Update.
3373         * gnulib/import/m4/nocrash.m4: Update.
3374         * gnulib/import/m4/off_t.m4: Update.
3375         * gnulib/import/m4/onceonly.m4: Update.
3376         * gnulib/import/m4/open-cloexec.m4: Update.
3377         * gnulib/import/m4/open.m4: Update.
3378         * gnulib/import/m4/openat.m4: Update.
3379         * gnulib/import/m4/opendir.m4: Update.
3380         * gnulib/import/m4/pathmax.m4: Update.
3381         * gnulib/import/m4/rawmemchr.m4: Update.
3382         * gnulib/import/m4/readdir.m4: Update.
3383         * gnulib/import/m4/readlink.m4: Update.
3384         * gnulib/import/m4/realloc.m4: Update.
3385         * gnulib/import/m4/rename.m4: Update.
3386         * gnulib/import/m4/rewinddir.m4: Update.
3387         * gnulib/import/m4/rmdir.m4: Update.
3388         * gnulib/import/m4/save-cwd.m4: Update.
3389         * gnulib/import/m4/secure_getenv.m4: Update.
3390         * gnulib/import/m4/setenv.m4: Update.
3391         * gnulib/import/m4/signal_h.m4: Update.
3392         * gnulib/import/m4/ssize_t.m4: Update.
3393         * gnulib/import/m4/stat-time.m4: Update.
3394         * gnulib/import/m4/stat.m4: Update.
3395         * gnulib/import/m4/std-gnu11.m4: Update.
3396         * gnulib/import/m4/stdbool.m4: Update.
3397         * gnulib/import/m4/stddef_h.m4: Update.
3398         * gnulib/import/m4/stdint.m4: Update.
3399         * gnulib/import/m4/stdio_h.m4: Update.
3400         * gnulib/import/m4/stdlib_h.m4: Update.
3401         * gnulib/import/m4/strchrnul.m4: Update.
3402         * gnulib/import/m4/strdup.m4: Update.
3403         * gnulib/import/m4/strerror.m4: Update.
3404         * gnulib/import/m4/string_h.m4: Update.
3405         * gnulib/import/m4/strstr.m4: Update.
3406         * gnulib/import/m4/strtok_r.m4: Update.
3407         * gnulib/import/m4/sys_socket_h.m4: Update.
3408         * gnulib/import/m4/sys_stat_h.m4: Update.
3409         * gnulib/import/m4/sys_time_h.m4: Update.
3410         * gnulib/import/m4/sys_types_h.m4: Update.
3411         * gnulib/import/m4/tempname.m4: Update.
3412         * gnulib/import/m4/time_h.m4: Update.
3413         * gnulib/import/m4/unistd-safer.m4: Update.
3414         * gnulib/import/m4/unistd_h.m4: Update.
3415         * gnulib/import/m4/warn-on-use.m4: Update.
3416         * gnulib/import/m4/wchar_h.m4: Update.
3417         * gnulib/import/m4/wchar_t.m4: Update.
3418         * gnulib/import/m4/wctype_h.m4: Update.
3419         * gnulib/import/m4/wint_t.m4: Update.
3420         * gnulib/import/malloc.c: Update.
3421         * gnulib/import/malloc/scratch_buffer.h: Update.
3422         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3423         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3424         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3425         * gnulib/import/malloca.c: Update.
3426         * gnulib/import/malloca.h: Update.
3427         * gnulib/import/malloca.valgrind: Update.
3428         * gnulib/import/math.in.h: Update.
3429         * gnulib/import/mbrtowc.c: Update.
3430         * gnulib/import/mbsinit.c: Update.
3431         * gnulib/import/mbsrtowcs-impl.h: Update.
3432         * gnulib/import/mbsrtowcs-state.c: Update.
3433         * gnulib/import/mbsrtowcs.c: Update.
3434         * gnulib/import/memchr.c: Update.
3435         * gnulib/import/memmem.c: Update.
3436         * gnulib/import/mempcpy.c: Update.
3437         * gnulib/import/memrchr.c: Update.
3438         * gnulib/import/mkdir.c: Update.
3439         * gnulib/import/mkstemp.c: Update.
3440         * gnulib/import/msvc-inval.c: Update.
3441         * gnulib/import/msvc-inval.h: Update.
3442         * gnulib/import/msvc-nothrow.c: Update.
3443         * gnulib/import/msvc-nothrow.h: Update.
3444         * gnulib/import/open.c: Update.
3445         * gnulib/import/openat-die.c: Update.
3446         * gnulib/import/openat-priv.h: Update.
3447         * gnulib/import/openat-proc.c: Update.
3448         * gnulib/import/openat.c: Update.
3449         * gnulib/import/openat.h: Update.
3450         * gnulib/import/opendir.c: Update.
3451         * gnulib/import/pathmax.h: Update.
3452         * gnulib/import/pipe-safer.c: Update.
3453         * gnulib/import/rawmemchr.c: Update.
3454         * gnulib/import/readdir.c: Update.
3455         * gnulib/import/readlink.c: Update.
3456         * gnulib/import/realloc.c: Update.
3457         * gnulib/import/ref-add.sin: Update.
3458         * gnulib/import/ref-del.sin: Update.
3459         * gnulib/import/rename.c: Update.
3460         * gnulib/import/rewinddir.c: Update.
3461         * gnulib/import/rmdir.c: Update.
3462         * gnulib/import/same-inode.h: Update.
3463         * gnulib/import/save-cwd.c: Update.
3464         * gnulib/import/save-cwd.h: Update.
3465         * gnulib/import/scratch_buffer.h: Update.
3466         * gnulib/import/secure_getenv.c: Update.
3467         * gnulib/import/setenv.c: Update.
3468         * gnulib/import/signal.in.h: Update.
3469         * gnulib/import/stat-time.c: Update.
3470         * gnulib/import/stat-time.h: Update.
3471         * gnulib/import/stat-w32.c: Update.
3472         * gnulib/import/stat-w32.h: Update.
3473         * gnulib/import/stat.c: Update.
3474         * gnulib/import/stdbool.in.h: Update.
3475         * gnulib/import/stddef.in.h: Update.
3476         * gnulib/import/stdint.in.h: Update.
3477         * gnulib/import/stdio.in.h: Update.
3478         * gnulib/import/stdlib.in.h: Update.
3479         * gnulib/import/str-two-way.h: Update.
3480         * gnulib/import/strchrnul.c: Update.
3481         * gnulib/import/strdup.c: Update.
3482         * gnulib/import/streq.h: Update.
3483         * gnulib/import/strerror-override.c: Update.
3484         * gnulib/import/strerror-override.h: Update.
3485         * gnulib/import/strerror.c: Update.
3486         * gnulib/import/string.in.h: Update.
3487         * gnulib/import/stripslash.c: Update.
3488         * gnulib/import/strnlen1.c: Update.
3489         * gnulib/import/strnlen1.h: Update.
3490         * gnulib/import/strstr.c: Update.
3491         * gnulib/import/strtok_r.c: Update.
3492         * gnulib/import/sys_stat.in.h: Update.
3493         * gnulib/import/sys_time.in.h: Update.
3494         * gnulib/import/sys_types.in.h: Update.
3495         * gnulib/import/tempname.c: Update.
3496         * gnulib/import/tempname.h: Update.
3497         * gnulib/import/time.in.h: Update.
3498         * gnulib/import/unistd--.h: Update.
3499         * gnulib/import/unistd-safer.h: Update.
3500         * gnulib/import/unistd.in.h: Update.
3501         * gnulib/import/unsetenv.c: Update.
3502         * gnulib/import/verify.h: Update.
3503         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3504         * gnulib/import/wchar.in.h: Update.
3505         * gnulib/import/wctype.in.h: Update.
3506         * gnulib/import/xalloc-oversized.h: Update.
3507         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3508         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3509
3510 2018-08-16  Gary Benson <gbenson@redhat.com>
3511
3512         PR gdb/13000:
3513         * gdb/main.c (captured_main_1): Exit with nonzero status
3514         in batch mode if the last command to be executed failed.
3515         * NEWS: Mention the above.
3516
3517 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3518
3519         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3520         end of warning message.
3521
3522 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3523
3524         PR gdb/22943:
3525         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3526         (aarch64_extract_return_value): Use
3527         aapcs_is_vfp_call_or_return_candidate.
3528         (aarch64_return_in_memory): Likewise.
3529         (aarch64_store_return_value): Likewise.
3530
3531 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3532
3533         * aarch64-tdep.c
3534         (aapcs_is_vfp_call_or_return_candidate): Make static
3535         (pass_in_v_or_stack): Remove function.
3536         (pass_in_v_vfp_candidate): New function.
3537         (aarch64_push_dummy_call): Check for float register candidates.
3538
3539 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3540
3541         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3542         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3543         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3544
3545 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3546
3547         PR build/23399
3548         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3549         (struct ipa_sym_addresses): Rename to...
3550         (struct ipa_sym_addresses_common): ... this.
3551         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3552
3553 2018-08-28  Tom Tromey  <tom@tromey.com>
3554
3555         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3556         (token_fifo): Now a std::vector.
3557         (yylex, c_parse): Update.
3558         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3559         (token_fifo): Now a std::vector.
3560         (yylex, d_parse): Update.
3561         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3562         (token_fifo): Now a std::vector.
3563         (yylex, go_parse): Update.
3564
3565 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3566
3567         * parser-defs.h (struct type_stack) <elements>: Change type to
3568         std::vector<union type_stack_elt>.
3569         <depth, size>: Remove.
3570         * parse.c (parse_exp_in_context_1): Adjust.
3571         (type_stack_reserve): Remove.
3572         (check_type_stack_depth): Remove.
3573         (insert_into_type_stack): Adjust to std::vector.
3574         (insert_type): Likewise.
3575         (push_type): Likewise.
3576         (push_type_int): Likewise.
3577         (insert_type_address_space): Likewise.
3578         (pop_type): Likewise.
3579         (pop_type_int): Likewise.
3580         (pop_typelist): Likewise.
3581         (pop_type_stack): Likewise.
3582         (append_type_stack): Likewise.
3583         (push_type_stack): Likewise.
3584         (get_type_stack): Likewise.
3585         (type_stack_cleanup): Likewise.
3586         (push_typelist): Likewise.
3587         (follow_types): Likewise.
3588         (_initialize_parse): Likewise.
3589
3590 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3591
3592         * NEWS: Mention csky target.
3593
3594 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3595             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3596             Don Breazeal  <donb@codesourcery.com>
3597
3598         * csky-linux-tdep.c: New file.
3599         * csky-tdep.c: Likewise.
3600         * csky-tdep.h: Likewise.
3601         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3602         csky-tdep.o.
3603         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3604         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3605         * configure.tgt: Add csky support.
3606
3607 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3608
3609         * python/py-framefilter.c (py_print_frame): Print frame architecture
3610         when printing on an MI output.
3611
3612 2018-08-27  Tom Tromey  <tom@tromey.com>
3613
3614         PR build/23087:
3615         * configure: Rebuild.
3616         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3617
3618 2018-08-27  Tom Tromey  <tom@tromey.com>
3619
3620         * aarch64-linux-tdep.c
3621         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3622         casts to int.
3623
3624 2018-08-27  Tom Tromey  <tom@tromey.com>
3625
3626         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3627         unsigned.
3628         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3629         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3630         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3631         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3632         unsigned.
3633
3634 2018-08-27  Tom Tromey  <tom@tromey.com>
3635
3636         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3637         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3638
3639 2018-08-27  Tom Tromey  <tom@tromey.com>
3640
3641         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3642         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3643         ULONGEST_MAX.
3644         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3645         ULONGEST_MAX.
3646         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3647         ULONGEST_MAX.
3648         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3649         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3650         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3651         ULONGEST_MAX.
3652         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3653         (ppc64_linux_sigaction_tramp_frame)
3654         (ppc32_linux_sighandler_tramp_frame)
3655         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3656         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3657         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3658         * mn10300-linux-tdep.c (am33_linux_sigframe)
3659         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3660         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3661         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3662         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3663         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3664         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3665         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3666         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3667         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3668         * microblaze-linux-tdep.c
3669         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3670         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3671         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3672         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3673         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3674         * common/common-types.h (ULONGEST_MAX): New define.
3675         (CORE_ADDR_MAX): Fix formatting.
3676         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3677         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3678         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3679         (arm_linux_rt_sigreturn_tramp_frame)
3680         (arm_eabi_linux_sigreturn_tramp_frame)
3681         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3682         (thumb2_eabi_linux_sigreturn_tramp_frame)
3683         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3684         (arm_linux_restart_syscall_tramp_frame)
3685         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3686         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3687         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3688         ULONGEST_MAX.
3689         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3690
3691 2018-08-27  Tom Tromey  <tom@tromey.com>
3692
3693         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3694         CORE_ADDR_MAX.
3695         * mips-tdep.c (mips_deal_with_atomic_sequence)
3696         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3697         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3698         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3699         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3700         CORE_ADDR_MAX.
3701         * aarch64-tdep.c (aarch64_software_single_step): Use
3702         CORE_ADDR_MAX.
3703
3704 2018-08-27  Tom Tromey  <tom@tromey.com>
3705
3706         * linespec.c (complete_linespec_component): Add cast to "char".
3707         * completer.c (completion_tracker::build_completion_result): Add
3708         cast to "char".
3709
3710 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3711
3712         * solist.h (struct solist, struct target_so_ops): Fix
3713         indentation.
3714
3715 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3716
3717         * ada-tasks.c (ada_task_info_s): Remove typedef.
3718         (DEF_VEC_O(ada_task_info_s)): Remove.
3719         (struct ada_tasks_inferior_data): Initialize fields.
3720         <task_list>: Make an std::vector.
3721         (get_ada_tasks_inferior_data): Allocate with new.
3722         (ada_get_task_number): Adjust.
3723         (get_task_number_from_id): Likewise.
3724         (valid_task_id): Likewise.
3725         (ada_get_task_info_from_ptid): Likewise.
3726         (iterate_over_live_ada_tasks): Likewise.
3727         (add_ada_task): Likewise.
3728         (read_known_tasks): Likewise.
3729         (ada_build_task_list): Likewise.
3730         (print_ada_task_info): Likewise.
3731         (info_task): Likewise.
3732         (task_command_1): Likewise.
3733
3734 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3735
3736         * ada-lang.c (add_angle_brackets): Return std::string.
3737
3738 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3739
3740         * python/py-threadevent.c (py_get_event_thread): Initialize
3741         pythread.
3742
3743 2018-08-24  Pedro Alves  <palves@redhat.com>
3744
3745         * python/py-bpevent.c (create_breakpoint_event_object): Use
3746         copy-initialization.
3747         * python/py-continueevent.c (emit_continue_event): Use
3748         copy-initialization.
3749         * python/py-exitedevent.c (create_exited_event_object): Return a
3750         gdbpy_ref<>.
3751         (emit_exited_event): Use copy-initialization.
3752         * python/py-inferior.c (python_new_inferior)
3753         (python_inferior_deleted, add_thread_object): Use
3754         copy-initialization.
3755         * python/py-infevents.c (create_inferior_call_event_object)
3756         (create_register_changed_event_object)
3757         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3758         (emit_inferior_call_event, emit_memory_changed_event)
3759         (emit_register_changed_event): Use copy-initialization.
3760         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3761         Return a gdbpy_ref<>.
3762         (emit_new_objfile_event): Use copy-initialization.
3763         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3764         (emit_clear_objfiles_event): Use copy-initialization.
3765         * python/py-signalevent.c (create_signal_event_object): Use
3766         copy-initialization.
3767         * python/py-threadevent.c (create_thread_event_object): Use
3768         copy-initialization.
3769
3770 2018-08-24  Pedro Alves  <palves@redhat.com>
3771             Simon Marchi  <simon.marchi@ericsson.com>
3772
3773         PR gdb/23379
3774         * python/py-continueevent.c: Include "gdbthread.h".
3775         (create_continue_event_object): Add intro comment.  Add 'ptid'
3776         parameter.  Use it to find thread to pass to
3777         create_thread_event_object.
3778         (emit_continue_event): Pass PTID down to
3779         create_continue_event_object.
3780         * python/py-event.h (py_get_event_thread): Declare.
3781         (create_thread_event_object): Remove default from 'thread'
3782         parameter.
3783         * python/py-stopevent.c (create_stop_event_object): Use
3784         py_get_event_thread.
3785         * python/py-threadevent.c (get_event_thread): Rename to ...
3786         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3787         and use it to find the thread.
3788         (create_thread_event_object): Assert that THREAD isn't null.
3789         Don't find the event thread here.
3790
3791 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3792
3793         * block.h (blockrange, blockranges): New struct declarations.
3794         (struct block): Add new field named `ranges'.
3795         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3796         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3797         macros for accessing ranges in struct block.
3798         (make_blockranges): New declaration.
3799         block.c (make_blockranges): New function.
3800         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3801         for block.
3802         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3803         * blockframe.c (cache_pc_function_block): New static global.
3804         (clear_pc_function_cache): Clear cache_pc_function_block.
3805         (find_pc_partial_function): Move comment to symtab.h.  Add
3806         support for non-contiguous blocks.
3807         * cli/cli-cmds.c (block.h): Include.
3808         (print_disassembly): Handle printing of non-contiguous blocks.
3809         (disassemble_current_function): Likewise.
3810         (disassemble_command): Likewise.
3811
3812         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3813         BLOCK_START.
3814         * blockframe.c (get_pc_function_start): Likewise.
3815         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3816         (gcc_symbol_address): Likewise.
3817         * compile/compile-object-run.c (compile_object_run): Likewise.
3818         * compile/compile.c (get_expr_block_and_pc): Likewise.
3819         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3820         (func_addr_to_tail_call_list): Likewise.
3821         * findvar.c (default_read_var_value): Likewise.
3822         * inline-frame.c (inline_frame_this_id): Likewise.
3823         (skip-inline_frames): Likewise.
3824         * infcmd.c (until_next_command): Likewise.
3825         * linespec.c (convert_linespec_to_sals): Likewise.
3826         * parse.c (parse_exp_in_context_1): Likewise.
3827         * printcmd.c (build_address_symbolic): likewise.
3828         (info_address_command): Likewise.
3829         symtab.c (find_function_start_sal): Likewise.
3830         (skip_prologue_sal): Likewise.
3831         (find_function_alias_target): Likewise.
3832         (find_gnu_ifunc): Likewise.
3833         * stack.c (find_frame_funname): Likewise.
3834         * symtab.c (fixup_symbol_section): Likewise.
3835         (find_function_start_sal): Likewise.
3836         (skip_prologue_sal): Likewsie.
3837         (find_function_alias_target): Likewise.
3838         (find_gnu_ifunc): Likewise.
3839         * tracepoint.c (info_scope_command): Likewise.
3840         * value.c (value_fn_field): Likewise.
3841
3842         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3843         in place of find_pc_partial_function.
3844         * blockframe.c (find_function_entry_range_from_pc): New function.
3845         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3846         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3847         for each range in a block.
3848
3849
3850 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3851
3852         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3853         incrementation.
3854
3855 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3856
3857         * solib-svr4.c (read_program_headers_from_bfd): Return
3858         gdb::optional<gdb::byte_vector>.
3859         (svr4_exec_displacement): Adjust.
3860
3861 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3862
3863         * solib-svr4.c (read_program_header): Return
3864         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3865         (find_program_interpreter): Return
3866         gdb::optional<gdb::byte_vector>.
3867         (scan_dyntag_auxv): Adjust.
3868         (enable_break): Adjust.
3869         (svr4_exec_displacement): Adjust.
3870
3871 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3872
3873         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3874         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3875
3876 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3877
3878         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3879         string_vprintf.
3880         * guile/scm-utils.c (gdbscm_printf): Likewise.
3881         * serial.c (serial_printf): Likewise.
3882         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3883
3884 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3885
3886         * stack.c (print_frame): Print frame architecture when printing on
3887         an MI output.
3888         * NEWS: Mention new "arch" attribute in frame output.
3889
3890 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3891
3892         * arch/aarch64.h (aarch64_regnum): Update comment.
3893
3894 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3895
3896         * NEWS: Add SVE to 8.2 section.
3897
3898 2018-08-21  Pedro Alves  <palves@redhat.com>
3899
3900         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3901         out from gdbscm_parse_function_args.
3902         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3903         gdbscm_parse_function_args_1.
3904
3905 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3906
3907         PR gdb/17816
3908         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3909         operator.
3910
3911 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3912
3913         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3914
3915 2018-08-19  Michael Spang  <spang@google.com>
3916
3917         PR gdb/11786
3918         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3919         for PT_TLS segments.
3920
3921 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3922
3923         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3924         dwarf_variable_value.
3925         * dwarf2-frame.c (class dwarf_expr_executor):
3926         Add override for dwarf_variable_value.
3927         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3928         (class symbol_needs_eval_context): Likewise.
3929         (indirect_synthetic_pointer): Add forward declaration.
3930         (sect_variable_value): New function.
3931         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3932         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3933         for DW_OP_GNU_variable_value.
3934
3935 2018-08-16  Tom Tromey  <tom@tromey.com>
3936
3937         * top.c (read_command_file): Update.
3938         (command_line_input): Remove "repeat" argument.
3939         * ada-lang.c (get_selections): Update.
3940         * linespec.c (decode_line_2): Update.
3941         * defs.h (command_line_input): Remove argument.
3942         * cli/cli-script.c (read_next_line): Update.
3943         * python/py-gdb-readline.c: Update.
3944
3945 2018-08-17  Tom Tromey  <tom@tromey.com>
3946
3947         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3948         command_line_input.
3949
3950 2018-08-15  Tom Tromey  <tom@tromey.com>
3951
3952         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3953
3954 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3955
3956         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3957         If used, use find_pc_partial_function to find address range
3958         to disassemble.
3959         * mi/mi-main.c (mi_cmd_list_features): Report
3960         "data-disassemble-a-option" feature.
3961         * NEWS: Mention new -data-disassemble option -a.
3962
3963 2018-08-13  Tom Tromey  <tom@tromey.com>
3964
3965         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3966
3967 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3968
3969         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3970         (aarch64_linux_collect_sve_regset): Likewise.
3971         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3972         * regcache.h (regcache_map_entry_size): New function.
3973
3974 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3975
3976         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3977         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3978         (SVE_HEADER_VL_LENGTH): Likewise.
3979         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3980         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3981         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3982         (SVE_HEADER_SIZE_OFFSET): Likewise.
3983         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3984         (SVE_HEADER_VL_OFFSET): Likewise.
3985         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3986         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3987         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3988         (SVE_HEADER_SIZE): Likewise.
3989         (aarch64_linux_core_read_vq): Add function.
3990         (aarch64_linux_core_read_description): Check for SVE section.
3991
3992 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3993
3994         * aarch64-fbsd-tdep.c
3995         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3996         collect_size.
3997         * aarch64-linux-tdep.c
3998         (aarch64_linux_iterate_over_regset_sections): Likewise.
3999         * alpha-linux-tdep.c
4000         (alpha_linux_iterate_over_regset_sections):
4001         * alpha-nbsd-tdep.c
4002         (alphanbsd_iterate_over_regset_sections): Likewise.
4003         * amd64-fbsd-tdep.c
4004         (amd64fbsd_iterate_over_regset_sections): Likewise.
4005         * amd64-linux-tdep.c
4006         (amd64_linux_iterate_over_regset_sections): Likewise.
4007         * arm-bsd-tdep.c
4008         (armbsd_iterate_over_regset_sections): Likewise.
4009         * arm-fbsd-tdep.c
4010         (arm_fbsd_iterate_over_regset_sections): Likewise.
4011         * arm-linux-tdep.c
4012         (arm_linux_iterate_over_regset_sections): Likewise.
4013         * corelow.c (get_core_registers_cb): Likewise.
4014         (core_target::fetch_registers): Likewise.
4015         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4016         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4017         * gdbarch.h (void): Regenerate.
4018         * gdbarch.sh: Add supply_size and collect_size.
4019         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4020         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4021         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4022         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4023         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4024         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4025         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4026         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4027         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4028         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4029         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4030         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4031         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4032         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4033         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4034         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4035         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4036         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4037         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4038         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4039         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4040         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4041         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4042         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4043         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4044         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4045         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4046         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4047         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4048         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4049
4050 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4051
4052         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4053         with string_printf.
4054
4055 2018-08-10  Keith Seitz  <keiths@redhat.com>
4056
4057         * compile/compile-c-support.c (add_code_header, add_code_footer):
4058         Move into policy class.
4059         (c_push_user_expression, pop_user_expression_nop)
4060         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4061         (compile_program): New host class.
4062         (c_compile_program): New typedef.
4063         (c_compute_porgram): Use c_compile_program.
4064
4065 2018-08-10  Keith Seitz  <keiths@redhat.com>
4066
4067         * compile/compile-internal.h (compile_instance::~compile_instance):
4068         Remove calls to htab_delete.
4069         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4070         * compile.c (compile_instance::compile_instance): Initialize
4071         htab unique pointers.
4072         (compile_instance::get_cached_type, compile_instance::insert_type)
4073         (compile_instance::error_symbol_once): Update for unique_ptr.
4074
4075 2018-08-10  Keith Seitz  <keiths@redhat.com>
4076
4077         * compile/compile-c-symbols.c (struct symbol_error)
4078         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4079         (compile_instance::insert_symbol_error)
4080         (compile_instance::error_symbol_once): Move to ...
4081         * compile/compile.c: ... here.
4082
4083 2018-08-10  Keith Seitz  <keiths@redhat.com>
4084
4085         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4086         instead of `new_compile_instance'.
4087         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4088         Update description.
4089         If the symbol error map is not initialized, create it.
4090         (generate_c_for_for_one_symbol): Do not check/initialize
4091         the symbol error map.
4092         * compile/compile-c-types.c (compile_c_instance): Make a class.
4093         Update all callers.
4094         (compile_instance::compile_instance): Initialize the type cache.
4095         (get_cached_type): New function.
4096         (insert_type): Update description.
4097         (compile_c_instance::m_default_cflags): Define.
4098         (convert_type): Update description.  Use get_cached_type.
4099         (delete_instance): Moved to destructor.
4100         (new_compile_instance): Moved to constructor.
4101         * compile/compile-c.h (compile_c_instance): Make class inheriting
4102         from compile_instance.
4103         <base>: Remove field.
4104         <type_map, symbol_err_map>: Move to base class.
4105         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4106         * compile/compile-internal.h (compile_instance): Make class.
4107         <type_map_t, symbol_err_map_t>: Define.
4108         <fe>: Rename to `m_gcc_fe'.
4109         <scope, block, gcc_target_options>: Add `m_' prefix.
4110         <m_type_map, m_symbol_err_map>: New fields, moved from
4111         compile_c_instance.
4112         <destroy>: Remove.
4113         (convert_type, new_compile_instance): Remove.
4114         * compile/compile.c (cleanup_compile_instance): Remove.
4115         (compile_to_object): Use unique_ptr to eliminate cleanups.
4116         (compile_instance::set_print_callback, compile_instance::version)
4117         (compile_instance::set_verbose)
4118         (compile_instance::set_driver_filename)
4119         (compile_instance::set_triplet_regexp)
4120         (compile_instance::set_arguments)
4121         (compile_instance::set_source_file)
4122         (compile_instance::compile): Define.
4123
4124 2018-08-10  Keith Seitz  <keiths@redhat.com>
4125
4126         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4127         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4128         gcc-c-fe.def to define C plugin.
4129         (delete_instance): Delete `c_plugin'.
4130         (new_compile_instance): Initialize `c_plugin'.
4131         * compile/compile-c.h: Include gcc_c_plugin.h.
4132         (struct compile_c_instance) <c_plugin>: New member.
4133         * gcc-c-plugin.h: New file.
4134         Update all callers with API change.
4135
4136 2018-08-10  Keith Seitz  <keiths@redhat.com>
4137
4138         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4139         (HFILES_NO_SRCDIR): ... to here.
4140         Add compile-internal.h and compile-c.h.
4141         * compile/compile-c-support.c: Include compile-c.h.
4142         * compile/compile-c-symbols.c: Include compile-c.h.
4143         (generate_c_for_variable_locations): Update comment.
4144         * compile/compile-c-types.c: Include compile-c.h.
4145         * compile/compile-c.h: New file -- moved C language declarations
4146         from other files here.
4147         * compile/compile-internal.h: Do not include hashtab.h or
4148         common/enum-flags.h.
4149         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4150         (gcc_convert_symbol, gcc_symbol_address)
4151         (generate_c_for_variable_locations, c_get_mode_for_size)
4152         (c_get_range_decl_name): Definitions moved to compile-c.h.
4153         * compile/compile-loc2c.c: Include compile-c.h.
4154
4155 2018-08-10  Keith Seitz  <keiths@redhat.com>
4156
4157         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4158         (c_symbol_substitution_name): ... this.
4159         Update all callers.
4160
4161 2018-08-10  Keith Seitz  <keiths@redhat.com>
4162
4163         * compile/compile-c-support.c (c_compute_program): Use
4164         unique_xmalloc_ptr to eliminate cleanup.
4165         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4166         Return a unique_xmalloc_ptr and eliminate cleanup.
4167         * compile/compile-internal.h (generate_c_for_variable_locations):
4168         Return unique_xmalloc_ptr and update description.
4169
4170 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4171
4172         * corelow.c (core_target::get_core_register_section): Rename
4173         min_size to section_min_size.
4174
4175 2018-08-09  Jim Wilson  <jimw@sifive.com>
4176
4177         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4178         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4179         * NEWS: Mention new GNU/Linux RISC-V target.
4180         * configure.host: Add riscv*-*-linux*.
4181         * configure.nat: Add riscv*.
4182         * configure.tgt: Add riscv*-*-linux*.
4183         * riscv-linux-nat.c: New file.
4184         * riscv-linux-tdep.c: New file.
4185
4186 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4187
4188         * infrun.c (resume): Make static, add forward declaration.
4189         (proceed): Update header comment.
4190         * infrun.h (resume): Delete declaration.
4191
4192 2018-08-09  Tom Tromey  <tom@tromey.com>
4193
4194         * riscv-tdep.h: Minor formatting fixes.
4195
4196 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4197
4198         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4199         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4200         (test_mkdir_recursive): Likewise.
4201         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4202
4203 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4204
4205         * valarith.c (value_subscripted_rvalue): If an array is not in
4206         memory, and we don't know the upper bound, then we can't know that
4207         the requested element exists or not.
4208
4209 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4210
4211         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4212         (target_options_to_string): Add comment.
4213
4214 2018-08-08  Tom Tromey  <tom@tromey.com>
4215
4216         * unittests/scoped_mmap-selftests.c: Check result of "write".
4217
4218 2018-08-08  Jim Wilson  <jimw@sifive.com>
4219
4220         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4221         (decode_register_index_short): New.
4222         (decode_j_type_insn, decode_cj_type_insn): New.
4223         (decode_b_type_insn, decode_cb_type_insn): New.
4224         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4225         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4226         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4227         is_c_sw_insn instead of is_sw_insn.
4228         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4229         (riscv_software_single_step): New.
4230         * riscv-tdep.h (riscv_software_single_step): Declare.
4231
4232         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4233         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4234
4235 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4236
4237         PR gdb/18050:
4238         * target.c (dispose_inferior): Don't dispose of inferiors that are
4239         already killed.
4240
4241 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4242
4243         * remote.c (remote_target::download_tracepoint): Change char* to
4244         const char*.
4245
4246 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4247
4248         * target.h (target_options_to_string): Return an std::string.
4249         * target.c (str_comma_list_concat_elem): Return void, use
4250         std::string.
4251         (do_option): Likewise.
4252         (target_options_to_string): Return an std::string.
4253         * linux-nat.c (linux_nat_target::wait): Adjust.
4254         * target-debug.h (target_debug_print_options): Adjust.
4255
4256 2018-08-07  Tom Tromey  <tom@tromey.com>
4257
4258         * Makefile.in (CPPFLAGS): New variable.
4259         (INTERNAL_CPPFLAGS): Use it.
4260
4261 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4262
4263         * NEWS: Mention the index cache.
4264
4265 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4266
4267         * common/pathstuff.h (get_standard_cache_dir): New.
4268         * common/pathstuff.c (get_standard_cache_dir): New.
4269         * build-id.h (build_id_to_string): New.
4270         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4271         DEBUG_STR_SUFFIX): Move to here.
4272         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4273         DEBUG_STR_SUFFIX): Move from there.
4274         (write_psymtabs_to_index): Make non-static, add basename
4275         parameter.  Write to temporary files, rename when done.
4276         (save_gdb_index_command): Adjust call to
4277         write_psymtabs_to_index.
4278         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4279         field.
4280         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4281         (get_gdb_index_contents_from_cache): New.
4282         (get_gdb_index_contents_from_cache_dwz): New.
4283         (dwarf2_initialize_objfile): Read index from cache.
4284         (dwarf2_build_psymtabs): Save to index.
4285         * dwarf-index-cache.h: New file.
4286         * dwarf-index-cache.c: New file.
4287         * dwarf-index-write.h: New file.
4288
4289 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4290
4291         * gnulib/aclocal.m4: Re-generate.
4292         * gnulib/config.in: Re-generate.
4293         * gnulib/configure: Re-generate.
4294         * gnulib/import/Makefile.am: Re-generate.
4295         * gnulib/import/Makefile.in: Re-generate.
4296         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4297         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4298         * gnulib/import/m4/mkdir.m4: New file.
4299         * gnulib/import/mkdir.c: New file.
4300         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4301         module.
4302
4303 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4304
4305         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4306         * common/scoped_mmap.c: New file.
4307         * common/scoped_mmap.h (destroy): New method.
4308         (~scoped_mmap, reset): Use destroy.
4309         (scoped_mmap): New move constructor.
4310         (mmap_file): New declaration.
4311         * unittests/scoped_mmap-selftests.c (test_normal,
4312         test_invalid_filename, run_tests): New functions.
4313         (_initialize_scoped_mmap_selftests): Register selftest.
4314
4315 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4316
4317         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4318         (read_gdb_index_from_buffer): ... this.  Remove section
4319         parameter, add buffer parameter.
4320         (get_gdb_index_contents_ftype,
4321         get_gdb_index_contents_dwz_ftype): New typedefs.
4322         (dwarf2_read_gdb_index): Add callback parameters to get the
4323         index contents.
4324         (get_gdb_index_contents_from_section): New.
4325         (dwarf2_initialize_objfile): Update call to
4326         dwarf2_read_gdb_index.
4327
4328 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4329
4330         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4331         (gdb_open_cloexec): Likewise.
4332         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4333         (commandline_from_pid): Likewise.
4334         (linux_xfer_osdata_threads): Likewise.
4335         (linux_xfer_osdata_fds): Likewise.
4336         * ada-lang.c (is_package_name): Likewise.
4337         * auxv.c (procfs_xfer_auxv): Likewise.
4338         * breakpoint.c (print_one_breakpoint_location): Use
4339         uiout::field_fmt.
4340         (print_one_catch_solib): Use string_printf.
4341         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4342         (add_pe_forwarded_sym): Likewise.
4343         * dwarf2read.c (create_type_unit_group): Likewise.
4344         (build_error_marker_type): Likewise.
4345         * infcall.c (get_function_name): Likewise.
4346         * valprint.c (print_converted_chars_to_obstack): Likewise.
4347         * xtensa-tdep.c (xtensa_register_type): Likewise.
4348
4349 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4350
4351         * remote.c (remote_target::download_tracepoint): Fix format
4352         string errors.
4353
4354 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4355
4356         * tracefile.c: Include common/byte-vector.h.
4357         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4358         with trace_regblock_size if needed.  Update uses of buf.
4359
4360 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4361
4362         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4363         std::vector<unsigned char>.
4364         * tracepoint.c (collection_list::collection_list): Remove
4365         m_regs_mask initializer from initializer list.  Resize
4366         m_regs_mask using the largest remote register number.
4367         (collection_list::add_remote_register): Remove size check on
4368         m_regs_mask.  Use at to access element.
4369         (collection_list::stringify): Change type of temp_buf to
4370         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4371         stringify the register mask.  Use pack_hex_byte for the register
4372         mask.
4373
4374 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4375
4376         * tracepoint.h (class collection_list) <add_register>: Remove.
4377         <add_remote_register, add_ax_registers, add_local_register>:
4378         Declare.
4379         <add_memrange>: Add scope parameter.
4380         * tracepoint.c (encode_actions_1): Likewise.
4381         (collection_list::add_register): Rename to ...
4382         (collection_list::add_remote_register): ... this.  Update
4383         comment.
4384         (collection_list::add_ax_registers, add_local_register): New
4385         methods.
4386         (collection_list::add_memrange): Add scope parameter.  Call
4387         add_local_register instead of add_register.
4388         (finalize_tracepoint_aexpr): New function.
4389         (collection_list::collect_symbol): Update calls to add_memrange.
4390         Call add_local_register instead of add_register.  Call
4391         add_ax_registers.  Call finalize_tracepoint_aexpr.
4392         (encode_actions_1): Get remote regnos for $reg action.  Call
4393         add_remote_register, add_ax_registers, and add_local_register.
4394         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4395         (validate_actionline): Call finalize_tracepoint_aexpr.
4396
4397 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4398
4399         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4400         Replace array buf with gdb::char_vector buf, of size
4401         get_remote_packet_size ().  Replace references to buf and
4402         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4403         and xsnprintf with snprintf.  Raise errors if the buffer is too
4404         small.
4405
4406 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4407
4408         * remote.c (remote_target::download_tracepoint): Fix the has_more
4409         predicate in the QTDP action list iteration.
4410
4411 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4412
4413         * remote.c (remote_target::download_tracepoint): Fix indentation
4414         in for block.
4415
4416 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4417
4418         * proc-api.c (_initialize_proc_api): Remove c, unused.
4419         * procfs.c (procfs_init_inferior): Remove signals, unused.
4420         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4421         unused.
4422
4423 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4424             Andrew Burgess  <andrew.burgess@embecosm.com>
4425
4426         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4427         'W_STOPCODE (0)' as this could be ambiguous.
4428
4429 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4430
4431         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4432         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4433         "ai_socktype").
4434
4435 2018-08-02  Tom Tromey  <tom@tromey.com>
4436
4437         PR symtab/16842.
4438         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4439         symbols.
4440         (process_structure_scope): Likewise.
4441
4442 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4443
4444         PR gdb/22629:
4445         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4446         kill inferior.
4447
4448 2018-08-02  Tom Tromey  <tom@tromey.com>
4449
4450         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4451         (darwin_suspend_inferior, darwin_resume_inferior)
4452         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4453         (darwin_check_new_threads): Check result of get_darwin_inferior.
4454
4455 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4456
4457         GDB 8.1.1 released.
4458
4459 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4460
4461         * varobj.c (varobj_get_path_expr_parent): Report an error if
4462         parent is a dynamic varobj.
4463
4464 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4465
4466         * gnulib/aclocal.m4: Re-generate.
4467         * gnulib/config.in: Re-generate.
4468         * gnulib/configure: Re-generate.
4469         * gnulib/import/Makefile.in: Re-generate.
4470         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4471         * gnulib/import/m4/onceonly.m4: Re-generate.
4472
4473 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4474
4475         * target-descriptions.c (struct xml_test_tdesc): New.
4476         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4477         (record_xml_tdesc): Update.
4478         (maintenance_check_xml_descriptions): Update.
4479         * target-descriptions.h (record_xml_tdesc): Update comment.
4480
4481 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4482
4483         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4484         checking array bounds are defined.
4485
4486 2018-07-30  Tom Tromey  <tom@tromey.com>
4487
4488         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4489         irreflexivity violation.
4490
4491 2018-07-30  Tom Tromey  <tom@tromey.com>
4492
4493         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4494         * value.c (unpack_long): Remove lint code.
4495         * valops.c (value_ind): Remove lint code.
4496         * valarith.c (value_x_binop, value_x_unop, value_equal)
4497         (value_pos): Remove lint code.
4498
4499 2018-07-28  Tom de Vries  <tdevries@suse.de>
4500
4501         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4502         with undefined upper bound as <optimized out>.
4503
4504 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4505
4506         * gcore.in: Rename variable "name" to "prefix".  Expand
4507         "usage" text.
4508
4509 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4510
4511         * windows-nat.c (windows_nat_target::create_inferior): Update to
4512         call close() in global namespace.
4513
4514 2018-07-26  Tom Tromey  <tom@tromey.com>
4515
4516         * dwarf-index-write.c (add_address_entry): Don't add objfile
4517         offsets.
4518         * dbxread.c (find_stab_function): Rename from
4519         find_stab_function_addr.  Return a bound_minimal_symbol.
4520         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4521         Don't add objfile offsets.
4522         (end_psymtab): Use raw_text_low, raw_text_high,
4523         MSYMBOL_VALUE_RAW_ADDRESS.
4524         (read_ofile_symtab): Update.
4525         (process_one_symbol): Update.
4526         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4527         offsets.
4528         (dw2_relocate): Remove.
4529         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4530         searching addrmap.
4531         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4532         Update.
4533         (process_psymtab_comp_unit_reader, add_partial_symbol)
4534         (add_partial_subprogram, dwarf2_ranges_read): Update.
4535         (load_partial_dies): Update.
4536         (add_address_entry): Don't add objfile offsets.
4537         (dwarf2_build_include_psymtabs): Update.
4538         (create_addrmap_from_aranges): Don't add objfile offsets.
4539         (dw2_find_pc_sect_compunit_symtab): Update.
4540         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4541         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4542         Update.
4543         (parse_partial_symbols): Don't add objfile offsets.  Use
4544         raw_text_low, raw_text_high.  Update.
4545         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4546         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4547         or call 'relocate' quick function.  Clear psymbol_map.
4548         * psympriv.h (struct partial_symbol) <address>: Add section
4549         offset.
4550         <set_unrelocated_address>: Rename from set_address.
4551         <raw_text_low, raw_text_high>: New methods.
4552         <text_low, text_high>: Add objfile parameter.
4553         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4554         set_unrelocated_address.
4555         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4556         (find_pc_psymbol): Update.
4557         (fixup_psymbol_section, relocate_psymtabs): Remove.
4558         (dump_psymtab, psym_functions): Update.
4559         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4560         parameter.
4561         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4562         (start_psymtab_common): Update.
4563         * symfile-debug.c (debug_qf_relocate): Remove.
4564         (debug_sym_quick_functions): Update.
4565         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4566         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4567         Update.
4568
4569 2018-07-26  Tom Tromey  <tromey@redhat.com>
4570
4571         * dbxread.c (end_psymtab): Use text_high_valid and
4572         text_low_valid.
4573         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4574         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4575         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4576         Update comment.
4577         <text_low_valid, text_high_valid>: New fields.
4578         <set_text_low, set_text_high>: Update.
4579         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4580
4581 2018-07-26  Tom Tromey  <tom@tromey.com>
4582
4583         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4584         Update.
4585         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4586         textlow and texthigh fields.
4587         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4588         Update.
4589         * mdebugread.c (parse_lines, parse_partial_symbols)
4590         (psymtab_to_symtab_1): Update.
4591         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4592         Rename fields.  Update comment.  Now private.
4593         <text_low, text_high, set_text_low, set_text_high>: New methods.
4594         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4595         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4596         (start_psymtab_common, maintenance_info_psymtabs)
4597         (maintenance_check_psymtabs): Update.
4598         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4599         texthigh fields.
4600         (scan_xcoff_symtab): Update.
4601
4602 2018-07-26  Tom Tromey  <tromey@redhat.com>
4603
4604         * psympriv.h (struct partial_symbol) <unrelocated_address,
4605         address, set_address>: New methods.
4606         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4607         (fixup_psymbol_section, relocate_psymtabs): Update.
4608         (print_partial_symbols): Add 'objfile' parameter.  Update.
4609         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4610         Update.
4611
4612 2018-07-26  Tom Tromey  <tom@tromey.com>
4613
4614         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4615         (debug_names::write_psymbols): Update.
4616         * psympriv.h (struct partial_symbol): Derive from
4617         general_symbol_info.
4618         <obj_section>: New method.
4619         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4620         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4621         (find_pc_sect_psymbol, fixup_psymbol_section)
4622         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4623         (print_partial_symbols, recursively_search_psymtabs)
4624         (compare_psymbols, psymbol_hash, psymbol_compare)
4625         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4626         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4627
4628 2018-07-26  Tom Tromey  <tromey@redhat.com>
4629
4630         * dbxread.c (end_psymtab): Remove dead code.
4631
4632 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4633
4634         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4635         DWARF unwinders are disabled.
4636         * dwarf2-frame.c: Add dwarf2read.h include.
4637         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4638         disabled.
4639         (dwarf2_frame_unwinders_enabled_p): Define.
4640         (show_dwarf_unwinders_enabled_p): New function.
4641         (_initialize_dwarf2_frame): Register switch to control DWARF
4642         unwinder use.
4643         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4644         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4645         (show_dwarf_cmdlist): Remove static keyword.
4646         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4647         (show_dwarf_cmdlist): Declare.
4648         * NEWS: Document new feature.
4649
4650 2018-07-26  Tom de Vries  <tdevries@suse.de>
4651
4652         PR breakpoints/23366
4653         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4654
4655 2018-07-26  Tom de Vries  <tdevries@suse.de>
4656
4657         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4658         DW_AT_count can't be translated to a dynamic prop.
4659
4660 2018-07-25  Tom de Vries  <tdevries@suse.de>
4661
4662         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4663         try/catch.
4664
4665 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4666
4667         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4668
4669 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4670
4671         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4672
4673 2018-07-24  Keith Seitz  <keiths@redhat.comt
4674
4675         PR symtab/23010
4676         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4677         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4678         instead of add_symbol_to_list.
4679         (read_file_scope): Call prepare_one_comp_unit before reading
4680         any other DIEs.
4681
4682 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4683
4684         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4685
4686 2018-07-24  Tom Tromey  <tom@tromey.com>
4687
4688         * utils.c (malloc, realloc, free): Don't declare.
4689         * configure, config.in: Rebuild.
4690         * configure.ac: Don't check for declarations of free, malloc, or
4691         realloc.
4692
4693 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4694
4695         * aarch64-linux-nat.c
4696         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4697         variable.
4698         * arm-linux-nat.c (fetch_regs): Likewise.
4699         (store_regs): Likewise.
4700         (fetch_vfp_regs): Likewise.
4701         (store_vfp_regs): Likewise.
4702         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4703         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4704         (arm_linux_nat_target::insert_watchpoint): Likewise.
4705         (arm_linux_nat_target::remove_watchpoint): Likewise.
4706         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4707         Likewise.
4708         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4709         Likewise.
4710         * ppc-linux-nat.c (fetch_register): Likewise.
4711         (fetch_all_gp_regs): Likewise.
4712         (fetch_ppc_registers): Likewise.
4713         (store_all_gp_regs): Likewise.
4714         (store_ppc_registers): Likewise.
4715         (hwdebug_insert_point): Likewise.
4716         (can_use_watchpoint_cond_accel): Likewise.
4717         * remote-sim.c (gdb_os_write_stdout): Likewise.
4718
4719 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4720             Tom Tromey  <tom@tromey.com>
4721
4722         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4723         test for it.
4724         * configure: Rebuild.
4725
4726 2018-07-22  Tom Tromey  <tom@tromey.com>
4727
4728         * regformats/regdat.sh: Define xmltarget_${name} inside
4729         #ifndef IN_PROCESS_AGENT.
4730
4731 2018-07-22  Tom Tromey  <tom@tromey.com>
4732
4733         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4734
4735 2018-07-22  Tom Tromey  <tom@tromey.com>
4736
4737         * symfile.c (reread_symbols): Notify iter, not objfile.
4738
4739 2018-07-22  Tom Tromey  <tom@tromey.com>
4740
4741         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4742         Use arch_ops.
4743         (ravenscar_thread_target::prepare_to_store): Likewise.
4744
4745 2018-07-22  Tom Tromey  <tom@tromey.com>
4746
4747         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4748         unused variable.  Call value_fetch_lazy when needed.
4749         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4750         Remove unused variable.  Call value_fetch_lazy when needed.
4751
4752 2018-07-22  Tom Tromey  <tom@tromey.com>
4753
4754         * m32c-tdep.c (mark_dma): Return void.
4755         (make_regs): Remove unused declarations.
4756
4757 2018-07-22  Tom Tromey  <tom@tromey.com>
4758
4759         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4760         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4761         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4762         bkscm_get_valid_block_smob_arg_unsafe for effect.
4763
4764 2018-07-22  Tom Tromey  <tom@tromey.com>
4765
4766         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4767         value_type.
4768
4769 2018-07-22  Tom Tromey  <tom@tromey.com>
4770
4771         * windows-nat.c (saved_context): Conditionally define.
4772         * remote.c (remote_target::remote_btrace_maybe_reopen):
4773         Conditionally declare "warned".
4774         * inflow.c (sigquit_ours): Conditionally define.
4775         (new_tty): Move "tty" declaration inside #if.
4776         * guile/guile.c (guile_datadir): Conditionally define.
4777         * charset.c (set_be_le_names): Move some declarations inside #if.
4778         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4779         #if.
4780         (parse_xml_btrace_conf): Likewise.
4781
4782 2018-07-22  Tom Tromey  <tom@tromey.com>
4783
4784         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4785
4786 2018-07-22  Tom Tromey  <tom@tromey.com>
4787
4788         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4789         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4790         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4791         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4792         * stack.c (frame_apply_level_command): Remove unused variable.
4793         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4794         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4795         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4796         unused variable.
4797         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4798         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4799         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4800         variable.
4801         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4802         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4803         variable.
4804         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4805         Remove unused variable.
4806         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4807         variable.
4808         * common/tdesc.c (print_xml_feature::visit): Remove unused
4809         variable.
4810         * compile/compile-object-load.c (store_regs): Remove unused
4811         variables.
4812         * complaints.c (clear_complaints): Remove unused variable.
4813         * corelow.c (core_target_open): Remove unused variable.
4814         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4815         variable.
4816         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4817         variable.
4818         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4819         variable.
4820         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4821         variable.
4822         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4823         variable.
4824         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4825         variable.
4826         * ia64-tdep.c (examine_prologue): Remove unused variable.
4827         * infcall.c (run_inferior_call): Remove unused variable.
4828         * inferior.c (exit_inferior): Remove unused variable.
4829         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4830         * linespec.c (decode_line_2): Remove unused variable.
4831         * linux-nat.c (super_close): Remove.
4832         * linux-tdep.c (linux_info_proc): Remove unused variable.
4833         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4834         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4835         Remove unused variable.
4836         * parse.c (find_minsym_type_and_address): Remove unused variable.
4837         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4838         variable.
4839         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4840         variable.
4841         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4842         variables.
4843         * record-btrace.c (record_btrace_target::store_registers): Remove
4844         unused variable.
4845         (cmd_show_record_btrace_cpu): Remove unused variable.
4846         * riscv-tdep.c (riscv_register_reggroup_p)
4847         (riscv_push_dummy_call, riscv_return_value): Remove unused
4848         variable.
4849         * rust-exp.y (literal): Remove unused variable.
4850         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4851         unused variable.
4852         <STRUCTOP_ANONYMOUS>: Likewise.
4853         * s390-linux-tdep.c (s390_linux_init_abi_31)
4854         (s390_linux_init_abi_64): Remove unused variable.
4855         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4856         (file_select_thread, net_windows_open, _initialize_ser_windows):
4857         Remove unused variables.
4858         * symtab.c (find_pc_sect_line): Remove unused variable.
4859         * target-memory.c (compute_garbled_blocks): Remove unused
4860         variable.
4861         (target_write_memory_blocks): Remove unused variable.
4862         * target.c (target_stack::unpush): Remove unused variables.
4863         * tracepoint.c (start_tracing, all_tracepoint_actions)
4864         (merge_uploaded_trace_state_variables)
4865         (print_one_static_tracepoint_marker): Remove unused variable.
4866         * unittests/basic_string_view/element_access/char/1.cc (test01):
4867         Remove unused variable.
4868         * windows-nat.c (windows_continue, windows_add_all_dlls)
4869         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4870         Remove unused variables.
4871
4872 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4873
4874         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4875         attr_profile in HAVE_ELF.
4876         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4877         HAVE_ELF.
4878
4879 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4880
4881         * frame.c (frame_register_unwind): Change parameter name.
4882         (frame_unwind_register): Likewise.
4883         (frame_unwind_register_value): Likewise.
4884         (frame_unwind_register_signed): Likewise.
4885         (frame_unwind_register_unsigned): Likewise.
4886         * frame.h (frame_register_unwind): Likewise.
4887         (frame_unwind_register): Likewise.
4888         (frame_unwind_register_value): Likewise.
4889         (frame_unwind_register_signed): Likewise.
4890         (frame_unwind_register_unsigned): Likewise.
4891         (frame_unwind_arch): Likewise.
4892
4893 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4894
4895         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4896         ISA maintenance.
4897
4898 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4899
4900         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4901         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4902         hand.
4903
4904 2018-07-20  Keith Seitz  <keiths@redhat.com>
4905
4906         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4907         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4908         m_compunit_symtab, m_language>: Add "m_" prefix.
4909         Update all uses.
4910         * buildsym.c: Update all uses.
4911
4912 2018-07-20  Tom Tromey  <tom@tromey.com>
4913
4914         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4915         * buildsym.h (record_line_ftype): Remove typedef.
4916
4917 2018-07-20  Tom Tromey  <tom@tromey.com>
4918
4919         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4920         (end_expandable_symtab): Likewise.
4921         (end_symtab_get_static_block): Likewise.
4922         (end_symtab_from_static_block): Likewise.
4923         * buildsym-legacy.c (augment_type_symtab): Remove.
4924         (end_expandable_symtab): Remove.
4925         (end_symtab_get_static_block): Remove.
4926         (end_symtab_from_static_block): Remove.
4927
4928 2018-07-20  Tom Tromey  <tom@tromey.com>
4929
4930         * dwarf2read.c: Include buildsym.h.
4931         (struct dwarf2_cu) <builder>: New method.
4932         (fixup_go_packaging): Update.
4933         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4934         use scoped_free_pendings.
4935         (using_directives): Add "cu" parameter, remove "language".
4936         (read_import_statement, setup_type_unit_groups, )
4937         (read_func_scope, read_lexical_block_scope)
4938         (dwarf2_record_block_ranges, read_namespace): Update.
4939         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4940         (lnp_state_machine::handle_end_sequence): Update.
4941         (class lnp_state_machine) <m_cu>: New member.
4942         <m_record_line_callback>: Remove.
4943         <m_currently_recording_lines>: New member.
4944         (lnp_state_machine::handle_set_file): Update.
4945         (noop_record_line): Remove.
4946         (dwarf_record_line_p): Add cu parameter.
4947         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4948         (lnp_state_machine::record_line)
4949         (lnp_state_machine::lnp_state_machine)
4950         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4951         (dwarf_decode_lines): Update.
4952         (dwarf2_start_subfile): Add cu parameter.
4953         (dwarf2_start_symtab, new_symbol): Update.
4954         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4955         Remove dwarf2_per_objfile parameter.
4956         (dwarf_decode_macros): Update.
4957
4958 2018-07-20  Tom Tromey  <tom@tromey.com>
4959
4960         * stabsread.c (define_symbol): Update.
4961         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4962         * dwarf2read.c (new_symbol): Update.
4963         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4964         * cp-namespace.c: Include buildsym.h.
4965         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4966         * buildsym-legacy.c (get_buildsym_compunit): New function.
4967
4968 2018-07-20  Tom Tromey  <tom@tromey.com>
4969
4970         * xcoffread.c: Include buildsym-legacy.h.
4971         * windows-nat.c: Include buildsym-legacy.h.
4972         * stabsread.c: Include buildsym-legacy.h.
4973         * mdebugread.c: Include buildsym-legacy.h.
4974         * buildsym-legacy.h: New file.
4975         * buildsym-legacy.c: New file, from buildsym.c.
4976         * go32-nat.c: Include buildsym-legacy.h.
4977         * dwarf2read.c: Include buildsym-legacy.h.
4978         * dbxread.c: Include buildsym-legacy.h.
4979         * cp-namespace.c: Include buildsym-legacy.h.
4980         * coffread.c: Include buildsym-legacy.h.
4981         * buildsym.h: Move some contents to buildsym-legacy.h.
4982         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4983         buildsym-legacy.c.
4984         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4985
4986 2018-07-20  Tom Tromey  <tom@tromey.com>
4987
4988         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4989         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4990         (buildsym_compunit::buildsym_compunit)
4991         (buildsym_compunit::~buildsym_compunit)
4992         (buildsym_compunit::get_macro_table): Define.
4993
4994 2018-07-20  Tom Tromey  <tom@tromey.com>
4995
4996         * buildsym.c (reset_symtab_globals): Remove.
4997         (buildsym_compunit::end_symtab_from_static_block): Update.
4998         (buildsym_compunit::augment_type_symtab): Update.
4999         (end_symtab_from_static_block): Call free_buildsym_compunit.
5000         (augment_type_symtab, end_symtab, end_expandable_symtab):
5001         Likewise.
5002
5003 2018-07-20  Tom Tromey  <tom@tromey.com>
5004
5005         * arch-utils.c: Do not include buildsym.h.
5006         * mipsread.c: Do not include buildsym.h.
5007         * machoread.c: Do not include buildsym.h.
5008         * elfread.c: Do not include buildsym.h.
5009
5010 2018-07-20  Tom Tromey  <tom@tromey.com>
5011
5012         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5013         initialization.
5014         (buildsym_compunit): Add new constructor.
5015         (struct buildsym_compunit) <get_last_source_file, finish_block,
5016         record_block_range, start_subfile, patch_subfile_names,
5017         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5018         set_last_source_start_addr, get_last_source_start_addr,
5019         get_local_using_directives, set_local_using_directives,
5020         get_global_using_directives, outermost_context_p,
5021         get_current_context_stack, get_context_stack_depth,
5022         get_current_subfile, get_local_symbols, get_file_symbols,
5023         get_global_symbols, record_debugformat, record_producer,
5024         push_context, pop_context, end_symtab_get_static_block,
5025         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5026         New public methods.
5027         <record_pending_block, finish_block_internal, make_blockvector,
5028         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5029         private methods.
5030         Update all users.
5031
5032 2018-05-22  Tom Tromey  <tom@tromey.com>
5033
5034         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5035         parameter.
5036         (finish_block_internal): Update.
5037
5038 2018-07-20  Tom Tromey  <tom@tromey.com>
5039
5040         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5041         parameter.
5042         (finish_block_internal): Update.
5043
5044 2018-07-20  Tom Tromey  <tom@tromey.com>
5045
5046         * buildsym.h (EXTERN): Don't define or undef.
5047         * buildsym.c (EXTERN): Don't define.
5048
5049 2018-07-20  Tom Tromey  <tom@tromey.com>
5050
5051         * buildsym.c: Remove TODO comment.
5052
5053 2018-07-20  Tom Tromey  <tom@tromey.com>
5054
5055         * coffread.c (coff_symtab_read): Update.
5056         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5057         (xcoff_new_init): Update.
5058         * mipsread.c (mipscoff_new_init): Update.
5059         * mdebugread.c (mdebug_build_psymtabs): Update.
5060         * elfread.c (elf_new_init): Update.
5061         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5062         Update.
5063         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5064         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5065         (stabsect_build_psymtabs): Update.
5066         * buildsym.h (buildsym_init): Don't declare.
5067         * buildsym.c: Update comment.
5068         (prepare_for_building): Remove.
5069         (start_symtab, restart_symtab): Update.
5070         (reset_symtab_globals): Update comment.
5071         (buildsym_init): Remove.
5072
5073 2018-07-20  Tom Tromey  <tom@tromey.com>
5074
5075         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5076         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5077         (read_enum_type, common_block_start, common_block_end)
5078         (cleanup_undefined_types_1, finish_global_stabs): Update.
5079         * mdebugread.c (psymtab_to_symtab_1): Update.
5080         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5081         (read_lexical_block_scope, new_symbol): Update.
5082         * dbxread.c (process_one_symbol): Update.
5083         * coffread.c (coff_symtab_read, process_coff_symbol)
5084         (coff_read_enum_type): Update.
5085         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5086         declare.
5087         (get_local_symbols, get_file_symbols, get_global_symbols): New
5088         functions.
5089         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5090         m_global_symbols.
5091         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5092         (~scoped_free_pendings): Update.
5093         (finish_block, prepare_for_building, reset_symtab_globals)
5094         (end_symtab_get_static_block, end_symtab_with_blockvector)
5095         (augment_type_symtab, push_context): Update.
5096         (get_local_symbols, get_file_symbols, get_global_symbols): New
5097         functions.
5098         (buildsym_init): Update.
5099
5100 2018-07-20  Tom Tromey  <tom@tromey.com>
5101
5102         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5103         (process_full_type_unit): Likewise.
5104         (dwarf2_start_symtab): Set list_in_scope.
5105
5106 2018-07-20  Tom Tromey  <tom@tromey.com>
5107
5108         * dwarf2read.c (process_psymtab_comp_unit_reader)
5109         (build_type_psymtabs_reader): Do not set list_in_scope.
5110
5111 2018-07-20  Tom Tromey  <tom@tromey.com>
5112
5113         * buildsym.c (free_pendings): Remove.
5114         (add_symbol_to_list, scoped_free_pendings)
5115         (finish_block_internal, buildsym_init): Update.
5116
5117 2018-07-20  Tom Tromey  <tom@tromey.com>
5118
5119         * xcoffread.c (read_xcoff_symtab): Update.
5120         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5121         Update.
5122         * dbxread.c (process_one_symbol): Update.
5123         * coffread.c (coff_symtab_read): Update.
5124         * buildsym.h (finish_block): Update.
5125         * buildsym.c (finish_block): Remove "listhead" argument.
5126         (end_symtab_get_static_block): Update.
5127
5128 2018-07-20  Tom Tromey  <tom@tromey.com>
5129
5130         * buildsym.h (class scoped_free_pendings): Remove constructor.
5131         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5132         method.
5133         <m_pending_block_obstack, m_pending_blocks>: New members.
5134         (pending_block_obstack, pending_blocks): Remove.
5135         (scoped_free_pendings::scoped_free_pendings): Default.
5136         (~scoped_free_pendings): Update.
5137         (free_pending_blocks): Remove.
5138         (finish_block_internal, record_pending_block, make_blockvector)
5139         (end_symtab_get_static_block, augment_type_symtab, push_context)
5140         (buildsym_init): Update.
5141
5142 2018-07-20  Tom Tromey  <tom@tromey.com>
5143
5144         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5145         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5146         members.
5147         (pending_addrmap, pending_addrmap_obstack)
5148         (pending_addrmap_interesting): Remove.
5149         (scoped_free_pendings, record_block_range, make_blockvector)
5150         (prepare_for_building, reset_symtab_globals, buildsym_init):
5151         Update.
5152
5153 2018-07-20  Tom Tromey  <tom@tromey.com>
5154
5155         * xcoffread.c (process_linenos): Update.
5156         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5157         * mdebugread.c (psymtab_to_symtab_1): Update.
5158         * dwarf2read.c (setup_type_unit_groups)
5159         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5160         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5161         * dbxread.c (process_one_symbol): Update.
5162         * coffread.c (coff_symtab_read, enter_linenos)
5163         (process_coff_symbol): Update.
5164         * buildsym.h (current_subfile): Don't declare.
5165         (get_current_subfile): Declare.
5166         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5167         member.
5168         (start_subfile, free_buildsym_compunit, push_subfile)
5169         (prepare_for_building, start_symtab): Update.
5170         (get_current_subfile): New function.
5171
5172 2018-07-20  Tom Tromey  <tom@tromey.com>
5173
5174         * coffread.c (coff_symtab_read): Update.
5175         * xcoffread.c (read_xcoff_symtab): Update.
5176         * dwarf2read.c (new_symbol): Update.
5177         (read_func_scope, read_lexical_block_scope): Update.
5178         * dbxread.c (process_one_symbol): Update.
5179         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5180         (outermost_context_p): Remove macro.
5181         (outermost_context_p, get_current_context_stack)
5182         (get_context_stack_depth): Declare.
5183         (pop_context): Return struct context_stack.
5184         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5185         member.
5186         (context_stack_size): Remove.
5187         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5188         (prepare_for_building, end_symtab_get_static_block)
5189         (augment_type_symtab, push_context): Update.
5190         (pop_context): Return struct context_stack.
5191         (outermost_context_p, get_current_context_stack)
5192         (get_context_stack_depth): New functions.
5193         (buildsym_init): Update.
5194
5195 2018-07-20  Tom Tromey  <tom@tromey.com>
5196
5197         * rust-exp.y: Now a pure parser.  Update all rules.
5198         (%union): Move earlier.
5199         (current_parser, work_obstack): Remove globals.
5200         (rust_parser, ~rust_parser): Update.
5201         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5202         lex_character, lex_number, lex_string, lex_identifier,
5203         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5204         convert_name, convert_params_to_expression,
5205         convert_ast_to_expression, ast_basic_type, ast_operation,
5206         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5207         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5208         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5209         ast_array_type, ast_slice_type, ast_reference_type,
5210         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5211         (rust_parse): Update.
5212         (rustyyerror, rustyylex): Add parser parameter.
5213         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5214         (rust_lex_stringish_test, rust_lex_test_sequence)
5215         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5216         (rust_lex_test_push_back, rust_lex_tests): Update.
5217
5218 2018-07-19  Pedro Alves  <palves@redhat.com>
5219
5220         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5221         gdb::unique_xmalloc_ptr.
5222         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5223         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5224         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5225         copy-initialization.
5226         * guile/scm-pretty-print.c (ppscm_print_children): Use
5227         gdb::unique_xmalloc_ptr instead of cleanups.
5228         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5229         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5230         gdb::unique_xmalloc_ptr.
5231         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5232         Adjust to use gdb::unique_xmalloc_ptr.
5233         * guile/scm-utils.c (extract_arg): Adjust.
5234         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5235         gdb::unique_xmalloc_ptr instead of a cleanup.
5236
5237 2018-07-19  Tom Tromey  <tom@tromey.com>
5238
5239         * utils.c (do_value_free_to_mark)
5240         (make_cleanup_value_free_to_mark): Remove.
5241         * utils.h (make_cleanup_value_free_to_mark): Remove.
5242
5243 2018-07-19  Pedro Alves  <palves@redhat.com>
5244
5245         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5246         forwarding reference.
5247
5248 2018-07-18  Pedro Alves  <palves@redhat.com>
5249
5250         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5251         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5252         cleanup.
5253
5254 2018-07-18  Pedro Alves  <palves@redhat.com>
5255
5256         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5257         exceptions.
5258         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5259         (gdbscm_wrap): New.
5260         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5261         directly instead of a cleanup.
5262         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5263         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5264         (vlscm_binop_gdbthrow): New, factored out from ...
5265         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5266         (vlscm_rich_compare): Use gdbscm_wrap.
5267         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5268         instead of a cleanup.
5269         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5270         cleanup.
5271         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5272         Use xfree directly instead of a cleanup.
5273         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5274         Adjust to use gdbscm_wrap and scoped_value_mark.
5275         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5276         (gdbscm_value_address, gdbscm_value_dereference)
5277         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5278         scoped_value_mark.
5279         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5280         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5281         scoped_value_mark.
5282         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5283         gdbscm_wrap and scoped_value_mark.
5284         (gdbscm_value_to_string): Use xfree directly instead of a
5285         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5286         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5287         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5288         scoped_value_mark.
5289         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5290         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5291         scoped_value_mark.
5292         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5293         gdbscm_wrap.
5294
5295 2018-07-18  Tom de Vries  <tdevries@suse.de>
5296
5297         * findvar.c (default_read_var_value): Also resolve dynamic type for
5298         LOC_OPTIMIZED_OUT vars.
5299
5300 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5301
5302         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5303         decoding.
5304
5305 2018-07-17  Tom Tromey  <tom@tromey.com>
5306
5307         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5308         (compute_enum_list, pascm_set_param_value_x)
5309         (gdbscm_parameter_value): Update.
5310         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5311         (gdbscm_scm_to_host_string): Update.
5312         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5313         Update.
5314         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5315         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5316         * guile/scm-string.c (gdbscm_scm_to_string): Return
5317         unique_xmalloc_ptr.
5318         (gdbscm_scm_to_host_string): Likewise.
5319
5320 2018-07-17  Tom Tromey  <tom@tromey.com>
5321
5322         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5323         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5324         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5325         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5326         unique_xmalloc_ptr.
5327
5328 2018-07-17  Tom Tromey  <tom@tromey.com>
5329
5330         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5331         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5332         Update.
5333         * guile/scm-cmd.c (cmdscm_function): Update.
5334         * guile/scm-pretty-print.c
5335         (ppscm_print_exception_unless_memory_error): Update.
5336         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5337         Return unique_xmalloc_ptr.
5338
5339 2018-07-17  Tom Tromey  <tom@tromey.com>
5340
5341         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5342         Use string_printf.
5343
5344 2018-07-17  Jim Wilson  <jimw@sifive.com>
5345
5346         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5347         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5348         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5349         unecessary braces after EF_RISCV_RVC test.  Delete call to
5350         set_gdbarch_decr_pc_after_break.
5351
5352         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5353         RISCV_LAST_FP_REGNUM + 1.
5354         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5355
5356 2018-07-17  Tom Tromey  <tom@tromey.com>
5357
5358         * configure.ac: Remove --disable-gdbcli.
5359         * configure: Rebuild.
5360         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5361         (SUBDIR_CLI_CFLAGS): Remove.
5362         (SFILES): Use SUBDIR_CLI_SRCS.
5363         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5364
5365 2018-07-17  Tom Tromey  <tom@tromey.com>
5366
5367         PR gdb/18624:
5368         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5369
5370 2018-07-16  Jim Wilson  <jimw@sifive.com>
5371
5372         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5373
5374 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5375
5376         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5377         variable.
5378         (libunwind_frame_sniffer): Likewise.
5379         (libunwind_frame_prev_register): Likewise.
5380         (libunwind_sigtramp_frame_sniffer): Likewise.
5381         * ia64-tdep.c (ia64_access_reg): Likewise.
5382         (ia64_access_rse_reg): Likewise.
5383         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5384         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5385
5386 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5387
5388         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5389
5390 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5391
5392         * remote-sim.c (gdbsim_target::close,
5393         gdbsim_target::mourn_inferior): Remove unused variables.
5394
5395 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5396
5397         * ia64-tdep.c (ktab_buf): New global.
5398         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5399         (get_kernel_table): Adjust.
5400
5401 2018-07-16  Tom Tromey  <tom@tromey.com>
5402
5403         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5404         * dwarf2read.c (using_directives, new_symbol): Use
5405         outermost_context_p.
5406         * dbxread.c (process_one_symbol): Use outermost_context_p.
5407         * coffread.c (coff_symtab_read): Use outermost_context_p.
5408
5409 2018-07-16  Tom Tromey  <tom@tromey.com>
5410
5411         * dwarf2read.c (using_directives, read_func_scope)
5412         (read_lexical_block_scope): Update.
5413         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5414         * buildsym.h (local_using_directives, global_using_directives):
5415         Don't declare.
5416         (get_local_using_directives, set_local_using_directives)
5417         (get_global_using_directives): Declare.
5418         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5419         m_global_using_directives>: New members.
5420         (finish_block_internal, prepare_for_building)
5421         (reset_symtab_globals, end_symtab_get_static_block)
5422         (push_context): Update.
5423         (get_local_using_directives, set_local_using_directives)
5424         (get_global_using_directives): New functions.
5425         (buildsym_init): Update.
5426
5427 2018-07-16  Tom Tromey  <tom@tromey.com>
5428
5429         * xcoffread.c (xcoff_initial_scan): Don't call
5430         free_pending_blocks.
5431         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5432         * buildsym.h (class scoped_free_pendings): Add constructor.
5433         (free_pending_blocks): Don't declare.
5434         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5435         (free_pending_blocks): Now static.
5436
5437 2018-07-16  Tom Tromey  <tom@tromey.com>
5438
5439         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5440         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5441         member.
5442         (struct subfile_stack): Remove.
5443         (subfile_stack): Remove.
5444         (push_subfile, pop_subfile, buildsym_init): Update.
5445
5446 2018-07-16  Tom Tromey  <tom@tromey.com>
5447
5448         * buildsym.c (push_subfile): Use gdb_assert.
5449         (pop_subfile): Use gdb_assert.
5450
5451 2018-07-16  Tom Tromey  <tom@tromey.com>
5452
5453         * buildsym.h (merge_symbol_lists): Remove.
5454         * buildsym.c (merge_symbol_lists): Remove.
5455
5456 2018-07-16  Tom Tromey  <tom@tromey.com>
5457
5458         * stabsread.c (scan_file_globals): Update comment.
5459         * stabsread.h (scan_file_globals): Move from buildsym.h.
5460         * buildsym.h (scan_file_globals): Move to stabsread.h.
5461
5462 2018-07-16  Tom Tromey  <tom@tromey.com>
5463
5464         * xcoffread.c (xcoff_new_init): Update.
5465         * mipsread.c (mipscoff_new_init): Update.
5466         * mdebugread.c (mdebug_build_psymtabs): Update.
5467         * elfread.c (elf_new_init): Update.
5468         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5469         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5470         * buildsym.h (buildsym_new_init): Don't declare.
5471         * buildsym.c (buildsym_new_init): Remove.
5472
5473 2018-07-16  Tom Tromey  <tom@tromey.com>
5474
5475         * stabsread.h (within_function): Move from buildsym.h.
5476         * stabsread.c (start_stabs): Clear within_function.
5477         * coffread.c (coff_start_symtab): Clear within_function.
5478         * buildsym.h (within_function): Move to stabsread.h.
5479         * buildsym.c (prepare_for_building): Update.
5480
5481 2018-07-16  Tom Tromey  <tom@tromey.com>
5482
5483         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5484         * dwarf2read.c (dwarf2_start_symtab): Don't set
5485         processing_gcc_compilation.
5486         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5487
5488 2018-07-16  Tom Tromey  <tom@tromey.com>
5489
5490         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5491         (next_symbol_text_func): Move from buildsym.h.
5492         * stabsread.c (hashname): Move from buildsym.c.
5493         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5494         (next_symbol_text_func, hashname): Move to stabsread.h.
5495         * buildsym.c: Don't include bcache.h
5496         (hashname): Move to stasbread.c.
5497
5498 2018-07-16  Tom Tromey  <tom@tromey.com>
5499
5500         * buildsym.h (context_stack_size): Don't declare.
5501         * buildsym.c (context_stack_size): New global.
5502
5503 2018-07-16  Tom Tromey  <tom@tromey.com>
5504
5505         * dbxread.c (processing_acc_compilation): New global.
5506         * buildsym.h (processing_acc_compilation): Don't declare.
5507
5508 2018-07-16  Tom Tromey  <tom@tromey.com>
5509
5510         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5511         * dbxread.c (read_ofile_symtab): Update.
5512         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5513         * buildsym.h (last_source_start_addr): Remove.
5514         (set_last_source_start_addr, get_last_source_start_addr):
5515         Declare.
5516         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5517         parameter.
5518         (struct buildsym_compunit) <m_last_source_start_addr>: New
5519         member.
5520         (prepare_for_building): Remove start_addr parameter.
5521         (start_symtab, restart_symtab, end_symtab_get_static_block)
5522         (end_symtab_with_blockvector): Update.
5523         (set_last_source_start_addr, get_last_source_start_addr): New
5524         functions.
5525
5526 2018-07-16  Tom Tromey  <tom@tromey.com>
5527
5528         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5529         member.
5530         (have_line_numbers): Remove.
5531         (record_line, prepare_for_building, end_symtab_get_static_block)
5532         (augment_type_symtab): Update.
5533
5534 2018-07-16  Tom Tromey  <tom@tromey.com>
5535
5536         * buildsym.c (~buildsym_compunit): Free the macro table.
5537         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5538         methods.
5539         <m_pending_macros>: New member.
5540         (pending_macros): Remove.
5541         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5542         (reset_symtab_globals, end_symtab_get_static_block)
5543         (end_symtab_with_blockvector, augment_type_symtab)
5544         (buildsym_init): Update.
5545
5546 2018-07-16  Tom Tromey  <tom@tromey.com>
5547
5548         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5549         parameter.
5550         (buildsym_compunit::set_last_source_file): New method.
5551         <m_last_source_file>: New member.
5552         (prepare_for_building): Remove "name" parameter.
5553         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5554         (last_source_file): Remove.
5555         (set_last_source_file, get_last_source_file): Update.
5556
5557 2018-07-16  Tom Tromey  <tom@tromey.com>
5558
5559         * buildsym.c (prepare_for_building): Add assert.
5560
5561 2018-07-16  Tom Tromey  <tom@tromey.com>
5562
5563         * buildsym.c (~buildsym_compunit): Update.
5564         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5565         (start_subfile, patch_subfile_names)
5566         (end_symtab_with_blockvector): Update.
5567
5568 2018-07-16  Tom Tromey  <tom@tromey.com>
5569
5570         * buildsym.c (struct buildsym_compunit): Add constructor,
5571         destructor, initializers.
5572         (start_buildsym_compunit): Remove.
5573         (free_buildsym_compunit): Use "delete".
5574         (start_symtab, restart_symtab): Use "new".
5575
5576 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5577
5578         * symfile.c (set_objfile_default_section_offset): Remove struct
5579         keyword.
5580
5581 2018-07-14  Stafford Horne  <shorne@gmail.com>
5582
5583         * (Responsible Maintainers): Add myself as or1k maintainer.
5584
5585 2018-07-13  Tom Tromey  <tom@tromey.com>
5586
5587         * symfile.c (set_objfile_default_section_offset): Use extra braces
5588         around initializer.
5589
5590 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5591
5592         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5593         non-branching basr.
5594
5595 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5596
5597         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5598         unittests/cli-utils-selftests.c
5599         * unittests/cli-utils-selftests.c: New file.
5600
5601 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5602
5603         * NEWS: Mention new commands. Mention change to 'thread apply'.
5604
5605 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5606
5607         * thread.c (thr_try_catch_cmd): New function.
5608         (thread_apply_all_command): Handle qcs flags.
5609         (thread_apply_command): Handle qcs flags.
5610         (taas_command): New function.
5611         (tfaas_command): New function.
5612         (_initialize_thread): Update to setup the new commands 'taas
5613         and 'tfaas'. Change doc string for 'thread apply'.
5614
5615 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5616
5617         * stack.c: (trailing_outermost_frame): New function, mostly
5618         extracted from backtrace_command_1.
5619         (leading_innermost_frame): New function.
5620         (backtrace_command_1): Update to call trailing_outermost_frame.
5621         (frame_apply_command_count): New function.
5622         (frame_apply_level_command): New function.
5623         (frame_apply_all_command): New function.
5624         (frame_apply_command): New function.
5625         (faas_command): New function.
5626         (frame_cmd_list): New variable.
5627         (_initialize_stack): Update to setup the new commands 'frame apply'
5628         and 'faas'.
5629
5630 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5631
5632         * cli-utils.c (number_or_range_parser::get_number): Only handle
5633         numbers or convenience var as numbers.
5634         (parse_flags): New function.
5635         (parse_flags_qcs): New function.
5636         (number_or_range_parser::finished): Ensure parsing end is detected
5637         before end of string.
5638         * cli-utils.h (parse_flags): New function.
5639         (parse_flags_qcs): New function.
5640         (number_or_range_parser): Remove m_finished bool.
5641         (number_or_range_parser::skip_range): Set m_in_range to false.
5642
5643 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5644
5645         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5646         on Windows.
5647
5648 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5649             Jan Kratochvil  <jan.kratochvil@redhat.com>
5650             Paul Fertser  <fercerpav@gmail.com>
5651             Tsutomu Seki  <sekiriki@gmail.com>
5652             Pedro Alves  <palves@redhat.com>
5653
5654         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5655         'unittests/parse-connection-spec-selftests.c'.
5656         (COMMON_SFILES): Add 'common/netstuff.c'.
5657         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5658         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5659         * common/netstuff.c: New file.
5660         * common/netstuff.h: New file.
5661         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5662         (wait_for_connect): Update comment.  New parameter
5663         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5664         Use 'sock' directly instead of 'scb->fd'.
5665         (try_connect): New function, with code from 'net_open'.
5666         (net_open): Rewrite main loop to deal with multiple
5667         sockets/addresses.  Handle IPv6-style hostnames; implement
5668         support for IPv6 connections.
5669         * unittests/parse-connection-spec-selftests.c: New file.
5670
5671 2018-07-11  Pedro Alves  <palves@redhat.com>
5672
5673         PR gdb/23377
5674         * remote.c (remote_target::remote_detach_pid): Call
5675         set_current_process.
5676
5677 2018-07-11  Pedro Alves  <palves@redhat.com>
5678
5679         * h8300-tdep.c (h8300_gdbarch_init): Remove
5680         set_gdbarch_ecoff_reg_to_regnum calls.
5681
5682 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5683
5684         PR c++/23373
5685         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5686         offsets/sizes for static members of a class/struct.
5687
5688 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5689
5690         * target-descriptions.c (tdesc_register_bitsize): Rename.
5691         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5692         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5693         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5694
5695 2018-07-10  Tom Tromey  <tom@tromey.com>
5696
5697         * breakpoint.c (moribund_locations): Now static and a
5698         std::vector.
5699         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5700         (build_bpstat_chain, update_global_location_list)
5701         (breakpoint_retire_moribund): Update.
5702         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5703         VEC.
5704
5705 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5706
5707         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5708         (riscv_register_reggroup_p): Use new function, remove unneeded
5709         parenthesis.
5710         (riscv_push_dummy_call): Extend assert to compare against xlen or
5711         flen based on register type.
5712
5713 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5714
5715         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5716
5717 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5718
5719         * remote.c (show_hardware_watchpoint_limit): New function.
5720         (show_hardware_watchpoint_length_limit): New function.
5721         (show_hardware_breakpoint_limit): New function.
5722         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5723         where appropriate, update help text.
5724
5725 2018-07-09  Tom Tromey  <tom@tromey.com>
5726
5727         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5728         (CLIBS): Don't mention NAT_CLIBS.
5729
5730 2018-07-09  Tom Tromey  <tom@tromey.com>
5731
5732         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5733         (LIBGDB_OBS, clean mostlyclean): Update.
5734         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5735
5736 2018-07-09  Tom Tromey  <tom@tromey.com>
5737
5738         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5739         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5740         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5741
5742 2018-07-09  Tom Tromey  <tom@tromey.com>
5743
5744         * Makefile.in (ALLDEPFILES): Remove exec.c.
5745         (COMMON_OBS): Remove exec.o.
5746         (COMMON_SFILES): Add exec.c.
5747
5748 2018-07-09  Tom Tromey  <tom@tromey.com>
5749
5750         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5751
5752 2018-07-09  Tom Tromey  <tom@tromey.com>
5753
5754         * Makefile.in (clean mostlyclean): Remove stamp-version.
5755         (version.c): Depend on stamp-version.
5756         (stamp-version): New rule, from version.c rule.
5757
5758 2018-07-09  Tom Tromey  <tom@tromey.com>
5759
5760         * Makefile.in (init.c): Depend on stamp-init.
5761         (stamp-init): New rule, from init.c rule.
5762         (clean mostlyclean): Remove stamp-init.
5763
5764 2018-07-09  Tom Tromey  <tom@tromey.com>
5765
5766         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5767         SUBDIR_GCC_COMPILE_SRCS.
5768
5769 2018-07-09  Tom Tromey  <tom@tromey.com>
5770
5771         * Makefile.in (init.c): Remove some unused sed rules.
5772
5773 2018-07-09  Tom Tromey  <tom@tromey.com>
5774
5775         * Makefile.in (TSOBS): Remove.
5776         (INIT_FILES): Update.
5777         (LIBGDB_OBS): Update.
5778         (COMMON_SFILES): Add inflow.c.
5779         (SFILES): Remove inflow.c.
5780
5781 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5782
5783         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5784
5785 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5786
5787         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5788         get_saveloc_name, is_signal_frame_name, step_name,
5789         init_remote_name, create_addr_space_name,
5790         destroy_addr_space_name, search_unwind_table_name,
5791         find_dyn_list_name): Constify.
5792
5793 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5794
5795         * darwin-nat.c (darwin_pthread_kill): New function.
5796         (darwin_resume_thread): Use darwin_pthread_kill.
5797
5798 2018-07-05  Tom de Vries  <tdevries@suse.de>
5799
5800         * macroexp.c (macro_buffer) <operator=>: New member function.
5801
5802 2018-07-04  Tom Tromey  <tom@tromey.com>
5803
5804         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5805
5806 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5807
5808         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5809         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5810         * maint.c: Likewise.
5811         * top.c: Likewise.
5812
5813 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5814
5815         * NEWS: Create a new section for the next release branch.
5816         Rename the section of the current branch, now that it has
5817         been cut.
5818
5819 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5820
5821         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5822         * version.in: Bump version to 8.2.50.DATE-git.
5823
5824 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5825             Pedro Alves  <palves@redhat.com>
5826
5827         * linux-nat.c (linux_init_ptrace): Rename to ...
5828         (linux_init_ptrace_procfs): ... this.  Call
5829         linux_proc_init_warnings.
5830         (linux_nat_target::post_attach)
5831         (linux_nat_target::post_startup_inferior): Adjust.
5832         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5833         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5834
5835 2018-07-04  Tom de Vries  <tdevries@suse.de>
5836
5837         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5838         check ...
5839         (read_comp_unit_head): ... here.
5840
5841 2018-07-03  Tom Tromey  <tom@tromey.com>
5842
5843         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5844         (stop_tracing, tstatus_command)
5845         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5846         (print_one_static_tracepoint_marker): Update.
5847         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5848         std::vector.
5849         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5850         VEC.
5851         (all_tracepoints, static_tracepoints_here): Return std::vector.
5852
5853 2018-07-03  Tom Tromey  <tom@tromey.com>
5854
5855         * common/ptid.c (ptid_equal): Remove.
5856         * common/ptid.h (ptid_equal): Don't declare.
5857         * ada-tasks.c: Update.
5858         * breakpoint.c: Update.
5859         * common/agent.c: Update.
5860         * corelow.c: Update.
5861         * darwin-nat-info.c: Update.
5862         * darwin-nat.c: Update.
5863         * dcache.c: Update.
5864         * dtrace-probe.c: Update.
5865         * dummy-frame.c: Update.
5866         * fbsd-nat.c: Update.
5867         * frame.c: Update.
5868         * gdbthread.h: Update.
5869         * gnu-nat.c: Update.
5870         * go32-nat.c: Update.
5871         * inf-loop.c: Update.
5872         * inf-ptrace.c: Update.
5873         * infcall.c: Update.
5874         * infcmd.c: Update.
5875         * inflow.c: Update.
5876         * infrun.c: Update.
5877         * linux-fork.c: Update.
5878         * linux-nat.c: Update.
5879         * linux-thread-db.c: Update.
5880         * mi/mi-cmd-var.c: Update.
5881         * mi/mi-interp.c: Update.
5882         * mi/mi-main.c: Update.
5883         * nto-procfs.c: Update.
5884         * ppc-linux-tdep.c: Update.
5885         * procfs.c: Update.
5886         * python/py-inferior.c: Update.
5887         * python/py-record-btrace.c: Update.
5888         * python/py-record.c: Update.
5889         * ravenscar-thread.c: Update.
5890         * regcache.c: Update.
5891         * remote-sim.c: Update.
5892         * remote.c: Update.
5893         * sol-thread.c: Update.
5894         * solib.c: Update.
5895         * target.c: Update.
5896         * tui/tui-stack.c: Update.
5897         * varobj.c: Update.
5898         * windows-nat.c: Update.
5899         * windows-tdep.c: Update.
5900
5901 2018-07-03  Tom Tromey  <tom@tromey.com>
5902
5903         * common/ptid.c (ptid_match): Remove.
5904         * common/ptid.h (ptid_match): Don't declare.
5905         * fbsd-nat.c: Update.
5906         * infcmd.c: Update.
5907         * infrun.c: Update.
5908         * linux-nat.c: Update.
5909         * record-btrace.c: Update.
5910         * regcache.c: Update.
5911         * remote.c: Update.
5912
5913 2018-07-03  Tom Tromey  <tom@tromey.com>
5914
5915         * common/ptid.c (ptid_tid_p): Remove.
5916         * common/ptid.h (ptid_tid_p): Don't declare.
5917         * sol-thread.c: Update.
5918
5919 2018-07-03  Tom Tromey  <tom@tromey.com>
5920
5921         * common/ptid.c (ptid_lwp_p): Remove.
5922         * common/ptid.h (ptid_lwp_p): Don't declare.
5923         * fbsd-nat.c: Update.
5924         * linux-nat.c: Update.
5925         * nat/linux-procfs.c: Update.
5926         * nat/x86-linux-dregs.c: Update.
5927         * sol-thread.c: Update.
5928
5929 2018-07-03  Tom Tromey  <tom@tromey.com>
5930
5931         * common/ptid.c (ptid_is_pid): Remove.
5932         * common/ptid.h (ptid_is_pid): Don't declare.
5933         * infrun.c: Update.
5934         * linux-nat.c: Update.
5935         * mi/mi-interp.c: Update.
5936         * remote.c: Update.
5937         * thread.c: Update.
5938
5939 2018-07-03  Tom Tromey  <tom@tromey.com>
5940
5941         * common/ptid.c (ptid_get_tid): Remove.
5942         * common/ptid.h (ptid_get_tid): Don't declare.
5943         * ada-tasks.c: Update.
5944         * aix-thread.c: Update.
5945         * bsd-uthread.c: Update.
5946         * darwin-nat.c: Update.
5947         * fbsd-nat.c: Update.
5948         * i386-darwin-nat.c: Update.
5949         * infrun.c: Update.
5950         * linux-tdep.c: Update.
5951         * nto-procfs.c: Update.
5952         * ppc-ravenscar-thread.c: Update.
5953         * python/py-infthread.c: Update.
5954         * ravenscar-thread.c: Update.
5955         * sol-thread.c: Update.
5956         * sparc-ravenscar-thread.c: Update.
5957         * windows-nat.c: Update.
5958
5959 2018-07-03  Tom Tromey  <tom@tromey.com>
5960
5961         * common/ptid.c (ptid_get_lwp): Remove.
5962         * common/ptid.h (ptid_get_lwp): Don't declare.
5963         * aarch64-linux-nat.c: Update.
5964         * ada-tasks.c: Update.
5965         * aix-thread.c: Update.
5966         * amd64-linux-nat.c: Update.
5967         * arm-linux-nat.c: Update.
5968         * corelow.c: Update.
5969         * fbsd-nat.c: Update.
5970         * fbsd-tdep.c: Update.
5971         * gnu-nat.c: Update.
5972         * i386-cygwin-tdep.c: Update.
5973         * i386-gnu-nat.c: Update.
5974         * i386-linux-nat.c: Update.
5975         * ia64-linux-nat.c: Update.
5976         * inf-ptrace.c: Update.
5977         * infrun.c: Update.
5978         * linux-fork.c: Update.
5979         * linux-nat.c: Update.
5980         * linux-tdep.c: Update.
5981         * linux-thread-db.c: Update.
5982         * mips-linux-nat.c: Update.
5983         * nat/aarch64-linux-hw-point.c: Update.
5984         * nat/aarch64-linux.c: Update.
5985         * nat/linux-btrace.c: Update.
5986         * nat/linux-osdata.c: Update.
5987         * nat/linux-procfs.c: Update.
5988         * nat/x86-linux-dregs.c: Update.
5989         * obsd-nat.c: Update.
5990         * ppc-fbsd-nat.c: Update.
5991         * ppc-linux-nat.c: Update.
5992         * procfs.c: Update.
5993         * python/py-infthread.c: Update.
5994         * ravenscar-thread.c: Update.
5995         * remote.c: Update.
5996         * s390-linux-nat.c: Update.
5997         * sol-thread.c: Update.
5998         * sol2-tdep.c: Update.
5999         * spu-linux-nat.c: Update.
6000         * x86-linux-nat.c: Update.
6001         * xtensa-linux-nat.c: Update.
6002
6003 2018-07-03  Tom Tromey  <tom@tromey.com>
6004
6005         * common/ptid.c (ptid_get_pid): Remove.
6006         * common/ptid.h (ptid_get_pid): Don't declare.
6007         * aarch64-linux-nat.c: Update.
6008         * ada-lang.c: Update.
6009         * aix-thread.c: Update.
6010         * alpha-bsd-nat.c: Update.
6011         * amd64-fbsd-nat.c: Update.
6012         * amd64-linux-nat.c: Update.
6013         * arm-linux-nat.c: Update.
6014         * arm-nbsd-nat.c: Update.
6015         * auxv.c: Update.
6016         * break-catch-syscall.c: Update.
6017         * breakpoint.c: Update.
6018         * bsd-uthread.c: Update.
6019         * corelow.c: Update.
6020         * ctf.c: Update.
6021         * darwin-nat.c: Update.
6022         * fbsd-nat.c: Update.
6023         * fbsd-tdep.c: Update.
6024         * gcore.c: Update.
6025         * gnu-nat.c: Update.
6026         * hppa-nbsd-nat.c: Update.
6027         * hppa-obsd-nat.c: Update.
6028         * i386-fbsd-nat.c: Update.
6029         * ia64-linux-nat.c: Update.
6030         * inf-ptrace.c: Update.
6031         * infcmd.c: Update.
6032         * inferior.c: Update.
6033         * inferior.h: Update.
6034         * inflow.c: Update.
6035         * infrun.c: Update.
6036         * linux-fork.c: Update.
6037         * linux-nat.c: Update.
6038         * linux-tdep.c: Update.
6039         * linux-thread-db.c: Update.
6040         * m68k-bsd-nat.c: Update.
6041         * mi/mi-interp.c: Update.
6042         * mi/mi-main.c: Update.
6043         * mips-linux-nat.c: Update.
6044         * mips-nbsd-nat.c: Update.
6045         * mips64-obsd-nat.c: Update.
6046         * nat/aarch64-linux-hw-point.c: Update.
6047         * nat/aarch64-linux.c: Update.
6048         * nat/linux-btrace.c: Update.
6049         * nat/linux-osdata.c: Update.
6050         * nat/linux-procfs.c: Update.
6051         * nat/x86-linux-dregs.c: Update.
6052         * nto-procfs.c: Update.
6053         * obsd-nat.c: Update.
6054         * ppc-linux-nat.c: Update.
6055         * ppc-nbsd-nat.c: Update.
6056         * ppc-obsd-nat.c: Update.
6057         * proc-service.c: Update.
6058         * procfs.c: Update.
6059         * python/py-inferior.c: Update.
6060         * python/py-infthread.c: Update.
6061         * ravenscar-thread.c: Update.
6062         * record.c: Update.
6063         * remote-sim.c: Update.
6064         * remote.c: Update.
6065         * rs6000-nat.c: Update.
6066         * s390-linux-nat.c: Update.
6067         * sh-nbsd-nat.c: Update.
6068         * sol-thread.c: Update.
6069         * sparc-nat.c: Update.
6070         * sparc64-tdep.c: Update.
6071         * spu-linux-nat.c: Update.
6072         * spu-tdep.c: Update.
6073         * target-debug.h: Update.
6074         * target.c: Update.
6075         * thread.c: Update.
6076         * tid-parse.c: Update.
6077         * tracefile-tfile.c: Update.
6078         * vax-bsd-nat.c: Update.
6079         * windows-nat.c: Update.
6080         * x86-linux-nat.c: Update.
6081         * x86-nat.c: Update.
6082
6083 2018-07-03  Tom Tromey  <tom@tromey.com>
6084
6085         * common/ptid.c (pid_to_ptid): Remove.
6086         * common/ptid.h (pid_to_ptid): Don't declare.
6087         * aix-thread.c: Update.
6088         * arm-linux-nat.c: Update.
6089         * common/ptid.c: Update.
6090         * common/ptid.h: Update.
6091         * corelow.c: Update.
6092         * ctf.c: Update.
6093         * darwin-nat.c: Update.
6094         * fbsd-nat.c: Update.
6095         * fork-child.c: Update.
6096         * gnu-nat.c: Update.
6097         * go32-nat.c: Update.
6098         * inf-ptrace.c: Update.
6099         * infcmd.c: Update.
6100         * inferior.c: Update.
6101         * infrun.c: Update.
6102         * linux-fork.c: Update.
6103         * linux-nat.c: Update.
6104         * nat/aarch64-linux-hw-point.c: Update.
6105         * nat/fork-inferior.c: Update.
6106         * nat/x86-linux-dregs.c: Update.
6107         * nto-procfs.c: Update.
6108         * obsd-nat.c: Update.
6109         * procfs.c: Update.
6110         * progspace.c: Update.
6111         * remote.c: Update.
6112         * rs6000-nat.c: Update.
6113         * s390-linux-nat.c: Update.
6114         * sol-thread.c: Update.
6115         * spu-linux-nat.c: Update.
6116         * target.c: Update.
6117         * top.c: Update.
6118         * tracefile-tfile.c: Update.
6119         * windows-nat.c: Update.
6120
6121 2018-07-03  Tom Tromey  <tom@tromey.com>
6122
6123         * common/ptid.h (ptid_build): Don't declare.
6124         * common/ptid.c (ptid_build): Remove.
6125         * aix-thread.c: Update.
6126         * bsd-kvm.c: Update.
6127         * bsd-uthread.c: Update.
6128         * common/agent.c: Update.
6129         * common/ptid.c: Update.
6130         * common/ptid.h: Update.
6131         * corelow.c: Update.
6132         * darwin-nat.c: Update.
6133         * fbsd-nat.c: Update.
6134         * gnu-nat.c: Update.
6135         * linux-fork.c: Update.
6136         * linux-nat.c: Update.
6137         * linux-thread-db.c: Update.
6138         * nat/linux-osdata.c: Update.
6139         * nat/linux-procfs.c: Update.
6140         * nto-procfs.c: Update.
6141         * obsd-nat.c: Update.
6142         * proc-service.c: Update.
6143         * procfs.c: Update.
6144         * ravenscar-thread.c: Update.
6145         * remote-sim.c: Update.
6146         * remote.c: Update.
6147         * sol-thread.c: Update.
6148         * target.c: Update.
6149         * windows-nat.c: Update.
6150
6151 2018-07-03  Tom Tromey  <tom@tromey.com>
6152
6153         * infrun.c (follow_exec): Use exit_inferior_silent.
6154         * inferior.c (exit_inferior_num_silent): Remove.
6155         * inferior.h (exit_inferior_num_silent): Don't declare.
6156
6157 2018-07-03  Tom Tromey  <tom@tromey.com>
6158
6159         PR cli/23340:
6160         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6161         inferior_ptid on error.
6162
6163 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6164             Simon Marchi  <simon.marchi@polymtl.ca>
6165
6166         PR tdep/8282
6167         * disasm.h (gdb_disassembler): Add
6168         `m_disassembler_options_holder'. member
6169         * disasm.c (get_all_disassembler_options): New function.
6170         (gdb_disassembler::gdb_disassembler): Use it.
6171         (gdb_buffered_insn_length_init_dis): Likewise.
6172         (gdb_buffered_insn_length): Adjust accordingly.
6173         (set_disassembler_options): Handle options with arguments.
6174         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6175         line if showing options with descriptions.
6176         (disassembler_options_completer): Adapt to using the
6177         `disasm_options_and_args_t' structure.
6178         * mips-tdep.c (mips_disassembler_options): New variable.
6179         (mips_disassembler_options_o32): Likewise.
6180         (mips_disassembler_options_n32): Likewise.
6181         (mips_disassembler_options_n64): Likewise.
6182         (gdb_print_insn_mips): Don't set `disassembler_options'.
6183         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6184         functions.
6185         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6186         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6187         `gdbarch_disassembler_options_implicit' and
6188         `gdbarch_valid_disassembler_options'.
6189         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6190         `disasm_options_and_args_t' structure.
6191         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6192         method.
6193         (valid_disassembler_options): Switch from `disasm_options_t' to
6194         the `disasm_options_and_args_t' structure.
6195         * NEWS: Document `set disassembler-options' support for the MIPS
6196         target.
6197         * gdbarch.h: Regenerate.
6198         * gdbarch.c: Regenerate.
6199
6200 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6201
6202         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6203
6204 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6205
6206         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6207         parameter in call to amd64_target_description.
6208         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6209         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6210         (amd64fbsd_init_abi): Likewise.
6211         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6212         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6213         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6214         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6215
6216 2018-06-29  Pedro Alves  <palves@redhat.com>
6217
6218         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6219         "segments" parameter.
6220         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6221         (_initialize_amd64_tdep): Update call to
6222         amd64_create_target_description.
6223         (amd64_target_description): Add "segments" parameter.  Adjust
6224         the implementation to use it.
6225         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6226         call to amd64_create_target_description.
6227         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6228         * gdb/arch/amd64.h (amd64_create_target_description): Add
6229         "segments" register.
6230         * gdb/arch/amd64.c (amd64_create_target_description): Add
6231         "segments" parameter.  Call create_feature_i386_64bit_segments
6232         only if SEGMENTS is true.
6233         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6234         call to amd64_create_target_description.
6235
6236 2018-06-29  Pedro Alves  <palves@redhat.com>
6237
6238         * thread.c (thread_target_id_str): New, factored out from ...
6239         (print_thread_info_1): ... here.  Use it to compute the max
6240         "Target Id" column width.
6241
6242 2018-06-29  Pedro Alves  <palves@redhat.com>
6243
6244         * remote.c (remote_target::extra_thread_info): Delete
6245         'display_buf' and 'n' locals.  from the cache, regardless of
6246         packet mechanims is in use.  Use cache for qThreadExtra and qP
6247         methods too.
6248
6249 2018-06-29  Pedro Alves  <palves@redhat.com>
6250
6251         * blockframe.c (find_pc_sect_containing_function): New function.
6252         * breakpoint.c (print_breakpoint_location): Don't call
6253         find_pc_sect_function.
6254         * linespec.c (create_sals_line_offset): Record the location's
6255         symbol in the sal.
6256         * linespec.c (convert_address_location_to_sals): Fill in sal's
6257         symbol with find_pc_sect_containing_function.
6258         * symtab.c (find_function_start_sal): Rename to ...
6259         (find_function_start_sal_1): ... this.
6260         (find_function_start_sal): Reimplement as wrapper around
6261         find_function_start_sal_1, and use
6262         find_pc_sect_containing_function to fill in the sal's symbol.
6263         (find_function_start_sal(symbol*, bool)): Adjust.
6264         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6265         comments.
6266         (find_pc_sect_containing_function): Declare.
6267
6268 2018-06-29  Pedro Alves  <palves@redhat.com>
6269
6270         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6271         true if the the location has no symbol.
6272
6273 2018-06-28  Tom Tromey  <tom@tromey.com>
6274
6275         * NEWS: Mention --enable-codesign.
6276         * silent-rules.mk (ECHO_SIGN): New variable.
6277         * configure.ac: Add --enable-codesign.
6278         * configure: Rebuild.
6279         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6280         (gdb$(EXEEXT)): Optionally invoke codesign.
6281
6282 2018-06-28  Pedro Alves  <palves@redhat.com>
6283
6284         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6285         comments.
6286         (switch_to_thread_no_regs): Adjust comment.
6287         * infcmd.c (stop_pc): Delete.
6288         (post_create_inferior, info_program_command): Replace references
6289         to stop_pc with references to thread_info->suspend.stop_pc.
6290         * inferior.h (stop_pc): Delete declaration.
6291         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6292         (handle_inferior_event_1, handle_signal_stop)
6293         (process_event_stop_test, keep_going_stepped_thread)
6294         (handle_step_into_function, handle_step_into_function_backward)
6295         (print_stop_location): Replace references to stop_pc with
6296         references to thread_info->suspend.stop_pc.
6297         (struct infcall_suspend_state) <stop_pc>: Delete field.
6298         (save_infcall_suspend_state, restore_infcall_suspend_state):
6299         Remove references to inf_stat->stop_pc.
6300         * linux-fork.c (fork_load_infrun_state): Likewise.
6301         * record-btrace.c (record_btrace_set_replay): Likewise.
6302         * record-full.c (record_full_goto_entry): Likewise.
6303         * remote.c (print_one_stopped_thread): Likewise.
6304         * target.c (target_resume): Extend comment.
6305         * thread.c (set_executing_thread): New.
6306         (set_executing): Use it.
6307         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6308         Remove references to stop_pc.
6309
6310 2018-06-28  Pedro Alves  <palves@redhat.com>
6311
6312         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6313         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6314
6315 2018-06-28  Tom Tromey  <tom@tromey.com>
6316
6317         * coffread.c (coff_symfile_finish): Update.
6318         * xcoffread.c (xcoff_symfile_finish): Update.
6319         * elfread.c (elf_symfile_finish): Update.
6320         * symfile.h (dwarf2_free_objfile): Don't declare.
6321         * dwarf2read.c (_initialize_dwarf2_read): Use
6322         register_objfile_data_with_cleanup.
6323         (dwarf2_free_objfile): Now static.  Change signature.
6324
6325 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6326
6327         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6328         option "-o" to add-symbol-file-load to add an offset to each
6329         section's load address.
6330         * symfile.c (set_objfile_default_section_offset): New function.
6331
6332 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6333
6334         * symfile.c (add_symbol_file_command): Make sure that sections
6335         with the same name are sorted in the same order.
6336
6337 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6338
6339         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6340         require the second argument.  If omitted, load sections at the
6341         addresses specified in the file.
6342
6343 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6344
6345         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6346         (_initialize_symfile): Add option "-o" to symbol-file to add an
6347         offset to each section of the symbol file.
6348
6349 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6350
6351         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6352
6353 2018-06-27  Tom Tromey  <tom@tromey.com>
6354
6355         * stack.c (_initialize_stack): Update "func" help text.
6356
6357 2018-06-27  Tom Tromey  <tom@tromey.com>
6358
6359         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6360         std::vector.
6361         (unwind_infopy_str, pyuw_create_unwind_info)
6362         (unwind_infopy_add_saved_register, pyuw_sniffer)
6363         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6364         Update.
6365         (struct saved_reg): Add constructor.
6366         <value>: Now a gdbpy_ref<>.
6367
6368 2018-06-27  Tom Tromey  <tom@tromey.com>
6369
6370         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6371
6372 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6373
6374         * gdb-gdb.py.in: Format using autopep8.
6375
6376 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6377
6378         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6379         (type_lookup_function): Recognize CORE_ADDR values.
6380
6381 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6382
6383         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6384         print tag_name.
6385
6386 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6387
6388         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6389         <__lt__>: Add.
6390
6391 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6392
6393         * gdb-gdb.py: Move to...
6394         * gdb-gdb.py.in: ... here.
6395         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6396         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6397         dependencies.
6398         (distclean): Remove gdb-gdb.py when cleaning.
6399         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6400         * configure: Re-generate.
6401
6402 2018-06-27  Pedro Alves  <palves@redhat.com>
6403
6404         * proc-service.c (get_ps_regcache): New.
6405         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6406         (ps_lsetfpregs): Use it.
6407
6408 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6409
6410         PR gdb/21695
6411         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6412         (dwarf_decode_lines_1): Adjust.
6413
6414 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6415
6416         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6417         override.
6418         <info_proc>: Likewise.
6419
6420 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6421
6422         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6423         to windows_fetch_one_register, and only handle the case of
6424         fetching one register.  Move the code that reloads the context
6425         and iterates over all registers if R is negative to...
6426         (windows_nat_target::fetch_registers): ... here.
6427         (do_windows_store_inferior_registers): Rename to
6428         windows_store_one_register, and only handle the case of storing
6429         one register.  Move the code that handles the case where r is
6430         negative to...
6431         (windows_nat_target::store_registers) ... here.
6432
6433 2018-06-26  Tom Tromey  <tom@tromey.com>
6434
6435         PR rust/22574:
6436         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6437         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6438         Update.
6439         (rust_internal_print_type): Add podata parameter.
6440         (rust_print_type): Update.
6441
6442 2018-06-26  Tom Tromey  <tom@tromey.com>
6443
6444         * typeprint.h (struct print_offset_data) <update, finish,
6445         maybe_print_hole>: New methods.
6446         <indentation>: New constant.
6447         * typeprint.c (print_offset_data::indentation): Define.
6448         (print_offset_data::maybe_print_hole, print_offset_data::update)
6449         (print_offset_data::finish): Move from c-typeprint.c and rename.
6450         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6451         (print_spaces_filtered_with_print_options): Update.
6452         (c_print_type_union_field_offset, maybe_print_hole)
6453         (c_print_type_struct_field_offset): Move to typeprint.c and
6454         rename.
6455         (c_type_print_base_struct_union): Update.
6456
6457 2018-06-25  Pedro Alves  <palves@redhat.com>
6458
6459         * gdbthread.h (thread_info_ref, delete_thread)
6460         (delete_thread_silent, first_thread_of_inferior)
6461         (any_thread_of_inferior, switch_to_thread)
6462         (enable_thread_stack_temporaries)
6463         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6464         (get_last_thread_stack_temporary)
6465         (value_in_thread_stack_temporaries, can_access_registers_thread):
6466         Spell out "struct thread_info" instead of just "thread_info".
6467         * inferior.h (notice_new_inferior): Likewise.
6468
6469 2018-06-25  Pedro Alves  <palves@redhat.com>
6470
6471         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6472         pass thread_info pointer to delete_thread.
6473         (windows_nat_target::detach): Pass inferior pointer to
6474         detach_inferior.
6475         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6476         delete_thread.
6477         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6478         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6479         and pass a thread_info pointer to delete_thread.
6480         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6481         pass thread_info pointer to delete_thread.
6482         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6483         delete_thread_silent call.
6484         * procfs.c (procfs_target::detach): Pass inferior pointer to
6485         detach_inferior.
6486         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6487         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6488         delete_thread_silent call.
6489         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6490         pass thread_info pointer to delete_thread.
6491         (windows_nat_target::detach): Pass inferior pointer to
6492         delete_inferior.
6493
6494 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6495
6496         * regcache.c (readable_regcache::read_part): Fix asserts.
6497         (reg_buffer::raw_collect_part): New function.
6498         (regcache::write_part): Fix asserts.
6499         (reg_buffer::raw_supply_part): New function.
6500         (regcache::transfer_regset_register): New helper function.
6501         (regcache::transfer_regset): Call new functions.
6502         (regcache_supply_regset): Use gdb_byte*.
6503         (regcache::supply_regset): Likewise.
6504         (regcache_collect_regset): Likewise.
6505         (regcache::collect_regset): Likewise.
6506         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6507         (reg_buffer::raw_supply_part): Likewise.
6508         (regcache::transfer_regset_register): Likewise.
6509         (regcache::transfer_regset): Use gdb_byte*.
6510
6511 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6512
6513         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6514
6515 2018-06-21  Pedro Alves  <palves@redhat.com>
6516
6517         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6518         instead of a ptid_t.  All callers adjusted.
6519         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6520         adjusted.
6521         (print_ada_task_info, display_current_task_id, task_command_1):
6522         Adjust.
6523         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6524         inferior_thread.
6525         (breakpoint_kind): Adjust.
6526         (remove_breakpoints_pid): Rename to ...
6527         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6528         pointer.  All callers adjusted.
6529         (bpstat_clear_actions): Use inferior_thread.
6530         (get_bpstat_thread): New.
6531         (bpstat_do_actions): Use it.
6532         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6533         to take a thread_info pointer.  All callers adjusted.
6534         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6535         (breakpoint_re_set_thread): Use inferior_thread.
6536         * breakpoint.h (struct inferior): Forward declare.
6537         (bpstat_stop_status): Update.
6538         (remove_breakpoints_pid): Delete.
6539         (remove_breakpoints_inf): New.
6540         * bsd-uthread.c (bsd_uthread_target::wait)
6541         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6542         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6543         (maint_btrace_packet_history_cmd)
6544         (maint_btrace_clear_packet_history_cmd): Adjust.
6545         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6546         inferior_thread.
6547         * cli/cli-interp.c: Include "inferior.h".
6548         * common/refcounted-object.h (struct
6549         refcounted_object_ref_policy): New.
6550         * compile/compile-object-load.c: Include gdbthread.h.
6551         (store_regs): Use inferior_thread.
6552         * corelow.c (core_target::close): Use current_inferior.
6553         (core_target_open): Adjust to use first_thread_of_inferior and use
6554         the current inferior.
6555         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6556         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6557         <thread>: ... this new field.  All references adjusted.
6558         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6559         Take a thread_info pointer instead of a ptid_t.
6560         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6561         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6562         thread_info pointer instead of a ptid_t.
6563         * elfread.c: Include "inferior.h".
6564         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6565         Use inferior_thread.
6566         * eval.c (evaluate_subexp): Likewise.
6567         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6568         inferior_thread.
6569         * gdb_proc_service.h (struct thread_info): Forward declare.
6570         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6571         <thread>: ... this new field.  All references adjusted.
6572         * gdbarch.h, gdbarch.c: Regenerate.
6573         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6574         'thread' parameter.  All implementations and callers adjusted.
6575         * gdbthread.h (thread_info) <set_running>: New method.
6576         (delete_thread, delete_thread_silent): Take a thread_info pointer
6577         instead of a ptid.
6578         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6579         (first_thread_of_process): Delete, replaced by ...
6580         (first_thread_of_inferior): ... this new function.  All callers
6581         adjusted.
6582         (any_live_thread_of_process): Delete, replaced by ...
6583         (any_live_thread_of_inferior): ... this new function.  All callers
6584         adjusted.
6585         (switch_to_thread, switch_to_no_thread): Declare.
6586         (is_executing): Delete.
6587         (enable_thread_stack_temporaries): Update comment.
6588         <enable_thread_stack_temporaries>: Take a thread_info pointer
6589         instead of a ptid_t.  Incref the thread.
6590         <~enable_thread_stack_temporaries>: Decref the thread.
6591         <m_ptid>: Delete
6592         <m_thr>: New.
6593         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6594         (get_last_thread_stack_temporary)
6595         (value_in_thread_stack_temporaries, can_access_registers_thread):
6596         Take a thread_info pointer instead of a ptid_t.  All callers
6597         adjusted.
6598         * infcall.c (get_call_return_value): Use inferior_thread.
6599         (run_inferior_call): Work with thread pointers instead of ptid_t.
6600         (call_function_by_hand_dummy): Work with thread pointers instead
6601         of ptid_t.  Use thread_info_ref.
6602         * infcmd.c (proceed_thread_callback): Access thread's state
6603         directly.
6604         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6605         access thread's state directly.
6606         (continue_command): Use inferior_thread.
6607         (info_program_command): Use find_thread_ptid and access thread
6608         state directly.
6609         (proceed_after_attach_callback): Use thread state directly.
6610         (notice_new_inferior): Take a thread_info pointer instead of a
6611         ptid_t.  All callers adjusted.
6612         (exit_inferior): Take an inferior pointer instead of a pid.  All
6613         callers adjusted.
6614         (exit_inferior_silent): New.
6615         (detach_inferior): Delete.
6616         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6617         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6618         (detach_inferior_command, kill_inferior_command): Use
6619         find_inferior_id instead of valid_gdb_inferior_id and
6620         gdb_inferior_id_to_pid.
6621         (inferior_command): Use inferior and thread pointers.
6622         * inferior.h (struct thread_info): Forward declare.
6623         (notice_new_inferior): Take a thread_info pointer instead of a
6624         ptid_t.  All callers adjusted.
6625         (detach_inferior): Delete declaration.
6626         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6627         instead of a pid.  All callers adjusted.
6628         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6629         (valid_gdb_inferior_id): Delete.
6630         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6631         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6632         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6633         ...
6634         <inf>: ... this new field.
6635         <step_ptid>: Delete, replaced by ...
6636         <step_thread>: ... this new field.
6637         (get_displaced_stepping_state): Take an inferior pointer instead
6638         of a pid.  All callers adjusted.
6639         (displaced_step_in_progress_any_inferior): Adjust.
6640         (displaced_step_in_progress_thread): Take a thread pointer instead
6641         of a ptid_t.  All callers adjusted.
6642         (displaced_step_in_progress, add_displaced_stepping_state): Take
6643         an inferior pointer instead of a pid.  All callers adjusted.
6644         (get_displaced_step_closure_by_addr): Adjust.
6645         (remove_displaced_stepping_state): Take an inferior pointer
6646         instead of a pid.  All callers adjusted.
6647         (displaced_step_prepare_throw, displaced_step_prepare)
6648         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6649         All callers adjusted.
6650         (start_step_over): Adjust.
6651         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6652         displaced step queue.
6653         (do_target_resume): Adjust.
6654         (fetch_inferior_event): Use inferior_thread.
6655         (context_switch, get_inferior_stop_soon): Take an
6656         execution_control_state pointer instead of a ptid_t.  All callers
6657         adjusted.
6658         (switch_to_thread_cleanup): Delete.
6659         (stop_all_threads): Use scoped_restore_current_thread.
6660         * inline-frame.c: Include "gdbthread.h".
6661         (inline_state) <inline_state>: Take a thread pointer instead of a
6662         ptid_t.  All callers adjusted.
6663         <ptid>: Delete, replaced by ...
6664         <thread>: ... this new field.
6665         (find_inline_frame_state): Take a thread pointer instead of a
6666         ptid_t.  All callers adjusted.
6667         (skip_inline_frames, step_into_inline_frame)
6668         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6669         pointer instead of a ptid_t.  All callers adjusted.
6670         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6671         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6672         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6673         pointers directly.
6674         * linux-nat.c (get_detach_signal): Likewise.
6675         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6676         (thread_db_notice_clone): Adjust.
6677         (thread_db_find_new_threads_silently)
6678         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6679         a thread pointer instead of a ptid_t.  All callers adjusted.
6680         * mi/mi-cmd-var.c: Include "inferior.h".
6681         (mi_cmd_var_update_iter): Update to use thread pointers.
6682         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6683         inferior directly.
6684         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6685         out to ...
6686         (mi_output_running): ... this new function.
6687         (mi_on_resume_1): Adjust to use it.
6688         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6689         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6690         directly.
6691         (interrupt_thread_callback): : Adjust to use thread and inferior
6692         pointers.
6693         * proc-service.c: Include "gdbthread.h".
6694         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6695         * progspace-and-thread.c: Include "inferior.h".
6696         * progspace.c: Include "inferior.h".
6697         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6698         hold a reference to an inferior_object.
6699         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6700         inferior_thread.
6701         * python/py-inferior.c (struct inferior_object): Give the type a
6702         tag name instead of a typedef.
6703         (python_on_normal_stop): No need to check if the current thread is
6704         listed.
6705         (inferior_to_inferior_object): Change return type to
6706         inferior_object.  All callers adjusted.
6707         (find_thread_object): Delete, bits factored out to ...
6708         (thread_to_thread_object): ... this new function.
6709         * python/py-infthread.c (create_thread_object): Use
6710         inferior_to_inferior_object.
6711         (thpy_is_stopped): Use thread pointer directly.
6712         (gdbpy_selected_thread): Use inferior_thread.
6713         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6714         field, replaced with ...
6715         <thread>: ... this new field.  All users adjusted.
6716         (btpy_insn_or_gap_new): Drop const.
6717         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6718         callers adjusted.
6719         * python/py-record.c: Include "gdbthread.h".
6720         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6721         a ptid_t.  All callers adjusted.
6722         (gdbpy_current_recording): Use inferior_thread.
6723         * python/py-record.h (recpy_record_object) <ptid>: Delete
6724         field, replaced with ...
6725         <thread>: ... this new field.  All users adjusted.
6726         (recpy_element_object) <ptid>: Delete
6727         field, replaced with ...
6728         <thread>: ... this new field.  All users adjusted.
6729         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6730         a ptid_t.  All callers adjusted.
6731         * python/py-threadevent.c: Include "gdbthread.h".
6732         (get_event_thread): Use thread_to_thread_object.
6733         * python/python-internal.h (struct inferior_object): Forward
6734         declare.
6735         (find_thread_object, find_inferior_object): Delete declarations.
6736         (thread_to_thread_object, inferior_to_inferior_object): New
6737         declarations.
6738         * record-btrace.c: Include "inferior.h".
6739         (require_btrace_thread): Use inferior_thread.
6740         (record_btrace_frame_sniffer)
6741         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6742         (get_thread_current_frame): Use scoped_restore_current_thread and
6743         switch_to_thread.
6744         (get_thread_current_frame): Use thread pointer directly.
6745         (record_btrace_replay_at_breakpoint): Use thread's inferior
6746         pointer directly.
6747         * record-full.c: Include "inferior.h".
6748         * regcache.c: Include "gdbthread.h".
6749         (get_thread_arch_regcache): Use the inferior's address space
6750         directly.
6751         (get_thread_regcache, registers_changed_thread): New.
6752         * regcache.h (get_thread_regcache(thread_info *thread)): New
6753         overload.
6754         (registers_changed_thread): New.
6755         (remote_target) <remote_detach_1>: Swap order of parameters.
6756         (remote_add_thread): <remote_add_thread>: Return the new thread.
6757         (get_remote_thread_info(ptid_t)): New overload.
6758         (remote_target::remote_notice_new_inferior): Use thread pointers
6759         directly.
6760         (remote_target::process_initial_stop_replies): Use
6761         thread_info::set_running.
6762         (remote_target::remote_detach_1, remote_target::detach)
6763         (extended_remote_target::detach): Adjust.
6764         * stack.c (frame_show_address): Use inferior_thread.
6765         * target-debug.h (target_debug_print_thread_info_pp): New.
6766         * target-delegates.c: Regenerate.
6767         * target.c (default_thread_address_space): Delete.
6768         (memory_xfer_partial_1): Use current_inferior.
6769         (target_detach): Use current_inferior.
6770         (target_thread_address_space): Delete.
6771         (generic_mourn_inferior): Use current_inferior.
6772         * target.h (struct target_ops) <thread_address_space>: Delete.
6773         (target_thread_address_space): Delete.
6774         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6775         pointers directly.
6776         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6777         thread pointer instead of a ptid_t.  Adjust all callers.
6778         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6779         (first_thread_of_process): Delete, replaced by ...
6780         (first_thread_of_inferior): ... this new function.  All callers
6781         adjusted.
6782         (any_thread_of_process): Rename to ...
6783         (any_thread_of_inferior): ... this, and take an inferior pointer.
6784         (any_live_thread_of_process): Rename to ...
6785         (any_live_thread_of_inferior): ... this, and take an inferior
6786         pointer.
6787         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6788         (value_in_thread_stack_temporaries)
6789         (get_last_thread_stack_temporary): Take a thread pointer instead
6790         of a ptid_t.  Adjust all callers.
6791         (thread_info::set_running): New.
6792         (validate_registers_access): Use inferior_thread.
6793         (can_access_registers_ptid): Rename to ...
6794         (can_access_registers_thread): ... this, and take a thread
6795         pointer.
6796         (print_thread_info_1): Adjust to compare thread pointers instead
6797         of ptids.
6798         (switch_to_no_thread, switch_to_thread): Make extern.
6799         (scoped_restore_current_thread::~scoped_restore_current_thread):
6800         Use m_thread pointer directly.
6801         (scoped_restore_current_thread::scoped_restore_current_thread):
6802         Use inferior_thread.
6803         (thread_command): Use thread pointer directly.
6804         (thread_num_make_value_helper): Use inferior_thread.
6805         * top.c (execute_command): Use inferior_thread.
6806         * tui/tui-interp.c: Include "inferior.h".
6807         * varobj.c (varobj_create): Use inferior_thread.
6808         (value_of_root_1): Use find_thread_global_id instead of
6809         global_thread_id_to_ptid.
6810
6811 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6812
6813         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6814         possible.
6815         (regcache::write_part): Likewise.
6816         (readable_regcache::cooked_read_part): Update comment.
6817         (readable_regcache::cooked_write_part): Likewise.
6818         * regcache.h: (readable_regcache::read_part): Likewise.
6819         (regcache::write_part): Likewise.
6820
6821 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6822             Dirk Schubert  <dirk.schubert@arm.com>
6823
6824         * aarch64-linux-nat.c (post_attach): New.
6825         (aarch64_linux_nat_target::post_attach): Override post_attach to
6826         record the number of hardware debug registers.
6827
6828 2018-06-20  Tom Tromey  <tom@tromey.com>
6829
6830         * python/py-param.c (add_setshow_generic): Make parameters const.
6831         (parmpy_init): Update.
6832
6833 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6834
6835         * regcache.h (regcache_cooked_read_ftype): Rename to...
6836         (register_read_ftype): ...this, change type to function_view.
6837         (class reg_buffer) <save>: Remove src parameter.
6838         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6839         parameter non-const in first overload.  Remove src parameter in
6840         second overload.
6841         * regcache.c (do_cooked_read): Remove.
6842         (readonly_detached_regcache::readonly_detached_regcache): Make
6843         parameter non-const, adjust call to other constructor.
6844         (reg_buffer::save): Remove src parameter.
6845         * frame.c (do_frame_register_read): Remove.
6846         (frame_save_as_regcache): Use lambda function.
6847         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6848         parameter to ppu2spu_data *.
6849         (ppu2spu_sniffer): Use lambda function.
6850
6851 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6852
6853         * record-full.c (record_full_target::insert_breakpoint): Remove
6854         "struct" keyword, add const.
6855
6856 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6857
6858         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6859         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6860         * configure.ac: Remove AC_PREREQ, add missing quoting.
6861         * gnulib/configure.ac: Modernize usage of
6862         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6863         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6864         (AUTOMAKE_VERSION): Bump to 1.15.1.
6865         * configure: Re-generate.
6866         * config.in: Re-generate.
6867         * aclocal.m4: Re-generate.
6868         * gnulib/aclocal.m4: Re-generate.
6869         * gnulib/config.in: Re-generate.
6870         * gnulib/configure: Re-generate.
6871         * gnulib/import/Makefile.in: Re-generate.
6872
6873 2018-06-19  Pedro Alves  <palves@redhat.com>
6874
6875         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6876         (lookup_minimal_symbol_by_pc_section): ... here with
6877         gdb_assert_not_reached added.
6878
6879 2018-06-19  Pedro Alves  <palves@redhat.com>
6880
6881         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6882         parameter with a block parameter.  Compare location's block symbol
6883         with the frame's block instead of addresses.
6884         (skip_inline_frames): Pass the current block instead of the
6885         frame's address.  Break out as soon as we determine the frame
6886         should not be skipped.
6887
6888 2018-06-18  Tom Tromey  <tom@tromey.com>
6889
6890         * solib-aix.c (solib_aix_get_section_offsets): Return
6891         unique_xmalloc_ptr.
6892         (solib_aix_solib_create_inferior_hook): Update.
6893
6894 2018-06-18  Tom Tromey  <tom@tromey.com>
6895
6896         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6897
6898 2018-06-18  Tom Tromey  <tom@tromey.com>
6899
6900         * solib-frv.c (frv_relocate_main_executable): Use
6901         unique_xmalloc_ptr.
6902         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6903         unique_xmalloc_ptr.
6904
6905 2018-06-18  Tom Tromey  <tom@tromey.com>
6906
6907         * objfiles.h (inhibit_section_map_updates): Update.
6908         (resume_section_map_updates, resume_section_map_updates_cleanup):
6909         Remove.
6910         * solib-svr4.c (svr4_handle_solib_event): Update.
6911         * objfiles.c (inhibit_section_map_updates): Return
6912         scoped_restore_tmpl<int>.
6913         (resume_section_map_updates, resume_section_map_updates_cleanup):
6914         Remove.
6915
6916 2018-06-18  Tom Tromey  <tom@tromey.com>
6917
6918         * valprint.h (read_string): Update.
6919         * valprint.c (read_string): Change type of "buffer".
6920         (val_print_string): Update.
6921         * python/py-value.c (valpy_string): Update.
6922         * language.h (struct language_defn) <la_get_string>: Change
6923         type of "buffer".
6924         (default_get_string, c_get_string): Update.
6925         * language.c (default_get_string): Change type of "buffer".
6926         * guile/scm-value.c (gdbscm_value_to_string): Update.
6927         * c-lang.c (c_get_string): Change type of "buffer".
6928
6929 2018-06-18  Tom Tromey  <tom@tromey.com>
6930
6931         * ser-mingw.c (struct pipe_state_destroyer): New.
6932         (pipe_state_up): New typedef.
6933         (cleanup_pipe_state): Remove.
6934         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6935
6936 2018-06-18  Tom Tromey  <tom@tromey.com>
6937
6938         * rust-lang.h (rust_yyerror): Don't declare.
6939         * rust-lang.c (rust_language_defn): Update.
6940         * rust-exp.y (yyerror): Now static.
6941         * parse.c (parse_exp_in_context_1): Update.
6942         * p-lang.h (p_yyerror): Don't declare.
6943         * p-lang.c (p_language_defn): Update.
6944         * p-exp.y (yyerror): Now static.
6945         * opencl-lang.c (opencl_language_defn): Update.
6946         * objc-lang.c (objc_language_defn): Update.
6947         * m2-lang.h (m2_yyerror): Don't declare.
6948         * m2-lang.c (m2_language_defn): Update.
6949         * m2-exp.y (yyerror): Now static.
6950         * language.h (struct language_defn) <la_error>: Remove.
6951         * language.c (unk_lang_error): Remove.
6952         (unknown_language_defn, auto_language_defn): Remove.
6953         * go-lang.h (go_yyerror): Don't declare.
6954         * go-lang.c (go_language_defn): Update.
6955         * go-exp.y (yyerror): Now static.
6956         * f-lang.h (f_yyerror): Don't declare.
6957         * f-lang.c (f_language_defn): Update.
6958         * f-exp.y (yyerror): Now static.
6959         * d-lang.h (d_yyerror): Don't declare.
6960         * d-lang.c (d_language_defn): Update.
6961         * d-exp.y (yyerror): Now static.
6962         * c-lang.h (c_yyerror): Don't declare.
6963         * c-lang.c (c_language_defn, cplus_language_defn)
6964         (asm_language_defn, minimal_language_defn): Update.
6965         * c-exp.y (yyerror): Now static.
6966         * ada-lang.h (ada_yyerror): Don't declare.
6967         * ada-lang.c (ada_language_defn): Update.
6968         * ada-exp.y (yyerror): Now static.
6969
6970 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6971
6972         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6973         (store_sveregs_to_thread): Likewise.
6974         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6975         (aarch64_linux_store_inferior_registers): Likewise.
6976         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6977         function.
6978         (aarch64_sve_regs_copy_to_regcache): Likewise.
6979         (aarch64_sve_regs_copy_from_regcache): Likewise.
6980         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6981         declaration.
6982         (aarch64_sve_regs_copy_to_regcache): Likewise.
6983         (aarch64_sve_regs_copy_from_regcache): Likewise.
6984         (sve_context): Structure from Linux headers.
6985         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6986         (SVE_SIG_ZREG_SIZE): Likewise.
6987         (SVE_SIG_PREG_SIZE): Likewise.
6988         (SVE_SIG_FFR_SIZE): Likewise.
6989         (SVE_SIG_REGS_OFFSET): Likewise.
6990         (SVE_SIG_ZREGS_OFFSET): Likewise.
6991         (SVE_SIG_ZREG_OFFSET): Likewise.
6992         (SVE_SIG_ZREGS_SIZE): Likewise.
6993         (SVE_SIG_PREGS_OFFSET): Likewise.
6994         (SVE_SIG_PREG_OFFSET): Likewise.
6995         (SVE_SIG_PREGS_SIZE): Likewise.
6996         (SVE_SIG_FFR_OFFSET): Likewise.
6997         (SVE_SIG_REGS_SIZE): Likewise.
6998         (SVE_SIG_CONTEXT_SIZE): Likewise.
6999         (SVE_PT_REGS_MASK): Likewise.
7000         (SVE_PT_REGS_FPSIMD): Likewise.
7001         (SVE_PT_REGS_SVE): Likewise.
7002         (SVE_PT_VL_INHERIT): Likewise.
7003         (SVE_PT_VL_ONEXEC): Likewise.
7004         (SVE_PT_REGS_OFFSET): Likewise.
7005         (SVE_PT_FPSIMD_OFFSET): Likewise.
7006         (SVE_PT_FPSIMD_SIZE): Likewise.
7007         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7008         (SVE_PT_SVE_PREG_SIZE): Likewise.
7009         (SVE_PT_SVE_FFR_SIZE): Likewise.
7010         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7011         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7012         (__SVE_SIG_TO_PT): Likewise.
7013         (SVE_PT_SVE_OFFSET): Likewise.
7014         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7015         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7016         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7017         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7018         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7019         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7020         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7021         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7022         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7023         (SVE_PT_SVE_SIZE): Likewise.
7024         (SVE_PT_SIZE): Likewise.
7025         (HAS_SVE_STATE): New define.
7026
7027 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7028
7029         * nat/aarch64-sve-linux-sigcontext.h: New file.
7030         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7031         new files.
7032         (SVE_VQ_MIN): Likewise.
7033         (SVE_VQ_MAX): Likewise.
7034         (SVE_VL_MIN): Likewise.
7035         (SVE_VL_MAX): Likewise.
7036         (SVE_NUM_ZREGS): Likewise.
7037         (SVE_NUM_PREGS): Likewise.
7038         (sve_vl_valid): Likewise.
7039         (struct user_sve_header): Likewise.
7040
7041 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7042             Richard Bunt <Richard.Bunt@arm.com>
7043
7044         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7045         was requested by GDB.
7046
7047 2018-06-15  Tom de Vries  <tdevries@suse.de>
7048
7049         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7050
7051 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7052
7053         * gnulib/update-gnulib.sh: Print expected versions of
7054         autoconf/aclocal.
7055
7056 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7057
7058         * arch-utils.c (default_type_align): Use type_length_units.
7059         * gdbtypes.c (type_align): Use type_length_units.
7060
7061 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7062
7063         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7064         of 'define' command.
7065
7066 2018-06-14  Tom de Vries  <tdevries@suse.de>
7067
7068         PR cli/22573
7069         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7070         get_no_prettyformat_print_options.
7071
7072 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7073
7074         * sparc-nat.h: Include target.h.
7075         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7076         <fetch_registers>: Remove this argument in function call.
7077         <store_registers>: Remove this argument in function call, remove
7078         extra semicolon.
7079         <low_forget_process>: Call sparc64_forget_process instead of
7080         sparc_forget_process.
7081
7082 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7083
7084         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7085         (procfs_target::make_corefile_notes): Adjust to new
7086         target_read_alloc return type.
7087
7088 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7089             Stephen Roberts  <stephen.roberts@arm.com>
7090
7091         PR gdb/22882
7092         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7093         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7094         Move should_notify_stop local into more inner scope.
7095
7096 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7097             Stephen Roberts  <stephen.roberts@arm.com>
7098
7099         PR gdb/22882
7100         * infrun.c (resume_1): Add call to mark_async_event_handler.
7101
7102 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7103
7104         * infrun.c (do_target_wait): Change old version of $pc printed.
7105
7106 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7107
7108         * dwarf2read.c (read_index_from_section): Rename to...
7109         (read_gdb_index_from_section): ... this, update all callers.
7110         (dwarf2_read_index): Rename to...
7111         (dwarf2_read_gdb_index): ... this, update all callers.
7112
7113 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7114
7115         * gdb/hppa-linux-nat.c
7116         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7117         hppa_linux_nat_target::fetch_registers.
7118
7119 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7120
7121         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7122         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7123         (AARCH64_DWARF_SVE_FFR): Likewise.
7124         (AARCH64_DWARF_SVE_P0): Likewise.
7125         (AARCH64_DWARF_SVE_Z0): Likewise.
7126
7127 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7128
7129         * common/common-regcache.h (raw_compare): New function.
7130         * regcache.c (regcache::raw_compare): Likewise.
7131         * regcache.h (regcache::raw_compare): New declaration.
7132
7133 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7134
7135         * common/common-regcache.h (reg_buffer_common): New structure.
7136         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7137         (reg_buffer::raw_supply): Likewise.
7138         (reg_buffer::raw_supply_integer): Likewise.
7139         (reg_buffer::raw_supply_zeroed): Likewise.
7140         (reg_buffer::raw_collect): Likewise.
7141         (reg_buffer::raw_collect_integer): Likewise.
7142         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7143         (reg_buffer::raw_supply): Likewise.
7144         (reg_buffer::raw_supply_integer): Likewise.
7145         (reg_buffer::raw_supply_zeroed): Likewise.
7146         (reg_buffer::raw_collect): Likewise.
7147         (reg_buffer::raw_collect_integer): Likewise.
7148
7149 2018-06-10  Tom Tromey  <tom@tromey.com>
7150
7151         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7152         (class remote_state) <stop_reply_queue>: Now std::vector.
7153         (remote_state::~remote_state)
7154         (remote_target::stop_reply_queue_length): Update.
7155         (struct queue_iter_param, remove_child_of_pending_fork)
7156         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7157         (check_pending_event_prevents_wildcard_vcont_callback)
7158         (remove_stop_reply_for_inferior)
7159         (remove_stop_reply_of_remote_state)
7160         (remote_notif_remove_once_on_match)
7161         (stop_reply_match_ptid_and_ws)
7162         (remote_kill_child_of_pending_fork): Remove.
7163         (remote_target::remove_new_fork_children)
7164         (remote_target::check_pending_events_prevent_wildcard_vcont)
7165         (remote_target::discard_pending_stop_replies)
7166         (remote_target::discard_pending_stop_replies_in_queue)
7167         (remote_target::remote_notif_remove_queued_reply)
7168         (remote_target::queued_stop_reply)
7169         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7170         (remote_target::wait, remote_target::kill_new_fork_children)
7171         (remote_target::async): Update.
7172
7173 2018-06-10  Tom Tromey  <tom@tromey.com>
7174
7175         * record-full.c (record_full_arch_list_cleanups): Remove.
7176         (record_full_message): Use try/catch.
7177         (record_full_wait_cleanups): Remove.
7178         (record_full_wait_1): Use try/catch.
7179         (record_full_restore): Likewise.
7180
7181 2018-06-10  Tom Tromey  <tom@tromey.com>
7182
7183         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7184         declare VEC.  Add constructor.
7185         <in_target_beneath>: Now bool.
7186         (record_full_breakpoints): Now a std::vector, static.
7187         (record_full_sync_record_breakpoints)
7188         (record_full_init_record_breakpoints)
7189         (record_full_target::insert_breakpoint)
7190         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7191
7192 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7193
7194         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7195         * serial.c (serial_interface_lookup): Remove struct keyword.
7196
7197 2018-06-10  Tom Tromey  <tom@tromey.com>
7198
7199         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7200         method.
7201         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7202         a method.
7203         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7204         method.
7205         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7206         "beneath" as a method.
7207         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7208         Use "beneath" as a method.
7209
7210 2018-06-10  Tom Tromey  <tom@tromey.com>
7211
7212         * tracefile.c (struct trace_file_writer_deleter): New.
7213         <operator()>: Rename from trace_file_writer_xfree.
7214         (trace_file_writer_up): New typedef.
7215         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7216
7217 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7218
7219         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7220         <m_registers, m_register_status>: Change type to
7221         std::unique_ptr.
7222         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7223         XCNEWVEC.
7224
7225 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7226
7227         * common/common-regcache.h (enum register_status): Add
7228         underlying type "signed char".
7229         * regcache.h (reg_buffer) <m_register_status>: Change type to
7230         register_status *.
7231         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7232         register_status instead of signed char.
7233         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7234         (reg_buffer::get_register_status): Remove cast.
7235         (readable_regcache::raw_read): Remove cast.
7236         (readable_regcache::cooked_read): Remove cast.
7237
7238 2018-06-09  Tom Tromey  <tom@tromey.com>
7239
7240         * source.c (reverse_search_command, forward_search_command): Use
7241         scoped_fd.
7242
7243 2018-06-09  Tom Tromey  <tom@tromey.com>
7244
7245         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7246         (serial_ops_list): Now static, std::vector.
7247         (serial_interface_lookup, serial_add_interface): Update.
7248
7249 2018-06-09  Tom Tromey  <tom@tromey.com>
7250
7251         * dwarf2read.c (process_cu_includes): Update.
7252         (process_full_comp_unit): Update.
7253         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7254         std::vector.
7255
7256 2018-06-08  Paul Koning  <paul_koning@dell.com>
7257
7258         PR gdb/23252
7259
7260         * python/python.c (do_start_initialization):
7261         Avoid call to internal Python API.
7262         (init__gdb_module): New function.
7263
7264 2018-06-08  Gary Benson <gbenson@redhat.com>
7265
7266         * linux-thread-db.c (valprint.h): New include.
7267         (struct check_thread_db_info): New structure.
7268         (check_thread_db_on_load, tdb_testinfo): New static globals.
7269         (check_thread_db, check_thread_db_callback): New functions.
7270         (try_thread_db_load_1): Run integrity checks if requested.
7271         (maintenance_check_libthread_db): New function.
7272         (_initialize_thread_db): Register "maint check libthread-db"
7273         and "maint set/show check-libthread-db".
7274         * NEWS: Mention the above new commands.
7275
7276 2018-06-08  Tom Tromey  <tom@tromey.com>
7277
7278         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7279         now a method.
7280
7281 2018-06-08  Tom Tromey  <tom@tromey.com>
7282
7283         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7284
7285 2018-06-08  Tom Tromey  <tom@tromey.com>
7286
7287         * common/btrace-common.h (struct btrace_data): Add constructor,
7288         destructor, move assignment operator.
7289         <empty, clear, fini>: New methods.
7290         <format>: Initialize.
7291         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7292         (btrace_data_empty): Don't declare.
7293         * common/btrace-common.c (btrace_data_init): Remove.
7294         (btrace_data::fini): Rename from btrace_data_fini.
7295         (btrace_data::empty): Rename from btrace_data_empty.
7296         (btrace_data::clear): Rename from btrace_data_clear.  Return
7297         bool.
7298         * btrace.h (make_cleanup_btrace_data): Don't declare.
7299         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7300         (parse_xml_btrace): Update.
7301         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7302         (maint_btrace_clear_packet_history_cmd): Update.
7303
7304 2018-06-07  Pedro Alves  <palves@redhat.com>
7305
7306         * target.h (target_ops) <beneath>: Now a method.  All references
7307         updated.
7308         (class target_stack): New.
7309         * target.c (g_target_stack): New.
7310         (g_current_top_target): Delete.
7311         (current_top_target): Get the top target out of g_target_stack.
7312         (target_stack::push, target_stack::unpush): New.
7313         (push_target, unpush_target): Reimplement.
7314         (target_is_pushed): Reimplement in terms of g_target_stack.
7315         (target_ops::beneath, target_stack::find_beneath): New.
7316
7317 2018-06-07  Pedro Alves  <palves@redhat.com>
7318
7319         * target.h (find_target_beneath): Delete declaration.
7320         * target.c (find_target_beneath): Delete definition.
7321         * aix-thread.c: All callers of find_target_beneath adjusted to
7322         call target_ops::beneath instead.
7323         * bsd-uthread.c: Likewise.
7324         * linux-thread-db.c: Likewise.
7325         * ravenscar-thread.c: Likewise.
7326         * sol-thread.c: Likewise.
7327         * spu-multiarch.c: Likewise.
7328
7329 2018-06-07  Pedro Alves  <palves@redhat.com>
7330
7331         * target.h (target_ops) <beneath>: Now a method.  All references
7332         updated.
7333         (target_ops) <m_beneath>: New.
7334         * target.c (target_ops::beneath): New.
7335         * corelow.c: Adjust all references to target_ops::beneath.
7336         * linux-thread-db.c: Likewise.
7337         * make-target-delegates: Likewise.
7338         * record-btrace.c: Likewise.
7339         * record-full.c: Likewise.
7340         * remote.c: Likewise.
7341         * target.c: Likewise.
7342         * target-delegates.c: Regenerate.
7343
7344 2018-06-07  Pedro Alves  <palves@redhat.com>
7345
7346         * target.h (target_stack): Delete.
7347         (current_top_target): Declare function.
7348         * target.c (target_stack): Delete.
7349         (g_current_top_target): New.
7350         (current_top_target): New function.
7351         * auxv.c: Use current_top_target instead of target_stack
7352         throughout.
7353         * avr-tdep.c: Likewise.
7354         * breakpoint.c: Likewise.
7355         * corefile.c: Likewise.
7356         * elfread.c: Likewise.
7357         * eval.c: Likewise.
7358         * exceptions.c: Likewise.
7359         * frame.c: Likewise.
7360         * gdbarch-selftests.c: Likewise.
7361         * gnu-v3-abi.c: Likewise.
7362         * ia64-tdep.c: Likewise.
7363         * ia64-vms-tdep.c: Likewise.
7364         * infcall.c: Likewise.
7365         * infcmd.c: Likewise.
7366         * infrun.c: Likewise.
7367         * linespec.c: Likewise.
7368         * linux-tdep.c: Likewise.
7369         * minsyms.c: Likewise.
7370         * ppc-linux-nat.c: Likewise.
7371         * ppc-linux-tdep.c: Likewise.
7372         * procfs.c: Likewise.
7373         * regcache.c: Likewise.
7374         * remote.c: Likewise.
7375         * rs6000-tdep.c: Likewise.
7376         * s390-linux-nat.c: Likewise.
7377         * s390-tdep.c: Likewise.
7378         * solib-aix.c: Likewise.
7379         * solib-darwin.c: Likewise.
7380         * solib-dsbt.c: Likewise.
7381         * solib-spu.c: Likewise.
7382         * solib-svr4.c: Likewise.
7383         * solib-target.c: Likewise.
7384         * sparc-tdep.c: Likewise.
7385         * sparc64-tdep.c: Likewise.
7386         * spu-tdep.c: Likewise.
7387         * symfile.c: Likewise.
7388         * symtab.c: Likewise.
7389         * target-descriptions.c: Likewise.
7390         * target-memory.c: Likewise.
7391         * target.c: Likewise.
7392         * target.h: Likewise.
7393         * tracefile-tfile.c: Likewise.
7394         * tracepoint.c: Likewise.
7395         * valops.c: Likewise.
7396         * valprint.c: Likewise.
7397         * value.c: Likewise.
7398         * windows-tdep.c: Likewise.
7399         * mi/mi-main.c: Likewise.
7400
7401 2018-06-07  Tom Tromey  <tom@tromey.com>
7402
7403         * valprint.h (build_address_symbolic): Declare.
7404         * printcmd.c (print_address_symbolic): Update.
7405         (build_address_symbolic): Change "name" and "filename" to
7406         std::string.
7407         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7408         Update.
7409         * defs.h (build_address_symbolic): Remove declaration.
7410
7411 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7412
7413         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7414         (aarch64_vnv_type): Add function.
7415         (aarch64_pseudo_register_name): Add V regs for SVE.
7416         (aarch64_pseudo_register_type): Likewise.
7417         (aarch64_pseudo_register_reggroup_p): Likewise.
7418         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7419         (aarch64_pseudo_read_value): Add V regs for SVE.
7420         (aarch64_pseudo_write_2): Use V0 offset for SVE
7421         (aarch64_pseudo_write): Add V regs for SVE.
7422         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7423
7424 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7425
7426         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7427         (sve_vl_from_vq): Likewise.
7428
7429 2018-06-05  Tom Tromey  <tom@tromey.com>
7430
7431         * cli/cli-cmds.c (show_version): Update.
7432         * top.c (print_gdb_version): Add "interactive" parameter.
7433         Update.
7434         * main.c (captured_main_1): Update.
7435         * top.h (print_gdb_version): Add "interactive" parameter and a
7436         comment.
7437
7438 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7439
7440         * common/enum-flags.h: Add trailing semicolon to example in
7441         comment.
7442
7443 2018-06-05  Tom Tromey  <tom@tromey.com>
7444
7445         PR cli/12326:
7446         * NEWS: Add entry about pager.
7447         * utils.c (pagination_disabled_for_command): New global.
7448         (prompt_for_continue): Allow "c" response to prompt.
7449         (reinitialize_more_filter): Clear
7450         pagination_disabled_for_command.
7451         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7452
7453 2018-06-04  Tom Tromey  <tom@tromey.com>
7454
7455         * ada-lang.h (ada_lookup_symbol_list): Update.
7456         * ada-lang.c (resolve_subexp): Update.
7457         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7458         parameter.
7459         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7460         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7461         results parameter to std::vector.
7462         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7463         Update.
7464         * ada-exp.y (block_lookup): Update.
7465         (select_possible_type_sym): Change type of syms.  Remove nsyms
7466         parameter.
7467         (write_var_or_type, write_name_assoc): Update.
7468
7469 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7470
7471         * windows-nat.c (windows_nat_target::xfer_partial): Return
7472         TARGET_XFER_E_IO if we need to delegate to the target beneath
7473         but BENEATH is NULL.
7474
7475 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7476
7477         * Makefile.in (config.status): Add configure.nat as a
7478         dependency.
7479
7480 2018-06-04  Tom Tromey  <tom@tromey.com>
7481
7482         * cp-name-parser.y (cpname_state): Add method declarations.
7483         (HANDLE_QUAL): Update.
7484         (cpname_state::d_grab, cpname_state::fill_comp)
7485         (cpname_state::make_operator, cpname_state::make_dtor)
7486         (cpname_state::make_builtin_type, cpname_state::make_name)
7487         (cpname_state::d_qualify, cpname_state::d_int_type)
7488         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7489         (%union): Move earlier.
7490
7491 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7492
7493         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7494
7495 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7496
7497         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7498         (aarch64_pseudo_write_1): Likewise.
7499         (aarch64_pseudo_read_value): Use helper.
7500         (aarch64_pseudo_write): Likewise.
7501
7502 2018-06-04  Pedro Alves  <palves@redhat.com>
7503
7504         * darwin-nat.c (darwin_ops): Delete.
7505         (darwin_attach_pid): Use get_native_target.
7506
7507 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7508
7509         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7510         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7511
7512 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7513
7514         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7515         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7516         (aarch64_gdbarch_init): Check for SVE.
7517         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7518
7519 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7520
7521         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7522         * aarch64-tdep.h (aarch64_read_description): Likewise.
7523         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7524         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7525         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7526         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7527         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7528
7529 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7530
7531         * value.c (value_fetch_lazy_bitfield): New.
7532         (value_fetch_lazy_memory): New.
7533         (value_fetch_lazy_register): New.
7534         (value_fetch_lazy): Factor out to smaller functions.
7535
7536 2018-06-01  Tom Tromey  <tom@tromey.com>
7537
7538         * cp-name-parser.y (backslashable, represented): Now const.
7539
7540 2018-06-01  Tom Tromey  <tom@tromey.com>
7541
7542         * cp-name-parser.y: Include parser-defs.h.
7543         (parser_fprintf): Remove declaration.
7544
7545 2018-06-01  Tom Tromey  <tom@tromey.com>
7546
7547         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7548         %parse-param.
7549         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7550         (global_result): Remove globals.
7551         (struct cpname_state): New.
7552         (yyparse): Don't declare.
7553         (yylex, yyerror): Move declarations after %union.
7554         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7555         (make_name): Add state parameter.
7556         Update all callers.
7557         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7558         parameter.
7559         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7560         Update.
7561         (yylex): Add lvalp, state parameters.
7562         (yyerror): Add state parameter.
7563         (cp_demangled_name_to_comp): Update.
7564
7565 2018-06-01  Tom Tromey  <tom@tromey.com>
7566
7567         * cp-name-parser.y (parser_fprintf): Declare.
7568         (GDB_YY_REMAP_PREFIX): Define.
7569         Include yy-remap.h.  Don't redefine yy* identifiers.
7570
7571 2018-06-01  Tom Tromey  <tom@tromey.com>
7572
7573         * python/py-type.c (typy_legacy_template_argument): Update.
7574         * cp-support.h (cp_demangled_name_to_comp): Update.
7575         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7576         parameter to be a "std::string *".
7577         (main): Update.
7578
7579 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7580
7581         * ada-lex.l: Include "diagnostics.h" instead of
7582         "common/diagnostics.h".
7583         * unittests/environ-selftests.c: Likewise.
7584         * common/diagnostics.h: Moved to ../include.
7585
7586 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7587
7588         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7589         to language_mode_manual while calling breakpoint_re_set_one.
7590
7591 2018-06-01  Tom Tromey  <tom@tromey.com>
7592
7593         * valops.c (value_cast_structs, destructor_name_p): Update.
7594         * symtab.c (gdb_mangle_name): Update.
7595         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7596         Update.
7597         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7598         (pascal_object_print_value_fields, pascal_object_print_value):
7599         Update.
7600         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7601         * linespec.c (find_methods): Update.
7602         * gdbtypes.h (type_name_no_tag): Remove.
7603         (type_name_or_error): Rename from type_name_no_tag_or_error.
7604         * gdbtypes.c (type_name_no_tag): Remove.
7605         (type_name_or_error): Rename from type_name_no_tag_or_error.
7606         (lookup_struct_elt_type, check_typedef): Update.
7607         * expprint.c (print_subexp_standard): Update.
7608         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7609         * d-namespace.c (d_lookup_nested_symbol): Update.
7610         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7611         (cp_print_class_member): Update.
7612         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7613         * completer.c (add_struct_fields): Update.
7614         * c-typeprint.c (cp_type_print_derivation_info)
7615         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7616         Update.
7617         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7618         (ada_prefer_type, ada_is_exception_sym): Update.
7619
7620 2018-06-01  Tom Tromey  <tom@tromey.com>
7621
7622         * valops.c (enum_constant_from_type, value_namespace_elt)
7623         (value_maybe_namespace_elt): Update.
7624         * valarith.c (find_size_for_pointer_math): Update.
7625         * target-descriptions.c (make_gdb_type): Update.
7626         * symmisc.c (print_symbol): Update.
7627         * stabsread.c (define_symbol, read_type)
7628         (complain_about_struct_wipeout, add_undefined_type)
7629         (cleanup_undefined_types_1): Update.
7630         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7631         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7632         (rust_internal_print_type, rust_composite_type)
7633         (rust_evaluate_funcall, rust_evaluate_subexp)
7634         (rust_inclusive_range_type_p): Update.
7635         * python/py-type.c (typy_get_tag): Update.
7636         * p-typeprint.c (pascal_type_print_base): Update.
7637         * mdebugread.c (parse_symbol, parse_type): Update.
7638         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7639         Update.
7640         * guile/scm-type.c (gdbscm_type_tag): Update.
7641         * go-lang.c (sixg_string_p): Update.
7642         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7643         Update.
7644         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7645         (TYPE_TAG_NAME): Remove.
7646         * gdbtypes.c (type_name_no_tag): Simplify.
7647         (check_typedef, check_types_equal, recursive_dump_type)
7648         (copy_type_recursive, arch_composite_type): Update.
7649         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7650         in summary mode when needed.
7651         * eval.c (evaluate_funcall): Update.
7652         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7653         (process_structure_scope, read_enumeration_type)
7654         (read_namespace_type, read_module_type, determine_prefix): Update.
7655         * cp-support.c (inspect_type): Update.
7656         * coffread.c (process_coff_symbol, decode_base_type): Update.
7657         * c-varobj.c (c_is_path_expr_parent): Update.
7658         * c-typeprint.c (c_type_print_base_struct_union): Update.
7659         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7660         summary when using C language.
7661         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7662         (gen_maybe_namespace_elt): Update.
7663         * ada-lang.c (ada_type_name): Simplify.
7664         (empty_record, ada_template_to_fixed_record_type_1)
7665         (template_to_static_fixed_type)
7666         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7667
7668 2018-06-01  Tom Tromey  <tom@tromey.com>
7669
7670         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7671         c_print_type.
7672         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7673         (c_print_type): Update.
7674         (c_print_type): New overload.
7675         (c_type_print_varspec_prefix, c_type_print_args)
7676         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7677         (c_type_print_base_struct_union, c_type_print_base_1)
7678         (cp_type_print_method_args): Add "language" parameter.
7679         (c_type_print_base): Update.
7680         * c-lang.h (c_print_type): Add new overload.
7681
7682 2018-06-01  Tom Tromey  <tom@tromey.com>
7683
7684         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7685         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7686
7687 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7688
7689         * aarch64-tdep.c (aarch64_sve_register_names): New const
7690         var.
7691         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7692         (AARCH64_SVE_Z_REGS_NUM): New define.
7693         (AARCH64_SVE_P_REGS_NUM): Likewise.
7694         (AARCH64_SVE_NUM_REGS): Likewise.
7695
7696 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7697
7698         * nat/linux-ptrace.h [__alpha__]
7699         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7700         definitions.
7701
7702 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7703
7704         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7705         the endianness selected.
7706         * NEWS: Document `set endian auto' mode operation update.
7707
7708 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7709
7710         * Makefile.in: Add new header.
7711         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7712         (sve_vl_from_vg): Likewise.
7713         (sve_vq_from_vl): Likewise.
7714         (sve_vl_from_vq): Likewise.
7715         (sve_vq_from_vg): Likewise.
7716         (sve_vg_from_vq): Likewise.
7717         * configure.nat: Add new c file.
7718         * nat/aarch64-sve-linux-ptrace.c: New file.
7719         * nat/aarch64-sve-linux-ptrace.h: New file.
7720
7721 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7722
7723         * aarch64-linux-nat.c (aarch64_linux_read_description):
7724         Add parmeter zero.
7725         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7726         Likewise.
7727         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7728         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7729         (aarch64_gdbarch_init): Add parmeter zero.
7730         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7731         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7732         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7733         parmeter.
7734         * doc/gdb.texinfo: Describe SVE feature
7735         * features/aarch64-sve.c: New file.
7736
7737 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7738
7739         PR gdb/23210
7740         * gdbarch.sh (significant_addr_bit): Default to zero when
7741         not set by target architecture.
7742         * gdbarch.c: Re-generated.
7743         * utils.c (address_significant): Update.
7744
7745 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7746
7747         * stack.c (func_command): Remove trailing newline in call to error.
7748
7749 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7750
7751         * regcache.h (regcache_raw_collect): Remove, update callers to
7752         use regcache::raw_collect.
7753         * regcache.c (regcache_raw_collect): Remove.
7754
7755 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7756
7757         * regcache.h (regcache_raw_supply): Remove, update callers to
7758         use detached_regcache::raw_supply.
7759         * regcache.c (regcache_raw_supply): Remove.
7760
7761 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7762
7763         * regcache.h (regcache_cooked_write_part): Remove, update
7764         callers to use regcache::cooked_write_part.
7765         * regcache.c (regcache_cooked_write_part): Remove.
7766
7767 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7768
7769         * regcache.h (regcache_cooked_read_part): Remove, update callers
7770         to use readable_regcache::cooked_read_part.
7771         * regcache.c (regcache_cooked_read_part): Remove.
7772
7773 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7774
7775         * regcache.h (regcache_cooked_read_value): Remove, update
7776         callers to use readable_regcache::cooked_read_value.
7777         * regcache.c (regcache_cooked_read_value): Remove.
7778
7779 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7780
7781         * regcache.h (regcache_cooked_write): Remove, update callers to
7782         use regcache::cooked_write.
7783         * regcache.c (regcache_cooked_write): Remove.
7784
7785 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7786
7787         * regcache.h (regcache_invalidate): Remove, update callers to
7788         use detached_regcache::invalidate instead.
7789         * regcache.c (regcache_invalidate): Remove.
7790
7791 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7792
7793         * regcache.h (regcache_raw_write_part): Remove, update callers
7794         to use regcache::raw_write_part instead.
7795         * regcache.c (regcache_raw_write_part): Remove.
7796
7797 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7798
7799         * regcache.h (regcache_raw_read_part): Remove, update callers to
7800         use readable_regcache::raw_read_part instead.
7801         * regcache.c (regcache_raw_read_part): Remove.
7802
7803 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7804
7805         * regcache.h (regcache_cooked_read): Remove, update callers to
7806         use readable_regcache::cooked_read instead.
7807         * regcache.c (regcache_cooked_read): Remove.
7808
7809 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7810
7811         * regcache.h (regcache_raw_write): Remove, update callers to use
7812         regcache::raw_write instead.
7813         * regcache.c (regcache_raw_write): Remove.
7814
7815 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7816
7817         * regcache.h (regcache_raw_read): Remove, update callers to use
7818         readable_regcache::raw_read instead.
7819         * regcache.c (regcache_raw_read): Remove.
7820
7821 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7822
7823         * regcache.h (regcache_raw_update): Remove, update callers to
7824         use readable_regcache::raw_update instead.
7825         * regcache.c (regcache_raw_update): Remove.
7826
7827 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7828
7829         * regcache.h (regcache_register_status): Remove, update callers
7830         to use reg_buffer::get_register_status directly instead.
7831         * regcache.c (regcache_register_status): Remove.
7832
7833 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7834
7835         * regcache.h (regcache_get_ptid): Remove, update all callers to
7836         call regcache::ptid instead.
7837         * regcache.c (regcache_get_ptid): Remove.
7838
7839 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7840
7841         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7842
7843 2018-05-30  Pedro Alves  <palves@redhat.com>
7844
7845         * common/common-exceptions.h (exception_rethrow): Use
7846         ATTRIBUTE_NORETURN.
7847
7848 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7849
7850         * breakpoint.c (print_solib_event, check_status_catch_solib):
7851         Remove struct keyword in range-based for loops.
7852         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7853         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7854         Likewise.
7855         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7856         Likewise.
7857         * symfile.c (addr_info_make_relative): Likewise.
7858         * thread.c (value_in_thread_stack_temporaries): Likewise.
7859
7860 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7861
7862         PR gdb/16841
7863         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7864         aggregate type to get its real type before accessing it.
7865
7866 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7867
7868         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7869         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7870         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7871         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7872         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7873         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7874         * printcmd.c (info_address_command): Likewise.
7875
7876 2018-05-29  Tom Tromey  <tom@tromey.com>
7877
7878         * windows-nat.c (handle_exception): Update fall-through comment.
7879
7880 2018-05-29  Tom Tromey  <tom@tromey.com>
7881
7882         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7883         (struct program_space) <added_solibs>: Now a std::vector.
7884         * breakpoint.c (print_solib_event): Update.
7885         (check_status_catch_solib): Update.
7886         * progspace.c (clear_program_space_solib_cache): Update.
7887         * solib.c (update_solib_list): Update.
7888
7889 2018-05-29  Tom Tromey  <tom@tromey.com>
7890
7891         * python/py-type.c (typy_richcompare): Update.
7892         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7893         * gdbtypes.h (types_deeply_equal): Return bool.
7894         (types_equal): Likewise.
7895         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7896         declare VEC.
7897         (check_types_equal): Change worklist to std::vector.  Return
7898         bool.
7899         (struct type_equality_entry): Add constructor.
7900         (compare_maybe_null_strings): Return bool.
7901         (check_types_worklist): Return bool.  Change worklist to
7902         std::vector.
7903         (types_deeply_equal): Use std::vector.
7904         (types_equal): Return bool.
7905         (compare_maybe_null_strings): Simplify.
7906
7907 2018-05-29  Tom Tromey  <tom@tromey.com>
7908
7909         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7910
7911 2018-05-29  Tom Tromey  <tom@tromey.com>
7912
7913         * objc-lang.h: Don't include cp-support.h.
7914         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7915         declare VEC.
7916
7917 2018-05-27  Tom Tromey  <tom@tromey.com>
7918
7919         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7920
7921 2018-05-25  Tom Tromey  <tom@tromey.com>
7922
7923         * value.c (value::location): Initialize.
7924
7925 2018-05-25  Tom Tromey  <tom@tromey.com>
7926
7927         * dbxread.c (init_bincl_list): Remove.
7928         (bincl_list): Now a std::vector.
7929         (bincls_allocated, next_bincl): Remove.
7930         (free_bincl_list, do_free_bincl_list_cleanup)
7931         (make_cleanup_free_bincl_list): Remove.
7932         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7933         unique_xmalloc_ptr.
7934         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7935         (struct header_file_location): Add constructor.
7936         (add_bincl_to_list): Remove.
7937
7938 2018-05-25  Tom Tromey  <tom@tromey.com>
7939
7940         * tui/tui.c (tui_enable): Update.
7941         * mi/mi-interp.c (mi_interp::init): Update.
7942         * interps.h (class interp) <name>: New method.
7943         <m_name>: Rename from name.
7944         (~scoped_restore_interp): Update.
7945         * interps.c (interp::interp): Update.
7946         (interp_add, interp_set, interp_lookup_existing)
7947         (current_interp_named_p): Update.
7948
7949 2018-05-25  Tom Tromey  <tom@tromey.com>
7950
7951         * interps.c (interp_name): Remove.
7952         * mi/mi-interp.c (mi_interp::init): Update.
7953         * interps.h (interp_name): Remove.
7954         (~scoped_restore_interp): Update.
7955         * tui/tui.c (tui_enable): Update.
7956
7957 2018-05-25  Tom Tromey  <tom@tromey.com>
7958
7959         * utils.c (fputs_maybe_filtered): Update.
7960         * linespec.c (decode_line_full): Update.
7961         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7962         (mi_print_breakpoint_for_event, mi_solib_loaded)
7963         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7964         (mi_user_selected_context_changed): Update.
7965         * mi/mi-main.c (mi_execute_command): Update.
7966         * cli/cli-script.c (execute_control_command): Update.
7967         * python/python.c (execute_gdb_command): Update.
7968         * solib.c (info_sharedlibrary_command): Update.
7969         * interps.c (interp_ui_out): Remove.
7970         * interps.h (interp_ui_out): Remove.
7971
7972 2018-05-25  Tom Tromey  <tom@tromey.com>
7973
7974         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7975         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7976         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7977
7978 2018-05-25  Tom Tromey  <tom@tromey.com>
7979
7980         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7981         * interps.c (interp_exec): Use scoped_restore.
7982
7983 2018-05-25  Tom Tromey  <tom@tromey.com>
7984
7985         * remote.c (remote_target::remote_file_get): Use
7986         gdb::byte_vector.
7987         (remote_target::remote_file_put): Likewise.
7988
7989 2018-05-25  Tom Tromey  <tom@tromey.com>
7990
7991         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7992         a std::string.
7993         (get_pe_section_index, add_pe_exported_sym): Update.
7994         (read_pe_exported_syms): Use gdb::def_vector.
7995
7996 2018-05-25  Tom Tromey  <tom@tromey.com>
7997
7998         * frame.c (remove_prev_frame): Remove.
7999         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8000
8001 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8002
8003         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8004         Remove prototypes.
8005         * mips-linux-nat.c (supply_fpregset): Always call
8006         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8007         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8008         `mips_fill_fpregset'.
8009         * mips-linux-tdep.c (mips_supply_fpregset)
8010         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8011         (mips_fill_fpregset_wrapper): Remove functions.
8012         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8013         (mips_linux_fpregset): Remove variable.
8014         (mips_linux_iterate_over_regset_sections): Use
8015         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8016         (mips_linux_o32_sigframe_init): Remove comment.
8017
8018 2018-05-25  Pedro Alves  <palves@redhat.com>
8019
8020         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8021         (struct readahead_cache, struct packet_reg, struct
8022         remote_arch_state, class remote_state): Move higher up in the
8023         file.
8024         (remote_target::m_remote_state): Now an object instead of a pointer.
8025         (remote_target::get_remote_state): Adjust.
8026
8027 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8028
8029         * stack.c (select_and_print_frame): Delete.
8030         (struct function_bounds): Move struct within function.
8031         (func_command): Most content moved into new function
8032         find_frame_for_function, use new function, print result, add
8033         function comment.
8034         (find_frame_for_function): New function, now returns a result.
8035
8036 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8037
8038         * stack.c (iterate_over_block_arg_vars): Fix comment.
8039         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8040
8041 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8042
8043         PR gdb/23203
8044         * frame.c
8045         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8046         Define.
8047         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8048         Define.
8049         * frame.h (class scoped_restore_selected_frame): New class.
8050         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8051         of any exception, use scoped_restore_selected_frame to restore the
8052         frame instead.
8053
8054 2018-05-24  Pedro Alves  <palves@redhat.com>
8055
8056         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8057         override.
8058
8059 2018-05-23  Tom Tromey  <tom@tromey.com>
8060
8061         * complaints.c (struct complaints): Remove.
8062         (symfile_complaint_book): Remove.
8063         (series): New global.
8064         (complaint_internal): Update.
8065         (clear_complaints): Update.
8066
8067 2018-05-23  Tom Tromey  <tom@tromey.com>
8068
8069         * complaints.c (counters): New global.
8070         (struct complain): Remove.
8071         (struct complaints) <root>: Remove.
8072         (complaint_sentinel): Remove.
8073         (symfile_complaint_book): Update.
8074         (find_complaint) Remove.
8075         (complaint_internal, clear_complaints): Update.
8076
8077 2018-05-23  Tom Tromey  <tom@tromey.com>
8078
8079         * complaints.c (struct complain) <file, line>: Remove.
8080         (find_complaint): Remove file, line parameters.
8081         (complaint_internal): Update.
8082
8083 2018-05-23  Tom Tromey  <tom@tromey.com>
8084
8085         * complaints.c (vcomplaint): Remove.
8086         (complaint_internal) Merge in contents of vcomplaint.
8087
8088 2018-05-23  Tom Tromey  <tom@tromey.com>
8089
8090         * complaints.c (struct complaints) <explanation>: Remove.
8091         (symfile_explanations): Remove.
8092         (symfile_complaint_book): Update.
8093         (vcomplaint): Update.
8094         (struct explanation): Remove.
8095
8096 2018-05-23  Tom Tromey  <tom@tromey.com>
8097
8098         * complaints.c (symfile_complaints): Remove.
8099         (complaint_internal): Remove "complaints" parameter.
8100         (clear_complaints, vcomplaint): Remove "c" parameter.
8101         (get_complaints): Remove.
8102         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8103         (dwarf2_debug_line_missing_file_complaint)
8104         (dwarf2_debug_line_missing_end_sequence_complaint)
8105         (dwarf2_complex_location_expr_complaint)
8106         (dwarf2_const_value_length_mismatch_complaint)
8107         (dwarf2_section_buffer_overflow_complaint)
8108         (dwarf2_macro_malformed_definition_complaint)
8109         (dwarf2_invalid_attrib_class_complaint)
8110         (create_addrmap_from_index, dw2_symtab_iter_next)
8111         (dw2_expand_marked_cus)
8112         (dw2_debug_names_iterator::find_vec_in_debug_names)
8113         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8114         (create_debug_type_hash_table, init_cutu_and_read_dies)
8115         (partial_die_parent_scope, add_partial_enumeration)
8116         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8117         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8118         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8119         (create_cus_hash_table, create_dwp_hash_table)
8120         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8121         (dwarf2_rnglists_process, dwarf2_ranges_process)
8122         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8123         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8124         (handle_struct_member_die, process_structure_scope)
8125         (read_array_type, read_common_block, read_module_type)
8126         (read_tag_pointer_type, read_typedef, read_base_type)
8127         (read_subrange_type, load_partial_dies, partial_die_info::read)
8128         (partial_die_info::read, partial_die_info::read)
8129         (partial_die_info::read, read_checked_initial_length_and_offset)
8130         (dwarf2_string_attr, read_formatted_entries)
8131         (dwarf_decode_line_header)
8132         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8133         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8134         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8135         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8136         (get_signatured_type, get_DW_AT_signature_type)
8137         (decode_locdesc, file_file_name, consume_improper_spaces)
8138         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8139         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8140         (dwarf2_symbol_mark_computed, set_die_type)
8141         (read_attribute_value): Update.
8142         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8143         Update.
8144         * dbxread.c (unknown_symtype_complaint)
8145         (lbrac_mismatch_complaint, repeated_header_complaint)
8146         (set_namestring, function_outside_compilation_unit_complaint)
8147         (read_dbx_symtab, process_one_symbol): Update.
8148         * gdbtypes.c (stub_noname_complaint): Update.
8149         * windows-nat.c (handle_unload_dll): Update.
8150         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8151         (decode_base_type): Update.
8152         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8153         (eb_complaint, record_include_begin, record_include_end)
8154         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8155         (process_xcoff_symbol, read_symbol)
8156         (function_outside_compilation_unit_complaint)
8157         (scan_xcoff_symtab): Update.
8158         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8159         * buildsym.c (finish_block_internal, make_blockvector)
8160         (end_symtab_get_static_block, augment_type_symtab): Update.
8161         * dtrace-probe.c (dtrace_process_dof)
8162         (dtrace_static_probe_ops::get_probes): Update.
8163         * complaints.h (struct complaint): Don't declare.
8164         (symfile_complaints): Remove.
8165         (complaint_internal): Remove "complaints" parameter.
8166         (complaint): Likewise.
8167         (clear_complaints): Likewise.
8168         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8169         (reread_symbols): Update.
8170         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8171         (dwarf2_frame_cache, decode_frame_entry): Update.
8172         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8173         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8174         (info_selectors_command): Update.
8175         * macrotab.c (macro_include, check_for_redefinition)
8176         (macro_undef): Update.
8177         * objfiles.c (filter_overlapping_sections): Update.
8178         * stabsread.c (invalid_cpp_abbrev_complaint)
8179         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8180         (define_symbol, error_type, read_type, rs6000_builtin_type)
8181         (stabs_method_name_from_physname, read_member_functions)
8182         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8183         (attach_fields_to_type, complain_about_struct_wipeout)
8184         (read_range_type, read_args, common_block_start)
8185         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8186         Update.
8187         * mdebugread.c (index_complaint, unknown_ext_complaint)
8188         (basic_type_complaint, bad_tag_guess_complaint)
8189         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8190         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8191         (parse_procedure, parse_lines)
8192         (function_outside_compilation_unit_complaint)
8193         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8194         (bad_tag_guess_complaint, reg_value_complaint): Update.
8195         * cp-support.c (demangled_name_complaint): Update.
8196         * macroscope.c (sal_macro_scope): Update.
8197         * dwarf-index-write.c (class debug_names): Update.
8198
8199 2018-05-23  Tom Tromey  <tom@tromey.com>
8200
8201         * complaints.c (clear_complaints): Remove "noisy" parameter.
8202         * complaints.h (clear_complaints): Update.
8203         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8204         (reread_symbols): Update.
8205
8206 2018-05-23  Tom Tromey  <tom@tromey.com>
8207
8208         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8209         SUBSEQUENT_MESSAGE.
8210         (vcomplaint, clear_complaints): Update.
8211         (symfile_explanations): Remove some messages.
8212
8213 2018-05-23  Tom Tromey  <tom@tromey.com>
8214
8215         * complaints.c (internal_complaint): Remove.
8216         * complaints.h (internal_complaint): Remove.
8217
8218 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8219
8220         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8221
8222 2018-05-22  Pedro Alves  <palves@redhat.com>
8223
8224         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8225         (remote_fileio_badfd, remote_fileio_return_errno)
8226         (remote_fileio_return_success, remote_fileio_func_open)
8227         (remote_fileio_func_open, remote_fileio_func_close)
8228         (remote_fileio_func_read, remote_fileio_func_write)
8229         (remote_fileio_func_lseek, remote_fileio_func_rename)
8230         (remote_fileio_func_unlink, remote_fileio_func_stat)
8231         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8232         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8233         remote_target parameter.
8234         (remote_fio_func_map) <func>: Add remote_target parameter.
8235         (do_remote_fileio_request, remote_fileio_request):
8236         * remote-fileio.h (remote_fileio_request):
8237         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8238         remote_target parameter.
8239         (remote_notif_process, handle_notification): Adjust to pass down
8240         the remote.
8241         (remote_notif_state_allocate): Add remote_target parameter.  Save
8242         it.
8243         * remote-notif.h (struct remote_target): Forward declare.
8244         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8245         remote_target parameter.
8246         (struct remote_notif_state) <remote>: New field.
8247         (remote_notif_ack, remote_notif_parse): Add remote_target
8248         parameter.
8249         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8250         remote_target parameter.
8251         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8252         (threads_listing_context, rmt_thread_action, protocol_feature)
8253         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8254         (packet_result, struct threads_listing_context, remote_state):
8255         Move definitions and declarations higher up.
8256         (remote_target) <~remote_target>: Declare.
8257         (remote_download_command_source, remote_file_put, remote_file_get)
8258         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8259         (remote_hostio_pread_vFile, remote_hostio_send_command)
8260         (remote_hostio_set_filesystem, remote_hostio_open)
8261         (remote_hostio_close, remote_hostio_unlink, remote_state)
8262         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8263         (get_memory_write_packet_size, get_memory_read_packet_size)
8264         (append_pending_thread_resumptions, remote_detach_1)
8265         (append_resumption, remote_resume_with_vcont)
8266         (add_current_inferior_and_thread, wait_ns, wait_as)
8267         (process_stop_reply, remote_notice_new_inferior)
8268         (process_initial_stop_replies, remote_add_thread)
8269         (btrace_sync_conf, remote_btrace_maybe_reopen)
8270         (remove_new_fork_children, kill_new_fork_children)
8271         (discard_pending_stop_replies, stop_reply_queue_length)
8272         (check_pending_events_prevent_wildcard_vcont)
8273         (discard_pending_stop_replies_in_queue, stop_reply)
8274         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8275         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8276         (remote_interrupt_as, remote_interrupt_ns)
8277         (remote_get_noisy_reply, remote_query_attached)
8278         (remote_add_inferior, remote_current_thread, get_current_thread)
8279         (set_thread, set_general_thread, set_continue_thread)
8280         (set_general_process, write_ptid)
8281         (remote_unpack_thread_info_response, remote_get_threadinfo)
8282         (parse_threadlist_response, remote_get_threadlist)
8283         (remote_threadlist_iterator, remote_get_threads_with_ql)
8284         (remote_get_threads_with_qxfer)
8285         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8286         (get_offsets, remote_check_symbols, remote_supported_packet)
8287         (remote_query_supported, remote_packet_size)
8288         (remote_serial_quit_handler, remote_detach_pid)
8289         (remote_vcont_probe, remote_resume_with_hc)
8290         (send_interrupt_sequence, interrupt_query)
8291         (remote_notif_get_pending_events, fetch_register_using_p)
8292         (send_g_packet, process_g_packet, fetch_registers_using_g)
8293         (store_register_using_P, store_registers_using_G)
8294         (set_remote_traceframe, check_binary_download)
8295         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8296         (remote_xfer_live_readonly_partial, remote_read_bytes)
8297         (remote_send_printf, remote_flash_write, readchar)
8298         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8299         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8300         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8301         (extended_remote_disable_randomization, extended_remote_run)
8302         (send_environment_packet, extended_remote_environment_support)
8303         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8304         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8305         (packet_command): Now methods of ...
8306         (remote_target): ... this class.
8307         (m_remote_state) <remote_target>: New field.
8308         (struct remote_state) <stop_reply_queue,
8309         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8310         fields.
8311         (remote_state::remote_state): Allocate stop_reply_queue.
8312         (remote_state): Delete global.
8313         (get_remote_state_raw): Delete.
8314         (remote_target::get_remote_state): Allocate m_remote_state on
8315         demand.
8316         (get_current_remote_target): New.
8317         (remote_ops, extended_remote_ops): Delete.
8318         (wait_forever_enabled_p, remote_async_inferior_event_token):
8319         Delete, moved to struct remote_state.
8320         (remote_target::close): Delete self.  Destruction bits split to
8321         ...
8322         (remote_target::~remote_target): ... this.
8323         (show_memory_packet_size): Adjust to use
8324         get_current_remote_target.
8325         (struct protocol_feature) <func>: Add remote_target parameter.
8326         All callers adjusted.
8327         (curr_quit_handler_target): New.
8328         (remote_serial_quit_handler): Reimplement.
8329         (remote_target::open_1): Adjust to use get_current_remote_target.
8330         Heap-allocate remote_target/extended_remote_target instances.
8331         (vcont_builder::vcont_builder): Add remote_target parameter, and
8332         save it in m_remote.  All callers adjusted.
8333         (vcont_builder::m_remote): New field.
8334         (vcont_builder::restart, vcont_builder::flush)
8335         (vcont_builder::push_action): Use it.
8336         (remote_target::commit_resume): Use it.
8337         (struct queue_iter_param) <remote>: New field.
8338         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8339         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8340         (check_pending_event_prevents_wildcard_vcont_callback)
8341         (remote_target::check_pending_events_prevent_wildcard_vcont)
8342         (remote_target::discard_pending_stop_replies)
8343         (remote_target::discard_pending_stop_replies_in_queue)
8344         (remote_target::remote_notif_remove_queued_reply): Fill in
8345         'remote' field.
8346         (remote_notif_get_pending_events): New.
8347         (remote_target::readchar, remote_target::remote_serial_write):
8348         Save/restore curr_quit_handler_target.
8349         (putpkt): New.
8350         (kill_new_fork_children): Fill in 'remote' field.
8351         (packet_command): Use get_current_remote_target, defer to
8352         remote_target method of same name.
8353         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8354         parameter, and save it in m_remote.  All callers adjusted.
8355         (scoped_remote_fd::release): Use m_remote.
8356         (scoped_remote_fd::m_remote): New field.
8357         (remote_file_put, remote_file_get, remote_file_delete): Use
8358         get_current_remote_target, defer to remote_target method of same
8359         name.
8360         (remote_btrace_reset): Add remote_state paremeter.  Update all
8361         callers.
8362         (remote_async_inferior_event_handler). Pass down 'data'.
8363         (remote_new_objfile): Use get_current_remote_target.
8364         (remote_target::vcont_r_supported): New.
8365         (set_range_stepping): Use get_current_remote_target and
8366         remote_target::vcont_r_supported.
8367         (_initialize_remote): Don't allocate 'remote_state' and
8368         'stop_reply_queue' globals.
8369         * remote.h (struct remote_target): Forward declare.
8370         (getpkt, putpkt, remote_notif_get_pending_events): Add
8371         'remote_target' parameter.
8372
8373 2018-05-22  Pedro Alves  <palves@redhat.com>
8374
8375         * remote.c (vcont_builder): Now a class.  Make all data members
8376         private.
8377         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8378         Declare methods.
8379         (vcont_builder_restart): Rename to ...
8380         (vcont_builder::restart): ... this.
8381         (vcont_builder_flush): Rename to ...
8382         (vcont_builder::flush): ... this.
8383         (vcont_builder_push_action): Rename to ...
8384         (vcont_builder::push_action): ... this.
8385         (remote_target::commit_resume): Adjust.
8386
8387 2018-05-22  Pedro Alves  <palves@redhat.com>
8388
8389         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8390         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8391         (get_fixed_memory_packet_size): New.
8392         (get_memory_packet_size): Use it.
8393         (set_memory_packet_size): Don't override the config size with
8394         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8395         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8396         Don't refer to get_memory_packet_size if not connected to a remote
8397         target.  Show "(default)" if configured size is 0.
8398
8399 2018-05-22  Pedro Alves  <palves@redhat.com>
8400
8401         * remote.c (remote_target::mourn_inferior): Move
8402         discard_pending_stop_replies call here from ...
8403         (_initialize_remote): ... here.
8404
8405 2018-05-22  Pedro Alves  <palves@redhat.com>
8406
8407         * remote.c (compare_section_command): Remove set_general_process
8408         call.
8409
8410 2018-05-22  Pedro Alves  <palves@redhat.com>
8411
8412         * remote.c (struct packet_reg, struct remote_arch_state):
8413         Move higher up in the file.
8414         (remote_state) <m_arch_states>: Store remote_arch_state values
8415         instead of remote_arch_state pointers.
8416         (remote_state::get_remote_arch_state): Adjust.
8417
8418 2018-05-22  Pedro Alves  <palves@redhat.com>
8419
8420         * remote.c: Include <unordered_map>.
8421         (remote_state): Now a class.
8422         (remote_state) <get_remote_arch_state>: Declare method.
8423         <get_remote_arch_state>: New field.
8424         (remote_arch_state) <remote_arch_state>: Declare ctor.
8425         <regs>: Now a unique_ptr.
8426         (remote_gdbarch_data_handle): Delete.
8427         (get_remote_arch_state): Delete.
8428         (remote_state::get_remote_arch_state): New.
8429         (get_remote_state): Adjust to call remote_state's
8430         get_remote_arch_state method.
8431         (init_remote_state): Delete, bits factored out to ...
8432         (remote_arch_state::remote_arch_state): ... this new method.
8433         (get_remote_packet_size, get_memory_packet_size)
8434         (process_g_packet, remote_target::fetch_registers)
8435         (remote_target::prepare_to_store, store_registers_using_G)
8436         (remote_target::store_registers, remote_target::get_trace_status):
8437         Adjust to call remote_state's method.
8438         (_initialize_remote): Remove reference to
8439         remote_gdbarch_data_handle.
8440
8441 2018-05-22  Pedro Alves  <palves@redhat.com>
8442
8443         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8444         pread>: New method declarations.
8445         (remote_target::open_1): Adjust.
8446         (readahead_cache_invalidate): Rename to ...
8447         (readahead_cache::invalidate): ... this, and adjust to be a class
8448         method.
8449         (readahead_cache_invalidate_fd): Rename to ...
8450         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8451         class method.
8452         (remote_hostio_pwrite): Adjust.
8453         (remote_hostio_pread_from_cache): Rename to ...
8454         (readahead_cache::pread): ... this, and adjust to be a class
8455         method.
8456         (remote_hostio_close): Adjust.
8457
8458 2018-05-22  Pedro Alves  <palves@redhat.com>
8459
8460         * remote.c (remote_hostio_close_cleanup): Delete.
8461         (class scoped_remote_fd): New.
8462         (remote_file_put, remote_file_get): Use it.
8463
8464 2018-05-22  Pedro Alves  <palves@redhat.com>
8465
8466         (struct vCont_action_support): Use bool and initialize all fields.
8467         (struct readahead_cache): Initialize all fields.
8468         (remote_state): Use bool and initialize all fields.
8469         (remote_state::remote_state, remote_state::~remote_state): New.
8470         (new_remote_state): Delete.
8471         (_initialize_remote): Use new to allocate remote_state.
8472
8473 2018-05-22  Pedro Alves  <palves@redhat.com>
8474             張俊芝  <zjz@zjz.name>
8475
8476         PR gdb/22973
8477         * c-exp.y: Include "c-support.h".
8478         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8479         of tolower.  Use c_ident_is_alpha to scan names.
8480         * c-lang.c: Include "c-support.h".
8481         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8482         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8483         * c-support.h: New file, with bits factored out from ...
8484         * cp-name-parser.y: ... this file.
8485         Include "c-support.h".
8486         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8487         c-support.h and renamed.
8488         (symbol_end, yylex): Adjust.
8489
8490 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8491
8492         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8493         parameter type to CORE_ADDR.
8494         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8495         parameter type in declaration to CORE_ADDR.
8496         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8497         target_auxv_search to get AT_HWCAP and use the result to get the
8498         target description.
8499         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8500         to CORE_ADDR. Remove the cast of the return value to unsigned
8501         long. Fix error predicate of target_auxv_search.
8502         (ppc_linux_nat_target::read_description): Change the type of the
8503         hwcap variable to CORE_ADDR.
8504
8505 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8506
8507         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8508         if the size of fpscr is larger than 32 bits.
8509
8510 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8511
8512         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8513         (ppc32_linux_vsxregmap): New global.
8514         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8515         regcache_supply_regset, and regcache_collect_regset.
8516         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8517         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8518         (fetch_vsx_register, store_vsx_register): Remove.
8519         (fetch_vsx_registers): Add regno parameter. Get regset using
8520         ppc_linux_vsxregset. Use regset to supply registers.
8521         (store_vsx_registers): Add regno parameter. Get regset using
8522         ppc_linux_vsxregset. Use regset to collect registers.
8523         (fetch_register): Call fetch_vsx_registers instead of
8524         fetch_vsx_register.
8525         (store_register): Call store_vsx_registers instead of
8526         store_vsx_register.
8527         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8528         new regno parameter.
8529         (store_ppc_registers): Call store_vsx_registers with -1 for the
8530         new regno parameter.
8531         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8532         (ppc_collect_vsxregset): Remove.
8533
8534 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8535
8536         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8537         offset fields.
8538         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8539         for vector register offset fields.
8540         (ppc64_fbsd_reg_offsets): Likewise.
8541         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8542         to vector register offset fields.
8543         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8544         to vector register offset fields.
8545         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8546         vector register offset fields.
8547         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8548         initializers for vector register offset fields.
8549         (rs6000_aix64_reg_offsets): Likewise.
8550         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8551         (ppc_supply_vrregset): Remove.
8552         (ppc_collect_vrregset): Remove.
8553         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8554         (ppc_linux_vrregset) : New function.
8555         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8556         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8557         (ppc32_linux_vrregset): Remove.
8558         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8559         and use result instead of ppc32_linux_vrregset.
8560         (ppc32_linux_reg_offsets): Remove initializers for vector register
8561         offset fields.
8562         (ppc64_linux_reg_offsets): Likewise.
8563         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8564         * ppc-linux-nat.c: Include regset.h.
8565         (gdb_vrregset_t): Adjust comment to account for little-endian
8566         mode.
8567         (supply_vrregset, fill_vrregset): Remove.
8568         (fetch_altivec_register, store_altivec_register): Remove.
8569         (fetch_altivec_registers): Add regno parameter. Get regset using
8570         ppc_linux_vrregset. Use regset to supply registers.
8571         (store_altivec_registers): Add regno parameter. Get regset using
8572         ppc_linux_vrregset. Use regset to collect registers.
8573         (fetch_register): Call fetch_altivec_registers instead of
8574         fetch_altivec_register.
8575         (store_register): Call store_altivec_registers instead of
8576         store_altivec_register.
8577         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8578         the new regno parameter.
8579         (store_ppc_registers): Call store_altivec_registers with -1 for
8580         the new regno parameter.
8581
8582 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8583
8584         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8585         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8586         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8587         (gdb_vrregset_t): Change array type size to
8588         PPC_LINUX_SIZEOF_VRREGSET.
8589         (gdb_vsxregset_t): Change array type size to
8590         PPC_LINUX_SIZEOF_VSXREGSET.
8591         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8592         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8593         PPC_LINUX_SIZEOF_VSXREGSET.
8594
8595 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8596
8597         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8598         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8599         nat/ppc-linux.c.
8600         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8601         ppc_linux_target_wordsize with tid.
8602         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8603         wordsize with tid.
8604         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8605         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8606         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8607         tid parameter. Remove static specifier.
8608         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8609         (ppc_linux_target_wordsize): New declaration.
8610
8611 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8612
8613         * arch/ppc-linux-common.c: New file.
8614         * arch/ppc-linux-common.h: New file.
8615         * arch/ppc-linux-tdesc.h: New file.
8616         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8617         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8618         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8619         arch/ppc-linux-tdesc.h.
8620         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8621         arch/ppc-linux-tdesc.h.
8622         (ppc_linux_nat_target::read_description): Remove target
8623         description matching code. Fill a ppc_linux_features struct and
8624         call ppc_linux_match_description with it. Move comment about ISA
8625         2.05 to ppc-linux-common.c.
8626         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8627         arch/ppc-linux-tdesc.h.
8628         (ppc_linux_core_read_description): Remove target description
8629         matching code. Fill a ppc_linux_features struct and call
8630         ppc_linux_match_description with it.
8631         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8632         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8633         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8634         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8635         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8636         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8637         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8638         (tdesc_powerpc_e500l): Remove.
8639
8640 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8641
8642         * ada-lang.c (catch_assert_command): Pass empty string instead
8643         of NULL for excep_string argument.
8644
8645 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8646
8647         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8648         the width of the requested register exceeds the width of the
8649         `ptrace' data type.
8650
8651 2018-05-21  Tom Tromey  <tom@tromey.com>
8652
8653         * printcmd.c (output_command): Remove.
8654         (output_command_const): Rename to output_command.
8655         * valprint.h (output_command): Rename from output_command_const.
8656         * tracepoint.c (trace_dump_actions): Call output_command.
8657
8658 2018-05-21  Tom Tromey  <tom@tromey.com>
8659
8660         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8661         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8662         * ada-lang.h (create_ada_exception_catchpoint): Update.
8663         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8664         std::string.
8665         (create_excep_cond_exprs, ~ada_catchpoint)
8666         (should_stop_exception, print_one_exception)
8667         (print_mention_exception, print_recreate_exception): Update.
8668         (ada_get_next_arg): Remove.
8669         (catch_ada_exception_command_split): Use std::string.  Change type
8670         of "excep_string", "cond_string".
8671         (catch_ada_exception_command): Update.
8672         (create_ada_exception_catchpoint): Change type of excep_string.
8673         (ada_exception_sal): Remove excep_string parameter.
8674         (~ada_catchpoint): Remove.
8675
8676 2018-05-21  Tom Tromey  <tom@tromey.com>
8677
8678         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8679         cleanup.
8680
8681 2018-05-21  Tom Tromey  <tom@tromey.com>
8682
8683         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8684         Return unique_xmalloc_ptr.
8685         (print_it_exception): Update.
8686
8687 2018-05-21  Tom Tromey  <tom@tromey.com>
8688
8689         * tracepoint.c (trace_dump_actions): Use std::string.
8690
8691 2018-05-21  Tom Tromey  <tom@tromey.com>
8692
8693         * symfile.c (reread_symbols): Use std::string for original_name.
8694
8695 2018-05-21  Tom Tromey  <tom@tromey.com>
8696
8697         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8698         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8699         constructor.
8700
8701 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8702
8703         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8704         instance to...
8705         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8706         * objfiles.c (get_objfile_bfd_data): Allocate
8707         objfile_per_bfd_storage with obstack_new when allocating on
8708         obstack.
8709
8710 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8711
8712         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8713         OBSTACK_ZALLOC.
8714         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8715         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8716         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8717         (add_pending): Likewise.
8718         (parse_symbol): Likewise.
8719         (parse_partial_symbols): Likewise.
8720         (psymtab_to_symtab_1): Likewise.
8721         (new_psymtab): Likewise.
8722         (elfmdebug_build_psymtabs): Likewise.
8723         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8724         * objfiles.c (get_objfile_bfd_data): Likewise.
8725         (objfile_register_static_link): Likewise.
8726         * psymtab.c (allocate_psymtab): Likewise.
8727         * stabsread.c (read_member_functions): Likewise.
8728         * xcoffread.c (xcoff_end_psymtab): Likewise.
8729
8730 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8731
8732         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8733         compiler supports std::is_trivially_constructible.
8734         * common/poison.h: Include obstack.h.
8735         (IsMallocable): Define to is_trivially_constructible if the
8736         compiler supports it, define to true_type otherwise.
8737         (xobnew): New.
8738         (XOBNEW): Redefine.
8739         (xobnewvec): New.
8740         (XOBNEWVEC): Redefine.
8741         * gdb_obstack.h (obstack_zalloc): New.
8742         (OBSTACK_ZALLOC): Redefine.
8743         (obstack_calloc): New.
8744         (OBSTACK_CALLOC): Redefine.
8745         (obstack_new): New.
8746         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8747         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8748         gdbarch.c.
8749         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8750         obstack_calloc/obstack_zalloc.
8751         (gdbarch_obstack_zalloc): Remove.
8752         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8753
8754 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8755
8756         * stack.c (backtrace_command_1): Remove useless variable int i.
8757
8758 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8759
8760         * stack.c (print_frame_info): Fix comment.
8761
8762 2018-05-18  Tom Tromey  <tom@tromey.com>
8763
8764         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8765         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8766         (~dwarf2_per_objfile): Update
8767         (dwarf2_get_dwz_file): Use new.
8768         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8769         unique_ptr.
8770
8771 2018-05-18  Tom Tromey  <tom@tromey.com>
8772
8773         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8774         unique_ptr.
8775         * dwarf2read.c (struct dwp_file): Add constructor and
8776         initializers.
8777         (open_and_init_dwp_file): Return a unique_ptr.
8778         (dwarf2_per_objfile, create_dwp_hash_table)
8779         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8780         (lookup_dwo_unit_in_dwp): Update.
8781         (open_and_init_dwp_file, get_dwp_file): Update.
8782
8783 2018-05-18  Tom Tromey  <tom@tromey.com>
8784
8785         * dwarf2read.c (dwarf2_per_objfile): Update.
8786         (struct mapped_index): Add initializers.
8787         (dwarf2_read_index): Use new.
8788         (dw2_symtab_iter_init): Update.
8789         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8790         unique_ptr.
8791
8792 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8793
8794         * dwarf2read.c (mapped_index) <total_size>: Remove.
8795
8796 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8797
8798         * unittests/format_pieces-selftests.c (test_format_specifier):
8799         Add ARI comments.
8800
8801 2018-05-18  Tom Tromey  <tom@tromey.com>
8802
8803         * c-typeprint.c (maybe_print_hole): New function.
8804         (c_print_type_struct_field_offset): Update.
8805         (c_type_print_base_struct_union): Call maybe_print_hole.
8806
8807 2018-05-17  Keith Seitz  <keiths@redhat.com>
8808
8809         * breakpoint.c (build_bpstat_chain): New function, moved from
8810         bpstat_stop_status.
8811         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8812         If no stop chain is passed, call build_bpstat_chain to build it.
8813         * breakpoint.h (build_bpstat_chain): Declare.
8814         (bpstat_stop_status): Move documentation here from breakpoint.c.
8815         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8816         build the stop chain and pass it to skip_inline_frames.
8817         Pass this stop chain to bpstat_stop_status.
8818         * inline-frame.c: Include breakpoint.h.
8819         (stopped_by_user_bp_inline_frame): New function.
8820         (skip_inline_frames): Add parameter `stop_chain'.
8821         Move documention to inline-frame.h.
8822         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8823         whether the frame should be elided.
8824         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8825         Add moved documentation and update for new parameter.
8826
8827 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8828
8829         PR cli/14975
8830         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8831         unittests/format_pieces-selftests.c.
8832         * common/format.h (format_piece) <operator==>: New.
8833         (format_pieces) <operator[]>: Remove.
8834         * common/format.c (format_pieces::format_pieces): Handle \e.
8835         * unittests/format_pieces-selftests.c: New.
8836
8837 2018-05-17  Tom Tromey  <tom@tromey.com>
8838
8839         PR symtab/23010:
8840         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8841         (dw2_instantiate_symtab): Add skip_partial parameter.
8842         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8843         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8844         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8845         (dw2_expand_symtabs_matching_one)
8846         (dw2_find_pc_sect_compunit_symtab)
8847         (dw2_debug_names_lookup_symbol)
8848         (dw2_debug_names_expand_symtabs_for_function): Update.
8849         (init_cutu_and_read_dies): Add skip_partial parameter.
8850         (process_psymtab_comp_unit, build_type_psymtabs_1)
8851         (process_skeletonless_type_unit, load_partial_comp_unit)
8852         (psymtab_to_symtab_1): Update.
8853         (load_full_comp_unit): Add skip_partial parameter.
8854         (process_imported_unit_die, dwarf2_read_addr_index)
8855         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8856         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8857         (read_signatured_type): Update.
8858
8859 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8860
8861         * value.c (release_value): Remove unused variable.
8862         (record_latest_value): Likewise.
8863         (access_value_history): Likewise.
8864         (preserve_values): Likewise.
8865
8866 2018-05-17  Tom Tromey  <tom@tromey.com>
8867
8868         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8869         Initialize.
8870
8871 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8872
8873         PR gdb/22286
8874         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8875         Also handle registers whose width is not a multiple of
8876         PTRACE_TYPE_RET.
8877         (linux_nat_trad_target::store_register): Likewise.
8878
8879 2018-05-16  Tom Tromey  <tom@tromey.com>
8880
8881         * gdbcore.h (core_bfd): Redefine.
8882         * corelow.c (core_target::close): Update.
8883         (core_target_open): Update.
8884         * progspace.h (struct program_space) <cbfd>: Now a
8885         gdb_bfd_ref_ptr.
8886
8887 2018-05-16  Tom Tromey  <tom@tromey.com>
8888
8889         PR cli/19551:
8890         * symfile-add-flags.h (enum symfile_add_flags)
8891         <SYMFILE_NOT_FILENAME>: New constant.
8892         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8893         objfile name from BFD.
8894         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8895         * minidebug.c (find_separate_debug_file_in_section): Put
8896         ".gnu_debugdata" into BFD's file name.
8897
8898 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8899
8900         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8901         Remove.
8902
8903 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8904
8905         PR binutils/21446
8906         * aarch64-tdep.c (aarch64_analyze_prologue,
8907         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8908         Indicate not interested in errors.
8909
8910 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8911
8912         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8913         Supply the MIPS_ZERO_REGNUM register.
8914
8915 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8916
8917         * mips-tdep.c (mask_address_var): Make variable static.
8918
8919 2018-05-14  Tom Tromey  <tom@tromey.com>
8920
8921         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8922
8923 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8924
8925         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8926         FXSAVE_ADDR for the mxcsr register.
8927
8928 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8929
8930         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8931
8932 2018-05-11  Pedro Alves  <palves@redhat.com>
8933
8934         * corelow.c (core_target) <core_target>: No longer inline.
8935         Initialize m_core_gdbarch, m_core_vec and build the section table
8936         here.
8937         <~core_target>: New.
8938         <core_gdbarch, get_core_register_section>: New methods.
8939         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8940         factored out from ...
8941         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8942         (core_ops): Delete.
8943         (sniff_core_bfd): Add gdbarch parameter.
8944         (core_close): Delete, merged into ...
8945         (core_target::close): ... here.  Delete self.
8946         (core_close_cleanup): Delete.
8947         (core_target_open): Allocate a core_target on the heap.  Use a
8948         unique_ptr instead of a cleanup.  Bits moved into the core_target
8949         ctor.  Adjust to use core_target methods instead of globals.
8950         (get_core_register_section): Rename to ...
8951         (core_target::get_core_register_section): ... this and adjust.
8952         (struct get_core_registers_cb_data): New.
8953         (get_core_registers_cb): Use it.  Use bool.
8954         (core_target::fetch_registers, core_target::files_info)
8955         (core_target::xfer_partial, core_target::read_description)
8956         (core_target::pid_to, core_target::thread_name): Adjust to
8957         reference class fields instead of globals.
8958         * target.h (struct target_ops_deleter, target_ops_up): New.
8959
8960 2018-05-11  Pedro Alves  <palves@redhat.com>
8961
8962         * corefile.c (core_file_command): Move to corelow.c.
8963         * corelow.c (the_core_target): Delete.
8964         (core_file_command): Moved from corefile.c.  Check exec_bfd
8965         instead of the_core_target.  Use target_detach instead of calling
8966         into the_core_target directly.
8967         (maybe_say_no_core_file_now): New.
8968         (core_target::detach): Use it.
8969         (_initialize_corelow): Remove references to the_core_target.
8970         * gdbcore.h (the_core_target): Delete.
8971
8972 2018-05-11  Tom Tromey  <tromey@redhat.com>
8973             Pedro Alves  <palves@redhat.com>
8974
8975         * corefile.c (core_bfd): Remove.
8976         * gdbcore.h (core_bfd): Now a macro.
8977         * progspace.h (struct program_space) <cbfd>: New field.
8978
8979 2018-05-11  Tom Tromey  <tom@tromey.com>
8980
8981         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8982         gdb::def_vector.
8983
8984 2018-05-10  Tom Tromey  <tom@tromey.com>
8985
8986         * configure: Rebuild.
8987         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8988
8989 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8990
8991         PR server/23158:
8992         * regformats/regdat.sh: Adjust script, following the addition
8993         of the new expedite_regs parameter to init_target_desc.
8994
8995 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8996     
8997         PR gdb/23127
8998         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8999         set_gdbarch_significant_addr_bit.
9000         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9001         set_gdbarch_significant_addr_bit.
9002         * utils.c (address_significant): Update to sign extend addr.
9003
9004 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9005
9006         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9007         (xtensa_linux_init_abi): Limit tdep->num_regs by
9008         tdep->num_nopriv_regs.
9009         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9010         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9011         not initialized.
9012
9013 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9014
9015         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9016
9017 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9018
9019         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9020         (I387_MXCSR_INIT_VAL): New constant.
9021         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9022         buffer if it was supplied by the inferior.
9023         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9024         (i387_xsave_get_clear_bv): New function.
9025         (i387_supply_xsave): Only read x87 control registers from the
9026         xsave buffer if the feature is enabled, and the state will have
9027         been written, otherwise, provide a suitable default.
9028         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9029         including x87 control registers.  Update control registers if they
9030         have changed from the default value, and mark features as enabled
9031         as required.
9032         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9033
9034 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9035
9036         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9037
9038 2018-05-07  Tom Tromey  <tom@tromey.com>
9039
9040         * configure: Rebuild.
9041         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9042
9043 2018-05-07  Tom Tromey  <tom@tromey.com>
9044
9045         PR tdep/20362:
9046         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9047         bit.  Use correct value for VDIV.
9048
9049 2018-05-04  Tom Tromey  <tom@tromey.com>
9050
9051         * configure: Rebuild.
9052         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9053
9054 2018-05-04  Tom Tromey  <tom@tromey.com>
9055
9056         * linux-record.c (record_linux_system_call) <case
9057         RECORD_SYS_RECVFROM>: Add "break".
9058
9059 2018-05-04  Tom Tromey  <tom@tromey.com>
9060
9061         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9062         Add missing "break".
9063         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9064         Add missing "break".
9065
9066 2018-05-04  Tom Tromey  <tom@tromey.com>
9067
9068         * rs6000-tdep.c (ppc_process_record_op4)
9069         (ppc_process_record_op63): Add fall-through comment.
9070
9071 2018-05-04  Tom Tromey  <tom@tromey.com>
9072
9073         * i386-tdep.c (i386_process_record): Add fall-through comment.
9074
9075 2018-05-04  Tom Tromey  <tom@tromey.com>
9076
9077         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9078         comment.
9079
9080 2018-05-04  Tom Tromey  <tom@tromey.com>
9081
9082         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9083         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9084         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9085         comment.
9086         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9087         comment.
9088         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9089         comment.
9090
9091 2018-05-04  Tom Tromey  <tom@tromey.com>
9092
9093         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9094
9095 2018-05-04  Tom Tromey  <tom@tromey.com>
9096
9097         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9098         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9099         * symfile.c (section_is_mapped): Fix fall-through comment.
9100         * stabsread.c (define_symbol, read_member_functions): Fix
9101         fall-through comment.
9102         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9103         comment.
9104         * remote.c (remote_wait_as): Fix fall-through comment.
9105         * p-exp.y (yylex): Fix fall-through comment.
9106         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9107         comment.
9108         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9109         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9110         * jv-exp.y (yylex): Fix fall-through comment.
9111         * go-exp.y (lex_one_token): Fix fall-through comment.
9112         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9113         fall-through comment.
9114         * f-exp.y (yylex): Fix fall-through comment.
9115         * dwarf2read.c (process_die): Fix fall-through comments.
9116         * dbxread.c (process_one_symbol): Fix fall-through comment.
9117         * d-exp.y (lex_one_token): Fix fall-through comment.
9118         * cp-name-parser.y (yylex): Fix fall-through comment.
9119         * coffread.c (coff_symtab_read): Fix fall-through comment.
9120         * c-exp.y (lex_one_token): Fix fall-through comment.
9121         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9122         comment.
9123         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9124         comment.
9125
9126 2018-05-04  Tom Tromey  <tom@tromey.com>
9127
9128         PR python/22730:
9129         * NEWS: Mention gdb.execute change.
9130         * gdbcmd.h (execute_control_command): Don't declare.
9131         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9132         execute_control_commands, execute_control_commands_to_string.
9133         * cli/cli-script.h (execute_control_commands)
9134         (execute_control_commands_to_string): Declare.
9135         (execute_control_command): Add from_tty parameter.
9136         * cli/cli-script.c (execute_control_commands)
9137         (execute_control_commands_to_string): New functions.
9138         (execute_user_command): Use execute_control_commands.
9139         (execute_control_command_1): Add "from_tty" parameter.  Update.
9140         (execute_control_command): Likewise.
9141
9142 2018-05-04  Tom Tromey  <tom@tromey.com>
9143
9144         PR python/22731:
9145         * NEWS: Mention that breakpoint commands are writable.
9146         * python/py-breakpoint.c (bppy_set_commands): New function.
9147         (breakpoint_object_getset) <"commands">: Use it.
9148
9149 2018-05-04  Tom Tromey  <tom@tromey.com>
9150
9151         * tracepoint.c (actions_command): Update.
9152         * mi/mi-cmd-break.c (mi_command_line_array)
9153         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9154         (mi_read_next_line): Remove.
9155         (mi_cmd_break_commands): Update.
9156         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9157         function_view.
9158         * cli/cli-script.c (get_command_line): Update.
9159         (process_next_line): Use function_view.  Constify.
9160         (recurse_read_control_structure, read_command_lines)
9161         (read_command_lines_1): Change argument types to function_view.
9162         (do_define_command, document_command): Update.
9163         * breakpoint.h (check_tracepoint_command): Don't declare.
9164         * breakpoint.c (check_tracepoint_command): Remove.
9165         (commands_command_1, create_tracepoint_from_upload): Update.
9166
9167 2018-05-04  Tom Tromey  <tom@tromey.com>
9168
9169         PR gdb/11750:
9170         * cli/cli-script.h (enum command_control_type) <define_control>:
9171         New constant.
9172         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9173         (build_command_line, execute_control_command_1)
9174         (process_next_line): Likewise.
9175         (do_define_command): New function, extracted from define_command.
9176         (define_command): Use it.
9177
9178 2018-05-04  Tom Tromey  <tom@tromey.com>
9179
9180         * tracepoint.c (actions_command): Update.
9181         * cli/cli-script.h (read_command_lines): Update.
9182         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9183         (MAX_TMPBUF): Remove define.
9184         (define_command): Use string_printf.
9185         (document_command): Likewise.
9186         * breakpoint.c (commands_command_1): Update.
9187
9188 2018-05-04  Tom Tromey  <tom@tromey.com>
9189
9190         * top.c (execute_command): Update.
9191         * cli/cli-script.h (print_command_lines): Now varargs.
9192         * cli/cli-script.c (print_command_lines): Now varargs.
9193         (execute_control_command_1) <case while_control, case if_control>:
9194         Update.
9195
9196 2018-05-04  Tom Tromey  <tom@tromey.com>
9197
9198         * tracepoint.c (all_tracepoint_actions): Rename from
9199         all_tracepoint_actions_and_cleanup.  Change return type.
9200         (actions_command, encode_actions_1, encode_actions)
9201         (trace_dump_actions, tdump_command): Update.
9202         * remote.c (remote_download_command_source): Update.
9203         * python/python.c (gdbpy_eval_from_control_command)
9204         (python_command, python_interactive_command): Update.
9205         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9206         * guile/guile.c (guile_command)
9207         (gdbscm_eval_from_control_command, guile_command): Update.
9208         * compile/compile.c (compile_code_command)
9209         (compile_print_command, compile_to_object): Update.
9210         * cli/cli-script.h (struct command_lines_deleter): New.
9211         (counted_command_line): New typedef.
9212         (struct command_line): Add constructor, destructor.
9213         <body_list>: Remove.
9214         <body_list_0, body_list_1>: New members.
9215         (command_line_up): Remove typedef.
9216         (read_command_lines, read_command_lines_1, get_command_line):
9217         Update.
9218         (copy_command_lines): Don't declare.
9219         * cli/cli-script.c (build_command_line): Use "new".
9220         (get_command_line): Return counted_command_line.
9221         (print_command_lines, execute_user_command)
9222         (execute_control_command_1, while_command, if_command): Update.
9223         (realloc_body_list): Remove.
9224         (process_next_line, recurse_read_control_structure): Update.
9225         (read_command_lines, read_command_lines_1): Return counted_command_line.
9226         (free_command_lines): Use "delete".
9227         (copy_command_lines): Remove.
9228         (define_command, document_command, show_user_1): Update.
9229         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9230         a counted_command_line.
9231         * breakpoint.h (counted_command_line): Remove typedef.
9232         (breakpoint_set_commands): Update.
9233         * breakpoint.c (check_no_tracepoint_commands)
9234         (validate_commands_for_breakpoint): Update.
9235         (breakpoint_set_commands): Change commands to be a
9236         counted_command_line.
9237         (commands_command_1, update_dprintf_command_list)
9238         (create_tracepoint_from_upload): Update.
9239
9240 2018-05-04  Tom Tromey  <tom@tromey.com>
9241
9242         * cli/cli-decode.h (cmd_list_element): New constructor.
9243         (~cmd_list_element): New destructor.
9244         (struct cmd_list_element): Add initializers.
9245         * cli/cli-decode.c (do_add_cmd): Use "new".
9246         (delete_cmd): Use "delete".
9247
9248 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9249             Pedro Alves <palves@redhat.com>
9250
9251         PR breakpoints/19806 and support for PR external/20207.
9252         * NEWS: Mention Aarch64 watchpoint improvements.
9253         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9254         watchpoints and PR external/20207 watchpoints.
9255         * nat/aarch64-linux-hw-point.c
9256         (kernel_supports_any_contiguous_range): New.
9257         (aarch64_watchpoint_offset): New.
9258         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9259         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9260         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9261         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9262         next_addr_orig_p.  Support PR external/20207 watchpoints.
9263         (aarch64_downgrade_regs): New.
9264         (aarch64_dr_state_insert_one_point): New parameters offset and
9265         addr_orig.
9266         (aarch64_dr_state_remove_one_point): Likewise.
9267         (aarch64_handle_breakpoint): Update caller.
9268         (aarch64_handle_aligned_watchpoint): Likewise.
9269         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9270         aligned_offset.
9271         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9272         aarch64_downgrade_regs.
9273         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9274         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9275         (DR_CONTROL_MASK): ... this.
9276         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9277         (unsigned int aarch64_watchpoint_offset): New prototype.
9278         (aarch64_linux_set_debug_regs): Remove const from state.
9279         * utils.c (align_up, align_down): Move to ...
9280         * common/common-utils.c (align_up, align_down): ... here.
9281         * utils.h (align_up, align_down): Move to ...
9282         * common/common-utils.h (align_up, align_down): ... here.
9283
9284 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9285
9286         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9287         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9288         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9289         Re-implement to match the ABI as summarized in GCC's
9290         gcc/config/sparc/sparc.c.  All callers updated.
9291         (sparc32_store_arguments): Remove assertion.
9292
9293 2018-05-04  Tom Tromey  <tom@tromey.com>
9294
9295         * printcmd.c: Don't include tui.h.
9296         (decode_format): Use skip_spaces.
9297
9298 2018-05-04  Tom Tromey  <tom@tromey.com>
9299
9300         PR gdb/22619:
9301         * printcmd.c (last_count): New global.
9302         (x_command): Use saved count when repeating.
9303
9304 2018-05-04  Tom Tromey  <tom@tromey.com>
9305
9306         * nto-procfs.c (do_closedir_cleanup): Remove.
9307         (procfs_pidlist): Use gdb_dir_up.
9308         * procfs.c (do_closedir_cleanup): Remove.
9309         (proc_update_threads): Use gdb_dir_up.
9310         * common/filestuff.h (struct gdb_dir_deleter): New.
9311         (gdb_dir_up): New typedef.
9312
9313 2018-05-04  Tom Tromey  <tom@tromey.com>
9314
9315         * ada-lang.c (print_mention_exception): Use std::string.
9316
9317 2018-05-04  Tom Tromey  <tom@tromey.com>
9318
9319         * ada-lang.c (create_excep_cond_exprs): Update.
9320         (ada_exception_catchpoint_cond_string): Use std::string.
9321
9322 2018-05-04  Tom Tromey  <tom@tromey.com>
9323
9324         * ada-lang.c (xget_renaming_scope): Return std::string.
9325         (old_renaming_is_invisible): Update.
9326
9327 2018-05-04  Tom Tromey  <tom@tromey.com>
9328
9329         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9330         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9331
9332 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9333
9334         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9335
9336 2018-05-04  Tom Tromey  <tom@tromey.com>
9337
9338         * remote.c (remote_query_supported_append): Change type.
9339         (remote_check_symbols): Update.
9340
9341 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9342
9343         PR gdb/11420
9344         * configure.ac: Prepend libpython.
9345         * python/python-config.py: Likewise.
9346         * configure: Regenerate.
9347
9348 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9349
9350         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9351
9352 2018-05-03  Pedro Alves  <palves@redhat.com>
9353
9354         * s390-linux-nat.c
9355         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9356         override.  Write 'true' instead of '1'.
9357         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9358         declaration.
9359
9360 2018-05-02  Pedro Alves  <palves@redhat.com>
9361
9362         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9363         add_inf_child_target.
9364         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9365         add_inf_child_target.
9366         * aix-thread.c (aix_thread_target_info): New.
9367         (aix_thread_target) <shortname, longname, doc>: Delete.
9368         <info>: New.
9369         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9370         add_inf_child_target.
9371         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9372         add_inf_child_target.
9373         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9374         add_inf_child_target.
9375         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9376         add_inf_child_target.
9377         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9378         add_inf_child_target.
9379         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9380         add_inf_child_target.
9381         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9382         add_inf_child_target.
9383         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9384         add_inf_child_target.
9385         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9386         add_inf_child_target.
9387         * bfd-target.c (target_bfd_target_info): New.
9388         (target_bfd) <shortname, longname, doc>: Delete.
9389         <info>: New.
9390         * bsd-kvm.c (bsd_kvm_target_info): New.
9391         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9392         <info>: New.
9393         (bsd_kvm_target::open): Rename to ...
9394         (bsd_kvm_target_open): ... this.  Adjust.
9395         * bsd-uthread.c (bsd_uthread_target_info): New.
9396         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9397         <info>: New.
9398         * corefile.c (core_file_command): Adjust.
9399         * corelow.c (core_target_info): New.
9400         (core_target) <shortname, longname, doc>: Delete.
9401         <info>: New.
9402         (core_target::open): Rename to ...
9403         (core_target_open): ... this.  Adjust.
9404         * ctf.c (ctf_target_info): New.
9405         (ctf_target) <shortname, longname, doc>: Delete.
9406         <info>: New.
9407         (ctf_target::open): Rename to ...
9408         (ctf_target_open): ... this.
9409         (_initialize_ctf): Adjust.
9410         * exec.c (exec_target_info): New.
9411         (exec_target) <shortname, longname, doc>: Delete.
9412         <info>: New.
9413         (exec_target::open): Rename to ...
9414         (exec_target_open): ... this.
9415         * gdbcore.h (core_target_open): Declare.
9416         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9417         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9418         add_inf_child_target.
9419         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9420         add_inf_child_target.
9421         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9422         add_inf_child_target.
9423         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9424         add_inf_child_target.
9425         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9426         add_inf_child_target.
9427         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9428         add_inf_child_target.
9429         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9430         add_inf_child_target.
9431         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9432         add_inf_child_target.
9433         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9434         add_inf_child_target.
9435         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9436         add_inf_child_target.
9437         * inf-child.c (inf_child_target_info): New.
9438         (inf_child_target::info): New.
9439         (inf_child_open_target): Remove 'target' parameter.  Use
9440         get_native_target instead.
9441         (inf_child_target::open): Delete.
9442         (add_inf_child_target): New.
9443         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9444         Delete.
9445         <info>: New.
9446         (add_inf_child_target): Declare.
9447         (inf_child_open_target): Declare.
9448         * linux-thread-db.c (thread_db_target_info): New.
9449         (thread_db_target) <shortname, longname, doc>: Delete.
9450         <info>: New.
9451         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9452         add_inf_child_target.
9453         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9454         add_inf_child_target.
9455         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9456         add_inf_child_target.
9457         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9458         add_inf_child_target.
9459         * make-target-delegates (print_class): Adjust.
9460         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9461         add_inf_child_target.
9462         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9463         add_inf_child_target.
9464         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9465         add_inf_child_target.
9466         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9467         add_inf_child_target.
9468         * nto-procfs.c (nto_native_target_info): New.
9469         (nto_procfs_target_native) <shortname, longname, doc>:
9470         Delete.
9471         <info>: New.
9472         (nto_procfs_target_info): New.
9473         (nto_procfs_target_procfs) <shortname, longname, doc>:
9474         Delete.
9475         <info>: New.
9476         (init_procfs_targets): Adjust.
9477         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9478         add_inf_child_target.
9479         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9480         add_inf_child_target.
9481         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9482         add_inf_child_target.
9483         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9484         add_inf_child_target.
9485         * ravenscar-thread.c (ravenscar_target_info): New.
9486         (ravenscar_thread_target) <shortname, longname, doc>:
9487         Delete.
9488         <info>: New.
9489         * record-btrace.c (record_btrace_target_info):
9490         (record_btrace_target) <shortname, longname, doc>: Delete.
9491         <info>: New.
9492         (record_btrace_target::open): Rename to ...
9493         (record_btrace_target_open): ... this.  Adjust.
9494         * record-full.c (record_longname, record_doc): New.
9495         (record_full_base_target) <shortname, longname, doc>: Delete.
9496         <info>: New.
9497         (record_full_target_info): New.
9498         (record_full_target): <shortname>: Delete.
9499         <info>: New.
9500         (record_full_core_open_1, record_full_open_1): Update comments.
9501         (record_full_base_target::open): Rename to ...
9502         (record_full_open): ... this.
9503         (cmd_record_full_restore): Update.
9504         (_initialize_record_full): Update.
9505         * remote-sim.c (remote_sim_target_info): New.
9506         (gdbsim_target) <shortname, longname, doc>: Delete.
9507         <info>: New.
9508         (gdbsim_target::open): Rename to ...
9509         (gdbsim_target_open): ... this.
9510         (_initialize_remote_sim): Adjust.
9511         * remote.c (remote_doc): New.
9512         (remote_target_info): New.
9513         (remote_target) <shortname, longname, doc>: Delete.
9514         <info>: New.
9515         (extended_remote_target_info): New.
9516         (extended_remote_target) <shortname, longname, doc>: Delete.
9517         <info>: New.
9518         (remote_target::open_1): Make static.  Adjust.
9519         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9520         * s390-linux-nat.c (_initialize_s390_nat): Use
9521         add_inf_child_target.
9522         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9523         add_inf_child_target.
9524         * sol-thread.c (thread_db_target_info): New.
9525         (sol_thread_target) <shortname, longname, doc>: Delete.
9526         <info>: New.
9527         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9528         add_inf_child_target.
9529         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9530         add_inf_child_target.
9531         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9532         add_inf_child_target.
9533         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9534         add_inf_child_target.
9535         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9536         add_inf_child_target.
9537         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9538         add_inf_child_target.
9539         * spu-linux-nat.c (_initialize_spu_nat): Use
9540         add_inf_child_target.
9541         * spu-multiarch.c (spu_multiarch_target_info): New.
9542         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9543         <info>: New.
9544         * target-delegates.c: Regenerate.
9545         * target.c: Include <unordered_map>.
9546         (target_ops_p): Delete.
9547         (DEF_VEC_P(target_ops_p)): Delete.
9548         (target_factories): New.
9549         (test_target_info): New.
9550         (test_target_ops::info): New.
9551         (open_target): Adjust to use target_factories.
9552         (add_target_with_completer): Rename to ...
9553         (add_target): ... this.  Change prototype.  Register target_info
9554         and open callback in target_factories.  Register target_info in
9555         command context instead of target_ops.
9556         (add_target): Delete old implementation.
9557         (add_deprecated_target_alias): Change prototype.  Adjust.
9558         (the_native_target): New.
9559         (set_native_target, get_native_target): New.
9560         (find_default_run_target): Use the_native_target.
9561         (find_attach_target, find_run_target): Simplify.
9562         (target_ops::open): Delete.
9563         (dummy_target_info): New.
9564         (dummy_target::shortname, dummy_target::longname)
9565         (dummy_target::doc): Delete.
9566         (dummy_target::info): New.
9567         (debug_target::shortname, debug_target::longname)
9568         (debug_target::doc): Delete.
9569         (debug_target::info): New.
9570         * target.h (struct target_info): New.
9571         (target_ops::~target_ops): Add comment.
9572         (target_ops::info): New.
9573         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9574         longer virtual.  Implement in terms of target_info.
9575         (set_native_target, get_native_target): Declare.
9576         (target_open_ftype): New.
9577         (add_target, add_target_with_completer)
9578         (add_deprecated_target_alias): Change prototype.
9579         (test_target) <shortname, longname, doc>: Delete.
9580         <info>: New.
9581         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9582         add_inf_child_target.
9583         * tracefile-tfile.c (tfile_target_info): New.
9584         (tfile_target) <shortname, longname, doc>: Delete.
9585         <info>: New.
9586         (tfile_target::open): Rename to ...
9587         (tfile_target_open): ... this.
9588         (_initialize_tracefile_tfile): Adjust.
9589         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9590         add_inf_child_target.
9591         * windows-nat.c (_initialize_windows_nat): Use
9592         add_inf_child_target.
9593         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9594         add_inf_child_target.
9595
9596 2018-05-02  Pedro Alves  <palves@redhat.com>
9597
9598         * linux-nat.h (linux_nat_target) <low_new_thread,
9599         low_delete_thread, low_new_fork, low_forget_process,
9600         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9601         New virtual methods.
9602         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9603         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9604         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9605         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9606         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9607         Delete.
9608         * linux-fork.c (delete_fork): Adjust to call low method.
9609         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9610         (linux_nat_new_fork, linux_nat_forget_process_hook)
9611         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9612         (linux_nat_status_is_event):
9613         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9614         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9615         to call low method.
9616         (sigtrap_is_event): Rename to ...
9617         (linux_nat_target::low_status_is_event): ... this.
9618         (linux_nat_set_status_is_event): Delete.
9619         (save_stop_reason, linux_nat_wait_1)
9620         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9621         low methods.
9622         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9623         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9624         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9625         (linux_nat_set_prepare_to_resume): Delete.
9626         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9627         low virtual methods.
9628         * amd64-linux-nat.c: Likewise.
9629         * arm-linux-nat.c: Likewise.
9630         * i386-linux-nat.c: Likewise.
9631         * ia64-linux-nat.c: Likewise.
9632         * mips-linux-nat.c: Likewise.
9633         * ppc-linux-nat.c: Likewise.
9634         * s390-linux-nat.c: Likewise.
9635         * sparc64-linux-nat.c: Likewise.
9636         * x86-linux-nat.c: Likewise.
9637         * x86-linux-nat.h: Include "nat/x86-linux.h".
9638         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9639         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9640         Override methods.
9641
9642 2018-05-02  Pedro Alves  <palves@redhat.com>
9643
9644         * target.h (target_ops)
9645         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9646         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9647         stopped_by_watchpoint, have_continuable_watchpoint,
9648         stopped_data_address, watchpoint_addr_within_range,
9649         can_accel_watchpoint_condition, can_run, thread_alive,
9650         has_all_memory, has_memory, has_stack, has_registers,
9651         has_execution, can_async_p, is_async_p, supports_non_stop,
9652         always_non_stop_p, can_execute_reverse, supports_multi_process,
9653         supports_enable_disable_tracepoint,
9654         supports_disable_randomization, supports_string_tracing,
9655         supports_evaluation_of_breakpoint_conditions,
9656         can_run_breakpoint_commands, filesystem_is_local,
9657         can_download_tracepoint, get_trace_state_variable_value,
9658         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9659         record_is_replaying, record_will_replay,
9660         augmented_libraries_svr4_read>: Adjust to return bool.
9661         * aarch64-linux-nat.c: All implementations adjusted.
9662         * aix-thread.c: All implementations adjusted.
9663         * arm-linux-nat.c: All implementations adjusted.
9664         * breakpoint.c: All implementations adjusted.
9665         * bsd-kvm.c: All implementations adjusted.
9666         * bsd-uthread.c: All implementations adjusted.
9667         * corelow.c: All implementations adjusted.
9668         * ctf.c: All implementations adjusted.
9669         * darwin-nat.c: All implementations adjusted.
9670         * darwin-nat.h: All implementations adjusted.
9671         * exec.c: All implementations adjusted.
9672         * fbsd-nat.c: All implementations adjusted.
9673         * fbsd-nat.h: All implementations adjusted.
9674         * gnu-nat.c: All implementations adjusted.
9675         * gnu-nat.h: All implementations adjusted.
9676         * go32-nat.c: All implementations adjusted.
9677         * ia64-linux-nat.c: All implementations adjusted.
9678         * inf-child.c: All implementations adjusted.
9679         * inf-child.h: All implementations adjusted.
9680         * inf-ptrace.c: All implementations adjusted.
9681         * inf-ptrace.h: All implementations adjusted.
9682         * linux-nat.c: All implementations adjusted.
9683         * linux-nat.h: All implementations adjusted.
9684         * mips-linux-nat.c: All implementations adjusted.
9685         * nto-procfs.c: All implementations adjusted.
9686         * ppc-linux-nat.c: All implementations adjusted.
9687         * procfs.c: All implementations adjusted.
9688         * ravenscar-thread.c: All implementations adjusted.
9689         * record-btrace.c: All implementations adjusted.
9690         * record-full.c: All implementations adjusted.
9691         * remote-sim.c: All implementations adjusted.
9692         * remote.c: All implementations adjusted.
9693         * s390-linux-nat.c: All implementations adjusted.
9694         * sol-thread.c: All implementations adjusted.
9695         * spu-multiarch.c: All implementations adjusted.
9696         * target-delegates.c: All implementations adjusted.
9697         * target.c: All implementations adjusted.
9698         * target.h: All implementations adjusted.
9699         * tracefile-tfile.c: All implementations adjusted.
9700         * tracefile.c: All implementations adjusted.
9701         * tracefile.h: All implementations adjusted.
9702         * windows-nat.c: All implementations adjusted.
9703         * x86-linux-nat.h: All implementations adjusted.
9704         * x86-nat.h: All implementations adjusted.
9705
9706 2018-05-02  Pedro Alves  <palves@redhat.com>
9707
9708         * make-target-delegates (scan_target_h): Don't trim lines here.
9709         Replace sequences of tabs and/or whitespace with a single
9710         whitespace.
9711         (top level, parsing methods): Trim each line before processing it
9712         here.
9713
9714 2018-05-02  Pedro Alves  <palves@redhat.com>
9715             John Baldwin  <jhb@freebsd.org>
9716
9717         * target.h (enum strata) <debug_stratum>: New.
9718         (struct target_ops) <all delegation methods>: Replace by C++
9719         virtual methods, and drop "to_" prefix.  All references updated
9720         throughout.
9721         <to_shortname, to_longname, to_doc, to_data,
9722         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9723         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9724         virtual methods.  All references updated throughout.
9725         <can_attach, supports_terminal_ours, can_create_inferior,
9726         get_thread_control_capabilities, attach_no_wait>: New
9727         virtual methods.
9728         <insert_breakpoint, remove_breakpoint>: Now
9729         TARGET_DEFAULT_NORETURN methods.
9730         <info_proc>: Now returns bool.
9731         <to_magic>: Delete.
9732         (OPS_MAGIC): Delete.
9733         (current_target): Delete.  All references replaced by references
9734         to ...
9735         (target_stack): ... this.  New.
9736         (target_shortname, target_longname): Adjust.
9737         (target_can_run): Now a function declaration.
9738         (default_child_has_all_memory, default_child_has_memory)
9739         (default_child_has_stack, default_child_has_registers)
9740         (default_child_has_execution): Remove target_ops parameter.
9741         (complete_target_initialization): Delete.
9742         (memory_breakpoint_target): New template class.
9743         (test_target_ops): Refactor as a C++ class with virtual methods.
9744         * make-target-delegates (NAME_PART): Tighten.
9745         (POINTER_PART, CP_SYMBOL): New.
9746         (SIMPLE_RETURN_PART): Reimplement.
9747         (VEC_RETURN_PART): Expect less.
9748         (RETURN_PART, VIRTUAL_PART): New.
9749         (METHOD): Adjust to C++ virtual methods.
9750         (scan_target_h): Remove reference to C99.
9751         (dname): Output "target_ops::" prefix.
9752         (write_function_header): Adjust to output a C++ class method.
9753         (write_declaration): New.
9754         (write_delegator): Adjust to output a C++ class method.
9755         (tdname): Output "dummy_target::" prefix.
9756         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9757         method.
9758         (tdefault_names, debug_names): Delete.
9759         (return_types, tdefaults, styles, argtypes_array): New.
9760         (top level): All methods are delegators.
9761         (print_class): New.
9762         (top level): Print dummy_target and debug_target classes.
9763         * target-delegates.c: Regenerate.
9764         * target-debug.h (target_debug_print_enum_info_proc_what)
9765         (target_debug_print_thread_control_capabilities)
9766         (target_debug_print_thread_info_p): New.
9767         * target.c (dummy_target): Delete.
9768         (the_dummy_target, the_debug_target): New.
9769         (target_stack): Now extern.
9770         (set_targetdebug): Push/unpush debug target.
9771         (default_child_has_all_memory, default_child_has_memory)
9772         (default_child_has_stack, default_child_has_registers)
9773         (default_child_has_execution): Remove target_ops parameter.
9774         (complete_target_initialization): Delete.
9775         (add_target_with_completer): No longer call
9776         complete_target_initialization.
9777         (target_supports_terminal_ours): Use regular delegation.
9778         (update_current_target): Delete.
9779         (push_target): No longer check magic number.  Don't call
9780         update_current_target.
9781         (unpush_target): Don't call update_current_target.
9782         (target_is_pushed): No longer check magic number.
9783         (target_require_runnable): Skip for all stratums over
9784         process_stratum.
9785         (target_ops::info_proc): New.
9786         (target_info_proc): Use find_target_at and
9787         find_default_run_target.
9788         (target_supports_disable_randomization): Use regular delegation.
9789         (target_get_osdata): Use find_target_at.
9790         (target_ops::open, target_ops::close, target_ops::can_attach)
9791         (target_ops::attach, target_ops::can_create_inferior)
9792         (target_ops::create_inferior, target_ops::can_run)
9793         (target_can_run): New.
9794         (default_fileio_target): Use regular delegation.
9795         (target_ops::fileio_open, target_ops::fileio_pwrite)
9796         (target_ops::fileio_pread, target_ops::fileio_fstat)
9797         (target_ops::fileio_close, target_ops::fileio_unlink)
9798         (target_ops::fileio_readlink): New.
9799         (target_fileio_open_1, target_fileio_unlink)
9800         (target_fileio_readlink): Always call the target method.  Handle
9801         FILEIO_ENOSYS.
9802         (return_zero, return_zero_has_execution): Delete.
9803         (init_dummy_target): Delete.
9804         (dummy_target::dummy_target, dummy_target::shortname)
9805         (dummy_target::longname, dummy_target::doc)
9806         (debug_target::debug_target, debug_target::shortname)
9807         (debug_target::longname, debug_target::doc): New.
9808         (target_supports_delete_record): Use regular delegation.
9809         (setup_target_debug): Delete.
9810         (maintenance_print_target_stack): Skip debug_stratum.
9811         (initialize_targets): Instantiate the_dummy_target and
9812         the_debug_target.
9813         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9814         use target_stack.
9815         (target_auxv_search, fprint_target_auxv): Adjust.
9816         (info_auxv_command): Adjust to use target_stack.
9817         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9818         * exceptions.c (print_flush): Handle a NULL target_stack.
9819         * regcache.c (target_ops_no_register): Refactor as class with
9820         virtual methods.
9821
9822         * exec.c (exec_target): New class.
9823         (exec_ops): Now an exec_target.
9824         (exec_open, exec_close_1, exec_get_section_table)
9825         (exec_xfer_partial, exec_files_info, exec_has_memory)
9826         (exec_make_note_section): Refactor as exec_target methods.
9827         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9828         Delete.
9829         (exec_target::find_memory_regions): New.
9830         (_initialize_exec): Don't call init_exec_ops.
9831         * gdbcore.h (exec_file_clear): Delete.
9832
9833         * corefile.c (core_target): Delete.
9834         (core_file_command): Adjust.
9835         * corelow.c (core_target): New class.
9836         (the_core_target): New.
9837         (core_close): Remove target_ops parameter.
9838         (core_close_cleanup): Adjust.
9839         (core_target::close): New.
9840         (core_open, core_detach, get_core_registers, core_files_info)
9841         (core_xfer_partial, core_thread_alive, core_read_description)
9842         (core_pid_to_str, core_thread_name, core_has_memory)
9843         (core_has_stack, core_has_registers, core_info_proc): Rework as
9844         core_target methods.
9845         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9846         (_initialize_corelow): Initialize the_core_target.
9847         * gdbcore.h (core_target): Delete.
9848         (the_core_target): New.
9849
9850         * ctf.c: (ctf_target): New class.
9851         (ctf_ops): Now a ctf_target.
9852         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9853         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9854         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9855         methods.
9856         (init_ctf_ops): Delete.
9857         (_initialize_ctf): Don't call it.
9858         * tracefile-tfile.c (tfile_target): New class.
9859         (tfile_ops): Now a tfile_target.
9860         (tfile_open, tfile_close, tfile_files_info)
9861         (tfile_get_tracepoint_status, tfile_trace_find)
9862         (tfile_fetch_registers, tfile_xfer_partial)
9863         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9864         Refactor as tfile_target methods.
9865         (tfile_xfer_partial_features): Remove target_ops parameter.
9866         (init_tfile_ops): Delete.
9867         (_initialize_tracefile_tfile): Don't call it.
9868         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9869         (tracefile_has_stack, tracefile_has_registers)
9870         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9871         tracefile_target methods.
9872         (init_tracefile_ops): Delete.
9873         (tracefile_target::tracefile_target): New.
9874         * tracefile.h: Include "target.h".
9875         (tracefile_target): New class.
9876         (init_tracefile_ops): Delete.
9877
9878         * spu-multiarch.c (spu_multiarch_target): New class.
9879         (spu_ops): Now a spu_multiarch_target.
9880         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9881         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9882         (spu_search_memory, spu_mourn_inferior): Refactor as
9883         spu_multiarch_target methods.
9884         (init_spu_ops): Delete.
9885         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9886         complete_target_initialization.
9887
9888         * ravenscar-thread.c (ravenscar_thread_target): New class.
9889         (ravenscar_ops): Now a ravenscar_thread_target.
9890         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9891         (ravenscar_thread_alive, ravenscar_pid_to_str)
9892         (ravenscar_fetch_registers, ravenscar_store_registers)
9893         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9894         (ravenscar_stopped_by_hw_breakpoint)
9895         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9896         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9897         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9898         methods.
9899         (init_ravenscar_thread_ops): Delete.
9900         (_initialize_ravenscar): Remove references to
9901         init_ravenscar_thread_ops and complete_target_initialization.
9902
9903         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9904         (bsd_uthread_target): New class.
9905         (bsd_uthread_ops): Now a bsd_uthread_target.
9906         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9907         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9908         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9909         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9910         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9911         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9912         (bsd_uthread_target): Delete function.
9913         (_initialize_bsd_uthread): Remove reference to
9914         complete_target_initialization.
9915
9916         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9917         (target_bfd): ... this new class.
9918         (target_bfd_xfer_partial, target_bfd_get_section_table)
9919         (target_bfd_close): Refactor as target_bfd methods.
9920         (target_bfd::~target_bfd): New.
9921         (target_bfd_reopen): Adjust.
9922         (target_bfd::close): New.
9923
9924         * record-btrace.c (record_btrace_target): New class.
9925         (record_btrace_ops): Now a record_btrace_target.
9926         (record_btrace_open, record_btrace_stop_recording)
9927         (record_btrace_disconnect, record_btrace_close)
9928         (record_btrace_async, record_btrace_info)
9929         (record_btrace_insn_history, record_btrace_insn_history_range)
9930         (record_btrace_insn_history_from, record_btrace_call_history)
9931         (record_btrace_call_history_range)
9932         (record_btrace_call_history_from, record_btrace_record_method)
9933         (record_btrace_is_replaying, record_btrace_will_replay)
9934         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9935         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9936         (record_btrace_store_registers, record_btrace_prepare_to_store)
9937         (record_btrace_to_get_unwinder)
9938         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9939         (record_btrace_commit_resume, record_btrace_wait)
9940         (record_btrace_stop, record_btrace_can_execute_reverse)
9941         (record_btrace_stopped_by_sw_breakpoint)
9942         (record_btrace_supports_stopped_by_sw_breakpoint)
9943         (record_btrace_stopped_by_hw_breakpoint)
9944         (record_btrace_supports_stopped_by_hw_breakpoint)
9945         (record_btrace_update_thread_list, record_btrace_thread_alive)
9946         (record_btrace_goto_begin, record_btrace_goto_end)
9947         (record_btrace_goto, record_btrace_stop_replaying_all)
9948         (record_btrace_execution_direction)
9949         (record_btrace_prepare_to_generate_core)
9950         (record_btrace_done_generating_core): Refactor as
9951         record_btrace_target methods.
9952         (init_record_btrace_ops): Delete.
9953         (_initialize_record_btrace): Remove reference to
9954         init_record_btrace_ops.
9955         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9956         the execution_direction global.
9957         (record_full_base_target, record_full_target)
9958         (record_full_core_target): New classes.
9959         (record_full_ops): Now a record_full_target.
9960         (record_full_core_ops): Now a record_full_core_target.
9961         (record_full_target::detach, record_full_target::disconnect)
9962         (record_full_core_target::disconnect)
9963         (record_full_target::mourn_inferior, record_full_target::kill):
9964         New.
9965         (record_full_open, record_full_close, record_full_async): Refactor
9966         as methods of the record_full_base_target class.
9967         (record_full_resume, record_full_commit_resume): Refactor
9968         as methods of the record_full_target class.
9969         (record_full_wait, record_full_stopped_by_watchpoint)
9970         (record_full_stopped_data_address)
9971         (record_full_stopped_by_sw_breakpoint)
9972         (record_full_supports_stopped_by_sw_breakpoint)
9973         (record_full_stopped_by_hw_breakpoint)
9974         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9975         methods of the record_full_base_target class.
9976         (record_full_store_registers, record_full_xfer_partial)
9977         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9978         Refactor as methods of the record_full_target class.
9979         (record_full_can_execute_reverse, record_full_get_bookmark)
9980         (record_full_goto_bookmark, record_full_execution_direction)
9981         (record_full_record_method, record_full_info, record_full_delete)
9982         (record_full_is_replaying, record_full_will_replay)
9983         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9984         (record_full_stop_replaying): Refactor as methods of the
9985         record_full_base_target class.
9986         (record_full_core_resume, record_full_core_kill)
9987         (record_full_core_fetch_registers)
9988         (record_full_core_prepare_to_store)
9989         (record_full_core_store_registers, record_full_core_xfer_partial)
9990         (record_full_core_insert_breakpoint)
9991         (record_full_core_remove_breakpoint)
9992         (record_full_core_has_execution): Refactor
9993         as methods of the record_full_core_target class.
9994         (record_full_base_target::supports_delete_record): New.
9995         (init_record_full_ops): Delete.
9996         (init_record_full_core_ops): Delete.
9997         (record_full_save): Refactor as method of the
9998         record_full_base_target class.
9999         (_initialize_record_full): Remove references to
10000         init_record_full_ops and init_record_full_core_ops.
10001
10002         * remote.c (remote_target, extended_remote_target): New classes.
10003         (remote_ops): Now a remote_target.
10004         (extended_remote_ops): Now an extended_remote_target.
10005         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10006         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10007         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10008         (remote_pass_signals, remote_set_syscall_catchpoint)
10009         (remote_program_signals, )
10010         (remote_thread_always_alive): Remove target_ops parameter.
10011         (remote_thread_alive, remote_thread_name)
10012         (remote_update_thread_list, remote_threads_extra_info)
10013         (remote_static_tracepoint_marker_at)
10014         (remote_static_tracepoint_markers_by_strid)
10015         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10016         (remote_open): Refactor as methods of remote_target.
10017         (extended_remote_open, extended_remote_detach)
10018         (extended_remote_attach, extended_remote_post_attach):
10019         (extended_remote_supports_disable_randomization)
10020         (extended_remote_create_inferior): : Refactor as method of
10021         extended_remote_target.
10022         (remote_set_permissions, remote_open_1, remote_detach)
10023         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10024         (remote_resume, remote_commit_resume, remote_stop)
10025         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10026         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10027         (remote_prepare_to_store, remote_store_registers)
10028         (remote_flash_erase, remote_flash_done, remote_files_info)
10029         (remote_kill, remote_mourn, remote_insert_breakpoint)
10030         (remote_remove_breakpoint, remote_insert_watchpoint)
10031         (remote_watchpoint_addr_within_range)
10032         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10033         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10034         (remote_supports_stopped_by_sw_breakpoint)
10035         (remote_stopped_by_hw_breakpoint)
10036         (remote_supports_stopped_by_hw_breakpoint)
10037         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10038         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10039         (remote_verify_memory): Refactor as methods of remote_target.
10040         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10041         parameter.
10042         (remote_xfer_partial, remote_get_memory_xfer_limit)
10043         (remote_search_memory, remote_rcmd, remote_memory_map)
10044         (remote_pid_to_str, remote_get_thread_local_address)
10045         (remote_get_tib_address, remote_read_description): Refactor as
10046         methods of remote_target.
10047         (remote_target::fileio_open, remote_target::fileio_pwrite)
10048         (remote_target::fileio_pread, remote_target::fileio_close): New.
10049         (remote_hostio_readlink, remote_hostio_fstat)
10050         (remote_filesystem_is_local, remote_can_execute_reverse)
10051         (remote_supports_non_stop, remote_supports_disable_randomization)
10052         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10053         (remote_supports_enable_disable_tracepoint)
10054         (remote_supports_string_tracing)
10055         (remote_can_run_breakpoint_commands, remote_trace_init)
10056         (remote_download_tracepoint, remote_can_download_tracepoint)
10057         (remote_download_trace_state_variable, remote_enable_tracepoint)
10058         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10059         (remote_trace_start, remote_get_trace_status)
10060         (remote_get_tracepoint_status, remote_trace_stop)
10061         (remote_trace_find, remote_get_trace_state_variable_value)
10062         (remote_save_trace_data, remote_get_raw_trace_data)
10063         (remote_set_disconnected_tracing, remote_core_of_thread)
10064         (remote_set_circular_trace_buffer, remote_traceframe_info)
10065         (remote_get_min_fast_tracepoint_insn_len)
10066         (remote_set_trace_buffer_size, remote_set_trace_notes)
10067         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10068         (remote_disable_btrace, remote_teardown_btrace)
10069         (remote_read_btrace, remote_btrace_conf)
10070         (remote_augmented_libraries_svr4_read, remote_load)
10071         (remote_pid_to_exec_file, remote_can_do_single_step)
10072         (remote_execution_direction, remote_thread_handle_to_thread_info):
10073         Refactor as methods of remote_target.
10074         (init_remote_ops, init_extended_remote_ops): Delete.
10075         (remote_can_async_p, remote_is_async_p, remote_async)
10076         (remote_thread_events, remote_upload_tracepoints)
10077         (remote_upload_trace_state_variables): Refactor as methods of
10078         remote_target.
10079         (_initialize_remote): Remove references to init_remote_ops and
10080         init_extended_remote_ops.
10081
10082         * remote-sim.c (gdbsim_target): New class.
10083         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10084         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10085         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10086         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10087         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10088         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10089         Refactor as methods of gdbsim_target.
10090         (gdbsim_ops): Now a gdbsim_target.
10091         (init_gdbsim_ops): Delete.
10092         (gdbsim_cntrl_c): Adjust.
10093         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10094
10095         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10096         (the_amd64_linux_nat_target): New.
10097         (amd64_linux_fetch_inferior_registers)
10098         (amd64_linux_store_inferior_registers): Refactor as methods of
10099         amd64_linux_nat_target.
10100         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10101         * i386-linux-nat.c: Don't include "linux-nat.h".
10102         (i386_linux_nat_target): New class.
10103         (the_i386_linux_nat_target): New.
10104         (i386_linux_fetch_inferior_registers)
10105         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10106         as methods of i386_linux_nat_target.
10107         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10108         * inf-child.c (inf_child_ops): Delete.
10109         (inf_child_fetch_inferior_registers)
10110         (inf_child_store_inferior_registers): Delete.
10111         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10112         methods of inf_child_target.
10113         (inf_child_target::supports_terminal_ours)
10114         (inf_child_target::terminal_init)
10115         (inf_child_target::terminal_inferior)
10116         (inf_child_target::terminal_ours_for_output)
10117         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10118         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10119         New.
10120         (inf_child_open, inf_child_disconnect, inf_child_close)
10121         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10122         (inf_child_post_startup_inferior, inf_child_can_run)
10123         (inf_child_pid_to_exec_file): Refactor as methods of
10124         inf_child_target.
10125         (inf_child_follow_fork): Delete.
10126         (inf_child_target::can_create_inferior)
10127         (inf_child_target::can_attach): New.
10128         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10129         (inf_child_target::has_stack, inf_child_target::has_registers)
10130         (inf_child_target::has_execution): New.
10131         (inf_child_fileio_open, inf_child_fileio_pwrite)
10132         (inf_child_fileio_pread, inf_child_fileio_fstat)
10133         (inf_child_fileio_close, inf_child_fileio_unlink)
10134         (inf_child_fileio_readlink, inf_child_use_agent)
10135         (inf_child_can_use_agent): Refactor as methods of
10136         inf_child_target.
10137         (return_zero, inf_child_target): Delete.
10138         (inf_child_target::inf_child_target): New.
10139         * inf-child.h: Include "target.h".
10140         (inf_child_target): Delete function prototype.
10141         (inf_child_target): New class.
10142         (inf_child_open_target, inf_child_mourn_inferior)
10143         (inf_child_maybe_unpush_target): Delete.
10144         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10145         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10146         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10147         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10148         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10149         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10150         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10151         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10152         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10153         methods of inf_ptrace_target.
10154         (inf_ptrace_target): Delete function.
10155         * inf-ptrace.h: Include "inf-child.h".
10156         (inf_ptrace_target): Delete function declaration.
10157         (inf_ptrace_target): New class.
10158         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10159         * linux-nat.c (linux_target): New.
10160         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10161         (linux_nat_target::~linux_nat_target): New.
10162         (linux_child_post_attach, linux_child_post_startup_inferior)
10163         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10164         (linux_child_remove_fork_catchpoint)
10165         (linux_child_insert_vfork_catchpoint)
10166         (linux_child_remove_vfork_catchpoint)
10167         (linux_child_insert_exec_catchpoint)
10168         (linux_child_remove_exec_catchpoint)
10169         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10170         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10171         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10172         (linux_nat_stopped_data_address)
10173         (linux_nat_stopped_by_sw_breakpoint)
10174         (linux_nat_supports_stopped_by_sw_breakpoint)
10175         (linux_nat_stopped_by_hw_breakpoint)
10176         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10177         (linux_nat_kill, linux_nat_mourn_inferior)
10178         (linux_nat_xfer_partial, linux_nat_thread_alive)
10179         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10180         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10181         (linux_child_static_tracepoint_markers_by_strid)
10182         (linux_nat_is_async_p, linux_nat_can_async_p)
10183         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10184         (linux_nat_supports_multi_process)
10185         (linux_nat_supports_disable_randomization, linux_nat_async)
10186         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10187         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10188         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10189         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10190         methods of linux_nat_target.
10191         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10192         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10193         parameter.
10194         (check_stopped_by_watchpoint): Adjust.
10195         (linux_xfer_partial): Delete.
10196         (linux_target_install_ops, linux_target, linux_nat_add_target):
10197         Delete.
10198         (linux_nat_target::linux_nat_target): New.
10199         * linux-nat.h: Include "inf-ptrace.h".
10200         (linux_nat_target): New.
10201         (linux_target, linux_target_install_ops, linux_nat_add_target):
10202         Delete function declarations.
10203         (linux_target): Declare global.
10204         * linux-thread-db.c (thread_db_target): New.
10205         (thread_db_target::thread_db_target): New.
10206         (thread_db_ops): Delete.
10207         (the_thread_db_target): New.
10208         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10209         (thread_db_update_thread_list, thread_db_pid_to_str)
10210         (thread_db_extra_thread_info)
10211         (thread_db_thread_handle_to_thread_info)
10212         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10213         (thread_db_resume): Refactor as methods of thread_db_target.
10214         (init_thread_db_ops): Delete.
10215         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10216         * x86-linux-nat.c: Don't include "linux-nat.h".
10217         (super_post_startup_inferior): Delete.
10218         (x86_linux_nat_target::~x86_linux_nat_target): New.
10219         (x86_linux_child_post_startup_inferior)
10220         (x86_linux_read_description, x86_linux_enable_btrace)
10221         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10222         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10223         methods of x86_linux_nat_target.
10224         (x86_linux_create_target): Delete.  Bits folded ...
10225         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10226         pointer.
10227         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10228         (x86_linux_nat_target): New class.
10229         (x86_linux_create_target): Delete.
10230         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10231         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10232         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10233         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10234         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10235         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10236         make extern.
10237         (x86_use_watchpoints): Delete.
10238         * x86-nat.h: Include "breakpoint.h" and "target.h".
10239         (x86_use_watchpoints): Delete.
10240         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10241         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10242         (x86_insert_watchpoint, x86_remove_watchpoint)
10243         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10244         (x86_stopped_by_hw_breakpoint): New declarations.
10245         (x86_nat_target): New template class.
10246
10247         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10248         (the_ppc_linux_nat_target): New.
10249         (ppc_linux_fetch_inferior_registers)
10250         (ppc_linux_can_use_hw_breakpoint)
10251         (ppc_linux_region_ok_for_hw_watchpoint)
10252         (ppc_linux_ranged_break_num_registers)
10253         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10254         (ppc_linux_insert_mask_watchpoint)
10255         (ppc_linux_remove_mask_watchpoint)
10256         (ppc_linux_can_accel_watchpoint_condition)
10257         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10258         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10259         (ppc_linux_watchpoint_addr_within_range)
10260         (ppc_linux_masked_watch_num_registers)
10261         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10262         (ppc_linux_read_description): Refactor as methods of
10263         ppc_linux_nat_target.
10264         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10265
10266         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10267         (procfs_target): New class.
10268         (the_procfs_target): New.
10269         (procfs_target): Delete function.
10270         (procfs_auxv_parse, procfs_attach, procfs_detach)
10271         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10272         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10273         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10274         (procfs_create_inferior, procfs_update_thread_list)
10275         (procfs_thread_alive, procfs_pid_to_str)
10276         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10277         (procfs_stopped_data_address, procfs_insert_watchpoint)
10278         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10279         (proc_find_memory_regions, procfs_info_proc)
10280         (procfs_make_note_section): Refactor as methods of procfs_target.
10281         (_initialize_procfs): Adjust.
10282         * sol-thread.c (sol_thread_target): New class.
10283         (sol_thread_ops): Now a sol_thread_target.
10284         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10285         (sol_thread_fetch_registers, sol_thread_store_registers)
10286         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10287         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10288         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10289         (init_sol_thread_ops): Delete.
10290         (_initialize_sol_thread): Adjust.  Remove references to
10291         init_sol_thread_ops and complete_target_initialization.
10292
10293         * windows-nat.c (windows_nat_target): New class.
10294         (windows_fetch_inferior_registers)
10295         (windows_store_inferior_registers, windows_resume, windows_wait)
10296         (windows_attach, windows_detach, windows_pid_to_exec_file)
10297         (windows_files_info, windows_create_inferior)
10298         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10299         (windows_close, windows_pid_to_str, windows_xfer_partial)
10300         (windows_get_tib_address, windows_get_ada_task_ptid)
10301         (windows_thread_name, windows_thread_alive): Refactor as
10302         windows_nat_target methods.
10303         (do_initial_windows_stuff): Adjust.
10304         (windows_target): Delete function.
10305         (_initialize_windows_nat): Adjust.
10306
10307         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10308         (darwin_mourn_inferior, darwin_kill_inferior)
10309         (darwin_create_inferior, darwin_attach, darwin_detach)
10310         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10311         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10312         (darwin_supports_multi_process): Refactor as darwin_nat_target
10313         methods.
10314         (darwin_resume_to, darwin_files_info): Delete.
10315         (_initialize_darwin_inferior): Rename to ...
10316         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10317         * darwin-nat.h: Include "inf-child.h".
10318         (darwin_nat_target): New class.
10319         (darwin_complete_target): Delete.
10320         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10321         (darwin_target): New.
10322         (i386_darwin_fetch_inferior_registers)
10323         (i386_darwin_store_inferior_registers): Refactor as methods of
10324         darwin_nat_target.
10325         (darwin_complete_target): Delete, with ...
10326         (_initialize_i386_darwin_nat): ... bits factored out here.
10327
10328         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10329         (the_alpha_linux_nat_target): New.
10330         (alpha_linux_register_u_offset): Refactor as
10331         alpha_linux_nat_target method.
10332         (_initialize_alpha_linux_nat): Adjust.
10333         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10334         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10335         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10336         methods of linux_nat_trad_target.
10337         (linux_trad_target): Delete.
10338         * linux-nat-trad.h (linux_trad_target): Delete function.
10339         (linux_nat_trad_target): New class.
10340         * mips-linux-nat.c (mips_linux_nat_target): New class.
10341         (super_fetch_registers, super_store_registers, super_close):
10342         Delete.
10343         (the_mips_linux_nat_target): New.
10344         (mips64_linux_regsets_fetch_registers)
10345         (mips64_linux_regsets_store_registers)
10346         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10347         (mips_linux_register_u_offset, mips_linux_read_description)
10348         (mips_linux_can_use_hw_breakpoint)
10349         (mips_linux_stopped_by_watchpoint)
10350         (mips_linux_stopped_data_address)
10351         (mips_linux_region_ok_for_hw_watchpoint)
10352         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10353         (mips_linux_close): Refactor as methods of mips_linux_nat.
10354         (_initialize_mips_linux_nat): Adjust to C++ification.
10355
10356         * aix-thread.c (aix_thread_target): New class.
10357         (aix_thread_ops): Now an aix_thread_target.
10358         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10359         (aix_thread_fetch_registers, aix_thread_store_registers)
10360         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10361         (aix_thread_thread_alive, aix_thread_pid_to_str)
10362         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10363         Refactor as methods of aix_thread_target.
10364         (init_aix_thread_ops): Delete.
10365         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10366         and complete_target_initialization.
10367         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10368         (rs6000_nat_target): New class.
10369         (the_rs6000_nat_target): New.
10370         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10371         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10372         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10373         (super_create_inferior): Delete.
10374         (_initialize_rs6000_nat): Adjust to C++ification.
10375
10376         * arm-linux-nat.c (arm_linux_nat_target): New class.
10377         (the_arm_linux_nat_target): New.
10378         (arm_linux_fetch_inferior_registers)
10379         (arm_linux_store_inferior_registers, arm_linux_read_description)
10380         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10381         (arm_linux_remove_hw_breakpoint)
10382         (arm_linux_region_ok_for_hw_watchpoint)
10383         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10384         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10385         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10386         arm_linux_nat_target.
10387         (_initialize_arm_linux_nat): Adjust to C++ification.
10388
10389         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10390         (the_aarch64_linux_nat_target): New.
10391         (aarch64_linux_fetch_inferior_registers)
10392         (aarch64_linux_store_inferior_registers)
10393         (aarch64_linux_child_post_startup_inferior)
10394         (aarch64_linux_read_description)
10395         (aarch64_linux_can_use_hw_breakpoint)
10396         (aarch64_linux_insert_hw_breakpoint)
10397         (aarch64_linux_remove_hw_breakpoint)
10398         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10399         (aarch64_linux_region_ok_for_hw_watchpoint)
10400         (aarch64_linux_stopped_data_address)
10401         (aarch64_linux_stopped_by_watchpoint)
10402         (aarch64_linux_watchpoint_addr_within_range)
10403         (aarch64_linux_can_do_single_step): Refactor as methods of
10404         aarch64_linux_nat_target.
10405         (super_post_startup_inferior): Delete.
10406         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10407
10408         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10409         (the_hppa_linux_nat_target): New.
10410         (hppa_linux_fetch_inferior_registers)
10411         (hppa_linux_store_inferior_registers): Refactor as methods of
10412         hppa_linux_nat_target.
10413         (_initialize_hppa_linux_nat): Adjust to C++ification.
10414
10415         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10416         (the_ia64_linux_nat_target): New.
10417         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10418         (ia64_linux_stopped_data_address)
10419         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10420         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10421         ia64_linux_nat_target methods.
10422         (super_xfer_partial): Delete.
10423         (_initialize_ia64_linux_nat): Adjust to C++ification.
10424
10425         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10426         (the_m32r_linux_nat_target): New.
10427         (m32r_linux_fetch_inferior_registers)
10428         (m32r_linux_store_inferior_registers): Refactor as
10429         m32r_linux_nat_target methods.
10430         (_initialize_m32r_linux_nat): Adjust to C++ification.
10431
10432         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10433         (the_m68k_linux_nat_target): New.
10434         (m68k_linux_fetch_inferior_registers)
10435         (m68k_linux_store_inferior_registers): Refactor as
10436         m68k_linux_nat_target methods.
10437         (_initialize_m68k_linux_nat): Adjust to C++ification.
10438
10439         * s390-linux-nat.c (s390_linux_nat_target): New class.
10440         (the_s390_linux_nat_target): New.
10441         (s390_linux_fetch_inferior_registers)
10442         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10443         (s390_insert_watchpoint, s390_remove_watchpoint)
10444         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10445         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10446         (s390_auxv_parse, s390_read_description): Refactor as methods of
10447         s390_linux_nat_target.
10448         (_initialize_s390_nat): Adjust to C++ification.
10449
10450         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10451         (the_sparc_linux_nat_target): New.
10452         (_initialize_sparc_linux_nat): Adjust to C++ification.
10453         * sparc-nat.c (sparc_fetch_inferior_registers)
10454         (sparc_store_inferior_registers): Remove target_ops parameter.
10455         * sparc-nat.h (sparc_fetch_inferior_registers)
10456         (sparc_store_inferior_registers): Remove target_ops parameter.
10457         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10458         (the_sparc64_linux_nat_target): New.
10459         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10460
10461         * spu-linux-nat.c (spu_linux_nat_target): New class.
10462         (the_spu_linux_nat_target): New.
10463         (spu_child_post_startup_inferior, spu_child_post_attach)
10464         (spu_child_wait, spu_fetch_inferior_registers)
10465         (spu_store_inferior_registers, spu_xfer_partial)
10466         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10467         methods.
10468         (_initialize_spu_nat): Adjust to C++ification.
10469
10470         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10471         (the_tilegx_linux_nat_target): New.
10472         (fetch_inferior_registers, store_inferior_registers):
10473         Refactor as methods.
10474         (_initialize_tile_linux_nat): Adjust to C++ification.
10475
10476         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10477         (the_xtensa_linux_nat_target): New.
10478         (xtensa_linux_fetch_inferior_registers)
10479         (xtensa_linux_store_inferior_registers): Refactor as
10480         xtensa_linux_nat_target methods.
10481         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10482
10483         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10484         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10485         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10486         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10487         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10488         (fbsd_stopped_by_sw_breakpoint)
10489         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10490         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10491         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10492         (fbsd_post_startup_inferior, fbsd_post_attach)
10493         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10494         (fbsd_set_syscall_catchpoint)
10495         (super_xfer_partial, super_resume, super_wait)
10496         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10497         (fbsd_handle_debug_trap): Remove target_ops parameter.
10498         (fbsd_nat_add_target): Delete.
10499         * fbsd-nat.h: Include "inf-ptrace.h".
10500         (fbsd_nat_add_target): Delete.
10501         (USE_SIGTRAP_SIGINFO): Define.
10502         (fbsd_nat_target): New class.
10503
10504         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10505         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10506         (amd64bsd_target): Delete.
10507         * amd64-bsd-nat.h: New file.
10508         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10509         "x86-bsd-nat.h".
10510         (amd64_fbsd_nat_target): New class.
10511         (the_amd64_fbsd_nat_target): New.
10512         (amd64fbsd_read_description): Refactor as method of
10513         amd64_fbsd_nat_target.
10514         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10515         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10516         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10517         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10518         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10519         (i386bsd_target): Delete.
10520         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10521         (i386bsd_fetch_inferior_registers)
10522         (i386bsd_store_inferior_registers): Declare.
10523         (i386_bsd_nat_target): New class.
10524         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10525         (the_i386_fbsd_nat_target): New.
10526         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10527         i386_fbsd_nat_target methods.
10528         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10529         (_initialize_i386fbsd_nat): Adjust to C++ification.
10530         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10531         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10532         (_initialize_x86_bsd_nat): Adjust to C++ification.
10533         * x86-bsd-nat.h: Include "x86-nat.h".
10534         (x86bsd_target): Delete declaration.
10535         (x86bsd_nat_target): New class.
10536
10537         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10538         (the_aarch64_fbsd_nat_target): New.
10539         (aarch64_fbsd_fetch_inferior_registers)
10540         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10541         aarch64_fbsd_nat_target.
10542         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10543         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10544         (the_alpha_bsd_nat_target): New.
10545         (alphabsd_fetch_inferior_registers)
10546         (alphabsd_store_inferior_registers): Refactor as
10547         alpha_bsd_nat_target methods.
10548         (_initialize_alphabsd_nat): Refactor as methods of
10549         alpha_bsd_nat_target.
10550         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10551         (the_amd64_nbsd_nat_target): New.
10552         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10553         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10554         (the_amd64_obsd_nat_target): New.
10555         (_initialize_amd64obsd_nat): Adjust to C++ification.
10556         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10557         (the_arm_fbsd_nat_target): New.
10558         (arm_fbsd_fetch_inferior_registers)
10559         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10560         (_initialize_arm_fbsd_nat): Refactor as methods of
10561         arm_fbsd_nat_target.
10562         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10563         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10564         (the_arm_netbsd_nat_target): New.
10565         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10566         arm_netbsd_nat_target.
10567         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10568         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10569         (the_hppa_nbsd_nat_target): New.
10570         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10571         hppa_nbsd_nat_target methods.
10572         (_initialize_hppanbsd_nat): Adjust to C++ification.
10573         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10574         (the_hppa_obsd_nat_target): New.
10575         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10576         methods of hppa_obsd_nat_target.
10577         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10578         add_target.
10579         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10580         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10581         add_target.
10582         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10583         (_initialize_i386obsd_nat): Use add_target.
10584         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10585         (the_m68k_bsd_nat_target): New.
10586         (m68kbsd_fetch_inferior_registers)
10587         (m68kbsd_store_inferior_registers): Refactor as methods of
10588         m68k_bsd_nat_target.
10589         (_initialize_m68kbsd_nat): Adjust to C++ification.
10590         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10591         (the_mips_fbsd_nat_target): New.
10592         (mips_fbsd_fetch_inferior_registers)
10593         (mips_fbsd_store_inferior_registers): Refactor as methods of
10594         mips_fbsd_nat_target.
10595         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10596         add_target.
10597         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10598         (the_mips_nbsd_nat_target): New.
10599         (mipsnbsd_fetch_inferior_registers)
10600         (mipsnbsd_store_inferior_registers): Refactor as methods of
10601         mips_nbsd_nat_target.
10602         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10603         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10604         (the_mips64_obsd_nat_target): New.
10605         (mips64obsd_fetch_inferior_registers)
10606         (mips64obsd_store_inferior_registers): Refactor as methods of
10607         mips64_obsd_nat_target.
10608         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10609         add_target.
10610         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10611         nbsd_nat_target.
10612         * nbsd-nat.h: Include "inf-ptrace.h".
10613         (nbsd_nat_target): New class.
10614         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10615         (obsd_wait): Refactor as methods of obsd_nat_target.
10616         (obsd_add_target): Delete.
10617         * obsd-nat.h: Include "inf-ptrace.h".
10618         (obsd_nat_target): New class.
10619         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10620         (the_ppc_fbsd_nat_target): New.
10621         (ppcfbsd_fetch_inferior_registers)
10622         (ppcfbsd_store_inferior_registers): Refactor as methods of
10623         ppc_fbsd_nat_target.
10624         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10625         add_target.
10626         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10627         (the_ppc_nbsd_nat_target): New.
10628         (ppcnbsd_fetch_inferior_registers)
10629         (ppcnbsd_store_inferior_registers): Refactor as methods of
10630         ppc_nbsd_nat_target.
10631         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10632         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10633         (the_ppc_obsd_nat_target): New.
10634         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10635         methods of ppc_obsd_nat_target.
10636         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10637         add_target.
10638         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10639         (the_sh_nbsd_nat_target): New.
10640         (shnbsd_fetch_inferior_registers)
10641         (shnbsd_store_inferior_registers): Refactor as methods of
10642         sh_nbsd_nat_target.
10643         (_initialize_shnbsd_nat): Adjust to C++ification.
10644         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10645         (inf_ptrace_xfer_partial): Delete.
10646         (sparc_xfer_partial, sparc_target): Delete.
10647         * sparc-nat.h (sparc_fetch_inferior_registers)
10648         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10649         (sparc_target): Delete function declaration.
10650         (sparc_target): New template class.
10651         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10652         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10653         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10654         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10655         add_target.
10656         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10657         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10658         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10659         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10660         add_target.
10661         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10662         (the_vax_bsd_nat_target): New.
10663         (vaxbsd_fetch_inferior_registers)
10664         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10665         methods.
10666         (_initialize_vaxbsd_nat): Adjust to C++ification.
10667
10668         * bsd-kvm.c (bsd_kvm_target): New class.
10669         (bsd_kvm_ops): Now a bsd_kvm_target.
10670         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10671         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10672         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10673         bsd_kvm_target.
10674         (bsd_kvm_return_one): Delete.
10675         (bsd_kvm_add_target): Adjust to C++ification.
10676
10677         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10678         (nto_procfs_target_procfs): New classes.
10679         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10680         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10681         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10682         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10683         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10684         (procfs_remove_hw_breakpoint, procfs_resume)
10685         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10686         (procfs_kill_inferior, procfs_store_registers)
10687         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10688         as methods of nto_procfs_target.
10689         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10690         (nto_native_ops): Delete.
10691         (procfs_open, procfs_native_open): Delete.
10692         (nto_native_ops): Now an nto_procfs_target_native.
10693         (init_procfs_targets): Adjust to C++ification.
10694         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10695         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10696         Refactor as methods of nto_procfs_target.
10697
10698         * go32-nat.c (go32_nat_target): New class.
10699         (the_go32_nat_target): New.
10700         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10701         (go32_store_registers, go32_xfer_partial, go32_files_info)
10702         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10703         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10704         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10705         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10706         (go32_target): Delete.
10707         (_initialize_go32_nat): Adjust to C++ification.
10708
10709         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10710         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10711         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10712         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10713         gnu_nat_target.
10714         (gnu_target): Delete.
10715         * gnu-nat.h (gnu_target): Delete.
10716         (gnu_nat_target): New class.
10717         * i386-gnu-nat.c (gnu_base_target): New.
10718         (i386_gnu_nat_target): New class.
10719         (the_i386_gnu_nat_target): New.
10720         (_initialize_i386gnu_nat): Adjust to C++ification.
10721
10722 2018-05-02  Pedro Alves  <palves@redhat.com>
10723
10724         * bfd-target.c (target_bfd_xclose): Rename to ...
10725         (target_bfd_close): ... this.
10726         (target_bfd_reopen): Adjust.
10727         * target.c (target_close): Remove references to to_xclose.
10728         * target.h (target_ops::to_xclose): Delete.
10729         (target_ops::to_close): Update comments.
10730
10731 2018-05-02  Pedro Alves  <palves@redhat.com>
10732
10733         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10734         "linux-nat.h".
10735         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10736         * inf-ptrace.c (inf_ptrace_register_u_offset)
10737         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10738         (inf_ptrace_store_register, inf_ptrace_store_registers)
10739         (inf_ptrace_trad_target): Move to ...
10740         * linux-nat-trad.c: ... this new file.
10741         * linux-nat-trad.h: New file.
10742         * linux-nat.c (linux_target_install_ops): Make extern.
10743         (linux_trad_target): Delete.
10744         * linux-nat.h (linux_trad_target): Delete declaration.
10745         (linux_target_install_ops): Declare.
10746         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10747         "linux-nat.h".
10748
10749 2018-05-02  Pedro Alves  <palves@redhat.com>
10750
10751         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10752         procfs_target/add_target here.
10753         * procfs.c (procfs_target): Make static.
10754         (_initialize_procfs): Call add_target here.
10755         * procfs.h (struct target_ops): Remove forward declaration.
10756         (procfs_target): Remove declaration.
10757         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10758
10759 2018-05-02  Pedro Alves  <palves@redhat.com>
10760
10761         * procfs.c (procfs_stopped_by_watchpoint)
10762         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10763         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10764         Forward declare.
10765         (procfs_use_watchpoints): Delete, move contents...
10766         (procfs_target): ... here.
10767         * procfs.h (procfs_use_watchpoints): Delete declaration.
10768         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10769         procfs_use_watchpoints.
10770         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10771         procfs_use_watchpoints.
10772
10773 2018-05-02  Tom Tromey  <tom@tromey.com>
10774
10775         PR python/20084:
10776         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10777         and var_zuinteger_unlimited.
10778         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10779         and PARAM_ZUINTEGER_UNLIMITED.
10780         (set_parameter_value): Handle var_zuinteger and
10781         var_zuinteger_unlimited.
10782         (add_setshow_generic): Likewise.
10783         (parmpy_init): Likewise.
10784
10785 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10786
10787         PR rust/23124
10788         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10789         pointer is not null before dereferencing it.
10790
10791 2018-04-30  Tom Tromey  <tom@tromey.com>
10792
10793         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10794         is_mi_like_p.
10795
10796 2018-04-30  Tom Tromey  <tom@tromey.com>
10797
10798         * breakpoint.c (mention): Remove use of is_mi_like_p.
10799         (print_mention_ranged_breakpoint): Likewise.
10800         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10801         of is_mi_like_p.
10802
10803 2018-04-30  Tom Tromey  <tom@tromey.com>
10804
10805         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10806
10807 2018-04-30  Tom Tromey  <tom@tromey.com>
10808
10809         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10810         (info_spu_event_command): Remove some uses of is_mi_like_p.
10811
10812 2018-04-30  Tom Tromey  <tom@tromey.com>
10813
10814         * python/py-framefilter.c (py_print_single_arg)
10815         (enumerate_locals, py_print_args, py_print_frame): Remove some
10816         uses of is_mi_like_p.
10817
10818 2018-04-30  Tom Tromey  <tom@tromey.com>
10819
10820         * ui-out.c: Update.
10821         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10822         * ui-out.h (ui_out::is_mi_like_p): Now const.
10823         (ui_out::do_is_mi_like_p): Now const.
10824         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10825
10826 2018-04-30  Tom Tromey  <tom@tromey.com>
10827
10828         * varobj.c (varobj_set_visualizer): Use new_reference.
10829         * python/python.c (gdbpy_decode_line): Use new_reference.
10830         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10831         new_reference.
10832
10833 2018-04-30  Tom Tromey  <tom@tromey.com>
10834
10835         * varobj.c (install_new_value): Use new_reference.
10836         * value.h (value_incref): Return void.  Swap intro comment with
10837         value_decref.
10838         * value.c (set_value_parent): Use new_reference.
10839         (value_incref): Return void.  Update intro comment.
10840         (release_value): Use new_reference.
10841         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10842
10843 2018-04-30  Tom Tromey  <tom@tromey.com>
10844
10845         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10846         * gdb_bfd.h (new_bfd_ref): Remove.
10847         (gdb_bfd_open): Update comment.
10848         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10849         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10850         (gdb_bfd_fdopenr): Use new_reference.
10851         * exec.c (exec_file_attach): Use new_reference.
10852
10853 2018-04-30  Tom Tromey  <tom@tromey.com>
10854
10855         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10856         method.
10857
10858 2018-04-30  Tom Tromey  <tom@tromey.com>
10859
10860         * jit.c (jit_read_code_entry): Use type_align.
10861         * i386-tdep.c (i386_gdbarch_init): Don't call
10862         set_gdbarch_long_long_align_bit.
10863         * gdbarch.sh: Remove long_long_align_bit.
10864         * gdbarch.c, gdbarch.h: Rebuild.
10865         * arc-tdep.c (arc_type_align): New function.
10866         (arc_gdbarch_init): Use arc_type_align.  Don't call
10867         set_gdbarch_long_long_align_bit.
10868
10869 2018-04-30  Tom Tromey  <tom@tromey.com>
10870
10871         * rust-lang.c (rust_type_alignment): Remove.
10872         (rust_composite_type): Use type_align.
10873
10874 2018-04-30  Tom Tromey  <tom@tromey.com>
10875
10876         * NEWS: Mention Type.align.
10877         * python/py-type.c (typy_get_alignof): New function.
10878         (type_object_getset): Add "alignof".
10879
10880 2018-04-30  Tom Tromey  <tom@tromey.com>
10881
10882         PR exp/17095:
10883         * NEWS: Update.
10884         * std-operator.def (UNOP_ALIGNOF): New operator.
10885         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10886         New.
10887         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10888         * c-lang.c (c_op_print_tab): Add alignof.
10889         * c-exp.y (ALIGNOF): New token.
10890         (exp): Add "ALIGNOF" production.
10891         (ident_tokens): Add _Alignof and alignof.
10892
10893 2018-04-30  Tom Tromey  <tom@tromey.com>
10894
10895         * i386-tdep.c (i386_type_align): New function.
10896         (i386_gdbarch_init): Update.
10897         * gdbarch.sh (type_align): New method.
10898         * gdbarch.c, gdbarch.h: Rebuild.
10899         * arch-utils.h (default_type_align): Declare.
10900         * arch-utils.c (default_type_align): New function.
10901         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10902         (struct type) <align_log2>: New field.
10903         <instance_flags>: Now a bitfield.
10904         (TYPE_RAW_ALIGN): New macro.
10905         (type_align, type_raw_align, set_type_align): Declare.
10906         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10907         functions.
10908         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10909         (get_alignment, maybe_set_alignment): New functions.
10910         (read_structure_type, read_enumeration_type, read_array_type)
10911         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10912         (read_subrange_type, read_base_type): Set type alignment.
10913
10914 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10915
10916         * dwarf2read.c (read_index_from_section): Use bool.
10917
10918 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10919
10920         PR gdb/22950
10921         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10922         with #ifdef.
10923
10924 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10925
10926         PR build/22873
10927         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10928         last step, and do it atomically.
10929
10930 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10931
10932         * compile/compile-c-types.c (convert_int, convert_float):
10933         Update for C FE v1.
10934
10935 2018-04-27  Tom Tromey  <tom@tromey.com>
10936
10937         PR rust/22545:
10938         * rust-lang.c (rust_inclusive_range_type_p): New function.
10939         (rust_range): Handle inclusive ranges.
10940         (rust_compute_range): Likewise.
10941         * rust-exp.y (struct rust_op) <inclusive>: New field.
10942         (DOTDOTEQ): New constant.
10943         (range_expr): Add "..=" productions.
10944         (operator_tokens): Add "..=" token.
10945         (ast_range): Add "inclusive" parameter.
10946         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10947         ranges.
10948         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10949         bounds values.
10950         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10951         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10952         Update comments.
10953         * expprint.c (print_subexp_standard): Handle new bounds values.
10954         (dump_subexp_body_standard): Likewise.
10955
10956 2018-04-27  Tom Tromey  <tom@tromey.com>
10957
10958         * configure: Rebuild.
10959         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10960         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10961         "OVERRIDE".
10962         (class symbol_needs_eval_context): Likewise.
10963         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10964         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10965         "virtual".
10966         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10967         "override".
10968         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10969         * aarch64-tdep.c (instruction_reader::read): Use "override".
10970         (instruction_reader_test::read): Likewise.
10971         * arm-tdep.c (instruction_reader::read): Use "override".
10972         (instruction_reader_thumb::read): Likewise.
10973
10974 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10975
10976         PR remote/9665
10977         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10978         instead of remote_send.
10979         (remote_send): Remove.
10980
10981 2018-04-26  Pedro Alves  <palves@redhat.com>
10982
10983         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10984         find_function_start_sal instead of find_pc_line.
10985
10986 2018-04-26  Pedro Alves  <palves@redhat.com>
10987
10988         * breakpoint.c (set_breakpoint_location_function): Handle
10989         mst_data_gnu_ifunc.
10990         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10991         * elfread.c (elf_symtab_read): Give data symbols with
10992         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10993         (elf_rel_plt_read): Update comment.
10994         * linespec.c (convert_linespec_to_sals): Handle
10995         mst_data_gnu_ifunc.
10996         (minsym_found): Handle mst_data_gnu_ifunc.
10997         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10998         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10999         * parse.c (find_minsym_type_and_address): Handle
11000         mst_data_gnu_ifunc.
11001         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11002         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11003         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11004         comment.
11005         <mst_data_gnu_ifunc>: New enumerator.
11006
11007 2018-04-26  Pedro Alves  <palves@redhat.com>
11008
11009         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11010         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11011         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11012         Handle it.
11013         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11014         (lookup_minimal_symbol_by_pc): Adjust.
11015         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11016         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11017         * minsyms.h (lookup_msym_prefer): New enum.
11018         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11019         parameter by a lookup_msym_prefer parameter.
11020
11021 2018-04-26  Pedro Alves  <palves@redhat.com>
11022
11023         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11024         ends in "@plt" instead of looking at the symbol's section.
11025
11026 2018-04-26  Pedro Alves  <palves@redhat.com>
11027
11028         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11029         all references.
11030         (find_pc_partial_function_gnu_ifunc): Rename to ...
11031         (find_pc_partial_function): ... this, and remove references to
11032         'is_gnu_ifunc_p'.
11033         (find_pc_partial_function): Delete old implementation.
11034         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11035
11036 2018-04-26  Pedro Alves  <palves@redhat.com>
11037
11038         * linespec.c (struct bound_minimal_symbol_search_key): New.
11039         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11040         skip first line if we found a GNU ifunc minimal symbol by name.
11041         (compare_msymbols): Change parameters to work with a destructured
11042         lhs minsym.
11043         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11044         functions.
11045
11046 2018-04-26  Pedro Alves  <palves@redhat.com>
11047
11048         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11049         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11050         address/name.
11051         (add_location_to_breakpoint): Store the minsym and the objfile in
11052         the breakpoint location.
11053         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11054         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11055         Record the minsym in the sal.
11056         * symtab.h (symtab_and_line) <msymbol>: New field.
11057
11058 2018-04-26  Pedro Alves  <palves@redhat.com>
11059
11060         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11061         unless we actually resolved the ifunc.
11062
11063 2018-04-26  Pedro Alves  <palves@redhat.com>
11064
11065         * c-exp.y (variable production): Prefer ifunc minsyms over
11066         regular function symbols.
11067         * symtab.c (find_gnu_ifunc): New function.
11068         * minsyms.h (lookup_msym_prefer): New enum.
11069         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11070         parameter by a lookup_msym_prefer parameter.
11071         * symtab.h (find_gnu_ifunc): New declaration.
11072
11073 2018-04-26  Pedro Alves  <palves@redhat.com>
11074
11075         * blockframe.c (find_gnu_ifunc_target_type): New function.
11076         (find_function_type): New.
11077         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11078         return a value with a memory address.
11079         (eval_call): For calls to GNU ifunc functions, try to find the
11080         type of the target function from the type that the resolver
11081         returns.
11082         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11083         symbols.
11084         * infcall.c (find_function_return_type): Delete.
11085         (find_function_addr): Add 'function_type' parameter.  For calls to
11086         GNU ifunc functions, try to find the type of the target function
11087         from the type that the resolver returns, and return it via
11088         FUNCTION_TYPE.
11089         (call_function_by_hand_dummy): Adjust to use the function type
11090         returned by find_function_addr.
11091         (find_function_addr): Add 'function_type' parameter and move
11092         description here.
11093         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11094         declarations.
11095
11096 2018-04-26  Pedro Alves  <palves@redhat.com>
11097
11098         * c-exp.y (variable production): Skip finding an alias for ifunc
11099         symbols.
11100
11101 2018-04-26  Pedro Alves  <palves@redhat.com>
11102
11103         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11104
11105 2018-04-25  Pedro Alves  <palves@redhat.com>
11106
11107         * infcmd.c (kill_command): Print the pid as string, not the whole
11108         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11109         message.
11110         * remote.c (remote_detach_1): Print the pid as string, not the
11111         whole thread's ptid.
11112
11113 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11114             Sergio Durigan Junior  <sergiodj@redhat.com>
11115             Pedro Alves  <palves@redhat.com>
11116
11117         * infcmd.c (kill_command): Print message when inferior has
11118         been killed.
11119         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11120         '1'.
11121         (add_inferior): Improve message printed when
11122         'print_inferior_events' is on.
11123         (exit_inferior): Remove message printed when
11124         'print_inferior_events' is on.
11125         (detach_inferior): Improve message printed when
11126         'print_inferior_events' is on.
11127         (initialize_inferiors): Use 'add_inferior_silent' to set
11128         'current_inferior_'.
11129         * inferior.h (print_inferior_events): Declare here as
11130         'extern'.
11131         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11132         '[Detaching...]' messages when 'print_inferior_events' is on.
11133         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11134         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11135         'Detaching after fork from child...', replace it by '... from
11136         parent...'.
11137         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11138         prefix/suffix when printing 'Detaching...' messages.  Print
11139         them when 'print_inferior_events' is on.
11140         * remote.c (remote_detach_1): Print message when detaching
11141         from inferior and '!is_fork_parent'.
11142
11143 2018-04-24  Tom Tromey  <tom@tromey.com>
11144
11145         * cli-out.h: Reindent.
11146
11147 2018-04-24  Tom Tromey  <tom@tromey.com>
11148
11149         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11150         (cli_ui_out::do_field_string): Use fputs_filtered.
11151         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11152
11153 2018-04-23  Tom Tromey  <tom@tromey.com>
11154
11155         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11156         gdb::unique_xmalloc_ptr.
11157
11158 2018-04-23  Tom Tromey  <tom@tromey.com>
11159
11160         * configure: Rebuild.
11161
11162 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11163
11164         PR gdb/23095
11165         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11166         prepare_for_testing.  Set normal_bp to r_debug_state if target
11167         is bsd.
11168
11169 2018-04-21  Pedro Alves  <palves@redhat.com>
11170             Rajendra SY  <rajendra.sy@gmail.com>
11171
11172         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11173         * remote.c (extended_remote_attach): In all-stop mode, mark the
11174         thread as executing.
11175
11176 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11177
11178         * thread.c (thread_apply_all_command): Fix comment.
11179         (thread_command): Fix comment.
11180
11181 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11182
11183         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11184         parameter.
11185         * features/aarch64-core.c (create_feature_aarch64_core):
11186         Regenerate.
11187         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11188         Likewise.
11189         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11190         Likewise.
11191         * features/i386/32bit-avx512.c
11192         (create_feature_i386_32bit_avx512): Likewise.
11193         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11194         Likewise.
11195         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11196         Likewise.
11197         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11198         Likewise.
11199         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11200         Likewise.
11201         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11202         Likewise.
11203         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11204         Likewise.
11205         * features/i386/64bit-avx512.c
11206         (create_feature_i386_64bit_avx512): Likewise.
11207         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11208         Likewise.
11209         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11210         Likewise.
11211         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11212         Likewise.
11213         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11214         Likewise.
11215         * features/i386/64bit-segments.c
11216         (create_feature_i386_64bit_segments): Likewise.
11217         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11218         Likewise.
11219         * features/i386/x32-core.c
11220         (create_feature_i386_x32_core): Likewise.
11221         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11222         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11223         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11224         * target-descriptions.c: In generated code, don't pass xml
11225         filename.
11226
11227 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11228
11229         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11230         (print_xml_feature::visit_post): Likewise.
11231         (print_xml_feature::visit): Likewise.
11232         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11233         (print_xml_feature): Add new class.
11234         * regformats/regdat.sh: Null xmltarget on feature targets.
11235         * target-descriptions.c (struct target_desc): Add xmltarget.
11236         (maintenance_check_tdesc_xml_convert): Add unittest function.
11237         (tdesc_get_features_xml): Add function to get xml.
11238         (maintenance_check_xml_descriptions): Test xml generation.
11239         * xml-tdesc.c (string_read_description_xml): Add function.
11240         * xml-tdesc.h (string_read_description_xml): Add declaration.
11241
11242 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11243
11244         * features/Makefile: Add feature marker to targets with new style
11245         target descriptions.
11246         * regformats/aarch64.dat: Regenerate.
11247         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11248         * regformats/i386/amd64-avx-linux.dat: Likewise.
11249         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11250         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11251         * regformats/i386/amd64-linux.dat: Likewise.
11252         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11253         * regformats/i386/amd64.dat: Likewise.
11254         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11255         * regformats/i386/i386-avx-linux.dat: Likewise.
11256         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11257         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11258         * regformats/i386/i386-linux.dat: Likewise.
11259         * regformats/i386/i386-mmx-linux.dat: Likewise.
11260         * regformats/i386/i386-mpx-linux.dat: Likewise.
11261         * regformats/i386/i386.dat: Likewise.
11262         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11263         * regformats/i386/x32-avx-linux.dat: Likewise.
11264         * regformats/i386/x32-linux.dat: Likewise.
11265         * regformats/tic6x-c62x-linux.dat: Likewise.
11266         * regformats/tic6x-c64x-linux.dat: Likewise.
11267         * regformats/tic6x-c64xp-linux.dat: Likewise.
11268         * regformats/regdat.sh: Parse feature marker.
11269
11270 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11271
11272         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11273         (tdesc_osabi_name): Likewise.
11274         * target-descriptions.c (tdesc_architecture_name): Add new
11275         function.
11276         (tdesc_osabi_name): Likewise.
11277
11278 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11279
11280         * common/tdesc.c (tdesc_predefined_type): Move to here.
11281         (tdesc_named_type): Likewise.
11282         (tdesc_create_vector): Likewise.
11283         (tdesc_create_struct): Likewise.
11284         (tdesc_set_struct_size): Likewise.
11285         (tdesc_create_union): Likewise.
11286         (tdesc_create_flags): Likewise.
11287         (tdesc_create_enum): Likewise.
11288         (tdesc_add_field): Likewise.
11289         (tdesc_add_typed_bitfield): Likewise.
11290         (tdesc_add_bitfield): Likewise.
11291         (tdesc_add_flag): Likewise.
11292         (tdesc_add_enum_value): Likewise.
11293         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11294         (struct tdesc_type_vector): Likewise.
11295         (struct tdesc_type_field): Likewise.
11296         (struct tdesc_type_with_fields): Likewise.
11297         (tdesc_create_enum): Add declaration.
11298         (tdesc_add_typed_bitfield): Likewise.
11299         (tdesc_add_enum_value): Likewise.
11300         * target-descriptions.c (tdesc_type_field): Move from here.
11301         (tdesc_type_builtin): Likewise.
11302         (tdesc_type_vector): Likewise.
11303         (tdesc_type_with_fields): Likewise.
11304         (tdesc_predefined_types): Likewise.
11305         (tdesc_named_type): Likewise.
11306         (tdesc_create_vector): Likewise.
11307         (tdesc_create_struct): Likewise.
11308         (tdesc_set_struct_size): Likewise.
11309         (tdesc_create_union): Likewise.
11310         (tdesc_create_flags): Likewise.
11311         (tdesc_create_enum): Likewise.
11312         (tdesc_add_field): Likewise.
11313         (tdesc_add_typed_bitfield): Likewise.
11314         (tdesc_add_bitfield): Likewise.
11315         (tdesc_add_flag): Likewise.
11316         (tdesc_add_enum_value): Likewise.
11317         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11318         (tdesc_add_typed_bitfield): Likewise.
11319         (tdesc_add_enum_value): Likewise.
11320
11321 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11322
11323         * common/tdesc.c (tdesc_feature::accept): Move to here.
11324         (tdesc_feature::operator==): Likewise.
11325         (tdesc_create_reg): Likewise.
11326         * common/tdesc.h (tdesc_type_kind): Likewise.
11327         (struct tdesc_type): Likewise.
11328         (struct tdesc_feature): Likewise.
11329         * regformats/regdat.sh: Create a feature.
11330         * target-descriptions.c (tdesc_type_kind): Move from here.
11331         (tdesc_type): Likewise.
11332         (tdesc_type_up): Likewise.
11333         (tdesc_feature): Likewise.
11334         (tdesc_create_reg): Likewise.
11335
11336 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11337
11338         * Makefile.in: Add arch/tdesc.c
11339         * common/tdesc.c: New file.
11340         * common/tdesc.h (tdesc_element_visitor): Move to here.
11341         (tdesc_element): Likewise.
11342         (tdesc_reg): Likewise.
11343         (tdesc_reg_up): Likewise.
11344         * regformats/regdef.h (reg): Add offset to constructors.
11345         * target-descriptions.c (tdesc_element_visitor): Move from here.
11346         (tdesc_element): Likewise.
11347         (tdesc_reg): Likewise.
11348         (tdesc_reg_up): Likewise.
11349
11350 2018-04-17  Tom Tromey  <tom@tromey.com>
11351
11352         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11353         discriminant field.
11354
11355 2018-04-17  Tom Tromey  <tom@tromey.com>
11356
11357         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11358
11359 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11360
11361         * symtab.c (print_symbol_info): Skip printing filename and line
11362         number when `last' is NULL.
11363         (symtab_symbol_info): Use empty string instead of NULL for first
11364         invocation of print_symbol_info.
11365         (rbreak_command): Pass NULL to `last' parameter of
11366         print_symbol_info.
11367
11368 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11369
11370         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11371         instead of nullptr.
11372
11373 2018-04-16  Pedro Alves  <palves@redhat.com>
11374
11375         * MAINTAINERS (sh): Remove.
11376         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11377         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11378         (ALLDEPFILES): Remove sh64-tdep.c.
11379         * NEWS: Mentions that support for SH-5/SH64 is removed.
11380         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11381         (sh*-*-openbsd*): Ditto.
11382         (sh64-*-elf*): Remove.
11383         (sh*): Remove.
11384         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11385         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11386         * sh-tdep.c: No longer include "sh64-tdep.h".
11387         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11388         * sh64-tdep.c, sh64-tdep.h: Remove files.
11389
11390 2018-04-16  Pedro Alves  <palves@redhat.com>
11391
11392         * MAINTAINERS: Remove m88k.
11393         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11394         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11395         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11396         * NEWS: Mention that support for m88k was removed.
11397         * configure.host (m88*-*-*): Remove support.
11398         * configure.nat (m88k-*-*): Remove support.
11399         * configure.tgt (m88*-*-openbsd*): Remove.
11400         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11401
11402 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11403
11404         * configure.tgt (x86_tobjs): New variable.
11405         (amd64_tobjs, i386_tobjs): Use it.
11406
11407 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11408
11409         * symtab.c (print_symbol_info): Precede the symbol definition by
11410         the line number when available.
11411         * NEWS: Advertise this enhancement.
11412
11413 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11414
11415         * NEWS (New options): announce set/show record btrace cpu.
11416         * btrace.c: Include record-btrace.h.
11417         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11418         the vendor is unknown.
11419         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11420         Maybe overwrite the btrace configuration's cpu.
11421         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11422         (btrace_fetch): Add cpu parameter.  Update callers.
11423         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11424         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11425         errata workarounds if the vendor is unknown.
11426         * python/py-record-btrace.c: Include record-btrace.h.
11427         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11428         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11429         * record-btrace.c (record_btrace_cpu_state_kind): New.
11430         (record_btrace_cpu): New.
11431         (set_record_btrace_cpu_cmdlist): New.
11432         (record_btrace_get_cpu): New.
11433         (require_btrace_thread, record_btrace_info)
11434         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11435         (cmd_set_record_btrace_cpu_none): New.
11436         (cmd_set_record_btrace_cpu_auto): New.
11437         (cmd_set_record_btrace_cpu): New.
11438         (cmd_show_record_btrace_cpu): New.
11439         (_initialize_record_btrace): Initialize set/show record btrace cpu
11440         commands.
11441         * record-btrace.h (record_btrace_get_cpu): New.
11442
11443 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11444
11445         * record.c (set_record_command): Fix typo in message.
11446
11447 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11448
11449         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11450
11451 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11452
11453         * infrun.c (process_event_stop_test): Call
11454         gdbarch_in_indirect_branch_thunk.
11455         * gdbarch.sh (in_indirect_branch_thunk): New.
11456         * gdbarch.c: Regenerated.
11457         * gdbarch.h: Regenerated.
11458         * x86-tdep.h: New.
11459         * x86-tdep.c: New.
11460         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11461         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11462         (ALLDEPFILES): Add x86-tdep.c.
11463         * arch-utils.h (default_in_indirect_branch_thunk): New.
11464         * arch-utils.c (default_in_indirect_branch_thunk): New.
11465         * i386-tdep: Include x86-tdep.h.
11466         (i386_in_indirect_branch_thunk): New.
11467         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11468         function.
11469         * amd64-tdep: Include x86-tdep.h.
11470         (amd64_in_indirect_branch_thunk): New.
11471         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11472
11473 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11474
11475         PR gdb/23053
11476         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11477         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11478         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11479         regression.
11480
11481 2018-04-12  Tom Tromey  <tom@tromey.com>
11482
11483         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11484         (rust_evaluate_subexp): Likewise.
11485
11486 2018-04-12  Pedro Alves  <palves@redhat.com>
11487
11488         * procfs.c (procfs_detach): Make forward declaration's prototype
11489         match definition's protototype.
11490         (proc_get_LDT_entry): Remove stale do_cleanups call.
11491
11492 2018-04-12  Pedro Alves  <palves@redhat.com>
11493
11494         * target.h (target_ops::to_has_exited): Delete.
11495         (target_has_exited): Delete.
11496         * target-delegates.c: Regenerate.
11497
11498 2018-04-11  Pedro Alves  <palves@redhat.com>
11499
11500         * target.c (fileio_fh_t::t): Add comment.
11501         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11502         (target_fileio_close): Handle a NULL target.
11503         (invalidate_fileio_fh): New.
11504         (target_close): Call it.
11505         * remote.c (remote_hostio_send_command): No longer check whether
11506         remote_desc is open.
11507
11508 2018-04-11  Pedro Alves  <palves@redhat.com>
11509
11510         * target.c (fileio_fh_t): Make it a named struct instead of a
11511         typedef.
11512         (fileio_fh_t::is_closed): New method.
11513         (DEF_VEC_O (fileio_fh_t)): Remove.
11514         (fileio_fhandles): Now a std::vector.
11515         (is_closed_fileio_fh): Delete.
11516         (acquire_fileio_fd): Adjust.  Rename parameters.
11517         (release_fileio_fd): Adjust.
11518         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11519         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11520         (target_fileio_close): Adjust.
11521
11522 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11523
11524         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11525         index.
11526
11527 2018-04-10  Pedro Alves  <palves@redhat.com>
11528
11529         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11530         (scoped_finish_thread_state): New class.
11531         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11532         cleanup.
11533         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11534         (fetch_inferior_event, normal_stop): Likewise.
11535         * thread.c (finish_thread_state_cleanup): Delete.
11536
11537 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11538             Pedro Alves  <palves@redhat.com>
11539
11540         * value.c: Include "selftest.h" and "common/array-view.h".
11541         (struct range) <operator ==>: New.
11542         (test_ranges_contain): New.
11543         (check_ranges_vector): New.
11544         (test_insert_into_bit_range_vector): New.
11545         (_initialize_values): Register selftests.
11546         * common/array-view.h (operator==, operator!=): New.
11547
11548 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11549
11550         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11551         an iterator.
11552         * inline-frame.c: Include <algorithm>.
11553         (struct inline_state): Add constructor.
11554         (inline_state_s): Remove.
11555         (DEF_VEC_O(inline_state_s)): Remove.
11556         (inline_states): Change type to std::vector.
11557         (find_inline_frame_state): Adjust to std::vector.
11558         (allocate_inline_frame_state): Remove.
11559         (clear_inline_frame_state): Adjust to std::vector.
11560         (skip_inline_frames): Adjust to std::vector.
11561
11562 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11563
11564         * tracepoint.h (struct trace_state_variable): Add constructor.
11565         <name>: Change type to std::string.
11566         * tracepoint.c (tsv_s): Remove.
11567         (DEF_VEC_O(tsv_s)): Remove.
11568         (tvariables): Change to std::vector.
11569         (create_trace_state_variable): Adjust to std::vector.
11570         (find_trace_state_variable): Likewise.
11571         (find_trace_state_variable_by_number): Likewise.
11572         (delete_trace_state_variable): Likewise.
11573         (trace_variable_command): Adjust to std::string.
11574         (delete_trace_variable_command): Likewise.
11575         (tvariables_info_1): Adjust to std::vector.
11576         (save_trace_state_variables): Likewise.
11577         (start_tracing): Likewise.
11578         (merge_uploaded_trace_state_variables): Adjust to std::vector
11579         and std::string.
11580         * target.h (struct target_ops)
11581         <to_download_trace_state_variable>: Pass reference to
11582         trace_state_variable.
11583         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11584         * target-delegates.c: Re-generate.
11585         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11586         (mi_tsv_deleted): Likewise.
11587         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11588         * remote.c (remote_download_trace_state_variable): Change
11589         pointer to reference and adjust.
11590         * make-target-delegates (parse_argtypes): Handle references.
11591         (write_function_header): Likewise.
11592         (munge_type): Likewise.
11593
11594 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11595
11596         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11597         string_view-selftests.c.
11598         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11599         testsuite.
11600         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11601         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11602         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11603         * unittests/basic_string_view/element_access/char/1.cc:
11604         Likewise.
11605         * unittests/basic_string_view/element_access/char/empty.cc:
11606         Likewise.
11607         * unittests/basic_string_view/element_access/char/front_back.cc:
11608         Likewise.
11609         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11610         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11611         Likewise.
11612         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11613         Likewise.
11614         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11615         Likewise.
11616         * unittests/basic_string_view/operations/compare/char/1.cc:
11617         Likewise.
11618         * unittests/basic_string_view/operations/compare/char/13650.cc:
11619         Likewise.
11620         * unittests/basic_string_view/operations/copy/char/1.cc:
11621         Likewise.
11622         * unittests/basic_string_view/operations/data/char/1.cc:
11623         Likewise.
11624         * unittests/basic_string_view/operations/find/char/1.cc:
11625         Likewise.
11626         * unittests/basic_string_view/operations/find/char/2.cc:
11627         Likewise.
11628         * unittests/basic_string_view/operations/find/char/3.cc:
11629         Likewise.
11630         * unittests/basic_string_view/operations/find/char/4.cc:
11631         Likewise.
11632         * unittests/basic_string_view/operations/rfind/char/1.cc:
11633         Likewise.
11634         * unittests/basic_string_view/operations/rfind/char/2.cc:
11635         Likewise.
11636         * unittests/basic_string_view/operations/rfind/char/3.cc:
11637         Likewise.
11638         * unittests/basic_string_view/operations/substr/char/1.cc:
11639         Likewise.
11640         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11641         * unittests/string_view-selftests.c: New file.
11642
11643 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11644
11645         * unittests/basic_string_view/capacity/1.cc: New file.
11646         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11647         * unittests/basic_string_view/cons/char/1.cc: New file.
11648         * unittests/basic_string_view/cons/char/2.cc: New file.
11649         * unittests/basic_string_view/cons/char/3.cc: New file.
11650         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11651         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11652         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11653         * unittests/basic_string_view/element_access/char/1.cc: New file.
11654         * unittests/basic_string_view/element_access/char/2.cc: New file.
11655         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11656         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11657         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11658         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11659         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11660         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11661         * unittests/basic_string_view/include.cc: New file.
11662         * unittests/basic_string_view/inserters/char/1.cc: New file.
11663         * unittests/basic_string_view/inserters/char/2.cc: New file.
11664         * unittests/basic_string_view/inserters/char/3.cc: New file.
11665         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11666         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11667         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11668         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11669         * unittests/basic_string_view/literals/types.cc: New file.
11670         * unittests/basic_string_view/literals/values.cc: New file.
11671         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11672         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11673         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11674         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11675         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11676         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11677         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11678         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11679         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11680         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11681         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11682         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11683         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11684         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11685         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11686         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11687         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11688         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11689         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11690         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11691         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11692         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11693         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11694         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11695         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11696         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11697         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11698         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11699         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11700         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11701         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11702         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11703         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11704         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11705         * unittests/basic_string_view/operators/char/2.cc: New file.
11706         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11707         * unittests/basic_string_view/range_access/char/1.cc: New file.
11708         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11709         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11710         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11711         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11712         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11713         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11714         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11715         * unittests/basic_string_view/typedefs.cc: New file.
11716         * unittests/basic_string_view/types/1.cc: New file.
11717
11718 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11719
11720         * common/gdb_string_view.h: Remove libstdc++ implementation
11721         details, adjust to gdb reality.
11722         * common/gdb_string_view.tcc: Likewise.
11723         * cli/cli-script.c (struct string_view): Remove.
11724         (user_args) <m_args>: Change element type to gdb::string_view.
11725         (user_args::insert_args): Adjust.
11726
11727 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11728
11729         * common/gdb_string_view.h: New file.
11730         * common/gdb_string_view.tcc: New file.
11731
11732 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11733
11734         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11735         * configure: Re-generate.
11736
11737 2018-04-09  Pedro Alves  <palves@redhat.com>
11738
11739         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11740         (set_target_gdbarch): Call
11741         gdb::observers::architecture_changed.notify instead of
11742         observer_notify_architecture_changed.
11743
11744 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11745
11746         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11747         (do_restore_current_traceframe_cleanup): Remove.
11748         (restore_current_traceframe_cleanup_dtor): Remove.
11749         (make_cleanup_restore_current_traceframe): Remove.
11750         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11751         New.
11752         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11753         * infrun.c (fetch_inferior_event): Use
11754         scoped_restore_current_traceframe.
11755
11756 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11757
11758         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11759         Remove.
11760         <n_allocated_type_units>: Remove.
11761         <all_type_units>: Change to std::vector.
11762         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11763         to std::vector change.
11764         (dwarf2_per_objfile::get_cutu): Likewise.
11765         (dwarf2_per_objfile::get_tu): Likewise.
11766         (create_signatured_type_table_from_index): Likewise.
11767         (create_signatured_type_table_from_debug_names): Likewise.
11768         (dw2_symtab_iter_next): Likewise.
11769         (dw2_print_stats): Likewise.
11770         (dw2_expand_all_symtabs): Likewise.
11771         (dw2_expand_marked_cus): Likewise.
11772         (dw2_debug_names_iterator::next): Likewise.
11773         (dwarf2_initialize_objfile): Likewise.
11774         (add_signatured_type_cu_to_table): Likewise.
11775         (create_all_type_units): Likewise.
11776         (add_type_unit): Likewise.
11777         (struct tu_abbrev_offset): Add constructor.
11778         (build_type_psymtabs_1): Adjust to std::vector change.
11779         (print_tu_stats): Likewise.
11780         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11781         (write_debug_names): Likewise.
11782
11783 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11784
11785         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11786         Make an std::vector.
11787         <n_comp_units>: Remove.
11788         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11789         to std::vector change.
11790         (dwarf2_per_objfile::get_cutu): Likewise.
11791         (dwarf2_per_objfile::get_cu): Likewise.
11792         (create_cus_from_index): Likewise.
11793         (create_addrmap_from_index): Likewise.
11794         (create_addrmap_from_aranges): Likewise.
11795         (dwarf2_read_index): Likewise.
11796         (dw2_find_last_source_symtab): Likewise.
11797         (dw2_map_symtabs_matching_filename): Likewise.
11798         (dw2_symtab_iter_next): Likewise.
11799         (dw2_print_stats): Likewise.
11800         (dw2_expand_all_symtabs): Likewise.
11801         (dw2_expand_symtabs_with_fullname): Likewise.
11802         (dw2_expand_marked_cus): Likewise.
11803         (dw2_map_symbol_filenames): Likewise.
11804         (create_cus_from_debug_names): Likewise.
11805         (dwarf2_read_debug_names): Likewise.
11806         (dw2_debug_names_iterator::next): Likewise.
11807         (dwarf2_initialize_objfile): Likewise.
11808         (set_partial_user): Likewise.
11809         (dwarf2_build_psymtabs_hard): Likewise.
11810         (read_comp_units_from_section): Remove arguments, adjust to
11811         std::vector change.
11812         (create_all_comp_units): Adjust to std::vector and
11813         read_comp_units_from_section changes.
11814         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11815         change.
11816         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11817         (psyms_seen_size): Likewise.
11818         (write_gdbindex): Likewise.
11819         (write_debug_names): Likewise.
11820
11821 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11822
11823         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11824         with dwarf2_per_objfile.
11825         (create_cus_from_index): Likewise.
11826         (create_signatured_type_table_from_index): Likewise.
11827         (dwarf2_read_index): Likewise.
11828         (dwarf2_initialize_objfile): Likewise.
11829         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11830         per_cu rather than get_dwarf2_per_objfile.
11831
11832 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11833
11834         * dwarf2read.h (struct signatured_type): Forward declare.
11835         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11836         New methods.
11837         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11838         (dw2_get_cutu): ...this.
11839         (dwarf2_per_objfile::get_cu): Rename from...
11840         (dw2_get_cu): ...this.
11841         (dwarf2_per_objfile::get_tu): New.
11842         (create_addrmap_from_index): Adjust.
11843         (create_addrmap_from_aranges): Adjust.
11844         (dw2_find_last_source_symtab): Adjust.
11845         (dw2_map_symtabs_matching_filename): Adjust.
11846         (dw2_symtab_iter_next): Adjust.
11847         (dw2_print_stats): Adjust.
11848         (dw2_expand_all_symtabs): Adjust.
11849         (dw2_expand_symtabs_with_fullname): Adjust.
11850         (dw2_expand_marked_cus): Adjust.
11851         (dw_expand_symtabs_matching_file_matcher): Adjust.
11852         (dw2_map_symbol_filenames): Adjust.
11853         (dw2_debug_names_iterator::next): Adjust.
11854         (dwarf2_initialize_objfile): Adjust.
11855         (set_partial_user): Adjust.
11856         (dwarf2_build_psymtabs_hard): Adjust.
11857
11858 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11859
11860         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11861         Remove unused variables.
11862         (dw2_map_symtabs_matching_filename): Likewise.
11863         (dwarf2_record_block_ranges): Likewise.
11864         (dwarf2_read_addr_index): Likewise.
11865         (follow_die_offset): Likewise.
11866
11867 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11868
11869         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11870         to symbol_file_add_main.
11871
11872 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11873
11874         PR mi/22299
11875         * mi/mi-console.c (do_fputc_async_safe): New.
11876         (mi_console_file::write_async_safe): New.
11877         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11878         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11879         New.
11880         * ui-file.c (ui_file::putstrn): Adjust call to
11881         fputstrn_unfiltered.
11882         * utils.c (printchar): Replace do_fputs and do_fprintf
11883         parameters by do_fputc.
11884         (fputstr_filtered): Adjust call to printchar.
11885         (fputstr_unfiltered): Likewise.
11886         (fputstrn_filtered): Likewise.
11887         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11888         printchar.
11889         * utils.h (do_fputc_ftype): New typedef.
11890         (fputstrn_unfiltered): Add do_fputc parameter.
11891
11892 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11893
11894         * regformats/i386/i386-avx.dat: Remove.
11895
11896 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11897
11898         PR gdb/22979
11899         * amd64-tdep.c (amd64_none_init_abi): New function.
11900         (amd64_x32_none_init_abi): New function.
11901         (_initialize_amd64_tdep): Register handlers for x86-64 and
11902         x64_32 with GDB_OSABI_NONE.
11903         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11904         GDB_OSABI_NONE osabi.
11905
11906 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11907
11908         PR gdb/22980
11909         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11910         GDB_OSABI_NONE.
11911         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11912         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11913
11914 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11915
11916         * common/byte-vector.h (char_vector): New type.
11917         * target.h (target_read_alloc): Return
11918         gdb::optional<byte_vector>.
11919         (target_read_stralloc): Return gdb::optional<char_vector>.
11920         (target_get_osdata): Return gdb::optional<char_vector>.
11921         * target.c (target_read_alloc_1): Templatize.  Replacement
11922         manual memory management with vector.
11923         (target_read_alloc): Change return type, adjust.
11924         (target_read_stralloc): Change return type, adjust.
11925         (target_get_osdata): Change return type, adjust.
11926         * auxv.c (struct auxv_info) <length>: Remove.
11927         <data>: Change type to gdb::optional<byte_vector>.
11928         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11929         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11930         (target_auxv_search): Adjust.
11931         (fprint_target_auxv): Adjust.
11932         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11933         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11934         (linux_make_corefile_notes): Adjust.
11935         * osdata.c (get_osdata): Adjust.
11936         * remote.c (remote_get_threads_with_qxfer): Adjust.
11937         (remote_memory_map): Adjust.
11938         (remote_traceframe_info): Adjust.
11939         (btrace_read_config): Adjust.
11940         (remote_read_btrace): Adjust.
11941         (remote_pid_to_exec_file): Adjust.
11942         * solib-aix.c (solib_aix_get_library_list): Adjust.
11943         * solib-dsbt.c (decode_loadmap): Don't free buf.
11944         (dsbt_get_initial_loadmaps): Adjust.
11945         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11946         * solib-target.c (solib_target_current_sos): Adjust.
11947         * tracepoint.c (sdata_make_value): Adjust.
11948         * xml-support.c (xinclude_start_include): Adjust.
11949         (xml_fetch_content_from_file): Adjust.
11950         * xml-support.h (xml_fetch_another): Change return type.
11951         (xml_fetch_content_from_file): Change return type.
11952         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11953         * xml-tdesc.c (file_read_description_xml): Adjust.
11954         (fetch_available_features_from_target): Change return type.
11955         (target_fetch_description_xml): Adjust.
11956         (target_read_description_xml): Adjust.
11957
11958 2018-04-06  Tom Tromey  <tom@tromey.com>
11959
11960         * value.c (~value): Update.
11961         (struct value) <contents>: Now unique_xmalloc_ptr.
11962         (value_contents_bits_eq, allocate_value_contents)
11963         (value_contents_raw, value_contents_all_raw)
11964         (value_contents_for_printing, value_contents_for_printing_const)
11965         (set_value_enclosing_type): Update.
11966
11967 2018-04-06  Tom Tromey  <tom@tromey.com>
11968
11969         * value.c (range_s): Remove typedef, VEC.
11970         (struct range): Add operator<.
11971         (range_lessthan): Remove.
11972         (ranges_contain): Change type.
11973         (~value): Update.
11974         (struct value) <unavailable, optimized_out>: Now std::vector.
11975         (value_entirely_available)
11976         (value_entirely_covered_by_range_vector)
11977         (value_entirely_unavailable, value_entirely_optimized_out):
11978         Update.
11979         (insert_into_bit_range_vector): Change argument type.
11980         (find_first_range_overlap): Likewise.
11981         (struct ranges_and_idx, value_contents_bits_eq)
11982         (require_not_optimized_out, require_available): Update.
11983         (ranges_copy_adjusted): Change argument types.
11984         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11985
11986 2018-04-06  Tom Tromey  <tom@tromey.com>
11987
11988         * value.c (~value): Update.
11989         (struct value) <parent>: Now a value_ref_ptr.
11990         (value_parent, set_value_parent, value_address, value_copy):
11991         Update.
11992
11993 2018-04-06  Tom Tromey  <tom@tromey.com>
11994
11995         * value.c (struct value): Add constructor, destructor, and member
11996         initializers.
11997         (allocate_value_lazy, value_decref): Update.
11998
11999 2018-04-06  Tom Tromey  <tom@tromey.com>
12000
12001         * value.c (struct value) <released, next>: Remove.
12002         (all_values): Now a std::vector.
12003         (allocate_value_lazy): Update.
12004         (value_next): Remove.
12005         (value_mark, value_free_to_mark, release_value)
12006         (value_release_to_mark): Update.
12007
12008 2018-04-06  Tom Tromey  <tom@tromey.com>
12009
12010         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12011         (free_value_chain): Remove.
12012         * value.c (free_value_chain): Remove.
12013         (value_release_to_mark): Return a std::vector.
12014         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12015         std::vector.
12016         (check_condition): Update.
12017         * eval.c (fetch_subexp_value): Change "val_chain" to a
12018         std::vector.
12019         * breakpoint.c (update_watchpoint): Update.
12020         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12021
12022 2018-04-06  Tom Tromey  <tom@tromey.com>
12023
12024         * value.h (free_all_values): Remove.
12025         * value.c (free_all_values): Remove.
12026
12027 2018-04-06  Tom Tromey  <tom@tromey.com>
12028
12029         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12030         (value_history_chain, value_history_count): Remove.
12031         (value_history): New global.
12032         (record_latest_value, access_value_history, show_values)
12033         (preserve_values): Update.
12034
12035 2018-04-06  Tom Tromey  <tom@tromey.com>
12036
12037         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12038         * varobj.c (varobj_set_display_format, varobj_set_value)
12039         (install_default_visualizer, construct_visualizer)
12040         (install_new_value, ~varobj, varobj_get_value_type)
12041         (my_value_of_variable, varobj_editable_p): Update.
12042         * c-varobj.c (c_describe_child, c_value_of_variable)
12043         (cplus_number_of_children, cplus_describe_child): Update.
12044         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12045         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12046         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12047
12048 2018-04-06  Tom Tromey  <tom@tromey.com>
12049
12050         * printcmd.c (last_examine_address): Change type to
12051         value_ref_ptr.
12052         (do_examine, x_command): Update.
12053
12054 2018-04-06  Tom Tromey  <tom@tromey.com>
12055
12056         * value.c (release_value): Update.
12057         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12058         (struct bpstats) <val>: Now a value_ref_ptr.
12059         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12060         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12061         (~watchpoint, print_it_watchpoint, watch_command_1)
12062         (invalidate_bp_value_on_memory_change): Update.
12063
12064 2018-04-06  Tom Tromey  <tom@tromey.com>
12065
12066         * varobj.c (varobj_clear_saved_item)
12067         (update_dynamic_varobj_children, install_new_value, ~varobj):
12068         Update.
12069         * value.h (value_incref): Move declaration earlier.
12070         (value_decref): Rename from value_free.
12071         (struct value_ref_policy): New.
12072         (value_ref_ptr): New typedef.
12073         (struct value_deleter): Remove.
12074         (gdb_value_up): Remove typedef.
12075         (release_value): Change return type.
12076         (release_value_or_incref): Remove.
12077         * value.c (set_value_parent): Update.
12078         (value_incref): Change return type.
12079         (value_decref): Rename from value_free.
12080         (value_free_to_mark, free_all_values, free_value_chain): Update.
12081         (release_value): Return value_ref_ptr.
12082         (release_value_or_incref): Remove.
12083         (record_latest_value, set_internalvar, clear_internalvar):
12084         Update.
12085         * stack.c (info_frame_command): Don't call value_free.
12086         * python/py-value.c (valpy_dealloc, valpy_new)
12087         (value_to_value_object): Update.
12088         * printcmd.c (do_examine): Update.
12089         * opencl-lang.c (lval_func_free_closure): Update.
12090         * mi/mi-main.c (register_changed_p): Don't call value_free.
12091         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12092         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12093         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12094         value_free.
12095         * guile/scm-value.c (vlscm_free_value_smob)
12096         (vlscm_scm_from_value): Update.
12097         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12098         (frame_unwind_register_unsigned, get_frame_register_bytes)
12099         (put_frame_register_bytes): Don't call value_free.
12100         * findvar.c (address_from_register): Don't call value_free.
12101         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12102         * dwarf2loc.c (entry_data_value_free_closure)
12103         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12104         (dwarf2_evaluate_loc_desc_full): Update.
12105         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12106         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12107         (~watchpoint, watch_command_1)
12108         (invalidate_bp_value_on_memory_change): Update.
12109         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12110
12111 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12112
12113         PR gdb/23022
12114         * warning.m4: Add -Wno-error=deprecated-register.
12115         * configure: Re-generate.
12116
12117 2018-04-05  Tom Tromey  <tom@tromey.com>
12118
12119         * linespec.h: Remove include of "vec.h".
12120
12121 2018-04-05  Tom Tromey  <tom@tromey.com>
12122
12123         * linespec.c (typep): Remove typedef.
12124         (find_methods, find_superclass_methods): Take a std::vector.
12125         (find_method): Use std::vector.
12126
12127 2018-04-05  Tom Tromey  <tom@tromey.com>
12128
12129         * utils.c (compare_strings): Remove.
12130         * utils.h (compare_strings): Remove.
12131         * objc-lang.h (find_imps): Update.
12132         * objc-lang.c (find_methods): Take a std::vector.
12133         (uniquify_strings, find_imps): Likewise.
12134         * linespec.c (find_methods): Take a std::vector.
12135         (decode_objc): Use std::vector.
12136         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12137         a std::vector.
12138         (find_method, find_function_symbols): Use std::vector.
12139
12140 2018-04-05  Tom Tromey  <tom@tromey.com>
12141
12142         * completer.c (completion_tracker::completion_tracker): Remove
12143         cast.
12144         (completion_tracker::discard_completions): Likewise.
12145         * breakpoint.c (ambiguous_names_p): Remove cast.
12146         * ada-lang.c (_initialize_ada_language): Remove cast.
12147         * utils.h (streq): Update.
12148         (streq_hash): Add new declaration.
12149         * utils.c (streq): Return bool.
12150         (streq_hash): New function.
12151
12152 2018-04-05  Tom Tromey  <tom@tromey.com>
12153
12154         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12155         Remove a string copy.
12156
12157 2018-04-05  Tom Tromey  <tom@tromey.com>
12158
12159         * linespec.c (filter_results): Use std::vector.
12160         (decode_line_2, decode_line_full): Update.
12161
12162 2018-04-05  Tom Tromey  <tom@tromey.com>
12163
12164         * linespec.c (canonical_to_fullform): Return std::string.
12165         (filter_results): Update.
12166         (struct decode_line_2_item): Add constructor.
12167         <fullform, displayform>: Now std::string.
12168         (decode_line_2_compare_items): Now a std::sort comparator.
12169         (decode_line_2): Update.
12170
12171 2018-04-05  Tom Tromey  <tom@tromey.com>
12172
12173         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12174         (unexpected_linespec_error): Update.
12175         (linespec_parse_basic, parse_linespec): Update.
12176
12177 2018-04-05  Tom Tromey  <tom@tromey.com>
12178
12179         * linespec.c (linespec_parse_basic): Reindent.
12180
12181 2018-04-05  Tom Tromey  <tom@tromey.com>
12182
12183         * minsyms.h (iterate_over_minimal_symbols): Update.
12184         * minsyms.c (iterate_over_minimal_symbols): Take a
12185         gdb::function_view.
12186         * linespec.c (struct collect_minsyms): Remove.
12187         (compare_msyms): Now a std::sort comparator.
12188         (add_minsym): Add parameters.
12189         (search_minsyms_for_name): Update.  Use std::vector.
12190
12191 2018-04-03  Tom Tromey  <tom@tromey.com>
12192
12193         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12194         gdb::byte_vector.
12195
12196 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12197
12198         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12199
12200 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12201
12202         PR gdb/16959
12203         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12204         printing static type.
12205
12206 2018-04-01  Tom Tromey  <tom@tromey.com>
12207
12208         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12209         (rs6000_xfer_shared_libraries): Update.
12210
12211 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12212
12213         * common/gdb_vecs.h (char_ptr): Remove.
12214         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12215
12216 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12217
12218         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12219         with std::vector.
12220         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12221
12222 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12223
12224         * tracepoint.h (struct uploaded_tp): Initialize fields.
12225         <actions, step_actions, cmd_strings>: Change type to
12226         std::vector<char *>.
12227         * tracepoint.c (get_uploaded_tp): Allocate with new.
12228         (free_uploaded_tps): Free with delete.
12229         (parse_tracepoint_definition): Adjust to std::vector change.
12230         * breakpoint.c (read_uploaded_action): Likewise.
12231         (create_tracepoint_from_upload): Likewise.
12232         * ctf.c (ctf_write_uploaded_tp): Likewise.
12233         (SET_ARRAY_FIELD): Likewise.
12234         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12235
12236 2018-03-30  Tom Tromey  <tom@tromey.com>
12237
12238         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12239         std::unique_ptr.
12240         (svr4_keep_data_in_core): Update.
12241         (svr4_read_so_list): Update.
12242
12243 2018-03-30  Tom Tromey  <tom@tromey.com>
12244
12245         * windows-nat.c (handle_output_debug_string, handle_exception):
12246         Update.
12247         * target.h (target_read_string): Update.
12248         * target.c (target_read_string): Change "string" to
12249         unique_xmalloc_ptr.
12250         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12251         Update.
12252         * solib-frv.c (frv_current_sos): Update.
12253         * solib-dsbt.c (dsbt_current_sos): Update.
12254         * solib-darwin.c (darwin_current_sos): Update.
12255         * linux-thread-db.c (inferior_has_bug): Update.
12256         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12257         Update.  Remove alloca.
12258         * ada-lang.c (ada_main_name): Update.
12259
12260 2018-03-30  Tom Tromey  <tom@tromey.com>
12261
12262         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12263         (struct dwo_file_deleter): New.
12264         (dwo_file_up): New typedef.
12265         (open_and_init_dwo_file): Use dwo_file_up.
12266         (free_dwo_file_cleanup): Remove.
12267
12268 2018-03-30  Tom Tromey  <tom@tromey.com>
12269
12270         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12271         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12272
12273 2018-03-30  Tom Tromey  <tom@tromey.com>
12274
12275         * dwarf2read.c (class free_cached_comp_units): New class.
12276         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12277         (free_cached_comp_units): Remove function.
12278
12279 2018-03-30  Tom Tromey  <tom@tromey.com>
12280
12281         * utils.h (make_cleanup_unpush_target): Remove.
12282         * inf-ptrace.c (struct target_unpusher): New.
12283         (target_unpush_up) New typedef.
12284         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12285         target_unpush_up.
12286         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12287
12288 2018-03-27  Tom Tromey  <tom@tromey.com>
12289
12290         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12291
12292 2018-03-27  Pedro Alves  <palves@redhat.com>
12293             Tom Tromey  <tom@tromey.com>
12294
12295         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12296         destructor.  Now a class.
12297         (gdb_readline_wrapper_cleanup): Remove function.
12298         (gdb_readline_wrapper): Remove cleanups.
12299
12300 2018-03-27  Tom Tromey  <tom@tromey.com>
12301
12302         * typeprint.h (struct type_print_options) <local_typedefs,
12303         global_typedefs>: Remove "struct" keyword.
12304         (class typedef_hash_table): New class.
12305         (recursively_update_typedef_hash, add_template_parameters)
12306         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12307         (find_typedef_in_hash): Don't declare.
12308         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12309         (typedef_hash_table::recursively_update): Rename from
12310         recursively_update_typedef_hash.  Now a member.
12311         (typedef_hash_table::add_template_parameters): Rename from
12312         add_template_parameters.  Now a member.
12313         (typedef_hash_table::typedef_hash_table): Now a constructor;
12314         rename from create_typedef_hash.
12315         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12316         rename from free_typedef_hash.
12317         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12318         (do_free_global_table): Remove.
12319         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12320         from copy_type_recursive.
12321         (create_global_typedef_table): Remove.
12322         (typedef_hash_table::find_global_typedef): Now a member of
12323         typedef_hash_table.
12324         (typedef_hash_table::find_typedef): Rename from
12325         find_typedef_in_hash; now a member.
12326         (whatis_exp): Update.
12327         * extension.h (struct ext_lang_type_printers): Add constructor and
12328         destructor.
12329         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12330         declare.
12331         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12332         Now a constructor; rename from start_ext_lang_type_printers.
12333         (ext_lang_type_printers): Now a destructor; rename from
12334         free_ext_lang_type_printers.
12335         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12336         Update.
12337         (c_type_print_base_struct_union): Update.  Remove cleanups.
12338
12339 2018-03-27  Tom Tromey  <tom@tromey.com>
12340
12341         * dwarf-index-write.c: Include <cmath>.
12342
12343 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12344
12345         * NEWS: Add entry describing new "set|show varsize-limit" command.
12346         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12347         command.
12348         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12349         "set variable".
12350
12351 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12352
12353         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12354         dwarf-index-write.c
12355         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12356         * dwarf-index-common.c: New file.
12357         * dwarf-index-common.h: New file.
12358         * dwarf-index-write.c: New file.
12359         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12360         (struct dwarf2_section_info): Move from here.
12361         (dwarf2_section_info_def): Likewise.
12362         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12363         (offset_type): Likewise.
12364         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12365         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12366         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12367         (byte_swap): Likewise.
12368         (MAYBE_SWAP): Likewise.
12369         (dwarf2_per_cu_ptr): Likewise.
12370         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12371         (struct tu_stats): Likewise.
12372         (struct dwarf2_per_objfile): Likewise.
12373         (struct dwarf2_per_cu_data): Likewise.
12374         (struct signatured_type): Likewise.
12375         (sig_type_ptr): Likewise.
12376         (DEF_VEC_P (sig_type_ptr)): Likewise.
12377         (INDEX4_SUFFIX): Likewise.
12378         (INDEX5_SUFFIX): Likewise.
12379         (DEBUG_STR_SUFFIX): Likewise.
12380         (dwarf2_read_section): Make non-static.
12381         (mapped_index_string_hash): Move from here.
12382         (dwarf5_djb_hash): Likewise.
12383         (file_write): Likewise.
12384         (class data_buf): Likewise.
12385         (struct symtab_index_entry): Likewise.
12386         (struct mapped_symtab): Likewise.
12387         (find_slot): Likewise.
12388         (hash_expand): Likewise.
12389         (add_index_entry): Likewise.
12390         (uniquify_cu_indices): Likewise.
12391         (class c_str_view): Likewise.
12392         (class c_str_view_hasher): Likewise.
12393         (class vector_hasher): Likewise.
12394         (write_hash_table): Likewise.
12395         (psym_index_map): Likewise.
12396         (struct addrmap_index_data): Likewise.
12397         (add_address_entry): Likewise.
12398         (add_address_entry_worker): Likewise.
12399         (write_address_map): Likewise.
12400         (symbol_kind): Likewise.
12401         (write_psymbols): Likewise.
12402         (struct signatured_type_index_data): Likewise.
12403         (write_one_signatured_type): Likewise.
12404         (recursively_count_psymbols): Likewise.
12405         (recursively_write_psymbols): Likewise.
12406         (class debug_names): Likewise.
12407         (check_dwarf64_offsets): Likewise.
12408         (psyms_seen_size): Likewise.
12409         (write_gdbindex): Likewise.
12410         (write_debug_names): Likewise.
12411         (assert_file_size): Likewise.
12412         (write_psymtabs_to_index): Likewise.
12413         (save_gdb_index_command): Likewise.
12414         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12415         command.
12416         * dwarf2read.h: New file.
12417
12418 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12419
12420         PR gdb/22670
12421         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12422         symbol name if the CU's language stores symbol names in linkage
12423         format.
12424         * language.h (struct language_defn)
12425         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12426         all instances of this struct.
12427
12428 2018-03-26  Tom Tromey  <tom@tromey.com>
12429
12430         * stack.c (backtrace_command_1): Remove verbose code.
12431
12432 2018-03-26  Tom Tromey  <tom@tromey.com>
12433
12434         * python/py-framefilter.c (py_print_type): Don't catch
12435         exceptions.  Return void.
12436         (py_print_value): Likewise.
12437         (py_print_single_arg): Likewise.
12438         (enumerate_args): Don't catch exceptions.
12439         (py_print_args): Likewise.
12440         (py_print_frame): Likewise.
12441         (gdbpy_apply_frame_filter): Catch exceptions here.
12442
12443 2018-03-26  Tom Tromey  <tom@tromey.com>
12444
12445         * stack.c (_initialize_stack): Remove trailing newlines from help
12446         text.  Add "Usage" line to "backtrace" help.
12447
12448 2018-03-26  Tom Tromey  <tom@tromey.com>
12449
12450         PR python/16486:
12451         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12452
12453 2018-03-26  Tom Tromey  <tom@tromey.com>
12454
12455         * python/py-framefilter.c (py_print_single_arg): Return
12456         EXT_LANG_BT_ERROR from catch.
12457
12458 2018-03-26  Tom Tromey  <tom@tromey.com>
12459
12460         PR backtrace/15584:
12461         * stack.c (backtrace_command_1): Move some code into no-filters
12462         "if".
12463
12464 2018-03-26  Tom Tromey  <tom@tromey.com>
12465
12466         * python/py-framefilter.c (throw_quit_or_print_exception): New
12467         function.
12468         (gdbpy_apply_frame_filter): Use it.
12469
12470 2018-03-26  Tom Tromey  <tom@tromey.com>
12471
12472         PR cli/17716:
12473         * python/py-framefilter.c (py_print_type, py_print_value)
12474         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12475         RETURN_MASK_ERROR.
12476
12477 2018-03-26  Tom Tromey  <tom@tromey.com>
12478
12479         * python/py-framefilter.c (enumerate_args): Use
12480         gdb::unique_xmalloc_ptr.
12481
12482 2018-03-26  Tom Tromey  <tom@tromey.com>
12483
12484         * python/py-framefilter.c (py_print_frame): Return
12485         EXT_LANG_BT_OK.
12486         (gdbpy_apply_frame_filter): Update comment.
12487         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12488         Remove.
12489         <EXT_LANG_BT_NO_FILTERS>: Change value.
12490
12491 2018-03-26  Tom Tromey  <tom@tromey.com>
12492
12493         PR backtrace/15582:
12494         * stack.c (backtrace_command): Parse "hide" argument.
12495         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12496         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12497         constant.
12498
12499 2018-03-26  Tom Tromey  <tom@tromey.com>
12500
12501         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12502         add "flags".
12503         (backtrace_command): Remove "fulltrace", add "flags".
12504
12505 2018-03-26  Tom Tromey  <tom@tromey.com>
12506
12507         * stack.c (backtrace_command): Rewrite command line parsing.
12508
12509 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12510
12511         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12512
12513 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12514
12515         * filename-seen-cache.h: Add include guard.
12516
12517 2018-03-26  Keith Seitz  <keiths@redhat.com>
12518
12519         * symfile.c (place_section): Remove "struct" from section_addr_info
12520         in comment.
12521         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12522         "struct" keyword from section_addr_info.
12523
12524 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12525
12526         * regformats/regdef.h (reg): Add constructors.
12527
12528 2018-03-25  Pedro Alves  <palves@redhat.com>
12529
12530         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12531         if then/else bodies in var_func_name extraction.
12532
12533 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12534
12535         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12536         lookup_minimal_symbol() to find symbol entry.
12537         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12538
12539 2018-03-23  Keith Seitz  <keiths@redhat.com>
12540
12541         PR c++/22968
12542         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12543         nested type definitions for C++, too.
12544
12545 2018-03-23  Tom Tromey  <tom@tromey.com>
12546
12547         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12548         a typedef.
12549         (macho_register_oso): Remove.
12550         (macho_symtab_read): Take a std::vector.
12551         (oso_el_compare_name): Now a std::sort comparator.
12552         (macho_symfile_read_all_oso): Take a std::vector.
12553         (macho_symfile_read): Use std::vector.  Remove cleanups.
12554
12555 2018-03-22  Tom Tromey  <tom@tromey.com>
12556
12557         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12558         (record_full_goto_bookmark): Use std::string.
12559
12560 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12561
12562         PR tdep/18295
12563         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12564         a single mask.
12565
12566 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12567
12568         * rs6000-tdep.c (store_insn_p): New function.
12569         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12570         and cr_reg to their unshifted values. Use store_insn_p to
12571         match LR saves using either R1 or fdata->alloca_reg. Use
12572         store_insn_p to match CR saves. Set alloca_reg_offset
12573         when alloca_reg and framep are set. Remove lr_reg shift
12574         when assigning to fdata->lr_register.
12575
12576 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12577
12578         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12579         command line args instead of emitting a warning.
12580
12581 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12582
12583         * tracepoint.h (struct static_tracepoint_marker): Initialize
12584         fields, define default constructor, move constructor and move
12585         assignment, disable the rest.
12586         <str_id, extra>: Make std::string.
12587         (release_static_tracepoint_marker): Remove.
12588         (free_current_marker): Remove.
12589         * tracepoint.c (free_current_marker): Remove.
12590         (parse_static_tracepoint_marker_definition): Adjust to
12591         std::string, use new hex2str overload.
12592         (release_static_tracepoint_marker): Remove.
12593         (print_one_static_tracepoint_marker): Get marker by reference
12594         and adjust to std::string.
12595         (info_static_tracepoint_markers_command): Adjust to std::vector
12596         changes
12597         * target.h (static_tracepoint_marker_p): Remove typedef.
12598         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12599         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12600         bool.
12601         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12602         * target-debug.h
12603         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12604         (target_debug_print_std_vector_static_tracepoint_marker): New.
12605         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12606         to...
12607         (target_debug_print_static_tracepoint_marker_p): ... this.
12608         * target-delegates.c: Re-generate.
12609         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12610         Make std::string.
12611         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12612         (decode_static_tracepoint_spec): Adjust to std::vector.
12613         (tracepoint_print_one_detail): Adjust to std::string.
12614         (strace_marker_decode_location): Adjust to std::string.
12615         (update_static_tracepoint): Adjust to std::string, remove call
12616         to release_static_tracepoint_marker.
12617         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12618         Adjust to std::vector.
12619         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12620         (remote_static_tracepoint_markers_by_strid): Adjust to
12621         std::vector.
12622         * common/rsp-low.h (hex2str): New overload with explicit count
12623         of bytes.
12624         * common/rsp-low.c (hex2str): New overload with explicit count
12625         of bytes.
12626         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12627         (_initialize_rsp_low_selftests): Add test_hex2str test.
12628         * unittests/tracepoint-selftests.c
12629         (test_parse_static_tracepoint_marker_definition): Adjust to
12630         std::string.
12631
12632 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12633
12634         * tracepoint.c (parse_static_tracepoint_marker_definition):
12635         Consider case where the definition is followed by more
12636         definitions.
12637         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12638         tracepoint-selftests.c.
12639         * unittests/tracepoint-selftests.c: New.
12640
12641 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12642
12643         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12644         Carvalho.
12645
12646 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12647
12648         * symtab.c (find_pc_sect_line): fixed indentation.
12649
12650 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12651
12652         * symtab.c (find_pc_sect_line): now uses binary search.
12653
12654 2018-03-19  Tom Tromey  <tom@tromey.com>
12655
12656         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12657         "IDENT" production.
12658
12659 2018-03-19  Pedro Alves  <palves@redhat.com>
12660             Tom Tromey  <tom@tromey.com>
12661
12662         * unittests/observable-selftests.c: New file.
12663         * common/observable.h: New file.
12664         * observable.h: New file.
12665         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12666         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12667         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12668         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12669         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12670         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12671         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12672         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12673         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12674         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12675         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12676         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12677         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12678         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12679         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12680         tui/tui-interp.c, valops.c: Update all users.
12681         * tui/tui-hooks.c (tui_bp_created_observer)
12682         (tui_bp_deleted_observer, tui_bp_modified_observer)
12683         (tui_inferior_exit_observer, tui_before_prompt_observer)
12684         (tui_normal_stop_observer, tui_register_changed_observer):
12685         Remove.
12686         (tui_observers_token): New global.
12687         (attach_or_detach, tui_attach_detach_observers): New functions.
12688         (tui_install_hooks, tui_remove_hooks): Use
12689         tui_attach_detach_observers.
12690         * record-btrace.c (record_btrace_thread_observer): Remove.
12691         (record_btrace_thread_observer_token): New global.
12692         * observer.sh: Remove.
12693         * observer.c: Rename to observable.c.
12694         * observable.c (namespace gdb_observers): Define new objects.
12695         (observer_debug): Move into gdb_observers namespace.
12696         (struct observer, struct observer_list, xalloc_observer_list_node)
12697         (xfree_observer_list_node, generic_observer_attach)
12698         (generic_observer_detach, generic_observer_notify): Remove.
12699         (_initialize_observer): Update.
12700         Don't include observer.inc.
12701         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12702         (clean mostlyclean): Likewise.
12703         (observer.h, observer.inc): Remove targets.
12704         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12705         (COMMON_SFILES): Use observable.c, not observer.c.
12706         * .gitignore: Remove observer.h.
12707
12708 2018-03-18  Tom Tromey  <tom@tromey.com>
12709
12710         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12711         gdb::def_vector.
12712         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12713
12714 2018-03-17  Tom Tromey  <tom@tromey.com>
12715
12716         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12717
12718 2018-03-17  Tom Tromey  <tom@tromey.com>
12719
12720         * target.c (class scoped_target_fd): New.
12721         (target_fileio_close_cleanup): Remove.
12722         (target_fileio_read_alloc_1): Use scoped_target_fd.
12723
12724 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12725
12726         * silent-rules.mk: New.
12727         * Makefile.in: Include silent-rules.mk
12728         (srcdir, VPATH, top_srcdir): Move up.
12729         (COMPILE): Add ECHO_CXX.
12730         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12731         (init.c): Add ECHO_INIT_C.
12732         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12733         (version.c): Add ECHO_GEN.
12734         (printcmd.o): Add ECHO_CXX.
12735         (target-float.o): Add ECHO_CXX.
12736         (ada-exp.o): Add ECHO_CXX.
12737         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12738         (insight$(EXEEXT)): Add ECHO_CXXLD.
12739         * gnulib/configure.ac: Add AM_SILENT_RULES.
12740         * gnulib/aclocal.m4: Re-generate.
12741         * gnulib/configure: Re-generate.
12742         * gnulib/import/Makefile.in: Re-generate.
12743
12744 2018-03-16  Tom Tromey  <tom@tromey.com>
12745
12746         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12747         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12748         * utils.c (do_free_section_addr_info)
12749         (make_cleanup_free_section_addr_info): Remove.
12750         * symfile.h (struct other_sections): Add constructor.
12751         (struct section_addr_info): Remove.
12752         (section_addr_info): New typedef.
12753         (struct sym_fns) <sym_offsets>: Change type of parameter.
12754         (build_section_addr_info_from_objfile)
12755         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12756         (default_symfile_offsets, symbol_file_add)
12757         (symbol_file_add_from_bfd)
12758         (build_section_addr_info_from_section_table): Update.
12759         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12760         * symfile.c (alloc_section_addr_info): Remove.
12761         (build_section_addr_info_from_section_table): Change return type.
12762         Update.
12763         (build_section_addr_info_from_bfd)
12764         (build_section_addr_info_from_objfile): Likewise.
12765         (free_section_addr_info): Remove.
12766         (relative_addr_info_to_section_offsets): Change type of "addrs".
12767         (addrs_section_compar): Now a std::sort comparator.
12768         (addrs_section_sort): Change return type.
12769         (addr_info_make_relative): Change type of "addrs".  Update.
12770         (default_symfile_offsets, syms_from_objfile_1)
12771         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12772         (symbol_file_add_separate): Update.
12773         (symbol_file_add): Change type of "addrs".  Update.
12774         (add_symbol_file_command): Update.  Remove cleanups.
12775         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12776         cleanups.
12777         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12778         * solib.c (solib_read_symbols): Update.
12779         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12780         * machoread.c (macho_symfile_offsets): Update.
12781         * jit.c (jit_bfd_try_read_symtab): Update.
12782
12783 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12784
12785         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12786         unittests/utils-selftests.c.
12787         * unittests/utils-selftests.c: New file.
12788
12789 2018-03-14  Tom Tromey  <tom@tromey.com>
12790
12791         PR cli/14977:
12792         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12793         for NULL.
12794
12795 2018-03-14  Tom Tromey  <tom@tromey.com>
12796
12797         PR cli/19918:
12798         * printcmd.c (printf_pointer): Allow "-" in format.
12799
12800 2018-03-14  Tom Tromey  <tom@tromey.com>
12801
12802         * printcmd.c (_initialize_printcmd): Add usage to printf.
12803
12804 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12805
12806         * MAINTAINERS: Update my email address.
12807
12808 2018-03-13  Tom Tromey  <tom@tromey.com>
12809
12810         * machoread.c (macho_check_dsym): Change filenamep to a
12811         std::string*.
12812         (macho_symfile_read): Update.
12813         * symfile.c (load_command): Use std::string.
12814
12815 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12816
12817         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12818         to error message string.
12819         (riscv_register_name): Use xsnprintf instead of sprintf.
12820         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12821         internal_error.
12822         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12823         error.
12824         (riscv_push_dummy_call): Likewise.
12825
12826 2018-03-12  Tom Tromey  <tom@tromey.com>
12827
12828         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12829         Use gdb::byte_vector.
12830         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12831
12832 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12833
12834         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12835         parameter type to readable_regcache.
12836         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12837         the declaration.
12838
12839 2018-03-11  Tom Tromey  <tom@tromey.com>
12840
12841         * dwarf2read.c (struct nextfield): Add initializers.
12842         (struct nextfnfield): Remove.
12843         (struct fnfieldlist): Add initializers.  Remove "length" and
12844         "head", use std::vector.
12845         (struct decl_field_list): Remove.
12846         (struct field_info): Add initializers.
12847         <fields, baseclasses>: Now std::vector.
12848         <nbaseclasses, nfnfields, typedef_field_list_count,
12849         nested_types_list_count>: Remove.
12850         (dwarf2_add_field, dwarf2_add_type_defn)
12851         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12852         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12853         (process_structure_scope): Update.
12854
12855 2018-03-11  Tom Tromey  <tom@tromey.com>
12856
12857         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12858         for use by std::sort.
12859         (build_type_psymtabs_1): Use std::vector.
12860
12861 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12862
12863         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12864         and LIBMPFR in the printed configuration.
12865
12866 2018-03-08  Tom Tromey  <tom@tromey.com>
12867
12868         * source.c (get_filename_and_charpos): Use scoped_fd.
12869         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12870         (procfs_pidlist): Likewise.
12871         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12872         (iterate_over_mappings): Likewise.
12873
12874 2018-03-08  Tom Tromey  <tom@tromey.com>
12875
12876         * infcall.c (struct call_return_meta_info)
12877         <stack_temporaries_enabled>: Remove.
12878         (get_call_return_value, call_function_by_hand_dummy): Update.
12879         * thread.c (disable_thread_stack_temporaries): Remove.
12880         (enable_thread_stack_temporaries): Remove.
12881         (thread_stack_temporaries_enabled_p): Return bool.
12882         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12883         (get_last_thread_stack_temporary): Update.
12884         * eval.c (evaluate_subexp): Update.
12885         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12886         class, not a function.
12887         (value_ptr, value_vec): Remove typedefs.
12888         (class thread_info) <stack_temporaries_enabled>: Now bool.
12889         <stack_temporaries>: Now a std::vector.
12890         (thread_stack_temporaries_enabled_p)
12891         (value_in_thread_stack_temporaries): Return bool.
12892
12893 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12894
12895         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12896         (getpkt_or_notif_sane_1): Likewise.
12897
12898 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12899
12900         * build-id.c (build_id_to_debug_bfd): Use std::string.
12901
12902 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12903
12904         * build-id.c (find_separate_debug_file_by_buildid): Return
12905         std::string.
12906         * build-id.h (find_separate_debug_file_by_buildid): Return
12907         std::string.
12908         * coffread.c (coff_symfile_read): Adjust to std::string.
12909         * elfread.c (elf_symfile_read): Adjust to std::string.
12910         * symfile.c (separate_debug_file_exists): Change parameter to
12911         std::string.
12912         (find_separate_debug_file): Return std::string.
12913         (find_separate_debug_file_by_debuglink): Return std::string.
12914         * symfile.h (find_separate_debug_file_by_debuglink): Return
12915         std::string.
12916
12917 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12918
12919         * common/xml-utils.c (xml_escape_text): Move code to...
12920         (xml_escape_text_append): ... this new function.
12921         * common/xml-utils.h (xml_escape_text_append): New declaration.
12922         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12923         New function.
12924         (_initialize_xml_utils): register test_xml_escape_text_append as
12925         a selftest.
12926
12927 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12928
12929         * defs.h: Remove MAX_REGISTER_SIZE.
12930         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12931         asserts.
12932         * python/py-unwind.c (pyuw_sniffer): Likewise.
12933
12934 2018-03-07  Tom Tromey  <tom@tromey.com>
12935
12936         * linux-tdep.c (linux_info_proc): Update.
12937         * target.h (struct target_ops) <to_fileio_readlink>: Return
12938         optional<string>.
12939         (target_fileio_readlink): Return optional<string>.
12940         * remote.c (remote_hostio_readlink): Return optional<string>.
12941         * inf-child.c (inf_child_fileio_readlink): Return
12942         optional<string>.
12943         * target.c (target_fileio_readlink): Return optional<string>.
12944
12945 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12946
12947         * regcache.c (cooked_read_test): Add riscv to the list of
12948         architectures that have a save_reggroup.
12949
12950 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12951
12952         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12953         value is not a dynamic class object.
12954
12955 2018-03-06  Tom Tromey  <tom@tromey.com>
12956
12957         * rust-exp.y: Formatting fixes.
12958
12959 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12960
12961         * riscv-tdep.c (riscv_register_name): Remove target description
12962         support.
12963         (riscv_gdbarch_init): Remove target description check.
12964
12965 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12966
12967         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12968         comment.
12969         * riscv-tdep.h: Likewise.
12970
12971 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12972
12973         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12974         (riscv_pseudo_register_write): Delete.
12975         (riscv_gdbarch_init): Remove all use of pseudo registers.
12976
12977 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12978
12979         * record-btrace.c (btrace_print_lines): Replace cleanup
12980         parameter with RAII equivalents.
12981         (btrace_insn_history): Replace cleanup with RAII equivalents.
12982         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12983         make_cleanup_ui_out_tuple_begin_end): Remove.
12984         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12985         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12986         make_cleanup_ui_out_list_begin_end): Remove.
12987
12988 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12989
12990         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12991         parameter types to std::vector.  Use bool.
12992         (record_btrace_wait): Replace VEC(tp_t) with
12993         std::vector<thread_info *>.
12994         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12995
12996 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12997
12998         * record-btrace.c (record_btrace_disable_callback): Remove.
12999         (struct scoped_btrace_disable): New.
13000         (record_btrace_open): Use scoped_btrace_disable.
13001
13002 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13003
13004         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13005         reading values from registers.
13006
13007 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13008
13009         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13010         where appropriate.
13011
13012 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13013
13014         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13015         change parameter type.  Use GDB's print functions, and use
13016         core_addr_to_string where appropriate.
13017         (riscv_push_dummy_call): Use core_addr_to_string where
13018         appropriate, update call to riscv_print_arg_location, and reindent
13019         a few lines.
13020         (riscv_return_value): Update call to riscv_print_arg_location.
13021
13022 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13023             Tim Newsome <tim@sifive.com>
13024             Albert Ou <a0u@eecs.berkeley.edu>
13025             Darius Rad <darius@bluespec.com>
13026
13027         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13028         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13029         (ALLDEPFILES): Add riscv-tdep.c
13030         * configure.tgt: Add riscv support.
13031         * riscv-tdep.c: New file.
13032         * riscv-tdep.h: New file.
13033         * NEWS: Mention new target.
13034         * MAINTAINERS: Add entry for riscv.
13035
13036 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13037
13038         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13039         fields within aggregates.
13040
13041 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13042
13043         * record-btrace.c (btrace_print_lines): Change type of flags to
13044         gdb_disassembly_flags.
13045
13046 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13047
13048         * fbsd-nat.c: Include "inf-ptrace.h".
13049         (USE_SIGTRAP_SIGINFO): Conditionally define.
13050         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13051         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13052         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13053         function.
13054         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13055         Likewise.
13056         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13057         Likewise.
13058         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13059         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13060         "supports_stopped_by_hw_breakpoint" target methods.
13061
13062 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13063
13064         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13065         * fbsd-nat.c (debug_fbsd_nat): New variable.
13066         (show_fbsd_nat_debug): New function.
13067         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13068         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13069
13070 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13071
13072         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13073         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13074         prototype.
13075         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13076         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13077         method.
13078
13079 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13080
13081         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13082         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13083
13084 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13085
13086         * charset.c (struct charset_vector): New.
13087         (charsets): Change type to charset_vector.
13088         (find_charset_names): Adjust.
13089         (add_one): Adjust.
13090         (_initialize_charset): Adjust.
13091
13092 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13093
13094         * progspace.h (struct program_space) <deleted_solibs>: Change
13095         type to std::vector<std::string>.
13096         * progspace.c (clear_program_space_solib_cache): Adjust.
13097         * breakpoint.c (print_solib_event): Adjust.
13098         (check_status_catch_solib): Adjust.
13099         * solib.c (update_solib_list): Adjust.
13100         * ui-out.h (class ui_out) <field_string>: New overload.
13101         * ui-out.c (ui_out::field_string): New overload.
13102
13103 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13104
13105         * progspace.h (struct program_space): Add constructor and
13106         destructor, initialize fields.
13107         (add_program_space): Remove.
13108         * progspace.c (add_program_space): Rename to...
13109         (program_space::program_space): ... this.
13110         (release_program_space): Rename to...
13111         (program_space::~program_space): ... this.
13112         (delete_program_space): Use delete to delete program_space.
13113         (initialize_progspace): Use new to allocate program_space.
13114         * inferior.c (add_inferior_with_spaces): Likewise.
13115         (clone_inferior_command): Likewise.
13116         * infrun.c (follow_fork_inferior): Likewise.
13117         (handle_vfork_child_exec_or_exit): Likewise.
13118
13119 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13120
13121         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13122         (delim_string_to_char_ptr_vec): Return std::vector of
13123         gdb::unique_xmalloc_ptr.
13124         (dirnames_to_char_ptr_vec_append): Take std::vector of
13125         gdb::unique_xmalloc_ptr.
13126         (dirnames_to_char_ptr_vec): Return std::vector of
13127         gdb::unique_xmalloc_ptr.
13128         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13129         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13130         (delim_string_to_char_ptr_vec): Return an std::vector of
13131         gdb::unique_xmalloc_ptr, adjust the code.
13132         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13133         gdb::unique_xmalloc_ptr, adjust the code.
13134         (dirnames_to_char_ptr_vec): Return an std::vector of
13135         gdb::unique_xmalloc_ptr, adjust the code.
13136         * auto-load.c (auto_load_safe_path_vec): Change type to
13137         std::vector of gdb::unique_xmalloc_ptr.
13138         (auto_load_expand_dir_vars): Return an std::vector of
13139         gdb::unique_xmalloc_ptr, adjust the code.
13140         (auto_load_safe_path_vec_update): Adjust.
13141         (filename_is_in_auto_load_safe_path_vec): Adjust.
13142         (auto_load_objfile_script_1): Adjust.
13143         * build-id.c (build_id_to_debug_bfd): Adjust.
13144         * linux-thread-db.c (thread_db_load_search): Adjust.
13145         * source.c (add_path): Adjust.
13146         (openp): Adjust.
13147         * symfile.c (find_separate_debug_file): Adjust.
13148         * utils.c (do_free_char_ptr_vec): Remove.
13149         (make_cleanup_free_char_ptr_vec): Remove.
13150
13151 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13152
13153         PR gdb/22907
13154         * common/pathstuff.c: Conditionally include "<windows.h>".
13155
13156 2018-03-01  Georg Sauthoff  <mail@georg.so>
13157
13158         PR gdb/22888
13159         * gcore.in: Quote variables and switch interpreter to bash.
13160
13161 2018-03-01  Tom Tromey  <tom@tromey.com>
13162
13163         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13164         assertion.  Add assertion for discriminant_index.
13165         (quirk_rust_enum): Use correct base type name in univariant case.
13166
13167 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13168
13169         * record.c (get_call_history_modifiers): Return a
13170         record_print_flags.
13171         (cmd_record_call_history): Adjust.
13172         * record-btrace.c (record_btrace_call_history): Adjust.
13173         (record_btrace_call_history_range): Adjust.
13174         (record_btrace_call_history_from): Adjust.
13175         * target-debug.h (target_debug_print_record_print_flags): New.
13176         * target-delegates.c: Re-generate.
13177         * target.c (target_call_history): Change flags type.
13178         (target_call_history_from): Likewise.
13179         (target_call_history_range): Likewise.
13180         * target.h (struct target_ops) <target_call_history>: Likewise.
13181         (target_call_history_from): Likewise.
13182         (target_call_history_range): Likewise.
13183
13184 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13185             Simon Marchi  <simon.marchi@polymtl.ca>
13186
13187         * common/common-utils.c: Include "sys/stat.h".
13188         (is_regular_file): Move here from "source.c"; change return
13189         type to "bool".
13190         * common/common-utils.h (is_regular_file): New prototype.
13191         * common/pathstuff.c (contains_dir_separator): New function.
13192         * common/pathstuff.h (contains_dir_separator): New prototype.
13193         * source.c: Don't include "sys/stat.h".
13194         (is_regular_file): Move to "common/common-utils.c".
13195
13196 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13197
13198         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13199         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13200         * auto-load.c: Include "common/pathstuff.h".
13201         * common/common-def.h (current_directory): Move here.
13202         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13203         function.
13204         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13205         prototype.
13206         * common/pathstuff.c: New file.
13207         * common/pathstuff.h: New file.
13208         * compile/compile.c: Include "common/pathstuff.h".
13209         * defs.h (current_directory): Move to "common/common-defs.h".
13210         * dwarf2read.c: Include "common/pathstuff.h".
13211         * exec.c: Likewise.
13212         * guile/scm-safe-call.c: Likewise.
13213         * linux-thread-db.c: Likewise.
13214         * main.c: Likewise.
13215         * nto-tdep.c: Likewise.
13216         * objfiles.c: Likewise.
13217         * source.c: Likewise.
13218         * symtab.c: Likewise.
13219         * utils.c: Include "common/pathstuff.h".
13220         (gdb_realpath): Move to "common/pathstuff.c".
13221         (gdb_realpath_keepfile): Likewise.
13222         (gdb_abspath): Likewise.
13223         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13224         (gdb_realpath_keepfile): Likewise.
13225         (gdb_abspath): Likewise.
13226
13227 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13228
13229         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13230         wildcard process pid for super_resume for kernels with a
13231         specific bug.
13232
13233 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13234
13235         * compile/compile.c (get_args): Add additional comments
13236         explaining function.
13237
13238 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13239             Tom Tromey  <tom@tromey.com>
13240
13241         * target.h (memory_write_request_s): Remove typedef.  Don't define
13242         VEC.
13243         (target_write_memory_blocks): Change argument to std::vector.
13244         (struct memory_write_request): Add constructor.
13245         * target-memory.c (compare_block_starting_address): Return bool.
13246         Change argument types.
13247         (claim_memory): Change arguments to use std::vector.
13248         (split_regular_and_flash_blocks, blocks_to_erase)
13249         (compute_garbled_blocks): Likewise.
13250         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13251         (target_write_memory_blocks): Change argument to std::vector.
13252         * symfile.c (struct load_section_data): Add constructor and
13253         destructor.  Use std::vector for "requests".
13254         (struct load_progress_data): Add initializers.
13255         (load_section_callback): Update.  Use "new".
13256         (clear_memory_write_data): Remove.
13257         (generic_load): Update.
13258
13259 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13260
13261         * arch/aarch64.h: Use common/tdesc.h.
13262
13263 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13264
13265         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13266         architecture with a 64-bit ABI.
13267
13268 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13269
13270         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13271         ahead of target description loading.
13272
13273 2018-02-26  Tom Tromey  <tom@tromey.com>
13274
13275         * stack.c (backtrace_command_1): Update.
13276         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13277         of "flags".
13278         * python/py-framefilter.c (py_print_frame)
13279         (gdbpy_apply_frame_filter): Change type of "flags".
13280         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13281         of "flags".
13282         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13283         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13284         * extension.h (enum frame_filter_flag): Rename from
13285         frame_filter_flags.
13286         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13287         (apply_ext_lang_frame_filter): Change type of "flags".
13288         * extension.c (apply_ext_lang_frame_filter): Change type of
13289         "flags".
13290         * extension-priv.h (struct extension_language_ops)
13291         <apply_frame_filter>: Change type of "flags".
13292
13293 2018-02-26  Tom Tromey  <tom@tromey.com>
13294
13295         PR python/16497:
13296         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13297         off-by-one in py_end computation.
13298         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13299         PRINT_MORE_FRAMES.
13300         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13301         constant.
13302
13303 2018-02-26  Tom Tromey  <tom@tromey.com>
13304
13305         * dwarf2read.c (struct variant_field): New.
13306         (struct nextfield) <variant>: New field.
13307         (dwarf2_add_field): Handle DW_TAG_variant_part.
13308         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13309         discriminated union.
13310         (read_structure_type): Handle DW_TAG_variant_part.
13311         (handle_struct_member_die): New function, extracted from
13312         process_structure_scope.  Handle DW_TAG_variant.
13313         (process_structure_scope): Handle discriminated unions.  Call
13314         handle_struct_member_die.
13315
13316 2018-02-26  Tom Tromey  <tom@tromey.com>
13317
13318         * rust-lang.h (rust_last_path_segment): Declare.
13319         * rust-lang.c (rust_last_path_segment): Now public.  Change
13320         contract.
13321         (struct disr_info): Remove.
13322         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13323         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13324         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13325         (rust_enum_p, rust_enum_variant): New function.
13326         (rust_underscore_fields): Remove "offset" parameter.
13327         (rust_print_enum): New function.
13328         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13329         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13330         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13331         enums.
13332         (rust_internal_print_type): New function, from rust_print_type.
13333         Remove enum code.
13334         (rust_print_type): Call rust_internal_print_type.
13335         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13336         Update enum handling.
13337         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13338         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13339         (rust_union_quirks): New functions.
13340         (process_full_comp_unit, process_full_type_unit): Call
13341         rust_union_quirks.
13342         (process_structure_scope): Update rust_unions if necessary.
13343
13344 2018-02-26  Tom Tromey  <tom@tromey.com>
13345
13346         * value.h (value_union_variant): Declare.
13347         * valops.c (value_union_variant): New function.
13348         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13349         (struct discriminant_info): New.
13350         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13351         enumerator.
13352         (struct main_type) <flag_discriminated_union>: New field.
13353
13354 2018-02-26  Tom Tromey  <tom@tromey.com>
13355
13356         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13357         unittests/unpack-selftests.c.
13358         * unittests/unpack-selftests.c: New file.
13359         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13360
13361 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13362
13363         * dwarf2read.c (struct partial_die_info) <read>: New method.
13364         (read_partial_die): Remove the declaration.
13365         (load_partial_dies): Update.
13366         (partial_die_info::partial_die_info):
13367         (read_partial_die): Change it to partial_die_info::read.
13368
13369 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13370
13371         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13372         (fixup_partial_die): Remove declaration.
13373         (scan_partial_symbols): Update.
13374         (partial_die_parent_scope): Likewise.
13375         (partial_die_full_name): Likewise.
13376         (fixup_partial_die): Change it to partial_die_info::fixup.
13377
13378 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13379
13380         * dwarf2read.c (read_partial_die): Update the declaration.
13381         (load_partial_dies): Caller update.
13382         (read_partial_die): Remove one argument abbrev_len.
13383
13384 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13385
13386         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13387         assignment operator.
13388         (load_partial_dies): Use ctor and copy ctor.
13389         (read_partial_die): Update.
13390         (dwarf2_cu::find_partial_die): Use ctor.
13391
13392 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13393
13394         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13395         (find_partial_die_in_comp_unit): Change it to
13396         dwarf2_cu::find_partial_die.
13397         (find_partial_die): Update.
13398
13399 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13400
13401         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13402         is NULL.
13403
13404 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13405
13406         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13407
13408 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13409
13410         * arch/amd64.h: Use common/tdesc.h.
13411         * arch/i386.c: Likewise.
13412         * arch/i386.h: Likewise.
13413         * arch/tic6x.c: Likewise.
13414         * arch/tdesc.h: Move file from here...
13415         * common/tdesc.h: ...to here.
13416         * features/aarch64-core.c: Regenerate.
13417         * features/aarch64-fpu.c: Regenerate.
13418         * features/i386/32bit-avx.c: Regenerate.
13419         * features/i386/32bit-avx512.c: Regenerate.
13420         * features/i386/32bit-core.c: Regenerate.
13421         * features/i386/32bit-linux.c: Regenerate.
13422         * features/i386/32bit-mpx.c: Regenerate.
13423         * features/i386/32bit-pkeys.c: Regenerate.
13424         * features/i386/32bit-sse.c: Regenerate.
13425         * features/i386/64bit-avx.c: Regenerate.
13426         * features/i386/64bit-avx512.c: Regenerate.
13427         * features/i386/64bit-core.c: Regenerate.
13428         * features/i386/64bit-linux.c: Regenerate.
13429         * features/i386/64bit-mpx.c: Regenerate.
13430         * features/i386/64bit-pkeys.c: Regenerate.
13431         * features/i386/64bit-segments.c: Regenerate.
13432         * features/i386/64bit-sse.c: Regenerate.
13433         * features/i386/x32-core.c: Regenerate.
13434         * features/tic6x-c6xp.c: Regenerate.
13435         * features/tic6x-core.c: Regenerate.
13436         * features/tic6x-gp.c: Regenerate.
13437         * target-descriptions.c: Use common/tdesc.h.
13438         * target-descriptions.h: Likewise.
13439
13440 2018-02-24  Tom Tromey  <tom@tromey.com>
13441
13442         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13443         (try_thread_db_load_from_dir, thread_db_load_search): Use
13444         std::string.
13445         (info_auto_load_libthread_db_compare): Return bool.  Change
13446         argument types.
13447         (info_auto_load_libthread_db): Use std::vector, std::string.
13448         Remove cleanups.
13449
13450 2018-02-24  Tom Tromey  <tom@tromey.com>
13451
13452         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13453         std::string.
13454         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13455         std::string*.
13456         * gdbarch.c: Rebuild.
13457         * gdbarch.h: Rebuild.
13458         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13459         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13460         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13461         std::string*.
13462
13463 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13464
13465         * gdbtypes.h (sect_offset): Change type to uint64_t.
13466         (sect_offset_str): New function.
13467         * dwarf2read.c (create_addrmap_from_aranges): Use
13468         sect_offset_str.
13469         (error_check_comp_unit_head): Likewise.
13470         (create_debug_type_hash_table): Likewise.
13471         (read_cutu_die_from_dwo): Likewise.
13472         (init_cutu_and_read_dies): Likewise.
13473         (init_cutu_and_read_dies_no_follow): Likewise.
13474         (process_psymtab_comp_unit_reader): Likewise.
13475         (partial_die_parent_scope): Likewise.
13476         (peek_die_abbrev): Likewise.
13477         (process_queue): Likewise.
13478         (dwarf2_physname): Likewise.
13479         (read_namespace_alias): Likewise.
13480         (read_import_statement): Likewise.
13481         (create_dwo_cu_reader): Likewise.
13482         (create_cus_hash_table): Likewise.
13483         (lookup_dwo_cutu): Likewise.
13484         (inherit_abstract_dies): Likewise.
13485         (read_func_scope): Likewise.
13486         (read_call_site_scope): Likewise.
13487         (dwarf2_add_member_fn): Likewise.
13488         (read_common_block): Likewise.
13489         (read_module_type): Likewise.
13490         (read_typedef): Likewise.
13491         (read_subrange_type): Likewise.
13492         (load_partial_dies): Likewise.
13493         (read_partial_die): Likewise.
13494         (find_partial_die): Likewise.
13495         (read_str_index): Likewise.
13496         (dwarf2_string_attr): Likewise.
13497         (build_error_marker_type): Likewise.
13498         (lookup_die_type): Likewise.
13499         (dump_die_shallow): Likewise.
13500         (follow_die_ref): Likewise.
13501         (dwarf2_fetch_die_loc_sect_off): Likewise.
13502         (dwarf2_fetch_constant_bytes): Likewise.
13503         (follow_die_sig): Likewise.
13504         (get_signatured_type): Likewise.
13505         (get_DW_AT_signature_type): Likewise.
13506         (dwarf2_find_containing_comp_unit): Likewise.
13507         (set_die_type): Likewise.
13508
13509 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13510
13511         * arch/aarch64.c: Include "common-defs.h".
13512         * arch/amd64.c: Likewise.
13513         * arch/i386.c: Likewise.
13514
13515 2018-02-21  Tom Tromey  <tom@tromey.com>
13516
13517         * value.h: (extract_field_op): Update.
13518         * eval.c (extract_field_op): Return a const char *.
13519         * expression.h (parse_expression_for_completion): Update.
13520         * completer.c (complete_expression): Update.
13521         (add_struct_fields): Make fieldname const.
13522         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13523         (mark_completion_tag, parse_exp_in_context_1): Update.
13524         (parse_expression_for_completion): Change "name" to
13525         unique_xmalloc_ptr*.
13526
13527 2018-02-21  Tom Tromey  <tom@tromey.com>
13528
13529         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13530
13531 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13532
13533         * avr-tdep.c (avr_read_pc): Change parameter type to
13534         readable_regcache.
13535         * gdbarch.sh (read_pc): Likewise.
13536         * gdbarch.c: Re-generated.
13537         * gdbarch.h: Re-generated.
13538         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13539         readable_regcache.
13540         * ia64-tdep.c (ia64_read_pc): Likewise.
13541         * mips-tdep.c (mips_read_pc): Likewise.
13542         * spu-tdep.c (spu_read_pc): Likewise.
13543
13544 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13545
13546         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13547         * regcache-dump.c: New file.
13548         * regcache.c: Move register_dump to regcache-dump.c.
13549         (maintenance_print_registers): Likewise.
13550         (maintenance_print_raw_registers): Likewise.
13551         (maintenance_print_cooked_registers): Likewise.
13552         (maintenance_print_register_groups): Likewise.
13553         (maintenance_print_remote_registers): Likewise.
13554         (_initialize_regcache): Likewise.
13555         * regcache.h (register_dump): Moved from regcache.c.
13556
13557 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13558
13559         * regcache.c (regcache::regcache): Update.
13560         (regcache::invalidate): Move it to detached_regcache::invalidate.
13561         (get_thread_arch_aspace_regcache): Update.
13562         (regcache::raw_update): Update.
13563         (regcache::cooked_read): Remove some code.
13564         (regcache::cooked_read_value): Likewise.
13565         (regcache::raw_write): Remove assert on m_readonly_p.
13566         (regcache::raw_supply_integer): Move it to
13567         detached_regcache::raw_supply_integer.
13568         (regcache::raw_supply_zeroed): Likewise.
13569         * regcache.h (detached_regcache) <raw_supply_integer>: New
13570         declaration.
13571         <raw_supply_zeroed, invalidate>: Likewise.
13572         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13573         <invalidate>: Likewise.
13574         <m_readonly_p>: Removed.
13575
13576 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13577
13578         * infcmd.c (get_return_value): Let stop_regs point to
13579         get_current_regcache.
13580         * regcache.c (regcache::regcache): Remove.
13581         (register_dump_reg_buffer): New class.
13582         (regcache_print): Adjust.
13583         * regcache.h (regcache): Remove constructors.
13584
13585 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13586
13587         * regcache.c (class register_dump): New class.
13588         (register_dump_regcache, register_dump_none): New class.
13589         (register_dump_remote, register_dump_groups): New class.
13590         (regcache_print): Update.
13591         * regcache.h (regcache_dump_what): Move it to regcache.c.
13592         (regcache) <dump>: Remove.
13593
13594 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13595
13596         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13597          reg_buffer_rw *.
13598         (jit_unwind_reg_set_impl): Call raw_supply.
13599         (jit_frame_sniffer): Use reg_buffer_rw.
13600         * record-full.c (record_full_core_regbuf): Change its type.
13601         (record_full_core_open_1): Use reg_buffer_rw.
13602         (record_full_close): Likewise.
13603         (record_full_core_fetch_registers): Use regcache->raw_supply.
13604         (record_full_core_store_registers): Likewise.
13605         * regcache.c (regcache::get_register_status): Move it to
13606         reg_buffer.
13607         (regcache_raw_set_cached_value): Remove.
13608         (regcache::raw_set_cached_value): Remove.
13609         (regcache::raw_write): Call raw_supply.
13610         (regcache::raw_supply): Move it to reg_buffer_rw.
13611         * regcache.h (regcache_raw_set_cached_value): Remove.
13612         (reg_buffer_rw): New class.
13613
13614 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13615
13616         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13617         readonly_detached_regcache.
13618         (dummy_frame_prev_register): Use regcache->cooked_read.
13619         * frame.c (frame_save_as_regcache): Change return type.
13620         (frame_pop): Update.
13621         * frame.h (frame_save_as_regcache): Update declaration.
13622         * inferior.h (get_infcall_suspend_state_regcache): Update
13623         declaration.
13624         * infrun.c (infcall_suspend_state) <registers>: use
13625         readonly_detached_regcache.
13626         (save_infcall_suspend_state): Don't use regcache_dup.
13627         (get_infcall_suspend_state_regcache): Change return type.
13628         * linux-fork.c (struct fork_info) <savedregs>: Change to
13629         readonly_detached_regcache.
13630         <pc>: New field.
13631         (fork_save_infrun_state): Don't use regcache_dup.
13632         (info_checkpoints_command): Adjust.
13633         * mi/mi-main.c (register_changed_p): Update declaration.
13634         (mi_cmd_data_list_changed_registers): Use
13635         readonly_detached_regcache.
13636         (register_changed_p): Change parameter type to
13637         readonly_detached_regcache.
13638         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13639         readonly_detached_regcache.
13640         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13641         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13642         New.
13643         (regcache::save): Move it to reg_buffer.
13644         (regcache::restore): Change parameter type.
13645         (regcache_dup): Remove.
13646         * regcache.h (reg_buffer) <save>: New method.
13647         (readonly_detached_regcache): New class.
13648         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13649         readonly_detached_regcache.
13650         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13651
13652 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13653
13654         * frame.c (frame_save_as_regcache): Use regcache method save.
13655         (frame_pop): Use regcache method restore.
13656         * infrun.c (restore_infcall_suspend_state): Likewise.
13657         * linux-fork.c (fork_load_infrun_state): Likewise.
13658         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13659         save.
13660         * regcache.c (regcache_save): Remove.
13661         (regcache::restore): More asserts.
13662         (regcache_cpy): Remove.
13663         * regcache.h (regcache_save): Remove the declaration.
13664         (regcache::restore): Move from private to public.
13665         Remove the friend declaration of regcache_cpy.
13666         (regcache_cpy): Remove declaration.
13667
13668 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13669
13670         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13671         parameter type to 'readable_regcache *'.
13672         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13673         * arm-tdep.c (arm_neon_quad_read): Likewise.
13674         (arm_pseudo_read): Likewise.
13675         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13676         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13677         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13678         * gdbarch.c: Re-generated.
13679         * gdbarch.h: Re-generated.
13680         * gdbarch.sh (pseudo_register_read): Change parameter type to
13681         'readable_regcache *'.
13682         (pseudo_register_read_value): Likewise.
13683         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13684         (h8300_pseudo_register_read): Likewise.
13685         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13686         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13687         (i386_pseudo_register_read_into_value): Likewise.
13688         (i386_pseudo_register_read_value): Likewise.
13689         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13690         declaration.
13691         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13692         * m32c-tdep.c (m32c_raw_read): Likewise.
13693         (m32c_read_flg): Likewise.
13694         (m32c_banked_register): Likewise.
13695         (m32c_banked_read): Likewise.
13696         (m32c_sb_read): Likewise.
13697         (m32c_part_read): Likewise.
13698         (m32c_cat_read): Likewise.
13699         (m32c_r3r2r1r0_read): Likewise.
13700         (m32c_pseudo_register_read): Likewise.
13701         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13702         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13703         (mep_pseudo_cr64_read): Likewise.
13704         (mep_pseudo_register_read): Likewise.
13705         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13706         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13707         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13708         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13709         (regcache::cooked_read): Likewise.
13710         (regcache::cooked_read_value): Likewise.
13711         (regcache_cooked_read_signed):
13712         (regcache::cooked_read): Likewise.
13713         * regcache.h (readable_regcache): New class.
13714         (regcache): Inherit readable_regcache.  Move some methods to
13715         readable_regcache.
13716         * rl78-tdep.c (rl78_pseudo_register_read): Change
13717         parameter type to 'readable_regcache *'.
13718         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13719         (e500_pseudo_register_read): Change parameter type to
13720         'readable_regcache *'.
13721         (dfp_pseudo_register_read): Likewise.
13722         (vsx_pseudo_register_read): Likewise.
13723         (efpr_pseudo_register_read): Likewise.
13724         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13725         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13726         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13727         (sh64_pseudo_register_read): Likewise.
13728         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13729         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13730         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13731         (spu_pseudo_register_read): Likewise.
13732         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13733         (xtensa_pseudo_register_read): Likewise.
13734
13735 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13736
13737         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13738         (regcache::arch): Move it to reg_buffer::arch.
13739         (regcache::register_buffer): Likewise.
13740         (regcache::assert_regnum): Likewise.
13741         (regcache::num_raw_registers): Likewise.
13742         * regcache.h (reg_buffer): New class.
13743         (regcache): Inherit reg_buffer.
13744
13745 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13746
13747         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13748         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13749
13750 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13751
13752         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13753
13754 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13755
13756         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13757         (SFILES): Remove common/*.c files.
13758         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13759         * common/common.host: Add common reference.
13760         * configure.ac: Likewise.
13761         * configure: Regenerate.
13762
13763 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13764
13765         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13766         (block_initialize_namespace): Use new.
13767         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13768         (dwarf2_free_objfile): Use delete.
13769         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13770         (copy_type_recursive): Use new.
13771         * gdb_obstack.h (allocate_on_obstack): New.
13772
13773 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13774
13775         PR gdb/22849
13776         * inferior.c (exit_inferior_1): Reset inf->control.
13777
13778 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13779
13780         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13781         declaration.
13782
13783 2018-02-14  Pedro Alves  <palves@redhat.com>
13784
13785         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13786         frame_cleanup_after_sniffer on exception.
13787
13788 2018-02-14  Tom Tromey  <tom@tromey.com>
13789
13790         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13791         const.
13792         (solib_bfd_open): Make pathname const.
13793         * solib.c (solib_bfd_open): Make pathname const.
13794         * solib-spu.c (spu_bfd_fopen): Make name const.
13795         (spu_bfd_open): Make pathname const.
13796         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13797         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13798
13799 2018-02-14  Tom Tromey  <tom@tromey.com>
13800
13801         * symfile.c (symfile_bfd_open): Update.
13802         * source.h (openp, source_full_path_of, find_and_open_source):
13803         Change argument type to unique_xmalloc_ptr.
13804         * source.c (openp): Take a unique_xmalloc_ptr.
13805         (source_full_path_of, find_and_open_source): Likewise.
13806         (open_source_file, symtab_to_fullname): Update.
13807         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13808         unique_xmalloc_ptr.
13809         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13810         (exec_file_find): Update.
13811         * psymtab.c (psymtab_to_fullname): Update.
13812         * nto-tdep.h (nto_find_and_open_solib): Update.
13813         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13814         unique_xmalloc_ptr.
13815         * exec.c (exec_file_attach): Update.
13816         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13817         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13818
13819 2018-02-14  Tom Tromey  <tom@tromey.com>
13820
13821         * solib.c: Include source.h.
13822         * nto-tdep.c: Include source.h.
13823         * mi/mi-cmd-env.c: Include source.h.
13824         * infcmd.c: Include source.h.
13825         * exec.c: Include source.h.
13826         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13827         (add_path, directory_switch, source_path, init_source_path): Move
13828         declarations...
13829         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13830         (add_path, directory_switch, source_path, init_source_path):
13831         ...here.
13832
13833 2018-02-14  Tom Tromey  <tom@tromey.com>
13834
13835         * solist.h (exec_file_find, solib_find): Return
13836         unique_xmalloc_ptr.
13837         (solib_bfd_fopen): Take a const char *.
13838         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13839         (exec_file_find, solib_find): Likewise.
13840         (solib_bfd_fopen): Do not take ownership of "pathname".
13841         (solib_bfd_open): Use unique_xmalloc_ptr.
13842         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13843         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13844         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13845         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13846
13847 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13848
13849         * ada-lang.c (name_match_type_from_name): Remove reference to
13850         ada_name_for_lookup in function's documentation.
13851         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13852
13853 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13854
13855         * defs.h (enum openp_flags): New enum.
13856         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13857         Move to enum openp_flags.
13858         (openp_flags): New enum flags.
13859         (openp): Change parameter type to openp_flags.
13860         * source.c (openp): Change parameter type to openp_flags.
13861         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13862         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13863
13864 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13865
13866         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13867         per-command.
13868
13869 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13870
13871         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13872         into...
13873         (class dwarf2_queue_guard): ...the destructor of this new class.
13874         (dw2_do_instantiate_symtab): Create instance of the new class
13875         dwarf2_queue_guard, remove cleanup.
13876
13877 2018-02-09  Tom Tromey  <tom@tromey.com>
13878
13879         * source.c (find_source_lines): Don't reference past the end of
13880         the vector.
13881
13882 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13883
13884         * remote.c (remote_btrace_maybe_reopen): Change error message.
13885         * btrace.c (btrace_enable): Likewise.
13886         (parse_xml_btrace): Likewise.
13887         (parse_xml_btrace_conf): Likewise.
13888
13889 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13890
13891         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13892         (linux_enable_pt, linux_enable_bts): Call
13893         diagnose_perf_event_open_fail.
13894
13895 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13896
13897         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13898         Remove parameter and change return type.  Update callers.  Move it.
13899         (linux_enable_bts, linux_enable_pt): Improve error message.
13900         (linux_enable_pt): Remove zero buffer size check.
13901         (linux_enable_btrace): Improve error messages.  Remove NULL return
13902         check.
13903
13904 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13905
13906         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13907         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13908         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13909         (linux_supports_pt, linux_supports_btrace): Remove.
13910         (linux_enable_bts): Call cpu_supports_bts.
13911         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13912         * remote.c (remote_supports_btrace): Remove.
13913         (init_remote_ops): Remove remote_supports_btrace.
13914         * target-delegates.c: Regenerated.
13915         * target.c (target_supports_btrace): Remove.
13916         * target.h (target_ops) <to_supports_btrace>: Remove
13917         (target_supports_btrace): Remove.
13918         * x86-linux-nat.c (x86_linux_create_target): Remove
13919         linux_supports_btrace.
13920
13921 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13922
13923         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13924         btrace failed.
13925         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13926         exception and use message in own exception.
13927
13928 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13929
13930         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13931         (perf_event_pt_event_type): Use gdb_file_up.
13932         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13933         scoped_fd, and scoped_mmap.
13934
13935 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13936
13937         * common/scoped_mmap.h: New.
13938         * unittests/scoped_mmap-selftest.c: New.
13939         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13940         unittests/scoped_mmap-selftest.c.
13941
13942 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13943
13944         * common/scoped_fd.h: New.
13945         * unittests/scoped_fd-selftest.c: New.
13946         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13947         unittests/scoped_fd-selftest.c.
13948
13949 2018-02-09  Tom Tromey  <tom@tromey.com>
13950
13951         * auto-load.c (auto_load_section_scripts): Use
13952         gdb::unique_xmalloc_ptr.
13953
13954 2018-02-09  Tom Tromey  <tom@tromey.com>
13955
13956         * auto-load.c (execute_script_contents): Use std::string.
13957
13958 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13959
13960         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13961         Python function, rather than a new command.
13962
13963 2018-02-08  Tom Tromey  <tom@tromey.com>
13964
13965         * solib.c (solib_find_1): Use std::string.
13966         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13967
13968 2018-02-08  Tom Tromey  <tom@tromey.com>
13969
13970         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13971
13972 2018-02-08  Tom Tromey  <tom@tromey.com>
13973
13974         * source.c (find_source_lines): Use gdb::def_vector.
13975
13976 2018-02-08  Tom Tromey  <tom@tromey.com>
13977
13978         * macrocmd.c (struct temporary_macro_definition): New.
13979         (macro_define_command): Use temporary_macro_definition.  Remove
13980         cleanups.
13981         (free_macro_definition_ptr): Remove.
13982
13983 2018-02-08  Tom Tromey  <tom@tromey.com>
13984
13985         * macroexp.c (maybe_expand): Use std::string.
13986
13987 2018-02-08  Tom Tromey  <tom@tromey.com>
13988
13989         * macroexp.c (struct macro_buffer): Add initializers for some
13990         members.
13991         (init_buffer, init_shared_buffer, free_buffer)
13992         (free_buffer_return_text): Remove.
13993         (macro_buffer): New constructors.
13994         (~macro_buffer): New destructor.
13995         (macro_buffer::set_shared): New method.
13996         (macro_buffer::resize_buffer, macro_buffer::appendc)
13997         (macro_buffer::appendmem): Now methods, not free functions.
13998         (set_token, append_tokens_without_splicing, stringify)
13999         (macro_stringify): Update.
14000         (gather_arguments): Change return type.  Remove argc_p argument,
14001         add args_ptr argument.  Use std::vector.
14002         (substitute_args): Remove argc argument.  Accept std::vector.
14003         (expand): Update.  Use std::vector.
14004         (scan, macro_expand, macro_expand_next): Update.
14005
14006 2018-02-08  Tom Tromey  <tom@tromey.com>
14007
14008         * symtab.c (default_collect_symbol_completion_matches_break_on):
14009         Use unique_xmalloc_ptr.
14010         * macroscope.h: (sal_macro_scope, user_macro_scope)
14011         (default_macro_scope): Return unique_xmalloc_ptr.
14012         * macroscope.c (sal_macro_scope, user_macro_scope)
14013         (default_macro_scope): Return unique_xmalloc_ptr.
14014         * macroexp.h (macro_expand, macro_expand_once): Return
14015         unique_xmalloc_ptr.
14016         * macroexp.c (macro_expand, macro_expand_once): Return
14017         unique_xmalloc_ptr.
14018         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14019         (info_macro_command, info_macros_command): Use
14020         unique_xmalloc_ptr.
14021         * compile/compile-c-support.c (write_macro_definitions): Use
14022         unique_xmalloc_ptr.
14023         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14024
14025 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14026
14027         * value.c (value_static_field): Assign field type instead of
14028         containing type when returning an optimized out value.
14029
14030 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14031
14032         * ft32-tdep.c (ft32_read_pc): Remove.
14033         (ft32_write_pc): Remove.
14034         (ft32_gdbarch_init): Update.
14035         * m32r-tdep.c (m32r_read_pc): Remove.
14036         (m32r_gdbarch_init): Update.
14037         * mep-tdep.c (mep_read_pc): Remove.
14038         (mep_gdbarch_init): Update.
14039         * microblaze-tdep.c (microblaze_write_pc): Remove.
14040         (microblaze_gdbarch_init): Update.
14041         * mn10300-tdep.c (mn10300_read_pc): Remove.
14042         (mn10300_write_pc): Remove.
14043         (mn10300_gdbarch_init): Update.
14044         * moxie-tdep.c (moxie_read_pc): Remove.
14045         (moxie_write_pc): Remove.
14046         (moxie_gdbarch_init): Update.
14047
14048 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14049
14050         * expprint.c (print_subexp_standard): Handle
14051         OP_F77_UNDETERMINED_ARGLIST.
14052         (dump_subexp_body_standard): Likewise.
14053
14054 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14055
14056         * target-descriptions.c (tdesc_element_visitor) Add empty
14057         implementations.
14058         (tdesc_type): Move make_gdb_type from here.
14059         (tdesc_type_builtin): Likewise.
14060         (tdesc_type_vector): Likewise.
14061         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14062         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14063         (make_gdb_type_union): Likewise.
14064         (make_gdb_type_flags): Likewise.
14065         (make_gdb_type_enum): Likewise.
14066         (make_gdb_type): New function.
14067         (tdesc_register_type): Use static make_gdb_type.
14068
14069 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14070
14071         * infcmd.c (default_print_one_register_info): Align natural-format
14072         column values consistently one under another.
14073         (pad_to_column): New function.
14074
14075 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14076
14077         * dwarf2read.c (dwarf2_physname): Move commment.
14078
14079 2018-02-01  Leszek Swirski  <leszeks@google.com>
14080
14081         * varobj.c (varobj_formatted_print_options): Allow recursive
14082         pretty printing if pretty printing is enabled.
14083
14084 2018-02-01  Leszek Swirski  <leszeks@google.com>
14085
14086         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14087         names after a structop as a filename.
14088
14089 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14090
14091         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14092         (arm_record_coproc_data_proc): Likewise.
14093
14094 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14095
14096         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14097
14098 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14099
14100         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14101         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14102
14103 2018-01-31  Pedro Alves  <palves@redhat.com>
14104
14105         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14106         * inflow.c (child_terminal_save_inferior): Wrap reference to
14107         tcgetpgrp in HAVE_TERMIOS_H.
14108         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14109         _WIN32.
14110         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14111         always iterate over all inferiors.
14112         (gdbsim_cntrl_c): Adjust.
14113         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14114
14115 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14116
14117         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14118         index type is objfile-owned if the element type is as well.
14119
14120 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14121
14122         GDB 8.1 released.
14123
14124 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14125
14126         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14127         "features/s390x-linux64.c".
14128         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14129         s390_linux32 and s390x_linux64.
14130         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14131         default tdesc.
14132         * s390-tdep.c: Include "features/s390-linux32.c" and
14133         "features/s390x-linux64.c".
14134         (s390_tdesc_valid): Add check for tdesc_has_registers.
14135         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14136         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14137         tdesc_s390x_linux64.
14138         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14139         tdesc_s390x_linux64 to...
14140         * s390-tdep.h: ...here.
14141
14142 2018-01-30  Pedro Alves  <palves@redhat.com>
14143
14144         PR gdb/13211
14145         * config.in, configure: Regenerate.
14146         * configure.ac: Check for getpgid.
14147         * go32-nat.c (go32_pass_ctrlc): New.
14148         (go32_target): Install it.
14149         * inf-child.c (inf_child_target): Install
14150         child_terminal_save_inferior, child_pass_ctrlc and
14151         child_interrupt.
14152         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14153         (inf_ptrace_target): No longer install it.
14154         * infcmd.c (interrupt_target_1): Adjust.
14155         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14156         (child_interrupt): Declare.
14157         (inferior::terminal_state): New.
14158         * inflow.c (struct terminal_info): Update comments.
14159         (inferior_process_group): Delete.
14160         (terminal_is_ours): Delete.
14161         (gdb_tty_state): New.
14162         (child_terminal_init): Adjust.
14163         (is_gdb_terminal, sharing_input_terminal_1)
14164         (sharing_input_terminal): New functions.
14165         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14166         Set the process's actual process group in the foreground if
14167         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14168         mark terminal as the inferior's if not sharing GDB's terminal.
14169         Don't check attach_flag.
14170         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14171         pass down a target_terminal_state.
14172         (child_terminal_save_inferior): New, factored out from ...
14173         (child_terminal_ours_1): ... this.  Handle
14174         target_terminal_state::is_ours_for_output.
14175         (child_interrupt, child_pass_ctrlc): New.
14176         (inflow_inferior_exit): Clear the inferior's terminal_state.
14177         (copy_terminal_info): Copy the inferior's terminal state.
14178         (_initialize_inflow): Remove reference to terminal_is_ours.
14179         * inflow.h (inferior_process_group): Delete.
14180         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14181         * procfs.c (procfs_target): Don't install procfs_interrupt.
14182         (procfs_interrupt): Delete.
14183         * remote.c (remote_serial_quit_handler): Adjust.
14184         (remote_interrupt): Remove ptid parameter.  Adjust.
14185         * target-delegates.c: Regenerate.
14186         * target.c: Include "terminal.h".
14187         (target_terminal::terminal_state): Rename to ...
14188         (target_terminal::m_terminal_state): ... this.
14189         (target_terminal::init): Adjust.
14190         (target_terminal::inferior): Adjust to per-inferior
14191         terminal_state.
14192         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14193         (target_terminal::ours, target_terminal::ours_for_output): Use
14194         target_terminal_is_ours_kind.
14195         (target_interrupt): Remove ptid parameter.  Adjust.
14196         (default_target_pass_ctrlc): Adjust.
14197         * target.h (target_ops::to_terminal_save_inferior): New field.
14198         (target_ops::to_interrupt): Remove ptid_t parameter.
14199         (target_interrupt): Remove ptid_t parameter.  Update comment.
14200         (target_pass_ctrlc): Update comment.
14201         * target/target.h (target_terminal_state): New scoped enum,
14202         factored out of ...
14203         (target_terminal::terminal_state): ... here.
14204         (target_terminal::inferior): Update comments.
14205         (target_terminal::restore_inferior): New.
14206         (target_terminal::is_inferior, target_terminal::is_ours)
14207         (target_terminal::is_ours_for_output): Adjust.
14208         (target_terminal::scoped_restore_terminal_state): Adjust to
14209         rename, and call restore_inferior() instead of inferior().
14210         (target_terminal::scoped_restore_terminal_state::m_state): Change
14211         type.
14212         (target_terminal::terminal_state): Rename to ...
14213         (target_terminal::m_terminal_state): ... this and change type.
14214
14215 2018-01-30  Pedro Alves  <palves@redhat.com>
14216
14217         * linux-nat.c (wait_for_signal): New function.
14218         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14219         directly.
14220         (async_terminal_is_ours)
14221         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14222         (linux_nat_add_target): Don't override
14223         to_terminal_inferior/to_terminal_ours.
14224
14225 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14226
14227         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14228
14229 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14230
14231         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14232         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14233         dwarf2_per_objfile_free here.
14234         (dwarf2_per_objfile_free): Remove.
14235         (_initialize_dwarf2_read): Don't register
14236         dwarf2_per_objfile_free as a registry cleanup.
14237
14238 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14239
14240         Avoid compilation errors in MinGW native builds
14241
14242         The error is triggered by including python-internal.h, and the
14243         error message is:
14244
14245              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14246                       from build-gnulib/import/math.h:27,
14247                       from d:/usr/Python26/include/pyport.h:235,
14248                       from d:/usr/Python26/include/Python.h:58,
14249                       from python/python-internal.h:94,
14250                       from python/py-arch.c:24:
14251              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14252         using ::hypot;
14253                 ^~~~~
14254
14255         This happens because Python headers define 'hypot' to expand t
14256         '_hypot' in the Windows builds.
14257         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14258         'hypoth'.  This avoids a compilation error.
14259
14260 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14261
14262         * MAINTAINERS (Write After Approval): Fix ordering.
14263
14264 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14265
14266         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14267
14268 2018-01-26  Alan Modra  <amodra@gmail.com>
14269
14270         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14271         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14272         Remove nop.  Make const.  Comment.
14273         (powerpc32_plt_stub_so_2): New.
14274         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14275         Correct count.  Update uses.
14276         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14277         Move common code reading PLT entry word.  Correct
14278         powerpc32_plt_stub PLT address calculation.
14279         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14280         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14281         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14282         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14283         (ppc64_standard_linkage8): Likewise.
14284         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14285         Correct insns description.
14286         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14287
14288 2018-01-24  Pedro Alves  <palves@redhat.com>
14289
14290         GCC PR libstdc++/83906
14291         * gdbtypes.c (operator==(const dynamic_prop &,
14292         const dynamic_prop &)): New.
14293         (operator==(const range_bounds &, const range_bounds &)): New.
14294         (check_types_equal): Use them instead of memcmp.
14295         * gdbtypes.h (operator==(const dynamic_prop &,
14296         const dynamic_prop &)): Declare.
14297         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14298         (operator==(const range_bounds &, const range_bounds &)): Declare.
14299         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14300
14301 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14302
14303         * s390-linux-tdep.c (s390_record_address_mask)
14304         (s390_record_calc_disp_common, s390_record_calc_disp)
14305         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14306         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14307         (s390_process_record): Move to s390-tdep.c.
14308         (s390_linux_init_abi_any): Adjust.
14309         * s390-tdep.c (s390_record_address_mask)
14310         (s390_record_calc_disp_common, s390_record_calc_disp)
14311         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14312         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14313         (s390_process_record): Moved from s390-linux-tdep.c
14314         (s390_gdbarch_init): Adjust.
14315
14316 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14317
14318         * s390-linux-nat.c (s390-tdep.h): New include.
14319         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14320         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14321         (ALLDEPFILES): Add s390-tdep.c.
14322         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14323         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14324         * s390-tdep.h: ...this.  New file.
14325         * s390-linux-tdep.c (s390-tdep.h): New include.
14326         (_initialize_s390_tdep): Rename to...
14327         (_initialize_s390_linux_tdep): ...this and adjust.
14328         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14329         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14330         s390-tdep.h.
14331         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14332         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14333         (s390_is_partial_instruction, s390_software_single_step)
14334         (is_non_branch_ril, s390_displaced_step_copy_insn)
14335         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14336         (s390_prologue_data, s390_addr, s390_store, s390_load)
14337         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14338         (s390_register_call_saved, s390_guess_tracepoint_registers)
14339         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14340         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14341         (s390_pseudo_register_name, s390_pseudo_register_type)
14342         (s390_pseudo_register_read, s390_pseudo_register_write)
14343         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14344         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14345         (s390_addr_bits_remove, s390_address_class_type_flags)
14346         (s390_address_class_type_flags_to_name)
14347         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14348         (s390_function_arg_float, s390_function_arg_vector)
14349         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14350         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14351         (s390_frame_align, s390_register_return_value, s390_return_value)
14352         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14353         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14354         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14355         (s390_trad_frame_prev_register, s390_unwind_cache)
14356         (s390_prologue_frame_unwind_cache)
14357         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14358         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14359         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14360         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14361         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14362         (s390_frame_base_address, s390_local_base_address)
14363         (s390_frame_base, s390_gcc_target_options)
14364         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14365         (s390_validate_reg_range, s390_tdesc_valid)
14366         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14367         * s390-tdep.c: ...this.  New file.
14368
14369 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14370
14371         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14372         (s390_process_record, s390_gdbarch_tdep_alloc)
14373         (s390_linux_init_abi_any): Use/set new hook.
14374
14375 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14376
14377         * s390-linux-tdep.c (osabi.h): New include.
14378         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14379         (s390_linux_init_abi_any): New functions.
14380         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14381
14382 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14383
14384         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14385         tdesc_has_registers check
14386
14387 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14388
14389         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14390         (s390_validate_reg_range): New macro.
14391         (s390_gdbarch_init): Adjust.
14392
14393 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14394
14395         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14396         (s390_gdbarch_tdep_alloc): Adjust.
14397         (s390_gdbarch_init): Adjust.
14398
14399 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14400
14401         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14402         <have_tdb>: Change type to bool.
14403         (s390_gdbarch_tdep_alloc): Adjust.
14404         (s390_gdbarch_init): Adjust.
14405
14406 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14407
14408         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14409         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14410         (s390_gdbarch_tdep_alloc): New function.
14411         (s390_gdbarch_init): Allocate tdep at start and use its fields
14412         instead of separate variables.
14413
14414 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14415
14416         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14417         when looking for cached gdbarch and add comment for remaining.
14418
14419 2018-01-22  Pedro Alves  <palves@redhat.com>
14420             Sergio Durigan Junior  <sergiodj@redhat.com>
14421
14422         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14423         case.
14424
14425 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14426
14427         * MAINTAINERS: Update my company e-mail address.
14428
14429 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14430
14431         * regcache.c (cooked_write_test): New function.
14432         (_initialize_regcache): Register the test.
14433
14434 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14435
14436         * ia64-tdep.c (ia64_pseudo_register_read): Call
14437         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14438         * m32c-tdep.c (m32c_cat_read): Likewise.
14439         (m32c_r3r2r1r0_read): Likewise.
14440         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14441         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14442
14443 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14444
14445         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14446         method raw_read instead of regcache_raw_read.
14447         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14448         * arm-tdep.c (arm_neon_quad_read): Likewise.
14449         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14450         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14451         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14452         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14453         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14454         (i386_pseudo_register_read_into_value): Likewise.
14455         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14456         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14457         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14458         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14459         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14460         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14461         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14462         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14463         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14464
14465 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14466
14467         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14468         * configure.tgt: Remove target mt.
14469         * mt-tdep.c: Remove.
14470         * regcache.c (cooked_read_test): Remove the check for mt.
14471
14472 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14473
14474         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14475         instead of gdbarch_pseudo_register_read_value.
14476
14477 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14478
14479         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14480         language is Ada.
14481
14482 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14483
14484         * linespec.c (create_sals_line_offset): Remove code that preserved
14485         the symtab_and_line's line number.
14486
14487 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14488
14489         * varobj.c (varobj_create): Don't set valid_block when creating a
14490         floating varobj.
14491
14492 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14493
14494         * varobj.c (varobj_create): Remove out of date comment.
14495
14496 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14497
14498         PR mi/20395
14499         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14500         updating innermost block.
14501         * parse.c (innermost_block_tracker::update): Take extra type
14502         parameter, and check types match before updating innermost block.
14503         (write_dollar_variable): Update innermost block for registers.
14504         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14505         (innermost_block_tracker::innermost_block_tracker): Initialise
14506         m_types member.
14507         (innermost_block_tracker::reset): Take type parameter.
14508         (innermost_block_tracker::update): Take type parameter, and pass
14509         type through as needed.
14510         (innermost_block_tracker::m_types): New member.
14511         * varobj.c (varobj_create): Pass type when reseting innermost
14512         block.
14513
14514 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14515
14516         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14517         * ada-lang.c (resolve_subexp): Likewise.
14518         * breakpoint.c (set_breakpoint_condition) Likewise.
14519         (watch_command_1) Likewise.
14520         * c-exp.y (variable): Likewise.
14521         * d-exp.y (PrimaryExpression): Likewise.
14522         * f-exp.y (variable): Likewise.
14523         * go-exp.y (variable): Likewise.
14524         * m2-exp.y (variable): Likewise.
14525         * objfiles.c (objfile::~objfile): Likewise.
14526         * p-exp.y (variable): Likewise.
14527         * parse.c (innermost_block): Change type.
14528         * parser-defs.h (class innermost_block_tracker): New.
14529         (innermost_block): Change to innermost_block_tracker.
14530         * printcmd.c (display_command): Switch to innermost_block API.
14531         (do_one_display): Likewise.
14532         * rust-exp.y (do_one_display): Likewise.
14533         * symfile.c (clear_symtab_users): Likewise.
14534         * varobj.c (varobj_create): Switch to innermost_block API, replace
14535         use of innermost_block with block stored on varobj object.
14536
14537 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14538
14539         * expression.h (innermost_block): Remove declaration.
14540         * varobj.c: Add 'parser-defs.h' include.
14541
14542 2018-01-19  Tom Tromey  <tom@tromey.com>
14543
14544         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14545         symbols in the static and global blocks.
14546
14547 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14548
14549         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14550         gdb_ptrace.h, and move including gdb_wait.h ...
14551         * nat/linux-ptrace.h: ... to here.
14552
14553 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14554
14555         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14556         inf_ptrace_detach_success.
14557         (inf_ptrace_detach_success): Add inferior parameter, use it
14558         instead of inferior_ptid, pass it to detach_inferior.
14559         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14560         parameter.
14561         * inferior.c (detach_inferior): Add overload that takes an
14562         inferior object.
14563         * inferior.h (detach_inferior): Likewise.
14564         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14565         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14566         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14567
14568 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14569
14570         * target.h (struct target_ops) <to_detach>: Add inferior
14571         parameter.
14572         (target_detach): Likewise.
14573         * target.c (dispose_inferior): Pass inferior down.
14574         (target_detach): Pass inferior down.  Assert that it is equal to
14575         the current inferior.
14576         * aix-thread.c (aix_thread_detach): Pass inferior down.
14577         * corefile.c (core_file_command): Pass current_inferior() down.
14578         * corelow.c (core_detach): Add inferior parameter.
14579         * darwin-nat.c (darwin_detach): Likewise.
14580         * gnu-nat.c (gnu_detach): Likewise.
14581         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14582         * infcmd.c (detach_command): Pass current_inferior() down to
14583         target_detach.
14584         * infrun.c (follow_fork_inferior): Pass parent_inf to
14585         target_detach.
14586         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14587         target_detach.
14588         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14589         * linux-thread-db.c (thread_db_detach): Likewise.
14590         * nto-procfs.c (procfs_detach): Likewise.
14591         * procfs.c (procfs_detach): Likewise.
14592         * record.c (record_detach): Likewise.
14593         * record.h (struct inferior): Forward-declare.
14594         (record_detach): Add inferior parameter.
14595         * remote-sim.c (gdbsim_detach): Likewise.
14596         * remote.c (remote_detach_1): Likewise.
14597         (remote_detach): Likewise.
14598         (extended_remote_detach): Likewise.
14599         * sol-thread.c (sol_thread_detach): Likewise.
14600         * target-debug.h (target_debug_print_inferior_p): New macro.
14601         * target-delegates.c: Re-generate.
14602         * top.c (kill_or_detach): Pass inferior down to target_detach.
14603         * windows-nat.c (windows_detach): Add inferior parameter.
14604
14605 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14606
14607         * target.h (struct target_ops) <to_detach>: Remove args
14608         parameter.
14609         (target_detach): Likewise.
14610         * target.c (dispose_inferior): Adjust.
14611         (target_detach): Remove args parameter, adjust.
14612         * aix-thread.c (aix_thread_detach): Adjust.
14613         * corefile.c (core_file_command): Adjust.
14614         * corelow.c (core_detach): Adjust.
14615         * darwin-nat.c (darwin_detach): Adjust.
14616         * gnu-nat.c (gnu_detach): Adjust.
14617         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14618         * infcmd.c (detach_command): Adjust
14619         * infrun.c (follow_fork_inferior): Adjust.
14620         (handle_vfork_child_exec_or_exit): Adjust.
14621         * linux-fork.c (linux_fork_detach): Remove args parameter.
14622         * linux-fork.h (linux_fork_detach): Likewise.
14623         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14624         * linux-thread-db.c (thread_db_detach): Likewise.
14625         * nto-procfs.c (procfs_detach): Likewise.
14626         * procfs.c (procfs_detach): Likewise.
14627         (do_detach): Remove signo parameter.
14628         * record.c (record_detach): Remove args parameter.
14629         * record.h (record_detach): Likewise.
14630         * remote-sim.c (gdbsim_detach): Likewise.
14631         * remote.c (remote_detach_1): Likewise.
14632         (remote_detach): Likewise.
14633         (extended_remote_detach): Likewise.
14634         * sol-thread.c (sol_thread_detach): Likewise.
14635         * target-delegates.c: Re-generate.
14636         * top.c (struct qt_args) <args>: Remove field.
14637         (kill_or_detach): Don't pass args.
14638         (quit_force): Don't set args.
14639         * windows-nat.c (windows_detach): Remove args parameter.
14640
14641 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14642
14643         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14644         (arm_linux_init_abi): Install it.
14645
14646 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14647
14648         * osabi.c (gdb_osabi_names): Extend the regexp for
14649         arm-linux-gnueabihf.
14650
14651 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14652
14653         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14654         m_abbrevs.
14655         (abbrev_table::add_abbrev): Update.
14656         (abbrev_table::lookup_abbrev): Update.
14657
14658 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14659
14660         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14661
14662 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14663
14664         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14665         to "std::string".
14666
14667 2018-01-17  Tom Tromey  <tom@tromey.com>
14668
14669         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14670
14671 2018-01-17  Tom Tromey  <tom@tromey.com>
14672
14673         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14674         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14675         (create_array_type_with_stride): Update.
14676         * dwarf2read.c (set_die_type): Update.
14677
14678 2018-01-17  Tom Tromey  <tom@tromey.com>
14679
14680         * dwarf2read.c (delayed_method_info): Remove typedef.
14681         (dwarf2_cu::method_info): Now a std::vector.
14682         (add_to_method_list): Update.
14683         (free_delayed_list): Remove.
14684         (compute_delayed_physnames): Update.
14685         (process_full_comp_unit, process_full_type_unit): Clear the method
14686         list.  Remove cleanups.
14687         (psymtab_include_file_name): Add name_holder parameter.  Use
14688         unique_xmalloc_ptr.
14689         (dwarf_decode_lines): Update.
14690
14691 2018-01-17  Tom Tromey  <tom@tromey.com>
14692             Simon Marchi  <simon.marchi@ericsson.com>
14693
14694         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14695         (dwarf2_per_objfile::free_cached_comp_units)
14696         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14697         (init_cutu_and_read_dies_no_follow): Update.
14698         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14699         (dwarf2_cu::~dwarf2_cu): New.
14700         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14701         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14702
14703 2018-01-17  Tom Tromey  <tom@tromey.com>
14704             Simon Marchi  <simon.marchi@ericsson.com>
14705
14706         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14707         (struct die_reader_specs) <abbrev_table>: New member.
14708         (struct abbrev_table): Add constructor.
14709         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14710         <abbrev_obstack>: Now an auto_obstack.
14711         (abbrev_table_up): New typedef.
14712         (init_cu_die_reader): Add abbrev_table parameter.
14713         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14714         Add result_dwo_abbrev_table.
14715         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14716         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14717         Update.
14718         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14719         parameter.
14720         (skip_children): Update.
14721         (abbrev_table::alloc_abbrev): Rename from
14722         abbrev_table_alloc_abbrev.
14723         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14724         (abbrev_table::lookup_abbrev): Rename from
14725         abbrev_table_lookup_abbrev.
14726         (abbrev_table_read_table): Return abbrev_table_up.
14727         (abbrev_table_free, abbrev_table_free_cleanup)
14728         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14729         (load_partial_dies): Update.
14730
14731 2018-01-17  Tom Tromey  <tom@tromey.com>
14732
14733         * dwarf2read.c (dwarf2_compute_name): Update comment.
14734         (read_func_scope, read_variable): Update.
14735         (new_symbol): Remove.
14736         (new_symbol_full): Rename to new_symbol.
14737
14738 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14739
14740         PR gdb/16577
14741         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14742         a warning instead of throwing an error, set section size to 0 and return
14743         NULL.
14744         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14745
14746 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14747
14748         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14749         std::string.
14750         (linux_ptrace_attach_fail_reason_string): Likewise.
14751         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14752         Likewise.
14753         (linux_ptrace_attach_fail_reason_string): Likewise.
14754         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14755
14756 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14757
14758         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14759
14760 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14761
14762         PR gdb/21559
14763         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14764         checking for fs_base/gs_base fields in struct user_regs_struct.
14765         * configure: Regenerate.
14766
14767 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14768
14769         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14770         function.
14771         (aarch64_linux_init_abi): Install it to gdbarch hook
14772         gcc_target_options.
14773
14774 2018-01-15  Pedro Alves  <palves@redhat.com>
14775
14776         * common/signals-state-save-restore.c
14777         (save_original_signals_state): Fix typos.
14778
14779 2017-01-12  Tom Tromey  <tom@tromey.com>
14780             Sergio Durigan Junior  <sergiodj@redhat.com>
14781
14782         * Makefile.in (install-only): Install gdb-add-index.
14783
14784 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14785
14786         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14787
14788 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14789
14790         * infrun.c (keep_going_pass_signal): Clear step-over info when
14791         insert_breakpoints fails.
14792
14793 2018-01-11  Pedro Alves  <palves@redhat.com>
14794
14795         PR gdb/22583
14796         * infrun.c (resume): Rename to ...
14797         (resume_1): ... this.
14798         (resume): Reimplement as wrapper around resume_1.
14799
14800 2018-01-11  Pedro Alves  <palves@redhat.com>
14801
14802         PR remote/22597
14803         * remote.c (remote_parse_stop_reply): Default to the last-set
14804         general thread instead of to 'magic_null_ptid'.
14805
14806 2018-01-10  Pedro Alves  <palves@redhat.com>
14807
14808         * language.h (language_get_symbol_name_matcher): Rename ...
14809         (get_symbol_name_matcher): ... this.
14810         * language.c (language_get_symbol_name_matcher): Ditto.
14811         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14812         callers adjusted.
14813
14814 2018-01-10  Pedro Alves  <palves@redhat.com>
14815
14816         PR gdb/22670
14817         * dwarf2read.c
14818         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14819         Adjust to use language_get_symbol_name_matcher instead of
14820         language_defn::la_get_symbol_name_matcher.
14821         * language.c (language_get_symbol_name_matcher): If in Ada mode
14822         and the lookup name is a verbatim match, return Ada's matcher.
14823         * language.h (language_get_symbol_name_matcher): Adjust comment.
14824         (ada_lookup_name_info::verbatim_p):: New method.
14825
14826 2018-01-10  Pedro Alves  <palves@redhat.com>
14827
14828         PR gdb/22670
14829         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14830         minsym's language is language_auto or language_cplus, pass down
14831         language_ada instead.
14832         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14833
14834 2018-01-10  Pedro Alves  <palves@redhat.com>
14835
14836         PR gdb/22670
14837         * minsyms.c (linkage_name_str): New function.
14838         (iterate_over_minimal_symbols): Use it.
14839
14840 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14841
14842         * NEWS: Document that 'info proc' now works on FreeBSD.
14843
14844 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14845
14846         * configure.ac: Check for kinfo_getfile in libutil.
14847         * configure: Regenerate.
14848         * config.in: Regenerate.
14849         * fbsd-nat.c: Include "fbsd-tdep.h".
14850         (fbsd_fetch_cmdline): New.
14851         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14852         rather than calling error.
14853         (fbsd_info_proc): New.
14854         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14855         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14856         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14857
14858 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14859
14860         * fbsd-nat.c (struct free_deleter): Remove.
14861         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14862
14863 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14864
14865         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14866         NULL for an empty pathname.
14867
14868 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14869
14870         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14871         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14872         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14873         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14874         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14875         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14876         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14877         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14878         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14879         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14880         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14881         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14882         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14883         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14884         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14885
14886 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14887
14888         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14889         (gnu_xfer_auxv): New function.
14890         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14891         TARGET_OBJECT_AUXV.
14892
14893 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14894             Simon Marchi  <simon.marchi@ericsson.com>
14895
14896         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14897         common/selftest.c.
14898         (COMMON_OBS): Remove selftest.o.
14899         * configure.ac: Append selftest-arch.c and common/selftest.c to
14900         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14901         * configure: Re-generated.
14902         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14903         GDB_SELF_TEST.
14904         (maintenance_info_selftests): Likewise.
14905
14906 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14907
14908         * ada-valprint.c (val_print_packed_array_elements): Use
14909         proper number of elements when printing an array indexed
14910         by an enumeration type.
14911
14912 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14913
14914         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14915         (dw2_get_file_names_reader): Adjust.
14916         (lookup_dwo_signatured_type): Adjust.
14917         (lookup_dwp_signatured_type): Adjust.
14918         (lookup_signatured_type): Adjust.
14919         (create_type_unit_group): Adjust.
14920         (get_type_unit_group): Adjust.
14921         (process_psymtab_comp_unit_reader): Adjust.
14922         (build_type_psymtabs_reader): Adjust.
14923         (scan_partial_symbols): Adjust.
14924         (add_partial_symbol): Adjust.
14925         (add_partial_subprogram): Adjust.
14926         (peek_die_abbrev): Adjust.
14927         (fixup_go_packaging): Adjust.
14928         (process_imported_unit_die): Adjust.
14929         (dwarf2_compute_name): Adjust.
14930         (dwarf2_physname): Adjust.
14931         (read_import_statement): Adjust.
14932         (handle_DW_AT_stmt_list): Adjust.
14933         (read_file_scope): Adjust.
14934         (read_func_scope): Adjust.
14935         (read_lexical_block_scope): Adjust.
14936         (read_call_site_scope): Adjust.
14937         (read_variable): Adjust.
14938         (dwarf2_rnglists_process): Adjust.
14939         (dwarf2_ranges_process): Adjust.
14940         (dwarf2_ranges_read): Adjust.
14941         (dwarf2_get_pc_bounds): Adjust.
14942         (dwarf2_record_block_ranges): Adjust.
14943         (dwarf2_add_field): Adjust.
14944         (dwarf2_add_member_fn): Adjust.
14945         (read_structure_type): Adjust.
14946         (process_structure_scope): Adjust.
14947         (read_enumeration_type): Adjust.
14948         (read_array_type): Adjust.
14949         (mark_common_block_symbol_computed): Adjust.
14950         (read_common_block): Adjust.
14951         (read_namespace_type): Adjust.
14952         (read_namespace): Adjust.
14953         (read_module_type): Adjust.
14954         (read_tag_pointer_type): Adjust.
14955         (read_tag_ptr_to_member_type): Adjust.
14956         (read_tag_string_type): Adjust.
14957         (read_subroutine_type): Adjust.
14958         (read_typedef): Adjust.
14959         (read_base_type): Adjust.
14960         (attr_to_dynamic_prop): Adjust.
14961         (read_subrange_type): Adjust.
14962         (read_unspecified_type): Adjust.
14963         (dwarf2_read_abbrevs): Adjust.
14964         (load_partial_dies): Adjust.
14965         (read_partial_die): Adjust.
14966         (find_partial_die): Adjust.
14967         (guess_partial_die_structure_name): Adjust.
14968         (fixup_partial_die): Adjust.
14969         (read_attribute_value): Adjust.
14970         (read_addr_index): Adjust.
14971         (read_addr_index_from_leb128): Adjust.
14972         (read_str_index): Adjust.
14973         (dwarf2_string_attr): Adjust.
14974         (get_debug_line_section): Adjust.
14975         (dwarf_decode_line_header): Adjust.
14976         (lnp_state_machine::check_line_address): Adjust.
14977         (dwarf_decode_lines_1): Adjust.
14978         (dwarf_decode_lines): Adjust.
14979         (dwarf2_start_symtab): Adjust.
14980         (var_decode_location): Adjust.
14981         (new_symbol_full): Adjust.
14982         (dwarf2_const_value_data): Adjust.
14983         (dwarf2_const_value_attr): Adjust.
14984         (dwarf2_const_value): Adjust.
14985         (die_type): Adjust.
14986         (die_containing_type): Adjust.
14987         (build_error_marker_type): Adjust.
14988         (lookup_die_type): Adjust.
14989         (guess_full_die_structure_name): Adjust.
14990         (anonymous_struct_prefix): Adjust.
14991         (determine_prefix): Adjust.
14992         (dwarf2_name): Adjust.
14993         (follow_die_ref_or_sig): Adjust.
14994         (follow_die_offset): Adjust.
14995         (follow_die_ref): Adjust.
14996         (follow_die_sig_1): Adjust.
14997         (follow_die_sig): Adjust.
14998         (get_signatured_type): Adjust.
14999         (get_DW_AT_signature_type): Adjust.
15000         (decode_locdesc): Adjust.
15001         (dwarf_decode_macros): Adjust.
15002         (cu_debug_loc_section): Adjust.
15003         (fill_in_loclist_baton): Adjust.
15004         (dwarf2_symbol_mark_computed): Adjust.
15005         (init_one_comp_unit): Don't assign
15006         dwarf2_cu::dwarf2_per_objfile.
15007         (set_die_type): Adjust.
15008
15009 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15010
15011         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15012         <dwarf2_per_objfile>: New field.
15013         (dwarf2_per_objfile): Remove global.
15014         (get_dwarf2_per_objfile): New function.
15015         (set_dwarf2_per_objfile): New function.
15016         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15017         dwarf2_per_objfile.
15018         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15019         (read_abbrev_offset): Likewise.
15020         (read_indirect_string): Likewise.
15021         (read_indirect_line_string): Likewise.
15022         (read_indirect_string_at_offset): Likewise.
15023         (read_indirect_string_from_dwz): Likewise.
15024         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15025         dwarf2_per_objfile.
15026         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15027         (create_all_comp_units): Change objfile parameter to
15028         dwarf2_per_objfile.
15029         (create_all_type_units): Likewise.
15030         (process_queue): Add dwarf2_per_objfile parameter.
15031         (read_and_check_comp_unit_head): Likewise.
15032         (lookup_dwo_unit_in_dwp): Likewise.
15033         (get_dwp_file): Likewise.
15034         (process_cu_includes): Likewise.
15035         (struct free_dwo_file_cleanup_data): New struct.
15036         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15037         set_dwarf2_per_objfile.
15038         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15039         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15040         context, adjust calls.
15041         (dw2_instantiate_symtab): Likewise.
15042         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15043         (dw2_get_cu): Likewise.
15044         (create_cu_from_index_list): Change objfile parameter to
15045         dwarf2_per_objfile.
15046         (create_cus_from_index_list): Get dwarf2_per_objfile from
15047         context, adjust calls.
15048         (create_cus_from_index): Likewise.
15049         (create_signatured_type_table_from_index): Change objfile
15050         parameter to dwarf2_per_objfile.
15051         (create_signatured_type_table_from_debug_names): Change objfile
15052         parameter to dwarf2_per_objfile.
15053         (create_addrmap_from_index): Likewise.
15054         (create_addrmap_from_aranges): Likewise.
15055         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15056         (dw2_setup): Remove.
15057         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15058         context.
15059         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15060         get_dwarf2_per_objfile.
15061         (dw2_forget_cached_source_info): Likewise.
15062         (dw2_map_symtabs_matching_filename): Likewise.
15063         (struct dw2_symtab_iterator) <index>: Remove.
15064         <dwarf2_per_objfile>: New field.
15065         (dw2_symtab_iter_init): Replace index parameter with
15066         dwarf2_per_objfile.
15067         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15068         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15069         (dw2_print_stats): Likewise.
15070         (dw2_dump): Likewise.
15071         (dw2_expand_symtabs_for_function): Likewise.
15072         (dw2_expand_all_symtabs): Likewise.
15073         (dw2_expand_symtabs_with_fullname): Likewise.
15074         (dw2_expand_marked_cus): Replace index and objfile parameters
15075         with dwarf2_per_objfile.
15076         (dw_expand_symtabs_matching_file_matcher): Add
15077         dwarf2_per_objfile parameter and adjust calls.
15078         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15079         adjust calls.
15080         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15081         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15082         adjust calls.
15083         (create_cus_from_debug_names_list): Replace objfile parameter
15084         with dwarf2_per_objfile and adjust calls.
15085         (create_cus_from_debug_names): Likewise.
15086         (dwarf2_read_debug_names): Likewise.
15087         (mapped_debug_names::namei_to_name): Adjust call.
15088         (dw2_debug_names_iterator::next): Likewise.
15089         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15090         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15091         (dw2_debug_names_dump): Likewise.
15092         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15093         (dw2_debug_names_expand_symtabs_matching): Likewise.
15094         (dwarf2_initialize_objfile): Likewise.
15095         (dwarf2_build_psymtabs): Likewise.
15096         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15097         this_cu.
15098         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15099         (read_and_check_comp_unit_head): Likewise.
15100         (read_abbrev_offset): Likewise.
15101         (create_debug_type_hash_table): Likewise.
15102         (create_debug_types_hash_table): Likewise.
15103         (create_all_type_units): Replace objfile parameter with
15104         dwarf2_per_objfile.
15105         (add_type_unit): Add dwarf2_per_objfile parameter.
15106         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15107         with dwarf2_per_objfile.
15108         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15109         (lookup_dwp_signatured_type): Likewise.
15110         (lookup_signatured_type): Likewise.
15111         (read_cutu_die_from_dwo): Likewise.
15112         (init_tu_and_read_dwo_dies): Likewise.
15113         (init_cutu_and_read_dies): Likewise.
15114         (init_cutu_and_read_dies_no_follow): Likewise.
15115         (allocate_type_unit_groups_table): Add objfile parameter.
15116         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15117         (get_type_unit_group): Likewise.
15118         (process_psymtab_comp_unit): Update call.
15119         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15120         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15121         (print_tu_stats): Likewise.
15122         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15123         in void* parameter.
15124         (build_type_psymtabs): Change objfile parameter to
15125         dwarf2_per_objfile.
15126         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15127         passed in void* parameter.
15128         (process_skeletonless_type_units): Change objfile parameter to
15129         dwarf2_per_objfile.
15130         (set_partial_user): Likewise.
15131         (dwarf2_build_psymtabs_hard): Likewise.
15132         (read_comp_units_from_section): Likewise.
15133         (create_all_comp_units): Likewise.
15134         (scan_partial_symbols): Update calls.
15135         (add_partial_symbol): Likewise.
15136         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15137         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15138         (process_queue): Add dwarf2_per_objfile parameter.
15139         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15140         (compute_compunit_symtab_includes): Likewise.
15141         (process_cu_includes): Add dwarf2_per_objfile parameter.
15142         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15143         (process_full_type_unit): Likewise.
15144         (process_imported_unit_die): Update call.
15145         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15146         (read_file_scope): Likewise.
15147         (allocate_dwo_file_hash_table): Add objfile parameter.
15148         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15149         (create_cus_hash_table): Likewise.
15150         (create_dwp_hash_table): Likewise.
15151         (create_dwo_unit_in_dwp_v1): Likewise.
15152         (create_dwp_v2_section): Likewise.
15153         (create_dwo_unit_in_dwp_v2): Likewise.
15154         (lookup_dwo_unit_in_dwp): Likewise.
15155         (try_open_dwop_file): Likewise.
15156         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15157         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15158         cleanup to include a reference to dwarf2_per_objfile.
15159         (open_dwp_file): Add dwarf2_per_objfile parameter.
15160         (open_and_init_dwp_file): Likewise.
15161         (get_dwp_file): Likewise.
15162         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15163         (queue_and_load_all_dwo_tus): Update call.
15164         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15165         data.
15166         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15167         (dwarf2_ranges_process): Likewise.
15168         (dwarf2_get_pc_bounds): Likewise.
15169         (mark_common_block_symbol_computed): Likewise.
15170         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15171         (dwarf2_read_abbrevs): Update call.
15172         (read_partial_die): Use dwarf2_per_objfile from cu.
15173         (find_partial_die): Likewise.
15174         (fixup_partial_die): Likewise.
15175         (read_attribute_value): Likewise.
15176         (read_indirect_string_at_offset_from): Add objfile parameter.
15177         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15178         parameter.
15179         (read_indirect_string_from_dwz): Add objfile parameter.
15180         (read_indirect_string): Add objfile parameter.
15181         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15182         (read_addr_index): Use dwarf2_per_objfile from cu.
15183         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15184         call dw2_setup.
15185         (read_str_index): Use dwarf2_per_objfile from cu.
15186         (get_debug_line_section): Likewise.
15187         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15188         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15189         (new_symbol_full): Use dwarf2_per_objfile from cu.
15190         (build_error_marker_type): Likewise.
15191         (lookup_die_type): Likewise.
15192         (determine_prefix): Likewise.
15193         (follow_die_offset): Likewise.
15194         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15195         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15196         (dwarf2_fetch_die_type_sect_off): Likewise.
15197         (dwarf2_get_die_type): Likewise.
15198         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15199         (get_signatured_type): Likewise.
15200         (get_DW_AT_signature_type): Likewise.
15201         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15202         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15203         (cu_debug_loc_section): Likewise.
15204         (fill_in_loclist_baton): Likewise.
15205         (dwarf2_symbol_mark_computed): Likewise.
15206         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15207         dwarf2_per_objfile.
15208         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15209         parameter.
15210         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15211         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15212         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15213         (set_die_type): Use dwarf2_free_objfile from cu.
15214         (get_die_type_at_offset): Likewise.
15215         (dwarf2_per_objfile_free): Don't assign global variable.
15216         (debug_names) <constructor>: Add dwarf2_per_objfile
15217         parameter, update m_debugstrlookup construction.
15218         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15219         parameter.
15220         <m_dwarf2_per_objfile>: New field.
15221         <lookup>: Use m_dwarf2_per_objfile.
15222         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15223         (psyms_seen_size): Likewise.
15224         (write_gdbindex): Replace objfile parameter with
15225         dwarf2_per_objfile.
15226         (write_debug_names): Likewise.
15227         (write_psymtabs_to_index): Likewise.
15228         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15229         calls.
15230
15231 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15232
15233         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15234         <dwarf2_per_objfile>: New field.
15235         (struct dwarf2_per_cu_data) <objfile>: Remove.
15236         <dwarf2_per_objfile>: New field.
15237         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15238         of objfile.
15239         (create_signatured_type_table_from_index): Likewise.
15240         (create_debug_type_hash_table): Likewise.
15241         (fill_in_sig_entry_from_dwo_entry): Likewise.
15242         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15243         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15244         objfile.
15245         (create_partial_symtab): Access objfile through
15246         dwarf2_per_objfile.
15247         (process_psymtab_comp_unit_reader): Likewise.
15248         (read_comp_units_from_section): Likewise.
15249         (scan_partial_symbols): Likewise.
15250         (add_partial_symbol): Likewise.
15251         (add_partial_subprogram): Likewise.
15252         (peek_die_abbrev): Likewise.
15253         (fixup_go_packaging): Likewise.
15254         (process_full_comp_unit): Likewise.
15255         (process_full_type_unit): Likewise.
15256         (process_imported_unit_die): Likewise.
15257         (dwarf2_compute_name): Likewise.
15258         (dwarf2_physname): Likewise.
15259         (read_import_statement): Likewise.
15260         (create_cus_hash_table): Assign dwarf2_physname instead of
15261         objfile.
15262         (read_func_scope): Access objfile through dwarf2_per_objfile.
15263         (read_lexical_block_scope): Likewise.
15264         (read_call_site_scope): Likewise.
15265         (read_variable): Likewise.
15266         (dwarf2_rnglists_process): Likewise.
15267         (dwarf2_ranges_process): Likewise.
15268         (dwarf2_ranges_read): Likewise.
15269         (dwarf2_record_block_ranges): Likewise.
15270         (dwarf2_add_field): Likewise.
15271         (dwarf2_add_member_fn): Likewise.
15272         (read_structure_type): Likewise.
15273         (process_structure_scope): Likewise.
15274         (read_enumeration_type): Likewise.
15275         (read_array_type): Likewise.
15276         (read_common_block): Likewise.
15277         (read_namespace_type): Likewise.
15278         (read_namespace): Likewise.
15279         (read_module_type): Likewise.
15280         (read_tag_pointer_type): Likewise.
15281         (read_tag_ptr_to_member_type): Likewise.
15282         (read_tag_string_type): Likewise.
15283         (read_subroutine_type): Likewise.
15284         (read_typedef): Likewise.
15285         (read_base_type): Likewise.
15286         (attr_to_dynamic_prop): Likewise.
15287         (read_subrange_type): Likewise.
15288         (read_unspecified_type): Likewise.
15289         (load_partial_dies): Likewise.
15290         (read_partial_die): Likewise.
15291         (find_partial_die): Likewise.
15292         (guess_partial_die_structure_name): Likewise.
15293         (fixup_partial_die): Likewise.
15294         (read_attribute_value): Likewise.
15295         (read_addr_index_from_leb128): Likewise.
15296         (dwarf2_read_addr_index): Likewise.
15297         (dwarf2_string_attr): Likewise.
15298         (lnp_state_machine::check_line_address): Likewise.
15299         (dwarf_decode_lines_1): Likewise.
15300         (dwarf_decode_lines): Likewise.
15301         (dwarf2_start_symtab): Likewise.
15302         (var_decode_location): Likewise.
15303         (new_symbol_full): Likewise.
15304         (dwarf2_const_value_data): Likewise.
15305         (dwarf2_const_value_attr): Likewise.
15306         (dwarf2_const_value): Likewise.
15307         (die_type): Likewise.
15308         (die_containing_type): Likewise.
15309         (lookup_die_type): Likewise.
15310         (guess_full_die_structure_name): Likewise.
15311         (anonymous_struct_prefix): Likewise.
15312         (dwarf2_name): Likewise.
15313         (follow_die_ref_or_sig): Likewise.
15314         (follow_die_offset): Likewise.
15315         (follow_die_ref): Likewise.
15316         (dwarf2_fetch_die_loc_sect_off): Likewise.
15317         (dwarf2_fetch_constant_bytes): Likewise.
15318         (dwarf2_fetch_die_type_sect_off): Likewise.
15319         (dwarf2_get_die_type): Likewise.
15320         (follow_die_sig): Likewise.
15321         (decode_locdesc): Likewise.
15322         (dwarf2_per_cu_objfile): Likewise.
15323         (dwarf2_per_cu_text_offset): Likewise.
15324         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15325         objfile.
15326         (set_die_type): Access objfile through
15327         dwarf2_per_objfile.
15328
15329 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15330
15331         * valprint.c (converted_character_d): Remove typedef.
15332         (DEF_VEC_O (converted_character_d)): Remove.
15333         (count_next_character): Use std::vector.
15334         (print_converted_chars_to_obstack): Likewise.
15335         (generic_printstr): Likewise.
15336
15337 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15338
15339         * xml-support.h (struct gdb_xml_value): Add constructor.
15340         <value>: Change type to unique_xmalloc_ptr.
15341         (gdb_xml_value_s): Remove typedef.
15342         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15343         (gdb_xml_element_start_handler): Change parameter type to
15344         std::vector.
15345         (xml_find_attribute): Likewise.
15346         * xml-support.c (xml_find_attribute): Change parameter type to
15347         std::vector and adjust.
15348         (gdb_xml_values_cleanup): Remove.
15349         (gdb_xml_parser::start_element): Adjust to std::vector.
15350         (xinclude_start_include): Change paraeter type to std::vector
15351         and adjust.
15352         * btrace.c (check_xml_btrace_version): Likewise.
15353         (parse_xml_btrace_block): Likewise.
15354         (parse_xml_btrace_pt_config_cpu): Likewise.
15355         (parse_xml_btrace_pt): Likewise.
15356         (parse_xml_btrace_conf_bts): Likewise.
15357         (parse_xml_btrace_conf_pt): Likewise.
15358         * memory-map.c (memory_map_start_memory): Likewise.
15359         (memory_map_start_property): Likewise.
15360         * osdata.c (osdata_start_osdata): Likewise.
15361         (osdata_start_item): Likewise.
15362         (osdata_start_column): Likewise.
15363         * remote.c (start_thread): Likewise.
15364         * solib-aix.c (library_list_start_library): Likewise.
15365         (library_list_start_list): Likewise.
15366         * solib-svr4.c (library_list_start_library): Likewise.
15367         (svr4_library_list_start_list): Likewise.
15368         * solib-target.c (library_list_start_segment): Likewise.
15369         (library_list_start_section): Likewise.
15370         (library_list_start_library): Likewise.
15371         (library_list_start_list): Likewise.
15372         * tracepoint.c (traceframe_info_start_memory): Likewise.
15373         (traceframe_info_start_tvar): Likewise.
15374         * xml-syscall.c (syscall_start_syscall): Likewise.
15375         * xml-tdesc.c (tdesc_start_target): Likewise.
15376         (tdesc_start_feature): Likewise.
15377         (tdesc_start_reg): Likewise.
15378         (tdesc_start_union): Likewise.
15379         (tdesc_start_struct): Likewise.
15380         (tdesc_start_flags): Likewise.
15381         (tdesc_start_enum): Likewise.
15382         (tdesc_start_field): Likewise.
15383         (tdesc_start_enum_value): Likewise.
15384         (tdesc_start_vector): Likewise.
15385
15386 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15387
15388         * extension.h (struct xmethod_worker) <clone>: Remove.
15389         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15390         Remove.
15391         (python_xmethod_worker::clone): Remove.
15392         * valops.c (find_overload_match): Use std::move instead of
15393         clone.
15394
15395 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15396
15397         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15398         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15399         <free_xmethod_worker_data>: Remove.
15400         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15401         <get_xmethod_arg_types>: Remove.
15402         <get_xmethod_result_type>: Remove.
15403         <invoke_xmethod>: Remove.
15404         * extension.c (new_xmethod_worker): Remove.
15405         (clone_xmethod_worker): Remove.
15406         (get_matching_xmethod_workers): Return void, pass std::vector by
15407         pointer.
15408         (get_xmethod_arg_types): Rename to...
15409         (xmethod_worker::get_arg_types): ... this, and adjust.
15410         (get_xmethod_result_type): Rename to...
15411         (xmethod_worker::get_result_type): ... this, and adjust.
15412         (invoke_xmethod): Remove.
15413         (free_xmethod_worker): Remove.
15414         (free_xmethod_worker_vec): Remove.
15415         * extension.h (enum ext_lang_rc): Move here from
15416         extension-priv.h.
15417         (struct xmethod_worker): Add constructor and destructor.
15418         <data>: Remove.
15419         <value>: Remove.
15420         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15421         virtual pure methods.
15422         <get_arg_types, get_result_type>: New methods.
15423         (xmethod_worker_ptr): Remove typedef.
15424         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15425         (xmethod_worker_vec): Remove typedef.
15426         (xmethod_worker_up): New typedef.
15427         (invoke_xmethod): Remove.
15428         (clone_xmethod_worker): Remove.
15429         (free_xmethod_worker): Remove.
15430         (free_xmethod_worker_vec): Remove.
15431         (get_xmethod_arg_types): Remove.
15432         (get_xmethod_result_type): Remove.
15433         * valops.c (find_method_list): Use std::vector, don't use
15434         intermediate vector.
15435         (value_find_oload_method_list): Use std::vector.
15436         (find_overload_match): Use std::vector.
15437         (find_oload_champ): Use std::vector.
15438         * value.c (value_free): Use operator delete.
15439         (value_of_xmethod): Rename to...
15440         (value_from_xmethod): ... this.  Don't assign
15441         xmethod_worker::value, take rvalue-reference.
15442         (result_type_of_xmethod): Adjust.
15443         (call_xmethod): Adjust.
15444         * value.h: Include extension.h.
15445         (struct xmethod_worker): Don't forward-declare.
15446         (value_of_xmethod): Rename to...
15447         (value_from_xmethod): ... this, take rvalue-reference.
15448         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15449         (struct python_xmethod_worker): ... this, add constructor and
15450         destructor.
15451         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15452         (gdbpy_free_xmethod_worker_data): Rename to...
15453         (python_xmethod_worker::~python_xmethod_worker): ... this and
15454         adjust.
15455         (gdbpy_clone_xmethod_worker_data): Rename to...
15456         (python_xmethod_worker::clone): ... this and adjust.
15457         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15458         temporary vector.
15459         (gdbpy_get_xmethod_arg_types): Rename to...
15460         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15461         (gdbpy_get_xmethod_result_type): Rename to...
15462         (python_xmethod_worker::do_get_result_type): ... this and
15463         adjust.
15464         (gdbpy_invoke_xmethod): Rename to...
15465         (python_xmethod_worker::invoke): ... this and adjust.
15466         (new_python_xmethod_worker): Rename to...
15467         (python_xmethod_worker::python_xmethod_worker): ... this and
15468         adjust.
15469         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15470         Remove.
15471         (gdbpy_free_xmethod_worker_data): Remove.
15472         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15473         (gdbpy_get_xmethod_arg_types): Remove.
15474         (gdbpy_get_xmethod_result_type): Remove.
15475         (gdbpy_invoke_xmethod): Remove.
15476         * python/python.c (python_extension_ops): Remove obsolete
15477         callbacks.
15478
15479 2018-01-05  Pedro Alves  <palves@redhat.com>
15480
15481         PR gdb/18653
15482         * common/signals-state-save-restore.c
15483         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15484         find a custom handler preinstalled, instead of internal erroring.
15485         But only warn if !quiet.
15486         * common/signals-state-save-restore.h
15487         (save_original_signals_state): New parameter 'quiet'.
15488         * main.c (captured_main_1): Move save_original_signals_state call
15489         after option handling, and pass QUIET.
15490
15491 2018-01-05  Pedro Alves  <palves@redhat.com>
15492
15493         * spu-tdep.c (spu_catch_start): Pass
15494         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15495
15496 2018-01-05  Pedro Alves  <palves@redhat.com>
15497
15498         PR gdb/22670
15499         * ada-lang.c (literal_symbol_name_matcher): New function.
15500         (ada_get_symbol_name_matcher): Use it for
15501         symbol_name_match_type::SEARCH_NAME.
15502         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15503         it down instead of assuming symbol_name_match_type::FULL.
15504         * block.h (block_lookup_symbol): New parameter 'match_type'.
15505         * c-valprint.c (print_unpacked_pointer): Use
15506         lookup_symbol_search_name instead of lookup_symbol.
15507         * compile/compile-object-load.c (get_out_value_type): Pass down
15508         symbol_name_match_type::SEARCH_NAME.
15509         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15510         symbol_name_match_type::FULL.
15511         * cp-support.c (cp_get_symbol_name_matcher): Handle
15512         symbol_name_match_type::SEARCH_NAME.
15513         * infrun.c (insert_exception_resume_breakpoint): Use
15514         lookup_symbol_search_name.
15515         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15516         * psymtab.c (maintenance_check_psymtabs): Use
15517         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15518         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15519         SYMBOL_SEARCH_NAME.
15520         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15521         if symbol_name_match_type::SEARCH_NAME.
15522         (lookup_symbol_in_language): Pass down
15523         symbol_name_match_type::FULL.
15524         (lookup_symbol_search_name): New.
15525         (lookup_language_this): Pass down
15526         symbol_name_match_type::SEARCH_NAME.
15527         (lookup_symbol_aux, lookup_local_symbol): New parameter
15528         'match_type'.  Pass it down.
15529         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15530         (lookup_symbol_search_name): New declaration.
15531         (lookup_symbol_in_block): New 'match_type' parameter.
15532
15533 2018-01-05  Pedro Alves  <palves@redhat.com>
15534
15535         PR gdb/22670
15536         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15537         ada_lookup_symbol.
15538         (ada_lookup_symbol): Reimplement in terms of
15539         ada_lookup_symbol_list, bits factored out from
15540         ada_lookup_encoded_symbol.
15541
15542 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15543
15544         * ada-exp.y (write_object_renaming): When subscripting an array
15545         using a symbol as the index, pass the block in call to
15546         ada_lookup_encoded_symbol when looking that symbol up.
15547
15548 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15549
15550         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15551         TYPE_INDEX_TYPE.
15552
15553 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15554
15555         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15556         the case where VALUE_LVAL (val0) is not lval_memory.
15557
15558 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15559
15560         * ada-valprint.c (print_optional_low_bound): Handle
15561         character-indexed array printing like boolean-indexed array
15562         printing.
15563
15564 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15565
15566         * NEWS: Create a new section for the next release branch.
15567         Rename the section of the current branch, now that it has
15568         been cut.
15569
15570 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15571
15572         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15573         * version.in: Bump version to 8.1.50.DATE-git.
15574
15575 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15576
15577         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15578         Add field.
15579         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15580         Add field.
15581         (default_exception_support_info) <catch_handlers_sym>: Add field.
15582         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15583         (ada_exception_name_addr_1): Add "catch handlers" handling.
15584         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15585         Update all callers.
15586         (create_excep_cond_exprs) <ex>: Add parameter.
15587         (re_set_exception): Update create_excep_cond_exprs call.
15588         (print_it_exception, print_one_exception, print_mention_exception)
15589         (print_recreate_exception): Add "catch handler" handling.
15590         (allocate_location_catch_handlers, re_set_catch_handlers)
15591         (check_status_catch_handlers, print_it_catch_handlers)
15592         (print_one_catch_handlers, print_mention_catch_handlers)
15593         (print_recreate_catch_handlers): New function.
15594         (catch_handlers_breakpoint_ops): New variable.
15595         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15596         Add parameter.  Add "catch handler" handling.
15597         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15598         Add "catch handler" handling.
15599         (ada_exception_catchpoint_cond_string): Add "catch handler"
15600         handling.
15601         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15602         call.
15603         (catch_ada_handlers_command): New function.
15604         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15605         operations structure.
15606         (_initialize_ada_language): Add "catch handlers" command entry.
15607         * NEWS: Document "catch handlers" feature.
15608
15609 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15610
15611         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15612         account when creating the array type of the slice.
15613         (ada_value_slice): Likewise.
15614
15615 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15616
15617         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15618         New enum value.
15619         (create_array_type_with_stride): Add byte_stride_prop parameter.
15620         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15621         New parameter.  Update all callers in this file.
15622         (array_type_has_dynamic_stride): New function.
15623         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15624         of arrays with dynamic byte strides.
15625         * dwarf2read.c (read_array_type): Add support for dynamic
15626         DW_AT_byte_stride attributes.
15627
15628 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15629
15630         * dwarf2read.c (read_unspecified_type): Treat
15631         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15632
15633 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15634
15635         Update copyright year range in all GDB files.
15636
15637 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15638
15639         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15640         and gdb/testsuite/gdb.base/step-line.c.
15641
15642 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15643
15644         * copyright.py (main): Dump the contents of
15645         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15646         even if BY_HAND is empty.
15647
15648 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15649
15650         * top.c (print_gdb_version): Update Copyright year in version
15651         message.
15652
15653 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15654
15655         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15656
15657 For older changes see ChangeLog-2017.
15658 \f
15659 Local Variables:
15660 mode: change-log
15661 left-margin: 8
15662 fill-column: 74
15663 version-control: never
15664 coding: utf-8
15665 End: