GDB: S12Z: Add assertion
[external/binutils.git] / gdb / ChangeLog
1 2018-11-19  John Darrington <john@darrington.wattle.id.au>
2
3         *s12z-tdep.c (s12z_frame_cache): Add an assertion.
4
5 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
6
7         * infrun.c (displaced_step_inferior_state) <next>: Remove.
8
9 2018-11-19  Tom Tromey  <tom@tromey.com>
10
11         * source.c (get_filename_and_charpos): Return void.
12
13 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
14
15         * skip.c (_initialize_step_skip): Fix "info skip" help.
16
17 2018-11-16  Tom Tromey  <tom@tromey.com>
18
19         PR rust/23625:
20         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
21
22 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
23
24         * infrun.c (displaced_step_inferior_states): Change type to
25         std::forward_list.
26         (get_displaced_stepping_state): Adjust.
27         (displaced_step_in_progress_any_inferior): Adjust.
28         (add_displaced_stepping_state): Adjust.
29         (remove_displaced_stepping_state): Adjust.
30
31 2018-11-18  Tom Tromey  <tom@tromey.com>
32
33         PR build/23814:
34         * target-delegates.c: Rebuild.
35         * ia64-linux-nat.c (class ia64_linux_nat_target)
36         <have_steppable_watchpoint>: Use override.  Return true, not 1.
37         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
38         "self" argument.
39         (ia64_linux_nat_target::low_new_thread): Rename.
40         (class ia64_linux_nat_target) <read_description>: Don't declare.
41         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
42         bool.
43
44 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
45
46         PR gdb/22736:
47         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
48         lang_struct_return code.
49
50 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
51
52         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
53         return_method.
54         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
55         * amd64-tdep.c (amd64_push_arguments): Likewise.
56         (amd64_push_dummy_call): Likewise.
57         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
58         * arc-tdep.c (arc_push_dummy_call): Likewise.
59         * arm-tdep.c (arm_push_dummy_call): Likewise.
60         * avr-tdep.c (avr_push_dummy_call): Likewise.
61         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
62         * cris-tdep.c (cris_push_dummy_call): Likewise.
63         * csky-tdep.c (csky_push_dummy_call): Likewise.
64         * frv-tdep.c (frv_push_dummy_call): Likewise.
65         * gdbarch.c: Regenerate.
66         * gdbarch.h: Regenerate.
67         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
68         return_method.
69         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
70         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
71         (hppa64_push_dummy_call): Likewise.
72         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
73         * i386-tdep.c (i386_push_dummy_call): Likewise.
74         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
75         * infcall.c (call_function_by_hand_dummy): Likewise.
76         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
77         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
78         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
79         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
80         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
81         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
82         * mep-tdep.c (mep_push_dummy_call): Likewise.
83         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
84         (mips_n32n64_push_dummy_call): Likewise.
85         (mips_o32_push_dummy_call): Likewise.
86         (mips_o64_push_dummy_call): Likewise.
87         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
88         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
89         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
90         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
91         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
92         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
93         (ppc64_sysv_abi_push_dummy_call): Likewise.
94         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
95         (ppc64_sysv_abi_push_dummy_call): Likewise.
96         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
97         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
98         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
99         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
100         * rx-tdep.c (rx_push_dummy_call): Likewise.
101         * s390-tdep.c (s390_push_dummy_call): Likewise.
102         * score-tdep.c (score_push_dummy_call): Likewise.
103         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
104         (sh_push_dummy_call_nofpu): Likewise.
105         * sparc-tdep.c (sparc32_store_arguments): Likewise.
106         (sparc32_push_dummy_call): Likewise.
107         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
108         (sparc64_push_dummy_call): Likewise.
109         * spu-tdep.c (spu_push_dummy_call): Likewise.
110         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
111         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
112         * v850-tdep.c (v850_push_dummy_call): Likewise.
113         * vax-tdep.c (vax_push_dummy_call): Likewise.
114         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
115         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
116
117 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
118
119         * gdbarch.sh (enum function_call_return_method): Add enum.
120         * gdbarch.h: Regenerate.
121         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
122
123 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
124
125         * unittests/copy_bitwise-selftests.c: New file.
126         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
127         (selftests::copy_bitwise_tests): Delete, moving this code to
128         unittests/copy_bitwise-selftests.c instead.
129         (_initialize_utils): Do not register copy_bitwise tests.
130         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
131         unittests/copy_bitwise-selftests.c.
132
133 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
134
135         * ada-lang.c (move_bits): Delete. Update all callers to use
136         copy_bitwise instead.
137         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
138         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
139         Move from here to utils.c.
140         (_initialize_dwarf2loc): Remove call to register copy_bitwise
141         selftests.
142         * utils.h (copy_bitwise): Add declaration.
143         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
144         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
145         Moved here from dwarf2loc.c.
146         (_initialize_utils): Register copy_bitwise selftests.
147
148 2018-11-14  Jim Wilson  <jimw@sifive.com>
149
150         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
151         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
152         then increment next_regnum if odd.
153         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
154         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
155         function type.  Pass new arg to riscv_arg_location based on function
156         type.
157         (riscv_return_value): Pass new arg to riscv_arg_location.
158
159         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
160         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
161         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
162
163         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
164         setting len.  New local align, set to max of arg align and xlen,
165         and pass to first riscv_assign_stack_location call.
166
167 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
168
169         * skip.c (complete_skip_number): New function.
170         (_initialize_step_skip): Add completers to some skip commands.
171
172 2018-11-09  Tom Tromey  <tom@tromey.com>
173
174         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
175         (struct remote_g_packet_data): Derive from allocate_on_obstack.
176         <guesses>: Now a std::vector.
177         (remote_g_packet_data_init, register_remote_g_packet_guess):
178         Update.
179         (remote_read_description_p): Update.  Return bool.
180         (remote_target::read_description): Update.
181         (struct remote_g_packet_guess): Add constructor.
182
183 2018-11-09  Tom Tromey  <tom@tromey.com>
184
185         * common/scoped_fd.h (class scoped_fd): Add move constructor and
186         move assignment operator.
187         * psymtab.c (psymtab_to_fullname): Update.
188         * source.h (open_source_file): Return scoped_fd.
189         (find_and_open_source): Likewise.
190         * source.c (open_source_file): Return scoped_fd.
191         (get_filename_and_charpos): Update.
192         (print_source_lines_base): Update.  Use scoped_fd::to_file.
193         (forward_search_command): Likewise.
194         (reverse_search_command): Likewise.
195         (find_and_open_source): Return scoped_fd.
196         * tui/tui-source.c (tui_set_source_content): Update.  Use
197         gdb_file_up.
198
199 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
200
201         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
202         overflow.
203
204 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
205
206         * configure: Regenerate.
207
208 2018-11-09  Tom de Vries  <tdevries@suse.de>
209
210         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
211         unconditionally, to set the language of the symbol.  Manage freeing
212         returned pointer using gdb::unique_xmalloc_ptr.
213
214 2018-11-08  Tom Tromey  <tom@tromey.com>
215
216         * record.c (require_record_target): Upper-case "<TAB>".
217
218 2018-11-08  Tom Tromey  <tom@tromey.com>
219
220         * python/lib/gdb/command/pretty_printers.py
221         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
222
223 2018-11-08  Tom Tromey  <tom@tromey.com>
224
225         PR gdb/23555:
226         PR gdb/23838:
227         * target.h (target_supports_terminal_ours): Return bool.
228         * target.c (target_supports_terminal_ours): Handle case where
229         current_top_target returns nullptr.  Return bool.
230
231 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
232
233         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
234         return the correct count for potential HFAs.
235
236 2018-11-08  Jan Beulich  <jbeulich@suse.com>
237
238         * i387-tdep.c (i387_supply_xsave): Split handling of
239         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
240         (i387_collect_xsave): Likewise.
241
242 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
243
244         * riscv-tdep.c (riscv_insn::decode): Update header comment.
245         (riscv_frame_this_id): Catch errors thrown while building the
246         frame cache, leave the frame id as the default, which is the outer
247         frame id.
248
249 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
250
251         * ada-lang.c (read_atcb): Only set task_info->called_task if
252         task_info->state == Entry_Caller_Sleep.
253         (print_ada_task_info): Do not check task_info->state before
254         checking task_info->called_task.
255         (info_task): Likewise.
256
257 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
258
259         * ada-tasks.c (read_atcb): Clear task_info before computing
260         the value of each of its fields.
261
262 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
263
264         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
265         NULL before dereferencing it.
266
267 2018-11-06  Tom de Vries  <tdevries@suse.de>
268
269         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
270         program headers.
271
272 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
273
274         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
275         so that it applies to uclinux as well.
276
277 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
278
279         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
280         when on AAPCS.
281
282 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
283
284         * riscv-fbsd-nat.c (getregs_supplies): Return true for
285         RISCV_CSR_SSTATUS_REGNUM.
286
287 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
288
289         * source.c (open_source_file): Fix leak by transferring the
290         current s->fullname to the unique_xmalloc_ptr fullname given
291         to find_and_open_source.
292
293 2018-11-04  Tom Tromey  <tom@tromey.com>
294
295         * varobj.c (install_default_visualizer): Update.
296         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
297         Return gdbpy_ref.
298         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
299         (find_pretty_printer_from_progspace)
300         (find_pretty_printer_from_gdb, find_pretty_printer)
301         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
302         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
303         Update.
304
305 2018-11-04  Tom Tromey  <tom@tromey.com>
306
307         * python/python.c (gdbpy_parameter_value): Update.
308         * python/python-internal.h (python_string_to_unicode)
309         (python_string_to_target_python_string)
310         (host_string_to_python_string): Return gdbpy_ref.
311         * python/py-utils.c (python_string_to_unicode)
312         (unicode_to_encoded_python_string)
313         (unicode_to_target_python_string)
314         (python_string_to_target_string)
315         (python_string_to_target_python_string): Return gdbpy_ref.
316         (python_string_to_host_string): Update.
317         (host_string_to_python_string): Return gdbpy_ref.
318         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
319         (stpy_fullname): Update.
320         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
321         Update.
322         * python/py-prettyprint.c (print_string_repr): Update.
323         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
324         (objfpy_get_build_id): Update.
325         * python/py-breakpoint.c (bppy_get_location)
326         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
327         Update.
328
329 2018-11-04  Tom Tromey  <tom@tromey.com>
330
331         * python/python-internal.h (gdb_py_object_from_longest)
332         (gdb_py_object_from_ulongest): Return gdbpy_ref.
333         * python/py-value.c (valpy_int): Update.
334         * python/py-utils.c (gdb_py_object_from_longest): Return
335         gdbpy_ref.
336         (gdb_py_object_from_ulongest): Likewise.
337         * python/py-type.c (typy_get_alignof): Update.
338         * python/py-linetable.c (ltpy_get_all_source_lines)
339         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
340         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
341
342 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
343
344         * ada-lang.c (_initialize_ada_language): Fix typo.
345
346 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
347
348         * language.c (type): Remove.
349         (_initialize_language): Remove assignment to type.
350
351 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
352
353         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
354         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
355         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
356         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
357         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
358         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
359         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
360         and aarch64-ravenscar-thread.o.
361         * NEWS: Add entry documenting Ravenscar tasking support
362         on AArch64 ELF.
363
364 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
365
366         * symtab.c (info_functions_command): Initialize quiet flag.
367         * stack.c (info_args_command): Likewise.
368
369 2018-11-01  Jim Wilson  <jimw@sifive.com>
370
371         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
372         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
373         debugging messages.
374
375 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
376
377         * ada-lang.c (ada_watch_location_expression): New function.
378         (ada_language_defn): Set la_watch_location_expression to
379         ada_watch_location_expression.
380
381 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
382
383         * print-utils.c (int_string): Remove unnecessary trailing spaces.
384
385 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
386
387         * rs6000-tdep.c (skip_prologue): Fix potential negative left
388         shifting.
389
390 2018-11-01  Jerome Guitton  <guitton@adacore.com>
391             Joel Brobecker  <brobecker@adacore.com>
392
393         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
394         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
395         * arm-pikeos-tdep.c: New file.
396         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
397         embedded system.
398         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
399
400 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
401
402         * common/pathstuff.c (get_standard_temp_dir): New.
403         * common/pathstuff.h (get_standard_temp_dir): New.
404         * config.in: Re-generate.
405         * configure: Re-generate.
406         * configure.ac: Don't check for mkdtemp.
407         * gnulib/aclocal-m4-deps.mk: Re-generate.
408         * gnulib/aclocal.m4: Re-generate.
409         * gnulib/config.in: Re-generate.
410         * gnulib/configure: Re-generate.
411         * gnulib/import/Makefile.am: Re-generate.
412         * gnulib/import/Makefile.in: Re-generate.
413         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
414         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
415         * gnulib/import/m4/mkdtemp.m4: New file.
416         * gnulib/import/mkdtemp.c: New file.
417         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
418         Add mkdtemp module.
419         * unittests/mkdir-recursive-selftests.c (test): Use
420         get_standard_temp_dir.
421         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
422         ifdef.
423         * compile/compile.c (get_compile_file_tempdir): Likewise.
424
425 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
426
427         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
428         (SIG_FRAME_LR_OFFSET64): New define.
429         (SIG_FRAME_FP_OFFSET64): New define.
430         (aix_sighandle_frame_cache): New Function.
431         (aix_sighandle_frame_this_id): New Function.
432         (aix_sighandle_frame_prev_register): New Function.
433         (aix_sighandle_frame_sniffer): New Function.
434         (aix_sighandle_frame_unwind): New global variable.
435         (rs6000_aix_init_osabi): Install new frame unwinder.
436
437 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
438
439         PR gdb/23835
440         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
441         already defined.
442
443 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
444
445         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
446
447 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
448
449         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
450         (producer_is_icc): New function.
451         (check_producer): Set producer_is_icc field on dwarf2_cu.
452         (dwarf2_init_integer_type): New function.
453         (read_base_type): Call dwarf2_init_integer_type instead of
454         init_integer_type in all cases.
455         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
456         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
457         LEN is greater than 0.
458
459 2018-10-30  Tom Tromey  <tom@tromey.com>
460
461         * main.c (captured_main_1): Check return value of bfd_init.
462
463 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
464
465         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
466         Adjust comments.
467
468 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
469
470         * procfs.c: Include common/pathstuff.h.
471
472 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
473
474         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
475         Add missing braces.  No functional change.
476
477 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
478
479         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
480         to report a bad option and fix indentation.
481         * demangle.c (demangle_command): Use report_unrecognized_option_error
482         to report a bad option and correctly report the bad option.
483
484 2018-10-27  Tom Tromey  <tom@tromey.com>
485
486         PR cli/23364:
487         * darwin-nat.c (copied_shell): New global.
488         (may_have_sip): Rename from should_disable_startup_with_shell.
489         (copy_shell_to_cache, maybe_cache_shell): New functions.
490         (darwin_nat_target::create_inferior): Update.  Use
491         copied_shell.
492
493 2018-10-27  Tom Tromey  <tom@tromey.com>
494
495         * unittests/scoped_fd-selftests.c (test_to_file): New function.
496         (run_tests): Call test_to_file.
497         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
498         temporary files.
499         * common/scoped_fd.h (scoped_fd::to_file): New method.
500
501 2018-10-27  Tom Tromey  <tom@tromey.com>
502
503         * unittests/scoped_mmap-selftests.c (test_normal): Use
504         gdb_mkostemp_cloexec.
505         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
506         Use gdb_mkostemp_cloexec.
507         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
508         gnulib/config.in, gnulib/configure,
509         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
510         gnulib/import/m4/gnulib-cache.m4,
511         gnulib/import/m4/gnulib-comp.m4: Update.
512         * gnulib/import/m4/mkostemp.m4: New file.
513         * gnulib/import/m4/mkstemp.m4: Remove.
514         * gnulib/import/mkostemp.c: New file.
515         * gnulib/import/mkstemp.m4: Remove.
516         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
517         mkstemp, add mkostemp.  Apply new patch.
518         * gnulib/import/stdlib.in.h: Apply patch.
519         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
520         New file.
521         * dwarf-index-write.c (write_psymtabs_to_index): Use
522         gdb_mkostemp_cloexec.
523         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
524
525 2018-10-27  Tom Tromey  <tom@tromey.com>
526
527         * unittests/mkdir-recursive-selftests.c: New file.
528         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
529         unittests/mkdir-recursive-selftests.c.
530         * dwarf-index-cache.c (mkdir_recursive): Move to
531         common/filestuff.c.
532         (index_cache::store): Check return value of mkdir_recursive.
533         (create_dir_and_check, test_mkdir_recursive): Move to new file.
534         (_initialize_index_cache): Don't register test.
535         * common/filestuff.h (mkdir_recursive): Declare.
536         * common/filestuff.c (mkdir_recursive): Move from
537         dwarf-index-cache.c.  Return bool.
538
539 2018-10-27  Tom Tromey  <tom@tromey.com>
540
541         * dwarf-index-write.c (write_psymtabs_to_index): Move
542         make_temp_filename to common/pathstuff.c.
543         * common/pathstuff.h (make_temp_filename): Declare.
544         * common/pathstuff.c (make_temp_filename): New function, moved
545         from dwarf-index-write.c.
546
547 2018-10-27  Tom Tromey  <tom@tromey.com>
548
549         * procfs.c (procfs_target::create_inferior): Use get_shell.
550         * cli/cli-cmds.c (shell_escape): Use get_shell.
551         * windows-nat.c (windows_nat_target::create_inferior): Use
552         get_shell.
553         * common/pathstuff.c (get_shell): New function.
554         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
555         (fork_inferior): Use get_shell.
556         * common/pathstuff.h (get_shell): Declare.
557
558 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
559
560         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
561
562 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
563
564         * stack.c (print_variable_and_value_data): Add preg and treg.
565         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
566         and update callers.
567         (print_frame_arg_vars): Likewise.
568         (prepare_reg): New function.
569         (info_locals_command): Extract info print args and use them.
570         (info_args_command): Likewise.
571         (_initialize_stack): Modify on-line help.
572         * symtab.c (treg_matches_sym_type_name): New function.
573         (search_symbols): New arg t_regexp.
574         (symtab_symbol_info): New args quiet, regexp, t_regexp.
575         (info_variables_command): Extract info print args and use them.
576         (info_functions_command): Likewise.
577         (info_types_command): Update call to symtab_symbol_info.
578         (_initialize_symtab): Modify on-line help.
579         * symtab.h (treg_matches_sym_type_name): New function.
580         (search_symbols): New t_regexp arg.
581
582 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
583
584         * cli-utils.c (extract_arg_maybe_quoted): New function.
585         (extract_info_print_args): New function.
586         (info_print_args_help): New function.
587         (report_unrecognized_option_error): New function.
588         * cli-utils.h (extract_arg_maybe_quoted): New function.
589         (extract_info_print_args): New function.
590         (info_print_args_help): New function.
591         (report_unrecognized_option_error): New function.
592
593 2018-10-26  Tom Tromey  <tom@tromey.com>
594
595         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
596         (compute_compunit_symtab_includes): Update.
597         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
598         (compunit_symtab_ptr): Likewise.
599
600 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
601
602         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
603         default_print_auxv_entry for specific tag values.
604
605 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
606
607         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
608
609 2018-10-26  Jim Wilson  <jimw@sifive.com>
610
611         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
612         (riscv_linux_sigframe_init): Declare.
613         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
614         (riscv_linux_sigframe): New.
615         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
616         (riscv_linux_sigframe_init): Define.
617         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
618
619         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
620         (riscv_isa_flen): Likewise.  Drop static.
621         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
622         (riscv_isa_flen): Likewise.  Declare.
623
624 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
625             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
626
627         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
628         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
629         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
630         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
631         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
632         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
633         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
634         Define.
635         (struct ppc_linux_features) <htm>: New field.
636         (ppc_linux_no_features): Add initializer for htm field.
637         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
638         new tdescs.
639         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
640         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
641         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
642         Define if not already defined.
643         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
644         and rs6000/powerpc-isa207-htm-vsx64l.
645         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
646         rs6000/powerpc-isa207-htm-vsx64l.xml.
647         * features/rs6000/power-htm-spr.xml: New file.
648         * features/rs6000/power-htm-core.xml: New file.
649         * features/rs6000/power64-htm-core.xml: New file.
650         * features/rs6000/power-htm-fpu.xml: New file.
651         * features/rs6000/power-htm-altivec.xml: New file.
652         * features/rs6000/power-htm-vsx.xml: New file.
653         * features/rs6000/power-htm-ppr.xml: New file.
654         * features/rs6000/power-htm-dscr.xml: New file.
655         * features/rs6000/power-htm-tar.xml: New file.
656         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
657         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
658         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
659         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
660         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
661         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
662         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
663         fetch_regset with HTM regsets.
664         (store_register, store_ppc_registers): Call store_regset with HTM
665         regsets.
666         (ppc_linux_nat_target::read_description): Set htm field in the
667         features struct if needed.
668         * ppc-linux-tdep.c: Include
669         features/rs6000/powerpc-isa207-htm-vsx32l.c and
670         features/rs6000/powerpc-isa207-htm-vsx64l.c.
671         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
672         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
673         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
674         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
675         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
676         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
677         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
678         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
679         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
680         (ppc32_linux_ctarregset): New globals.
681         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
682         (ppc_linux_collect_core_cpgrregset): New function.
683         (ppc_linux_iterate_over_regset_sections): Call back with the htm
684         regsets.
685         (ppc_linux_core_read_description): Check if the tm spr section is
686         present and set htm in the features struct.
687         (_initialize_ppc_linux_tdep): Call
688         initialize_tdesc_powerpc_isa207_htm_vsx32l and
689         initialize_tdesc_powerpc_isa207_htm_vsx64l.
690         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
691         Declare.
692         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
693         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
694         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
695         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
696         New fields.
697         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
698         Likewise.
699         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
700         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
701         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
702         New enum fields.
703         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
704         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
705         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
706         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
707         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
708         <PPC_CTAR_REGNUM>: Likewise.
709         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
710         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
711         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
712         (IS_CEFP_PSEUDOREG): Define.
713         (rs6000_register_name): Hide the upper halves of checkpointed VSX
714         registers.  Return names for the checkpointed DFP, VSX, and EFP
715         pseudo registers.
716         (rs6000_pseudo_register_type): Remove initial assert and raise an
717         internal error in the else clause instead.  Return types for the
718         checkpointed DFP, VSX, and EFP pseudo registers.
719         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
720         checkpointed DFP pseudo registers.
721         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
722         checkpointed VSX pseudo registers.
723         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
724         from efpr_pseudo_register_read and
725         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
726         registers.
727         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
728         Handle checkpointed DFP, VSX, and EFP registers.
729         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
730         (efp_ax_pseudo_register_collect): New functions.
731         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
732         register logic to new functions.  Handle checkpointed DFP, VSX,
733         and EFP pseudo registers.
734         (rs6000_gdbarch_init): Look for and validate the htm features.
735         Include checkpointed DFP, VSX and EFP pseudo-registers.
736         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
737         HTM registers.
738
739 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
740
741         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
742         without altivec or fpu.
743
744 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
745             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
746
747         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
748         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
749         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
750         Define if not already defined.
751         * features/rs6000/power-ebb.xml: New file.
752         * features/rs6000/power-linux-pmu.xml: New file.
753         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
754         features.
755         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
756         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
757         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
758         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
759         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
760         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
761         fetch_regset with ebb and pmu regsets.
762         (store_register, store_ppc_registers): Call store_regset with ebb
763         and pmu regsets.
764         (ppc_linux_nat_target::read_description): Set isa207 field in the
765         features struct if ebb and pmu are avaiable.
766         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
767         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
768         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
769         and pmu regsets.
770         (ppc_linux_core_read_description): Check if the pmu section is
771         present and set isa207 in the features struct.
772         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
773         (ppc32_linux_pmuregset): Declare.
774         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
775         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
776         <ppc_sier_regnum>: New field.
777         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
778         New enum values.
779         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
780         values.
781         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
782         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
783         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
784         ebb and pmu features.
785
786 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
787             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
788
789         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
790         (tdesc_powerpc_isa207_vsx64l): Declare.
791         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
792         (struct ppc_linux_features) <isa207>: New field.
793         (ppc_linux_no_features): Add initializer for isa207 field.
794         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
795         new tdescs.
796         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
797         (NT_PPC_TAR): Define if not already defined.
798         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
799         rs6000/powerpc-isa207-vsx64l.
800         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
801         rs6000/powerpc-isa207-vsx64l.xml.
802         * features/rs6000/power-tar.xml: New file.
803         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
804         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
805         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
806         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
807         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
808         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
809         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
810         fetch_regset with the TAR regset.
811         (store_register, store_ppc_registers): Call store_regset with the
812         TAR regset.
813         (ppc_linux_nat_target::read_description): Set isa207 field in the
814         features struct if needed.
815         * ppc-linux-tdep.c: Include
816         features/rs6000/powerpc-isa207-vsx32l.c and
817         features/rs6000/powerpc-isa207-vsx64l.c.
818         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
819         (ppc_linux_iterate_over_regset_sections): Call back with the tar
820         regset.
821         (ppc_linux_core_read_description): Check if the tar section is
822         present and set isa207 in the features struct.
823         (_initialize_ppc_linux_tdep): Call
824         initialize_tdesc_powerpc_isa207_vsx32l and
825         initialize_tdesc_powerpc_isa207_vsx64l.
826         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
827         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
828         (enum) <PPC_TAR_REGNUM>: New enum value.
829         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
830         feature.
831         (ppc_process_record_op31): Record changes to TAR.
832
833 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
834             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
835
836         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
837         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
838         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
839         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
840         (struct ppc_linux_features) <ppr_dscr>: New field.
841         (ppc_linux_no_features): Add initializer for ppr_dscr field.
842         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
843         new tdescs.
844         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
845         Define if not already defined.
846         * features/Makefile (WHICH): Add
847         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
848         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
849         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
850         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
851         * features/rs6000/power-dscr.xml: New file.
852         * features/rs6000/power-ppr.xml: New file.
853         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
854         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
855         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
856         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
857         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
858         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
859         * ppc-linux-nat.c: Include <sys/uio.h>.
860         (fetch_regset, store_regset, check_regset): New functions.
861         (fetch_register, fetch_ppc_registers): Call fetch_regset with
862         DSCR and PPR regsets.
863         (store_register, store_ppc_registers): Call store_regset with
864         DSCR and PPR regsets.
865         (ppc_linux_get_hwcap2): New function.
866         (ppc_linux_nat_target::read_description): Call
867         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
868         features struct if needed.
869         * ppc-linux-tdep.c: Include
870         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
871         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
872         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
873         (ppc32_linux_dscrregset): New globals.
874         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
875         and dscr regsets.
876         (ppc_linux_core_read_description): Check if the ppr and dscr
877         sections are present and set ppr_dscr in the features struct.
878         (_initialize_ppc_linux_tdep): Call
879         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
880         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
881         * ppc-linux-tdep.h (ppc32_linux_pprregset)
882         (ppc32_linux_dscrregset): Declare.
883         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
884         <ppc_dscr_regnum>: New field.
885         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
886         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
887         and dscr features.
888         (ppc_process_record_op31): Record changes to PPR and DSCR.
889
890 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
891
892         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
893         second initializer line for the have_* variables.  Initialize
894         have_fpu to 0 instead of 1.
895
896 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
897
898         * arch/ppc-linux-common.c (ppc_linux_match_description):
899         Parenthesize tdesc assignements and indent them properly.
900
901 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
902
903         * ppc-linux-nat.c (fetch_register): Change if statement to else
904         if.
905         (store_register): Likewise.
906
907 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
908
909         * rs6000-tdep.c: Remove reggroups.h include.
910         (rs6000_pseudo_register_reggroup_p): Remove.
911         (rs6000_gdbarch_init): Remove call to
912         set_tdesc_pseudo_register_reggroup_p.
913
914 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
915
916         * reggroups.c (default_register_reggroup_p): Return true for
917         decfloat registers and float_reggroup.
918
919 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
920
921         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
922         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
923         ppc_linux_collect_vrregset by regcache_collect_regset.
924
925 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
926
927         * linux-tdep.c (linux_collect_regset_section_cb): Use
928         std::vector<gdb_byte> instead of char * and malloc for buf.
929         Remove xfree.
930
931 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
932
933         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
934         symtab_start instead of always using language_unknown.
935
936 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
937
938         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
939         READ_P parameter, catch and ignore register access errors from
940         either the old or new MISA location.
941         (riscv_has_feature): Update call to riscv_read_misa_reg.
942
943 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
944
945         * python/py-function.c (convert_values_to_python): Return
946         gdbpy_ref<>.  Add header comment.
947         (fnpy_call): Adjust.
948
949 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
950
951         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
952         (cmdpy_completer_handle_brkchars): Adjust.
953         (cmdpy_completer): Adjust.
954
955 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
956
957         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
958         Pass correct regnum to raw_supply_zeroed.
959
960 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
961
962         * regcache.c (cooked_read_test): Add CSKY to the list of
963         architectures with a save_reggroup
964
965 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
966
967         PR gdb/23368
968         * infrun.c (follow_exec): In the follow_exec_mode_new case,
969         transfer terminal state from old new new inferior.
970         * terminal.h (swap_terminal_info): New function.
971         * inflow.c (swap_terminal_info): New function.
972
973 2018-10-23  Tom Tromey  <tom@tromey.com>
974
975         * record-btrace.c (get_thread_current_frame_id): Rename from
976         get_thread_current_frame.  Return a frame_id.
977         (record_btrace_start_replaying): Update.
978
979 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
980
981         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
982         for CSRs.
983
984 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
985
986         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
987         have_nonsteppable_watchpoint attribute to 1.
988
989 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
990
991         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
992         register names.
993         (struct register_alias): Rename to...
994         (struct riscv_register_alias): ...this, and update comment.
995         (riscv_register_aliases): Update type, and alias names.  Remove
996         CSR names from this list.
997         (riscv_register_name): Use riscv_gdb_reg_names for int and float
998         register names.  Add an extra assertion.
999         (riscv_is_regnum_a_named_csr): New function.
1000         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1001
1002 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1003
1004         * configure.tgt: Add configuration for s12z.
1005         * s12z-tdep.c:  New file.
1006         * NEWS: Mention new target.
1007
1008 2018-10-22  Jim Wilson  <jimw@sifive.com>
1009
1010         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1011         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1012
1013         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1014         (riscv_register_type): Use them.
1015         (riscv_print_one_register_info): Handle union of floats same as float.
1016         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1017         riscv_fpreg_q_type fields.
1018
1019 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1020
1021         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1022         * gdbarch.h: Re-generate.
1023         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1024         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1025         * eval.c (evaluate_subexp_standard): Likewise.
1026         * findvar.c (value_of_register): Likewise.
1027         (value_of_register_lazy): Likewise.
1028         (address_from_register): Likewise.
1029         * frame.c (get_frame_register_bytes): Likewise.
1030         * gdbarch-selftests.c (register_to_value_test): Likewise.
1031         * h8300-tdep.c (h8300_register_type): Likewise.
1032         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1033         (i386_svr4_reg_to_regnum): Likewise.
1034         * infcmd.c (default_print_registers_info): Likewise.
1035         (registers_info): Likewise.
1036         (print_vector_info): Likewise.
1037         (default_print_float_info): Likewise.
1038         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1039         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1040         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1041         (mi_cmd_data_list_changed_registers): Likewise.
1042         (mi_cmd_data_list_register_values): Likewise.
1043         (mi_cmd_data_write_register_values): Likewise.
1044         (mi_cmd_trace_frame_collected): Likewise.
1045         * mips-tdep.c (print_gp_register_row): Likewise.
1046         (mips_print_registers_info): Likewise.
1047         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1048         * regcache.c (init_regcache_descr): Likewise.
1049         (register_size): Likewise.
1050         (register_dump::dump): Likewise.
1051         (cooked_read_test): Likewise.
1052         (cooked_write_test): Likewise.
1053         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1054         (rs6000_gdbarch_init): Likewise.
1055         * stabsread.c (stab_reg_to_regnum): Likewise.
1056         * stack.c (info_frame_command): Likewise.
1057         * target-descriptions.c (tdesc_register_name): Likewise.
1058         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1059         * tui/tui-regs.c (tui_show_register_group): Likewise.
1060         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1061         (user_reg_map_regnum_to_name): Likewise.
1062         (value_of_user_reg): Likewise.
1063         (maintenance_print_user_registers): Likewise.
1064         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1065         (xtensa_register_name): Likewise.
1066         (xtensa_register_type): Likewise.
1067         (xtensa_reg_to_regnum): Likewise.
1068         (xtensa_pseudo_register_read): Likewise.
1069         (xtensa_pseudo_register_write): Likewise.
1070
1071 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1072
1073         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1074         correctly-sized buffer with raw_read.
1075         (amd64_pseudo_register_write): Use correctly-sized buffer for
1076         raw_read/raw_write.
1077
1078 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1079
1080         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1081         in add_prefix_cmd of set print type.
1082
1083 2018-10-19  Tom Tromey  <tom@tromey.com>
1084
1085         PR tui/18388:
1086         * NEWS: Mention tabset deprecation.
1087         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1088         (update_tab_width): New function.
1089         (tui_set_tab_width, tui_show_tab_width): New functions.
1090         (tui_set_tab_width_command): Use update_tab_width.
1091         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1092         Add new "set tui tab-width" command.
1093         * tui/tui-source.c (tui_set_source_content): Update.
1094         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1095         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1096         Don't declare.
1097         (tui_tab_width): Declare.
1098         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1099         (tui_set_default_tab_len): Remove.
1100
1101 2018-10-19  Tom Tromey  <tom@tromey.com>
1102
1103         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1104         (key_is_backspace, tui_getc): Don't declare.
1105         * tui/tui-io.c (key_is_start_sequence): Now static.
1106         (key_is_end_sequence, key_is_backspace): Remove.
1107         (tui_getc): Now static.
1108
1109 2018-10-19  Tom Tromey  <tom@tromey.com>
1110
1111         * symfile.c (reread_symbols): Clear "static_links".
1112
1113 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1114
1115         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1116         define.
1117         (aarch64_linux_sigframe_init): Extra boundary checks.
1118
1119 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1120
1121         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1122         the possibly non-existent tdesc type 'vec128', but the type of raw
1123         register v16 instead.
1124
1125 2018-10-19  Gary Benson <gbenson@redhat.com>
1126
1127         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1128
1129 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1130
1131         PR cli/23785
1132         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1133         NULL.
1134
1135 2018-10-17  Paul Koning  <paul_koning@dell.com>
1136
1137         * charset.c (convert_between_encodings): Fix unsigned overflow.
1138
1139 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1140
1141         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1142         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1143         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1144         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1145         New functions.
1146         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1147         and fbsd_info_proc_mappings_header.
1148         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1149         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1150         New.
1151
1152 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1153
1154         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1155         Solaris Maintainer.
1156
1157 2018-10-15  Tom Tromey  <tom@tromey.com>
1158
1159         * tui/tui.c (strcat_to_buf): Remove casts.
1160         * tui/tui-winsource.c (tui_show_source_line)
1161         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1162         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1163         * tui/tui-windata.c (tui_first_data_item_displayed)
1164         (tui_delete_data_content_windows, tui_erase_data_content)
1165         (tui_display_all_data, tui_display_data_from)
1166         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1167         * tui/tui-win.c (tui_set_win_height)
1168         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1169         casts.
1170         * tui/tui-win.c (tui_resize_all): Remove casts.
1171         (tui_scroll_backward_command, tui_set_focus)
1172         (tui_set_tab_width_command): Likewise.
1173         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1174         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1175         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1176         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1177         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1178         Remove casts.
1179
1180 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1181
1182         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1183         AArch64/ARM maintainer.
1184
1185 2018-10-11  Gary Benson <gbenson@redhat.com>
1186
1187         * interps.h (interp::m_name): Make private and mutable.
1188         * interps.c (interp::~interp): Free m_name.
1189
1190 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1191             Simon Marchi <simark@simark.ca>
1192
1193         * README (`configure' options): Add documentation for new
1194         "--enable-unit-tests" option.
1195         * acinclude.m4: Include "selftest.m4".
1196         * configure: Regenerate.
1197         * configure.ac: Use "GDB_AC_SELFTEST".
1198         * maint.c (maintenance_selftest): Update message informing
1199         that selftests have been disabled.
1200         (maintenance_info_selftests): Likewise.
1201         * selftest.m4: New file.
1202
1203 2018-10-10  Gary Benson <gbenson@redhat.com>
1204
1205         * remote.c (remote_target::remote_send_printf): Add
1206         missing va_end found by Coverity.
1207
1208 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1209
1210         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1211
1212 2018-10-09  Tom Tromey  <tom@tromey.com>
1213
1214         * configure: Rebuild.
1215         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1216         * NEWS: Update --enable-ubsan documentation.
1217
1218 2018-10-09  Gary Benson <gbenson@redhat.com>
1219
1220         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1221         found by Coverity.
1222
1223 2018-10-08  Tom Tromey  <tom@tromey.com>
1224
1225         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1226         variable.
1227         (riscv_fbsd_init_abi): Likewise.
1228
1229 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1230         * valops.c (value_struct_elt_for_reference): Rename local variable
1231         to work around the shadowing a previous local warning.
1232
1233 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1234
1235         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1236         * NEWS: Mention new FreeBSD/riscv native configuration.
1237         * configure.host: Add riscv*-*-freebsd*.
1238         * configure.nat: Likewise.
1239         * riscv-fbsd-nat.c: New file.
1240
1241 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1242
1243         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1244         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1245         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1246         * NEWS: Mention new FreeBSD/riscv target.
1247         * configure.tgt: Add riscv*-*-freebsd*.
1248         * riscv-fbsd-tdep.c: New file.
1249         * riscv-fbsd-tdep.h: New file.
1250
1251 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1252
1253         * regcache.h (struct regcache_map_entry): Note that this type can
1254         be used with traditional frame caches.
1255         * trad-frame.c (trad_frame_set_reg_regmap): New.
1256         * trad-frame.h (trad_frame_set_reg_regmap): New.
1257
1258 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1259
1260         PR c++/16841
1261         * valops.c (get_virtual_base_offset): New function.
1262         (value_struct_elt_for_reference): Use it to get virtual base offset
1263         and add it in calculating class member address.
1264
1265 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1266
1267     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1268       (check_producer): Check if the producer is codewarrior.
1269       (producer_is_codewarrior): New function.
1270       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1271        produced by codewarrior.
1272       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1273
1274 2018-10-06  Tom Tromey  <tom@tromey.com>
1275
1276         PR python/19399:
1277         * python/py-inferior.c: Add "architecture" entry.
1278         (infpy_architecture): New function.
1279
1280 2018-10-06  Tom Tromey  <tom@tromey.com>
1281
1282         PR python/21765:
1283         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1284         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1285         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1286         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1287
1288 2018-10-06  Tom Tromey  <tom@tromey.com>
1289
1290         PR build/17077:
1291         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1292         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1293         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1294         #include.
1295
1296 2018-10-06  Tom Tromey  <tom@tromey.com>
1297
1298         * python/py-breakpoint.c (bppy_get_location): Handle a
1299         bp_breakpoint without a location.
1300
1301 2018-10-06  Tom Tromey  <tom@tromey.com>
1302
1303         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1304         (_RegEx): Reformat help text.
1305         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1306         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1307         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1308         text.
1309         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1310         (EnableXMethod, DisableXMethod): Remove help indentation.
1311         Capitalize meta-syntactic variables.
1312         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1313         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1314         Capitalize meta-syntactic variables.
1315         * python/lib/gdb/command/explore.py (ExploreCommand)
1316         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1317         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1318         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1319         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1320         Remove help indentation.
1321         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1322         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1323         (DisableFrameFilter, SetFrameFilterPriority)
1324         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1325
1326 2018-10-06  Tom Tromey  <tom@tromey.com>
1327
1328         PR tui/28819:
1329         * tui/tui-io.c (gdb_wgetch): New function.
1330         (tui_mld_getc, tui_getc): Use it.
1331
1332 2018-10-05  Tom Tromey  <tom@tromey.com>
1333
1334         * sol-thread.c (sol_thread_target::wait): Rename inner
1335         "save_ptid".
1336
1337 2018-10-04  Tom Tromey  <tom@tromey.com>
1338
1339         * configure: Rebuild.
1340         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1341
1342 2018-10-04  Tom Tromey  <tom@tromey.com>
1343
1344         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1345         declaration of "block".
1346
1347 2018-10-04  Tom Tromey  <tom@tromey.com>
1348
1349         * common/filestuff.c (fdwalk): Remove inner declaration of
1350         "result".
1351
1352 2018-10-04  Tom Tromey  <tom@tromey.com>
1353
1354         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1355         "structs_addr" and hoist declaration.
1356
1357 2018-10-04  Tom Tromey  <tom@tromey.com>
1358
1359         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1360         variable "size".
1361
1362 2018-10-04  Tom Tromey  <tom@tromey.com>
1363
1364         * mdebugread.c (parse_partial_symbols): Use std::string.
1365
1366 2018-10-04  Tom Tromey  <tom@tromey.com>
1367
1368         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1369         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1370         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1371         header.
1372         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1373         more inner scope.
1374         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1375         * varobj.c (varobj_update): Rename inner "newobj",
1376         "type_changed".
1377         * valprint.c (generic_emit_char): Rename inner "buf".
1378         * valops.c (find_overload_match): Rename inner "temp".
1379         (value_struct_elt_for_reference): Declare "v" in more inner
1380         scope.
1381         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1382         * unittests/array-view-selftests.c (run_tests): Rename inner
1383         "vec".
1384         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1385         header.
1386         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1387         "tsv" in more inner scope.
1388         (print_one_static_tracepoint_marker): Rename inner
1389         "tuple_emitter".
1390         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1391         (tic6x_push_dummy_call): Don't redeclare "addr".
1392         * target-float.c: Declare "dto" lower.
1393         * symtab.c (lookup_local_symbol): Rename inner "sym".
1394         (find_pc_sect_line): Rename inner "pc".
1395         * stack.c (print_frame): Don't redeclare "gdbarch".
1396         (return_command): Rename inner "gdbarch".
1397         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1398         "sp".
1399         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1400         header.
1401         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1402         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1403         scope.
1404         * remote.c (remote_target::update_thread_list): Don't redeclare
1405         "tp".
1406         (remote_target::process_initial_stop_replies): Rename inner
1407         "thread".
1408         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1409         (remote_target::wait_as): Don't redeclare "stop_reply".
1410         (remote_target::get_thread_local_address): Rename inner
1411         "result".
1412         (remote_target::get_tib_address): Likewise.
1413
1414         * regcache.c (cooked_read_test): Rename "regnum".
1415         * record-btrace.c (cmd_record_btrace_start): Rename inner
1416         "exception".
1417         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1418         loop header.
1419         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1420         header.
1421         (ppu2spu_sniffer): Rename inner "buf".
1422         * parse.c (operator_check_standard): Rename inner "type",
1423         "objfile".
1424         * p-valprint.c (pascal_val_print): Introduce new scope for
1425         "low_bound", "high_bound".
1426         * p-exp.y (yylex): Declare "i" in loop header.
1427         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1428         Lower declaration of "s".
1429         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1430         header.
1431         (nios2_push_dummy_call): Rename "len".
1432         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1433         "buf".
1434         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1435         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1436         (linux_xfer_osdata_modules): Likewise.
1437         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1438         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1439         (mips_o64_push_dummy_call): Likewise.
1440         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1441         "op".
1442         * mi/mi-main.c (list_available_thread_groups): Rename inner
1443         "tuple_emitter".
1444         (mi_cmd_data_read_memory): Rename inner "opts".
1445         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1446         "tuple_emitter".
1447         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1448         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1449         more inner scope.
1450         (parse_partial_symbols): Rename inner "pst", "p", "name"
1451         * main.c (captured_main_1): Rename inner "i"s.
1452         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1453         "oso2".
1454         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1455         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1456         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1457         (handle_signal_stop): Rename inner "gdbarch".
1458         (handle_command): Declare "signum" in loop header.
1459         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1460         "status".
1461         (examine_prologue): Rename inner "sol" and "sof".
1462         (ia64_extract_return_value): Rename inner "val".  Declare another
1463         "val" in a more inner scope.
1464         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1465         inner scope.
1466         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1467         "except".
1468         * findvar.c (default_read_var_value): Don't redeclare "addr".
1469         * f-exp.y (yylex): Declare "i" in loop header.
1470         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1471         Rename inner "type", "expect_type".
1472         (evaluate_subexp_for_sizeof): Rename inner "pc".
1473         * elfread.c (elf_symfile_read): Rename inner "abfd".
1474         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1475         "bytes_read".
1476         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1477         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1478         (dwarf_decode_line_header): Rename inner "lh".
1479         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1480         "offset".  Declare "i" in loop header.
1481         (disassemble_dwarf_expression): Rename inner "addr_size".
1482         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1483         inner "result".
1484         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1485         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1486         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1487         "inner_list_emitter".
1488         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1489         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1490         declaration in a block.
1491         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1492         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1493         "obstack_final_size".
1494         * cp-support.c (inspect_type): Declare "i" in loop header.
1495         * compile/compile.c (compile_instance::insert_symbol_error):
1496         Rename inner "e".
1497         * common/agent.c (agent_run_command): Remove inner "ret"
1498         declaration.
1499         * coffread.c (coff_symfile_read): Rename inner "name".
1500         (coff_symfile_read): Rename inner "abfd".
1501         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1502         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1503         "high".
1504         * c-exp.y (lex_one_token): Move "len" declaration lower.
1505         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1506         "gdbarch".
1507         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1508         "b".
1509         (watch_command_1): Declare "mark" later.
1510         (clear_command): Don't shadow "a" or "b".
1511         (delete_command): Rename inner "b".
1512         (delete_trace_command): Likewise.
1513         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1514         "op".
1515         (arm_gdbarch_init): Remove inner "e_flags".
1516         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1517         "offset" in inner blocks.
1518
1519 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1520
1521         * dwarf-index-write.c (file_write): Don't write if the vector is
1522         empty.
1523
1524 2018-10-05  Tom de Vries  <tdevries@suse.de>
1525
1526         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1527         PyArg_ParseTuple call.
1528
1529 2018-10-05  Tom de Vries  <tdevries@suse.de>
1530
1531         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1532         PyArg_ParseTuple call.
1533
1534 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1535
1536         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1537         to avoid exceeding 80 characters per line limit.
1538
1539 2018-10-04  Tom Tromey  <tom@tromey.com>
1540
1541         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1542         (reread_symbols): Update.
1543         * complaints.h (clear_complaints): Remove argument.
1544         * complaints.c (enum complaint_series): Remove.
1545         (series): Remove global.
1546         (complaint_internal): Update.
1547         (clear_complaints): Remove argument.
1548
1549 2018-10-04  Tom Tromey  <tom@tromey.com>
1550
1551         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1552         debugging symbols" message if there is a separate debug objfile.
1553
1554 2018-10-04  Tom Tromey  <tom@tromey.com>
1555
1556         PR cli/19551:
1557         * symfile.c (symbol_file_add_with_addrs): Update output.
1558         * psymtab.c (require_partial_symbols): Update output.
1559
1560 2018-10-04  Tom Tromey  <tom@tromey.com>
1561
1562         PR cli/22234:
1563         * complaints.c: Emit \n.
1564
1565 2018-10-04  Tom Tromey  <tom@tromey.com>
1566
1567         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1568         (separate_debug_file_exists, find_separate_debug_file)
1569         (add_symbol_file_command, reread_symbols, allocate_symtab)
1570         (allocate_compunit_symtab): Use filtered printing, not
1571         unfiltered.
1572         * psymtab.c (require_partial_symbols, dump_psymtab)
1573         (allocate_psymtab): Use filtered printing, not unfiltered.
1574
1575 2018-10-04  Tom Tromey  <tom@tromey.com>
1576
1577         * complaints.c (complaint_internal): Correctly check complaint
1578         count.
1579
1580 2018-10-04  Tom Tromey  <tom@tromey.com>
1581
1582         * complaints.h (struct complaints): Remove declaration.
1583         * complaints.c (clear_complaints): Remove an unused variable.
1584
1585 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1586
1587         * MAINTAINERS (Write After Approval): Add self.
1588
1589 2018-10-03  Tom Tromey  <tom@tromey.com>
1590
1591         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1592         "buffer_contents".
1593         * coffread.c (coff_symtab_read): Initialize "newobj".
1594
1595 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1596
1597         * dwarf2read.c (read_func_scope): Remove struct keyword in
1598         range-based for.
1599
1600 2018-10-03  Tom Tromey  <tom@tromey.com>
1601
1602         * README: Mention --enable-ubsan.
1603         * NEWS: Mention --enable-ubsan.
1604         * acinclude.m4: Include sanitize.m4.
1605         * configure: Rebuild.
1606         * configure.ac: Call AM_GDB_UBSAN.
1607         * sanitize.m4: New file.
1608
1609 2018-10-03  Tom Tromey  <tom@tromey.com>
1610
1611         * expression.h (enum exp_opcode): Use uint8_t as base type.
1612         * expprint.c (op_name): Handle invalid opcodes.
1613
1614 2018-10-03  Tom Tromey  <tom@tromey.com>
1615
1616         * parse.c (prefixify_expression): Add assert.
1617         (parse_exp_in_context_1): Throw exception if the expression is
1618         empty.
1619
1620 2018-10-03  Tom Tromey  <tom@tromey.com>
1621
1622         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1623
1624 2018-10-03  Tom Tromey  <tom@tromey.com>
1625
1626         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1627
1628 2018-10-03  Tom Tromey  <tom@tromey.com>
1629
1630         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1631         unsigned.
1632
1633 2018-10-03  Tom Tromey  <tom@tromey.com>
1634
1635         * findvar.c (extract_integer): Do work in an unsigned type.
1636
1637 2018-10-03  Tom Tromey  <tom@tromey.com>
1638
1639         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1640         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1641         base type.
1642         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1643         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1644         type.
1645         * c-lang.h (enum c_string_type_values): Use unsigned as base
1646         type.
1647         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1648
1649 2018-10-03  Tom Tromey  <tom@tromey.com>
1650
1651         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1652         <~dwarf2_frame_state_reg_info>: Update.
1653         <dwarf2_frame_state_reg_info>: Update.
1654         <alloc_regs>: Add assertion.  Update.
1655         <reg>: Now a std::vector.
1656         <num_regs>: Remove.
1657         <swap>: Update.
1658         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1659         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1660
1661 2018-10-03  Tom Tromey  <tom@tromey.com>
1662
1663         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1664
1665 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1666
1667         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1668
1669 2018-10-02  Tom Tromey  <tom@tromey.com>
1670
1671         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1672
1673 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1674
1675         * NEWS: Mention changed commands.
1676         * ser-uds.c: New file.
1677         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1678         * configure: Regenerate.
1679         * Makefile.in: Add new file.
1680         * serial.c (serial_open): Check if filename is a socket
1681           and lookup the appropriate interface accordingly.
1682
1683 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1684
1685         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1686         define.
1687         (AARCH64_EXTRA_MAGIC): Likewise.
1688         (AARCH64_FPSIMD_MAGIC): Likewise.
1689         (AARCH64_SVE_MAGIC): Likewise.
1690         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1691         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1692         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1693         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1694         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1695         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1696         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1697         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1698         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1699         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1700         (read_aarch64_ctx): Add function.
1701         (aarch64_linux_sigframe_init): Detect FP registers.
1702
1703 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1704
1705         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1706         (AARCH64_D0_REGNUM): Likewise.
1707         (AARCH64_S0_REGNUM): Likewise.
1708         (AARCH64_H0_REGNUM): Likewise.
1709         (AARCH64_B0_REGNUM): Likewise.
1710         (AARCH64_SVE_V0_REGNUM): Likewise.
1711         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1712         (AARCH64_D0_REGNUM): Likewise.
1713         (AARCH64_S0_REGNUM): Likewise.
1714         (AARCH64_H0_REGNUM): Likewise.
1715         (AARCH64_B0_REGNUM): Likewise.
1716         (AARCH64_SVE_V0_REGNUM): Likewise.
1717
1718 2018-10-01  Gary Benson <gbenson@redhat.com>
1719
1720         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1721         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1722         prfpregset_t instead of gdb_prfpregset_t.
1723         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1724         * configure, config.in: Rebuild.
1725
1726 2018-10-01  Gary Benson <gbenson@redhat.com>
1727
1728         * common/gdb_proc_service.h: New file, factored out from...
1729         * gdb_proc_service.h: Moved common code to the above file.
1730         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1731
1732 2018-10-01  Gary Benson <gbenson@redhat.com>
1733
1734         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1735         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1736
1737 2018-10-01  Gary Benson <gbenson@redhat.com>
1738
1739         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1740         (AC_CHECK_HEADERS): Check for linux/elf.h.
1741         * configure, config.in: Rebuild.
1742         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1743         doesn't define elf_fpregset_t.
1744
1745 2018-10-01  Gary Benson <gbenson@redhat.com>
1746
1747         * gdb_proc_service.h: Whitespace change.
1748
1749 2018-10-01  Tom Tromey  <tom@tromey.com>
1750
1751         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1752         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1753         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1754
1755 2018-10-01  Tom Tromey  <tom@tromey.com>
1756
1757         * README: Minor change.
1758
1759 2018-09-30  Pedro Alves  <palves@redhat.com>
1760
1761         * darwin-nat-info.c (darwin_debug_regions_recurse)
1762         (info_mach_exceptions_command): Remove unused local variables.
1763         * darwin-nat.c (darwin_decode_notify_message)
1764         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1765         (darwin_stop_inferior, darwin_setup_exceptions)
1766         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1767         (darwin_nat_target::attach, darwin_nat_target::detach)
1768         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1769         local variables.
1770         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1771         variables.
1772
1773 2018-09-29  Tom Tromey  <tom@tromey.com>
1774
1775         * README: Remove some leftover text.
1776
1777 2018-09-29  Tom Tromey  <tom@tromey.com>
1778
1779         * PROBLEMS: Rewrite.
1780         * README: Update.
1781
1782 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1783
1784         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1785         case with explicit breakpoint kind.
1786         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1787         'additional_info' and related logic.
1788         (riscv_debug_breakpoints): New variable.
1789         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1790         instruction to determine the breakpoint kind.
1791         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1792         flag.  Update description of 'set/show riscv
1793         use-compressed-breakpoints' flag.
1794
1795 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1796
1797         (NEWS): Mention changes to frame related commands.
1798         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1799         (add_prefix_cmd_suppress_notification): New function.
1800         (add_com_suppress_notification): Call
1801         add_cmd_suppress_notification.
1802         * command.h (add_cmd_suppress_notification): Declare.
1803         (add_prefix_cmd_suppress_notification): Declare.
1804         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1805         (parse_frame_specification): Moved from stack.c, with
1806         simplification to handle a single argument.
1807         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1808         switch to the selected frame.  Add a header comment.
1809         * stack.c: Remove 'safe-ctype.h' include.
1810         (find_frame_for_function): Add declaration.
1811         (find_frame_for_address): New function.
1812         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1813         (frame_selection_by_function_completer): New function.
1814         (info_frame_command): Rename to...
1815         (info_frame_command_core): ...this, and update parameter types.
1816         (select_frame_command): Rename to...
1817         (select_frame_command_core): ...this, and update parameter types.
1818         (frame_command): Rename to...
1819         (frame_command_core): ...this, and update parameter types.
1820         (class frame_command_helper): New class to wrap implementations of
1821         frame related sub-commands.
1822         (frame_apply_cmd_list): New static global.
1823         (frame_cmd_list): Make static.
1824         (select_frame_cmd_list): New global for sub-commands.
1825         (info_frame_cmd_list): New global for sub-commands.
1826         (_initialize_stack): Register sub-commands for 'frame',
1827         'select-frame', and 'info frame'.  Update 'frame apply' commands
1828         to use frame_apply_cmd_list.  Move function local static
1829         frame_apply_list to file static frame_apply_cmd_list for
1830         consistency.
1831         * stack.h (select_frame_command): Delete declarationn.
1832         (select_frame_for_mi): Declare new function.
1833
1834 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1835
1836         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1837         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1838         and NOP.
1839
1840 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1841
1842         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1843
1844 2018-09-26  Tom Tromey  <tom@tromey.com>
1845
1846         * valops.c (auto_abandon): Remove dead code.
1847
1848 2018-09-26  Tom Tromey  <tom@tromey.com>
1849
1850         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1851
1852 2018-09-24  Tom Tromey  <tom@tromey.com>
1853
1854         * common/pathstuff.c (get_standard_cache_dir): Make
1855         "xdg_cache_home" and "home" const.
1856         * top.c (init_history): Make "tmpenv" const.
1857         * main.c (get_init_files): Make "homedir" const.
1858
1859 2018-09-23  Tom Tromey  <tom@tromey.com>
1860
1861         PR python/18852:
1862         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1863
1864 2018-09-23  Tom Tromey  <tom@tromey.com>
1865
1866         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1867         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1868         * python/python-internal.h (gdbpy_handle_exception): Declare.
1869         * python/py-utils.c (gdbpy_handle_exception): New function.
1870
1871 2018-09-23  Tom Tromey  <tom@tromey.com>
1872
1873         PR python/17284:
1874         * python/py-type.c (typy_template_argument): Check for negative
1875         argument number.
1876
1877 2018-09-23  Tom Tromey  <tom@tromey.com>
1878
1879         PR python/14062:
1880         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1881
1882 2018-09-23  Tom Tromey  <tom@tromey.com>
1883
1884         PR python/18170:
1885         * python/py-value.c (valpy_int): Allow conversion from pointer
1886         type.
1887
1888 2018-09-23  Tom Tromey  <tom@tromey.com>
1889
1890         PR python/20126:
1891         * python/py-value.c (valpy_int): Respect type sign.
1892
1893 2018-09-23  Tom Tromey  <tom@tromey.com>
1894
1895         PR python/18352;
1896         * python/py-value.c (valpy_float): Allow conversions from int or
1897         char.
1898         (valpy_int, valpy_long): Allow conversions from float.
1899
1900 2018-09-23  Tom Tromey  <tom@tromey.com>
1901
1902         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1903         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1904
1905 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1906
1907         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1908         __sighndlr.
1909         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1910
1911 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1912
1913         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1914         target_terminal::ours().
1915
1916 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1917
1918         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1919         of vl to ULONGEST.
1920
1921 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1922
1923         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1924         redundant condition.
1925
1926 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1927
1928         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1929
1930         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1931         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1932         * sol-thread.c (ps_pdmodel): Don't guard definition.
1933
1934         * procfs.c: Fix formatting.
1935
1936         * procfs.c (sysset_t_alloc): Remove.
1937         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1938         (procfs_debug_inferior): Likewise.
1939         (procfs_set_exec_trap): Likewise.
1940         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1941         (proc_set_traced_sysexit): Likewise.
1942
1943         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1944         (dead_procinfo): Likewise.
1945         (proc_warn): Likewise.
1946         (proc_error): Likewise.
1947         (proc_get_LDT_entry): Likewise.
1948         (do_attach): Likewise.
1949         (procfs_target::pid_to_str): Likewise.
1950         (iterate_over_mappings): Likewise.
1951
1952         * procfs.c (create_procinfo): Fix ARI warning.
1953         (proc_get_status): Likewise.
1954         (proc_stop_process): Likewise.
1955         (proc_run_process): Likewise.
1956         (proc_kill): Likewise.
1957         (proc_get_LDT_entry): Likewise.
1958         (procfs_find_LDT_entry): Likewise.
1959         (proc_update_threads): Likewise.
1960         (proc_iterate_over_threads): Likewise.
1961         (do_attach): Likewise.
1962         (procfs_xfer_memory): Likewise.
1963         (invalidate_cache): Likewise.
1964         (procfs_target::resume): Likewise.
1965         (procfs_init_inferior): Likewise.
1966         (procfs_set_exec_trap): Likewise.
1967         (procfs_target::thread_alive): Likewise.
1968         (procfs_target::pid_to_exec_file): Likewise.
1969         (iterate_over_mappings): Likewise.
1970         (procfs_target::make_corefile_notes): Likewise.
1971         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1972
1973         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1974         (procfs_find_LDT_entry): Likewise.
1975         * sol-thread.c (ps_lgetLDT): Likewise.
1976
1977 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1978
1979         PR tdep/17903
1980         * procfs.c (procfs_target): Declare pid_to_exec_file.
1981         (procfs_target::pid_to_exec_file): New.
1982
1983 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1984
1985         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1986         renaming.
1987         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1988         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1989
1990 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1991
1992         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1993         (supply_fpregset, fill_fpregset): Move ...
1994         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1995         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1996         Remove references to ioctl-based procfs.
1997         Include <sys/reg.h>.
1998         Remove PR_MODEL_NATIVE guards.
1999         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2000         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2001
2002 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2003
2004         PR gdb/20981:
2005         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2006         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2007         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2008
2009 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2010
2011         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2012         (fbsd_print_sockaddr_in6): Likewise.
2013
2014 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2015             Chris January  <chris.january@arm.com>
2016
2017         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2018         (evaluate_subexp_standard): Return a dummy type when
2019         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2020         OP_F77_UNDETERMINED_ARGLIST case.
2021         * expression.h (enum noside): Update comment.
2022
2023 2018-09-19  George Vasick <george.vasick@oracle.com>
2024
2025         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2026
2027 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2028             April Chin <april.chin@oracle.com>
2029             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2030
2031         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2032         uint_t lwpid_t.
2033         (create_procinfo): Print pids in /proc without leading zeros.
2034
2035 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2036
2037         * nios2-tdep.c (nios2_gcc_target_options): New.
2038         (nios2_gdb_arch_init): Install new hook.
2039
2040 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2041
2042         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2043         New file.
2044         * update-gnulib.sh: Apply patch.
2045         * configure: Re-generate.
2046
2047 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2048
2049         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2050         description.  Make "info proc" command descriptions more
2051         consistent.
2052
2053 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2054
2055         * NEWS: Mention 'info proc files' command.
2056
2057 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2058
2059         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2060         descriptors for IP_FILES and IP_ALL.
2061
2062 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2063
2064         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2065         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2066         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2067         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2068         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2069         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2070         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2071         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2072         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2073         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2074         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2075         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2076         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2077         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2078         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2079         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2080         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2081         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2082         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2083         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2084         (struct fbsd_sockaddr_un): New types.
2085         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2086         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2087         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2088         (fbsd_core_info_proc_files): New functions.
2089         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2090         IP_ALL.
2091         * fbsd-tdep.h (fbsd_info_proc_files_header)
2092         (fbsd_info_proc_files_entry): New.
2093
2094 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2095
2096         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2097         * infcmd.c (info_proc_cmd_files): New function.
2098         (_initialize_infcmd): Register 'info proc files' command.
2099
2100 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2101
2102         * gnulib/aclocal-m4-deps.mk: Re-generate.
2103         * gnulib/aclocal.m4: Re-generate.
2104         * gnulib/config.in: Re-generate.
2105         * gnulib/configure: Re-generate.
2106         * gnulib/import/Makefile.am: Re-generate.
2107         * gnulib/import/Makefile.in: Re-generate.
2108         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2109         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2110         * gnulib/import/arpa_inet.in.h: New file.
2111         * gnulib/import/inet_ntop.c: New file.
2112         * gnulib/import/m4/arpa_inet_h.m4: New file.
2113         * gnulib/import/m4/inet_ntop.m4: New file.
2114         * gnulib/import/m4/netinet_in_h.m4: New file.
2115         * gnulib/import/m4/socklen.m4: New file.
2116         * gnulib/import/m4/sockpfaf.m4: New file.
2117         * gnulib/import/m4/stdalign.m4: New file.
2118         * gnulib/import/m4/sys_uio_h.m4: New file.
2119         * gnulib/import/netinet_in.in.h: New file.
2120         * gnulib/import/stdalign.in.h: New file.
2121         * gnulib/import/sys_socket.c: New file.
2122         * gnulib/import/sys_socket.in.h: New file.
2123         * gnulib/import/sys_uio.in.h: New file.
2124         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2125         module.
2126
2127 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2128
2129         * gnulib/aclocal-m4-deps.mk: New file.
2130         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2131         deterministically.
2132
2133 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2134
2135         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2136         KVE_PATH.
2137
2138 2018-09-18  Tom Tromey  <tom@tromey.com>
2139
2140         * compile/compile-object-load.c (struct
2141         link_hash_table_cleanup_data): Add constructor and destructor.
2142         Use DISABLE_COPY_AND_ASSIGN.
2143         (~link_hash_table_cleanup_data): Rename from
2144         link_hash_table_free.  Now a destructor.
2145         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2146
2147 2018-09-18  Tom Tromey  <tom@tromey.com>
2148
2149         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2150         * compile/compile-object-load.c (struct munmap_list): Move to
2151         header file.
2152         (munmap_list::add): Rename from munmap_list_add; rewrite.
2153         (munmap_list::~munmap_list): Rename from munmap_list_free.
2154         (munmap_listp_free_cleanup): Remove.
2155         (compile_object_load): Update.
2156         * compile/compile-object-load.h (struct munmap_list): Move from
2157         compile-object-load.c.  Rewrite.
2158
2159 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2160
2161         * aarch64-tdep.c (pass_in_v): Use register size.
2162         (aarch64_extract_return_value): Likewise.
2163         (aarch64_store_return_value): Likewise.
2164
2165 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2166
2167         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2168         rlim_t.
2169
2170 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2171
2172         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2173         Fix short help line.
2174
2175 2018-09-17  Tom Tromey  <tom@tromey.com>
2176
2177         PR python/20445:
2178         * configure: Rebuild.
2179         * configure.ac: Conditionally use -DNDEBUG for Python.
2180
2181 2018-09-17  Tom Tromey  <tom@tromey.com>
2182
2183         * configure: Rebuild.
2184         * configure.ac: Use gmp as a library dependency when checking for
2185         mpfr.
2186
2187 2018-09-17  Pedro Alves  <palves@redhat.com>
2188
2189         * python/py-inferior.c (find_inferior_object): Delete.
2190
2191 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2192
2193         * compile/compile-cplus-types.c
2194         (compile_cplus_instance::enter_scope): Don't use new_scope after
2195         std::move.
2196
2197 2018-09-17  Tom Tromey  <tom@tromey.com>
2198
2199         * common/pathstuff.c (get_standard_cache_dir): Use
2200         ~/Library/Caches on macOS.
2201         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2202
2203 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2204
2205         PR python/23669
2206         * breakpoint.c (commands_cmd_element): New.
2207         (_initialize_breakpoint): Assign commands_cmd_element.
2208         * breakpoint.h (commands_cmd_element): New.
2209         * cli/cli-script.c (while_cmd_element, if_command,
2210         define_cmd_element): New.
2211         (command_name_equals): Remove.
2212         (process_next_line): Compare commands by pointer, not by name.
2213         (_initialize_cli_script): Assign the various cmd_list_element
2214         variables.
2215         * compile/compile.c (compile_cmd_element): New.
2216         (_initialize_compile): Assign compile_cmd_element.
2217         * compile/compile.h (compile_cmd_element): New.
2218         * guile/guile.c (guile_cmd_element): New.
2219         (install_gdb_commands): Assign guile_cmd_element.
2220         * guile/guile.h (guile_cmd_element): New.
2221         * python/python.c (python_cmd_element): New.
2222         (_initialize_python): Assign python_cmd_element.
2223         * python/python.h (python_cmd_element): New.
2224         * tracepoint.c (while_stepping_cmd_element): New.
2225         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2226         * tracepoint.h (while_stepping_cmd_element): New.
2227
2228 2018-09-17  Tom Tromey  <tom@tromey.com>
2229
2230         * infrun.c (save_infcall_suspend_state): Return
2231         infcall_suspend_state_up.
2232         (save_infcall_control_state): Return infcall_control_state_up.
2233         * inferior.h (save_infcall_suspend_state)
2234         (save_infcall_control_state): Declare later.  Return unique
2235         pointers.
2236
2237 2018-09-17  Tom Tromey  <tom@tromey.com>
2238
2239         * infrun.c (struct stop_context): Declare constructor,
2240         destructor, "changed" method.
2241         (stop_context::stop_context): Rename from save_stop_context.
2242         (stop_context::~stop_context): Rename from
2243         release_stop_context_cleanup.
2244         (normal_stop): Update.
2245         (stop_context::changed): Rename from stop_context_changed.  Return
2246         bool.
2247
2248 2018-09-17  Tom Tromey  <tom@tromey.com>
2249
2250         * inferior.h (struct infcall_suspend_state_deleter): New.
2251         (infcall_suspend_state_up): New typedef.
2252         (struct infcall_control_state_deleter): New.
2253         (infcall_control_state_up): New typedef.
2254         (make_cleanup_restore_infcall_suspend_state)
2255         (make_cleanup_restore_infcall_control_state): Don't declare.
2256         * infcall.c (call_function_by_hand_dummy): Update.
2257         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2258         (make_cleanup_restore_infcall_suspend_state): Remove.
2259         (do_restore_infcall_control_state_cleanup)
2260         (make_cleanup_restore_infcall_control_state): Remove.
2261
2262 2018-09-17  Tom Tromey  <tom@tromey.com>
2263
2264         * gdbthread.h (struct thread_control_state): Add initializer.
2265         (class thread_info) <control>: Remove initializer.
2266         * inferior.h (struct inferior_control_state): Add initializer.
2267         (class inferior) <control>: Remove initializer.
2268         (exit_inferior_1): Update.
2269         * infrun.c (struct infcall_control_state): Add constructors.
2270         (save_infcall_control_state): Use new.
2271         (restore_infcall_control_state, discard_infcall_control_state):
2272         Use delete.
2273
2274 2018-09-17  Tom Tromey  <tom@tromey.com>
2275
2276         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2277         unique_ptr.
2278         <siginfo_data>: Now a unique_xmalloc_ptr.
2279         (save_infcall_suspend_state, restore_infcall_suspend_state)
2280         (discard_infcall_suspend_state)
2281         (get_infcall_suspend_state_regcache): Update.
2282
2283 2018-09-17  Tom Tromey  <tom@tromey.com>
2284
2285         * gdbthread.h (struct thread_suspend_state): Add initializers.
2286         (class thread_info) <suspend>: Remove initializer.
2287         * infrun.c (struct infcall_suspend_state): Add initializers.
2288         (save_infcall_suspend_state): Use new.
2289         (discard_infcall_suspend_state): Use delete.
2290
2291 2018-09-16  Tom Tromey  <tom@tromey.com>
2292
2293         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2294         Remove.
2295         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2296         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2297         (py_varobj_iter_new): Likewise.
2298         (py_varobj_get_iterator): Use gdbpy_ref.
2299
2300 2018-09-16  Tom Tromey  <tom@tromey.com>
2301
2302         * python/py-threadevent.c (py_get_event_thread): Simplify.
2303         * python/py-inferior.c (infpy_thread_from_thread_handle):
2304         Return immediately after calling thread_to_thread_object.  Use
2305         Py_RETURN_NONE.
2306         (thread_to_thread_object): Set the exception on a NULL return.
2307
2308 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2309
2310         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2311
2312 2018-09-16  Tom Tromey  <tom@tromey.com>
2313
2314         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2315         Remove.
2316
2317 2018-09-16  Tom Tromey  <tom@tromey.com>
2318
2319         * python/python-internal.h (thread_to_thread_object): Change
2320         return type.
2321         * python/py-inferior.c (thread_to_thread_object): Return a new
2322         reference.
2323         (infpy_thread_from_thread_handle): Update.
2324         * python/py-infthread.c (gdbpy_selected_thread): Update.
2325         * python/py-stopevent.c (create_stop_event_object): Update.
2326         * python/py-threadevent.c (py_get_event_thread): Return a new
2327         reference.
2328         (py_get_event_thread): Update.
2329         * python/py-event.h (py_get_event_thread): Change return type.
2330         * python/py-continueevent.c (create_continue_event_object):
2331         Update.
2332
2333 2018-09-16  Tom Tromey  <tom@tromey.com>
2334
2335         * python/py-progspace.c (pspy_get_objfiles): Update.
2336         * python/python-internal.h (objfile_to_objfile_object): Change
2337         return type.
2338         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2339         Update.
2340         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2341         Update.
2342         * python/python.c (gdbpy_get_current_objfile): Update.
2343         (gdbpy_objfiles): Update.
2344         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2345         Update.
2346         (objfile_to_objfile_object): Return a new reference.
2347         * python/py-symtab.c (stpy_get_objfile): Update.
2348         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2349         Update.
2350
2351 2018-09-16  Tom Tromey  <tom@tromey.com>
2352
2353         * python/py-inferior.c (infpy_get_progspace): Update.
2354         * python/python-internal.h (pspace_to_pspace_object): Change
2355         return type.
2356         * python/py-newobjfileevent.c
2357         (create_clear_objfiles_event_object): Update.
2358         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2359         Update.
2360         * python/python.c (gdbpy_get_current_progspace): Update.
2361         (gdbpy_progspaces): Update.
2362         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2363         reference.
2364         * python/py-objfile.c (objfpy_get_progspace): Update.
2365         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2366         Update.
2367
2368 2018-09-16  Tom Tromey  <tom@tromey.com>
2369
2370         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2371         (solib_name, block_for_pc, find_pc_line): New functions.
2372         (execute_unwinders): Update.
2373         * python/py-block.c (gdbpy_block_for_pc): Remove.
2374         * python/py-inferior.c (infpy_get_progspace): New function.
2375         (inferior_object_getset) <progspace>: Add.
2376         * python/py-progspace.c (pspy_objfiles): Rewrite.
2377         (pspy_solib_name, pspy_block_for_pc)
2378         (pspy_find_pc_line, pspy_is_valid): New functions.
2379         (progspace_object_methods): Add entries for solib_name,
2380         block_for_pc, find_pc_line, is_valid.
2381         * python/python-internal.h (gdbpy_block_for_pc)
2382         (build_objfiles_list): Don't declare.
2383         * python/python.c: Don't include solib.h.
2384         (gdbpy_solib_name, gdbpy_find_pc_line)
2385         (gdbpy_get_current_progspace, build_objfiles_list)
2386         (gdbpy_objfiles): Remove.
2387         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2388         solib_name, find_pc_line>: Remove entries.
2389
2390 2018-09-16  Tom Tromey  <tom@tromey.com>
2391
2392         * top.c (new_ui_command): Use GNU style for metasyntactic
2393         variables.
2394         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2395         variables.
2396         * maint.c (maintenance_translate_address): Remove "<>" around
2397         text.
2398         * interps.c (interpreter_exec_cmd): Use GNU style for
2399         metasyntactic variables.
2400         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2401         metasyntactic variables.
2402         * tracepoint.c (tfind_range_command): Use GNU style for
2403         metasyntactic variables.
2404         (tfind_outside_command): Likewise.
2405         (_initialize_tracepoint): Likewise.
2406         * remote.c (extended_remote_target::create_inferior): Use GNU
2407         style for metasyntactic variables.
2408         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2409         metasyntactic variables.
2410         (adi_assign_command): Likewise.
2411
2412 2018-09-16  Tom Tromey  <tom@tromey.com>
2413
2414         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2415         metasyntactic variables.  Print message if no disassembler options
2416         are available.
2417
2418 2018-09-15  Tom Tromey  <tom@tromey.com>
2419
2420         * infcmd.c (get_inferior_args): Return const char *.
2421         * inferior.h (get_inferior_args): Return type now const.
2422         * linux-tdep.c (linux_fill_prpsinfo): Update.
2423         * procfs.c (procfs_target::make_corefile_notes): Update.
2424
2425 2018-09-07  Tom Tromey  <tom@tromey.com>
2426
2427         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2428         inside the TRY.
2429
2430 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2431
2432         * nios2-tdep.c (nios2_type_align): New.
2433         (nios2_gdb_arch_init): Install type_align hook.
2434
2435 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2436
2437         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2438         type that is neither object file owned, nor gdbarch owned.
2439         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2440         gdbarch is non-NULL.
2441         (alloc_type_instance): Allocate non-objfile owned types on the
2442         gdbarch obstack.
2443         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2444         using TYPE_ALLOC to ensure memory is allocated on the correct
2445         obstack.
2446         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2447         obstack, or the gdbarch obstack.
2448         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2449
2450 2018-09-14  Tom Tromey  <tom@tromey.com>
2451
2452         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2453         block.
2454
2455 2018-09-14  Tom Tromey  <tom@tromey.com>
2456
2457         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2458
2459 2018-09-13  Tom Tromey  <tom@tromey.com>
2460
2461         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2462         static.
2463
2464 2018-09-13  Tom Tromey  <tom@tromey.com>
2465
2466         * exec.c (try_open_exec_file): Use std::string.
2467
2468 2018-09-13  Tom Tromey  <tom@tromey.com>
2469
2470         * utils.h (gdb_bfd_errmsg): Return std::string.
2471         * exec.c (exec_file_attach): Update.
2472         * compile/compile-object-load.c (compile_object_load): Update.
2473         * utils.c (gdb_bfd_errmsg): Return std::string.
2474
2475 2018-09-13  Tom Tromey  <tom@tromey.com>
2476
2477         * procfs.c (struct procinfo_deleter): New.
2478         (procinfo_up): New typedef.
2479         (do_destroy_procinfo_cleanup): Remove.
2480         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2481
2482 2018-09-13  Tom Tromey  <tom@tromey.com>
2483
2484         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2485
2486 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2487 2018-09-13  Tom Tromey  <tom@tromey.com>
2488
2489         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2490         (pspy_get_objfiles): New function.
2491         (progspace_object_methods): New.
2492         (pspace_object_type): Add tp_methods callback.
2493         * python/python-internal.h (build_objfiles_list): New
2494         declaration.
2495         * python/python.c (build_objfiles_list): New function.
2496         (gdbpy_objfiles): Implement using build_objfiles_list.
2497         * NEWS: Mention the Progspace.objfiles method.
2498
2499 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2500
2501         * python/py-inferior.c (infpy_get_progspace): New function.
2502         (inferior_object_getset): Add progspace property.
2503         * NEWS: Mention the new property.
2504
2505 2018-09-13  Tom Tromey  <tom@tromey.com>
2506
2507         PR rust/23650:
2508         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2509
2510 2018-09-13  Tom Tromey  <tom@tromey.com>
2511
2512         PR rust/23626:
2513         * rust-lang.c (rust_enum_variant): Now static.
2514         (rust_empty_enum_p): New function.
2515         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2516         Handle empty enum.
2517
2518 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2519
2520         * python/py-inferior.c (infpy_repr): New.
2521         (inferior_object_type): Register infpy_repr.
2522         * python/py-objfile.c (objfpy_repr): New.
2523         (objfile_object_type): Register objfpy_repr.
2524
2525 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2526
2527         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2528
2529 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2530
2531         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2532         typo.
2533
2534 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2535
2536         * common/common-utils.c: Don't include '<sys/stat.h>'.
2537         (is_regular_file): Move to...
2538         * common/filestuff.c (is_regular_file): ... here.
2539         * common/common-utils.h (is_regular_file): Move to...
2540         * common/filestuff.h (is_regular_file): ... here.
2541
2542 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2543
2544         * skip.c (debug_skip): New variable.
2545         (skiplist_entry::do_skip_file_p): Add debug output.
2546         (skiplist_entry::do_skip_gfile_p): Likewise.
2547         (skiplist_entry::skip_function_p): Likewise.
2548         (_initialize_step_skip): Create debug command.
2549         * NEWS: Mention set/show debug skip.
2550
2551 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2552
2553         * darwin-nat.c (should_disable_startup_with_shell):
2554         New function.
2555         (darwin_nat_target::create_inferior): Add call.
2556
2557 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2558
2559         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2560         inf_port, msg_state>: Initialize.
2561         (struct darwin_thread_info) <signaled, single_step>: Change
2562         type and initialize.
2563         (struct darwin_thread_info) <event>: Initialize.
2564
2565 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2566
2567         PR gdb/23555
2568         PR gdb/23558
2569         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2570         guesses.
2571
2572 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2573
2574         Revert:
2575         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2576
2577         PR gdb/23555
2578         PR gdb/23558
2579         * gnulib/aclocal.m4: Regenerate.
2580         * gnulib/config.in: Regenerate.
2581         * gnulib/configure: Regenerate.
2582         * gnulib/import/Makefile.am: Update.
2583         * gnulib/import/Makefile.in: Update.
2584         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2585         * gnulib/import/_Noreturn.h: ... this.
2586         * gnulib/import/alloca.in.h: Update.
2587         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2588         * gnulib/import/arg-nonnull.h: ... this.
2589         * gnulib/import/assure.h: Update.
2590         * gnulib/import/at-func.c: Update.
2591         * gnulib/import/basename-lgpl.c: Update.
2592         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2593         * gnulib/import/c++defs.h: ... this.
2594         * gnulib/import/canonicalize-lgpl.c: Update.
2595         * gnulib/import/cdefs.h: Update.
2596         * gnulib/import/chdir-long.c: Update.
2597         * gnulib/import/chdir-long.h: Update.
2598         * gnulib/import/cloexec.c: Update.
2599         * gnulib/import/cloexec.h: Update.
2600         * gnulib/import/close.c: Update.
2601         * gnulib/import/closedir.c: Update.
2602         * gnulib/import/config.charset: Update.
2603         * gnulib/import/dirent-private.h: Update.
2604         * gnulib/import/dirent.in.h: Update.
2605         * gnulib/import/dirfd.c: Update.
2606         * gnulib/import/dirname-lgpl.c: Update.
2607         * gnulib/import/dirname.h: Update.
2608         * gnulib/import/dosname.h: Update.
2609         * gnulib/import/dup-safer-flag.c: Update.
2610         * gnulib/import/dup-safer.c: Update.
2611         * gnulib/import/dup.c: Update.
2612         * gnulib/import/dup2.c: Update.
2613         * gnulib/import/errno.in.h: Update.
2614         * gnulib/import/error.c: Update.
2615         * gnulib/import/error.h: Update.
2616         * gnulib/import/exitfail.c: Update.
2617         * gnulib/import/exitfail.h: Update.
2618         * gnulib/import/extra/update-copyright: Update.
2619         * gnulib/import/fchdir.c: Update.
2620         * gnulib/import/fcntl.c: Update.
2621         * gnulib/import/fcntl.in.h: Update.
2622         * gnulib/import/fd-hook.c: Update.
2623         * gnulib/import/fd-hook.h: Update.
2624         * gnulib/import/fd-safer-flag.c: Update.
2625         * gnulib/import/fd-safer.c: Update.
2626         * gnulib/import/fdopendir.c: Update.
2627         * gnulib/import/filename.h: Update.
2628         * gnulib/import/filenamecat-lgpl.c: Update.
2629         * gnulib/import/filenamecat.h: Update.
2630         * gnulib/import/flexmember.h: Update.
2631         * gnulib/import/float+.h: Update.
2632         * gnulib/import/float.c: Update.
2633         * gnulib/import/float.in.h: Update.
2634         * gnulib/import/fnmatch.c: Update.
2635         * gnulib/import/fnmatch.in.h: Update.
2636         * gnulib/import/fnmatch_loop.c: Update.
2637         * gnulib/import/fpucw.h: Update.
2638         * gnulib/import/frexp.c: Update.
2639         * gnulib/import/frexpl.c: Update.
2640         * gnulib/import/fstat.c: Update.
2641         * gnulib/import/fstatat.c: Update.
2642         * gnulib/import/getcwd-lgpl.c: Update.
2643         * gnulib/import/getcwd.c: Update.
2644         * gnulib/import/getdtablesize.c: Update.
2645         * gnulib/import/getlogin_r.c: Update.
2646         * gnulib/import/getprogname.c: Update.
2647         * gnulib/import/getprogname.h: Update.
2648         * gnulib/import/gettext.h: Update.
2649         * gnulib/import/gettimeofday.c: Update.
2650         * gnulib/import/glob-libc.h: Update.
2651         * gnulib/import/glob.c: Update.
2652         * gnulib/import/glob.in.h: Update.
2653         * gnulib/import/glob_internal.h: Update.
2654         * gnulib/import/glob_pattern_p.c: Update.
2655         * gnulib/import/globfree.c: Update.
2656         * gnulib/import/hard-locale.c: Update.
2657         * gnulib/import/hard-locale.h: Update.
2658         * gnulib/import/intprops.h: Update.
2659         * gnulib/import/inttypes.in.h: Update.
2660         * gnulib/import/isnan.c: Update.
2661         * gnulib/import/isnand-nolibm.h: Update.
2662         * gnulib/import/isnand.c: Update.
2663         * gnulib/import/isnanl-nolibm.h: Update.
2664         * gnulib/import/isnanl.c: Update.
2665         * gnulib/import/itold.c: Update.
2666         * gnulib/import/libc-config.h: Update.
2667         * gnulib/import/limits.in.h: Update.
2668         * gnulib/import/localcharset.c: Update.
2669         * gnulib/import/localcharset.h: Update.
2670         * gnulib/import/localtime-buffer.c: Update.
2671         * gnulib/import/localtime-buffer.h: Update.
2672         * gnulib/import/lstat.c: Update.
2673         * gnulib/import/m4/00gnulib.m4: Update.
2674         * gnulib/import/m4/__inline.m4: Update.
2675         * gnulib/import/m4/absolute-header.m4: Update.
2676         * gnulib/import/m4/alloca.m4: Update.
2677         * gnulib/import/m4/builtin-expect.m4: Update.
2678         * gnulib/import/m4/canonicalize.m4: Update.
2679         * gnulib/import/m4/chdir-long.m4: Update.
2680         * gnulib/import/m4/close.m4: Update.
2681         * gnulib/import/m4/closedir.m4: Update.
2682         * gnulib/import/m4/configmake.m4: Update.
2683         * gnulib/import/m4/d-ino.m4: Update.
2684         * gnulib/import/m4/d-type.m4: Update.
2685         * gnulib/import/m4/dirent_h.m4: Update.
2686         * gnulib/import/m4/dirfd.m4: Update.
2687         * gnulib/import/m4/dirname.m4: Update.
2688         * gnulib/import/m4/double-slash-root.m4: Update.
2689         * gnulib/import/m4/dup.m4: Update.
2690         * gnulib/import/m4/dup2.m4: Update.
2691         * gnulib/import/m4/eealloc.m4: Update.
2692         * gnulib/import/m4/environ.m4: Update.
2693         * gnulib/import/m4/errno_h.m4: Update.
2694         * gnulib/import/m4/error.m4: Update.
2695         * gnulib/import/m4/exponentd.m4: Update.
2696         * gnulib/import/m4/exponentl.m4: Update.
2697         * gnulib/import/m4/extensions.m4: Update.
2698         * gnulib/import/m4/extern-inline.m4: Update.
2699         * gnulib/import/m4/fchdir.m4: Update.
2700         * gnulib/import/m4/fcntl-o.m4: Update.
2701         * gnulib/import/m4/fcntl.m4: Update.
2702         * gnulib/import/m4/fcntl_h.m4: Update.
2703         * gnulib/import/m4/fdopendir.m4: Update.
2704         * gnulib/import/m4/filenamecat.m4: Update.
2705         * gnulib/import/m4/flexmember.m4: Update.
2706         * gnulib/import/m4/float_h.m4: Update.
2707         * gnulib/import/m4/fnmatch.m4: Update.
2708         * gnulib/import/m4/fnmatch_h.m4: Update.
2709         * gnulib/import/m4/fpieee.m4: Update.
2710         * gnulib/import/m4/frexp.m4: Update.
2711         * gnulib/import/m4/frexpl.m4: Update.
2712         * gnulib/import/m4/fstat.m4: Update.
2713         * gnulib/import/m4/fstatat.m4: Update.
2714         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2715         * gnulib/import/m4/getcwd-path-max.m4: Update.
2716         * gnulib/import/m4/getcwd.m4: Update.
2717         * gnulib/import/m4/getdtablesize.m4: Update.
2718         * gnulib/import/m4/getlogin.m4: Update.
2719         * gnulib/import/m4/getlogin_r.m4: Update.
2720         * gnulib/import/m4/getpagesize.m4: Update.
2721         * gnulib/import/m4/getprogname.m4: Update.
2722         * gnulib/import/m4/gettimeofday.m4: Update.
2723         * gnulib/import/m4/glibc21.m4: Update.
2724         * gnulib/import/m4/glob.m4: Update.
2725         * gnulib/import/m4/glob_h.m4: Update.
2726         * gnulib/import/m4/gnulib-cache.m4: Update.
2727         * gnulib/import/m4/gnulib-common.m4: Update.
2728         * gnulib/import/m4/gnulib-comp.m4: Update.
2729         * gnulib/import/m4/gnulib-tool.m4: Update.
2730         * gnulib/import/m4/hard-locale.m4: Update.
2731         * gnulib/import/m4/include_next.m4: Update.
2732         * gnulib/import/m4/inttypes-pri.m4: Update.
2733         * gnulib/import/m4/inttypes.m4: Update.
2734         * gnulib/import/m4/isnand.m4: Update.
2735         * gnulib/import/m4/isnanl.m4: Update.
2736         * gnulib/import/m4/largefile.m4: Update.
2737         * gnulib/import/m4/limits-h.m4: Update.
2738         * gnulib/import/m4/localcharset.m4: Update.
2739         * gnulib/import/m4/locale-fr.m4: Update.
2740         * gnulib/import/m4/locale-ja.m4: Update.
2741         * gnulib/import/m4/locale-zh.m4: Update.
2742         * gnulib/import/m4/localtime-buffer.m4: Update.
2743         * gnulib/import/m4/longlong.m4: Update.
2744         * gnulib/import/m4/lstat.m4: Update.
2745         * gnulib/import/m4/malloc.m4: Update.
2746         * gnulib/import/m4/malloca.m4: Update.
2747         * gnulib/import/m4/math_h.m4: Update.
2748         * gnulib/import/m4/mbrtowc.m4: Update.
2749         * gnulib/import/m4/mbsinit.m4: Update.
2750         * gnulib/import/m4/mbsrtowcs.m4: Update.
2751         * gnulib/import/m4/mbstate_t.m4: Update.
2752         * gnulib/import/m4/memchr.m4: Update.
2753         * gnulib/import/m4/memmem.m4: Update.
2754         * gnulib/import/m4/mempcpy.m4: Update.
2755         * gnulib/import/m4/memrchr.m4: Update.
2756         * gnulib/import/m4/mkdir.m4: Update.
2757         * gnulib/import/m4/mkstemp.m4: Update.
2758         * gnulib/import/m4/mmap-anon.m4: Update.
2759         * gnulib/import/m4/mode_t.m4: Update.
2760         * gnulib/import/m4/msvc-inval.m4: Update.
2761         * gnulib/import/m4/msvc-nothrow.m4: Update.
2762         * gnulib/import/m4/multiarch.m4: Update.
2763         * gnulib/import/m4/nocrash.m4: Update.
2764         * gnulib/import/m4/off_t.m4: Update.
2765         * gnulib/import/m4/onceonly.m4: Update.
2766         * gnulib/import/m4/open-cloexec.m4: Update.
2767         * gnulib/import/m4/open.m4: Update.
2768         * gnulib/import/m4/openat.m4: Update.
2769         * gnulib/import/m4/opendir.m4: Update.
2770         * gnulib/import/m4/pathmax.m4: Update.
2771         * gnulib/import/m4/rawmemchr.m4: Update.
2772         * gnulib/import/m4/readdir.m4: Update.
2773         * gnulib/import/m4/readlink.m4: Update.
2774         * gnulib/import/m4/realloc.m4: Update.
2775         * gnulib/import/m4/rename.m4: Update.
2776         * gnulib/import/m4/rewinddir.m4: Update.
2777         * gnulib/import/m4/rmdir.m4: Update.
2778         * gnulib/import/m4/save-cwd.m4: Update.
2779         * gnulib/import/m4/secure_getenv.m4: Update.
2780         * gnulib/import/m4/setenv.m4: Update.
2781         * gnulib/import/m4/signal_h.m4: Update.
2782         * gnulib/import/m4/ssize_t.m4: Update.
2783         * gnulib/import/m4/stat-time.m4: Update.
2784         * gnulib/import/m4/stat.m4: Update.
2785         * gnulib/import/m4/std-gnu11.m4: Update.
2786         * gnulib/import/m4/stdbool.m4: Update.
2787         * gnulib/import/m4/stddef_h.m4: Update.
2788         * gnulib/import/m4/stdint.m4: Update.
2789         * gnulib/import/m4/stdio_h.m4: Update.
2790         * gnulib/import/m4/stdlib_h.m4: Update.
2791         * gnulib/import/m4/strchrnul.m4: Update.
2792         * gnulib/import/m4/strdup.m4: Update.
2793         * gnulib/import/m4/strerror.m4: Update.
2794         * gnulib/import/m4/string_h.m4: Update.
2795         * gnulib/import/m4/strstr.m4: Update.
2796         * gnulib/import/m4/strtok_r.m4: Update.
2797         * gnulib/import/m4/sys_socket_h.m4: Update.
2798         * gnulib/import/m4/sys_stat_h.m4: Update.
2799         * gnulib/import/m4/sys_time_h.m4: Update.
2800         * gnulib/import/m4/sys_types_h.m4: Update.
2801         * gnulib/import/m4/tempname.m4: Update.
2802         * gnulib/import/m4/time_h.m4: Update.
2803         * gnulib/import/m4/unistd-safer.m4: Update.
2804         * gnulib/import/m4/unistd_h.m4: Update.
2805         * gnulib/import/m4/warn-on-use.m4: Update.
2806         * gnulib/import/m4/wchar_h.m4: Update.
2807         * gnulib/import/m4/wchar_t.m4: Update.
2808         * gnulib/import/m4/wctype_h.m4: Update.
2809         * gnulib/import/m4/wint_t.m4: Update.
2810         * gnulib/import/malloc.c: Update.
2811         * gnulib/import/malloc/scratch_buffer.h: Update.
2812         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2813         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2814         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2815         * gnulib/import/malloca.c: Update.
2816         * gnulib/import/malloca.h: Update.
2817         * gnulib/import/malloca.valgrind: Update.
2818         * gnulib/import/math.in.h: Update.
2819         * gnulib/import/mbrtowc.c: Update.
2820         * gnulib/import/mbsinit.c: Update.
2821         * gnulib/import/mbsrtowcs-impl.h: Update.
2822         * gnulib/import/mbsrtowcs-state.c: Update.
2823         * gnulib/import/mbsrtowcs.c: Update.
2824         * gnulib/import/memchr.c: Update.
2825         * gnulib/import/memmem.c: Update.
2826         * gnulib/import/mempcpy.c: Update.
2827         * gnulib/import/memrchr.c: Update.
2828         * gnulib/import/mkdir.c: Update.
2829         * gnulib/import/mkstemp.c: Update.
2830         * gnulib/import/msvc-inval.c: Update.
2831         * gnulib/import/msvc-inval.h: Update.
2832         * gnulib/import/msvc-nothrow.c: Update.
2833         * gnulib/import/msvc-nothrow.h: Update.
2834         * gnulib/import/open.c: Update.
2835         * gnulib/import/openat-die.c: Update.
2836         * gnulib/import/openat-priv.h: Update.
2837         * gnulib/import/openat-proc.c: Update.
2838         * gnulib/import/openat.c: Update.
2839         * gnulib/import/openat.h: Update.
2840         * gnulib/import/opendir.c: Update.
2841         * gnulib/import/pathmax.h: Update.
2842         * gnulib/import/pipe-safer.c: Update.
2843         * gnulib/import/rawmemchr.c: Update.
2844         * gnulib/import/readdir.c: Update.
2845         * gnulib/import/readlink.c: Update.
2846         * gnulib/import/realloc.c: Update.
2847         * gnulib/import/ref-add.sin: Update.
2848         * gnulib/import/ref-del.sin: Update.
2849         * gnulib/import/rename.c: Update.
2850         * gnulib/import/rewinddir.c: Update.
2851         * gnulib/import/rmdir.c: Update.
2852         * gnulib/import/same-inode.h: Update.
2853         * gnulib/import/save-cwd.c: Update.
2854         * gnulib/import/save-cwd.h: Update.
2855         * gnulib/import/scratch_buffer.h: Update.
2856         * gnulib/import/secure_getenv.c: Update.
2857         * gnulib/import/setenv.c: Update.
2858         * gnulib/import/signal.in.h: Update.
2859         * gnulib/import/stat-time.c: Update.
2860         * gnulib/import/stat-time.h: Update.
2861         * gnulib/import/stat-w32.c: Update.
2862         * gnulib/import/stat-w32.h: Update.
2863         * gnulib/import/stat.c: Update.
2864         * gnulib/import/stdbool.in.h: Update.
2865         * gnulib/import/stddef.in.h: Update.
2866         * gnulib/import/stdint.in.h: Update.
2867         * gnulib/import/stdio.in.h: Update.
2868         * gnulib/import/stdlib.in.h: Update.
2869         * gnulib/import/str-two-way.h: Update.
2870         * gnulib/import/strchrnul.c: Update.
2871         * gnulib/import/strdup.c: Update.
2872         * gnulib/import/streq.h: Update.
2873         * gnulib/import/strerror-override.c: Update.
2874         * gnulib/import/strerror-override.h: Update.
2875         * gnulib/import/strerror.c: Update.
2876         * gnulib/import/string.in.h: Update.
2877         * gnulib/import/stripslash.c: Update.
2878         * gnulib/import/strnlen1.c: Update.
2879         * gnulib/import/strnlen1.h: Update.
2880         * gnulib/import/strstr.c: Update.
2881         * gnulib/import/strtok_r.c: Update.
2882         * gnulib/import/sys_stat.in.h: Update.
2883         * gnulib/import/sys_time.in.h: Update.
2884         * gnulib/import/sys_types.in.h: Update.
2885         * gnulib/import/tempname.c: Update.
2886         * gnulib/import/tempname.h: Update.
2887         * gnulib/import/time.in.h: Update.
2888         * gnulib/import/unistd--.h: Update.
2889         * gnulib/import/unistd-safer.h: Update.
2890         * gnulib/import/unistd.in.h: Update.
2891         * gnulib/import/unsetenv.c: Update.
2892         * gnulib/import/verify.h: Update.
2893         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2894         * gnulib/import/wchar.in.h: Update.
2895         * gnulib/import/wctype.in.h: Update.
2896         * gnulib/import/xalloc-oversized.h: Update.
2897         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2898         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2899
2900 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2901
2902         * record-btrace.c (get_thread_current_frame): Remove
2903         old_inferior_ptid.
2904
2905 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2906
2907         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2908         with check_tag to 1 if and only if the type is tagged and the
2909         component being searched cannot been found in the current
2910         view. Otherwise, always call ada_to_fixed_type with
2911         check_tag to 0.
2912
2913 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2914
2915         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2916         declaration.
2917         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2918         * ada-varobj.c (ada_varobj_get_number_of_children,
2919         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2920
2921 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2922
2923         * ada-valprint.c (ada_value_print): Use type instead of
2924         enclosing type.
2925
2926 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2927
2928         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2929         an array of access to unconstrained array.
2930
2931 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2932
2933         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2934         (ada_check_typedef): Use it.
2935
2936 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2937
2938         * ada-varobj.c (ada_varobj_describe_struct_child)
2939         (ada_varobj_describe_child): Handle union case like struct one.
2940
2941 2018-09-10  Tom Tromey  <tom@tromey.com>
2942
2943         PR python/18380:
2944         * python/python.c (_initialize_python): Make example in "python"
2945         help work in Python 3.
2946
2947 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2948
2949         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2950         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2951         $(EXEEXT) to the script, as it is not a program.
2952
2953 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2954
2955         * python/py-prettyprint.c (pretty_print_one_value): Return
2956         gdbpy_ref<>.
2957         (print_string_repr): Adjust.
2958         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2959         * python/python-internal.h (apply_varobj_pretty_printer): Return
2960         gdbpy_ref<>.
2961         * varobj.c (varobj_value_get_print_value): Adjust.
2962
2963 2018-09-08  Tom Tromey  <tom@tromey.com>
2964
2965         PR python/16047:
2966         * python/py-prettyprint.c (pretty_print_one_value): Check for
2967         to_string method.
2968
2969 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2970
2971         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2972         replace_operator_with_call.
2973
2974 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2975
2976         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2977
2978 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2979
2980         * ada-typeprint.c (print_range): Print the bounds using TYPE
2981         rather than its TYPE_TARGET_TYPE.
2982
2983 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2984
2985         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2986         call to ada_to_fixed_value_create.
2987
2988 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2989
2990         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2991
2992 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2993
2994         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2995         by calls to error.
2996
2997 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2998
2999         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3000         Move update of loop variable "fi".
3001
3002 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3003
3004         * ada-lang.c (value_assign_to_component): In the case of
3005         big-endian targets, extract the bits of the given VAL
3006         using an src_offset of zero if container is not a scalar.
3007
3008 2018-09-06  Simon Ser  <contact@emersion.fr>
3009
3010         PR gdb/23105
3011         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3012         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3013         * fbsd-tdep.c (fbsd_make_note_desc): New.
3014         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3015         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3016         * target.h (enum target_object) Add FreeBSD-specific
3017         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3018
3019 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3020
3021         * compile/compile-c.h (generate_c_for_variable_locations):
3022         Change reference to pointer.
3023         * compile/compile-c-support.c (compile_program) <compute>:
3024         Likewise.
3025         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3026         (generate_c_for_for_one_variable): Likewise
3027         (generate_c_for_variable_locations): Likewise
3028         * compile/compile-c-types.c (compile_c_instance::convert_type):
3029         Likewise
3030         * compile/compile-cplus-symbols.c (convert_one_symbol):
3031         std::move the scope passed to enter_scope.
3032         * compile/compile-cplus-types.c
3033         (compile_cplus_instance::enter_scope): Make parameter
3034         rvalue-reference.
3035         (compile_cplus_instance::new_scope): Change reference to
3036         pointer.
3037         (compile_cplus_instance::convert_type): Likewise
3038         (compile_cplus_convert_typedef): std::move the scope passed to
3039         enter_scope.
3040         (compile_cplus_convert_struct_or_union): Likewise.
3041         (compile_cplus_convert_enum): Likewise.
3042         (compile_cplus_convert_namespace): Likewise.
3043         * compile/compile-cplus.h (compile_cplus_instance)
3044         <enter_scope>: Make parameter rvalue-reference.
3045         * compile/compile-internal.h (compile_instance)
3046         <get_cached_type>: Likewise
3047         * compile/compile-loc2c.c (push): Likewise
3048         (pushf): Likewise
3049         (unary): Likewise
3050         (binary): Likewise
3051         (print_label): Likewise
3052         (pushf_register_address): Likewise
3053         (pushf_register): Likewise
3054         (do_compile_dwarf_expr_to_c): Likewise
3055         (compile_dwarf_expr_to_c): Likewise
3056         (compile_dwarf_bounds_to_c): Likewise
3057         * compile/compile.c (compile_instance::get_cached_type):
3058         Likewise
3059         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3060         (compile_dwarf_bounds_to_c): Likewise
3061         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3062         (dwarf2_compile_property_to_c): Likewise
3063         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3064         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3065         Likewise
3066
3067 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3068
3069         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3070         * tui/tui-data.c (init_content_element): Don't initialize it.
3071
3072 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3073
3074         * tui/tui-data.h (struct tui_win_info)
3075         <detail::opaque>: Remove.
3076         * tui/tui-data.c (init_win_info): Remove assignment.
3077
3078 2018-09-05  Tom Tromey  <tom@tromey.com>
3079
3080         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3081         -Wformat-nonliteral.
3082         * target-float.c (host_float_ops<T>::to_string)
3083         (host_float_ops<T>::from_string): Use
3084         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3085         * configure: Rebuild.
3086
3087 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3088
3089         * printcmd.c (printf_c_string): Use
3090         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3091         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3092
3093 2018-09-05  Tom Tromey  <tom@tromey.com>
3094
3095         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3096
3097 2018-09-05  Tom de Vries  <tdevries@suse.de>
3098
3099         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3100         with resolve_abstract_p == true.
3101         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3102         defaulting to false. Propagate resolve_abstract_p to
3103         dwarf2_fetch_die_loc_sect_off.
3104         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3105         parameter, defaulting to false.
3106         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3107         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3108         parameter.
3109         * dwarf2read.h (struct die_info): Forward-declare.
3110         (die_info_ptr): New typedef.
3111         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3112
3113 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3114
3115         GDB 8.2 released.
3116
3117 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3118             Pedro Alves  <palves@redhat.com>
3119
3120         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3121         "aclocal-m4-deps.mk".  Include file here.
3122         $(srcdir)/aclocal.m4: Add "configure.ac".
3123         * gnulib/aclocal-m4-deps.mk: New file.
3124         * gnulib/update-gnulib.sh: Automatically update
3125         "aclocal-m4-deps.mk".
3126
3127 2018-09-04  Tom Tromey  <tom@tromey.com>
3128
3129         * configure: Rebuild.
3130         * configure.ac: Remove multi-ice code.
3131
3132 2018-09-04  Tom Tromey  <tom@tromey.com>
3133
3134         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3135         (ada-exp.o): Update.
3136
3137 2018-09-04  Tom Tromey  <tom@tromey.com>
3138
3139         * Makefile.in (printcmd.o, target-float.o): Remove.
3140         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3141
3142 2018-09-04  Tom Tromey  <tom@tromey.com>
3143
3144         * gnulib/Makefile.in: Remove obsolete comment.
3145         * Makefile.in: Remove obsolete comment.
3146
3147 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3148
3149         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3150         line with '+'.
3151
3152 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3153
3154         * riscv-tdep.c: Add 'prologue-value.h' include.
3155         (struct riscv_unwind_cache): New struct.
3156         (riscv_debug_unwinder): New global.
3157         (riscv_scan_prologue): Update arguments, capture register details
3158         from prologue scan.
3159         (riscv_skip_prologue): Reformat arguments line, move end of
3160         prologue calculation into riscv_scan_prologue.
3161         (riscv_frame_cache): Update return type, create
3162         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3163         details.
3164         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3165         (riscv_frame_prev_register): Use the trad_frame within the
3166         riscv_unwind_cache.
3167         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3168         flag.
3169
3170 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3171
3172         * trad-frame.h (trad_frame_set_realreg): Declare.
3173         (trad_frame_set_addr): Declare.
3174         * trad-frame.c (trad_frame_set_realreg): Define new function.
3175         (trad_frame_set_addr): Define new function.
3176         (trad_frame_set_reg_realreg): Use new function.
3177         (trad_frame_set_reg_addr): Use new function.
3178
3179 2018-09-01  Keith Seitz  <keiths@redhat.com>
3180
3181         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3182         pulongest instead of "%lld".
3183         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3184         ATTRIBUTE_UNUSED.
3185
3186 2018-08-31  Tom Tromey  <tom@tromey.com>
3187
3188         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3189         variant part type.
3190
3191 2018-08-31  Pedro Alves  <palves@redhat.com>
3192
3193         * gdbarch.h: Regenerate.
3194
3195 2018-08-31  Pedro Alves  <palves@redhat.com>
3196
3197         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3198         * target.h (Hardware watchpoint interfaces): Describe
3199         continuable/steppable/non-steppable watchpoints.
3200         * gdbarch.h, gdbarch.c: Regenerate.
3201
3202 2018-08-31  Pedro Alves  <palves@redhat.com>
3203
3204         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3205         Delete.
3206         * s390-linux-nat.c
3207         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3208         * target.h (target_ops::have_continuable_watchpoint): Delete.
3209         (target_have_continuable_watchpoint): Delete.
3210         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3211         * target-delegates.c: Regenerate.
3212
3213 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3214
3215         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3216         the files present in "gnulib/import/m4/".
3217
3218 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3219
3220         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3221         c.sw, c.swsp, and c.sdsp.
3222
3223 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3224
3225         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3226         (riscv_read_misa_reg): Don't cache value read into inferior data.
3227         (riscv_new_inferior_data): Delete.
3228         (riscv_inferior_data_cleanup): Delete.
3229         (riscv_inferior_data): Delete.
3230         (riscv_invalidate_inferior_data): Delete.
3231         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3232
3233 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3234
3235         * compile/compile-cplus-types.c
3236         (compile_cplus_instance::leave_scope): Take the address of scope
3237         object.
3238         (compile_cplus_instance::convert_qualified_base): Compare quals
3239         to 0.
3240
3241 2018-08-30  Keith Seitz  <keiths@redhat.com>
3242
3243         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3244         Use "%s" and host_address_to_string instead of "%p" in printf.
3245
3246 2018-08-29  Keith Seitz  <keiths@redhat.com>
3247
3248         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3249         and compile-cplus-types.c.
3250         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3251         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3252         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3253         Declare.
3254         * compile/compile-c-support.c: Include compile-cplus.h.
3255         (load_libcompile): Templatize.
3256         (get_compile_context): "New" function.
3257         (c_get_compile_context): Use get_compile_context.
3258         (cplus_get_compile_context): New function.
3259         (cplus_push_user_expression, cplus_pop_user_expression)
3260         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3261         (cplus_compute_program): Define new structs/functions.
3262         * compile/compile-cplus-symmbols.c: New file.
3263         * compile/compile-cplus-types.c: New file.
3264         * compile/compile-cplus.h: New file.
3265         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3266         Declare.
3267         * compile/compile-object-load.c (get_out_value_type): Use
3268         strncmp_iw when comparing symbol names.
3269         (compile_object_load): Add mst_bss and mst_data.
3270         * compile/compile.c (_initialize_compile): Remove
3271         -Wno-implicit-function-declaration from `compile_args'.
3272         * compile/gcc-cp-plugin.h: New file.
3273         * NEWS: Mention C++ compile support and new debug options.
3274
3275 2018-08-29  Keith Seitz  <keiths@redhat.com>
3276
3277         * linespec.c (collect_info::add_symbol): Make virtual.
3278         (struct symbol_searcher_collect_info): New struct.
3279         (symbol_searcher::find_all_symbols): New method.
3280         * symtab.h (class symbol_searcher): New class.
3281
3282 2018-08-29  Keith Seitz  <keiths@redhat.com>
3283
3284         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3285         Change to vector of block_symbol.  Update all users.
3286         (struct collect_info) <symbols>: Likewise.
3287         (collect_info::add_symbol): Take block_symbol as argument.
3288         Update all callers.
3289         (decode_compound_collector) <m_symbols>: Change type to vector
3290         of block_symbol.  Update all users.
3291         (decode_compound_collector::operator ()): Change parameter type
3292         to block_symbol.
3293         (find_method, find_function_symbols, find_linespec_symbols)
3294         (find_label_symbols_in_block, find_label_symbols): Change symbol
3295         vectors to block_symbol vectors.
3296         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3297         block_symbol.
3298
3299 2018-08-29  Keith Seitz  <keiths@redhat.com>
3300
3301         * linespec.c (symbolp): Remove typedef and VEC definitions.
3302         (bound_minimal_symbol_d): Likewise.
3303
3304 2018-08-29  Keith Seitz  <keiths@redhat.com>
3305
3306         * linespec.c (decode_compound_collector::decode_compound_collector):
3307         Remove initialization for `m_symtabs'.
3308         (decode_compound_collector::release_symbols): Change return type
3309         to std::vector.  Update all callers.
3310         (class decode_compound_collector) <m_symbols>: Change type to
3311         std::vector.
3312         (lookup_prefix_sym): Change return type to std::vector.  Update all
3313         callers.
3314         (compare_symbols): Remove.
3315         (std_compare_symbols): Rename to `compare_symbols'.
3316         (find_method): Change `sym_classes' parameter to std::vector.
3317         Update all callers.  Use std::sort to sort sym_classes.
3318         (find_linespec_symbols): Remove cleanup.
3319
3320 2018-08-29  Keith Seitz  <keiths@redhat.com>
3321
3322         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3323         std::vector.  Update all users.
3324         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3325         (struct collect_info) <minimal_symbols>: Likewise.
3326         (compare_msymbols): Return bool.  Change parameters to const
3327         bound_minimal_symbol references.
3328         (find_method, find_function_symbols, find_linespec_symbols): Change
3329         `minsyms' parameter to std::vector.  Update all callers.
3330
3331 2018-08-29  Keith Seitz  <keiths@redhat.com>
3332
3333         * linespec.c (struct linespec) <label_symbols>: Change type to
3334         std::vector.  Update all users.
3335         (find_label_symbols_in_block): Change `result' parameter to
3336         std::vector.  Update all callers.
3337         (find_label_symbols): Return std::vector.  Update all callers.
3338
3339 2018-08-29  Keith Seitz  <keiths@redhat.com>
3340
3341         * linespec.c (struct linespec) <function_symbols>: Change type to
3342         std::vector.  Update all users.
3343         (struct collect_info) <function_symbols>: Likewise.
3344         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3345         (std_compare_symbols): New function.
3346         (find_method, find_function_symbols, find_linespec_symbols)
3347         (find_label_symbols_in_block): Change `symbols' parameter to
3348         std::vector.  Update all callers.
3349         (find_label_symbols): Likewise for `function_symbols' and
3350         `label_funcs_ret'.
3351
3352 2018-08-29  Keith Seitz  <keiths@redhat.com>
3353
3354         * linespec.c (symtab_vector_up): Define.
3355         (struct linespec) <file_symtabs>: Change type to std::vector *.
3356         Update all uses.
3357         (struct collect_info) <file_symtabs>: Likewise.
3358         (collect_symtabs_from_filename): Return symtab_vector_up.
3359         Update all callers.
3360         (decode_objc): Remove cleanup.
3361         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3362         (symtab_collector::release_symtabs): Return symtab_vector_up.
3363         Update all callers.
3364         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3365         Update all users.
3366         (collect_symtabs_from_filename, symtabs_from_filename): Return
3367         symtab_vector_up.  Update all callers.
3368
3369 2018-08-29  Tom Tromey  <tom@tromey.com>
3370
3371         * csky-tdep.c (csky_analyze_prologue): Use
3372         core_addr_to_string_nz.
3373
3374 2018-08-29  Tom Tromey  <tom@tromey.com>
3375
3376         * windows-nat.c (struct xlate_exception) <them>: Change type to
3377         DWORD.
3378         (xlate): Fix formatting.  Remove last entry.
3379         (struct xlate_exception, xlate): Comment out.
3380         (windows_nat_target::resume): Use ranged for.
3381
3382 2018-08-29  Jim Wilson  <jimw@sifive.com>
3383
3384         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3385         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3386         of NT_PRFPREG.
3387         (riscv_linux_nat_target::store_registers): Likewise.
3388
3389 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3390
3391         PR gdb/23555
3392         PR gdb/23558
3393         * gnulib/aclocal.m4: Regenerate.
3394         * gnulib/config.in: Regenerate.
3395         * gnulib/configure: Regenerate.
3396         * gnulib/import/Makefile.am: Update.
3397         * gnulib/import/Makefile.in: Update.
3398         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3399         * gnulib/import/_Noreturn.h: ... this.
3400         * gnulib/import/alloca.in.h: Update.
3401         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3402         * gnulib/import/arg-nonnull.h: ... this.
3403         * gnulib/import/assure.h: Update.
3404         * gnulib/import/at-func.c: Update.
3405         * gnulib/import/basename-lgpl.c: Update.
3406         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3407         * gnulib/import/c++defs.h: ... this.
3408         * gnulib/import/canonicalize-lgpl.c: Update.
3409         * gnulib/import/cdefs.h: Update.
3410         * gnulib/import/chdir-long.c: Update.
3411         * gnulib/import/chdir-long.h: Update.
3412         * gnulib/import/cloexec.c: Update.
3413         * gnulib/import/cloexec.h: Update.
3414         * gnulib/import/close.c: Update.
3415         * gnulib/import/closedir.c: Update.
3416         * gnulib/import/config.charset: Update.
3417         * gnulib/import/dirent-private.h: Update.
3418         * gnulib/import/dirent.in.h: Update.
3419         * gnulib/import/dirfd.c: Update.
3420         * gnulib/import/dirname-lgpl.c: Update.
3421         * gnulib/import/dirname.h: Update.
3422         * gnulib/import/dosname.h: Update.
3423         * gnulib/import/dup-safer-flag.c: Update.
3424         * gnulib/import/dup-safer.c: Update.
3425         * gnulib/import/dup.c: Update.
3426         * gnulib/import/dup2.c: Update.
3427         * gnulib/import/errno.in.h: Update.
3428         * gnulib/import/error.c: Update.
3429         * gnulib/import/error.h: Update.
3430         * gnulib/import/exitfail.c: Update.
3431         * gnulib/import/exitfail.h: Update.
3432         * gnulib/import/extra/update-copyright: Update.
3433         * gnulib/import/fchdir.c: Update.
3434         * gnulib/import/fcntl.c: Update.
3435         * gnulib/import/fcntl.in.h: Update.
3436         * gnulib/import/fd-hook.c: Update.
3437         * gnulib/import/fd-hook.h: Update.
3438         * gnulib/import/fd-safer-flag.c: Update.
3439         * gnulib/import/fd-safer.c: Update.
3440         * gnulib/import/fdopendir.c: Update.
3441         * gnulib/import/filename.h: Update.
3442         * gnulib/import/filenamecat-lgpl.c: Update.
3443         * gnulib/import/filenamecat.h: Update.
3444         * gnulib/import/flexmember.h: Update.
3445         * gnulib/import/float+.h: Update.
3446         * gnulib/import/float.c: Update.
3447         * gnulib/import/float.in.h: Update.
3448         * gnulib/import/fnmatch.c: Update.
3449         * gnulib/import/fnmatch.in.h: Update.
3450         * gnulib/import/fnmatch_loop.c: Update.
3451         * gnulib/import/fpucw.h: Update.
3452         * gnulib/import/frexp.c: Update.
3453         * gnulib/import/frexpl.c: Update.
3454         * gnulib/import/fstat.c: Update.
3455         * gnulib/import/fstatat.c: Update.
3456         * gnulib/import/getcwd-lgpl.c: Update.
3457         * gnulib/import/getcwd.c: Update.
3458         * gnulib/import/getdtablesize.c: Update.
3459         * gnulib/import/getlogin_r.c: Update.
3460         * gnulib/import/getprogname.c: Update.
3461         * gnulib/import/getprogname.h: Update.
3462         * gnulib/import/gettext.h: Update.
3463         * gnulib/import/gettimeofday.c: Update.
3464         * gnulib/import/glob-libc.h: Update.
3465         * gnulib/import/glob.c: Update.
3466         * gnulib/import/glob.in.h: Update.
3467         * gnulib/import/glob_internal.h: Update.
3468         * gnulib/import/glob_pattern_p.c: Update.
3469         * gnulib/import/globfree.c: Update.
3470         * gnulib/import/hard-locale.c: Update.
3471         * gnulib/import/hard-locale.h: Update.
3472         * gnulib/import/intprops.h: Update.
3473         * gnulib/import/inttypes.in.h: Update.
3474         * gnulib/import/isnan.c: Update.
3475         * gnulib/import/isnand-nolibm.h: Update.
3476         * gnulib/import/isnand.c: Update.
3477         * gnulib/import/isnanl-nolibm.h: Update.
3478         * gnulib/import/isnanl.c: Update.
3479         * gnulib/import/itold.c: Update.
3480         * gnulib/import/libc-config.h: Update.
3481         * gnulib/import/limits.in.h: Update.
3482         * gnulib/import/localcharset.c: Update.
3483         * gnulib/import/localcharset.h: Update.
3484         * gnulib/import/localtime-buffer.c: Update.
3485         * gnulib/import/localtime-buffer.h: Update.
3486         * gnulib/import/lstat.c: Update.
3487         * gnulib/import/m4/00gnulib.m4: Update.
3488         * gnulib/import/m4/__inline.m4: Update.
3489         * gnulib/import/m4/absolute-header.m4: Update.
3490         * gnulib/import/m4/alloca.m4: Update.
3491         * gnulib/import/m4/builtin-expect.m4: Update.
3492         * gnulib/import/m4/canonicalize.m4: Update.
3493         * gnulib/import/m4/chdir-long.m4: Update.
3494         * gnulib/import/m4/close.m4: Update.
3495         * gnulib/import/m4/closedir.m4: Update.
3496         * gnulib/import/m4/configmake.m4: Update.
3497         * gnulib/import/m4/d-ino.m4: Update.
3498         * gnulib/import/m4/d-type.m4: Update.
3499         * gnulib/import/m4/dirent_h.m4: Update.
3500         * gnulib/import/m4/dirfd.m4: Update.
3501         * gnulib/import/m4/dirname.m4: Update.
3502         * gnulib/import/m4/double-slash-root.m4: Update.
3503         * gnulib/import/m4/dup.m4: Update.
3504         * gnulib/import/m4/dup2.m4: Update.
3505         * gnulib/import/m4/eealloc.m4: Update.
3506         * gnulib/import/m4/environ.m4: Update.
3507         * gnulib/import/m4/errno_h.m4: Update.
3508         * gnulib/import/m4/error.m4: Update.
3509         * gnulib/import/m4/exponentd.m4: Update.
3510         * gnulib/import/m4/exponentl.m4: Update.
3511         * gnulib/import/m4/extensions.m4: Update.
3512         * gnulib/import/m4/extern-inline.m4: Update.
3513         * gnulib/import/m4/fchdir.m4: Update.
3514         * gnulib/import/m4/fcntl-o.m4: Update.
3515         * gnulib/import/m4/fcntl.m4: Update.
3516         * gnulib/import/m4/fcntl_h.m4: Update.
3517         * gnulib/import/m4/fdopendir.m4: Update.
3518         * gnulib/import/m4/filenamecat.m4: Update.
3519         * gnulib/import/m4/flexmember.m4: Update.
3520         * gnulib/import/m4/float_h.m4: Update.
3521         * gnulib/import/m4/fnmatch.m4: Update.
3522         * gnulib/import/m4/fnmatch_h.m4: Update.
3523         * gnulib/import/m4/fpieee.m4: Update.
3524         * gnulib/import/m4/frexp.m4: Update.
3525         * gnulib/import/m4/frexpl.m4: Update.
3526         * gnulib/import/m4/fstat.m4: Update.
3527         * gnulib/import/m4/fstatat.m4: Update.
3528         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3529         * gnulib/import/m4/getcwd-path-max.m4: Update.
3530         * gnulib/import/m4/getcwd.m4: Update.
3531         * gnulib/import/m4/getdtablesize.m4: Update.
3532         * gnulib/import/m4/getlogin.m4: Update.
3533         * gnulib/import/m4/getlogin_r.m4: Update.
3534         * gnulib/import/m4/getpagesize.m4: Update.
3535         * gnulib/import/m4/getprogname.m4: Update.
3536         * gnulib/import/m4/gettimeofday.m4: Update.
3537         * gnulib/import/m4/glibc21.m4: Update.
3538         * gnulib/import/m4/glob.m4: Update.
3539         * gnulib/import/m4/glob_h.m4: Update.
3540         * gnulib/import/m4/gnulib-cache.m4: Update.
3541         * gnulib/import/m4/gnulib-common.m4: Update.
3542         * gnulib/import/m4/gnulib-comp.m4: Update.
3543         * gnulib/import/m4/gnulib-tool.m4: Update.
3544         * gnulib/import/m4/hard-locale.m4: Update.
3545         * gnulib/import/m4/include_next.m4: Update.
3546         * gnulib/import/m4/inttypes-pri.m4: Update.
3547         * gnulib/import/m4/inttypes.m4: Update.
3548         * gnulib/import/m4/isnand.m4: Update.
3549         * gnulib/import/m4/isnanl.m4: Update.
3550         * gnulib/import/m4/largefile.m4: Update.
3551         * gnulib/import/m4/limits-h.m4: Update.
3552         * gnulib/import/m4/localcharset.m4: Update.
3553         * gnulib/import/m4/locale-fr.m4: Update.
3554         * gnulib/import/m4/locale-ja.m4: Update.
3555         * gnulib/import/m4/locale-zh.m4: Update.
3556         * gnulib/import/m4/localtime-buffer.m4: Update.
3557         * gnulib/import/m4/longlong.m4: Update.
3558         * gnulib/import/m4/lstat.m4: Update.
3559         * gnulib/import/m4/malloc.m4: Update.
3560         * gnulib/import/m4/malloca.m4: Update.
3561         * gnulib/import/m4/math_h.m4: Update.
3562         * gnulib/import/m4/mbrtowc.m4: Update.
3563         * gnulib/import/m4/mbsinit.m4: Update.
3564         * gnulib/import/m4/mbsrtowcs.m4: Update.
3565         * gnulib/import/m4/mbstate_t.m4: Update.
3566         * gnulib/import/m4/memchr.m4: Update.
3567         * gnulib/import/m4/memmem.m4: Update.
3568         * gnulib/import/m4/mempcpy.m4: Update.
3569         * gnulib/import/m4/memrchr.m4: Update.
3570         * gnulib/import/m4/mkdir.m4: Update.
3571         * gnulib/import/m4/mkstemp.m4: Update.
3572         * gnulib/import/m4/mmap-anon.m4: Update.
3573         * gnulib/import/m4/mode_t.m4: Update.
3574         * gnulib/import/m4/msvc-inval.m4: Update.
3575         * gnulib/import/m4/msvc-nothrow.m4: Update.
3576         * gnulib/import/m4/multiarch.m4: Update.
3577         * gnulib/import/m4/nocrash.m4: Update.
3578         * gnulib/import/m4/off_t.m4: Update.
3579         * gnulib/import/m4/onceonly.m4: Update.
3580         * gnulib/import/m4/open-cloexec.m4: Update.
3581         * gnulib/import/m4/open.m4: Update.
3582         * gnulib/import/m4/openat.m4: Update.
3583         * gnulib/import/m4/opendir.m4: Update.
3584         * gnulib/import/m4/pathmax.m4: Update.
3585         * gnulib/import/m4/rawmemchr.m4: Update.
3586         * gnulib/import/m4/readdir.m4: Update.
3587         * gnulib/import/m4/readlink.m4: Update.
3588         * gnulib/import/m4/realloc.m4: Update.
3589         * gnulib/import/m4/rename.m4: Update.
3590         * gnulib/import/m4/rewinddir.m4: Update.
3591         * gnulib/import/m4/rmdir.m4: Update.
3592         * gnulib/import/m4/save-cwd.m4: Update.
3593         * gnulib/import/m4/secure_getenv.m4: Update.
3594         * gnulib/import/m4/setenv.m4: Update.
3595         * gnulib/import/m4/signal_h.m4: Update.
3596         * gnulib/import/m4/ssize_t.m4: Update.
3597         * gnulib/import/m4/stat-time.m4: Update.
3598         * gnulib/import/m4/stat.m4: Update.
3599         * gnulib/import/m4/std-gnu11.m4: Update.
3600         * gnulib/import/m4/stdbool.m4: Update.
3601         * gnulib/import/m4/stddef_h.m4: Update.
3602         * gnulib/import/m4/stdint.m4: Update.
3603         * gnulib/import/m4/stdio_h.m4: Update.
3604         * gnulib/import/m4/stdlib_h.m4: Update.
3605         * gnulib/import/m4/strchrnul.m4: Update.
3606         * gnulib/import/m4/strdup.m4: Update.
3607         * gnulib/import/m4/strerror.m4: Update.
3608         * gnulib/import/m4/string_h.m4: Update.
3609         * gnulib/import/m4/strstr.m4: Update.
3610         * gnulib/import/m4/strtok_r.m4: Update.
3611         * gnulib/import/m4/sys_socket_h.m4: Update.
3612         * gnulib/import/m4/sys_stat_h.m4: Update.
3613         * gnulib/import/m4/sys_time_h.m4: Update.
3614         * gnulib/import/m4/sys_types_h.m4: Update.
3615         * gnulib/import/m4/tempname.m4: Update.
3616         * gnulib/import/m4/time_h.m4: Update.
3617         * gnulib/import/m4/unistd-safer.m4: Update.
3618         * gnulib/import/m4/unistd_h.m4: Update.
3619         * gnulib/import/m4/warn-on-use.m4: Update.
3620         * gnulib/import/m4/wchar_h.m4: Update.
3621         * gnulib/import/m4/wchar_t.m4: Update.
3622         * gnulib/import/m4/wctype_h.m4: Update.
3623         * gnulib/import/m4/wint_t.m4: Update.
3624         * gnulib/import/malloc.c: Update.
3625         * gnulib/import/malloc/scratch_buffer.h: Update.
3626         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3627         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3628         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3629         * gnulib/import/malloca.c: Update.
3630         * gnulib/import/malloca.h: Update.
3631         * gnulib/import/malloca.valgrind: Update.
3632         * gnulib/import/math.in.h: Update.
3633         * gnulib/import/mbrtowc.c: Update.
3634         * gnulib/import/mbsinit.c: Update.
3635         * gnulib/import/mbsrtowcs-impl.h: Update.
3636         * gnulib/import/mbsrtowcs-state.c: Update.
3637         * gnulib/import/mbsrtowcs.c: Update.
3638         * gnulib/import/memchr.c: Update.
3639         * gnulib/import/memmem.c: Update.
3640         * gnulib/import/mempcpy.c: Update.
3641         * gnulib/import/memrchr.c: Update.
3642         * gnulib/import/mkdir.c: Update.
3643         * gnulib/import/mkstemp.c: Update.
3644         * gnulib/import/msvc-inval.c: Update.
3645         * gnulib/import/msvc-inval.h: Update.
3646         * gnulib/import/msvc-nothrow.c: Update.
3647         * gnulib/import/msvc-nothrow.h: Update.
3648         * gnulib/import/open.c: Update.
3649         * gnulib/import/openat-die.c: Update.
3650         * gnulib/import/openat-priv.h: Update.
3651         * gnulib/import/openat-proc.c: Update.
3652         * gnulib/import/openat.c: Update.
3653         * gnulib/import/openat.h: Update.
3654         * gnulib/import/opendir.c: Update.
3655         * gnulib/import/pathmax.h: Update.
3656         * gnulib/import/pipe-safer.c: Update.
3657         * gnulib/import/rawmemchr.c: Update.
3658         * gnulib/import/readdir.c: Update.
3659         * gnulib/import/readlink.c: Update.
3660         * gnulib/import/realloc.c: Update.
3661         * gnulib/import/ref-add.sin: Update.
3662         * gnulib/import/ref-del.sin: Update.
3663         * gnulib/import/rename.c: Update.
3664         * gnulib/import/rewinddir.c: Update.
3665         * gnulib/import/rmdir.c: Update.
3666         * gnulib/import/same-inode.h: Update.
3667         * gnulib/import/save-cwd.c: Update.
3668         * gnulib/import/save-cwd.h: Update.
3669         * gnulib/import/scratch_buffer.h: Update.
3670         * gnulib/import/secure_getenv.c: Update.
3671         * gnulib/import/setenv.c: Update.
3672         * gnulib/import/signal.in.h: Update.
3673         * gnulib/import/stat-time.c: Update.
3674         * gnulib/import/stat-time.h: Update.
3675         * gnulib/import/stat-w32.c: Update.
3676         * gnulib/import/stat-w32.h: Update.
3677         * gnulib/import/stat.c: Update.
3678         * gnulib/import/stdbool.in.h: Update.
3679         * gnulib/import/stddef.in.h: Update.
3680         * gnulib/import/stdint.in.h: Update.
3681         * gnulib/import/stdio.in.h: Update.
3682         * gnulib/import/stdlib.in.h: Update.
3683         * gnulib/import/str-two-way.h: Update.
3684         * gnulib/import/strchrnul.c: Update.
3685         * gnulib/import/strdup.c: Update.
3686         * gnulib/import/streq.h: Update.
3687         * gnulib/import/strerror-override.c: Update.
3688         * gnulib/import/strerror-override.h: Update.
3689         * gnulib/import/strerror.c: Update.
3690         * gnulib/import/string.in.h: Update.
3691         * gnulib/import/stripslash.c: Update.
3692         * gnulib/import/strnlen1.c: Update.
3693         * gnulib/import/strnlen1.h: Update.
3694         * gnulib/import/strstr.c: Update.
3695         * gnulib/import/strtok_r.c: Update.
3696         * gnulib/import/sys_stat.in.h: Update.
3697         * gnulib/import/sys_time.in.h: Update.
3698         * gnulib/import/sys_types.in.h: Update.
3699         * gnulib/import/tempname.c: Update.
3700         * gnulib/import/tempname.h: Update.
3701         * gnulib/import/time.in.h: Update.
3702         * gnulib/import/unistd--.h: Update.
3703         * gnulib/import/unistd-safer.h: Update.
3704         * gnulib/import/unistd.in.h: Update.
3705         * gnulib/import/unsetenv.c: Update.
3706         * gnulib/import/verify.h: Update.
3707         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3708         * gnulib/import/wchar.in.h: Update.
3709         * gnulib/import/wctype.in.h: Update.
3710         * gnulib/import/xalloc-oversized.h: Update.
3711         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3712         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3713
3714 2018-08-16  Gary Benson <gbenson@redhat.com>
3715
3716         PR gdb/13000:
3717         * gdb/main.c (captured_main_1): Exit with nonzero status
3718         in batch mode if the last command to be executed failed.
3719         * NEWS: Mention the above.
3720
3721 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3722
3723         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3724         end of warning message.
3725
3726 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3727
3728         PR gdb/22943:
3729         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3730         (aarch64_extract_return_value): Use
3731         aapcs_is_vfp_call_or_return_candidate.
3732         (aarch64_return_in_memory): Likewise.
3733         (aarch64_store_return_value): Likewise.
3734
3735 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3736
3737         * aarch64-tdep.c
3738         (aapcs_is_vfp_call_or_return_candidate): Make static
3739         (pass_in_v_or_stack): Remove function.
3740         (pass_in_v_vfp_candidate): New function.
3741         (aarch64_push_dummy_call): Check for float register candidates.
3742
3743 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3744
3745         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3746         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3747         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3748
3749 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3750
3751         PR build/23399
3752         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3753         (struct ipa_sym_addresses): Rename to...
3754         (struct ipa_sym_addresses_common): ... this.
3755         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3756
3757 2018-08-28  Tom Tromey  <tom@tromey.com>
3758
3759         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3760         (token_fifo): Now a std::vector.
3761         (yylex, c_parse): Update.
3762         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3763         (token_fifo): Now a std::vector.
3764         (yylex, d_parse): Update.
3765         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3766         (token_fifo): Now a std::vector.
3767         (yylex, go_parse): Update.
3768
3769 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3770
3771         * parser-defs.h (struct type_stack) <elements>: Change type to
3772         std::vector<union type_stack_elt>.
3773         <depth, size>: Remove.
3774         * parse.c (parse_exp_in_context_1): Adjust.
3775         (type_stack_reserve): Remove.
3776         (check_type_stack_depth): Remove.
3777         (insert_into_type_stack): Adjust to std::vector.
3778         (insert_type): Likewise.
3779         (push_type): Likewise.
3780         (push_type_int): Likewise.
3781         (insert_type_address_space): Likewise.
3782         (pop_type): Likewise.
3783         (pop_type_int): Likewise.
3784         (pop_typelist): Likewise.
3785         (pop_type_stack): Likewise.
3786         (append_type_stack): Likewise.
3787         (push_type_stack): Likewise.
3788         (get_type_stack): Likewise.
3789         (type_stack_cleanup): Likewise.
3790         (push_typelist): Likewise.
3791         (follow_types): Likewise.
3792         (_initialize_parse): Likewise.
3793
3794 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3795
3796         * NEWS: Mention csky target.
3797
3798 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3799             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3800             Don Breazeal  <donb@codesourcery.com>
3801
3802         * csky-linux-tdep.c: New file.
3803         * csky-tdep.c: Likewise.
3804         * csky-tdep.h: Likewise.
3805         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3806         csky-tdep.o.
3807         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3808         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3809         * configure.tgt: Add csky support.
3810
3811 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3812
3813         * python/py-framefilter.c (py_print_frame): Print frame architecture
3814         when printing on an MI output.
3815
3816 2018-08-27  Tom Tromey  <tom@tromey.com>
3817
3818         PR build/23087:
3819         * configure: Rebuild.
3820         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3821
3822 2018-08-27  Tom Tromey  <tom@tromey.com>
3823
3824         * aarch64-linux-tdep.c
3825         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3826         casts to int.
3827
3828 2018-08-27  Tom Tromey  <tom@tromey.com>
3829
3830         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3831         unsigned.
3832         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3833         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3834         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3835         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3836         unsigned.
3837
3838 2018-08-27  Tom Tromey  <tom@tromey.com>
3839
3840         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3841         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3842
3843 2018-08-27  Tom Tromey  <tom@tromey.com>
3844
3845         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3846         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3847         ULONGEST_MAX.
3848         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3849         ULONGEST_MAX.
3850         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3851         ULONGEST_MAX.
3852         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3853         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3854         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3855         ULONGEST_MAX.
3856         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3857         (ppc64_linux_sigaction_tramp_frame)
3858         (ppc32_linux_sighandler_tramp_frame)
3859         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3860         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3861         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3862         * mn10300-linux-tdep.c (am33_linux_sigframe)
3863         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3864         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3865         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3866         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3867         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3868         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3869         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3870         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3871         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3872         * microblaze-linux-tdep.c
3873         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3874         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3875         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3876         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3877         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3878         * common/common-types.h (ULONGEST_MAX): New define.
3879         (CORE_ADDR_MAX): Fix formatting.
3880         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3881         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3882         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3883         (arm_linux_rt_sigreturn_tramp_frame)
3884         (arm_eabi_linux_sigreturn_tramp_frame)
3885         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3886         (thumb2_eabi_linux_sigreturn_tramp_frame)
3887         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3888         (arm_linux_restart_syscall_tramp_frame)
3889         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3890         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3891         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3892         ULONGEST_MAX.
3893         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3894
3895 2018-08-27  Tom Tromey  <tom@tromey.com>
3896
3897         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3898         CORE_ADDR_MAX.
3899         * mips-tdep.c (mips_deal_with_atomic_sequence)
3900         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3901         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3902         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3903         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3904         CORE_ADDR_MAX.
3905         * aarch64-tdep.c (aarch64_software_single_step): Use
3906         CORE_ADDR_MAX.
3907
3908 2018-08-27  Tom Tromey  <tom@tromey.com>
3909
3910         * linespec.c (complete_linespec_component): Add cast to "char".
3911         * completer.c (completion_tracker::build_completion_result): Add
3912         cast to "char".
3913
3914 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3915
3916         * solist.h (struct solist, struct target_so_ops): Fix
3917         indentation.
3918
3919 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3920
3921         * ada-tasks.c (ada_task_info_s): Remove typedef.
3922         (DEF_VEC_O(ada_task_info_s)): Remove.
3923         (struct ada_tasks_inferior_data): Initialize fields.
3924         <task_list>: Make an std::vector.
3925         (get_ada_tasks_inferior_data): Allocate with new.
3926         (ada_get_task_number): Adjust.
3927         (get_task_number_from_id): Likewise.
3928         (valid_task_id): Likewise.
3929         (ada_get_task_info_from_ptid): Likewise.
3930         (iterate_over_live_ada_tasks): Likewise.
3931         (add_ada_task): Likewise.
3932         (read_known_tasks): Likewise.
3933         (ada_build_task_list): Likewise.
3934         (print_ada_task_info): Likewise.
3935         (info_task): Likewise.
3936         (task_command_1): Likewise.
3937
3938 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3939
3940         * ada-lang.c (add_angle_brackets): Return std::string.
3941
3942 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3943
3944         * python/py-threadevent.c (py_get_event_thread): Initialize
3945         pythread.
3946
3947 2018-08-24  Pedro Alves  <palves@redhat.com>
3948
3949         * python/py-bpevent.c (create_breakpoint_event_object): Use
3950         copy-initialization.
3951         * python/py-continueevent.c (emit_continue_event): Use
3952         copy-initialization.
3953         * python/py-exitedevent.c (create_exited_event_object): Return a
3954         gdbpy_ref<>.
3955         (emit_exited_event): Use copy-initialization.
3956         * python/py-inferior.c (python_new_inferior)
3957         (python_inferior_deleted, add_thread_object): Use
3958         copy-initialization.
3959         * python/py-infevents.c (create_inferior_call_event_object)
3960         (create_register_changed_event_object)
3961         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3962         (emit_inferior_call_event, emit_memory_changed_event)
3963         (emit_register_changed_event): Use copy-initialization.
3964         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3965         Return a gdbpy_ref<>.
3966         (emit_new_objfile_event): Use copy-initialization.
3967         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3968         (emit_clear_objfiles_event): Use copy-initialization.
3969         * python/py-signalevent.c (create_signal_event_object): Use
3970         copy-initialization.
3971         * python/py-threadevent.c (create_thread_event_object): Use
3972         copy-initialization.
3973
3974 2018-08-24  Pedro Alves  <palves@redhat.com>
3975             Simon Marchi  <simon.marchi@ericsson.com>
3976
3977         PR gdb/23379
3978         * python/py-continueevent.c: Include "gdbthread.h".
3979         (create_continue_event_object): Add intro comment.  Add 'ptid'
3980         parameter.  Use it to find thread to pass to
3981         create_thread_event_object.
3982         (emit_continue_event): Pass PTID down to
3983         create_continue_event_object.
3984         * python/py-event.h (py_get_event_thread): Declare.
3985         (create_thread_event_object): Remove default from 'thread'
3986         parameter.
3987         * python/py-stopevent.c (create_stop_event_object): Use
3988         py_get_event_thread.
3989         * python/py-threadevent.c (get_event_thread): Rename to ...
3990         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3991         and use it to find the thread.
3992         (create_thread_event_object): Assert that THREAD isn't null.
3993         Don't find the event thread here.
3994
3995 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3996
3997         * block.h (blockrange, blockranges): New struct declarations.
3998         (struct block): Add new field named `ranges'.
3999         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4000         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4001         macros for accessing ranges in struct block.
4002         (make_blockranges): New declaration.
4003         block.c (make_blockranges): New function.
4004         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4005         for block.
4006         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4007         * blockframe.c (cache_pc_function_block): New static global.
4008         (clear_pc_function_cache): Clear cache_pc_function_block.
4009         (find_pc_partial_function): Move comment to symtab.h.  Add
4010         support for non-contiguous blocks.
4011         * cli/cli-cmds.c (block.h): Include.
4012         (print_disassembly): Handle printing of non-contiguous blocks.
4013         (disassemble_current_function): Likewise.
4014         (disassemble_command): Likewise.
4015
4016         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4017         BLOCK_START.
4018         * blockframe.c (get_pc_function_start): Likewise.
4019         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4020         (gcc_symbol_address): Likewise.
4021         * compile/compile-object-run.c (compile_object_run): Likewise.
4022         * compile/compile.c (get_expr_block_and_pc): Likewise.
4023         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4024         (func_addr_to_tail_call_list): Likewise.
4025         * findvar.c (default_read_var_value): Likewise.
4026         * inline-frame.c (inline_frame_this_id): Likewise.
4027         (skip-inline_frames): Likewise.
4028         * infcmd.c (until_next_command): Likewise.
4029         * linespec.c (convert_linespec_to_sals): Likewise.
4030         * parse.c (parse_exp_in_context_1): Likewise.
4031         * printcmd.c (build_address_symbolic): likewise.
4032         (info_address_command): Likewise.
4033         symtab.c (find_function_start_sal): Likewise.
4034         (skip_prologue_sal): Likewise.
4035         (find_function_alias_target): Likewise.
4036         (find_gnu_ifunc): Likewise.
4037         * stack.c (find_frame_funname): Likewise.
4038         * symtab.c (fixup_symbol_section): Likewise.
4039         (find_function_start_sal): Likewise.
4040         (skip_prologue_sal): Likewsie.
4041         (find_function_alias_target): Likewise.
4042         (find_gnu_ifunc): Likewise.
4043         * tracepoint.c (info_scope_command): Likewise.
4044         * value.c (value_fn_field): Likewise.
4045
4046         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4047         in place of find_pc_partial_function.
4048         * blockframe.c (find_function_entry_range_from_pc): New function.
4049         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4050         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4051         for each range in a block.
4052
4053
4054 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4055
4056         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4057         incrementation.
4058
4059 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4060
4061         * solib-svr4.c (read_program_headers_from_bfd): Return
4062         gdb::optional<gdb::byte_vector>.
4063         (svr4_exec_displacement): Adjust.
4064
4065 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4066
4067         * solib-svr4.c (read_program_header): Return
4068         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4069         (find_program_interpreter): Return
4070         gdb::optional<gdb::byte_vector>.
4071         (scan_dyntag_auxv): Adjust.
4072         (enable_break): Adjust.
4073         (svr4_exec_displacement): Adjust.
4074
4075 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4076
4077         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4078         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4079
4080 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4081
4082         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4083         string_vprintf.
4084         * guile/scm-utils.c (gdbscm_printf): Likewise.
4085         * serial.c (serial_printf): Likewise.
4086         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4087
4088 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4089
4090         * stack.c (print_frame): Print frame architecture when printing on
4091         an MI output.
4092         * NEWS: Mention new "arch" attribute in frame output.
4093
4094 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4095
4096         * arch/aarch64.h (aarch64_regnum): Update comment.
4097
4098 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4099
4100         * NEWS: Add SVE to 8.2 section.
4101
4102 2018-08-21  Pedro Alves  <palves@redhat.com>
4103
4104         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4105         out from gdbscm_parse_function_args.
4106         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4107         gdbscm_parse_function_args_1.
4108
4109 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4110
4111         PR gdb/17816
4112         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4113         operator.
4114
4115 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4116
4117         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4118
4119 2018-08-19  Michael Spang  <spang@google.com>
4120
4121         PR gdb/11786
4122         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4123         for PT_TLS segments.
4124
4125 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4126
4127         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4128         dwarf_variable_value.
4129         * dwarf2-frame.c (class dwarf_expr_executor):
4130         Add override for dwarf_variable_value.
4131         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4132         (class symbol_needs_eval_context): Likewise.
4133         (indirect_synthetic_pointer): Add forward declaration.
4134         (sect_variable_value): New function.
4135         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4136         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4137         for DW_OP_GNU_variable_value.
4138
4139 2018-08-16  Tom Tromey  <tom@tromey.com>
4140
4141         * top.c (read_command_file): Update.
4142         (command_line_input): Remove "repeat" argument.
4143         * ada-lang.c (get_selections): Update.
4144         * linespec.c (decode_line_2): Update.
4145         * defs.h (command_line_input): Remove argument.
4146         * cli/cli-script.c (read_next_line): Update.
4147         * python/py-gdb-readline.c: Update.
4148
4149 2018-08-17  Tom Tromey  <tom@tromey.com>
4150
4151         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4152         command_line_input.
4153
4154 2018-08-15  Tom Tromey  <tom@tromey.com>
4155
4156         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4157
4158 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4159
4160         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4161         If used, use find_pc_partial_function to find address range
4162         to disassemble.
4163         * mi/mi-main.c (mi_cmd_list_features): Report
4164         "data-disassemble-a-option" feature.
4165         * NEWS: Mention new -data-disassemble option -a.
4166
4167 2018-08-13  Tom Tromey  <tom@tromey.com>
4168
4169         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4170
4171 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4172
4173         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4174         (aarch64_linux_collect_sve_regset): Likewise.
4175         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4176         * regcache.h (regcache_map_entry_size): New function.
4177
4178 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4179
4180         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4181         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4182         (SVE_HEADER_VL_LENGTH): Likewise.
4183         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4184         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4185         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4186         (SVE_HEADER_SIZE_OFFSET): Likewise.
4187         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4188         (SVE_HEADER_VL_OFFSET): Likewise.
4189         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4190         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4191         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4192         (SVE_HEADER_SIZE): Likewise.
4193         (aarch64_linux_core_read_vq): Add function.
4194         (aarch64_linux_core_read_description): Check for SVE section.
4195
4196 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4197
4198         * aarch64-fbsd-tdep.c
4199         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4200         collect_size.
4201         * aarch64-linux-tdep.c
4202         (aarch64_linux_iterate_over_regset_sections): Likewise.
4203         * alpha-linux-tdep.c
4204         (alpha_linux_iterate_over_regset_sections):
4205         * alpha-nbsd-tdep.c
4206         (alphanbsd_iterate_over_regset_sections): Likewise.
4207         * amd64-fbsd-tdep.c
4208         (amd64fbsd_iterate_over_regset_sections): Likewise.
4209         * amd64-linux-tdep.c
4210         (amd64_linux_iterate_over_regset_sections): Likewise.
4211         * arm-bsd-tdep.c
4212         (armbsd_iterate_over_regset_sections): Likewise.
4213         * arm-fbsd-tdep.c
4214         (arm_fbsd_iterate_over_regset_sections): Likewise.
4215         * arm-linux-tdep.c
4216         (arm_linux_iterate_over_regset_sections): Likewise.
4217         * corelow.c (get_core_registers_cb): Likewise.
4218         (core_target::fetch_registers): Likewise.
4219         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4220         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4221         * gdbarch.h (void): Regenerate.
4222         * gdbarch.sh: Add supply_size and collect_size.
4223         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4224         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4225         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4226         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4227         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4228         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4229         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4230         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4231         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4232         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4233         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4234         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4235         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4236         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4237         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4238         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4239         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4240         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4241         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4242         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4243         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4244         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4245         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4246         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4247         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4248         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4249         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4250         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4251         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4252         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4253
4254 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4255
4256         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4257         with string_printf.
4258
4259 2018-08-10  Keith Seitz  <keiths@redhat.com>
4260
4261         * compile/compile-c-support.c (add_code_header, add_code_footer):
4262         Move into policy class.
4263         (c_push_user_expression, pop_user_expression_nop)
4264         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4265         (compile_program): New host class.
4266         (c_compile_program): New typedef.
4267         (c_compute_porgram): Use c_compile_program.
4268
4269 2018-08-10  Keith Seitz  <keiths@redhat.com>
4270
4271         * compile/compile-internal.h (compile_instance::~compile_instance):
4272         Remove calls to htab_delete.
4273         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4274         * compile.c (compile_instance::compile_instance): Initialize
4275         htab unique pointers.
4276         (compile_instance::get_cached_type, compile_instance::insert_type)
4277         (compile_instance::error_symbol_once): Update for unique_ptr.
4278
4279 2018-08-10  Keith Seitz  <keiths@redhat.com>
4280
4281         * compile/compile-c-symbols.c (struct symbol_error)
4282         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4283         (compile_instance::insert_symbol_error)
4284         (compile_instance::error_symbol_once): Move to ...
4285         * compile/compile.c: ... here.
4286
4287 2018-08-10  Keith Seitz  <keiths@redhat.com>
4288
4289         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4290         instead of `new_compile_instance'.
4291         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4292         Update description.
4293         If the symbol error map is not initialized, create it.
4294         (generate_c_for_for_one_symbol): Do not check/initialize
4295         the symbol error map.
4296         * compile/compile-c-types.c (compile_c_instance): Make a class.
4297         Update all callers.
4298         (compile_instance::compile_instance): Initialize the type cache.
4299         (get_cached_type): New function.
4300         (insert_type): Update description.
4301         (compile_c_instance::m_default_cflags): Define.
4302         (convert_type): Update description.  Use get_cached_type.
4303         (delete_instance): Moved to destructor.
4304         (new_compile_instance): Moved to constructor.
4305         * compile/compile-c.h (compile_c_instance): Make class inheriting
4306         from compile_instance.
4307         <base>: Remove field.
4308         <type_map, symbol_err_map>: Move to base class.
4309         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4310         * compile/compile-internal.h (compile_instance): Make class.
4311         <type_map_t, symbol_err_map_t>: Define.
4312         <fe>: Rename to `m_gcc_fe'.
4313         <scope, block, gcc_target_options>: Add `m_' prefix.
4314         <m_type_map, m_symbol_err_map>: New fields, moved from
4315         compile_c_instance.
4316         <destroy>: Remove.
4317         (convert_type, new_compile_instance): Remove.
4318         * compile/compile.c (cleanup_compile_instance): Remove.
4319         (compile_to_object): Use unique_ptr to eliminate cleanups.
4320         (compile_instance::set_print_callback, compile_instance::version)
4321         (compile_instance::set_verbose)
4322         (compile_instance::set_driver_filename)
4323         (compile_instance::set_triplet_regexp)
4324         (compile_instance::set_arguments)
4325         (compile_instance::set_source_file)
4326         (compile_instance::compile): Define.
4327
4328 2018-08-10  Keith Seitz  <keiths@redhat.com>
4329
4330         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4331         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4332         gcc-c-fe.def to define C plugin.
4333         (delete_instance): Delete `c_plugin'.
4334         (new_compile_instance): Initialize `c_plugin'.
4335         * compile/compile-c.h: Include gcc_c_plugin.h.
4336         (struct compile_c_instance) <c_plugin>: New member.
4337         * gcc-c-plugin.h: New file.
4338         Update all callers with API change.
4339
4340 2018-08-10  Keith Seitz  <keiths@redhat.com>
4341
4342         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4343         (HFILES_NO_SRCDIR): ... to here.
4344         Add compile-internal.h and compile-c.h.
4345         * compile/compile-c-support.c: Include compile-c.h.
4346         * compile/compile-c-symbols.c: Include compile-c.h.
4347         (generate_c_for_variable_locations): Update comment.
4348         * compile/compile-c-types.c: Include compile-c.h.
4349         * compile/compile-c.h: New file -- moved C language declarations
4350         from other files here.
4351         * compile/compile-internal.h: Do not include hashtab.h or
4352         common/enum-flags.h.
4353         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4354         (gcc_convert_symbol, gcc_symbol_address)
4355         (generate_c_for_variable_locations, c_get_mode_for_size)
4356         (c_get_range_decl_name): Definitions moved to compile-c.h.
4357         * compile/compile-loc2c.c: Include compile-c.h.
4358
4359 2018-08-10  Keith Seitz  <keiths@redhat.com>
4360
4361         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4362         (c_symbol_substitution_name): ... this.
4363         Update all callers.
4364
4365 2018-08-10  Keith Seitz  <keiths@redhat.com>
4366
4367         * compile/compile-c-support.c (c_compute_program): Use
4368         unique_xmalloc_ptr to eliminate cleanup.
4369         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4370         Return a unique_xmalloc_ptr and eliminate cleanup.
4371         * compile/compile-internal.h (generate_c_for_variable_locations):
4372         Return unique_xmalloc_ptr and update description.
4373
4374 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4375
4376         * corelow.c (core_target::get_core_register_section): Rename
4377         min_size to section_min_size.
4378
4379 2018-08-09  Jim Wilson  <jimw@sifive.com>
4380
4381         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4382         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4383         * NEWS: Mention new GNU/Linux RISC-V target.
4384         * configure.host: Add riscv*-*-linux*.
4385         * configure.nat: Add riscv*.
4386         * configure.tgt: Add riscv*-*-linux*.
4387         * riscv-linux-nat.c: New file.
4388         * riscv-linux-tdep.c: New file.
4389
4390 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4391
4392         * infrun.c (resume): Make static, add forward declaration.
4393         (proceed): Update header comment.
4394         * infrun.h (resume): Delete declaration.
4395
4396 2018-08-09  Tom Tromey  <tom@tromey.com>
4397
4398         * riscv-tdep.h: Minor formatting fixes.
4399
4400 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4401
4402         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4403         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4404         (test_mkdir_recursive): Likewise.
4405         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4406
4407 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4408
4409         * valarith.c (value_subscripted_rvalue): If an array is not in
4410         memory, and we don't know the upper bound, then we can't know that
4411         the requested element exists or not.
4412
4413 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4414
4415         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4416         (target_options_to_string): Add comment.
4417
4418 2018-08-08  Tom Tromey  <tom@tromey.com>
4419
4420         * unittests/scoped_mmap-selftests.c: Check result of "write".
4421
4422 2018-08-08  Jim Wilson  <jimw@sifive.com>
4423
4424         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4425         (decode_register_index_short): New.
4426         (decode_j_type_insn, decode_cj_type_insn): New.
4427         (decode_b_type_insn, decode_cb_type_insn): New.
4428         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4429         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4430         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4431         is_c_sw_insn instead of is_sw_insn.
4432         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4433         (riscv_software_single_step): New.
4434         * riscv-tdep.h (riscv_software_single_step): Declare.
4435
4436         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4437         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4438
4439 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4440
4441         PR gdb/18050:
4442         * target.c (dispose_inferior): Don't dispose of inferiors that are
4443         already killed.
4444
4445 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4446
4447         * remote.c (remote_target::download_tracepoint): Change char* to
4448         const char*.
4449
4450 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4451
4452         * target.h (target_options_to_string): Return an std::string.
4453         * target.c (str_comma_list_concat_elem): Return void, use
4454         std::string.
4455         (do_option): Likewise.
4456         (target_options_to_string): Return an std::string.
4457         * linux-nat.c (linux_nat_target::wait): Adjust.
4458         * target-debug.h (target_debug_print_options): Adjust.
4459
4460 2018-08-07  Tom Tromey  <tom@tromey.com>
4461
4462         * Makefile.in (CPPFLAGS): New variable.
4463         (INTERNAL_CPPFLAGS): Use it.
4464
4465 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4466
4467         * NEWS: Mention the index cache.
4468
4469 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4470
4471         * common/pathstuff.h (get_standard_cache_dir): New.
4472         * common/pathstuff.c (get_standard_cache_dir): New.
4473         * build-id.h (build_id_to_string): New.
4474         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4475         DEBUG_STR_SUFFIX): Move to here.
4476         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4477         DEBUG_STR_SUFFIX): Move from there.
4478         (write_psymtabs_to_index): Make non-static, add basename
4479         parameter.  Write to temporary files, rename when done.
4480         (save_gdb_index_command): Adjust call to
4481         write_psymtabs_to_index.
4482         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4483         field.
4484         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4485         (get_gdb_index_contents_from_cache): New.
4486         (get_gdb_index_contents_from_cache_dwz): New.
4487         (dwarf2_initialize_objfile): Read index from cache.
4488         (dwarf2_build_psymtabs): Save to index.
4489         * dwarf-index-cache.h: New file.
4490         * dwarf-index-cache.c: New file.
4491         * dwarf-index-write.h: New file.
4492
4493 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4494
4495         * gnulib/aclocal.m4: Re-generate.
4496         * gnulib/config.in: Re-generate.
4497         * gnulib/configure: Re-generate.
4498         * gnulib/import/Makefile.am: Re-generate.
4499         * gnulib/import/Makefile.in: Re-generate.
4500         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4501         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4502         * gnulib/import/m4/mkdir.m4: New file.
4503         * gnulib/import/mkdir.c: New file.
4504         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4505         module.
4506
4507 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4508
4509         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4510         * common/scoped_mmap.c: New file.
4511         * common/scoped_mmap.h (destroy): New method.
4512         (~scoped_mmap, reset): Use destroy.
4513         (scoped_mmap): New move constructor.
4514         (mmap_file): New declaration.
4515         * unittests/scoped_mmap-selftests.c (test_normal,
4516         test_invalid_filename, run_tests): New functions.
4517         (_initialize_scoped_mmap_selftests): Register selftest.
4518
4519 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4520
4521         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4522         (read_gdb_index_from_buffer): ... this.  Remove section
4523         parameter, add buffer parameter.
4524         (get_gdb_index_contents_ftype,
4525         get_gdb_index_contents_dwz_ftype): New typedefs.
4526         (dwarf2_read_gdb_index): Add callback parameters to get the
4527         index contents.
4528         (get_gdb_index_contents_from_section): New.
4529         (dwarf2_initialize_objfile): Update call to
4530         dwarf2_read_gdb_index.
4531
4532 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4533
4534         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4535         (gdb_open_cloexec): Likewise.
4536         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4537         (commandline_from_pid): Likewise.
4538         (linux_xfer_osdata_threads): Likewise.
4539         (linux_xfer_osdata_fds): Likewise.
4540         * ada-lang.c (is_package_name): Likewise.
4541         * auxv.c (procfs_xfer_auxv): Likewise.
4542         * breakpoint.c (print_one_breakpoint_location): Use
4543         uiout::field_fmt.
4544         (print_one_catch_solib): Use string_printf.
4545         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4546         (add_pe_forwarded_sym): Likewise.
4547         * dwarf2read.c (create_type_unit_group): Likewise.
4548         (build_error_marker_type): Likewise.
4549         * infcall.c (get_function_name): Likewise.
4550         * valprint.c (print_converted_chars_to_obstack): Likewise.
4551         * xtensa-tdep.c (xtensa_register_type): Likewise.
4552
4553 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4554
4555         * remote.c (remote_target::download_tracepoint): Fix format
4556         string errors.
4557
4558 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4559
4560         * tracefile.c: Include common/byte-vector.h.
4561         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4562         with trace_regblock_size if needed.  Update uses of buf.
4563
4564 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4565
4566         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4567         std::vector<unsigned char>.
4568         * tracepoint.c (collection_list::collection_list): Remove
4569         m_regs_mask initializer from initializer list.  Resize
4570         m_regs_mask using the largest remote register number.
4571         (collection_list::add_remote_register): Remove size check on
4572         m_regs_mask.  Use at to access element.
4573         (collection_list::stringify): Change type of temp_buf to
4574         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4575         stringify the register mask.  Use pack_hex_byte for the register
4576         mask.
4577
4578 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4579
4580         * tracepoint.h (class collection_list) <add_register>: Remove.
4581         <add_remote_register, add_ax_registers, add_local_register>:
4582         Declare.
4583         <add_memrange>: Add scope parameter.
4584         * tracepoint.c (encode_actions_1): Likewise.
4585         (collection_list::add_register): Rename to ...
4586         (collection_list::add_remote_register): ... this.  Update
4587         comment.
4588         (collection_list::add_ax_registers, add_local_register): New
4589         methods.
4590         (collection_list::add_memrange): Add scope parameter.  Call
4591         add_local_register instead of add_register.
4592         (finalize_tracepoint_aexpr): New function.
4593         (collection_list::collect_symbol): Update calls to add_memrange.
4594         Call add_local_register instead of add_register.  Call
4595         add_ax_registers.  Call finalize_tracepoint_aexpr.
4596         (encode_actions_1): Get remote regnos for $reg action.  Call
4597         add_remote_register, add_ax_registers, and add_local_register.
4598         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4599         (validate_actionline): Call finalize_tracepoint_aexpr.
4600
4601 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4602
4603         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4604         Replace array buf with gdb::char_vector buf, of size
4605         get_remote_packet_size ().  Replace references to buf and
4606         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4607         and xsnprintf with snprintf.  Raise errors if the buffer is too
4608         small.
4609
4610 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4611
4612         * remote.c (remote_target::download_tracepoint): Fix the has_more
4613         predicate in the QTDP action list iteration.
4614
4615 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4616
4617         * remote.c (remote_target::download_tracepoint): Fix indentation
4618         in for block.
4619
4620 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4621
4622         * proc-api.c (_initialize_proc_api): Remove c, unused.
4623         * procfs.c (procfs_init_inferior): Remove signals, unused.
4624         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4625         unused.
4626
4627 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4628             Andrew Burgess  <andrew.burgess@embecosm.com>
4629
4630         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4631         'W_STOPCODE (0)' as this could be ambiguous.
4632
4633 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4634
4635         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4636         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4637         "ai_socktype").
4638
4639 2018-08-02  Tom Tromey  <tom@tromey.com>
4640
4641         PR symtab/16842.
4642         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4643         symbols.
4644         (process_structure_scope): Likewise.
4645
4646 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4647
4648         PR gdb/22629:
4649         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4650         kill inferior.
4651
4652 2018-08-02  Tom Tromey  <tom@tromey.com>
4653
4654         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4655         (darwin_suspend_inferior, darwin_resume_inferior)
4656         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4657         (darwin_check_new_threads): Check result of get_darwin_inferior.
4658
4659 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4660
4661         GDB 8.1.1 released.
4662
4663 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4664
4665         * varobj.c (varobj_get_path_expr_parent): Report an error if
4666         parent is a dynamic varobj.
4667
4668 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4669
4670         * gnulib/aclocal.m4: Re-generate.
4671         * gnulib/config.in: Re-generate.
4672         * gnulib/configure: Re-generate.
4673         * gnulib/import/Makefile.in: Re-generate.
4674         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4675         * gnulib/import/m4/onceonly.m4: Re-generate.
4676
4677 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4678
4679         * target-descriptions.c (struct xml_test_tdesc): New.
4680         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4681         (record_xml_tdesc): Update.
4682         (maintenance_check_xml_descriptions): Update.
4683         * target-descriptions.h (record_xml_tdesc): Update comment.
4684
4685 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4686
4687         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4688         checking array bounds are defined.
4689
4690 2018-07-30  Tom Tromey  <tom@tromey.com>
4691
4692         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4693         irreflexivity violation.
4694
4695 2018-07-30  Tom Tromey  <tom@tromey.com>
4696
4697         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4698         * value.c (unpack_long): Remove lint code.
4699         * valops.c (value_ind): Remove lint code.
4700         * valarith.c (value_x_binop, value_x_unop, value_equal)
4701         (value_pos): Remove lint code.
4702
4703 2018-07-28  Tom de Vries  <tdevries@suse.de>
4704
4705         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4706         with undefined upper bound as <optimized out>.
4707
4708 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4709
4710         * gcore.in: Rename variable "name" to "prefix".  Expand
4711         "usage" text.
4712
4713 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4714
4715         * windows-nat.c (windows_nat_target::create_inferior): Update to
4716         call close() in global namespace.
4717
4718 2018-07-26  Tom Tromey  <tom@tromey.com>
4719
4720         * dwarf-index-write.c (add_address_entry): Don't add objfile
4721         offsets.
4722         * dbxread.c (find_stab_function): Rename from
4723         find_stab_function_addr.  Return a bound_minimal_symbol.
4724         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4725         Don't add objfile offsets.
4726         (end_psymtab): Use raw_text_low, raw_text_high,
4727         MSYMBOL_VALUE_RAW_ADDRESS.
4728         (read_ofile_symtab): Update.
4729         (process_one_symbol): Update.
4730         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4731         offsets.
4732         (dw2_relocate): Remove.
4733         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4734         searching addrmap.
4735         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4736         Update.
4737         (process_psymtab_comp_unit_reader, add_partial_symbol)
4738         (add_partial_subprogram, dwarf2_ranges_read): Update.
4739         (load_partial_dies): Update.
4740         (add_address_entry): Don't add objfile offsets.
4741         (dwarf2_build_include_psymtabs): Update.
4742         (create_addrmap_from_aranges): Don't add objfile offsets.
4743         (dw2_find_pc_sect_compunit_symtab): Update.
4744         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4745         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4746         Update.
4747         (parse_partial_symbols): Don't add objfile offsets.  Use
4748         raw_text_low, raw_text_high.  Update.
4749         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4750         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4751         or call 'relocate' quick function.  Clear psymbol_map.
4752         * psympriv.h (struct partial_symbol) <address>: Add section
4753         offset.
4754         <set_unrelocated_address>: Rename from set_address.
4755         <raw_text_low, raw_text_high>: New methods.
4756         <text_low, text_high>: Add objfile parameter.
4757         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4758         set_unrelocated_address.
4759         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4760         (find_pc_psymbol): Update.
4761         (fixup_psymbol_section, relocate_psymtabs): Remove.
4762         (dump_psymtab, psym_functions): Update.
4763         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4764         parameter.
4765         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4766         (start_psymtab_common): Update.
4767         * symfile-debug.c (debug_qf_relocate): Remove.
4768         (debug_sym_quick_functions): Update.
4769         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4770         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4771         Update.
4772
4773 2018-07-26  Tom Tromey  <tromey@redhat.com>
4774
4775         * dbxread.c (end_psymtab): Use text_high_valid and
4776         text_low_valid.
4777         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4778         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4779         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4780         Update comment.
4781         <text_low_valid, text_high_valid>: New fields.
4782         <set_text_low, set_text_high>: Update.
4783         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4784
4785 2018-07-26  Tom Tromey  <tom@tromey.com>
4786
4787         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4788         Update.
4789         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4790         textlow and texthigh fields.
4791         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4792         Update.
4793         * mdebugread.c (parse_lines, parse_partial_symbols)
4794         (psymtab_to_symtab_1): Update.
4795         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4796         Rename fields.  Update comment.  Now private.
4797         <text_low, text_high, set_text_low, set_text_high>: New methods.
4798         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4799         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4800         (start_psymtab_common, maintenance_info_psymtabs)
4801         (maintenance_check_psymtabs): Update.
4802         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4803         texthigh fields.
4804         (scan_xcoff_symtab): Update.
4805
4806 2018-07-26  Tom Tromey  <tromey@redhat.com>
4807
4808         * psympriv.h (struct partial_symbol) <unrelocated_address,
4809         address, set_address>: New methods.
4810         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4811         (fixup_psymbol_section, relocate_psymtabs): Update.
4812         (print_partial_symbols): Add 'objfile' parameter.  Update.
4813         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4814         Update.
4815
4816 2018-07-26  Tom Tromey  <tom@tromey.com>
4817
4818         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4819         (debug_names::write_psymbols): Update.
4820         * psympriv.h (struct partial_symbol): Derive from
4821         general_symbol_info.
4822         <obj_section>: New method.
4823         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4824         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4825         (find_pc_sect_psymbol, fixup_psymbol_section)
4826         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4827         (print_partial_symbols, recursively_search_psymtabs)
4828         (compare_psymbols, psymbol_hash, psymbol_compare)
4829         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4830         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4831
4832 2018-07-26  Tom Tromey  <tromey@redhat.com>
4833
4834         * dbxread.c (end_psymtab): Remove dead code.
4835
4836 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4837
4838         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4839         DWARF unwinders are disabled.
4840         * dwarf2-frame.c: Add dwarf2read.h include.
4841         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4842         disabled.
4843         (dwarf2_frame_unwinders_enabled_p): Define.
4844         (show_dwarf_unwinders_enabled_p): New function.
4845         (_initialize_dwarf2_frame): Register switch to control DWARF
4846         unwinder use.
4847         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4848         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4849         (show_dwarf_cmdlist): Remove static keyword.
4850         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4851         (show_dwarf_cmdlist): Declare.
4852         * NEWS: Document new feature.
4853
4854 2018-07-26  Tom de Vries  <tdevries@suse.de>
4855
4856         PR breakpoints/23366
4857         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4858
4859 2018-07-26  Tom de Vries  <tdevries@suse.de>
4860
4861         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4862         DW_AT_count can't be translated to a dynamic prop.
4863
4864 2018-07-25  Tom de Vries  <tdevries@suse.de>
4865
4866         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4867         try/catch.
4868
4869 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4870
4871         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4872
4873 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4874
4875         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4876
4877 2018-07-24  Keith Seitz  <keiths@redhat.comt
4878
4879         PR symtab/23010
4880         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4881         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4882         instead of add_symbol_to_list.
4883         (read_file_scope): Call prepare_one_comp_unit before reading
4884         any other DIEs.
4885
4886 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4887
4888         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4889
4890 2018-07-24  Tom Tromey  <tom@tromey.com>
4891
4892         * utils.c (malloc, realloc, free): Don't declare.
4893         * configure, config.in: Rebuild.
4894         * configure.ac: Don't check for declarations of free, malloc, or
4895         realloc.
4896
4897 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4898
4899         * aarch64-linux-nat.c
4900         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4901         variable.
4902         * arm-linux-nat.c (fetch_regs): Likewise.
4903         (store_regs): Likewise.
4904         (fetch_vfp_regs): Likewise.
4905         (store_vfp_regs): Likewise.
4906         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4907         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4908         (arm_linux_nat_target::insert_watchpoint): Likewise.
4909         (arm_linux_nat_target::remove_watchpoint): Likewise.
4910         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4911         Likewise.
4912         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4913         Likewise.
4914         * ppc-linux-nat.c (fetch_register): Likewise.
4915         (fetch_all_gp_regs): Likewise.
4916         (fetch_ppc_registers): Likewise.
4917         (store_all_gp_regs): Likewise.
4918         (store_ppc_registers): Likewise.
4919         (hwdebug_insert_point): Likewise.
4920         (can_use_watchpoint_cond_accel): Likewise.
4921         * remote-sim.c (gdb_os_write_stdout): Likewise.
4922
4923 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4924             Tom Tromey  <tom@tromey.com>
4925
4926         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4927         test for it.
4928         * configure: Rebuild.
4929
4930 2018-07-22  Tom Tromey  <tom@tromey.com>
4931
4932         * regformats/regdat.sh: Define xmltarget_${name} inside
4933         #ifndef IN_PROCESS_AGENT.
4934
4935 2018-07-22  Tom Tromey  <tom@tromey.com>
4936
4937         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4938
4939 2018-07-22  Tom Tromey  <tom@tromey.com>
4940
4941         * symfile.c (reread_symbols): Notify iter, not objfile.
4942
4943 2018-07-22  Tom Tromey  <tom@tromey.com>
4944
4945         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4946         Use arch_ops.
4947         (ravenscar_thread_target::prepare_to_store): Likewise.
4948
4949 2018-07-22  Tom Tromey  <tom@tromey.com>
4950
4951         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4952         unused variable.  Call value_fetch_lazy when needed.
4953         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4954         Remove unused variable.  Call value_fetch_lazy when needed.
4955
4956 2018-07-22  Tom Tromey  <tom@tromey.com>
4957
4958         * m32c-tdep.c (mark_dma): Return void.
4959         (make_regs): Remove unused declarations.
4960
4961 2018-07-22  Tom Tromey  <tom@tromey.com>
4962
4963         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4964         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4965         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4966         bkscm_get_valid_block_smob_arg_unsafe for effect.
4967
4968 2018-07-22  Tom Tromey  <tom@tromey.com>
4969
4970         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4971         value_type.
4972
4973 2018-07-22  Tom Tromey  <tom@tromey.com>
4974
4975         * windows-nat.c (saved_context): Conditionally define.
4976         * remote.c (remote_target::remote_btrace_maybe_reopen):
4977         Conditionally declare "warned".
4978         * inflow.c (sigquit_ours): Conditionally define.
4979         (new_tty): Move "tty" declaration inside #if.
4980         * guile/guile.c (guile_datadir): Conditionally define.
4981         * charset.c (set_be_le_names): Move some declarations inside #if.
4982         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4983         #if.
4984         (parse_xml_btrace_conf): Likewise.
4985
4986 2018-07-22  Tom Tromey  <tom@tromey.com>
4987
4988         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4989
4990 2018-07-22  Tom Tromey  <tom@tromey.com>
4991
4992         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4993         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4994         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4995         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4996         * stack.c (frame_apply_level_command): Remove unused variable.
4997         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4998         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4999         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5000         unused variable.
5001         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5002         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5003         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5004         variable.
5005         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5006         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5007         variable.
5008         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5009         Remove unused variable.
5010         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5011         variable.
5012         * common/tdesc.c (print_xml_feature::visit): Remove unused
5013         variable.
5014         * compile/compile-object-load.c (store_regs): Remove unused
5015         variables.
5016         * complaints.c (clear_complaints): Remove unused variable.
5017         * corelow.c (core_target_open): Remove unused variable.
5018         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5019         variable.
5020         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5021         variable.
5022         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5023         variable.
5024         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5025         variable.
5026         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5027         variable.
5028         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5029         variable.
5030         * ia64-tdep.c (examine_prologue): Remove unused variable.
5031         * infcall.c (run_inferior_call): Remove unused variable.
5032         * inferior.c (exit_inferior): Remove unused variable.
5033         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5034         * linespec.c (decode_line_2): Remove unused variable.
5035         * linux-nat.c (super_close): Remove.
5036         * linux-tdep.c (linux_info_proc): Remove unused variable.
5037         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5038         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5039         Remove unused variable.
5040         * parse.c (find_minsym_type_and_address): Remove unused variable.
5041         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5042         variable.
5043         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5044         variable.
5045         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5046         variables.
5047         * record-btrace.c (record_btrace_target::store_registers): Remove
5048         unused variable.
5049         (cmd_show_record_btrace_cpu): Remove unused variable.
5050         * riscv-tdep.c (riscv_register_reggroup_p)
5051         (riscv_push_dummy_call, riscv_return_value): Remove unused
5052         variable.
5053         * rust-exp.y (literal): Remove unused variable.
5054         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5055         unused variable.
5056         <STRUCTOP_ANONYMOUS>: Likewise.
5057         * s390-linux-tdep.c (s390_linux_init_abi_31)
5058         (s390_linux_init_abi_64): Remove unused variable.
5059         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5060         (file_select_thread, net_windows_open, _initialize_ser_windows):
5061         Remove unused variables.
5062         * symtab.c (find_pc_sect_line): Remove unused variable.
5063         * target-memory.c (compute_garbled_blocks): Remove unused
5064         variable.
5065         (target_write_memory_blocks): Remove unused variable.
5066         * target.c (target_stack::unpush): Remove unused variables.
5067         * tracepoint.c (start_tracing, all_tracepoint_actions)
5068         (merge_uploaded_trace_state_variables)
5069         (print_one_static_tracepoint_marker): Remove unused variable.
5070         * unittests/basic_string_view/element_access/char/1.cc (test01):
5071         Remove unused variable.
5072         * windows-nat.c (windows_continue, windows_add_all_dlls)
5073         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5074         Remove unused variables.
5075
5076 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5077
5078         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5079         attr_profile in HAVE_ELF.
5080         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5081         HAVE_ELF.
5082
5083 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5084
5085         * frame.c (frame_register_unwind): Change parameter name.
5086         (frame_unwind_register): Likewise.
5087         (frame_unwind_register_value): Likewise.
5088         (frame_unwind_register_signed): Likewise.
5089         (frame_unwind_register_unsigned): Likewise.
5090         * frame.h (frame_register_unwind): Likewise.
5091         (frame_unwind_register): Likewise.
5092         (frame_unwind_register_value): Likewise.
5093         (frame_unwind_register_signed): Likewise.
5094         (frame_unwind_register_unsigned): Likewise.
5095         (frame_unwind_arch): Likewise.
5096
5097 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5098
5099         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5100         ISA maintenance.
5101
5102 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5103
5104         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5105         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5106         hand.
5107
5108 2018-07-20  Keith Seitz  <keiths@redhat.com>
5109
5110         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5111         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5112         m_compunit_symtab, m_language>: Add "m_" prefix.
5113         Update all uses.
5114         * buildsym.c: Update all uses.
5115
5116 2018-07-20  Tom Tromey  <tom@tromey.com>
5117
5118         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5119         * buildsym.h (record_line_ftype): Remove typedef.
5120
5121 2018-07-20  Tom Tromey  <tom@tromey.com>
5122
5123         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5124         (end_expandable_symtab): Likewise.
5125         (end_symtab_get_static_block): Likewise.
5126         (end_symtab_from_static_block): Likewise.
5127         * buildsym-legacy.c (augment_type_symtab): Remove.
5128         (end_expandable_symtab): Remove.
5129         (end_symtab_get_static_block): Remove.
5130         (end_symtab_from_static_block): Remove.
5131
5132 2018-07-20  Tom Tromey  <tom@tromey.com>
5133
5134         * dwarf2read.c: Include buildsym.h.
5135         (struct dwarf2_cu) <builder>: New method.
5136         (fixup_go_packaging): Update.
5137         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5138         use scoped_free_pendings.
5139         (using_directives): Add "cu" parameter, remove "language".
5140         (read_import_statement, setup_type_unit_groups, )
5141         (read_func_scope, read_lexical_block_scope)
5142         (dwarf2_record_block_ranges, read_namespace): Update.
5143         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5144         (lnp_state_machine::handle_end_sequence): Update.
5145         (class lnp_state_machine) <m_cu>: New member.
5146         <m_record_line_callback>: Remove.
5147         <m_currently_recording_lines>: New member.
5148         (lnp_state_machine::handle_set_file): Update.
5149         (noop_record_line): Remove.
5150         (dwarf_record_line_p): Add cu parameter.
5151         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5152         (lnp_state_machine::record_line)
5153         (lnp_state_machine::lnp_state_machine)
5154         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5155         (dwarf_decode_lines): Update.
5156         (dwarf2_start_subfile): Add cu parameter.
5157         (dwarf2_start_symtab, new_symbol): Update.
5158         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5159         Remove dwarf2_per_objfile parameter.
5160         (dwarf_decode_macros): Update.
5161
5162 2018-07-20  Tom Tromey  <tom@tromey.com>
5163
5164         * stabsread.c (define_symbol): Update.
5165         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5166         * dwarf2read.c (new_symbol): Update.
5167         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5168         * cp-namespace.c: Include buildsym.h.
5169         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5170         * buildsym-legacy.c (get_buildsym_compunit): New function.
5171
5172 2018-07-20  Tom Tromey  <tom@tromey.com>
5173
5174         * xcoffread.c: Include buildsym-legacy.h.
5175         * windows-nat.c: Include buildsym-legacy.h.
5176         * stabsread.c: Include buildsym-legacy.h.
5177         * mdebugread.c: Include buildsym-legacy.h.
5178         * buildsym-legacy.h: New file.
5179         * buildsym-legacy.c: New file, from buildsym.c.
5180         * go32-nat.c: Include buildsym-legacy.h.
5181         * dwarf2read.c: Include buildsym-legacy.h.
5182         * dbxread.c: Include buildsym-legacy.h.
5183         * cp-namespace.c: Include buildsym-legacy.h.
5184         * coffread.c: Include buildsym-legacy.h.
5185         * buildsym.h: Move some contents to buildsym-legacy.h.
5186         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5187         buildsym-legacy.c.
5188         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5189
5190 2018-07-20  Tom Tromey  <tom@tromey.com>
5191
5192         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5193         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5194         (buildsym_compunit::buildsym_compunit)
5195         (buildsym_compunit::~buildsym_compunit)
5196         (buildsym_compunit::get_macro_table): Define.
5197
5198 2018-07-20  Tom Tromey  <tom@tromey.com>
5199
5200         * buildsym.c (reset_symtab_globals): Remove.
5201         (buildsym_compunit::end_symtab_from_static_block): Update.
5202         (buildsym_compunit::augment_type_symtab): Update.
5203         (end_symtab_from_static_block): Call free_buildsym_compunit.
5204         (augment_type_symtab, end_symtab, end_expandable_symtab):
5205         Likewise.
5206
5207 2018-07-20  Tom Tromey  <tom@tromey.com>
5208
5209         * arch-utils.c: Do not include buildsym.h.
5210         * mipsread.c: Do not include buildsym.h.
5211         * machoread.c: Do not include buildsym.h.
5212         * elfread.c: Do not include buildsym.h.
5213
5214 2018-07-20  Tom Tromey  <tom@tromey.com>
5215
5216         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5217         initialization.
5218         (buildsym_compunit): Add new constructor.
5219         (struct buildsym_compunit) <get_last_source_file, finish_block,
5220         record_block_range, start_subfile, patch_subfile_names,
5221         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5222         set_last_source_start_addr, get_last_source_start_addr,
5223         get_local_using_directives, set_local_using_directives,
5224         get_global_using_directives, outermost_context_p,
5225         get_current_context_stack, get_context_stack_depth,
5226         get_current_subfile, get_local_symbols, get_file_symbols,
5227         get_global_symbols, record_debugformat, record_producer,
5228         push_context, pop_context, end_symtab_get_static_block,
5229         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5230         New public methods.
5231         <record_pending_block, finish_block_internal, make_blockvector,
5232         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5233         private methods.
5234         Update all users.
5235
5236 2018-05-22  Tom Tromey  <tom@tromey.com>
5237
5238         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5239         parameter.
5240         (finish_block_internal): Update.
5241
5242 2018-07-20  Tom Tromey  <tom@tromey.com>
5243
5244         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5245         parameter.
5246         (finish_block_internal): Update.
5247
5248 2018-07-20  Tom Tromey  <tom@tromey.com>
5249
5250         * buildsym.h (EXTERN): Don't define or undef.
5251         * buildsym.c (EXTERN): Don't define.
5252
5253 2018-07-20  Tom Tromey  <tom@tromey.com>
5254
5255         * buildsym.c: Remove TODO comment.
5256
5257 2018-07-20  Tom Tromey  <tom@tromey.com>
5258
5259         * coffread.c (coff_symtab_read): Update.
5260         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5261         (xcoff_new_init): Update.
5262         * mipsread.c (mipscoff_new_init): Update.
5263         * mdebugread.c (mdebug_build_psymtabs): Update.
5264         * elfread.c (elf_new_init): Update.
5265         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5266         Update.
5267         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5268         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5269         (stabsect_build_psymtabs): Update.
5270         * buildsym.h (buildsym_init): Don't declare.
5271         * buildsym.c: Update comment.
5272         (prepare_for_building): Remove.
5273         (start_symtab, restart_symtab): Update.
5274         (reset_symtab_globals): Update comment.
5275         (buildsym_init): Remove.
5276
5277 2018-07-20  Tom Tromey  <tom@tromey.com>
5278
5279         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5280         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5281         (read_enum_type, common_block_start, common_block_end)
5282         (cleanup_undefined_types_1, finish_global_stabs): Update.
5283         * mdebugread.c (psymtab_to_symtab_1): Update.
5284         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5285         (read_lexical_block_scope, new_symbol): Update.
5286         * dbxread.c (process_one_symbol): Update.
5287         * coffread.c (coff_symtab_read, process_coff_symbol)
5288         (coff_read_enum_type): Update.
5289         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5290         declare.
5291         (get_local_symbols, get_file_symbols, get_global_symbols): New
5292         functions.
5293         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5294         m_global_symbols.
5295         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5296         (~scoped_free_pendings): Update.
5297         (finish_block, prepare_for_building, reset_symtab_globals)
5298         (end_symtab_get_static_block, end_symtab_with_blockvector)
5299         (augment_type_symtab, push_context): Update.
5300         (get_local_symbols, get_file_symbols, get_global_symbols): New
5301         functions.
5302         (buildsym_init): Update.
5303
5304 2018-07-20  Tom Tromey  <tom@tromey.com>
5305
5306         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5307         (process_full_type_unit): Likewise.
5308         (dwarf2_start_symtab): Set list_in_scope.
5309
5310 2018-07-20  Tom Tromey  <tom@tromey.com>
5311
5312         * dwarf2read.c (process_psymtab_comp_unit_reader)
5313         (build_type_psymtabs_reader): Do not set list_in_scope.
5314
5315 2018-07-20  Tom Tromey  <tom@tromey.com>
5316
5317         * buildsym.c (free_pendings): Remove.
5318         (add_symbol_to_list, scoped_free_pendings)
5319         (finish_block_internal, buildsym_init): Update.
5320
5321 2018-07-20  Tom Tromey  <tom@tromey.com>
5322
5323         * xcoffread.c (read_xcoff_symtab): Update.
5324         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5325         Update.
5326         * dbxread.c (process_one_symbol): Update.
5327         * coffread.c (coff_symtab_read): Update.
5328         * buildsym.h (finish_block): Update.
5329         * buildsym.c (finish_block): Remove "listhead" argument.
5330         (end_symtab_get_static_block): Update.
5331
5332 2018-07-20  Tom Tromey  <tom@tromey.com>
5333
5334         * buildsym.h (class scoped_free_pendings): Remove constructor.
5335         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5336         method.
5337         <m_pending_block_obstack, m_pending_blocks>: New members.
5338         (pending_block_obstack, pending_blocks): Remove.
5339         (scoped_free_pendings::scoped_free_pendings): Default.
5340         (~scoped_free_pendings): Update.
5341         (free_pending_blocks): Remove.
5342         (finish_block_internal, record_pending_block, make_blockvector)
5343         (end_symtab_get_static_block, augment_type_symtab, push_context)
5344         (buildsym_init): Update.
5345
5346 2018-07-20  Tom Tromey  <tom@tromey.com>
5347
5348         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5349         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5350         members.
5351         (pending_addrmap, pending_addrmap_obstack)
5352         (pending_addrmap_interesting): Remove.
5353         (scoped_free_pendings, record_block_range, make_blockvector)
5354         (prepare_for_building, reset_symtab_globals, buildsym_init):
5355         Update.
5356
5357 2018-07-20  Tom Tromey  <tom@tromey.com>
5358
5359         * xcoffread.c (process_linenos): Update.
5360         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5361         * mdebugread.c (psymtab_to_symtab_1): Update.
5362         * dwarf2read.c (setup_type_unit_groups)
5363         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5364         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5365         * dbxread.c (process_one_symbol): Update.
5366         * coffread.c (coff_symtab_read, enter_linenos)
5367         (process_coff_symbol): Update.
5368         * buildsym.h (current_subfile): Don't declare.
5369         (get_current_subfile): Declare.
5370         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5371         member.
5372         (start_subfile, free_buildsym_compunit, push_subfile)
5373         (prepare_for_building, start_symtab): Update.
5374         (get_current_subfile): New function.
5375
5376 2018-07-20  Tom Tromey  <tom@tromey.com>
5377
5378         * coffread.c (coff_symtab_read): Update.
5379         * xcoffread.c (read_xcoff_symtab): Update.
5380         * dwarf2read.c (new_symbol): Update.
5381         (read_func_scope, read_lexical_block_scope): Update.
5382         * dbxread.c (process_one_symbol): Update.
5383         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5384         (outermost_context_p): Remove macro.
5385         (outermost_context_p, get_current_context_stack)
5386         (get_context_stack_depth): Declare.
5387         (pop_context): Return struct context_stack.
5388         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5389         member.
5390         (context_stack_size): Remove.
5391         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5392         (prepare_for_building, end_symtab_get_static_block)
5393         (augment_type_symtab, push_context): Update.
5394         (pop_context): Return struct context_stack.
5395         (outermost_context_p, get_current_context_stack)
5396         (get_context_stack_depth): New functions.
5397         (buildsym_init): Update.
5398
5399 2018-07-20  Tom Tromey  <tom@tromey.com>
5400
5401         * rust-exp.y: Now a pure parser.  Update all rules.
5402         (%union): Move earlier.
5403         (current_parser, work_obstack): Remove globals.
5404         (rust_parser, ~rust_parser): Update.
5405         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5406         lex_character, lex_number, lex_string, lex_identifier,
5407         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5408         convert_name, convert_params_to_expression,
5409         convert_ast_to_expression, ast_basic_type, ast_operation,
5410         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5411         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5412         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5413         ast_array_type, ast_slice_type, ast_reference_type,
5414         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5415         (rust_parse): Update.
5416         (rustyyerror, rustyylex): Add parser parameter.
5417         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5418         (rust_lex_stringish_test, rust_lex_test_sequence)
5419         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5420         (rust_lex_test_push_back, rust_lex_tests): Update.
5421
5422 2018-07-19  Pedro Alves  <palves@redhat.com>
5423
5424         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5425         gdb::unique_xmalloc_ptr.
5426         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5427         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5428         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5429         copy-initialization.
5430         * guile/scm-pretty-print.c (ppscm_print_children): Use
5431         gdb::unique_xmalloc_ptr instead of cleanups.
5432         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5433         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5434         gdb::unique_xmalloc_ptr.
5435         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5436         Adjust to use gdb::unique_xmalloc_ptr.
5437         * guile/scm-utils.c (extract_arg): Adjust.
5438         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5439         gdb::unique_xmalloc_ptr instead of a cleanup.
5440
5441 2018-07-19  Tom Tromey  <tom@tromey.com>
5442
5443         * utils.c (do_value_free_to_mark)
5444         (make_cleanup_value_free_to_mark): Remove.
5445         * utils.h (make_cleanup_value_free_to_mark): Remove.
5446
5447 2018-07-19  Pedro Alves  <palves@redhat.com>
5448
5449         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5450         forwarding reference.
5451
5452 2018-07-18  Pedro Alves  <palves@redhat.com>
5453
5454         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5455         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5456         cleanup.
5457
5458 2018-07-18  Pedro Alves  <palves@redhat.com>
5459
5460         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5461         exceptions.
5462         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5463         (gdbscm_wrap): New.
5464         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5465         directly instead of a cleanup.
5466         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5467         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5468         (vlscm_binop_gdbthrow): New, factored out from ...
5469         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5470         (vlscm_rich_compare): Use gdbscm_wrap.
5471         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5472         instead of a cleanup.
5473         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5474         cleanup.
5475         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5476         Use xfree directly instead of a cleanup.
5477         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5478         Adjust to use gdbscm_wrap and scoped_value_mark.
5479         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5480         (gdbscm_value_address, gdbscm_value_dereference)
5481         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5482         scoped_value_mark.
5483         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5484         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5485         scoped_value_mark.
5486         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5487         gdbscm_wrap and scoped_value_mark.
5488         (gdbscm_value_to_string): Use xfree directly instead of a
5489         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5490         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5491         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5492         scoped_value_mark.
5493         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5494         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5495         scoped_value_mark.
5496         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5497         gdbscm_wrap.
5498
5499 2018-07-18  Tom de Vries  <tdevries@suse.de>
5500
5501         * findvar.c (default_read_var_value): Also resolve dynamic type for
5502         LOC_OPTIMIZED_OUT vars.
5503
5504 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5505
5506         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5507         decoding.
5508
5509 2018-07-17  Tom Tromey  <tom@tromey.com>
5510
5511         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5512         (compute_enum_list, pascm_set_param_value_x)
5513         (gdbscm_parameter_value): Update.
5514         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5515         (gdbscm_scm_to_host_string): Update.
5516         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5517         Update.
5518         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5519         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5520         * guile/scm-string.c (gdbscm_scm_to_string): Return
5521         unique_xmalloc_ptr.
5522         (gdbscm_scm_to_host_string): Likewise.
5523
5524 2018-07-17  Tom Tromey  <tom@tromey.com>
5525
5526         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5527         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5528         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5529         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5530         unique_xmalloc_ptr.
5531
5532 2018-07-17  Tom Tromey  <tom@tromey.com>
5533
5534         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5535         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5536         Update.
5537         * guile/scm-cmd.c (cmdscm_function): Update.
5538         * guile/scm-pretty-print.c
5539         (ppscm_print_exception_unless_memory_error): Update.
5540         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5541         Return unique_xmalloc_ptr.
5542
5543 2018-07-17  Tom Tromey  <tom@tromey.com>
5544
5545         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5546         Use string_printf.
5547
5548 2018-07-17  Jim Wilson  <jimw@sifive.com>
5549
5550         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5551         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5552         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5553         unecessary braces after EF_RISCV_RVC test.  Delete call to
5554         set_gdbarch_decr_pc_after_break.
5555
5556         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5557         RISCV_LAST_FP_REGNUM + 1.
5558         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5559
5560 2018-07-17  Tom Tromey  <tom@tromey.com>
5561
5562         * configure.ac: Remove --disable-gdbcli.
5563         * configure: Rebuild.
5564         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5565         (SUBDIR_CLI_CFLAGS): Remove.
5566         (SFILES): Use SUBDIR_CLI_SRCS.
5567         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5568
5569 2018-07-17  Tom Tromey  <tom@tromey.com>
5570
5571         PR gdb/18624:
5572         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5573
5574 2018-07-16  Jim Wilson  <jimw@sifive.com>
5575
5576         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5577
5578 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5579
5580         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5581         variable.
5582         (libunwind_frame_sniffer): Likewise.
5583         (libunwind_frame_prev_register): Likewise.
5584         (libunwind_sigtramp_frame_sniffer): Likewise.
5585         * ia64-tdep.c (ia64_access_reg): Likewise.
5586         (ia64_access_rse_reg): Likewise.
5587         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5588         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5589
5590 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5591
5592         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5593
5594 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5595
5596         * remote-sim.c (gdbsim_target::close,
5597         gdbsim_target::mourn_inferior): Remove unused variables.
5598
5599 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5600
5601         * ia64-tdep.c (ktab_buf): New global.
5602         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5603         (get_kernel_table): Adjust.
5604
5605 2018-07-16  Tom Tromey  <tom@tromey.com>
5606
5607         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5608         * dwarf2read.c (using_directives, new_symbol): Use
5609         outermost_context_p.
5610         * dbxread.c (process_one_symbol): Use outermost_context_p.
5611         * coffread.c (coff_symtab_read): Use outermost_context_p.
5612
5613 2018-07-16  Tom Tromey  <tom@tromey.com>
5614
5615         * dwarf2read.c (using_directives, read_func_scope)
5616         (read_lexical_block_scope): Update.
5617         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5618         * buildsym.h (local_using_directives, global_using_directives):
5619         Don't declare.
5620         (get_local_using_directives, set_local_using_directives)
5621         (get_global_using_directives): Declare.
5622         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5623         m_global_using_directives>: New members.
5624         (finish_block_internal, prepare_for_building)
5625         (reset_symtab_globals, end_symtab_get_static_block)
5626         (push_context): Update.
5627         (get_local_using_directives, set_local_using_directives)
5628         (get_global_using_directives): New functions.
5629         (buildsym_init): Update.
5630
5631 2018-07-16  Tom Tromey  <tom@tromey.com>
5632
5633         * xcoffread.c (xcoff_initial_scan): Don't call
5634         free_pending_blocks.
5635         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5636         * buildsym.h (class scoped_free_pendings): Add constructor.
5637         (free_pending_blocks): Don't declare.
5638         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5639         (free_pending_blocks): Now static.
5640
5641 2018-07-16  Tom Tromey  <tom@tromey.com>
5642
5643         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5644         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5645         member.
5646         (struct subfile_stack): Remove.
5647         (subfile_stack): Remove.
5648         (push_subfile, pop_subfile, buildsym_init): Update.
5649
5650 2018-07-16  Tom Tromey  <tom@tromey.com>
5651
5652         * buildsym.c (push_subfile): Use gdb_assert.
5653         (pop_subfile): Use gdb_assert.
5654
5655 2018-07-16  Tom Tromey  <tom@tromey.com>
5656
5657         * buildsym.h (merge_symbol_lists): Remove.
5658         * buildsym.c (merge_symbol_lists): Remove.
5659
5660 2018-07-16  Tom Tromey  <tom@tromey.com>
5661
5662         * stabsread.c (scan_file_globals): Update comment.
5663         * stabsread.h (scan_file_globals): Move from buildsym.h.
5664         * buildsym.h (scan_file_globals): Move to stabsread.h.
5665
5666 2018-07-16  Tom Tromey  <tom@tromey.com>
5667
5668         * xcoffread.c (xcoff_new_init): Update.
5669         * mipsread.c (mipscoff_new_init): Update.
5670         * mdebugread.c (mdebug_build_psymtabs): Update.
5671         * elfread.c (elf_new_init): Update.
5672         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5673         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5674         * buildsym.h (buildsym_new_init): Don't declare.
5675         * buildsym.c (buildsym_new_init): Remove.
5676
5677 2018-07-16  Tom Tromey  <tom@tromey.com>
5678
5679         * stabsread.h (within_function): Move from buildsym.h.
5680         * stabsread.c (start_stabs): Clear within_function.
5681         * coffread.c (coff_start_symtab): Clear within_function.
5682         * buildsym.h (within_function): Move to stabsread.h.
5683         * buildsym.c (prepare_for_building): Update.
5684
5685 2018-07-16  Tom Tromey  <tom@tromey.com>
5686
5687         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5688         * dwarf2read.c (dwarf2_start_symtab): Don't set
5689         processing_gcc_compilation.
5690         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5691
5692 2018-07-16  Tom Tromey  <tom@tromey.com>
5693
5694         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5695         (next_symbol_text_func): Move from buildsym.h.
5696         * stabsread.c (hashname): Move from buildsym.c.
5697         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5698         (next_symbol_text_func, hashname): Move to stabsread.h.
5699         * buildsym.c: Don't include bcache.h
5700         (hashname): Move to stasbread.c.
5701
5702 2018-07-16  Tom Tromey  <tom@tromey.com>
5703
5704         * buildsym.h (context_stack_size): Don't declare.
5705         * buildsym.c (context_stack_size): New global.
5706
5707 2018-07-16  Tom Tromey  <tom@tromey.com>
5708
5709         * dbxread.c (processing_acc_compilation): New global.
5710         * buildsym.h (processing_acc_compilation): Don't declare.
5711
5712 2018-07-16  Tom Tromey  <tom@tromey.com>
5713
5714         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5715         * dbxread.c (read_ofile_symtab): Update.
5716         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5717         * buildsym.h (last_source_start_addr): Remove.
5718         (set_last_source_start_addr, get_last_source_start_addr):
5719         Declare.
5720         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5721         parameter.
5722         (struct buildsym_compunit) <m_last_source_start_addr>: New
5723         member.
5724         (prepare_for_building): Remove start_addr parameter.
5725         (start_symtab, restart_symtab, end_symtab_get_static_block)
5726         (end_symtab_with_blockvector): Update.
5727         (set_last_source_start_addr, get_last_source_start_addr): New
5728         functions.
5729
5730 2018-07-16  Tom Tromey  <tom@tromey.com>
5731
5732         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5733         member.
5734         (have_line_numbers): Remove.
5735         (record_line, prepare_for_building, end_symtab_get_static_block)
5736         (augment_type_symtab): Update.
5737
5738 2018-07-16  Tom Tromey  <tom@tromey.com>
5739
5740         * buildsym.c (~buildsym_compunit): Free the macro table.
5741         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5742         methods.
5743         <m_pending_macros>: New member.
5744         (pending_macros): Remove.
5745         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5746         (reset_symtab_globals, end_symtab_get_static_block)
5747         (end_symtab_with_blockvector, augment_type_symtab)
5748         (buildsym_init): Update.
5749
5750 2018-07-16  Tom Tromey  <tom@tromey.com>
5751
5752         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5753         parameter.
5754         (buildsym_compunit::set_last_source_file): New method.
5755         <m_last_source_file>: New member.
5756         (prepare_for_building): Remove "name" parameter.
5757         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5758         (last_source_file): Remove.
5759         (set_last_source_file, get_last_source_file): Update.
5760
5761 2018-07-16  Tom Tromey  <tom@tromey.com>
5762
5763         * buildsym.c (prepare_for_building): Add assert.
5764
5765 2018-07-16  Tom Tromey  <tom@tromey.com>
5766
5767         * buildsym.c (~buildsym_compunit): Update.
5768         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5769         (start_subfile, patch_subfile_names)
5770         (end_symtab_with_blockvector): Update.
5771
5772 2018-07-16  Tom Tromey  <tom@tromey.com>
5773
5774         * buildsym.c (struct buildsym_compunit): Add constructor,
5775         destructor, initializers.
5776         (start_buildsym_compunit): Remove.
5777         (free_buildsym_compunit): Use "delete".
5778         (start_symtab, restart_symtab): Use "new".
5779
5780 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5781
5782         * symfile.c (set_objfile_default_section_offset): Remove struct
5783         keyword.
5784
5785 2018-07-14  Stafford Horne  <shorne@gmail.com>
5786
5787         * (Responsible Maintainers): Add myself as or1k maintainer.
5788
5789 2018-07-13  Tom Tromey  <tom@tromey.com>
5790
5791         * symfile.c (set_objfile_default_section_offset): Use extra braces
5792         around initializer.
5793
5794 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5795
5796         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5797         non-branching basr.
5798
5799 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5800
5801         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5802         unittests/cli-utils-selftests.c
5803         * unittests/cli-utils-selftests.c: New file.
5804
5805 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5806
5807         * NEWS: Mention new commands. Mention change to 'thread apply'.
5808
5809 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5810
5811         * thread.c (thr_try_catch_cmd): New function.
5812         (thread_apply_all_command): Handle qcs flags.
5813         (thread_apply_command): Handle qcs flags.
5814         (taas_command): New function.
5815         (tfaas_command): New function.
5816         (_initialize_thread): Update to setup the new commands 'taas
5817         and 'tfaas'. Change doc string for 'thread apply'.
5818
5819 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5820
5821         * stack.c: (trailing_outermost_frame): New function, mostly
5822         extracted from backtrace_command_1.
5823         (leading_innermost_frame): New function.
5824         (backtrace_command_1): Update to call trailing_outermost_frame.
5825         (frame_apply_command_count): New function.
5826         (frame_apply_level_command): New function.
5827         (frame_apply_all_command): New function.
5828         (frame_apply_command): New function.
5829         (faas_command): New function.
5830         (frame_cmd_list): New variable.
5831         (_initialize_stack): Update to setup the new commands 'frame apply'
5832         and 'faas'.
5833
5834 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5835
5836         * cli-utils.c (number_or_range_parser::get_number): Only handle
5837         numbers or convenience var as numbers.
5838         (parse_flags): New function.
5839         (parse_flags_qcs): New function.
5840         (number_or_range_parser::finished): Ensure parsing end is detected
5841         before end of string.
5842         * cli-utils.h (parse_flags): New function.
5843         (parse_flags_qcs): New function.
5844         (number_or_range_parser): Remove m_finished bool.
5845         (number_or_range_parser::skip_range): Set m_in_range to false.
5846
5847 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5848
5849         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5850         on Windows.
5851
5852 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5853             Jan Kratochvil  <jan.kratochvil@redhat.com>
5854             Paul Fertser  <fercerpav@gmail.com>
5855             Tsutomu Seki  <sekiriki@gmail.com>
5856             Pedro Alves  <palves@redhat.com>
5857
5858         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5859         'unittests/parse-connection-spec-selftests.c'.
5860         (COMMON_SFILES): Add 'common/netstuff.c'.
5861         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5862         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5863         * common/netstuff.c: New file.
5864         * common/netstuff.h: New file.
5865         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5866         (wait_for_connect): Update comment.  New parameter
5867         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5868         Use 'sock' directly instead of 'scb->fd'.
5869         (try_connect): New function, with code from 'net_open'.
5870         (net_open): Rewrite main loop to deal with multiple
5871         sockets/addresses.  Handle IPv6-style hostnames; implement
5872         support for IPv6 connections.
5873         * unittests/parse-connection-spec-selftests.c: New file.
5874
5875 2018-07-11  Pedro Alves  <palves@redhat.com>
5876
5877         PR gdb/23377
5878         * remote.c (remote_target::remote_detach_pid): Call
5879         set_current_process.
5880
5881 2018-07-11  Pedro Alves  <palves@redhat.com>
5882
5883         * h8300-tdep.c (h8300_gdbarch_init): Remove
5884         set_gdbarch_ecoff_reg_to_regnum calls.
5885
5886 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5887
5888         PR c++/23373
5889         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5890         offsets/sizes for static members of a class/struct.
5891
5892 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5893
5894         * target-descriptions.c (tdesc_register_bitsize): Rename.
5895         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5896         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5897         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5898
5899 2018-07-10  Tom Tromey  <tom@tromey.com>
5900
5901         * breakpoint.c (moribund_locations): Now static and a
5902         std::vector.
5903         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5904         (build_bpstat_chain, update_global_location_list)
5905         (breakpoint_retire_moribund): Update.
5906         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5907         VEC.
5908
5909 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5910
5911         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5912         (riscv_register_reggroup_p): Use new function, remove unneeded
5913         parenthesis.
5914         (riscv_push_dummy_call): Extend assert to compare against xlen or
5915         flen based on register type.
5916
5917 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5918
5919         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5920
5921 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5922
5923         * remote.c (show_hardware_watchpoint_limit): New function.
5924         (show_hardware_watchpoint_length_limit): New function.
5925         (show_hardware_breakpoint_limit): New function.
5926         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5927         where appropriate, update help text.
5928
5929 2018-07-09  Tom Tromey  <tom@tromey.com>
5930
5931         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5932         (CLIBS): Don't mention NAT_CLIBS.
5933
5934 2018-07-09  Tom Tromey  <tom@tromey.com>
5935
5936         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5937         (LIBGDB_OBS, clean mostlyclean): Update.
5938         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5939
5940 2018-07-09  Tom Tromey  <tom@tromey.com>
5941
5942         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5943         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5944         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5945
5946 2018-07-09  Tom Tromey  <tom@tromey.com>
5947
5948         * Makefile.in (ALLDEPFILES): Remove exec.c.
5949         (COMMON_OBS): Remove exec.o.
5950         (COMMON_SFILES): Add exec.c.
5951
5952 2018-07-09  Tom Tromey  <tom@tromey.com>
5953
5954         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5955
5956 2018-07-09  Tom Tromey  <tom@tromey.com>
5957
5958         * Makefile.in (clean mostlyclean): Remove stamp-version.
5959         (version.c): Depend on stamp-version.
5960         (stamp-version): New rule, from version.c rule.
5961
5962 2018-07-09  Tom Tromey  <tom@tromey.com>
5963
5964         * Makefile.in (init.c): Depend on stamp-init.
5965         (stamp-init): New rule, from init.c rule.
5966         (clean mostlyclean): Remove stamp-init.
5967
5968 2018-07-09  Tom Tromey  <tom@tromey.com>
5969
5970         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5971         SUBDIR_GCC_COMPILE_SRCS.
5972
5973 2018-07-09  Tom Tromey  <tom@tromey.com>
5974
5975         * Makefile.in (init.c): Remove some unused sed rules.
5976
5977 2018-07-09  Tom Tromey  <tom@tromey.com>
5978
5979         * Makefile.in (TSOBS): Remove.
5980         (INIT_FILES): Update.
5981         (LIBGDB_OBS): Update.
5982         (COMMON_SFILES): Add inflow.c.
5983         (SFILES): Remove inflow.c.
5984
5985 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5986
5987         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5988
5989 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5990
5991         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5992         get_saveloc_name, is_signal_frame_name, step_name,
5993         init_remote_name, create_addr_space_name,
5994         destroy_addr_space_name, search_unwind_table_name,
5995         find_dyn_list_name): Constify.
5996
5997 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5998
5999         * darwin-nat.c (darwin_pthread_kill): New function.
6000         (darwin_resume_thread): Use darwin_pthread_kill.
6001
6002 2018-07-05  Tom de Vries  <tdevries@suse.de>
6003
6004         * macroexp.c (macro_buffer) <operator=>: New member function.
6005
6006 2018-07-04  Tom Tromey  <tom@tromey.com>
6007
6008         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6009
6010 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6011
6012         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6013         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6014         * maint.c: Likewise.
6015         * top.c: Likewise.
6016
6017 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6018
6019         * NEWS: Create a new section for the next release branch.
6020         Rename the section of the current branch, now that it has
6021         been cut.
6022
6023 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6024
6025         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6026         * version.in: Bump version to 8.2.50.DATE-git.
6027
6028 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6029             Pedro Alves  <palves@redhat.com>
6030
6031         * linux-nat.c (linux_init_ptrace): Rename to ...
6032         (linux_init_ptrace_procfs): ... this.  Call
6033         linux_proc_init_warnings.
6034         (linux_nat_target::post_attach)
6035         (linux_nat_target::post_startup_inferior): Adjust.
6036         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6037         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6038
6039 2018-07-04  Tom de Vries  <tdevries@suse.de>
6040
6041         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6042         check ...
6043         (read_comp_unit_head): ... here.
6044
6045 2018-07-03  Tom Tromey  <tom@tromey.com>
6046
6047         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6048         (stop_tracing, tstatus_command)
6049         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6050         (print_one_static_tracepoint_marker): Update.
6051         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6052         std::vector.
6053         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6054         VEC.
6055         (all_tracepoints, static_tracepoints_here): Return std::vector.
6056
6057 2018-07-03  Tom Tromey  <tom@tromey.com>
6058
6059         * common/ptid.c (ptid_equal): Remove.
6060         * common/ptid.h (ptid_equal): Don't declare.
6061         * ada-tasks.c: Update.
6062         * breakpoint.c: Update.
6063         * common/agent.c: Update.
6064         * corelow.c: Update.
6065         * darwin-nat-info.c: Update.
6066         * darwin-nat.c: Update.
6067         * dcache.c: Update.
6068         * dtrace-probe.c: Update.
6069         * dummy-frame.c: Update.
6070         * fbsd-nat.c: Update.
6071         * frame.c: Update.
6072         * gdbthread.h: Update.
6073         * gnu-nat.c: Update.
6074         * go32-nat.c: Update.
6075         * inf-loop.c: Update.
6076         * inf-ptrace.c: Update.
6077         * infcall.c: Update.
6078         * infcmd.c: Update.
6079         * inflow.c: Update.
6080         * infrun.c: Update.
6081         * linux-fork.c: Update.
6082         * linux-nat.c: Update.
6083         * linux-thread-db.c: Update.
6084         * mi/mi-cmd-var.c: Update.
6085         * mi/mi-interp.c: Update.
6086         * mi/mi-main.c: Update.
6087         * nto-procfs.c: Update.
6088         * ppc-linux-tdep.c: Update.
6089         * procfs.c: Update.
6090         * python/py-inferior.c: Update.
6091         * python/py-record-btrace.c: Update.
6092         * python/py-record.c: Update.
6093         * ravenscar-thread.c: Update.
6094         * regcache.c: Update.
6095         * remote-sim.c: Update.
6096         * remote.c: Update.
6097         * sol-thread.c: Update.
6098         * solib.c: Update.
6099         * target.c: Update.
6100         * tui/tui-stack.c: Update.
6101         * varobj.c: Update.
6102         * windows-nat.c: Update.
6103         * windows-tdep.c: Update.
6104
6105 2018-07-03  Tom Tromey  <tom@tromey.com>
6106
6107         * common/ptid.c (ptid_match): Remove.
6108         * common/ptid.h (ptid_match): Don't declare.
6109         * fbsd-nat.c: Update.
6110         * infcmd.c: Update.
6111         * infrun.c: Update.
6112         * linux-nat.c: Update.
6113         * record-btrace.c: Update.
6114         * regcache.c: Update.
6115         * remote.c: Update.
6116
6117 2018-07-03  Tom Tromey  <tom@tromey.com>
6118
6119         * common/ptid.c (ptid_tid_p): Remove.
6120         * common/ptid.h (ptid_tid_p): Don't declare.
6121         * sol-thread.c: Update.
6122
6123 2018-07-03  Tom Tromey  <tom@tromey.com>
6124
6125         * common/ptid.c (ptid_lwp_p): Remove.
6126         * common/ptid.h (ptid_lwp_p): Don't declare.
6127         * fbsd-nat.c: Update.
6128         * linux-nat.c: Update.
6129         * nat/linux-procfs.c: Update.
6130         * nat/x86-linux-dregs.c: Update.
6131         * sol-thread.c: Update.
6132
6133 2018-07-03  Tom Tromey  <tom@tromey.com>
6134
6135         * common/ptid.c (ptid_is_pid): Remove.
6136         * common/ptid.h (ptid_is_pid): Don't declare.
6137         * infrun.c: Update.
6138         * linux-nat.c: Update.
6139         * mi/mi-interp.c: Update.
6140         * remote.c: Update.
6141         * thread.c: Update.
6142
6143 2018-07-03  Tom Tromey  <tom@tromey.com>
6144
6145         * common/ptid.c (ptid_get_tid): Remove.
6146         * common/ptid.h (ptid_get_tid): Don't declare.
6147         * ada-tasks.c: Update.
6148         * aix-thread.c: Update.
6149         * bsd-uthread.c: Update.
6150         * darwin-nat.c: Update.
6151         * fbsd-nat.c: Update.
6152         * i386-darwin-nat.c: Update.
6153         * infrun.c: Update.
6154         * linux-tdep.c: Update.
6155         * nto-procfs.c: Update.
6156         * ppc-ravenscar-thread.c: Update.
6157         * python/py-infthread.c: Update.
6158         * ravenscar-thread.c: Update.
6159         * sol-thread.c: Update.
6160         * sparc-ravenscar-thread.c: Update.
6161         * windows-nat.c: Update.
6162
6163 2018-07-03  Tom Tromey  <tom@tromey.com>
6164
6165         * common/ptid.c (ptid_get_lwp): Remove.
6166         * common/ptid.h (ptid_get_lwp): Don't declare.
6167         * aarch64-linux-nat.c: Update.
6168         * ada-tasks.c: Update.
6169         * aix-thread.c: Update.
6170         * amd64-linux-nat.c: Update.
6171         * arm-linux-nat.c: Update.
6172         * corelow.c: Update.
6173         * fbsd-nat.c: Update.
6174         * fbsd-tdep.c: Update.
6175         * gnu-nat.c: Update.
6176         * i386-cygwin-tdep.c: Update.
6177         * i386-gnu-nat.c: Update.
6178         * i386-linux-nat.c: Update.
6179         * ia64-linux-nat.c: Update.
6180         * inf-ptrace.c: Update.
6181         * infrun.c: Update.
6182         * linux-fork.c: Update.
6183         * linux-nat.c: Update.
6184         * linux-tdep.c: Update.
6185         * linux-thread-db.c: Update.
6186         * mips-linux-nat.c: Update.
6187         * nat/aarch64-linux-hw-point.c: Update.
6188         * nat/aarch64-linux.c: Update.
6189         * nat/linux-btrace.c: Update.
6190         * nat/linux-osdata.c: Update.
6191         * nat/linux-procfs.c: Update.
6192         * nat/x86-linux-dregs.c: Update.
6193         * obsd-nat.c: Update.
6194         * ppc-fbsd-nat.c: Update.
6195         * ppc-linux-nat.c: Update.
6196         * procfs.c: Update.
6197         * python/py-infthread.c: Update.
6198         * ravenscar-thread.c: Update.
6199         * remote.c: Update.
6200         * s390-linux-nat.c: Update.
6201         * sol-thread.c: Update.
6202         * sol2-tdep.c: Update.
6203         * spu-linux-nat.c: Update.
6204         * x86-linux-nat.c: Update.
6205         * xtensa-linux-nat.c: Update.
6206
6207 2018-07-03  Tom Tromey  <tom@tromey.com>
6208
6209         * common/ptid.c (ptid_get_pid): Remove.
6210         * common/ptid.h (ptid_get_pid): Don't declare.
6211         * aarch64-linux-nat.c: Update.
6212         * ada-lang.c: Update.
6213         * aix-thread.c: Update.
6214         * alpha-bsd-nat.c: Update.
6215         * amd64-fbsd-nat.c: Update.
6216         * amd64-linux-nat.c: Update.
6217         * arm-linux-nat.c: Update.
6218         * arm-nbsd-nat.c: Update.
6219         * auxv.c: Update.
6220         * break-catch-syscall.c: Update.
6221         * breakpoint.c: Update.
6222         * bsd-uthread.c: Update.
6223         * corelow.c: Update.
6224         * ctf.c: Update.
6225         * darwin-nat.c: Update.
6226         * fbsd-nat.c: Update.
6227         * fbsd-tdep.c: Update.
6228         * gcore.c: Update.
6229         * gnu-nat.c: Update.
6230         * hppa-nbsd-nat.c: Update.
6231         * hppa-obsd-nat.c: Update.
6232         * i386-fbsd-nat.c: Update.
6233         * ia64-linux-nat.c: Update.
6234         * inf-ptrace.c: Update.
6235         * infcmd.c: Update.
6236         * inferior.c: Update.
6237         * inferior.h: Update.
6238         * inflow.c: Update.
6239         * infrun.c: Update.
6240         * linux-fork.c: Update.
6241         * linux-nat.c: Update.
6242         * linux-tdep.c: Update.
6243         * linux-thread-db.c: Update.
6244         * m68k-bsd-nat.c: Update.
6245         * mi/mi-interp.c: Update.
6246         * mi/mi-main.c: Update.
6247         * mips-linux-nat.c: Update.
6248         * mips-nbsd-nat.c: Update.
6249         * mips64-obsd-nat.c: Update.
6250         * nat/aarch64-linux-hw-point.c: Update.
6251         * nat/aarch64-linux.c: Update.
6252         * nat/linux-btrace.c: Update.
6253         * nat/linux-osdata.c: Update.
6254         * nat/linux-procfs.c: Update.
6255         * nat/x86-linux-dregs.c: Update.
6256         * nto-procfs.c: Update.
6257         * obsd-nat.c: Update.
6258         * ppc-linux-nat.c: Update.
6259         * ppc-nbsd-nat.c: Update.
6260         * ppc-obsd-nat.c: Update.
6261         * proc-service.c: Update.
6262         * procfs.c: Update.
6263         * python/py-inferior.c: Update.
6264         * python/py-infthread.c: Update.
6265         * ravenscar-thread.c: Update.
6266         * record.c: Update.
6267         * remote-sim.c: Update.
6268         * remote.c: Update.
6269         * rs6000-nat.c: Update.
6270         * s390-linux-nat.c: Update.
6271         * sh-nbsd-nat.c: Update.
6272         * sol-thread.c: Update.
6273         * sparc-nat.c: Update.
6274         * sparc64-tdep.c: Update.
6275         * spu-linux-nat.c: Update.
6276         * spu-tdep.c: Update.
6277         * target-debug.h: Update.
6278         * target.c: Update.
6279         * thread.c: Update.
6280         * tid-parse.c: Update.
6281         * tracefile-tfile.c: Update.
6282         * vax-bsd-nat.c: Update.
6283         * windows-nat.c: Update.
6284         * x86-linux-nat.c: Update.
6285         * x86-nat.c: Update.
6286
6287 2018-07-03  Tom Tromey  <tom@tromey.com>
6288
6289         * common/ptid.c (pid_to_ptid): Remove.
6290         * common/ptid.h (pid_to_ptid): Don't declare.
6291         * aix-thread.c: Update.
6292         * arm-linux-nat.c: Update.
6293         * common/ptid.c: Update.
6294         * common/ptid.h: Update.
6295         * corelow.c: Update.
6296         * ctf.c: Update.
6297         * darwin-nat.c: Update.
6298         * fbsd-nat.c: Update.
6299         * fork-child.c: Update.
6300         * gnu-nat.c: Update.
6301         * go32-nat.c: Update.
6302         * inf-ptrace.c: Update.
6303         * infcmd.c: Update.
6304         * inferior.c: Update.
6305         * infrun.c: Update.
6306         * linux-fork.c: Update.
6307         * linux-nat.c: Update.
6308         * nat/aarch64-linux-hw-point.c: Update.
6309         * nat/fork-inferior.c: Update.
6310         * nat/x86-linux-dregs.c: Update.
6311         * nto-procfs.c: Update.
6312         * obsd-nat.c: Update.
6313         * procfs.c: Update.
6314         * progspace.c: Update.
6315         * remote.c: Update.
6316         * rs6000-nat.c: Update.
6317         * s390-linux-nat.c: Update.
6318         * sol-thread.c: Update.
6319         * spu-linux-nat.c: Update.
6320         * target.c: Update.
6321         * top.c: Update.
6322         * tracefile-tfile.c: Update.
6323         * windows-nat.c: Update.
6324
6325 2018-07-03  Tom Tromey  <tom@tromey.com>
6326
6327         * common/ptid.h (ptid_build): Don't declare.
6328         * common/ptid.c (ptid_build): Remove.
6329         * aix-thread.c: Update.
6330         * bsd-kvm.c: Update.
6331         * bsd-uthread.c: Update.
6332         * common/agent.c: Update.
6333         * common/ptid.c: Update.
6334         * common/ptid.h: Update.
6335         * corelow.c: Update.
6336         * darwin-nat.c: Update.
6337         * fbsd-nat.c: Update.
6338         * gnu-nat.c: Update.
6339         * linux-fork.c: Update.
6340         * linux-nat.c: Update.
6341         * linux-thread-db.c: Update.
6342         * nat/linux-osdata.c: Update.
6343         * nat/linux-procfs.c: Update.
6344         * nto-procfs.c: Update.
6345         * obsd-nat.c: Update.
6346         * proc-service.c: Update.
6347         * procfs.c: Update.
6348         * ravenscar-thread.c: Update.
6349         * remote-sim.c: Update.
6350         * remote.c: Update.
6351         * sol-thread.c: Update.
6352         * target.c: Update.
6353         * windows-nat.c: Update.
6354
6355 2018-07-03  Tom Tromey  <tom@tromey.com>
6356
6357         * infrun.c (follow_exec): Use exit_inferior_silent.
6358         * inferior.c (exit_inferior_num_silent): Remove.
6359         * inferior.h (exit_inferior_num_silent): Don't declare.
6360
6361 2018-07-03  Tom Tromey  <tom@tromey.com>
6362
6363         PR cli/23340:
6364         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6365         inferior_ptid on error.
6366
6367 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6368             Simon Marchi  <simon.marchi@polymtl.ca>
6369
6370         PR tdep/8282
6371         * disasm.h (gdb_disassembler): Add
6372         `m_disassembler_options_holder'. member
6373         * disasm.c (get_all_disassembler_options): New function.
6374         (gdb_disassembler::gdb_disassembler): Use it.
6375         (gdb_buffered_insn_length_init_dis): Likewise.
6376         (gdb_buffered_insn_length): Adjust accordingly.
6377         (set_disassembler_options): Handle options with arguments.
6378         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6379         line if showing options with descriptions.
6380         (disassembler_options_completer): Adapt to using the
6381         `disasm_options_and_args_t' structure.
6382         * mips-tdep.c (mips_disassembler_options): New variable.
6383         (mips_disassembler_options_o32): Likewise.
6384         (mips_disassembler_options_n32): Likewise.
6385         (mips_disassembler_options_n64): Likewise.
6386         (gdb_print_insn_mips): Don't set `disassembler_options'.
6387         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6388         functions.
6389         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6390         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6391         `gdbarch_disassembler_options_implicit' and
6392         `gdbarch_valid_disassembler_options'.
6393         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6394         `disasm_options_and_args_t' structure.
6395         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6396         method.
6397         (valid_disassembler_options): Switch from `disasm_options_t' to
6398         the `disasm_options_and_args_t' structure.
6399         * NEWS: Document `set disassembler-options' support for the MIPS
6400         target.
6401         * gdbarch.h: Regenerate.
6402         * gdbarch.c: Regenerate.
6403
6404 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6405
6406         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6407
6408 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6409
6410         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6411         parameter in call to amd64_target_description.
6412         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6413         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6414         (amd64fbsd_init_abi): Likewise.
6415         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6416         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6417         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6418         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6419
6420 2018-06-29  Pedro Alves  <palves@redhat.com>
6421
6422         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6423         "segments" parameter.
6424         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6425         (_initialize_amd64_tdep): Update call to
6426         amd64_create_target_description.
6427         (amd64_target_description): Add "segments" parameter.  Adjust
6428         the implementation to use it.
6429         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6430         call to amd64_create_target_description.
6431         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6432         * gdb/arch/amd64.h (amd64_create_target_description): Add
6433         "segments" register.
6434         * gdb/arch/amd64.c (amd64_create_target_description): Add
6435         "segments" parameter.  Call create_feature_i386_64bit_segments
6436         only if SEGMENTS is true.
6437         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6438         call to amd64_create_target_description.
6439
6440 2018-06-29  Pedro Alves  <palves@redhat.com>
6441
6442         * thread.c (thread_target_id_str): New, factored out from ...
6443         (print_thread_info_1): ... here.  Use it to compute the max
6444         "Target Id" column width.
6445
6446 2018-06-29  Pedro Alves  <palves@redhat.com>
6447
6448         * remote.c (remote_target::extra_thread_info): Delete
6449         'display_buf' and 'n' locals.  from the cache, regardless of
6450         packet mechanims is in use.  Use cache for qThreadExtra and qP
6451         methods too.
6452
6453 2018-06-29  Pedro Alves  <palves@redhat.com>
6454
6455         * blockframe.c (find_pc_sect_containing_function): New function.
6456         * breakpoint.c (print_breakpoint_location): Don't call
6457         find_pc_sect_function.
6458         * linespec.c (create_sals_line_offset): Record the location's
6459         symbol in the sal.
6460         * linespec.c (convert_address_location_to_sals): Fill in sal's
6461         symbol with find_pc_sect_containing_function.
6462         * symtab.c (find_function_start_sal): Rename to ...
6463         (find_function_start_sal_1): ... this.
6464         (find_function_start_sal): Reimplement as wrapper around
6465         find_function_start_sal_1, and use
6466         find_pc_sect_containing_function to fill in the sal's symbol.
6467         (find_function_start_sal(symbol*, bool)): Adjust.
6468         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6469         comments.
6470         (find_pc_sect_containing_function): Declare.
6471
6472 2018-06-29  Pedro Alves  <palves@redhat.com>
6473
6474         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6475         true if the the location has no symbol.
6476
6477 2018-06-28  Tom Tromey  <tom@tromey.com>
6478
6479         * NEWS: Mention --enable-codesign.
6480         * silent-rules.mk (ECHO_SIGN): New variable.
6481         * configure.ac: Add --enable-codesign.
6482         * configure: Rebuild.
6483         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6484         (gdb$(EXEEXT)): Optionally invoke codesign.
6485
6486 2018-06-28  Pedro Alves  <palves@redhat.com>
6487
6488         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6489         comments.
6490         (switch_to_thread_no_regs): Adjust comment.
6491         * infcmd.c (stop_pc): Delete.
6492         (post_create_inferior, info_program_command): Replace references
6493         to stop_pc with references to thread_info->suspend.stop_pc.
6494         * inferior.h (stop_pc): Delete declaration.
6495         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6496         (handle_inferior_event_1, handle_signal_stop)
6497         (process_event_stop_test, keep_going_stepped_thread)
6498         (handle_step_into_function, handle_step_into_function_backward)
6499         (print_stop_location): Replace references to stop_pc with
6500         references to thread_info->suspend.stop_pc.
6501         (struct infcall_suspend_state) <stop_pc>: Delete field.
6502         (save_infcall_suspend_state, restore_infcall_suspend_state):
6503         Remove references to inf_stat->stop_pc.
6504         * linux-fork.c (fork_load_infrun_state): Likewise.
6505         * record-btrace.c (record_btrace_set_replay): Likewise.
6506         * record-full.c (record_full_goto_entry): Likewise.
6507         * remote.c (print_one_stopped_thread): Likewise.
6508         * target.c (target_resume): Extend comment.
6509         * thread.c (set_executing_thread): New.
6510         (set_executing): Use it.
6511         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6512         Remove references to stop_pc.
6513
6514 2018-06-28  Pedro Alves  <palves@redhat.com>
6515
6516         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6517         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6518
6519 2018-06-28  Tom Tromey  <tom@tromey.com>
6520
6521         * coffread.c (coff_symfile_finish): Update.
6522         * xcoffread.c (xcoff_symfile_finish): Update.
6523         * elfread.c (elf_symfile_finish): Update.
6524         * symfile.h (dwarf2_free_objfile): Don't declare.
6525         * dwarf2read.c (_initialize_dwarf2_read): Use
6526         register_objfile_data_with_cleanup.
6527         (dwarf2_free_objfile): Now static.  Change signature.
6528
6529 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6530
6531         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6532         option "-o" to add-symbol-file-load to add an offset to each
6533         section's load address.
6534         * symfile.c (set_objfile_default_section_offset): New function.
6535
6536 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6537
6538         * symfile.c (add_symbol_file_command): Make sure that sections
6539         with the same name are sorted in the same order.
6540
6541 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6542
6543         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6544         require the second argument.  If omitted, load sections at the
6545         addresses specified in the file.
6546
6547 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6548
6549         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6550         (_initialize_symfile): Add option "-o" to symbol-file to add an
6551         offset to each section of the symbol file.
6552
6553 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6554
6555         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6556
6557 2018-06-27  Tom Tromey  <tom@tromey.com>
6558
6559         * stack.c (_initialize_stack): Update "func" help text.
6560
6561 2018-06-27  Tom Tromey  <tom@tromey.com>
6562
6563         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6564         std::vector.
6565         (unwind_infopy_str, pyuw_create_unwind_info)
6566         (unwind_infopy_add_saved_register, pyuw_sniffer)
6567         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6568         Update.
6569         (struct saved_reg): Add constructor.
6570         <value>: Now a gdbpy_ref<>.
6571
6572 2018-06-27  Tom Tromey  <tom@tromey.com>
6573
6574         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6575
6576 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6577
6578         * gdb-gdb.py.in: Format using autopep8.
6579
6580 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6581
6582         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6583         (type_lookup_function): Recognize CORE_ADDR values.
6584
6585 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6586
6587         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6588         print tag_name.
6589
6590 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6591
6592         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6593         <__lt__>: Add.
6594
6595 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6596
6597         * gdb-gdb.py: Move to...
6598         * gdb-gdb.py.in: ... here.
6599         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6600         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6601         dependencies.
6602         (distclean): Remove gdb-gdb.py when cleaning.
6603         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6604         * configure: Re-generate.
6605
6606 2018-06-27  Pedro Alves  <palves@redhat.com>
6607
6608         * proc-service.c (get_ps_regcache): New.
6609         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6610         (ps_lsetfpregs): Use it.
6611
6612 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6613
6614         PR gdb/21695
6615         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6616         (dwarf_decode_lines_1): Adjust.
6617
6618 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6619
6620         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6621         override.
6622         <info_proc>: Likewise.
6623
6624 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6625
6626         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6627         to windows_fetch_one_register, and only handle the case of
6628         fetching one register.  Move the code that reloads the context
6629         and iterates over all registers if R is negative to...
6630         (windows_nat_target::fetch_registers): ... here.
6631         (do_windows_store_inferior_registers): Rename to
6632         windows_store_one_register, and only handle the case of storing
6633         one register.  Move the code that handles the case where r is
6634         negative to...
6635         (windows_nat_target::store_registers) ... here.
6636
6637 2018-06-26  Tom Tromey  <tom@tromey.com>
6638
6639         PR rust/22574:
6640         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6641         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6642         Update.
6643         (rust_internal_print_type): Add podata parameter.
6644         (rust_print_type): Update.
6645
6646 2018-06-26  Tom Tromey  <tom@tromey.com>
6647
6648         * typeprint.h (struct print_offset_data) <update, finish,
6649         maybe_print_hole>: New methods.
6650         <indentation>: New constant.
6651         * typeprint.c (print_offset_data::indentation): Define.
6652         (print_offset_data::maybe_print_hole, print_offset_data::update)
6653         (print_offset_data::finish): Move from c-typeprint.c and rename.
6654         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6655         (print_spaces_filtered_with_print_options): Update.
6656         (c_print_type_union_field_offset, maybe_print_hole)
6657         (c_print_type_struct_field_offset): Move to typeprint.c and
6658         rename.
6659         (c_type_print_base_struct_union): Update.
6660
6661 2018-06-25  Pedro Alves  <palves@redhat.com>
6662
6663         * gdbthread.h (thread_info_ref, delete_thread)
6664         (delete_thread_silent, first_thread_of_inferior)
6665         (any_thread_of_inferior, switch_to_thread)
6666         (enable_thread_stack_temporaries)
6667         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6668         (get_last_thread_stack_temporary)
6669         (value_in_thread_stack_temporaries, can_access_registers_thread):
6670         Spell out "struct thread_info" instead of just "thread_info".
6671         * inferior.h (notice_new_inferior): Likewise.
6672
6673 2018-06-25  Pedro Alves  <palves@redhat.com>
6674
6675         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6676         pass thread_info pointer to delete_thread.
6677         (windows_nat_target::detach): Pass inferior pointer to
6678         detach_inferior.
6679         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6680         delete_thread.
6681         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6682         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6683         and pass a thread_info pointer to delete_thread.
6684         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6685         pass thread_info pointer to delete_thread.
6686         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6687         delete_thread_silent call.
6688         * procfs.c (procfs_target::detach): Pass inferior pointer to
6689         detach_inferior.
6690         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6691         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6692         delete_thread_silent call.
6693         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6694         pass thread_info pointer to delete_thread.
6695         (windows_nat_target::detach): Pass inferior pointer to
6696         delete_inferior.
6697
6698 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6699
6700         * regcache.c (readable_regcache::read_part): Fix asserts.
6701         (reg_buffer::raw_collect_part): New function.
6702         (regcache::write_part): Fix asserts.
6703         (reg_buffer::raw_supply_part): New function.
6704         (regcache::transfer_regset_register): New helper function.
6705         (regcache::transfer_regset): Call new functions.
6706         (regcache_supply_regset): Use gdb_byte*.
6707         (regcache::supply_regset): Likewise.
6708         (regcache_collect_regset): Likewise.
6709         (regcache::collect_regset): Likewise.
6710         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6711         (reg_buffer::raw_supply_part): Likewise.
6712         (regcache::transfer_regset_register): Likewise.
6713         (regcache::transfer_regset): Use gdb_byte*.
6714
6715 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6716
6717         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6718
6719 2018-06-21  Pedro Alves  <palves@redhat.com>
6720
6721         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6722         instead of a ptid_t.  All callers adjusted.
6723         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6724         adjusted.
6725         (print_ada_task_info, display_current_task_id, task_command_1):
6726         Adjust.
6727         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6728         inferior_thread.
6729         (breakpoint_kind): Adjust.
6730         (remove_breakpoints_pid): Rename to ...
6731         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6732         pointer.  All callers adjusted.
6733         (bpstat_clear_actions): Use inferior_thread.
6734         (get_bpstat_thread): New.
6735         (bpstat_do_actions): Use it.
6736         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6737         to take a thread_info pointer.  All callers adjusted.
6738         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6739         (breakpoint_re_set_thread): Use inferior_thread.
6740         * breakpoint.h (struct inferior): Forward declare.
6741         (bpstat_stop_status): Update.
6742         (remove_breakpoints_pid): Delete.
6743         (remove_breakpoints_inf): New.
6744         * bsd-uthread.c (bsd_uthread_target::wait)
6745         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6746         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6747         (maint_btrace_packet_history_cmd)
6748         (maint_btrace_clear_packet_history_cmd): Adjust.
6749         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6750         inferior_thread.
6751         * cli/cli-interp.c: Include "inferior.h".
6752         * common/refcounted-object.h (struct
6753         refcounted_object_ref_policy): New.
6754         * compile/compile-object-load.c: Include gdbthread.h.
6755         (store_regs): Use inferior_thread.
6756         * corelow.c (core_target::close): Use current_inferior.
6757         (core_target_open): Adjust to use first_thread_of_inferior and use
6758         the current inferior.
6759         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6760         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6761         <thread>: ... this new field.  All references adjusted.
6762         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6763         Take a thread_info pointer instead of a ptid_t.
6764         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6765         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6766         thread_info pointer instead of a ptid_t.
6767         * elfread.c: Include "inferior.h".
6768         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6769         Use inferior_thread.
6770         * eval.c (evaluate_subexp): Likewise.
6771         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6772         inferior_thread.
6773         * gdb_proc_service.h (struct thread_info): Forward declare.
6774         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6775         <thread>: ... this new field.  All references adjusted.
6776         * gdbarch.h, gdbarch.c: Regenerate.
6777         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6778         'thread' parameter.  All implementations and callers adjusted.
6779         * gdbthread.h (thread_info) <set_running>: New method.
6780         (delete_thread, delete_thread_silent): Take a thread_info pointer
6781         instead of a ptid.
6782         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6783         (first_thread_of_process): Delete, replaced by ...
6784         (first_thread_of_inferior): ... this new function.  All callers
6785         adjusted.
6786         (any_live_thread_of_process): Delete, replaced by ...
6787         (any_live_thread_of_inferior): ... this new function.  All callers
6788         adjusted.
6789         (switch_to_thread, switch_to_no_thread): Declare.
6790         (is_executing): Delete.
6791         (enable_thread_stack_temporaries): Update comment.
6792         <enable_thread_stack_temporaries>: Take a thread_info pointer
6793         instead of a ptid_t.  Incref the thread.
6794         <~enable_thread_stack_temporaries>: Decref the thread.
6795         <m_ptid>: Delete
6796         <m_thr>: New.
6797         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6798         (get_last_thread_stack_temporary)
6799         (value_in_thread_stack_temporaries, can_access_registers_thread):
6800         Take a thread_info pointer instead of a ptid_t.  All callers
6801         adjusted.
6802         * infcall.c (get_call_return_value): Use inferior_thread.
6803         (run_inferior_call): Work with thread pointers instead of ptid_t.
6804         (call_function_by_hand_dummy): Work with thread pointers instead
6805         of ptid_t.  Use thread_info_ref.
6806         * infcmd.c (proceed_thread_callback): Access thread's state
6807         directly.
6808         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6809         access thread's state directly.
6810         (continue_command): Use inferior_thread.
6811         (info_program_command): Use find_thread_ptid and access thread
6812         state directly.
6813         (proceed_after_attach_callback): Use thread state directly.
6814         (notice_new_inferior): Take a thread_info pointer instead of a
6815         ptid_t.  All callers adjusted.
6816         (exit_inferior): Take an inferior pointer instead of a pid.  All
6817         callers adjusted.
6818         (exit_inferior_silent): New.
6819         (detach_inferior): Delete.
6820         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6821         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6822         (detach_inferior_command, kill_inferior_command): Use
6823         find_inferior_id instead of valid_gdb_inferior_id and
6824         gdb_inferior_id_to_pid.
6825         (inferior_command): Use inferior and thread pointers.
6826         * inferior.h (struct thread_info): Forward declare.
6827         (notice_new_inferior): Take a thread_info pointer instead of a
6828         ptid_t.  All callers adjusted.
6829         (detach_inferior): Delete declaration.
6830         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6831         instead of a pid.  All callers adjusted.
6832         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6833         (valid_gdb_inferior_id): Delete.
6834         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6835         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6836         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6837         ...
6838         <inf>: ... this new field.
6839         <step_ptid>: Delete, replaced by ...
6840         <step_thread>: ... this new field.
6841         (get_displaced_stepping_state): Take an inferior pointer instead
6842         of a pid.  All callers adjusted.
6843         (displaced_step_in_progress_any_inferior): Adjust.
6844         (displaced_step_in_progress_thread): Take a thread pointer instead
6845         of a ptid_t.  All callers adjusted.
6846         (displaced_step_in_progress, add_displaced_stepping_state): Take
6847         an inferior pointer instead of a pid.  All callers adjusted.
6848         (get_displaced_step_closure_by_addr): Adjust.
6849         (remove_displaced_stepping_state): Take an inferior pointer
6850         instead of a pid.  All callers adjusted.
6851         (displaced_step_prepare_throw, displaced_step_prepare)
6852         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6853         All callers adjusted.
6854         (start_step_over): Adjust.
6855         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6856         displaced step queue.
6857         (do_target_resume): Adjust.
6858         (fetch_inferior_event): Use inferior_thread.
6859         (context_switch, get_inferior_stop_soon): Take an
6860         execution_control_state pointer instead of a ptid_t.  All callers
6861         adjusted.
6862         (switch_to_thread_cleanup): Delete.
6863         (stop_all_threads): Use scoped_restore_current_thread.
6864         * inline-frame.c: Include "gdbthread.h".
6865         (inline_state) <inline_state>: Take a thread pointer instead of a
6866         ptid_t.  All callers adjusted.
6867         <ptid>: Delete, replaced by ...
6868         <thread>: ... this new field.
6869         (find_inline_frame_state): Take a thread pointer instead of a
6870         ptid_t.  All callers adjusted.
6871         (skip_inline_frames, step_into_inline_frame)
6872         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6873         pointer instead of a ptid_t.  All callers adjusted.
6874         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6875         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6876         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6877         pointers directly.
6878         * linux-nat.c (get_detach_signal): Likewise.
6879         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6880         (thread_db_notice_clone): Adjust.
6881         (thread_db_find_new_threads_silently)
6882         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6883         a thread pointer instead of a ptid_t.  All callers adjusted.
6884         * mi/mi-cmd-var.c: Include "inferior.h".
6885         (mi_cmd_var_update_iter): Update to use thread pointers.
6886         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6887         inferior directly.
6888         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6889         out to ...
6890         (mi_output_running): ... this new function.
6891         (mi_on_resume_1): Adjust to use it.
6892         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6893         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6894         directly.
6895         (interrupt_thread_callback): : Adjust to use thread and inferior
6896         pointers.
6897         * proc-service.c: Include "gdbthread.h".
6898         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6899         * progspace-and-thread.c: Include "inferior.h".
6900         * progspace.c: Include "inferior.h".
6901         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6902         hold a reference to an inferior_object.
6903         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6904         inferior_thread.
6905         * python/py-inferior.c (struct inferior_object): Give the type a
6906         tag name instead of a typedef.
6907         (python_on_normal_stop): No need to check if the current thread is
6908         listed.
6909         (inferior_to_inferior_object): Change return type to
6910         inferior_object.  All callers adjusted.
6911         (find_thread_object): Delete, bits factored out to ...
6912         (thread_to_thread_object): ... this new function.
6913         * python/py-infthread.c (create_thread_object): Use
6914         inferior_to_inferior_object.
6915         (thpy_is_stopped): Use thread pointer directly.
6916         (gdbpy_selected_thread): Use inferior_thread.
6917         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6918         field, replaced with ...
6919         <thread>: ... this new field.  All users adjusted.
6920         (btpy_insn_or_gap_new): Drop const.
6921         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6922         callers adjusted.
6923         * python/py-record.c: Include "gdbthread.h".
6924         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6925         a ptid_t.  All callers adjusted.
6926         (gdbpy_current_recording): Use inferior_thread.
6927         * python/py-record.h (recpy_record_object) <ptid>: Delete
6928         field, replaced with ...
6929         <thread>: ... this new field.  All users adjusted.
6930         (recpy_element_object) <ptid>: Delete
6931         field, replaced with ...
6932         <thread>: ... this new field.  All users adjusted.
6933         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6934         a ptid_t.  All callers adjusted.
6935         * python/py-threadevent.c: Include "gdbthread.h".
6936         (get_event_thread): Use thread_to_thread_object.
6937         * python/python-internal.h (struct inferior_object): Forward
6938         declare.
6939         (find_thread_object, find_inferior_object): Delete declarations.
6940         (thread_to_thread_object, inferior_to_inferior_object): New
6941         declarations.
6942         * record-btrace.c: Include "inferior.h".
6943         (require_btrace_thread): Use inferior_thread.
6944         (record_btrace_frame_sniffer)
6945         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6946         (get_thread_current_frame): Use scoped_restore_current_thread and
6947         switch_to_thread.
6948         (get_thread_current_frame): Use thread pointer directly.
6949         (record_btrace_replay_at_breakpoint): Use thread's inferior
6950         pointer directly.
6951         * record-full.c: Include "inferior.h".
6952         * regcache.c: Include "gdbthread.h".
6953         (get_thread_arch_regcache): Use the inferior's address space
6954         directly.
6955         (get_thread_regcache, registers_changed_thread): New.
6956         * regcache.h (get_thread_regcache(thread_info *thread)): New
6957         overload.
6958         (registers_changed_thread): New.
6959         (remote_target) <remote_detach_1>: Swap order of parameters.
6960         (remote_add_thread): <remote_add_thread>: Return the new thread.
6961         (get_remote_thread_info(ptid_t)): New overload.
6962         (remote_target::remote_notice_new_inferior): Use thread pointers
6963         directly.
6964         (remote_target::process_initial_stop_replies): Use
6965         thread_info::set_running.
6966         (remote_target::remote_detach_1, remote_target::detach)
6967         (extended_remote_target::detach): Adjust.
6968         * stack.c (frame_show_address): Use inferior_thread.
6969         * target-debug.h (target_debug_print_thread_info_pp): New.
6970         * target-delegates.c: Regenerate.
6971         * target.c (default_thread_address_space): Delete.
6972         (memory_xfer_partial_1): Use current_inferior.
6973         (target_detach): Use current_inferior.
6974         (target_thread_address_space): Delete.
6975         (generic_mourn_inferior): Use current_inferior.
6976         * target.h (struct target_ops) <thread_address_space>: Delete.
6977         (target_thread_address_space): Delete.
6978         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6979         pointers directly.
6980         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6981         thread pointer instead of a ptid_t.  Adjust all callers.
6982         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6983         (first_thread_of_process): Delete, replaced by ...
6984         (first_thread_of_inferior): ... this new function.  All callers
6985         adjusted.
6986         (any_thread_of_process): Rename to ...
6987         (any_thread_of_inferior): ... this, and take an inferior pointer.
6988         (any_live_thread_of_process): Rename to ...
6989         (any_live_thread_of_inferior): ... this, and take an inferior
6990         pointer.
6991         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6992         (value_in_thread_stack_temporaries)
6993         (get_last_thread_stack_temporary): Take a thread pointer instead
6994         of a ptid_t.  Adjust all callers.
6995         (thread_info::set_running): New.
6996         (validate_registers_access): Use inferior_thread.
6997         (can_access_registers_ptid): Rename to ...
6998         (can_access_registers_thread): ... this, and take a thread
6999         pointer.
7000         (print_thread_info_1): Adjust to compare thread pointers instead
7001         of ptids.
7002         (switch_to_no_thread, switch_to_thread): Make extern.
7003         (scoped_restore_current_thread::~scoped_restore_current_thread):
7004         Use m_thread pointer directly.
7005         (scoped_restore_current_thread::scoped_restore_current_thread):
7006         Use inferior_thread.
7007         (thread_command): Use thread pointer directly.
7008         (thread_num_make_value_helper): Use inferior_thread.
7009         * top.c (execute_command): Use inferior_thread.
7010         * tui/tui-interp.c: Include "inferior.h".
7011         * varobj.c (varobj_create): Use inferior_thread.
7012         (value_of_root_1): Use find_thread_global_id instead of
7013         global_thread_id_to_ptid.
7014
7015 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7016
7017         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7018         possible.
7019         (regcache::write_part): Likewise.
7020         (readable_regcache::cooked_read_part): Update comment.
7021         (readable_regcache::cooked_write_part): Likewise.
7022         * regcache.h: (readable_regcache::read_part): Likewise.
7023         (regcache::write_part): Likewise.
7024
7025 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7026             Dirk Schubert  <dirk.schubert@arm.com>
7027
7028         * aarch64-linux-nat.c (post_attach): New.
7029         (aarch64_linux_nat_target::post_attach): Override post_attach to
7030         record the number of hardware debug registers.
7031
7032 2018-06-20  Tom Tromey  <tom@tromey.com>
7033
7034         * python/py-param.c (add_setshow_generic): Make parameters const.
7035         (parmpy_init): Update.
7036
7037 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7038
7039         * regcache.h (regcache_cooked_read_ftype): Rename to...
7040         (register_read_ftype): ...this, change type to function_view.
7041         (class reg_buffer) <save>: Remove src parameter.
7042         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7043         parameter non-const in first overload.  Remove src parameter in
7044         second overload.
7045         * regcache.c (do_cooked_read): Remove.
7046         (readonly_detached_regcache::readonly_detached_regcache): Make
7047         parameter non-const, adjust call to other constructor.
7048         (reg_buffer::save): Remove src parameter.
7049         * frame.c (do_frame_register_read): Remove.
7050         (frame_save_as_regcache): Use lambda function.
7051         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7052         parameter to ppu2spu_data *.
7053         (ppu2spu_sniffer): Use lambda function.
7054
7055 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7056
7057         * record-full.c (record_full_target::insert_breakpoint): Remove
7058         "struct" keyword, add const.
7059
7060 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7061
7062         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7063         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7064         * configure.ac: Remove AC_PREREQ, add missing quoting.
7065         * gnulib/configure.ac: Modernize usage of
7066         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7067         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7068         (AUTOMAKE_VERSION): Bump to 1.15.1.
7069         * configure: Re-generate.
7070         * config.in: Re-generate.
7071         * aclocal.m4: Re-generate.
7072         * gnulib/aclocal.m4: Re-generate.
7073         * gnulib/config.in: Re-generate.
7074         * gnulib/configure: Re-generate.
7075         * gnulib/import/Makefile.in: Re-generate.
7076
7077 2018-06-19  Pedro Alves  <palves@redhat.com>
7078
7079         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7080         (lookup_minimal_symbol_by_pc_section): ... here with
7081         gdb_assert_not_reached added.
7082
7083 2018-06-19  Pedro Alves  <palves@redhat.com>
7084
7085         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7086         parameter with a block parameter.  Compare location's block symbol
7087         with the frame's block instead of addresses.
7088         (skip_inline_frames): Pass the current block instead of the
7089         frame's address.  Break out as soon as we determine the frame
7090         should not be skipped.
7091
7092 2018-06-18  Tom Tromey  <tom@tromey.com>
7093
7094         * solib-aix.c (solib_aix_get_section_offsets): Return
7095         unique_xmalloc_ptr.
7096         (solib_aix_solib_create_inferior_hook): Update.
7097
7098 2018-06-18  Tom Tromey  <tom@tromey.com>
7099
7100         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7101
7102 2018-06-18  Tom Tromey  <tom@tromey.com>
7103
7104         * solib-frv.c (frv_relocate_main_executable): Use
7105         unique_xmalloc_ptr.
7106         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7107         unique_xmalloc_ptr.
7108
7109 2018-06-18  Tom Tromey  <tom@tromey.com>
7110
7111         * objfiles.h (inhibit_section_map_updates): Update.
7112         (resume_section_map_updates, resume_section_map_updates_cleanup):
7113         Remove.
7114         * solib-svr4.c (svr4_handle_solib_event): Update.
7115         * objfiles.c (inhibit_section_map_updates): Return
7116         scoped_restore_tmpl<int>.
7117         (resume_section_map_updates, resume_section_map_updates_cleanup):
7118         Remove.
7119
7120 2018-06-18  Tom Tromey  <tom@tromey.com>
7121
7122         * valprint.h (read_string): Update.
7123         * valprint.c (read_string): Change type of "buffer".
7124         (val_print_string): Update.
7125         * python/py-value.c (valpy_string): Update.
7126         * language.h (struct language_defn) <la_get_string>: Change
7127         type of "buffer".
7128         (default_get_string, c_get_string): Update.
7129         * language.c (default_get_string): Change type of "buffer".
7130         * guile/scm-value.c (gdbscm_value_to_string): Update.
7131         * c-lang.c (c_get_string): Change type of "buffer".
7132
7133 2018-06-18  Tom Tromey  <tom@tromey.com>
7134
7135         * ser-mingw.c (struct pipe_state_destroyer): New.
7136         (pipe_state_up): New typedef.
7137         (cleanup_pipe_state): Remove.
7138         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7139
7140 2018-06-18  Tom Tromey  <tom@tromey.com>
7141
7142         * rust-lang.h (rust_yyerror): Don't declare.
7143         * rust-lang.c (rust_language_defn): Update.
7144         * rust-exp.y (yyerror): Now static.
7145         * parse.c (parse_exp_in_context_1): Update.
7146         * p-lang.h (p_yyerror): Don't declare.
7147         * p-lang.c (p_language_defn): Update.
7148         * p-exp.y (yyerror): Now static.
7149         * opencl-lang.c (opencl_language_defn): Update.
7150         * objc-lang.c (objc_language_defn): Update.
7151         * m2-lang.h (m2_yyerror): Don't declare.
7152         * m2-lang.c (m2_language_defn): Update.
7153         * m2-exp.y (yyerror): Now static.
7154         * language.h (struct language_defn) <la_error>: Remove.
7155         * language.c (unk_lang_error): Remove.
7156         (unknown_language_defn, auto_language_defn): Remove.
7157         * go-lang.h (go_yyerror): Don't declare.
7158         * go-lang.c (go_language_defn): Update.
7159         * go-exp.y (yyerror): Now static.
7160         * f-lang.h (f_yyerror): Don't declare.
7161         * f-lang.c (f_language_defn): Update.
7162         * f-exp.y (yyerror): Now static.
7163         * d-lang.h (d_yyerror): Don't declare.
7164         * d-lang.c (d_language_defn): Update.
7165         * d-exp.y (yyerror): Now static.
7166         * c-lang.h (c_yyerror): Don't declare.
7167         * c-lang.c (c_language_defn, cplus_language_defn)
7168         (asm_language_defn, minimal_language_defn): Update.
7169         * c-exp.y (yyerror): Now static.
7170         * ada-lang.h (ada_yyerror): Don't declare.
7171         * ada-lang.c (ada_language_defn): Update.
7172         * ada-exp.y (yyerror): Now static.
7173
7174 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7175
7176         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7177         (store_sveregs_to_thread): Likewise.
7178         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7179         (aarch64_linux_store_inferior_registers): Likewise.
7180         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7181         function.
7182         (aarch64_sve_regs_copy_to_regcache): Likewise.
7183         (aarch64_sve_regs_copy_from_regcache): Likewise.
7184         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7185         declaration.
7186         (aarch64_sve_regs_copy_to_regcache): Likewise.
7187         (aarch64_sve_regs_copy_from_regcache): Likewise.
7188         (sve_context): Structure from Linux headers.
7189         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7190         (SVE_SIG_ZREG_SIZE): Likewise.
7191         (SVE_SIG_PREG_SIZE): Likewise.
7192         (SVE_SIG_FFR_SIZE): Likewise.
7193         (SVE_SIG_REGS_OFFSET): Likewise.
7194         (SVE_SIG_ZREGS_OFFSET): Likewise.
7195         (SVE_SIG_ZREG_OFFSET): Likewise.
7196         (SVE_SIG_ZREGS_SIZE): Likewise.
7197         (SVE_SIG_PREGS_OFFSET): Likewise.
7198         (SVE_SIG_PREG_OFFSET): Likewise.
7199         (SVE_SIG_PREGS_SIZE): Likewise.
7200         (SVE_SIG_FFR_OFFSET): Likewise.
7201         (SVE_SIG_REGS_SIZE): Likewise.
7202         (SVE_SIG_CONTEXT_SIZE): Likewise.
7203         (SVE_PT_REGS_MASK): Likewise.
7204         (SVE_PT_REGS_FPSIMD): Likewise.
7205         (SVE_PT_REGS_SVE): Likewise.
7206         (SVE_PT_VL_INHERIT): Likewise.
7207         (SVE_PT_VL_ONEXEC): Likewise.
7208         (SVE_PT_REGS_OFFSET): Likewise.
7209         (SVE_PT_FPSIMD_OFFSET): Likewise.
7210         (SVE_PT_FPSIMD_SIZE): Likewise.
7211         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7212         (SVE_PT_SVE_PREG_SIZE): Likewise.
7213         (SVE_PT_SVE_FFR_SIZE): Likewise.
7214         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7215         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7216         (__SVE_SIG_TO_PT): Likewise.
7217         (SVE_PT_SVE_OFFSET): Likewise.
7218         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7219         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7220         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7221         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7222         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7223         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7224         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7225         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7226         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7227         (SVE_PT_SVE_SIZE): Likewise.
7228         (SVE_PT_SIZE): Likewise.
7229         (HAS_SVE_STATE): New define.
7230
7231 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7232
7233         * nat/aarch64-sve-linux-sigcontext.h: New file.
7234         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7235         new files.
7236         (SVE_VQ_MIN): Likewise.
7237         (SVE_VQ_MAX): Likewise.
7238         (SVE_VL_MIN): Likewise.
7239         (SVE_VL_MAX): Likewise.
7240         (SVE_NUM_ZREGS): Likewise.
7241         (SVE_NUM_PREGS): Likewise.
7242         (sve_vl_valid): Likewise.
7243         (struct user_sve_header): Likewise.
7244
7245 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7246             Richard Bunt <Richard.Bunt@arm.com>
7247
7248         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7249         was requested by GDB.
7250
7251 2018-06-15  Tom de Vries  <tdevries@suse.de>
7252
7253         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7254
7255 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7256
7257         * gnulib/update-gnulib.sh: Print expected versions of
7258         autoconf/aclocal.
7259
7260 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7261
7262         * arch-utils.c (default_type_align): Use type_length_units.
7263         * gdbtypes.c (type_align): Use type_length_units.
7264
7265 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7266
7267         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7268         of 'define' command.
7269
7270 2018-06-14  Tom de Vries  <tdevries@suse.de>
7271
7272         PR cli/22573
7273         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7274         get_no_prettyformat_print_options.
7275
7276 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7277
7278         * sparc-nat.h: Include target.h.
7279         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7280         <fetch_registers>: Remove this argument in function call.
7281         <store_registers>: Remove this argument in function call, remove
7282         extra semicolon.
7283         <low_forget_process>: Call sparc64_forget_process instead of
7284         sparc_forget_process.
7285
7286 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7287
7288         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7289         (procfs_target::make_corefile_notes): Adjust to new
7290         target_read_alloc return type.
7291
7292 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7293             Stephen Roberts  <stephen.roberts@arm.com>
7294
7295         PR gdb/22882
7296         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7297         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7298         Move should_notify_stop local into more inner scope.
7299
7300 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7301             Stephen Roberts  <stephen.roberts@arm.com>
7302
7303         PR gdb/22882
7304         * infrun.c (resume_1): Add call to mark_async_event_handler.
7305
7306 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7307
7308         * infrun.c (do_target_wait): Change old version of $pc printed.
7309
7310 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7311
7312         * dwarf2read.c (read_index_from_section): Rename to...
7313         (read_gdb_index_from_section): ... this, update all callers.
7314         (dwarf2_read_index): Rename to...
7315         (dwarf2_read_gdb_index): ... this, update all callers.
7316
7317 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7318
7319         * gdb/hppa-linux-nat.c
7320         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7321         hppa_linux_nat_target::fetch_registers.
7322
7323 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7324
7325         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7326         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7327         (AARCH64_DWARF_SVE_FFR): Likewise.
7328         (AARCH64_DWARF_SVE_P0): Likewise.
7329         (AARCH64_DWARF_SVE_Z0): Likewise.
7330
7331 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7332
7333         * common/common-regcache.h (raw_compare): New function.
7334         * regcache.c (regcache::raw_compare): Likewise.
7335         * regcache.h (regcache::raw_compare): New declaration.
7336
7337 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7338
7339         * common/common-regcache.h (reg_buffer_common): New structure.
7340         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7341         (reg_buffer::raw_supply): Likewise.
7342         (reg_buffer::raw_supply_integer): Likewise.
7343         (reg_buffer::raw_supply_zeroed): Likewise.
7344         (reg_buffer::raw_collect): Likewise.
7345         (reg_buffer::raw_collect_integer): Likewise.
7346         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7347         (reg_buffer::raw_supply): Likewise.
7348         (reg_buffer::raw_supply_integer): Likewise.
7349         (reg_buffer::raw_supply_zeroed): Likewise.
7350         (reg_buffer::raw_collect): Likewise.
7351         (reg_buffer::raw_collect_integer): Likewise.
7352
7353 2018-06-10  Tom Tromey  <tom@tromey.com>
7354
7355         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7356         (class remote_state) <stop_reply_queue>: Now std::vector.
7357         (remote_state::~remote_state)
7358         (remote_target::stop_reply_queue_length): Update.
7359         (struct queue_iter_param, remove_child_of_pending_fork)
7360         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7361         (check_pending_event_prevents_wildcard_vcont_callback)
7362         (remove_stop_reply_for_inferior)
7363         (remove_stop_reply_of_remote_state)
7364         (remote_notif_remove_once_on_match)
7365         (stop_reply_match_ptid_and_ws)
7366         (remote_kill_child_of_pending_fork): Remove.
7367         (remote_target::remove_new_fork_children)
7368         (remote_target::check_pending_events_prevent_wildcard_vcont)
7369         (remote_target::discard_pending_stop_replies)
7370         (remote_target::discard_pending_stop_replies_in_queue)
7371         (remote_target::remote_notif_remove_queued_reply)
7372         (remote_target::queued_stop_reply)
7373         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7374         (remote_target::wait, remote_target::kill_new_fork_children)
7375         (remote_target::async): Update.
7376
7377 2018-06-10  Tom Tromey  <tom@tromey.com>
7378
7379         * record-full.c (record_full_arch_list_cleanups): Remove.
7380         (record_full_message): Use try/catch.
7381         (record_full_wait_cleanups): Remove.
7382         (record_full_wait_1): Use try/catch.
7383         (record_full_restore): Likewise.
7384
7385 2018-06-10  Tom Tromey  <tom@tromey.com>
7386
7387         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7388         declare VEC.  Add constructor.
7389         <in_target_beneath>: Now bool.
7390         (record_full_breakpoints): Now a std::vector, static.
7391         (record_full_sync_record_breakpoints)
7392         (record_full_init_record_breakpoints)
7393         (record_full_target::insert_breakpoint)
7394         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7395
7396 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7397
7398         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7399         * serial.c (serial_interface_lookup): Remove struct keyword.
7400
7401 2018-06-10  Tom Tromey  <tom@tromey.com>
7402
7403         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7404         method.
7405         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7406         a method.
7407         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7408         method.
7409         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7410         "beneath" as a method.
7411         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7412         Use "beneath" as a method.
7413
7414 2018-06-10  Tom Tromey  <tom@tromey.com>
7415
7416         * tracefile.c (struct trace_file_writer_deleter): New.
7417         <operator()>: Rename from trace_file_writer_xfree.
7418         (trace_file_writer_up): New typedef.
7419         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7420
7421 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7422
7423         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7424         <m_registers, m_register_status>: Change type to
7425         std::unique_ptr.
7426         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7427         XCNEWVEC.
7428
7429 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7430
7431         * common/common-regcache.h (enum register_status): Add
7432         underlying type "signed char".
7433         * regcache.h (reg_buffer) <m_register_status>: Change type to
7434         register_status *.
7435         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7436         register_status instead of signed char.
7437         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7438         (reg_buffer::get_register_status): Remove cast.
7439         (readable_regcache::raw_read): Remove cast.
7440         (readable_regcache::cooked_read): Remove cast.
7441
7442 2018-06-09  Tom Tromey  <tom@tromey.com>
7443
7444         * source.c (reverse_search_command, forward_search_command): Use
7445         scoped_fd.
7446
7447 2018-06-09  Tom Tromey  <tom@tromey.com>
7448
7449         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7450         (serial_ops_list): Now static, std::vector.
7451         (serial_interface_lookup, serial_add_interface): Update.
7452
7453 2018-06-09  Tom Tromey  <tom@tromey.com>
7454
7455         * dwarf2read.c (process_cu_includes): Update.
7456         (process_full_comp_unit): Update.
7457         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7458         std::vector.
7459
7460 2018-06-08  Paul Koning  <paul_koning@dell.com>
7461
7462         PR gdb/23252
7463
7464         * python/python.c (do_start_initialization):
7465         Avoid call to internal Python API.
7466         (init__gdb_module): New function.
7467
7468 2018-06-08  Gary Benson <gbenson@redhat.com>
7469
7470         * linux-thread-db.c (valprint.h): New include.
7471         (struct check_thread_db_info): New structure.
7472         (check_thread_db_on_load, tdb_testinfo): New static globals.
7473         (check_thread_db, check_thread_db_callback): New functions.
7474         (try_thread_db_load_1): Run integrity checks if requested.
7475         (maintenance_check_libthread_db): New function.
7476         (_initialize_thread_db): Register "maint check libthread-db"
7477         and "maint set/show check-libthread-db".
7478         * NEWS: Mention the above new commands.
7479
7480 2018-06-08  Tom Tromey  <tom@tromey.com>
7481
7482         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7483         now a method.
7484
7485 2018-06-08  Tom Tromey  <tom@tromey.com>
7486
7487         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7488
7489 2018-06-08  Tom Tromey  <tom@tromey.com>
7490
7491         * common/btrace-common.h (struct btrace_data): Add constructor,
7492         destructor, move assignment operator.
7493         <empty, clear, fini>: New methods.
7494         <format>: Initialize.
7495         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7496         (btrace_data_empty): Don't declare.
7497         * common/btrace-common.c (btrace_data_init): Remove.
7498         (btrace_data::fini): Rename from btrace_data_fini.
7499         (btrace_data::empty): Rename from btrace_data_empty.
7500         (btrace_data::clear): Rename from btrace_data_clear.  Return
7501         bool.
7502         * btrace.h (make_cleanup_btrace_data): Don't declare.
7503         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7504         (parse_xml_btrace): Update.
7505         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7506         (maint_btrace_clear_packet_history_cmd): Update.
7507
7508 2018-06-07  Pedro Alves  <palves@redhat.com>
7509
7510         * target.h (target_ops) <beneath>: Now a method.  All references
7511         updated.
7512         (class target_stack): New.
7513         * target.c (g_target_stack): New.
7514         (g_current_top_target): Delete.
7515         (current_top_target): Get the top target out of g_target_stack.
7516         (target_stack::push, target_stack::unpush): New.
7517         (push_target, unpush_target): Reimplement.
7518         (target_is_pushed): Reimplement in terms of g_target_stack.
7519         (target_ops::beneath, target_stack::find_beneath): New.
7520
7521 2018-06-07  Pedro Alves  <palves@redhat.com>
7522
7523         * target.h (find_target_beneath): Delete declaration.
7524         * target.c (find_target_beneath): Delete definition.
7525         * aix-thread.c: All callers of find_target_beneath adjusted to
7526         call target_ops::beneath instead.
7527         * bsd-uthread.c: Likewise.
7528         * linux-thread-db.c: Likewise.
7529         * ravenscar-thread.c: Likewise.
7530         * sol-thread.c: Likewise.
7531         * spu-multiarch.c: Likewise.
7532
7533 2018-06-07  Pedro Alves  <palves@redhat.com>
7534
7535         * target.h (target_ops) <beneath>: Now a method.  All references
7536         updated.
7537         (target_ops) <m_beneath>: New.
7538         * target.c (target_ops::beneath): New.
7539         * corelow.c: Adjust all references to target_ops::beneath.
7540         * linux-thread-db.c: Likewise.
7541         * make-target-delegates: Likewise.
7542         * record-btrace.c: Likewise.
7543         * record-full.c: Likewise.
7544         * remote.c: Likewise.
7545         * target.c: Likewise.
7546         * target-delegates.c: Regenerate.
7547
7548 2018-06-07  Pedro Alves  <palves@redhat.com>
7549
7550         * target.h (target_stack): Delete.
7551         (current_top_target): Declare function.
7552         * target.c (target_stack): Delete.
7553         (g_current_top_target): New.
7554         (current_top_target): New function.
7555         * auxv.c: Use current_top_target instead of target_stack
7556         throughout.
7557         * avr-tdep.c: Likewise.
7558         * breakpoint.c: Likewise.
7559         * corefile.c: Likewise.
7560         * elfread.c: Likewise.
7561         * eval.c: Likewise.
7562         * exceptions.c: Likewise.
7563         * frame.c: Likewise.
7564         * gdbarch-selftests.c: Likewise.
7565         * gnu-v3-abi.c: Likewise.
7566         * ia64-tdep.c: Likewise.
7567         * ia64-vms-tdep.c: Likewise.
7568         * infcall.c: Likewise.
7569         * infcmd.c: Likewise.
7570         * infrun.c: Likewise.
7571         * linespec.c: Likewise.
7572         * linux-tdep.c: Likewise.
7573         * minsyms.c: Likewise.
7574         * ppc-linux-nat.c: Likewise.
7575         * ppc-linux-tdep.c: Likewise.
7576         * procfs.c: Likewise.
7577         * regcache.c: Likewise.
7578         * remote.c: Likewise.
7579         * rs6000-tdep.c: Likewise.
7580         * s390-linux-nat.c: Likewise.
7581         * s390-tdep.c: Likewise.
7582         * solib-aix.c: Likewise.
7583         * solib-darwin.c: Likewise.
7584         * solib-dsbt.c: Likewise.
7585         * solib-spu.c: Likewise.
7586         * solib-svr4.c: Likewise.
7587         * solib-target.c: Likewise.
7588         * sparc-tdep.c: Likewise.
7589         * sparc64-tdep.c: Likewise.
7590         * spu-tdep.c: Likewise.
7591         * symfile.c: Likewise.
7592         * symtab.c: Likewise.
7593         * target-descriptions.c: Likewise.
7594         * target-memory.c: Likewise.
7595         * target.c: Likewise.
7596         * target.h: Likewise.
7597         * tracefile-tfile.c: Likewise.
7598         * tracepoint.c: Likewise.
7599         * valops.c: Likewise.
7600         * valprint.c: Likewise.
7601         * value.c: Likewise.
7602         * windows-tdep.c: Likewise.
7603         * mi/mi-main.c: Likewise.
7604
7605 2018-06-07  Tom Tromey  <tom@tromey.com>
7606
7607         * valprint.h (build_address_symbolic): Declare.
7608         * printcmd.c (print_address_symbolic): Update.
7609         (build_address_symbolic): Change "name" and "filename" to
7610         std::string.
7611         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7612         Update.
7613         * defs.h (build_address_symbolic): Remove declaration.
7614
7615 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7616
7617         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7618         (aarch64_vnv_type): Add function.
7619         (aarch64_pseudo_register_name): Add V regs for SVE.
7620         (aarch64_pseudo_register_type): Likewise.
7621         (aarch64_pseudo_register_reggroup_p): Likewise.
7622         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7623         (aarch64_pseudo_read_value): Add V regs for SVE.
7624         (aarch64_pseudo_write_2): Use V0 offset for SVE
7625         (aarch64_pseudo_write): Add V regs for SVE.
7626         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7627
7628 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7629
7630         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7631         (sve_vl_from_vq): Likewise.
7632
7633 2018-06-05  Tom Tromey  <tom@tromey.com>
7634
7635         * cli/cli-cmds.c (show_version): Update.
7636         * top.c (print_gdb_version): Add "interactive" parameter.
7637         Update.
7638         * main.c (captured_main_1): Update.
7639         * top.h (print_gdb_version): Add "interactive" parameter and a
7640         comment.
7641
7642 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7643
7644         * common/enum-flags.h: Add trailing semicolon to example in
7645         comment.
7646
7647 2018-06-05  Tom Tromey  <tom@tromey.com>
7648
7649         PR cli/12326:
7650         * NEWS: Add entry about pager.
7651         * utils.c (pagination_disabled_for_command): New global.
7652         (prompt_for_continue): Allow "c" response to prompt.
7653         (reinitialize_more_filter): Clear
7654         pagination_disabled_for_command.
7655         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7656
7657 2018-06-04  Tom Tromey  <tom@tromey.com>
7658
7659         * ada-lang.h (ada_lookup_symbol_list): Update.
7660         * ada-lang.c (resolve_subexp): Update.
7661         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7662         parameter.
7663         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7664         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7665         results parameter to std::vector.
7666         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7667         Update.
7668         * ada-exp.y (block_lookup): Update.
7669         (select_possible_type_sym): Change type of syms.  Remove nsyms
7670         parameter.
7671         (write_var_or_type, write_name_assoc): Update.
7672
7673 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7674
7675         * windows-nat.c (windows_nat_target::xfer_partial): Return
7676         TARGET_XFER_E_IO if we need to delegate to the target beneath
7677         but BENEATH is NULL.
7678
7679 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7680
7681         * Makefile.in (config.status): Add configure.nat as a
7682         dependency.
7683
7684 2018-06-04  Tom Tromey  <tom@tromey.com>
7685
7686         * cp-name-parser.y (cpname_state): Add method declarations.
7687         (HANDLE_QUAL): Update.
7688         (cpname_state::d_grab, cpname_state::fill_comp)
7689         (cpname_state::make_operator, cpname_state::make_dtor)
7690         (cpname_state::make_builtin_type, cpname_state::make_name)
7691         (cpname_state::d_qualify, cpname_state::d_int_type)
7692         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7693         (%union): Move earlier.
7694
7695 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7696
7697         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7698
7699 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7700
7701         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7702         (aarch64_pseudo_write_1): Likewise.
7703         (aarch64_pseudo_read_value): Use helper.
7704         (aarch64_pseudo_write): Likewise.
7705
7706 2018-06-04  Pedro Alves  <palves@redhat.com>
7707
7708         * darwin-nat.c (darwin_ops): Delete.
7709         (darwin_attach_pid): Use get_native_target.
7710
7711 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7712
7713         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7714         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7715
7716 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7717
7718         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7719         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7720         (aarch64_gdbarch_init): Check for SVE.
7721         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7722
7723 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7724
7725         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7726         * aarch64-tdep.h (aarch64_read_description): Likewise.
7727         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7728         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7729         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7730         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7731         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7732
7733 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7734
7735         * value.c (value_fetch_lazy_bitfield): New.
7736         (value_fetch_lazy_memory): New.
7737         (value_fetch_lazy_register): New.
7738         (value_fetch_lazy): Factor out to smaller functions.
7739
7740 2018-06-01  Tom Tromey  <tom@tromey.com>
7741
7742         * cp-name-parser.y (backslashable, represented): Now const.
7743
7744 2018-06-01  Tom Tromey  <tom@tromey.com>
7745
7746         * cp-name-parser.y: Include parser-defs.h.
7747         (parser_fprintf): Remove declaration.
7748
7749 2018-06-01  Tom Tromey  <tom@tromey.com>
7750
7751         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7752         %parse-param.
7753         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7754         (global_result): Remove globals.
7755         (struct cpname_state): New.
7756         (yyparse): Don't declare.
7757         (yylex, yyerror): Move declarations after %union.
7758         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7759         (make_name): Add state parameter.
7760         Update all callers.
7761         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7762         parameter.
7763         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7764         Update.
7765         (yylex): Add lvalp, state parameters.
7766         (yyerror): Add state parameter.
7767         (cp_demangled_name_to_comp): Update.
7768
7769 2018-06-01  Tom Tromey  <tom@tromey.com>
7770
7771         * cp-name-parser.y (parser_fprintf): Declare.
7772         (GDB_YY_REMAP_PREFIX): Define.
7773         Include yy-remap.h.  Don't redefine yy* identifiers.
7774
7775 2018-06-01  Tom Tromey  <tom@tromey.com>
7776
7777         * python/py-type.c (typy_legacy_template_argument): Update.
7778         * cp-support.h (cp_demangled_name_to_comp): Update.
7779         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7780         parameter to be a "std::string *".
7781         (main): Update.
7782
7783 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7784
7785         * ada-lex.l: Include "diagnostics.h" instead of
7786         "common/diagnostics.h".
7787         * unittests/environ-selftests.c: Likewise.
7788         * common/diagnostics.h: Moved to ../include.
7789
7790 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7791
7792         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7793         to language_mode_manual while calling breakpoint_re_set_one.
7794
7795 2018-06-01  Tom Tromey  <tom@tromey.com>
7796
7797         * valops.c (value_cast_structs, destructor_name_p): Update.
7798         * symtab.c (gdb_mangle_name): Update.
7799         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7800         Update.
7801         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7802         (pascal_object_print_value_fields, pascal_object_print_value):
7803         Update.
7804         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7805         * linespec.c (find_methods): Update.
7806         * gdbtypes.h (type_name_no_tag): Remove.
7807         (type_name_or_error): Rename from type_name_no_tag_or_error.
7808         * gdbtypes.c (type_name_no_tag): Remove.
7809         (type_name_or_error): Rename from type_name_no_tag_or_error.
7810         (lookup_struct_elt_type, check_typedef): Update.
7811         * expprint.c (print_subexp_standard): Update.
7812         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7813         * d-namespace.c (d_lookup_nested_symbol): Update.
7814         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7815         (cp_print_class_member): Update.
7816         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7817         * completer.c (add_struct_fields): Update.
7818         * c-typeprint.c (cp_type_print_derivation_info)
7819         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7820         Update.
7821         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7822         (ada_prefer_type, ada_is_exception_sym): Update.
7823
7824 2018-06-01  Tom Tromey  <tom@tromey.com>
7825
7826         * valops.c (enum_constant_from_type, value_namespace_elt)
7827         (value_maybe_namespace_elt): Update.
7828         * valarith.c (find_size_for_pointer_math): Update.
7829         * target-descriptions.c (make_gdb_type): Update.
7830         * symmisc.c (print_symbol): Update.
7831         * stabsread.c (define_symbol, read_type)
7832         (complain_about_struct_wipeout, add_undefined_type)
7833         (cleanup_undefined_types_1): Update.
7834         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7835         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7836         (rust_internal_print_type, rust_composite_type)
7837         (rust_evaluate_funcall, rust_evaluate_subexp)
7838         (rust_inclusive_range_type_p): Update.
7839         * python/py-type.c (typy_get_tag): Update.
7840         * p-typeprint.c (pascal_type_print_base): Update.
7841         * mdebugread.c (parse_symbol, parse_type): Update.
7842         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7843         Update.
7844         * guile/scm-type.c (gdbscm_type_tag): Update.
7845         * go-lang.c (sixg_string_p): Update.
7846         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7847         Update.
7848         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7849         (TYPE_TAG_NAME): Remove.
7850         * gdbtypes.c (type_name_no_tag): Simplify.
7851         (check_typedef, check_types_equal, recursive_dump_type)
7852         (copy_type_recursive, arch_composite_type): Update.
7853         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7854         in summary mode when needed.
7855         * eval.c (evaluate_funcall): Update.
7856         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7857         (process_structure_scope, read_enumeration_type)
7858         (read_namespace_type, read_module_type, determine_prefix): Update.
7859         * cp-support.c (inspect_type): Update.
7860         * coffread.c (process_coff_symbol, decode_base_type): Update.
7861         * c-varobj.c (c_is_path_expr_parent): Update.
7862         * c-typeprint.c (c_type_print_base_struct_union): Update.
7863         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7864         summary when using C language.
7865         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7866         (gen_maybe_namespace_elt): Update.
7867         * ada-lang.c (ada_type_name): Simplify.
7868         (empty_record, ada_template_to_fixed_record_type_1)
7869         (template_to_static_fixed_type)
7870         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7871
7872 2018-06-01  Tom Tromey  <tom@tromey.com>
7873
7874         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7875         c_print_type.
7876         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7877         (c_print_type): Update.
7878         (c_print_type): New overload.
7879         (c_type_print_varspec_prefix, c_type_print_args)
7880         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7881         (c_type_print_base_struct_union, c_type_print_base_1)
7882         (cp_type_print_method_args): Add "language" parameter.
7883         (c_type_print_base): Update.
7884         * c-lang.h (c_print_type): Add new overload.
7885
7886 2018-06-01  Tom Tromey  <tom@tromey.com>
7887
7888         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7889         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7890
7891 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7892
7893         * aarch64-tdep.c (aarch64_sve_register_names): New const
7894         var.
7895         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7896         (AARCH64_SVE_Z_REGS_NUM): New define.
7897         (AARCH64_SVE_P_REGS_NUM): Likewise.
7898         (AARCH64_SVE_NUM_REGS): Likewise.
7899
7900 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7901
7902         * nat/linux-ptrace.h [__alpha__]
7903         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7904         definitions.
7905
7906 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7907
7908         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7909         the endianness selected.
7910         * NEWS: Document `set endian auto' mode operation update.
7911
7912 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7913
7914         * Makefile.in: Add new header.
7915         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7916         (sve_vl_from_vg): Likewise.
7917         (sve_vq_from_vl): Likewise.
7918         (sve_vl_from_vq): Likewise.
7919         (sve_vq_from_vg): Likewise.
7920         (sve_vg_from_vq): Likewise.
7921         * configure.nat: Add new c file.
7922         * nat/aarch64-sve-linux-ptrace.c: New file.
7923         * nat/aarch64-sve-linux-ptrace.h: New file.
7924
7925 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7926
7927         * aarch64-linux-nat.c (aarch64_linux_read_description):
7928         Add parmeter zero.
7929         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7930         Likewise.
7931         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7932         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7933         (aarch64_gdbarch_init): Add parmeter zero.
7934         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7935         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7936         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7937         parmeter.
7938         * doc/gdb.texinfo: Describe SVE feature
7939         * features/aarch64-sve.c: New file.
7940
7941 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7942
7943         PR gdb/23210
7944         * gdbarch.sh (significant_addr_bit): Default to zero when
7945         not set by target architecture.
7946         * gdbarch.c: Re-generated.
7947         * utils.c (address_significant): Update.
7948
7949 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7950
7951         * stack.c (func_command): Remove trailing newline in call to error.
7952
7953 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7954
7955         * regcache.h (regcache_raw_collect): Remove, update callers to
7956         use regcache::raw_collect.
7957         * regcache.c (regcache_raw_collect): Remove.
7958
7959 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7960
7961         * regcache.h (regcache_raw_supply): Remove, update callers to
7962         use detached_regcache::raw_supply.
7963         * regcache.c (regcache_raw_supply): Remove.
7964
7965 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7966
7967         * regcache.h (regcache_cooked_write_part): Remove, update
7968         callers to use regcache::cooked_write_part.
7969         * regcache.c (regcache_cooked_write_part): Remove.
7970
7971 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7972
7973         * regcache.h (regcache_cooked_read_part): Remove, update callers
7974         to use readable_regcache::cooked_read_part.
7975         * regcache.c (regcache_cooked_read_part): Remove.
7976
7977 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7978
7979         * regcache.h (regcache_cooked_read_value): Remove, update
7980         callers to use readable_regcache::cooked_read_value.
7981         * regcache.c (regcache_cooked_read_value): Remove.
7982
7983 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7984
7985         * regcache.h (regcache_cooked_write): Remove, update callers to
7986         use regcache::cooked_write.
7987         * regcache.c (regcache_cooked_write): Remove.
7988
7989 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7990
7991         * regcache.h (regcache_invalidate): Remove, update callers to
7992         use detached_regcache::invalidate instead.
7993         * regcache.c (regcache_invalidate): Remove.
7994
7995 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7996
7997         * regcache.h (regcache_raw_write_part): Remove, update callers
7998         to use regcache::raw_write_part instead.
7999         * regcache.c (regcache_raw_write_part): Remove.
8000
8001 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8002
8003         * regcache.h (regcache_raw_read_part): Remove, update callers to
8004         use readable_regcache::raw_read_part instead.
8005         * regcache.c (regcache_raw_read_part): Remove.
8006
8007 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8008
8009         * regcache.h (regcache_cooked_read): Remove, update callers to
8010         use readable_regcache::cooked_read instead.
8011         * regcache.c (regcache_cooked_read): Remove.
8012
8013 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8014
8015         * regcache.h (regcache_raw_write): Remove, update callers to use
8016         regcache::raw_write instead.
8017         * regcache.c (regcache_raw_write): Remove.
8018
8019 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8020
8021         * regcache.h (regcache_raw_read): Remove, update callers to use
8022         readable_regcache::raw_read instead.
8023         * regcache.c (regcache_raw_read): Remove.
8024
8025 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8026
8027         * regcache.h (regcache_raw_update): Remove, update callers to
8028         use readable_regcache::raw_update instead.
8029         * regcache.c (regcache_raw_update): Remove.
8030
8031 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8032
8033         * regcache.h (regcache_register_status): Remove, update callers
8034         to use reg_buffer::get_register_status directly instead.
8035         * regcache.c (regcache_register_status): Remove.
8036
8037 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8038
8039         * regcache.h (regcache_get_ptid): Remove, update all callers to
8040         call regcache::ptid instead.
8041         * regcache.c (regcache_get_ptid): Remove.
8042
8043 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8044
8045         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8046
8047 2018-05-30  Pedro Alves  <palves@redhat.com>
8048
8049         * common/common-exceptions.h (exception_rethrow): Use
8050         ATTRIBUTE_NORETURN.
8051
8052 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8053
8054         * breakpoint.c (print_solib_event, check_status_catch_solib):
8055         Remove struct keyword in range-based for loops.
8056         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8057         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8058         Likewise.
8059         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8060         Likewise.
8061         * symfile.c (addr_info_make_relative): Likewise.
8062         * thread.c (value_in_thread_stack_temporaries): Likewise.
8063
8064 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8065
8066         PR gdb/16841
8067         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8068         aggregate type to get its real type before accessing it.
8069
8070 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8071
8072         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8073         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8074         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8075         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8076         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8077         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8078         * printcmd.c (info_address_command): Likewise.
8079
8080 2018-05-29  Tom Tromey  <tom@tromey.com>
8081
8082         * windows-nat.c (handle_exception): Update fall-through comment.
8083
8084 2018-05-29  Tom Tromey  <tom@tromey.com>
8085
8086         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8087         (struct program_space) <added_solibs>: Now a std::vector.
8088         * breakpoint.c (print_solib_event): Update.
8089         (check_status_catch_solib): Update.
8090         * progspace.c (clear_program_space_solib_cache): Update.
8091         * solib.c (update_solib_list): Update.
8092
8093 2018-05-29  Tom Tromey  <tom@tromey.com>
8094
8095         * python/py-type.c (typy_richcompare): Update.
8096         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8097         * gdbtypes.h (types_deeply_equal): Return bool.
8098         (types_equal): Likewise.
8099         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8100         declare VEC.
8101         (check_types_equal): Change worklist to std::vector.  Return
8102         bool.
8103         (struct type_equality_entry): Add constructor.
8104         (compare_maybe_null_strings): Return bool.
8105         (check_types_worklist): Return bool.  Change worklist to
8106         std::vector.
8107         (types_deeply_equal): Use std::vector.
8108         (types_equal): Return bool.
8109         (compare_maybe_null_strings): Simplify.
8110
8111 2018-05-29  Tom Tromey  <tom@tromey.com>
8112
8113         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8114
8115 2018-05-29  Tom Tromey  <tom@tromey.com>
8116
8117         * objc-lang.h: Don't include cp-support.h.
8118         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8119         declare VEC.
8120
8121 2018-05-27  Tom Tromey  <tom@tromey.com>
8122
8123         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8124
8125 2018-05-25  Tom Tromey  <tom@tromey.com>
8126
8127         * value.c (value::location): Initialize.
8128
8129 2018-05-25  Tom Tromey  <tom@tromey.com>
8130
8131         * dbxread.c (init_bincl_list): Remove.
8132         (bincl_list): Now a std::vector.
8133         (bincls_allocated, next_bincl): Remove.
8134         (free_bincl_list, do_free_bincl_list_cleanup)
8135         (make_cleanup_free_bincl_list): Remove.
8136         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8137         unique_xmalloc_ptr.
8138         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8139         (struct header_file_location): Add constructor.
8140         (add_bincl_to_list): Remove.
8141
8142 2018-05-25  Tom Tromey  <tom@tromey.com>
8143
8144         * tui/tui.c (tui_enable): Update.
8145         * mi/mi-interp.c (mi_interp::init): Update.
8146         * interps.h (class interp) <name>: New method.
8147         <m_name>: Rename from name.
8148         (~scoped_restore_interp): Update.
8149         * interps.c (interp::interp): Update.
8150         (interp_add, interp_set, interp_lookup_existing)
8151         (current_interp_named_p): Update.
8152
8153 2018-05-25  Tom Tromey  <tom@tromey.com>
8154
8155         * interps.c (interp_name): Remove.
8156         * mi/mi-interp.c (mi_interp::init): Update.
8157         * interps.h (interp_name): Remove.
8158         (~scoped_restore_interp): Update.
8159         * tui/tui.c (tui_enable): Update.
8160
8161 2018-05-25  Tom Tromey  <tom@tromey.com>
8162
8163         * utils.c (fputs_maybe_filtered): Update.
8164         * linespec.c (decode_line_full): Update.
8165         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8166         (mi_print_breakpoint_for_event, mi_solib_loaded)
8167         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8168         (mi_user_selected_context_changed): Update.
8169         * mi/mi-main.c (mi_execute_command): Update.
8170         * cli/cli-script.c (execute_control_command): Update.
8171         * python/python.c (execute_gdb_command): Update.
8172         * solib.c (info_sharedlibrary_command): Update.
8173         * interps.c (interp_ui_out): Remove.
8174         * interps.h (interp_ui_out): Remove.
8175
8176 2018-05-25  Tom Tromey  <tom@tromey.com>
8177
8178         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8179         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8180         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8181
8182 2018-05-25  Tom Tromey  <tom@tromey.com>
8183
8184         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8185         * interps.c (interp_exec): Use scoped_restore.
8186
8187 2018-05-25  Tom Tromey  <tom@tromey.com>
8188
8189         * remote.c (remote_target::remote_file_get): Use
8190         gdb::byte_vector.
8191         (remote_target::remote_file_put): Likewise.
8192
8193 2018-05-25  Tom Tromey  <tom@tromey.com>
8194
8195         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8196         a std::string.
8197         (get_pe_section_index, add_pe_exported_sym): Update.
8198         (read_pe_exported_syms): Use gdb::def_vector.
8199
8200 2018-05-25  Tom Tromey  <tom@tromey.com>
8201
8202         * frame.c (remove_prev_frame): Remove.
8203         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8204
8205 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8206
8207         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8208         Remove prototypes.
8209         * mips-linux-nat.c (supply_fpregset): Always call
8210         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8211         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8212         `mips_fill_fpregset'.
8213         * mips-linux-tdep.c (mips_supply_fpregset)
8214         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8215         (mips_fill_fpregset_wrapper): Remove functions.
8216         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8217         (mips_linux_fpregset): Remove variable.
8218         (mips_linux_iterate_over_regset_sections): Use
8219         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8220         (mips_linux_o32_sigframe_init): Remove comment.
8221
8222 2018-05-25  Pedro Alves  <palves@redhat.com>
8223
8224         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8225         (struct readahead_cache, struct packet_reg, struct
8226         remote_arch_state, class remote_state): Move higher up in the
8227         file.
8228         (remote_target::m_remote_state): Now an object instead of a pointer.
8229         (remote_target::get_remote_state): Adjust.
8230
8231 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8232
8233         * stack.c (select_and_print_frame): Delete.
8234         (struct function_bounds): Move struct within function.
8235         (func_command): Most content moved into new function
8236         find_frame_for_function, use new function, print result, add
8237         function comment.
8238         (find_frame_for_function): New function, now returns a result.
8239
8240 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8241
8242         * stack.c (iterate_over_block_arg_vars): Fix comment.
8243         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8244
8245 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8246
8247         PR gdb/23203
8248         * frame.c
8249         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8250         Define.
8251         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8252         Define.
8253         * frame.h (class scoped_restore_selected_frame): New class.
8254         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8255         of any exception, use scoped_restore_selected_frame to restore the
8256         frame instead.
8257
8258 2018-05-24  Pedro Alves  <palves@redhat.com>
8259
8260         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8261         override.
8262
8263 2018-05-23  Tom Tromey  <tom@tromey.com>
8264
8265         * complaints.c (struct complaints): Remove.
8266         (symfile_complaint_book): Remove.
8267         (series): New global.
8268         (complaint_internal): Update.
8269         (clear_complaints): Update.
8270
8271 2018-05-23  Tom Tromey  <tom@tromey.com>
8272
8273         * complaints.c (counters): New global.
8274         (struct complain): Remove.
8275         (struct complaints) <root>: Remove.
8276         (complaint_sentinel): Remove.
8277         (symfile_complaint_book): Update.
8278         (find_complaint) Remove.
8279         (complaint_internal, clear_complaints): Update.
8280
8281 2018-05-23  Tom Tromey  <tom@tromey.com>
8282
8283         * complaints.c (struct complain) <file, line>: Remove.
8284         (find_complaint): Remove file, line parameters.
8285         (complaint_internal): Update.
8286
8287 2018-05-23  Tom Tromey  <tom@tromey.com>
8288
8289         * complaints.c (vcomplaint): Remove.
8290         (complaint_internal) Merge in contents of vcomplaint.
8291
8292 2018-05-23  Tom Tromey  <tom@tromey.com>
8293
8294         * complaints.c (struct complaints) <explanation>: Remove.
8295         (symfile_explanations): Remove.
8296         (symfile_complaint_book): Update.
8297         (vcomplaint): Update.
8298         (struct explanation): Remove.
8299
8300 2018-05-23  Tom Tromey  <tom@tromey.com>
8301
8302         * complaints.c (symfile_complaints): Remove.
8303         (complaint_internal): Remove "complaints" parameter.
8304         (clear_complaints, vcomplaint): Remove "c" parameter.
8305         (get_complaints): Remove.
8306         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8307         (dwarf2_debug_line_missing_file_complaint)
8308         (dwarf2_debug_line_missing_end_sequence_complaint)
8309         (dwarf2_complex_location_expr_complaint)
8310         (dwarf2_const_value_length_mismatch_complaint)
8311         (dwarf2_section_buffer_overflow_complaint)
8312         (dwarf2_macro_malformed_definition_complaint)
8313         (dwarf2_invalid_attrib_class_complaint)
8314         (create_addrmap_from_index, dw2_symtab_iter_next)
8315         (dw2_expand_marked_cus)
8316         (dw2_debug_names_iterator::find_vec_in_debug_names)
8317         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8318         (create_debug_type_hash_table, init_cutu_and_read_dies)
8319         (partial_die_parent_scope, add_partial_enumeration)
8320         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8321         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8322         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8323         (create_cus_hash_table, create_dwp_hash_table)
8324         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8325         (dwarf2_rnglists_process, dwarf2_ranges_process)
8326         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8327         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8328         (handle_struct_member_die, process_structure_scope)
8329         (read_array_type, read_common_block, read_module_type)
8330         (read_tag_pointer_type, read_typedef, read_base_type)
8331         (read_subrange_type, load_partial_dies, partial_die_info::read)
8332         (partial_die_info::read, partial_die_info::read)
8333         (partial_die_info::read, read_checked_initial_length_and_offset)
8334         (dwarf2_string_attr, read_formatted_entries)
8335         (dwarf_decode_line_header)
8336         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8337         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8338         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8339         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8340         (get_signatured_type, get_DW_AT_signature_type)
8341         (decode_locdesc, file_file_name, consume_improper_spaces)
8342         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8343         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8344         (dwarf2_symbol_mark_computed, set_die_type)
8345         (read_attribute_value): Update.
8346         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8347         Update.
8348         * dbxread.c (unknown_symtype_complaint)
8349         (lbrac_mismatch_complaint, repeated_header_complaint)
8350         (set_namestring, function_outside_compilation_unit_complaint)
8351         (read_dbx_symtab, process_one_symbol): Update.
8352         * gdbtypes.c (stub_noname_complaint): Update.
8353         * windows-nat.c (handle_unload_dll): Update.
8354         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8355         (decode_base_type): Update.
8356         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8357         (eb_complaint, record_include_begin, record_include_end)
8358         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8359         (process_xcoff_symbol, read_symbol)
8360         (function_outside_compilation_unit_complaint)
8361         (scan_xcoff_symtab): Update.
8362         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8363         * buildsym.c (finish_block_internal, make_blockvector)
8364         (end_symtab_get_static_block, augment_type_symtab): Update.
8365         * dtrace-probe.c (dtrace_process_dof)
8366         (dtrace_static_probe_ops::get_probes): Update.
8367         * complaints.h (struct complaint): Don't declare.
8368         (symfile_complaints): Remove.
8369         (complaint_internal): Remove "complaints" parameter.
8370         (complaint): Likewise.
8371         (clear_complaints): Likewise.
8372         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8373         (reread_symbols): Update.
8374         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8375         (dwarf2_frame_cache, decode_frame_entry): Update.
8376         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8377         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8378         (info_selectors_command): Update.
8379         * macrotab.c (macro_include, check_for_redefinition)
8380         (macro_undef): Update.
8381         * objfiles.c (filter_overlapping_sections): Update.
8382         * stabsread.c (invalid_cpp_abbrev_complaint)
8383         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8384         (define_symbol, error_type, read_type, rs6000_builtin_type)
8385         (stabs_method_name_from_physname, read_member_functions)
8386         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8387         (attach_fields_to_type, complain_about_struct_wipeout)
8388         (read_range_type, read_args, common_block_start)
8389         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8390         Update.
8391         * mdebugread.c (index_complaint, unknown_ext_complaint)
8392         (basic_type_complaint, bad_tag_guess_complaint)
8393         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8394         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8395         (parse_procedure, parse_lines)
8396         (function_outside_compilation_unit_complaint)
8397         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8398         (bad_tag_guess_complaint, reg_value_complaint): Update.
8399         * cp-support.c (demangled_name_complaint): Update.
8400         * macroscope.c (sal_macro_scope): Update.
8401         * dwarf-index-write.c (class debug_names): Update.
8402
8403 2018-05-23  Tom Tromey  <tom@tromey.com>
8404
8405         * complaints.c (clear_complaints): Remove "noisy" parameter.
8406         * complaints.h (clear_complaints): Update.
8407         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8408         (reread_symbols): Update.
8409
8410 2018-05-23  Tom Tromey  <tom@tromey.com>
8411
8412         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8413         SUBSEQUENT_MESSAGE.
8414         (vcomplaint, clear_complaints): Update.
8415         (symfile_explanations): Remove some messages.
8416
8417 2018-05-23  Tom Tromey  <tom@tromey.com>
8418
8419         * complaints.c (internal_complaint): Remove.
8420         * complaints.h (internal_complaint): Remove.
8421
8422 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8423
8424         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8425
8426 2018-05-22  Pedro Alves  <palves@redhat.com>
8427
8428         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8429         (remote_fileio_badfd, remote_fileio_return_errno)
8430         (remote_fileio_return_success, remote_fileio_func_open)
8431         (remote_fileio_func_open, remote_fileio_func_close)
8432         (remote_fileio_func_read, remote_fileio_func_write)
8433         (remote_fileio_func_lseek, remote_fileio_func_rename)
8434         (remote_fileio_func_unlink, remote_fileio_func_stat)
8435         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8436         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8437         remote_target parameter.
8438         (remote_fio_func_map) <func>: Add remote_target parameter.
8439         (do_remote_fileio_request, remote_fileio_request):
8440         * remote-fileio.h (remote_fileio_request):
8441         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8442         remote_target parameter.
8443         (remote_notif_process, handle_notification): Adjust to pass down
8444         the remote.
8445         (remote_notif_state_allocate): Add remote_target parameter.  Save
8446         it.
8447         * remote-notif.h (struct remote_target): Forward declare.
8448         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8449         remote_target parameter.
8450         (struct remote_notif_state) <remote>: New field.
8451         (remote_notif_ack, remote_notif_parse): Add remote_target
8452         parameter.
8453         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8454         remote_target parameter.
8455         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8456         (threads_listing_context, rmt_thread_action, protocol_feature)
8457         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8458         (packet_result, struct threads_listing_context, remote_state):
8459         Move definitions and declarations higher up.
8460         (remote_target) <~remote_target>: Declare.
8461         (remote_download_command_source, remote_file_put, remote_file_get)
8462         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8463         (remote_hostio_pread_vFile, remote_hostio_send_command)
8464         (remote_hostio_set_filesystem, remote_hostio_open)
8465         (remote_hostio_close, remote_hostio_unlink, remote_state)
8466         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8467         (get_memory_write_packet_size, get_memory_read_packet_size)
8468         (append_pending_thread_resumptions, remote_detach_1)
8469         (append_resumption, remote_resume_with_vcont)
8470         (add_current_inferior_and_thread, wait_ns, wait_as)
8471         (process_stop_reply, remote_notice_new_inferior)
8472         (process_initial_stop_replies, remote_add_thread)
8473         (btrace_sync_conf, remote_btrace_maybe_reopen)
8474         (remove_new_fork_children, kill_new_fork_children)
8475         (discard_pending_stop_replies, stop_reply_queue_length)
8476         (check_pending_events_prevent_wildcard_vcont)
8477         (discard_pending_stop_replies_in_queue, stop_reply)
8478         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8479         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8480         (remote_interrupt_as, remote_interrupt_ns)
8481         (remote_get_noisy_reply, remote_query_attached)
8482         (remote_add_inferior, remote_current_thread, get_current_thread)
8483         (set_thread, set_general_thread, set_continue_thread)
8484         (set_general_process, write_ptid)
8485         (remote_unpack_thread_info_response, remote_get_threadinfo)
8486         (parse_threadlist_response, remote_get_threadlist)
8487         (remote_threadlist_iterator, remote_get_threads_with_ql)
8488         (remote_get_threads_with_qxfer)
8489         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8490         (get_offsets, remote_check_symbols, remote_supported_packet)
8491         (remote_query_supported, remote_packet_size)
8492         (remote_serial_quit_handler, remote_detach_pid)
8493         (remote_vcont_probe, remote_resume_with_hc)
8494         (send_interrupt_sequence, interrupt_query)
8495         (remote_notif_get_pending_events, fetch_register_using_p)
8496         (send_g_packet, process_g_packet, fetch_registers_using_g)
8497         (store_register_using_P, store_registers_using_G)
8498         (set_remote_traceframe, check_binary_download)
8499         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8500         (remote_xfer_live_readonly_partial, remote_read_bytes)
8501         (remote_send_printf, remote_flash_write, readchar)
8502         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8503         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8504         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8505         (extended_remote_disable_randomization, extended_remote_run)
8506         (send_environment_packet, extended_remote_environment_support)
8507         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8508         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8509         (packet_command): Now methods of ...
8510         (remote_target): ... this class.
8511         (m_remote_state) <remote_target>: New field.
8512         (struct remote_state) <stop_reply_queue,
8513         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8514         fields.
8515         (remote_state::remote_state): Allocate stop_reply_queue.
8516         (remote_state): Delete global.
8517         (get_remote_state_raw): Delete.
8518         (remote_target::get_remote_state): Allocate m_remote_state on
8519         demand.
8520         (get_current_remote_target): New.
8521         (remote_ops, extended_remote_ops): Delete.
8522         (wait_forever_enabled_p, remote_async_inferior_event_token):
8523         Delete, moved to struct remote_state.
8524         (remote_target::close): Delete self.  Destruction bits split to
8525         ...
8526         (remote_target::~remote_target): ... this.
8527         (show_memory_packet_size): Adjust to use
8528         get_current_remote_target.
8529         (struct protocol_feature) <func>: Add remote_target parameter.
8530         All callers adjusted.
8531         (curr_quit_handler_target): New.
8532         (remote_serial_quit_handler): Reimplement.
8533         (remote_target::open_1): Adjust to use get_current_remote_target.
8534         Heap-allocate remote_target/extended_remote_target instances.
8535         (vcont_builder::vcont_builder): Add remote_target parameter, and
8536         save it in m_remote.  All callers adjusted.
8537         (vcont_builder::m_remote): New field.
8538         (vcont_builder::restart, vcont_builder::flush)
8539         (vcont_builder::push_action): Use it.
8540         (remote_target::commit_resume): Use it.
8541         (struct queue_iter_param) <remote>: New field.
8542         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8543         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8544         (check_pending_event_prevents_wildcard_vcont_callback)
8545         (remote_target::check_pending_events_prevent_wildcard_vcont)
8546         (remote_target::discard_pending_stop_replies)
8547         (remote_target::discard_pending_stop_replies_in_queue)
8548         (remote_target::remote_notif_remove_queued_reply): Fill in
8549         'remote' field.
8550         (remote_notif_get_pending_events): New.
8551         (remote_target::readchar, remote_target::remote_serial_write):
8552         Save/restore curr_quit_handler_target.
8553         (putpkt): New.
8554         (kill_new_fork_children): Fill in 'remote' field.
8555         (packet_command): Use get_current_remote_target, defer to
8556         remote_target method of same name.
8557         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8558         parameter, and save it in m_remote.  All callers adjusted.
8559         (scoped_remote_fd::release): Use m_remote.
8560         (scoped_remote_fd::m_remote): New field.
8561         (remote_file_put, remote_file_get, remote_file_delete): Use
8562         get_current_remote_target, defer to remote_target method of same
8563         name.
8564         (remote_btrace_reset): Add remote_state paremeter.  Update all
8565         callers.
8566         (remote_async_inferior_event_handler). Pass down 'data'.
8567         (remote_new_objfile): Use get_current_remote_target.
8568         (remote_target::vcont_r_supported): New.
8569         (set_range_stepping): Use get_current_remote_target and
8570         remote_target::vcont_r_supported.
8571         (_initialize_remote): Don't allocate 'remote_state' and
8572         'stop_reply_queue' globals.
8573         * remote.h (struct remote_target): Forward declare.
8574         (getpkt, putpkt, remote_notif_get_pending_events): Add
8575         'remote_target' parameter.
8576
8577 2018-05-22  Pedro Alves  <palves@redhat.com>
8578
8579         * remote.c (vcont_builder): Now a class.  Make all data members
8580         private.
8581         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8582         Declare methods.
8583         (vcont_builder_restart): Rename to ...
8584         (vcont_builder::restart): ... this.
8585         (vcont_builder_flush): Rename to ...
8586         (vcont_builder::flush): ... this.
8587         (vcont_builder_push_action): Rename to ...
8588         (vcont_builder::push_action): ... this.
8589         (remote_target::commit_resume): Adjust.
8590
8591 2018-05-22  Pedro Alves  <palves@redhat.com>
8592
8593         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8594         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8595         (get_fixed_memory_packet_size): New.
8596         (get_memory_packet_size): Use it.
8597         (set_memory_packet_size): Don't override the config size with
8598         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8599         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8600         Don't refer to get_memory_packet_size if not connected to a remote
8601         target.  Show "(default)" if configured size is 0.
8602
8603 2018-05-22  Pedro Alves  <palves@redhat.com>
8604
8605         * remote.c (remote_target::mourn_inferior): Move
8606         discard_pending_stop_replies call here from ...
8607         (_initialize_remote): ... here.
8608
8609 2018-05-22  Pedro Alves  <palves@redhat.com>
8610
8611         * remote.c (compare_section_command): Remove set_general_process
8612         call.
8613
8614 2018-05-22  Pedro Alves  <palves@redhat.com>
8615
8616         * remote.c (struct packet_reg, struct remote_arch_state):
8617         Move higher up in the file.
8618         (remote_state) <m_arch_states>: Store remote_arch_state values
8619         instead of remote_arch_state pointers.
8620         (remote_state::get_remote_arch_state): Adjust.
8621
8622 2018-05-22  Pedro Alves  <palves@redhat.com>
8623
8624         * remote.c: Include <unordered_map>.
8625         (remote_state): Now a class.
8626         (remote_state) <get_remote_arch_state>: Declare method.
8627         <get_remote_arch_state>: New field.
8628         (remote_arch_state) <remote_arch_state>: Declare ctor.
8629         <regs>: Now a unique_ptr.
8630         (remote_gdbarch_data_handle): Delete.
8631         (get_remote_arch_state): Delete.
8632         (remote_state::get_remote_arch_state): New.
8633         (get_remote_state): Adjust to call remote_state's
8634         get_remote_arch_state method.
8635         (init_remote_state): Delete, bits factored out to ...
8636         (remote_arch_state::remote_arch_state): ... this new method.
8637         (get_remote_packet_size, get_memory_packet_size)
8638         (process_g_packet, remote_target::fetch_registers)
8639         (remote_target::prepare_to_store, store_registers_using_G)
8640         (remote_target::store_registers, remote_target::get_trace_status):
8641         Adjust to call remote_state's method.
8642         (_initialize_remote): Remove reference to
8643         remote_gdbarch_data_handle.
8644
8645 2018-05-22  Pedro Alves  <palves@redhat.com>
8646
8647         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8648         pread>: New method declarations.
8649         (remote_target::open_1): Adjust.
8650         (readahead_cache_invalidate): Rename to ...
8651         (readahead_cache::invalidate): ... this, and adjust to be a class
8652         method.
8653         (readahead_cache_invalidate_fd): Rename to ...
8654         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8655         class method.
8656         (remote_hostio_pwrite): Adjust.
8657         (remote_hostio_pread_from_cache): Rename to ...
8658         (readahead_cache::pread): ... this, and adjust to be a class
8659         method.
8660         (remote_hostio_close): Adjust.
8661
8662 2018-05-22  Pedro Alves  <palves@redhat.com>
8663
8664         * remote.c (remote_hostio_close_cleanup): Delete.
8665         (class scoped_remote_fd): New.
8666         (remote_file_put, remote_file_get): Use it.
8667
8668 2018-05-22  Pedro Alves  <palves@redhat.com>
8669
8670         (struct vCont_action_support): Use bool and initialize all fields.
8671         (struct readahead_cache): Initialize all fields.
8672         (remote_state): Use bool and initialize all fields.
8673         (remote_state::remote_state, remote_state::~remote_state): New.
8674         (new_remote_state): Delete.
8675         (_initialize_remote): Use new to allocate remote_state.
8676
8677 2018-05-22  Pedro Alves  <palves@redhat.com>
8678             張俊芝  <zjz@zjz.name>
8679
8680         PR gdb/22973
8681         * c-exp.y: Include "c-support.h".
8682         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8683         of tolower.  Use c_ident_is_alpha to scan names.
8684         * c-lang.c: Include "c-support.h".
8685         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8686         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8687         * c-support.h: New file, with bits factored out from ...
8688         * cp-name-parser.y: ... this file.
8689         Include "c-support.h".
8690         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8691         c-support.h and renamed.
8692         (symbol_end, yylex): Adjust.
8693
8694 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8695
8696         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8697         parameter type to CORE_ADDR.
8698         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8699         parameter type in declaration to CORE_ADDR.
8700         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8701         target_auxv_search to get AT_HWCAP and use the result to get the
8702         target description.
8703         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8704         to CORE_ADDR. Remove the cast of the return value to unsigned
8705         long. Fix error predicate of target_auxv_search.
8706         (ppc_linux_nat_target::read_description): Change the type of the
8707         hwcap variable to CORE_ADDR.
8708
8709 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8710
8711         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8712         if the size of fpscr is larger than 32 bits.
8713
8714 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8715
8716         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8717         (ppc32_linux_vsxregmap): New global.
8718         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8719         regcache_supply_regset, and regcache_collect_regset.
8720         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8721         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8722         (fetch_vsx_register, store_vsx_register): Remove.
8723         (fetch_vsx_registers): Add regno parameter. Get regset using
8724         ppc_linux_vsxregset. Use regset to supply registers.
8725         (store_vsx_registers): Add regno parameter. Get regset using
8726         ppc_linux_vsxregset. Use regset to collect registers.
8727         (fetch_register): Call fetch_vsx_registers instead of
8728         fetch_vsx_register.
8729         (store_register): Call store_vsx_registers instead of
8730         store_vsx_register.
8731         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8732         new regno parameter.
8733         (store_ppc_registers): Call store_vsx_registers with -1 for the
8734         new regno parameter.
8735         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8736         (ppc_collect_vsxregset): Remove.
8737
8738 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8739
8740         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8741         offset fields.
8742         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8743         for vector register offset fields.
8744         (ppc64_fbsd_reg_offsets): Likewise.
8745         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8746         to vector register offset fields.
8747         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8748         to vector register offset fields.
8749         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8750         vector register offset fields.
8751         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8752         initializers for vector register offset fields.
8753         (rs6000_aix64_reg_offsets): Likewise.
8754         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8755         (ppc_supply_vrregset): Remove.
8756         (ppc_collect_vrregset): Remove.
8757         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8758         (ppc_linux_vrregset) : New function.
8759         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8760         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8761         (ppc32_linux_vrregset): Remove.
8762         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8763         and use result instead of ppc32_linux_vrregset.
8764         (ppc32_linux_reg_offsets): Remove initializers for vector register
8765         offset fields.
8766         (ppc64_linux_reg_offsets): Likewise.
8767         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8768         * ppc-linux-nat.c: Include regset.h.
8769         (gdb_vrregset_t): Adjust comment to account for little-endian
8770         mode.
8771         (supply_vrregset, fill_vrregset): Remove.
8772         (fetch_altivec_register, store_altivec_register): Remove.
8773         (fetch_altivec_registers): Add regno parameter. Get regset using
8774         ppc_linux_vrregset. Use regset to supply registers.
8775         (store_altivec_registers): Add regno parameter. Get regset using
8776         ppc_linux_vrregset. Use regset to collect registers.
8777         (fetch_register): Call fetch_altivec_registers instead of
8778         fetch_altivec_register.
8779         (store_register): Call store_altivec_registers instead of
8780         store_altivec_register.
8781         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8782         the new regno parameter.
8783         (store_ppc_registers): Call store_altivec_registers with -1 for
8784         the new regno parameter.
8785
8786 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8787
8788         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8789         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8790         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8791         (gdb_vrregset_t): Change array type size to
8792         PPC_LINUX_SIZEOF_VRREGSET.
8793         (gdb_vsxregset_t): Change array type size to
8794         PPC_LINUX_SIZEOF_VSXREGSET.
8795         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8796         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8797         PPC_LINUX_SIZEOF_VSXREGSET.
8798
8799 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8800
8801         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8802         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8803         nat/ppc-linux.c.
8804         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8805         ppc_linux_target_wordsize with tid.
8806         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8807         wordsize with tid.
8808         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8809         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8810         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8811         tid parameter. Remove static specifier.
8812         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8813         (ppc_linux_target_wordsize): New declaration.
8814
8815 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8816
8817         * arch/ppc-linux-common.c: New file.
8818         * arch/ppc-linux-common.h: New file.
8819         * arch/ppc-linux-tdesc.h: New file.
8820         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8821         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8822         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8823         arch/ppc-linux-tdesc.h.
8824         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8825         arch/ppc-linux-tdesc.h.
8826         (ppc_linux_nat_target::read_description): Remove target
8827         description matching code. Fill a ppc_linux_features struct and
8828         call ppc_linux_match_description with it. Move comment about ISA
8829         2.05 to ppc-linux-common.c.
8830         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8831         arch/ppc-linux-tdesc.h.
8832         (ppc_linux_core_read_description): Remove target description
8833         matching code. Fill a ppc_linux_features struct and call
8834         ppc_linux_match_description with it.
8835         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8836         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8837         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8838         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8839         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8840         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8841         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8842         (tdesc_powerpc_e500l): Remove.
8843
8844 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8845
8846         * ada-lang.c (catch_assert_command): Pass empty string instead
8847         of NULL for excep_string argument.
8848
8849 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8850
8851         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8852         the width of the requested register exceeds the width of the
8853         `ptrace' data type.
8854
8855 2018-05-21  Tom Tromey  <tom@tromey.com>
8856
8857         * printcmd.c (output_command): Remove.
8858         (output_command_const): Rename to output_command.
8859         * valprint.h (output_command): Rename from output_command_const.
8860         * tracepoint.c (trace_dump_actions): Call output_command.
8861
8862 2018-05-21  Tom Tromey  <tom@tromey.com>
8863
8864         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8865         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8866         * ada-lang.h (create_ada_exception_catchpoint): Update.
8867         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8868         std::string.
8869         (create_excep_cond_exprs, ~ada_catchpoint)
8870         (should_stop_exception, print_one_exception)
8871         (print_mention_exception, print_recreate_exception): Update.
8872         (ada_get_next_arg): Remove.
8873         (catch_ada_exception_command_split): Use std::string.  Change type
8874         of "excep_string", "cond_string".
8875         (catch_ada_exception_command): Update.
8876         (create_ada_exception_catchpoint): Change type of excep_string.
8877         (ada_exception_sal): Remove excep_string parameter.
8878         (~ada_catchpoint): Remove.
8879
8880 2018-05-21  Tom Tromey  <tom@tromey.com>
8881
8882         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8883         cleanup.
8884
8885 2018-05-21  Tom Tromey  <tom@tromey.com>
8886
8887         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8888         Return unique_xmalloc_ptr.
8889         (print_it_exception): Update.
8890
8891 2018-05-21  Tom Tromey  <tom@tromey.com>
8892
8893         * tracepoint.c (trace_dump_actions): Use std::string.
8894
8895 2018-05-21  Tom Tromey  <tom@tromey.com>
8896
8897         * symfile.c (reread_symbols): Use std::string for original_name.
8898
8899 2018-05-21  Tom Tromey  <tom@tromey.com>
8900
8901         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8902         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8903         constructor.
8904
8905 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8906
8907         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8908         instance to...
8909         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8910         * objfiles.c (get_objfile_bfd_data): Allocate
8911         objfile_per_bfd_storage with obstack_new when allocating on
8912         obstack.
8913
8914 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8915
8916         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8917         OBSTACK_ZALLOC.
8918         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8919         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8920         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8921         (add_pending): Likewise.
8922         (parse_symbol): Likewise.
8923         (parse_partial_symbols): Likewise.
8924         (psymtab_to_symtab_1): Likewise.
8925         (new_psymtab): Likewise.
8926         (elfmdebug_build_psymtabs): Likewise.
8927         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8928         * objfiles.c (get_objfile_bfd_data): Likewise.
8929         (objfile_register_static_link): Likewise.
8930         * psymtab.c (allocate_psymtab): Likewise.
8931         * stabsread.c (read_member_functions): Likewise.
8932         * xcoffread.c (xcoff_end_psymtab): Likewise.
8933
8934 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8935
8936         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8937         compiler supports std::is_trivially_constructible.
8938         * common/poison.h: Include obstack.h.
8939         (IsMallocable): Define to is_trivially_constructible if the
8940         compiler supports it, define to true_type otherwise.
8941         (xobnew): New.
8942         (XOBNEW): Redefine.
8943         (xobnewvec): New.
8944         (XOBNEWVEC): Redefine.
8945         * gdb_obstack.h (obstack_zalloc): New.
8946         (OBSTACK_ZALLOC): Redefine.
8947         (obstack_calloc): New.
8948         (OBSTACK_CALLOC): Redefine.
8949         (obstack_new): New.
8950         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8951         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8952         gdbarch.c.
8953         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8954         obstack_calloc/obstack_zalloc.
8955         (gdbarch_obstack_zalloc): Remove.
8956         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8957
8958 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8959
8960         * stack.c (backtrace_command_1): Remove useless variable int i.
8961
8962 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8963
8964         * stack.c (print_frame_info): Fix comment.
8965
8966 2018-05-18  Tom Tromey  <tom@tromey.com>
8967
8968         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8969         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8970         (~dwarf2_per_objfile): Update
8971         (dwarf2_get_dwz_file): Use new.
8972         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8973         unique_ptr.
8974
8975 2018-05-18  Tom Tromey  <tom@tromey.com>
8976
8977         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8978         unique_ptr.
8979         * dwarf2read.c (struct dwp_file): Add constructor and
8980         initializers.
8981         (open_and_init_dwp_file): Return a unique_ptr.
8982         (dwarf2_per_objfile, create_dwp_hash_table)
8983         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8984         (lookup_dwo_unit_in_dwp): Update.
8985         (open_and_init_dwp_file, get_dwp_file): Update.
8986
8987 2018-05-18  Tom Tromey  <tom@tromey.com>
8988
8989         * dwarf2read.c (dwarf2_per_objfile): Update.
8990         (struct mapped_index): Add initializers.
8991         (dwarf2_read_index): Use new.
8992         (dw2_symtab_iter_init): Update.
8993         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8994         unique_ptr.
8995
8996 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8997
8998         * dwarf2read.c (mapped_index) <total_size>: Remove.
8999
9000 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9001
9002         * unittests/format_pieces-selftests.c (test_format_specifier):
9003         Add ARI comments.
9004
9005 2018-05-18  Tom Tromey  <tom@tromey.com>
9006
9007         * c-typeprint.c (maybe_print_hole): New function.
9008         (c_print_type_struct_field_offset): Update.
9009         (c_type_print_base_struct_union): Call maybe_print_hole.
9010
9011 2018-05-17  Keith Seitz  <keiths@redhat.com>
9012
9013         * breakpoint.c (build_bpstat_chain): New function, moved from
9014         bpstat_stop_status.
9015         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9016         If no stop chain is passed, call build_bpstat_chain to build it.
9017         * breakpoint.h (build_bpstat_chain): Declare.
9018         (bpstat_stop_status): Move documentation here from breakpoint.c.
9019         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9020         build the stop chain and pass it to skip_inline_frames.
9021         Pass this stop chain to bpstat_stop_status.
9022         * inline-frame.c: Include breakpoint.h.
9023         (stopped_by_user_bp_inline_frame): New function.
9024         (skip_inline_frames): Add parameter `stop_chain'.
9025         Move documention to inline-frame.h.
9026         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9027         whether the frame should be elided.
9028         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9029         Add moved documentation and update for new parameter.
9030
9031 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9032
9033         PR cli/14975
9034         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9035         unittests/format_pieces-selftests.c.
9036         * common/format.h (format_piece) <operator==>: New.
9037         (format_pieces) <operator[]>: Remove.
9038         * common/format.c (format_pieces::format_pieces): Handle \e.
9039         * unittests/format_pieces-selftests.c: New.
9040
9041 2018-05-17  Tom Tromey  <tom@tromey.com>
9042
9043         PR symtab/23010:
9044         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9045         (dw2_instantiate_symtab): Add skip_partial parameter.
9046         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9047         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9048         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9049         (dw2_expand_symtabs_matching_one)
9050         (dw2_find_pc_sect_compunit_symtab)
9051         (dw2_debug_names_lookup_symbol)
9052         (dw2_debug_names_expand_symtabs_for_function): Update.
9053         (init_cutu_and_read_dies): Add skip_partial parameter.
9054         (process_psymtab_comp_unit, build_type_psymtabs_1)
9055         (process_skeletonless_type_unit, load_partial_comp_unit)
9056         (psymtab_to_symtab_1): Update.
9057         (load_full_comp_unit): Add skip_partial parameter.
9058         (process_imported_unit_die, dwarf2_read_addr_index)
9059         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9060         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9061         (read_signatured_type): Update.
9062
9063 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9064
9065         * value.c (release_value): Remove unused variable.
9066         (record_latest_value): Likewise.
9067         (access_value_history): Likewise.
9068         (preserve_values): Likewise.
9069
9070 2018-05-17  Tom Tromey  <tom@tromey.com>
9071
9072         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9073         Initialize.
9074
9075 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9076
9077         PR gdb/22286
9078         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9079         Also handle registers whose width is not a multiple of
9080         PTRACE_TYPE_RET.
9081         (linux_nat_trad_target::store_register): Likewise.
9082
9083 2018-05-16  Tom Tromey  <tom@tromey.com>
9084
9085         * gdbcore.h (core_bfd): Redefine.
9086         * corelow.c (core_target::close): Update.
9087         (core_target_open): Update.
9088         * progspace.h (struct program_space) <cbfd>: Now a
9089         gdb_bfd_ref_ptr.
9090
9091 2018-05-16  Tom Tromey  <tom@tromey.com>
9092
9093         PR cli/19551:
9094         * symfile-add-flags.h (enum symfile_add_flags)
9095         <SYMFILE_NOT_FILENAME>: New constant.
9096         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9097         objfile name from BFD.
9098         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9099         * minidebug.c (find_separate_debug_file_in_section): Put
9100         ".gnu_debugdata" into BFD's file name.
9101
9102 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9103
9104         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9105         Remove.
9106
9107 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9108
9109         PR binutils/21446
9110         * aarch64-tdep.c (aarch64_analyze_prologue,
9111         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9112         Indicate not interested in errors.
9113
9114 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9115
9116         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9117         Supply the MIPS_ZERO_REGNUM register.
9118
9119 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9120
9121         * mips-tdep.c (mask_address_var): Make variable static.
9122
9123 2018-05-14  Tom Tromey  <tom@tromey.com>
9124
9125         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9126
9127 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9128
9129         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9130         FXSAVE_ADDR for the mxcsr register.
9131
9132 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9133
9134         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9135
9136 2018-05-11  Pedro Alves  <palves@redhat.com>
9137
9138         * corelow.c (core_target) <core_target>: No longer inline.
9139         Initialize m_core_gdbarch, m_core_vec and build the section table
9140         here.
9141         <~core_target>: New.
9142         <core_gdbarch, get_core_register_section>: New methods.
9143         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9144         factored out from ...
9145         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9146         (core_ops): Delete.
9147         (sniff_core_bfd): Add gdbarch parameter.
9148         (core_close): Delete, merged into ...
9149         (core_target::close): ... here.  Delete self.
9150         (core_close_cleanup): Delete.
9151         (core_target_open): Allocate a core_target on the heap.  Use a
9152         unique_ptr instead of a cleanup.  Bits moved into the core_target
9153         ctor.  Adjust to use core_target methods instead of globals.
9154         (get_core_register_section): Rename to ...
9155         (core_target::get_core_register_section): ... this and adjust.
9156         (struct get_core_registers_cb_data): New.
9157         (get_core_registers_cb): Use it.  Use bool.
9158         (core_target::fetch_registers, core_target::files_info)
9159         (core_target::xfer_partial, core_target::read_description)
9160         (core_target::pid_to, core_target::thread_name): Adjust to
9161         reference class fields instead of globals.
9162         * target.h (struct target_ops_deleter, target_ops_up): New.
9163
9164 2018-05-11  Pedro Alves  <palves@redhat.com>
9165
9166         * corefile.c (core_file_command): Move to corelow.c.
9167         * corelow.c (the_core_target): Delete.
9168         (core_file_command): Moved from corefile.c.  Check exec_bfd
9169         instead of the_core_target.  Use target_detach instead of calling
9170         into the_core_target directly.
9171         (maybe_say_no_core_file_now): New.
9172         (core_target::detach): Use it.
9173         (_initialize_corelow): Remove references to the_core_target.
9174         * gdbcore.h (the_core_target): Delete.
9175
9176 2018-05-11  Tom Tromey  <tromey@redhat.com>
9177             Pedro Alves  <palves@redhat.com>
9178
9179         * corefile.c (core_bfd): Remove.
9180         * gdbcore.h (core_bfd): Now a macro.
9181         * progspace.h (struct program_space) <cbfd>: New field.
9182
9183 2018-05-11  Tom Tromey  <tom@tromey.com>
9184
9185         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9186         gdb::def_vector.
9187
9188 2018-05-10  Tom Tromey  <tom@tromey.com>
9189
9190         * configure: Rebuild.
9191         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9192
9193 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9194
9195         PR server/23158:
9196         * regformats/regdat.sh: Adjust script, following the addition
9197         of the new expedite_regs parameter to init_target_desc.
9198
9199 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9200     
9201         PR gdb/23127
9202         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9203         set_gdbarch_significant_addr_bit.
9204         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9205         set_gdbarch_significant_addr_bit.
9206         * utils.c (address_significant): Update to sign extend addr.
9207
9208 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9209
9210         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9211         (xtensa_linux_init_abi): Limit tdep->num_regs by
9212         tdep->num_nopriv_regs.
9213         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9214         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9215         not initialized.
9216
9217 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9218
9219         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9220
9221 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9222
9223         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9224         (I387_MXCSR_INIT_VAL): New constant.
9225         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9226         buffer if it was supplied by the inferior.
9227         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9228         (i387_xsave_get_clear_bv): New function.
9229         (i387_supply_xsave): Only read x87 control registers from the
9230         xsave buffer if the feature is enabled, and the state will have
9231         been written, otherwise, provide a suitable default.
9232         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9233         including x87 control registers.  Update control registers if they
9234         have changed from the default value, and mark features as enabled
9235         as required.
9236         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9237
9238 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9239
9240         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9241
9242 2018-05-07  Tom Tromey  <tom@tromey.com>
9243
9244         * configure: Rebuild.
9245         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9246
9247 2018-05-07  Tom Tromey  <tom@tromey.com>
9248
9249         PR tdep/20362:
9250         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9251         bit.  Use correct value for VDIV.
9252
9253 2018-05-04  Tom Tromey  <tom@tromey.com>
9254
9255         * configure: Rebuild.
9256         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9257
9258 2018-05-04  Tom Tromey  <tom@tromey.com>
9259
9260         * linux-record.c (record_linux_system_call) <case
9261         RECORD_SYS_RECVFROM>: Add "break".
9262
9263 2018-05-04  Tom Tromey  <tom@tromey.com>
9264
9265         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9266         Add missing "break".
9267         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9268         Add missing "break".
9269
9270 2018-05-04  Tom Tromey  <tom@tromey.com>
9271
9272         * rs6000-tdep.c (ppc_process_record_op4)
9273         (ppc_process_record_op63): Add fall-through comment.
9274
9275 2018-05-04  Tom Tromey  <tom@tromey.com>
9276
9277         * i386-tdep.c (i386_process_record): Add fall-through comment.
9278
9279 2018-05-04  Tom Tromey  <tom@tromey.com>
9280
9281         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9282         comment.
9283
9284 2018-05-04  Tom Tromey  <tom@tromey.com>
9285
9286         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9287         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9288         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9289         comment.
9290         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9291         comment.
9292         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9293         comment.
9294
9295 2018-05-04  Tom Tromey  <tom@tromey.com>
9296
9297         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9298
9299 2018-05-04  Tom Tromey  <tom@tromey.com>
9300
9301         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9302         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9303         * symfile.c (section_is_mapped): Fix fall-through comment.
9304         * stabsread.c (define_symbol, read_member_functions): Fix
9305         fall-through comment.
9306         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9307         comment.
9308         * remote.c (remote_wait_as): Fix fall-through comment.
9309         * p-exp.y (yylex): Fix fall-through comment.
9310         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9311         comment.
9312         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9313         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9314         * jv-exp.y (yylex): Fix fall-through comment.
9315         * go-exp.y (lex_one_token): Fix fall-through comment.
9316         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9317         fall-through comment.
9318         * f-exp.y (yylex): Fix fall-through comment.
9319         * dwarf2read.c (process_die): Fix fall-through comments.
9320         * dbxread.c (process_one_symbol): Fix fall-through comment.
9321         * d-exp.y (lex_one_token): Fix fall-through comment.
9322         * cp-name-parser.y (yylex): Fix fall-through comment.
9323         * coffread.c (coff_symtab_read): Fix fall-through comment.
9324         * c-exp.y (lex_one_token): Fix fall-through comment.
9325         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9326         comment.
9327         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9328         comment.
9329
9330 2018-05-04  Tom Tromey  <tom@tromey.com>
9331
9332         PR python/22730:
9333         * NEWS: Mention gdb.execute change.
9334         * gdbcmd.h (execute_control_command): Don't declare.
9335         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9336         execute_control_commands, execute_control_commands_to_string.
9337         * cli/cli-script.h (execute_control_commands)
9338         (execute_control_commands_to_string): Declare.
9339         (execute_control_command): Add from_tty parameter.
9340         * cli/cli-script.c (execute_control_commands)
9341         (execute_control_commands_to_string): New functions.
9342         (execute_user_command): Use execute_control_commands.
9343         (execute_control_command_1): Add "from_tty" parameter.  Update.
9344         (execute_control_command): Likewise.
9345
9346 2018-05-04  Tom Tromey  <tom@tromey.com>
9347
9348         PR python/22731:
9349         * NEWS: Mention that breakpoint commands are writable.
9350         * python/py-breakpoint.c (bppy_set_commands): New function.
9351         (breakpoint_object_getset) <"commands">: Use it.
9352
9353 2018-05-04  Tom Tromey  <tom@tromey.com>
9354
9355         * tracepoint.c (actions_command): Update.
9356         * mi/mi-cmd-break.c (mi_command_line_array)
9357         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9358         (mi_read_next_line): Remove.
9359         (mi_cmd_break_commands): Update.
9360         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9361         function_view.
9362         * cli/cli-script.c (get_command_line): Update.
9363         (process_next_line): Use function_view.  Constify.
9364         (recurse_read_control_structure, read_command_lines)
9365         (read_command_lines_1): Change argument types to function_view.
9366         (do_define_command, document_command): Update.
9367         * breakpoint.h (check_tracepoint_command): Don't declare.
9368         * breakpoint.c (check_tracepoint_command): Remove.
9369         (commands_command_1, create_tracepoint_from_upload): Update.
9370
9371 2018-05-04  Tom Tromey  <tom@tromey.com>
9372
9373         PR gdb/11750:
9374         * cli/cli-script.h (enum command_control_type) <define_control>:
9375         New constant.
9376         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9377         (build_command_line, execute_control_command_1)
9378         (process_next_line): Likewise.
9379         (do_define_command): New function, extracted from define_command.
9380         (define_command): Use it.
9381
9382 2018-05-04  Tom Tromey  <tom@tromey.com>
9383
9384         * tracepoint.c (actions_command): Update.
9385         * cli/cli-script.h (read_command_lines): Update.
9386         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9387         (MAX_TMPBUF): Remove define.
9388         (define_command): Use string_printf.
9389         (document_command): Likewise.
9390         * breakpoint.c (commands_command_1): Update.
9391
9392 2018-05-04  Tom Tromey  <tom@tromey.com>
9393
9394         * top.c (execute_command): Update.
9395         * cli/cli-script.h (print_command_lines): Now varargs.
9396         * cli/cli-script.c (print_command_lines): Now varargs.
9397         (execute_control_command_1) <case while_control, case if_control>:
9398         Update.
9399
9400 2018-05-04  Tom Tromey  <tom@tromey.com>
9401
9402         * tracepoint.c (all_tracepoint_actions): Rename from
9403         all_tracepoint_actions_and_cleanup.  Change return type.
9404         (actions_command, encode_actions_1, encode_actions)
9405         (trace_dump_actions, tdump_command): Update.
9406         * remote.c (remote_download_command_source): Update.
9407         * python/python.c (gdbpy_eval_from_control_command)
9408         (python_command, python_interactive_command): Update.
9409         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9410         * guile/guile.c (guile_command)
9411         (gdbscm_eval_from_control_command, guile_command): Update.
9412         * compile/compile.c (compile_code_command)
9413         (compile_print_command, compile_to_object): Update.
9414         * cli/cli-script.h (struct command_lines_deleter): New.
9415         (counted_command_line): New typedef.
9416         (struct command_line): Add constructor, destructor.
9417         <body_list>: Remove.
9418         <body_list_0, body_list_1>: New members.
9419         (command_line_up): Remove typedef.
9420         (read_command_lines, read_command_lines_1, get_command_line):
9421         Update.
9422         (copy_command_lines): Don't declare.
9423         * cli/cli-script.c (build_command_line): Use "new".
9424         (get_command_line): Return counted_command_line.
9425         (print_command_lines, execute_user_command)
9426         (execute_control_command_1, while_command, if_command): Update.
9427         (realloc_body_list): Remove.
9428         (process_next_line, recurse_read_control_structure): Update.
9429         (read_command_lines, read_command_lines_1): Return counted_command_line.
9430         (free_command_lines): Use "delete".
9431         (copy_command_lines): Remove.
9432         (define_command, document_command, show_user_1): Update.
9433         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9434         a counted_command_line.
9435         * breakpoint.h (counted_command_line): Remove typedef.
9436         (breakpoint_set_commands): Update.
9437         * breakpoint.c (check_no_tracepoint_commands)
9438         (validate_commands_for_breakpoint): Update.
9439         (breakpoint_set_commands): Change commands to be a
9440         counted_command_line.
9441         (commands_command_1, update_dprintf_command_list)
9442         (create_tracepoint_from_upload): Update.
9443
9444 2018-05-04  Tom Tromey  <tom@tromey.com>
9445
9446         * cli/cli-decode.h (cmd_list_element): New constructor.
9447         (~cmd_list_element): New destructor.
9448         (struct cmd_list_element): Add initializers.
9449         * cli/cli-decode.c (do_add_cmd): Use "new".
9450         (delete_cmd): Use "delete".
9451
9452 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9453             Pedro Alves <palves@redhat.com>
9454
9455         PR breakpoints/19806 and support for PR external/20207.
9456         * NEWS: Mention Aarch64 watchpoint improvements.
9457         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9458         watchpoints and PR external/20207 watchpoints.
9459         * nat/aarch64-linux-hw-point.c
9460         (kernel_supports_any_contiguous_range): New.
9461         (aarch64_watchpoint_offset): New.
9462         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9463         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9464         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9465         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9466         next_addr_orig_p.  Support PR external/20207 watchpoints.
9467         (aarch64_downgrade_regs): New.
9468         (aarch64_dr_state_insert_one_point): New parameters offset and
9469         addr_orig.
9470         (aarch64_dr_state_remove_one_point): Likewise.
9471         (aarch64_handle_breakpoint): Update caller.
9472         (aarch64_handle_aligned_watchpoint): Likewise.
9473         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9474         aligned_offset.
9475         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9476         aarch64_downgrade_regs.
9477         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9478         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9479         (DR_CONTROL_MASK): ... this.
9480         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9481         (unsigned int aarch64_watchpoint_offset): New prototype.
9482         (aarch64_linux_set_debug_regs): Remove const from state.
9483         * utils.c (align_up, align_down): Move to ...
9484         * common/common-utils.c (align_up, align_down): ... here.
9485         * utils.h (align_up, align_down): Move to ...
9486         * common/common-utils.h (align_up, align_down): ... here.
9487
9488 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9489
9490         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9491         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9492         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9493         Re-implement to match the ABI as summarized in GCC's
9494         gcc/config/sparc/sparc.c.  All callers updated.
9495         (sparc32_store_arguments): Remove assertion.
9496
9497 2018-05-04  Tom Tromey  <tom@tromey.com>
9498
9499         * printcmd.c: Don't include tui.h.
9500         (decode_format): Use skip_spaces.
9501
9502 2018-05-04  Tom Tromey  <tom@tromey.com>
9503
9504         PR gdb/22619:
9505         * printcmd.c (last_count): New global.
9506         (x_command): Use saved count when repeating.
9507
9508 2018-05-04  Tom Tromey  <tom@tromey.com>
9509
9510         * nto-procfs.c (do_closedir_cleanup): Remove.
9511         (procfs_pidlist): Use gdb_dir_up.
9512         * procfs.c (do_closedir_cleanup): Remove.
9513         (proc_update_threads): Use gdb_dir_up.
9514         * common/filestuff.h (struct gdb_dir_deleter): New.
9515         (gdb_dir_up): New typedef.
9516
9517 2018-05-04  Tom Tromey  <tom@tromey.com>
9518
9519         * ada-lang.c (print_mention_exception): Use std::string.
9520
9521 2018-05-04  Tom Tromey  <tom@tromey.com>
9522
9523         * ada-lang.c (create_excep_cond_exprs): Update.
9524         (ada_exception_catchpoint_cond_string): Use std::string.
9525
9526 2018-05-04  Tom Tromey  <tom@tromey.com>
9527
9528         * ada-lang.c (xget_renaming_scope): Return std::string.
9529         (old_renaming_is_invisible): Update.
9530
9531 2018-05-04  Tom Tromey  <tom@tromey.com>
9532
9533         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9534         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9535
9536 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9537
9538         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9539
9540 2018-05-04  Tom Tromey  <tom@tromey.com>
9541
9542         * remote.c (remote_query_supported_append): Change type.
9543         (remote_check_symbols): Update.
9544
9545 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9546
9547         PR gdb/11420
9548         * configure.ac: Prepend libpython.
9549         * python/python-config.py: Likewise.
9550         * configure: Regenerate.
9551
9552 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9553
9554         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9555
9556 2018-05-03  Pedro Alves  <palves@redhat.com>
9557
9558         * s390-linux-nat.c
9559         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9560         override.  Write 'true' instead of '1'.
9561         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9562         declaration.
9563
9564 2018-05-02  Pedro Alves  <palves@redhat.com>
9565
9566         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9567         add_inf_child_target.
9568         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9569         add_inf_child_target.
9570         * aix-thread.c (aix_thread_target_info): New.
9571         (aix_thread_target) <shortname, longname, doc>: Delete.
9572         <info>: New.
9573         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9574         add_inf_child_target.
9575         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9576         add_inf_child_target.
9577         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9578         add_inf_child_target.
9579         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9580         add_inf_child_target.
9581         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9582         add_inf_child_target.
9583         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9584         add_inf_child_target.
9585         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9586         add_inf_child_target.
9587         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9588         add_inf_child_target.
9589         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9590         add_inf_child_target.
9591         * bfd-target.c (target_bfd_target_info): New.
9592         (target_bfd) <shortname, longname, doc>: Delete.
9593         <info>: New.
9594         * bsd-kvm.c (bsd_kvm_target_info): New.
9595         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9596         <info>: New.
9597         (bsd_kvm_target::open): Rename to ...
9598         (bsd_kvm_target_open): ... this.  Adjust.
9599         * bsd-uthread.c (bsd_uthread_target_info): New.
9600         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9601         <info>: New.
9602         * corefile.c (core_file_command): Adjust.
9603         * corelow.c (core_target_info): New.
9604         (core_target) <shortname, longname, doc>: Delete.
9605         <info>: New.
9606         (core_target::open): Rename to ...
9607         (core_target_open): ... this.  Adjust.
9608         * ctf.c (ctf_target_info): New.
9609         (ctf_target) <shortname, longname, doc>: Delete.
9610         <info>: New.
9611         (ctf_target::open): Rename to ...
9612         (ctf_target_open): ... this.
9613         (_initialize_ctf): Adjust.
9614         * exec.c (exec_target_info): New.
9615         (exec_target) <shortname, longname, doc>: Delete.
9616         <info>: New.
9617         (exec_target::open): Rename to ...
9618         (exec_target_open): ... this.
9619         * gdbcore.h (core_target_open): Declare.
9620         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9621         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9622         add_inf_child_target.
9623         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9624         add_inf_child_target.
9625         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9626         add_inf_child_target.
9627         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9628         add_inf_child_target.
9629         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9630         add_inf_child_target.
9631         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9632         add_inf_child_target.
9633         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9634         add_inf_child_target.
9635         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9636         add_inf_child_target.
9637         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9638         add_inf_child_target.
9639         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9640         add_inf_child_target.
9641         * inf-child.c (inf_child_target_info): New.
9642         (inf_child_target::info): New.
9643         (inf_child_open_target): Remove 'target' parameter.  Use
9644         get_native_target instead.
9645         (inf_child_target::open): Delete.
9646         (add_inf_child_target): New.
9647         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9648         Delete.
9649         <info>: New.
9650         (add_inf_child_target): Declare.
9651         (inf_child_open_target): Declare.
9652         * linux-thread-db.c (thread_db_target_info): New.
9653         (thread_db_target) <shortname, longname, doc>: Delete.
9654         <info>: New.
9655         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9656         add_inf_child_target.
9657         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9658         add_inf_child_target.
9659         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9660         add_inf_child_target.
9661         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9662         add_inf_child_target.
9663         * make-target-delegates (print_class): Adjust.
9664         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9665         add_inf_child_target.
9666         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9667         add_inf_child_target.
9668         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9669         add_inf_child_target.
9670         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9671         add_inf_child_target.
9672         * nto-procfs.c (nto_native_target_info): New.
9673         (nto_procfs_target_native) <shortname, longname, doc>:
9674         Delete.
9675         <info>: New.
9676         (nto_procfs_target_info): New.
9677         (nto_procfs_target_procfs) <shortname, longname, doc>:
9678         Delete.
9679         <info>: New.
9680         (init_procfs_targets): Adjust.
9681         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9682         add_inf_child_target.
9683         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9684         add_inf_child_target.
9685         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9686         add_inf_child_target.
9687         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9688         add_inf_child_target.
9689         * ravenscar-thread.c (ravenscar_target_info): New.
9690         (ravenscar_thread_target) <shortname, longname, doc>:
9691         Delete.
9692         <info>: New.
9693         * record-btrace.c (record_btrace_target_info):
9694         (record_btrace_target) <shortname, longname, doc>: Delete.
9695         <info>: New.
9696         (record_btrace_target::open): Rename to ...
9697         (record_btrace_target_open): ... this.  Adjust.
9698         * record-full.c (record_longname, record_doc): New.
9699         (record_full_base_target) <shortname, longname, doc>: Delete.
9700         <info>: New.
9701         (record_full_target_info): New.
9702         (record_full_target): <shortname>: Delete.
9703         <info>: New.
9704         (record_full_core_open_1, record_full_open_1): Update comments.
9705         (record_full_base_target::open): Rename to ...
9706         (record_full_open): ... this.
9707         (cmd_record_full_restore): Update.
9708         (_initialize_record_full): Update.
9709         * remote-sim.c (remote_sim_target_info): New.
9710         (gdbsim_target) <shortname, longname, doc>: Delete.
9711         <info>: New.
9712         (gdbsim_target::open): Rename to ...
9713         (gdbsim_target_open): ... this.
9714         (_initialize_remote_sim): Adjust.
9715         * remote.c (remote_doc): New.
9716         (remote_target_info): New.
9717         (remote_target) <shortname, longname, doc>: Delete.
9718         <info>: New.
9719         (extended_remote_target_info): New.
9720         (extended_remote_target) <shortname, longname, doc>: Delete.
9721         <info>: New.
9722         (remote_target::open_1): Make static.  Adjust.
9723         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9724         * s390-linux-nat.c (_initialize_s390_nat): Use
9725         add_inf_child_target.
9726         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9727         add_inf_child_target.
9728         * sol-thread.c (thread_db_target_info): New.
9729         (sol_thread_target) <shortname, longname, doc>: Delete.
9730         <info>: New.
9731         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9732         add_inf_child_target.
9733         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9734         add_inf_child_target.
9735         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9736         add_inf_child_target.
9737         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9738         add_inf_child_target.
9739         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9740         add_inf_child_target.
9741         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9742         add_inf_child_target.
9743         * spu-linux-nat.c (_initialize_spu_nat): Use
9744         add_inf_child_target.
9745         * spu-multiarch.c (spu_multiarch_target_info): New.
9746         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9747         <info>: New.
9748         * target-delegates.c: Regenerate.
9749         * target.c: Include <unordered_map>.
9750         (target_ops_p): Delete.
9751         (DEF_VEC_P(target_ops_p)): Delete.
9752         (target_factories): New.
9753         (test_target_info): New.
9754         (test_target_ops::info): New.
9755         (open_target): Adjust to use target_factories.
9756         (add_target_with_completer): Rename to ...
9757         (add_target): ... this.  Change prototype.  Register target_info
9758         and open callback in target_factories.  Register target_info in
9759         command context instead of target_ops.
9760         (add_target): Delete old implementation.
9761         (add_deprecated_target_alias): Change prototype.  Adjust.
9762         (the_native_target): New.
9763         (set_native_target, get_native_target): New.
9764         (find_default_run_target): Use the_native_target.
9765         (find_attach_target, find_run_target): Simplify.
9766         (target_ops::open): Delete.
9767         (dummy_target_info): New.
9768         (dummy_target::shortname, dummy_target::longname)
9769         (dummy_target::doc): Delete.
9770         (dummy_target::info): New.
9771         (debug_target::shortname, debug_target::longname)
9772         (debug_target::doc): Delete.
9773         (debug_target::info): New.
9774         * target.h (struct target_info): New.
9775         (target_ops::~target_ops): Add comment.
9776         (target_ops::info): New.
9777         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9778         longer virtual.  Implement in terms of target_info.
9779         (set_native_target, get_native_target): Declare.
9780         (target_open_ftype): New.
9781         (add_target, add_target_with_completer)
9782         (add_deprecated_target_alias): Change prototype.
9783         (test_target) <shortname, longname, doc>: Delete.
9784         <info>: New.
9785         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9786         add_inf_child_target.
9787         * tracefile-tfile.c (tfile_target_info): New.
9788         (tfile_target) <shortname, longname, doc>: Delete.
9789         <info>: New.
9790         (tfile_target::open): Rename to ...
9791         (tfile_target_open): ... this.
9792         (_initialize_tracefile_tfile): Adjust.
9793         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9794         add_inf_child_target.
9795         * windows-nat.c (_initialize_windows_nat): Use
9796         add_inf_child_target.
9797         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9798         add_inf_child_target.
9799
9800 2018-05-02  Pedro Alves  <palves@redhat.com>
9801
9802         * linux-nat.h (linux_nat_target) <low_new_thread,
9803         low_delete_thread, low_new_fork, low_forget_process,
9804         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9805         New virtual methods.
9806         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9807         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9808         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9809         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9810         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9811         Delete.
9812         * linux-fork.c (delete_fork): Adjust to call low method.
9813         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9814         (linux_nat_new_fork, linux_nat_forget_process_hook)
9815         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9816         (linux_nat_status_is_event):
9817         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9818         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9819         to call low method.
9820         (sigtrap_is_event): Rename to ...
9821         (linux_nat_target::low_status_is_event): ... this.
9822         (linux_nat_set_status_is_event): Delete.
9823         (save_stop_reason, linux_nat_wait_1)
9824         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9825         low methods.
9826         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9827         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9828         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9829         (linux_nat_set_prepare_to_resume): Delete.
9830         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9831         low virtual methods.
9832         * amd64-linux-nat.c: Likewise.
9833         * arm-linux-nat.c: Likewise.
9834         * i386-linux-nat.c: Likewise.
9835         * ia64-linux-nat.c: Likewise.
9836         * mips-linux-nat.c: Likewise.
9837         * ppc-linux-nat.c: Likewise.
9838         * s390-linux-nat.c: Likewise.
9839         * sparc64-linux-nat.c: Likewise.
9840         * x86-linux-nat.c: Likewise.
9841         * x86-linux-nat.h: Include "nat/x86-linux.h".
9842         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9843         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9844         Override methods.
9845
9846 2018-05-02  Pedro Alves  <palves@redhat.com>
9847
9848         * target.h (target_ops)
9849         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9850         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9851         stopped_by_watchpoint, have_continuable_watchpoint,
9852         stopped_data_address, watchpoint_addr_within_range,
9853         can_accel_watchpoint_condition, can_run, thread_alive,
9854         has_all_memory, has_memory, has_stack, has_registers,
9855         has_execution, can_async_p, is_async_p, supports_non_stop,
9856         always_non_stop_p, can_execute_reverse, supports_multi_process,
9857         supports_enable_disable_tracepoint,
9858         supports_disable_randomization, supports_string_tracing,
9859         supports_evaluation_of_breakpoint_conditions,
9860         can_run_breakpoint_commands, filesystem_is_local,
9861         can_download_tracepoint, get_trace_state_variable_value,
9862         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9863         record_is_replaying, record_will_replay,
9864         augmented_libraries_svr4_read>: Adjust to return bool.
9865         * aarch64-linux-nat.c: All implementations adjusted.
9866         * aix-thread.c: All implementations adjusted.
9867         * arm-linux-nat.c: All implementations adjusted.
9868         * breakpoint.c: All implementations adjusted.
9869         * bsd-kvm.c: All implementations adjusted.
9870         * bsd-uthread.c: All implementations adjusted.
9871         * corelow.c: All implementations adjusted.
9872         * ctf.c: All implementations adjusted.
9873         * darwin-nat.c: All implementations adjusted.
9874         * darwin-nat.h: All implementations adjusted.
9875         * exec.c: All implementations adjusted.
9876         * fbsd-nat.c: All implementations adjusted.
9877         * fbsd-nat.h: All implementations adjusted.
9878         * gnu-nat.c: All implementations adjusted.
9879         * gnu-nat.h: All implementations adjusted.
9880         * go32-nat.c: All implementations adjusted.
9881         * ia64-linux-nat.c: All implementations adjusted.
9882         * inf-child.c: All implementations adjusted.
9883         * inf-child.h: All implementations adjusted.
9884         * inf-ptrace.c: All implementations adjusted.
9885         * inf-ptrace.h: All implementations adjusted.
9886         * linux-nat.c: All implementations adjusted.
9887         * linux-nat.h: All implementations adjusted.
9888         * mips-linux-nat.c: All implementations adjusted.
9889         * nto-procfs.c: All implementations adjusted.
9890         * ppc-linux-nat.c: All implementations adjusted.
9891         * procfs.c: All implementations adjusted.
9892         * ravenscar-thread.c: All implementations adjusted.
9893         * record-btrace.c: All implementations adjusted.
9894         * record-full.c: All implementations adjusted.
9895         * remote-sim.c: All implementations adjusted.
9896         * remote.c: All implementations adjusted.
9897         * s390-linux-nat.c: All implementations adjusted.
9898         * sol-thread.c: All implementations adjusted.
9899         * spu-multiarch.c: All implementations adjusted.
9900         * target-delegates.c: All implementations adjusted.
9901         * target.c: All implementations adjusted.
9902         * target.h: All implementations adjusted.
9903         * tracefile-tfile.c: All implementations adjusted.
9904         * tracefile.c: All implementations adjusted.
9905         * tracefile.h: All implementations adjusted.
9906         * windows-nat.c: All implementations adjusted.
9907         * x86-linux-nat.h: All implementations adjusted.
9908         * x86-nat.h: All implementations adjusted.
9909
9910 2018-05-02  Pedro Alves  <palves@redhat.com>
9911
9912         * make-target-delegates (scan_target_h): Don't trim lines here.
9913         Replace sequences of tabs and/or whitespace with a single
9914         whitespace.
9915         (top level, parsing methods): Trim each line before processing it
9916         here.
9917
9918 2018-05-02  Pedro Alves  <palves@redhat.com>
9919             John Baldwin  <jhb@freebsd.org>
9920
9921         * target.h (enum strata) <debug_stratum>: New.
9922         (struct target_ops) <all delegation methods>: Replace by C++
9923         virtual methods, and drop "to_" prefix.  All references updated
9924         throughout.
9925         <to_shortname, to_longname, to_doc, to_data,
9926         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9927         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9928         virtual methods.  All references updated throughout.
9929         <can_attach, supports_terminal_ours, can_create_inferior,
9930         get_thread_control_capabilities, attach_no_wait>: New
9931         virtual methods.
9932         <insert_breakpoint, remove_breakpoint>: Now
9933         TARGET_DEFAULT_NORETURN methods.
9934         <info_proc>: Now returns bool.
9935         <to_magic>: Delete.
9936         (OPS_MAGIC): Delete.
9937         (current_target): Delete.  All references replaced by references
9938         to ...
9939         (target_stack): ... this.  New.
9940         (target_shortname, target_longname): Adjust.
9941         (target_can_run): Now a function declaration.
9942         (default_child_has_all_memory, default_child_has_memory)
9943         (default_child_has_stack, default_child_has_registers)
9944         (default_child_has_execution): Remove target_ops parameter.
9945         (complete_target_initialization): Delete.
9946         (memory_breakpoint_target): New template class.
9947         (test_target_ops): Refactor as a C++ class with virtual methods.
9948         * make-target-delegates (NAME_PART): Tighten.
9949         (POINTER_PART, CP_SYMBOL): New.
9950         (SIMPLE_RETURN_PART): Reimplement.
9951         (VEC_RETURN_PART): Expect less.
9952         (RETURN_PART, VIRTUAL_PART): New.
9953         (METHOD): Adjust to C++ virtual methods.
9954         (scan_target_h): Remove reference to C99.
9955         (dname): Output "target_ops::" prefix.
9956         (write_function_header): Adjust to output a C++ class method.
9957         (write_declaration): New.
9958         (write_delegator): Adjust to output a C++ class method.
9959         (tdname): Output "dummy_target::" prefix.
9960         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9961         method.
9962         (tdefault_names, debug_names): Delete.
9963         (return_types, tdefaults, styles, argtypes_array): New.
9964         (top level): All methods are delegators.
9965         (print_class): New.
9966         (top level): Print dummy_target and debug_target classes.
9967         * target-delegates.c: Regenerate.
9968         * target-debug.h (target_debug_print_enum_info_proc_what)
9969         (target_debug_print_thread_control_capabilities)
9970         (target_debug_print_thread_info_p): New.
9971         * target.c (dummy_target): Delete.
9972         (the_dummy_target, the_debug_target): New.
9973         (target_stack): Now extern.
9974         (set_targetdebug): Push/unpush debug target.
9975         (default_child_has_all_memory, default_child_has_memory)
9976         (default_child_has_stack, default_child_has_registers)
9977         (default_child_has_execution): Remove target_ops parameter.
9978         (complete_target_initialization): Delete.
9979         (add_target_with_completer): No longer call
9980         complete_target_initialization.
9981         (target_supports_terminal_ours): Use regular delegation.
9982         (update_current_target): Delete.
9983         (push_target): No longer check magic number.  Don't call
9984         update_current_target.
9985         (unpush_target): Don't call update_current_target.
9986         (target_is_pushed): No longer check magic number.
9987         (target_require_runnable): Skip for all stratums over
9988         process_stratum.
9989         (target_ops::info_proc): New.
9990         (target_info_proc): Use find_target_at and
9991         find_default_run_target.
9992         (target_supports_disable_randomization): Use regular delegation.
9993         (target_get_osdata): Use find_target_at.
9994         (target_ops::open, target_ops::close, target_ops::can_attach)
9995         (target_ops::attach, target_ops::can_create_inferior)
9996         (target_ops::create_inferior, target_ops::can_run)
9997         (target_can_run): New.
9998         (default_fileio_target): Use regular delegation.
9999         (target_ops::fileio_open, target_ops::fileio_pwrite)
10000         (target_ops::fileio_pread, target_ops::fileio_fstat)
10001         (target_ops::fileio_close, target_ops::fileio_unlink)
10002         (target_ops::fileio_readlink): New.
10003         (target_fileio_open_1, target_fileio_unlink)
10004         (target_fileio_readlink): Always call the target method.  Handle
10005         FILEIO_ENOSYS.
10006         (return_zero, return_zero_has_execution): Delete.
10007         (init_dummy_target): Delete.
10008         (dummy_target::dummy_target, dummy_target::shortname)
10009         (dummy_target::longname, dummy_target::doc)
10010         (debug_target::debug_target, debug_target::shortname)
10011         (debug_target::longname, debug_target::doc): New.
10012         (target_supports_delete_record): Use regular delegation.
10013         (setup_target_debug): Delete.
10014         (maintenance_print_target_stack): Skip debug_stratum.
10015         (initialize_targets): Instantiate the_dummy_target and
10016         the_debug_target.
10017         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10018         use target_stack.
10019         (target_auxv_search, fprint_target_auxv): Adjust.
10020         (info_auxv_command): Adjust to use target_stack.
10021         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10022         * exceptions.c (print_flush): Handle a NULL target_stack.
10023         * regcache.c (target_ops_no_register): Refactor as class with
10024         virtual methods.
10025
10026         * exec.c (exec_target): New class.
10027         (exec_ops): Now an exec_target.
10028         (exec_open, exec_close_1, exec_get_section_table)
10029         (exec_xfer_partial, exec_files_info, exec_has_memory)
10030         (exec_make_note_section): Refactor as exec_target methods.
10031         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10032         Delete.
10033         (exec_target::find_memory_regions): New.
10034         (_initialize_exec): Don't call init_exec_ops.
10035         * gdbcore.h (exec_file_clear): Delete.
10036
10037         * corefile.c (core_target): Delete.
10038         (core_file_command): Adjust.
10039         * corelow.c (core_target): New class.
10040         (the_core_target): New.
10041         (core_close): Remove target_ops parameter.
10042         (core_close_cleanup): Adjust.
10043         (core_target::close): New.
10044         (core_open, core_detach, get_core_registers, core_files_info)
10045         (core_xfer_partial, core_thread_alive, core_read_description)
10046         (core_pid_to_str, core_thread_name, core_has_memory)
10047         (core_has_stack, core_has_registers, core_info_proc): Rework as
10048         core_target methods.
10049         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10050         (_initialize_corelow): Initialize the_core_target.
10051         * gdbcore.h (core_target): Delete.
10052         (the_core_target): New.
10053
10054         * ctf.c: (ctf_target): New class.
10055         (ctf_ops): Now a ctf_target.
10056         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10057         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10058         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10059         methods.
10060         (init_ctf_ops): Delete.
10061         (_initialize_ctf): Don't call it.
10062         * tracefile-tfile.c (tfile_target): New class.
10063         (tfile_ops): Now a tfile_target.
10064         (tfile_open, tfile_close, tfile_files_info)
10065         (tfile_get_tracepoint_status, tfile_trace_find)
10066         (tfile_fetch_registers, tfile_xfer_partial)
10067         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10068         Refactor as tfile_target methods.
10069         (tfile_xfer_partial_features): Remove target_ops parameter.
10070         (init_tfile_ops): Delete.
10071         (_initialize_tracefile_tfile): Don't call it.
10072         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10073         (tracefile_has_stack, tracefile_has_registers)
10074         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10075         tracefile_target methods.
10076         (init_tracefile_ops): Delete.
10077         (tracefile_target::tracefile_target): New.
10078         * tracefile.h: Include "target.h".
10079         (tracefile_target): New class.
10080         (init_tracefile_ops): Delete.
10081
10082         * spu-multiarch.c (spu_multiarch_target): New class.
10083         (spu_ops): Now a spu_multiarch_target.
10084         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10085         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10086         (spu_search_memory, spu_mourn_inferior): Refactor as
10087         spu_multiarch_target methods.
10088         (init_spu_ops): Delete.
10089         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10090         complete_target_initialization.
10091
10092         * ravenscar-thread.c (ravenscar_thread_target): New class.
10093         (ravenscar_ops): Now a ravenscar_thread_target.
10094         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10095         (ravenscar_thread_alive, ravenscar_pid_to_str)
10096         (ravenscar_fetch_registers, ravenscar_store_registers)
10097         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10098         (ravenscar_stopped_by_hw_breakpoint)
10099         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10100         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10101         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10102         methods.
10103         (init_ravenscar_thread_ops): Delete.
10104         (_initialize_ravenscar): Remove references to
10105         init_ravenscar_thread_ops and complete_target_initialization.
10106
10107         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10108         (bsd_uthread_target): New class.
10109         (bsd_uthread_ops): Now a bsd_uthread_target.
10110         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10111         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10112         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10113         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10114         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10115         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10116         (bsd_uthread_target): Delete function.
10117         (_initialize_bsd_uthread): Remove reference to
10118         complete_target_initialization.
10119
10120         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10121         (target_bfd): ... this new class.
10122         (target_bfd_xfer_partial, target_bfd_get_section_table)
10123         (target_bfd_close): Refactor as target_bfd methods.
10124         (target_bfd::~target_bfd): New.
10125         (target_bfd_reopen): Adjust.
10126         (target_bfd::close): New.
10127
10128         * record-btrace.c (record_btrace_target): New class.
10129         (record_btrace_ops): Now a record_btrace_target.
10130         (record_btrace_open, record_btrace_stop_recording)
10131         (record_btrace_disconnect, record_btrace_close)
10132         (record_btrace_async, record_btrace_info)
10133         (record_btrace_insn_history, record_btrace_insn_history_range)
10134         (record_btrace_insn_history_from, record_btrace_call_history)
10135         (record_btrace_call_history_range)
10136         (record_btrace_call_history_from, record_btrace_record_method)
10137         (record_btrace_is_replaying, record_btrace_will_replay)
10138         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10139         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10140         (record_btrace_store_registers, record_btrace_prepare_to_store)
10141         (record_btrace_to_get_unwinder)
10142         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10143         (record_btrace_commit_resume, record_btrace_wait)
10144         (record_btrace_stop, record_btrace_can_execute_reverse)
10145         (record_btrace_stopped_by_sw_breakpoint)
10146         (record_btrace_supports_stopped_by_sw_breakpoint)
10147         (record_btrace_stopped_by_hw_breakpoint)
10148         (record_btrace_supports_stopped_by_hw_breakpoint)
10149         (record_btrace_update_thread_list, record_btrace_thread_alive)
10150         (record_btrace_goto_begin, record_btrace_goto_end)
10151         (record_btrace_goto, record_btrace_stop_replaying_all)
10152         (record_btrace_execution_direction)
10153         (record_btrace_prepare_to_generate_core)
10154         (record_btrace_done_generating_core): Refactor as
10155         record_btrace_target methods.
10156         (init_record_btrace_ops): Delete.
10157         (_initialize_record_btrace): Remove reference to
10158         init_record_btrace_ops.
10159         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10160         the execution_direction global.
10161         (record_full_base_target, record_full_target)
10162         (record_full_core_target): New classes.
10163         (record_full_ops): Now a record_full_target.
10164         (record_full_core_ops): Now a record_full_core_target.
10165         (record_full_target::detach, record_full_target::disconnect)
10166         (record_full_core_target::disconnect)
10167         (record_full_target::mourn_inferior, record_full_target::kill):
10168         New.
10169         (record_full_open, record_full_close, record_full_async): Refactor
10170         as methods of the record_full_base_target class.
10171         (record_full_resume, record_full_commit_resume): Refactor
10172         as methods of the record_full_target class.
10173         (record_full_wait, record_full_stopped_by_watchpoint)
10174         (record_full_stopped_data_address)
10175         (record_full_stopped_by_sw_breakpoint)
10176         (record_full_supports_stopped_by_sw_breakpoint)
10177         (record_full_stopped_by_hw_breakpoint)
10178         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10179         methods of the record_full_base_target class.
10180         (record_full_store_registers, record_full_xfer_partial)
10181         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10182         Refactor as methods of the record_full_target class.
10183         (record_full_can_execute_reverse, record_full_get_bookmark)
10184         (record_full_goto_bookmark, record_full_execution_direction)
10185         (record_full_record_method, record_full_info, record_full_delete)
10186         (record_full_is_replaying, record_full_will_replay)
10187         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10188         (record_full_stop_replaying): Refactor as methods of the
10189         record_full_base_target class.
10190         (record_full_core_resume, record_full_core_kill)
10191         (record_full_core_fetch_registers)
10192         (record_full_core_prepare_to_store)
10193         (record_full_core_store_registers, record_full_core_xfer_partial)
10194         (record_full_core_insert_breakpoint)
10195         (record_full_core_remove_breakpoint)
10196         (record_full_core_has_execution): Refactor
10197         as methods of the record_full_core_target class.
10198         (record_full_base_target::supports_delete_record): New.
10199         (init_record_full_ops): Delete.
10200         (init_record_full_core_ops): Delete.
10201         (record_full_save): Refactor as method of the
10202         record_full_base_target class.
10203         (_initialize_record_full): Remove references to
10204         init_record_full_ops and init_record_full_core_ops.
10205
10206         * remote.c (remote_target, extended_remote_target): New classes.
10207         (remote_ops): Now a remote_target.
10208         (extended_remote_ops): Now an extended_remote_target.
10209         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10210         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10211         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10212         (remote_pass_signals, remote_set_syscall_catchpoint)
10213         (remote_program_signals, )
10214         (remote_thread_always_alive): Remove target_ops parameter.
10215         (remote_thread_alive, remote_thread_name)
10216         (remote_update_thread_list, remote_threads_extra_info)
10217         (remote_static_tracepoint_marker_at)
10218         (remote_static_tracepoint_markers_by_strid)
10219         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10220         (remote_open): Refactor as methods of remote_target.
10221         (extended_remote_open, extended_remote_detach)
10222         (extended_remote_attach, extended_remote_post_attach):
10223         (extended_remote_supports_disable_randomization)
10224         (extended_remote_create_inferior): : Refactor as method of
10225         extended_remote_target.
10226         (remote_set_permissions, remote_open_1, remote_detach)
10227         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10228         (remote_resume, remote_commit_resume, remote_stop)
10229         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10230         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10231         (remote_prepare_to_store, remote_store_registers)
10232         (remote_flash_erase, remote_flash_done, remote_files_info)
10233         (remote_kill, remote_mourn, remote_insert_breakpoint)
10234         (remote_remove_breakpoint, remote_insert_watchpoint)
10235         (remote_watchpoint_addr_within_range)
10236         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10237         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10238         (remote_supports_stopped_by_sw_breakpoint)
10239         (remote_stopped_by_hw_breakpoint)
10240         (remote_supports_stopped_by_hw_breakpoint)
10241         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10242         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10243         (remote_verify_memory): Refactor as methods of remote_target.
10244         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10245         parameter.
10246         (remote_xfer_partial, remote_get_memory_xfer_limit)
10247         (remote_search_memory, remote_rcmd, remote_memory_map)
10248         (remote_pid_to_str, remote_get_thread_local_address)
10249         (remote_get_tib_address, remote_read_description): Refactor as
10250         methods of remote_target.
10251         (remote_target::fileio_open, remote_target::fileio_pwrite)
10252         (remote_target::fileio_pread, remote_target::fileio_close): New.
10253         (remote_hostio_readlink, remote_hostio_fstat)
10254         (remote_filesystem_is_local, remote_can_execute_reverse)
10255         (remote_supports_non_stop, remote_supports_disable_randomization)
10256         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10257         (remote_supports_enable_disable_tracepoint)
10258         (remote_supports_string_tracing)
10259         (remote_can_run_breakpoint_commands, remote_trace_init)
10260         (remote_download_tracepoint, remote_can_download_tracepoint)
10261         (remote_download_trace_state_variable, remote_enable_tracepoint)
10262         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10263         (remote_trace_start, remote_get_trace_status)
10264         (remote_get_tracepoint_status, remote_trace_stop)
10265         (remote_trace_find, remote_get_trace_state_variable_value)
10266         (remote_save_trace_data, remote_get_raw_trace_data)
10267         (remote_set_disconnected_tracing, remote_core_of_thread)
10268         (remote_set_circular_trace_buffer, remote_traceframe_info)
10269         (remote_get_min_fast_tracepoint_insn_len)
10270         (remote_set_trace_buffer_size, remote_set_trace_notes)
10271         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10272         (remote_disable_btrace, remote_teardown_btrace)
10273         (remote_read_btrace, remote_btrace_conf)
10274         (remote_augmented_libraries_svr4_read, remote_load)
10275         (remote_pid_to_exec_file, remote_can_do_single_step)
10276         (remote_execution_direction, remote_thread_handle_to_thread_info):
10277         Refactor as methods of remote_target.
10278         (init_remote_ops, init_extended_remote_ops): Delete.
10279         (remote_can_async_p, remote_is_async_p, remote_async)
10280         (remote_thread_events, remote_upload_tracepoints)
10281         (remote_upload_trace_state_variables): Refactor as methods of
10282         remote_target.
10283         (_initialize_remote): Remove references to init_remote_ops and
10284         init_extended_remote_ops.
10285
10286         * remote-sim.c (gdbsim_target): New class.
10287         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10288         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10289         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10290         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10291         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10292         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10293         Refactor as methods of gdbsim_target.
10294         (gdbsim_ops): Now a gdbsim_target.
10295         (init_gdbsim_ops): Delete.
10296         (gdbsim_cntrl_c): Adjust.
10297         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10298
10299         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10300         (the_amd64_linux_nat_target): New.
10301         (amd64_linux_fetch_inferior_registers)
10302         (amd64_linux_store_inferior_registers): Refactor as methods of
10303         amd64_linux_nat_target.
10304         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10305         * i386-linux-nat.c: Don't include "linux-nat.h".
10306         (i386_linux_nat_target): New class.
10307         (the_i386_linux_nat_target): New.
10308         (i386_linux_fetch_inferior_registers)
10309         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10310         as methods of i386_linux_nat_target.
10311         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10312         * inf-child.c (inf_child_ops): Delete.
10313         (inf_child_fetch_inferior_registers)
10314         (inf_child_store_inferior_registers): Delete.
10315         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10316         methods of inf_child_target.
10317         (inf_child_target::supports_terminal_ours)
10318         (inf_child_target::terminal_init)
10319         (inf_child_target::terminal_inferior)
10320         (inf_child_target::terminal_ours_for_output)
10321         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10322         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10323         New.
10324         (inf_child_open, inf_child_disconnect, inf_child_close)
10325         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10326         (inf_child_post_startup_inferior, inf_child_can_run)
10327         (inf_child_pid_to_exec_file): Refactor as methods of
10328         inf_child_target.
10329         (inf_child_follow_fork): Delete.
10330         (inf_child_target::can_create_inferior)
10331         (inf_child_target::can_attach): New.
10332         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10333         (inf_child_target::has_stack, inf_child_target::has_registers)
10334         (inf_child_target::has_execution): New.
10335         (inf_child_fileio_open, inf_child_fileio_pwrite)
10336         (inf_child_fileio_pread, inf_child_fileio_fstat)
10337         (inf_child_fileio_close, inf_child_fileio_unlink)
10338         (inf_child_fileio_readlink, inf_child_use_agent)
10339         (inf_child_can_use_agent): Refactor as methods of
10340         inf_child_target.
10341         (return_zero, inf_child_target): Delete.
10342         (inf_child_target::inf_child_target): New.
10343         * inf-child.h: Include "target.h".
10344         (inf_child_target): Delete function prototype.
10345         (inf_child_target): New class.
10346         (inf_child_open_target, inf_child_mourn_inferior)
10347         (inf_child_maybe_unpush_target): Delete.
10348         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10349         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10350         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10351         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10352         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10353         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10354         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10355         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10356         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10357         methods of inf_ptrace_target.
10358         (inf_ptrace_target): Delete function.
10359         * inf-ptrace.h: Include "inf-child.h".
10360         (inf_ptrace_target): Delete function declaration.
10361         (inf_ptrace_target): New class.
10362         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10363         * linux-nat.c (linux_target): New.
10364         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10365         (linux_nat_target::~linux_nat_target): New.
10366         (linux_child_post_attach, linux_child_post_startup_inferior)
10367         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10368         (linux_child_remove_fork_catchpoint)
10369         (linux_child_insert_vfork_catchpoint)
10370         (linux_child_remove_vfork_catchpoint)
10371         (linux_child_insert_exec_catchpoint)
10372         (linux_child_remove_exec_catchpoint)
10373         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10374         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10375         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10376         (linux_nat_stopped_data_address)
10377         (linux_nat_stopped_by_sw_breakpoint)
10378         (linux_nat_supports_stopped_by_sw_breakpoint)
10379         (linux_nat_stopped_by_hw_breakpoint)
10380         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10381         (linux_nat_kill, linux_nat_mourn_inferior)
10382         (linux_nat_xfer_partial, linux_nat_thread_alive)
10383         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10384         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10385         (linux_child_static_tracepoint_markers_by_strid)
10386         (linux_nat_is_async_p, linux_nat_can_async_p)
10387         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10388         (linux_nat_supports_multi_process)
10389         (linux_nat_supports_disable_randomization, linux_nat_async)
10390         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10391         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10392         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10393         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10394         methods of linux_nat_target.
10395         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10396         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10397         parameter.
10398         (check_stopped_by_watchpoint): Adjust.
10399         (linux_xfer_partial): Delete.
10400         (linux_target_install_ops, linux_target, linux_nat_add_target):
10401         Delete.
10402         (linux_nat_target::linux_nat_target): New.
10403         * linux-nat.h: Include "inf-ptrace.h".
10404         (linux_nat_target): New.
10405         (linux_target, linux_target_install_ops, linux_nat_add_target):
10406         Delete function declarations.
10407         (linux_target): Declare global.
10408         * linux-thread-db.c (thread_db_target): New.
10409         (thread_db_target::thread_db_target): New.
10410         (thread_db_ops): Delete.
10411         (the_thread_db_target): New.
10412         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10413         (thread_db_update_thread_list, thread_db_pid_to_str)
10414         (thread_db_extra_thread_info)
10415         (thread_db_thread_handle_to_thread_info)
10416         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10417         (thread_db_resume): Refactor as methods of thread_db_target.
10418         (init_thread_db_ops): Delete.
10419         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10420         * x86-linux-nat.c: Don't include "linux-nat.h".
10421         (super_post_startup_inferior): Delete.
10422         (x86_linux_nat_target::~x86_linux_nat_target): New.
10423         (x86_linux_child_post_startup_inferior)
10424         (x86_linux_read_description, x86_linux_enable_btrace)
10425         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10426         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10427         methods of x86_linux_nat_target.
10428         (x86_linux_create_target): Delete.  Bits folded ...
10429         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10430         pointer.
10431         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10432         (x86_linux_nat_target): New class.
10433         (x86_linux_create_target): Delete.
10434         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10435         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10436         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10437         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10438         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10439         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10440         make extern.
10441         (x86_use_watchpoints): Delete.
10442         * x86-nat.h: Include "breakpoint.h" and "target.h".
10443         (x86_use_watchpoints): Delete.
10444         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10445         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10446         (x86_insert_watchpoint, x86_remove_watchpoint)
10447         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10448         (x86_stopped_by_hw_breakpoint): New declarations.
10449         (x86_nat_target): New template class.
10450
10451         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10452         (the_ppc_linux_nat_target): New.
10453         (ppc_linux_fetch_inferior_registers)
10454         (ppc_linux_can_use_hw_breakpoint)
10455         (ppc_linux_region_ok_for_hw_watchpoint)
10456         (ppc_linux_ranged_break_num_registers)
10457         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10458         (ppc_linux_insert_mask_watchpoint)
10459         (ppc_linux_remove_mask_watchpoint)
10460         (ppc_linux_can_accel_watchpoint_condition)
10461         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10462         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10463         (ppc_linux_watchpoint_addr_within_range)
10464         (ppc_linux_masked_watch_num_registers)
10465         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10466         (ppc_linux_read_description): Refactor as methods of
10467         ppc_linux_nat_target.
10468         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10469
10470         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10471         (procfs_target): New class.
10472         (the_procfs_target): New.
10473         (procfs_target): Delete function.
10474         (procfs_auxv_parse, procfs_attach, procfs_detach)
10475         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10476         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10477         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10478         (procfs_create_inferior, procfs_update_thread_list)
10479         (procfs_thread_alive, procfs_pid_to_str)
10480         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10481         (procfs_stopped_data_address, procfs_insert_watchpoint)
10482         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10483         (proc_find_memory_regions, procfs_info_proc)
10484         (procfs_make_note_section): Refactor as methods of procfs_target.
10485         (_initialize_procfs): Adjust.
10486         * sol-thread.c (sol_thread_target): New class.
10487         (sol_thread_ops): Now a sol_thread_target.
10488         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10489         (sol_thread_fetch_registers, sol_thread_store_registers)
10490         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10491         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10492         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10493         (init_sol_thread_ops): Delete.
10494         (_initialize_sol_thread): Adjust.  Remove references to
10495         init_sol_thread_ops and complete_target_initialization.
10496
10497         * windows-nat.c (windows_nat_target): New class.
10498         (windows_fetch_inferior_registers)
10499         (windows_store_inferior_registers, windows_resume, windows_wait)
10500         (windows_attach, windows_detach, windows_pid_to_exec_file)
10501         (windows_files_info, windows_create_inferior)
10502         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10503         (windows_close, windows_pid_to_str, windows_xfer_partial)
10504         (windows_get_tib_address, windows_get_ada_task_ptid)
10505         (windows_thread_name, windows_thread_alive): Refactor as
10506         windows_nat_target methods.
10507         (do_initial_windows_stuff): Adjust.
10508         (windows_target): Delete function.
10509         (_initialize_windows_nat): Adjust.
10510
10511         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10512         (darwin_mourn_inferior, darwin_kill_inferior)
10513         (darwin_create_inferior, darwin_attach, darwin_detach)
10514         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10515         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10516         (darwin_supports_multi_process): Refactor as darwin_nat_target
10517         methods.
10518         (darwin_resume_to, darwin_files_info): Delete.
10519         (_initialize_darwin_inferior): Rename to ...
10520         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10521         * darwin-nat.h: Include "inf-child.h".
10522         (darwin_nat_target): New class.
10523         (darwin_complete_target): Delete.
10524         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10525         (darwin_target): New.
10526         (i386_darwin_fetch_inferior_registers)
10527         (i386_darwin_store_inferior_registers): Refactor as methods of
10528         darwin_nat_target.
10529         (darwin_complete_target): Delete, with ...
10530         (_initialize_i386_darwin_nat): ... bits factored out here.
10531
10532         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10533         (the_alpha_linux_nat_target): New.
10534         (alpha_linux_register_u_offset): Refactor as
10535         alpha_linux_nat_target method.
10536         (_initialize_alpha_linux_nat): Adjust.
10537         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10538         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10539         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10540         methods of linux_nat_trad_target.
10541         (linux_trad_target): Delete.
10542         * linux-nat-trad.h (linux_trad_target): Delete function.
10543         (linux_nat_trad_target): New class.
10544         * mips-linux-nat.c (mips_linux_nat_target): New class.
10545         (super_fetch_registers, super_store_registers, super_close):
10546         Delete.
10547         (the_mips_linux_nat_target): New.
10548         (mips64_linux_regsets_fetch_registers)
10549         (mips64_linux_regsets_store_registers)
10550         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10551         (mips_linux_register_u_offset, mips_linux_read_description)
10552         (mips_linux_can_use_hw_breakpoint)
10553         (mips_linux_stopped_by_watchpoint)
10554         (mips_linux_stopped_data_address)
10555         (mips_linux_region_ok_for_hw_watchpoint)
10556         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10557         (mips_linux_close): Refactor as methods of mips_linux_nat.
10558         (_initialize_mips_linux_nat): Adjust to C++ification.
10559
10560         * aix-thread.c (aix_thread_target): New class.
10561         (aix_thread_ops): Now an aix_thread_target.
10562         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10563         (aix_thread_fetch_registers, aix_thread_store_registers)
10564         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10565         (aix_thread_thread_alive, aix_thread_pid_to_str)
10566         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10567         Refactor as methods of aix_thread_target.
10568         (init_aix_thread_ops): Delete.
10569         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10570         and complete_target_initialization.
10571         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10572         (rs6000_nat_target): New class.
10573         (the_rs6000_nat_target): New.
10574         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10575         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10576         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10577         (super_create_inferior): Delete.
10578         (_initialize_rs6000_nat): Adjust to C++ification.
10579
10580         * arm-linux-nat.c (arm_linux_nat_target): New class.
10581         (the_arm_linux_nat_target): New.
10582         (arm_linux_fetch_inferior_registers)
10583         (arm_linux_store_inferior_registers, arm_linux_read_description)
10584         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10585         (arm_linux_remove_hw_breakpoint)
10586         (arm_linux_region_ok_for_hw_watchpoint)
10587         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10588         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10589         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10590         arm_linux_nat_target.
10591         (_initialize_arm_linux_nat): Adjust to C++ification.
10592
10593         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10594         (the_aarch64_linux_nat_target): New.
10595         (aarch64_linux_fetch_inferior_registers)
10596         (aarch64_linux_store_inferior_registers)
10597         (aarch64_linux_child_post_startup_inferior)
10598         (aarch64_linux_read_description)
10599         (aarch64_linux_can_use_hw_breakpoint)
10600         (aarch64_linux_insert_hw_breakpoint)
10601         (aarch64_linux_remove_hw_breakpoint)
10602         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10603         (aarch64_linux_region_ok_for_hw_watchpoint)
10604         (aarch64_linux_stopped_data_address)
10605         (aarch64_linux_stopped_by_watchpoint)
10606         (aarch64_linux_watchpoint_addr_within_range)
10607         (aarch64_linux_can_do_single_step): Refactor as methods of
10608         aarch64_linux_nat_target.
10609         (super_post_startup_inferior): Delete.
10610         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10611
10612         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10613         (the_hppa_linux_nat_target): New.
10614         (hppa_linux_fetch_inferior_registers)
10615         (hppa_linux_store_inferior_registers): Refactor as methods of
10616         hppa_linux_nat_target.
10617         (_initialize_hppa_linux_nat): Adjust to C++ification.
10618
10619         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10620         (the_ia64_linux_nat_target): New.
10621         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10622         (ia64_linux_stopped_data_address)
10623         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10624         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10625         ia64_linux_nat_target methods.
10626         (super_xfer_partial): Delete.
10627         (_initialize_ia64_linux_nat): Adjust to C++ification.
10628
10629         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10630         (the_m32r_linux_nat_target): New.
10631         (m32r_linux_fetch_inferior_registers)
10632         (m32r_linux_store_inferior_registers): Refactor as
10633         m32r_linux_nat_target methods.
10634         (_initialize_m32r_linux_nat): Adjust to C++ification.
10635
10636         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10637         (the_m68k_linux_nat_target): New.
10638         (m68k_linux_fetch_inferior_registers)
10639         (m68k_linux_store_inferior_registers): Refactor as
10640         m68k_linux_nat_target methods.
10641         (_initialize_m68k_linux_nat): Adjust to C++ification.
10642
10643         * s390-linux-nat.c (s390_linux_nat_target): New class.
10644         (the_s390_linux_nat_target): New.
10645         (s390_linux_fetch_inferior_registers)
10646         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10647         (s390_insert_watchpoint, s390_remove_watchpoint)
10648         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10649         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10650         (s390_auxv_parse, s390_read_description): Refactor as methods of
10651         s390_linux_nat_target.
10652         (_initialize_s390_nat): Adjust to C++ification.
10653
10654         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10655         (the_sparc_linux_nat_target): New.
10656         (_initialize_sparc_linux_nat): Adjust to C++ification.
10657         * sparc-nat.c (sparc_fetch_inferior_registers)
10658         (sparc_store_inferior_registers): Remove target_ops parameter.
10659         * sparc-nat.h (sparc_fetch_inferior_registers)
10660         (sparc_store_inferior_registers): Remove target_ops parameter.
10661         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10662         (the_sparc64_linux_nat_target): New.
10663         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10664
10665         * spu-linux-nat.c (spu_linux_nat_target): New class.
10666         (the_spu_linux_nat_target): New.
10667         (spu_child_post_startup_inferior, spu_child_post_attach)
10668         (spu_child_wait, spu_fetch_inferior_registers)
10669         (spu_store_inferior_registers, spu_xfer_partial)
10670         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10671         methods.
10672         (_initialize_spu_nat): Adjust to C++ification.
10673
10674         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10675         (the_tilegx_linux_nat_target): New.
10676         (fetch_inferior_registers, store_inferior_registers):
10677         Refactor as methods.
10678         (_initialize_tile_linux_nat): Adjust to C++ification.
10679
10680         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10681         (the_xtensa_linux_nat_target): New.
10682         (xtensa_linux_fetch_inferior_registers)
10683         (xtensa_linux_store_inferior_registers): Refactor as
10684         xtensa_linux_nat_target methods.
10685         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10686
10687         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10688         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10689         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10690         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10691         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10692         (fbsd_stopped_by_sw_breakpoint)
10693         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10694         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10695         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10696         (fbsd_post_startup_inferior, fbsd_post_attach)
10697         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10698         (fbsd_set_syscall_catchpoint)
10699         (super_xfer_partial, super_resume, super_wait)
10700         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10701         (fbsd_handle_debug_trap): Remove target_ops parameter.
10702         (fbsd_nat_add_target): Delete.
10703         * fbsd-nat.h: Include "inf-ptrace.h".
10704         (fbsd_nat_add_target): Delete.
10705         (USE_SIGTRAP_SIGINFO): Define.
10706         (fbsd_nat_target): New class.
10707
10708         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10709         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10710         (amd64bsd_target): Delete.
10711         * amd64-bsd-nat.h: New file.
10712         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10713         "x86-bsd-nat.h".
10714         (amd64_fbsd_nat_target): New class.
10715         (the_amd64_fbsd_nat_target): New.
10716         (amd64fbsd_read_description): Refactor as method of
10717         amd64_fbsd_nat_target.
10718         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10719         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10720         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10721         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10722         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10723         (i386bsd_target): Delete.
10724         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10725         (i386bsd_fetch_inferior_registers)
10726         (i386bsd_store_inferior_registers): Declare.
10727         (i386_bsd_nat_target): New class.
10728         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10729         (the_i386_fbsd_nat_target): New.
10730         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10731         i386_fbsd_nat_target methods.
10732         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10733         (_initialize_i386fbsd_nat): Adjust to C++ification.
10734         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10735         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10736         (_initialize_x86_bsd_nat): Adjust to C++ification.
10737         * x86-bsd-nat.h: Include "x86-nat.h".
10738         (x86bsd_target): Delete declaration.
10739         (x86bsd_nat_target): New class.
10740
10741         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10742         (the_aarch64_fbsd_nat_target): New.
10743         (aarch64_fbsd_fetch_inferior_registers)
10744         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10745         aarch64_fbsd_nat_target.
10746         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10747         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10748         (the_alpha_bsd_nat_target): New.
10749         (alphabsd_fetch_inferior_registers)
10750         (alphabsd_store_inferior_registers): Refactor as
10751         alpha_bsd_nat_target methods.
10752         (_initialize_alphabsd_nat): Refactor as methods of
10753         alpha_bsd_nat_target.
10754         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10755         (the_amd64_nbsd_nat_target): New.
10756         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10757         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10758         (the_amd64_obsd_nat_target): New.
10759         (_initialize_amd64obsd_nat): Adjust to C++ification.
10760         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10761         (the_arm_fbsd_nat_target): New.
10762         (arm_fbsd_fetch_inferior_registers)
10763         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10764         (_initialize_arm_fbsd_nat): Refactor as methods of
10765         arm_fbsd_nat_target.
10766         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10767         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10768         (the_arm_netbsd_nat_target): New.
10769         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10770         arm_netbsd_nat_target.
10771         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10772         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10773         (the_hppa_nbsd_nat_target): New.
10774         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10775         hppa_nbsd_nat_target methods.
10776         (_initialize_hppanbsd_nat): Adjust to C++ification.
10777         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10778         (the_hppa_obsd_nat_target): New.
10779         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10780         methods of hppa_obsd_nat_target.
10781         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10782         add_target.
10783         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10784         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10785         add_target.
10786         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10787         (_initialize_i386obsd_nat): Use add_target.
10788         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10789         (the_m68k_bsd_nat_target): New.
10790         (m68kbsd_fetch_inferior_registers)
10791         (m68kbsd_store_inferior_registers): Refactor as methods of
10792         m68k_bsd_nat_target.
10793         (_initialize_m68kbsd_nat): Adjust to C++ification.
10794         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10795         (the_mips_fbsd_nat_target): New.
10796         (mips_fbsd_fetch_inferior_registers)
10797         (mips_fbsd_store_inferior_registers): Refactor as methods of
10798         mips_fbsd_nat_target.
10799         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10800         add_target.
10801         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10802         (the_mips_nbsd_nat_target): New.
10803         (mipsnbsd_fetch_inferior_registers)
10804         (mipsnbsd_store_inferior_registers): Refactor as methods of
10805         mips_nbsd_nat_target.
10806         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10807         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10808         (the_mips64_obsd_nat_target): New.
10809         (mips64obsd_fetch_inferior_registers)
10810         (mips64obsd_store_inferior_registers): Refactor as methods of
10811         mips64_obsd_nat_target.
10812         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10813         add_target.
10814         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10815         nbsd_nat_target.
10816         * nbsd-nat.h: Include "inf-ptrace.h".
10817         (nbsd_nat_target): New class.
10818         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10819         (obsd_wait): Refactor as methods of obsd_nat_target.
10820         (obsd_add_target): Delete.
10821         * obsd-nat.h: Include "inf-ptrace.h".
10822         (obsd_nat_target): New class.
10823         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10824         (the_ppc_fbsd_nat_target): New.
10825         (ppcfbsd_fetch_inferior_registers)
10826         (ppcfbsd_store_inferior_registers): Refactor as methods of
10827         ppc_fbsd_nat_target.
10828         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10829         add_target.
10830         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10831         (the_ppc_nbsd_nat_target): New.
10832         (ppcnbsd_fetch_inferior_registers)
10833         (ppcnbsd_store_inferior_registers): Refactor as methods of
10834         ppc_nbsd_nat_target.
10835         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10836         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10837         (the_ppc_obsd_nat_target): New.
10838         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10839         methods of ppc_obsd_nat_target.
10840         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10841         add_target.
10842         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10843         (the_sh_nbsd_nat_target): New.
10844         (shnbsd_fetch_inferior_registers)
10845         (shnbsd_store_inferior_registers): Refactor as methods of
10846         sh_nbsd_nat_target.
10847         (_initialize_shnbsd_nat): Adjust to C++ification.
10848         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10849         (inf_ptrace_xfer_partial): Delete.
10850         (sparc_xfer_partial, sparc_target): Delete.
10851         * sparc-nat.h (sparc_fetch_inferior_registers)
10852         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10853         (sparc_target): Delete function declaration.
10854         (sparc_target): New template class.
10855         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10856         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10857         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10858         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10859         add_target.
10860         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10861         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10862         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10863         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10864         add_target.
10865         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10866         (the_vax_bsd_nat_target): New.
10867         (vaxbsd_fetch_inferior_registers)
10868         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10869         methods.
10870         (_initialize_vaxbsd_nat): Adjust to C++ification.
10871
10872         * bsd-kvm.c (bsd_kvm_target): New class.
10873         (bsd_kvm_ops): Now a bsd_kvm_target.
10874         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10875         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10876         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10877         bsd_kvm_target.
10878         (bsd_kvm_return_one): Delete.
10879         (bsd_kvm_add_target): Adjust to C++ification.
10880
10881         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10882         (nto_procfs_target_procfs): New classes.
10883         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10884         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10885         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10886         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10887         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10888         (procfs_remove_hw_breakpoint, procfs_resume)
10889         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10890         (procfs_kill_inferior, procfs_store_registers)
10891         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10892         as methods of nto_procfs_target.
10893         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10894         (nto_native_ops): Delete.
10895         (procfs_open, procfs_native_open): Delete.
10896         (nto_native_ops): Now an nto_procfs_target_native.
10897         (init_procfs_targets): Adjust to C++ification.
10898         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10899         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10900         Refactor as methods of nto_procfs_target.
10901
10902         * go32-nat.c (go32_nat_target): New class.
10903         (the_go32_nat_target): New.
10904         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10905         (go32_store_registers, go32_xfer_partial, go32_files_info)
10906         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10907         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10908         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10909         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10910         (go32_target): Delete.
10911         (_initialize_go32_nat): Adjust to C++ification.
10912
10913         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10914         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10915         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10916         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10917         gnu_nat_target.
10918         (gnu_target): Delete.
10919         * gnu-nat.h (gnu_target): Delete.
10920         (gnu_nat_target): New class.
10921         * i386-gnu-nat.c (gnu_base_target): New.
10922         (i386_gnu_nat_target): New class.
10923         (the_i386_gnu_nat_target): New.
10924         (_initialize_i386gnu_nat): Adjust to C++ification.
10925
10926 2018-05-02  Pedro Alves  <palves@redhat.com>
10927
10928         * bfd-target.c (target_bfd_xclose): Rename to ...
10929         (target_bfd_close): ... this.
10930         (target_bfd_reopen): Adjust.
10931         * target.c (target_close): Remove references to to_xclose.
10932         * target.h (target_ops::to_xclose): Delete.
10933         (target_ops::to_close): Update comments.
10934
10935 2018-05-02  Pedro Alves  <palves@redhat.com>
10936
10937         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10938         "linux-nat.h".
10939         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10940         * inf-ptrace.c (inf_ptrace_register_u_offset)
10941         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10942         (inf_ptrace_store_register, inf_ptrace_store_registers)
10943         (inf_ptrace_trad_target): Move to ...
10944         * linux-nat-trad.c: ... this new file.
10945         * linux-nat-trad.h: New file.
10946         * linux-nat.c (linux_target_install_ops): Make extern.
10947         (linux_trad_target): Delete.
10948         * linux-nat.h (linux_trad_target): Delete declaration.
10949         (linux_target_install_ops): Declare.
10950         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10951         "linux-nat.h".
10952
10953 2018-05-02  Pedro Alves  <palves@redhat.com>
10954
10955         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10956         procfs_target/add_target here.
10957         * procfs.c (procfs_target): Make static.
10958         (_initialize_procfs): Call add_target here.
10959         * procfs.h (struct target_ops): Remove forward declaration.
10960         (procfs_target): Remove declaration.
10961         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10962
10963 2018-05-02  Pedro Alves  <palves@redhat.com>
10964
10965         * procfs.c (procfs_stopped_by_watchpoint)
10966         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10967         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10968         Forward declare.
10969         (procfs_use_watchpoints): Delete, move contents...
10970         (procfs_target): ... here.
10971         * procfs.h (procfs_use_watchpoints): Delete declaration.
10972         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10973         procfs_use_watchpoints.
10974         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10975         procfs_use_watchpoints.
10976
10977 2018-05-02  Tom Tromey  <tom@tromey.com>
10978
10979         PR python/20084:
10980         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10981         and var_zuinteger_unlimited.
10982         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10983         and PARAM_ZUINTEGER_UNLIMITED.
10984         (set_parameter_value): Handle var_zuinteger and
10985         var_zuinteger_unlimited.
10986         (add_setshow_generic): Likewise.
10987         (parmpy_init): Likewise.
10988
10989 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10990
10991         PR rust/23124
10992         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10993         pointer is not null before dereferencing it.
10994
10995 2018-04-30  Tom Tromey  <tom@tromey.com>
10996
10997         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10998         is_mi_like_p.
10999
11000 2018-04-30  Tom Tromey  <tom@tromey.com>
11001
11002         * breakpoint.c (mention): Remove use of is_mi_like_p.
11003         (print_mention_ranged_breakpoint): Likewise.
11004         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11005         of is_mi_like_p.
11006
11007 2018-04-30  Tom Tromey  <tom@tromey.com>
11008
11009         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11010
11011 2018-04-30  Tom Tromey  <tom@tromey.com>
11012
11013         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11014         (info_spu_event_command): Remove some uses of is_mi_like_p.
11015
11016 2018-04-30  Tom Tromey  <tom@tromey.com>
11017
11018         * python/py-framefilter.c (py_print_single_arg)
11019         (enumerate_locals, py_print_args, py_print_frame): Remove some
11020         uses of is_mi_like_p.
11021
11022 2018-04-30  Tom Tromey  <tom@tromey.com>
11023
11024         * ui-out.c: Update.
11025         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11026         * ui-out.h (ui_out::is_mi_like_p): Now const.
11027         (ui_out::do_is_mi_like_p): Now const.
11028         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11029
11030 2018-04-30  Tom Tromey  <tom@tromey.com>
11031
11032         * varobj.c (varobj_set_visualizer): Use new_reference.
11033         * python/python.c (gdbpy_decode_line): Use new_reference.
11034         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11035         new_reference.
11036
11037 2018-04-30  Tom Tromey  <tom@tromey.com>
11038
11039         * varobj.c (install_new_value): Use new_reference.
11040         * value.h (value_incref): Return void.  Swap intro comment with
11041         value_decref.
11042         * value.c (set_value_parent): Use new_reference.
11043         (value_incref): Return void.  Update intro comment.
11044         (release_value): Use new_reference.
11045         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11046
11047 2018-04-30  Tom Tromey  <tom@tromey.com>
11048
11049         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11050         * gdb_bfd.h (new_bfd_ref): Remove.
11051         (gdb_bfd_open): Update comment.
11052         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11053         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11054         (gdb_bfd_fdopenr): Use new_reference.
11055         * exec.c (exec_file_attach): Use new_reference.
11056
11057 2018-04-30  Tom Tromey  <tom@tromey.com>
11058
11059         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11060         method.
11061
11062 2018-04-30  Tom Tromey  <tom@tromey.com>
11063
11064         * jit.c (jit_read_code_entry): Use type_align.
11065         * i386-tdep.c (i386_gdbarch_init): Don't call
11066         set_gdbarch_long_long_align_bit.
11067         * gdbarch.sh: Remove long_long_align_bit.
11068         * gdbarch.c, gdbarch.h: Rebuild.
11069         * arc-tdep.c (arc_type_align): New function.
11070         (arc_gdbarch_init): Use arc_type_align.  Don't call
11071         set_gdbarch_long_long_align_bit.
11072
11073 2018-04-30  Tom Tromey  <tom@tromey.com>
11074
11075         * rust-lang.c (rust_type_alignment): Remove.
11076         (rust_composite_type): Use type_align.
11077
11078 2018-04-30  Tom Tromey  <tom@tromey.com>
11079
11080         * NEWS: Mention Type.align.
11081         * python/py-type.c (typy_get_alignof): New function.
11082         (type_object_getset): Add "alignof".
11083
11084 2018-04-30  Tom Tromey  <tom@tromey.com>
11085
11086         PR exp/17095:
11087         * NEWS: Update.
11088         * std-operator.def (UNOP_ALIGNOF): New operator.
11089         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11090         New.
11091         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11092         * c-lang.c (c_op_print_tab): Add alignof.
11093         * c-exp.y (ALIGNOF): New token.
11094         (exp): Add "ALIGNOF" production.
11095         (ident_tokens): Add _Alignof and alignof.
11096
11097 2018-04-30  Tom Tromey  <tom@tromey.com>
11098
11099         * i386-tdep.c (i386_type_align): New function.
11100         (i386_gdbarch_init): Update.
11101         * gdbarch.sh (type_align): New method.
11102         * gdbarch.c, gdbarch.h: Rebuild.
11103         * arch-utils.h (default_type_align): Declare.
11104         * arch-utils.c (default_type_align): New function.
11105         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11106         (struct type) <align_log2>: New field.
11107         <instance_flags>: Now a bitfield.
11108         (TYPE_RAW_ALIGN): New macro.
11109         (type_align, type_raw_align, set_type_align): Declare.
11110         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11111         functions.
11112         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11113         (get_alignment, maybe_set_alignment): New functions.
11114         (read_structure_type, read_enumeration_type, read_array_type)
11115         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11116         (read_subrange_type, read_base_type): Set type alignment.
11117
11118 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11119
11120         * dwarf2read.c (read_index_from_section): Use bool.
11121
11122 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11123
11124         PR gdb/22950
11125         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11126         with #ifdef.
11127
11128 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11129
11130         PR build/22873
11131         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11132         last step, and do it atomically.
11133
11134 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11135
11136         * compile/compile-c-types.c (convert_int, convert_float):
11137         Update for C FE v1.
11138
11139 2018-04-27  Tom Tromey  <tom@tromey.com>
11140
11141         PR rust/22545:
11142         * rust-lang.c (rust_inclusive_range_type_p): New function.
11143         (rust_range): Handle inclusive ranges.
11144         (rust_compute_range): Likewise.
11145         * rust-exp.y (struct rust_op) <inclusive>: New field.
11146         (DOTDOTEQ): New constant.
11147         (range_expr): Add "..=" productions.
11148         (operator_tokens): Add "..=" token.
11149         (ast_range): Add "inclusive" parameter.
11150         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11151         ranges.
11152         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11153         bounds values.
11154         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11155         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11156         Update comments.
11157         * expprint.c (print_subexp_standard): Handle new bounds values.
11158         (dump_subexp_body_standard): Likewise.
11159
11160 2018-04-27  Tom Tromey  <tom@tromey.com>
11161
11162         * configure: Rebuild.
11163         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11164         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11165         "OVERRIDE".
11166         (class symbol_needs_eval_context): Likewise.
11167         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11168         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11169         "virtual".
11170         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11171         "override".
11172         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11173         * aarch64-tdep.c (instruction_reader::read): Use "override".
11174         (instruction_reader_test::read): Likewise.
11175         * arm-tdep.c (instruction_reader::read): Use "override".
11176         (instruction_reader_thumb::read): Likewise.
11177
11178 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11179
11180         PR remote/9665
11181         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11182         instead of remote_send.
11183         (remote_send): Remove.
11184
11185 2018-04-26  Pedro Alves  <palves@redhat.com>
11186
11187         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11188         find_function_start_sal instead of find_pc_line.
11189
11190 2018-04-26  Pedro Alves  <palves@redhat.com>
11191
11192         * breakpoint.c (set_breakpoint_location_function): Handle
11193         mst_data_gnu_ifunc.
11194         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11195         * elfread.c (elf_symtab_read): Give data symbols with
11196         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11197         (elf_rel_plt_read): Update comment.
11198         * linespec.c (convert_linespec_to_sals): Handle
11199         mst_data_gnu_ifunc.
11200         (minsym_found): Handle mst_data_gnu_ifunc.
11201         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11202         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11203         * parse.c (find_minsym_type_and_address): Handle
11204         mst_data_gnu_ifunc.
11205         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11206         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11207         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11208         comment.
11209         <mst_data_gnu_ifunc>: New enumerator.
11210
11211 2018-04-26  Pedro Alves  <palves@redhat.com>
11212
11213         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11214         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11215         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11216         Handle it.
11217         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11218         (lookup_minimal_symbol_by_pc): Adjust.
11219         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11220         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11221         * minsyms.h (lookup_msym_prefer): New enum.
11222         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11223         parameter by a lookup_msym_prefer parameter.
11224
11225 2018-04-26  Pedro Alves  <palves@redhat.com>
11226
11227         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11228         ends in "@plt" instead of looking at the symbol's section.
11229
11230 2018-04-26  Pedro Alves  <palves@redhat.com>
11231
11232         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11233         all references.
11234         (find_pc_partial_function_gnu_ifunc): Rename to ...
11235         (find_pc_partial_function): ... this, and remove references to
11236         'is_gnu_ifunc_p'.
11237         (find_pc_partial_function): Delete old implementation.
11238         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11239
11240 2018-04-26  Pedro Alves  <palves@redhat.com>
11241
11242         * linespec.c (struct bound_minimal_symbol_search_key): New.
11243         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11244         skip first line if we found a GNU ifunc minimal symbol by name.
11245         (compare_msymbols): Change parameters to work with a destructured
11246         lhs minsym.
11247         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11248         functions.
11249
11250 2018-04-26  Pedro Alves  <palves@redhat.com>
11251
11252         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11253         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11254         address/name.
11255         (add_location_to_breakpoint): Store the minsym and the objfile in
11256         the breakpoint location.
11257         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11258         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11259         Record the minsym in the sal.
11260         * symtab.h (symtab_and_line) <msymbol>: New field.
11261
11262 2018-04-26  Pedro Alves  <palves@redhat.com>
11263
11264         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11265         unless we actually resolved the ifunc.
11266
11267 2018-04-26  Pedro Alves  <palves@redhat.com>
11268
11269         * c-exp.y (variable production): Prefer ifunc minsyms over
11270         regular function symbols.
11271         * symtab.c (find_gnu_ifunc): New function.
11272         * minsyms.h (lookup_msym_prefer): New enum.
11273         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11274         parameter by a lookup_msym_prefer parameter.
11275         * symtab.h (find_gnu_ifunc): New declaration.
11276
11277 2018-04-26  Pedro Alves  <palves@redhat.com>
11278
11279         * blockframe.c (find_gnu_ifunc_target_type): New function.
11280         (find_function_type): New.
11281         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11282         return a value with a memory address.
11283         (eval_call): For calls to GNU ifunc functions, try to find the
11284         type of the target function from the type that the resolver
11285         returns.
11286         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11287         symbols.
11288         * infcall.c (find_function_return_type): Delete.
11289         (find_function_addr): Add 'function_type' parameter.  For calls to
11290         GNU ifunc functions, try to find the type of the target function
11291         from the type that the resolver returns, and return it via
11292         FUNCTION_TYPE.
11293         (call_function_by_hand_dummy): Adjust to use the function type
11294         returned by find_function_addr.
11295         (find_function_addr): Add 'function_type' parameter and move
11296         description here.
11297         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11298         declarations.
11299
11300 2018-04-26  Pedro Alves  <palves@redhat.com>
11301
11302         * c-exp.y (variable production): Skip finding an alias for ifunc
11303         symbols.
11304
11305 2018-04-26  Pedro Alves  <palves@redhat.com>
11306
11307         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11308
11309 2018-04-25  Pedro Alves  <palves@redhat.com>
11310
11311         * infcmd.c (kill_command): Print the pid as string, not the whole
11312         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11313         message.
11314         * remote.c (remote_detach_1): Print the pid as string, not the
11315         whole thread's ptid.
11316
11317 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11318             Sergio Durigan Junior  <sergiodj@redhat.com>
11319             Pedro Alves  <palves@redhat.com>
11320
11321         * infcmd.c (kill_command): Print message when inferior has
11322         been killed.
11323         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11324         '1'.
11325         (add_inferior): Improve message printed when
11326         'print_inferior_events' is on.
11327         (exit_inferior): Remove message printed when
11328         'print_inferior_events' is on.
11329         (detach_inferior): Improve message printed when
11330         'print_inferior_events' is on.
11331         (initialize_inferiors): Use 'add_inferior_silent' to set
11332         'current_inferior_'.
11333         * inferior.h (print_inferior_events): Declare here as
11334         'extern'.
11335         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11336         '[Detaching...]' messages when 'print_inferior_events' is on.
11337         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11338         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11339         'Detaching after fork from child...', replace it by '... from
11340         parent...'.
11341         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11342         prefix/suffix when printing 'Detaching...' messages.  Print
11343         them when 'print_inferior_events' is on.
11344         * remote.c (remote_detach_1): Print message when detaching
11345         from inferior and '!is_fork_parent'.
11346
11347 2018-04-24  Tom Tromey  <tom@tromey.com>
11348
11349         * cli-out.h: Reindent.
11350
11351 2018-04-24  Tom Tromey  <tom@tromey.com>
11352
11353         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11354         (cli_ui_out::do_field_string): Use fputs_filtered.
11355         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11356
11357 2018-04-23  Tom Tromey  <tom@tromey.com>
11358
11359         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11360         gdb::unique_xmalloc_ptr.
11361
11362 2018-04-23  Tom Tromey  <tom@tromey.com>
11363
11364         * configure: Rebuild.
11365
11366 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11367
11368         PR gdb/23095
11369         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11370         prepare_for_testing.  Set normal_bp to r_debug_state if target
11371         is bsd.
11372
11373 2018-04-21  Pedro Alves  <palves@redhat.com>
11374             Rajendra SY  <rajendra.sy@gmail.com>
11375
11376         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11377         * remote.c (extended_remote_attach): In all-stop mode, mark the
11378         thread as executing.
11379
11380 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11381
11382         * thread.c (thread_apply_all_command): Fix comment.
11383         (thread_command): Fix comment.
11384
11385 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11386
11387         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11388         parameter.
11389         * features/aarch64-core.c (create_feature_aarch64_core):
11390         Regenerate.
11391         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11392         Likewise.
11393         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11394         Likewise.
11395         * features/i386/32bit-avx512.c
11396         (create_feature_i386_32bit_avx512): Likewise.
11397         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11398         Likewise.
11399         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11400         Likewise.
11401         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11402         Likewise.
11403         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11404         Likewise.
11405         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11406         Likewise.
11407         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11408         Likewise.
11409         * features/i386/64bit-avx512.c
11410         (create_feature_i386_64bit_avx512): Likewise.
11411         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11412         Likewise.
11413         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11414         Likewise.
11415         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11416         Likewise.
11417         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11418         Likewise.
11419         * features/i386/64bit-segments.c
11420         (create_feature_i386_64bit_segments): Likewise.
11421         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11422         Likewise.
11423         * features/i386/x32-core.c
11424         (create_feature_i386_x32_core): Likewise.
11425         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11426         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11427         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11428         * target-descriptions.c: In generated code, don't pass xml
11429         filename.
11430
11431 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11432
11433         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11434         (print_xml_feature::visit_post): Likewise.
11435         (print_xml_feature::visit): Likewise.
11436         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11437         (print_xml_feature): Add new class.
11438         * regformats/regdat.sh: Null xmltarget on feature targets.
11439         * target-descriptions.c (struct target_desc): Add xmltarget.
11440         (maintenance_check_tdesc_xml_convert): Add unittest function.
11441         (tdesc_get_features_xml): Add function to get xml.
11442         (maintenance_check_xml_descriptions): Test xml generation.
11443         * xml-tdesc.c (string_read_description_xml): Add function.
11444         * xml-tdesc.h (string_read_description_xml): Add declaration.
11445
11446 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11447
11448         * features/Makefile: Add feature marker to targets with new style
11449         target descriptions.
11450         * regformats/aarch64.dat: Regenerate.
11451         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11452         * regformats/i386/amd64-avx-linux.dat: Likewise.
11453         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11454         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11455         * regformats/i386/amd64-linux.dat: Likewise.
11456         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11457         * regformats/i386/amd64.dat: Likewise.
11458         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11459         * regformats/i386/i386-avx-linux.dat: Likewise.
11460         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11461         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11462         * regformats/i386/i386-linux.dat: Likewise.
11463         * regformats/i386/i386-mmx-linux.dat: Likewise.
11464         * regformats/i386/i386-mpx-linux.dat: Likewise.
11465         * regformats/i386/i386.dat: Likewise.
11466         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11467         * regformats/i386/x32-avx-linux.dat: Likewise.
11468         * regformats/i386/x32-linux.dat: Likewise.
11469         * regformats/tic6x-c62x-linux.dat: Likewise.
11470         * regformats/tic6x-c64x-linux.dat: Likewise.
11471         * regformats/tic6x-c64xp-linux.dat: Likewise.
11472         * regformats/regdat.sh: Parse feature marker.
11473
11474 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11475
11476         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11477         (tdesc_osabi_name): Likewise.
11478         * target-descriptions.c (tdesc_architecture_name): Add new
11479         function.
11480         (tdesc_osabi_name): Likewise.
11481
11482 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11483
11484         * common/tdesc.c (tdesc_predefined_type): Move to here.
11485         (tdesc_named_type): Likewise.
11486         (tdesc_create_vector): Likewise.
11487         (tdesc_create_struct): Likewise.
11488         (tdesc_set_struct_size): Likewise.
11489         (tdesc_create_union): Likewise.
11490         (tdesc_create_flags): Likewise.
11491         (tdesc_create_enum): Likewise.
11492         (tdesc_add_field): Likewise.
11493         (tdesc_add_typed_bitfield): Likewise.
11494         (tdesc_add_bitfield): Likewise.
11495         (tdesc_add_flag): Likewise.
11496         (tdesc_add_enum_value): Likewise.
11497         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11498         (struct tdesc_type_vector): Likewise.
11499         (struct tdesc_type_field): Likewise.
11500         (struct tdesc_type_with_fields): Likewise.
11501         (tdesc_create_enum): Add declaration.
11502         (tdesc_add_typed_bitfield): Likewise.
11503         (tdesc_add_enum_value): Likewise.
11504         * target-descriptions.c (tdesc_type_field): Move from here.
11505         (tdesc_type_builtin): Likewise.
11506         (tdesc_type_vector): Likewise.
11507         (tdesc_type_with_fields): Likewise.
11508         (tdesc_predefined_types): Likewise.
11509         (tdesc_named_type): Likewise.
11510         (tdesc_create_vector): Likewise.
11511         (tdesc_create_struct): Likewise.
11512         (tdesc_set_struct_size): Likewise.
11513         (tdesc_create_union): Likewise.
11514         (tdesc_create_flags): Likewise.
11515         (tdesc_create_enum): Likewise.
11516         (tdesc_add_field): Likewise.
11517         (tdesc_add_typed_bitfield): Likewise.
11518         (tdesc_add_bitfield): Likewise.
11519         (tdesc_add_flag): Likewise.
11520         (tdesc_add_enum_value): Likewise.
11521         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11522         (tdesc_add_typed_bitfield): Likewise.
11523         (tdesc_add_enum_value): Likewise.
11524
11525 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11526
11527         * common/tdesc.c (tdesc_feature::accept): Move to here.
11528         (tdesc_feature::operator==): Likewise.
11529         (tdesc_create_reg): Likewise.
11530         * common/tdesc.h (tdesc_type_kind): Likewise.
11531         (struct tdesc_type): Likewise.
11532         (struct tdesc_feature): Likewise.
11533         * regformats/regdat.sh: Create a feature.
11534         * target-descriptions.c (tdesc_type_kind): Move from here.
11535         (tdesc_type): Likewise.
11536         (tdesc_type_up): Likewise.
11537         (tdesc_feature): Likewise.
11538         (tdesc_create_reg): Likewise.
11539
11540 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11541
11542         * Makefile.in: Add arch/tdesc.c
11543         * common/tdesc.c: New file.
11544         * common/tdesc.h (tdesc_element_visitor): Move to here.
11545         (tdesc_element): Likewise.
11546         (tdesc_reg): Likewise.
11547         (tdesc_reg_up): Likewise.
11548         * regformats/regdef.h (reg): Add offset to constructors.
11549         * target-descriptions.c (tdesc_element_visitor): Move from here.
11550         (tdesc_element): Likewise.
11551         (tdesc_reg): Likewise.
11552         (tdesc_reg_up): Likewise.
11553
11554 2018-04-17  Tom Tromey  <tom@tromey.com>
11555
11556         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11557         discriminant field.
11558
11559 2018-04-17  Tom Tromey  <tom@tromey.com>
11560
11561         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11562
11563 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11564
11565         * symtab.c (print_symbol_info): Skip printing filename and line
11566         number when `last' is NULL.
11567         (symtab_symbol_info): Use empty string instead of NULL for first
11568         invocation of print_symbol_info.
11569         (rbreak_command): Pass NULL to `last' parameter of
11570         print_symbol_info.
11571
11572 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11573
11574         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11575         instead of nullptr.
11576
11577 2018-04-16  Pedro Alves  <palves@redhat.com>
11578
11579         * MAINTAINERS (sh): Remove.
11580         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11581         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11582         (ALLDEPFILES): Remove sh64-tdep.c.
11583         * NEWS: Mentions that support for SH-5/SH64 is removed.
11584         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11585         (sh*-*-openbsd*): Ditto.
11586         (sh64-*-elf*): Remove.
11587         (sh*): Remove.
11588         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11589         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11590         * sh-tdep.c: No longer include "sh64-tdep.h".
11591         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11592         * sh64-tdep.c, sh64-tdep.h: Remove files.
11593
11594 2018-04-16  Pedro Alves  <palves@redhat.com>
11595
11596         * MAINTAINERS: Remove m88k.
11597         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11598         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11599         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11600         * NEWS: Mention that support for m88k was removed.
11601         * configure.host (m88*-*-*): Remove support.
11602         * configure.nat (m88k-*-*): Remove support.
11603         * configure.tgt (m88*-*-openbsd*): Remove.
11604         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11605
11606 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11607
11608         * configure.tgt (x86_tobjs): New variable.
11609         (amd64_tobjs, i386_tobjs): Use it.
11610
11611 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11612
11613         * symtab.c (print_symbol_info): Precede the symbol definition by
11614         the line number when available.
11615         * NEWS: Advertise this enhancement.
11616
11617 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11618
11619         * NEWS (New options): announce set/show record btrace cpu.
11620         * btrace.c: Include record-btrace.h.
11621         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11622         the vendor is unknown.
11623         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11624         Maybe overwrite the btrace configuration's cpu.
11625         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11626         (btrace_fetch): Add cpu parameter.  Update callers.
11627         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11628         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11629         errata workarounds if the vendor is unknown.
11630         * python/py-record-btrace.c: Include record-btrace.h.
11631         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11632         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11633         * record-btrace.c (record_btrace_cpu_state_kind): New.
11634         (record_btrace_cpu): New.
11635         (set_record_btrace_cpu_cmdlist): New.
11636         (record_btrace_get_cpu): New.
11637         (require_btrace_thread, record_btrace_info)
11638         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11639         (cmd_set_record_btrace_cpu_none): New.
11640         (cmd_set_record_btrace_cpu_auto): New.
11641         (cmd_set_record_btrace_cpu): New.
11642         (cmd_show_record_btrace_cpu): New.
11643         (_initialize_record_btrace): Initialize set/show record btrace cpu
11644         commands.
11645         * record-btrace.h (record_btrace_get_cpu): New.
11646
11647 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11648
11649         * record.c (set_record_command): Fix typo in message.
11650
11651 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11652
11653         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11654
11655 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11656
11657         * infrun.c (process_event_stop_test): Call
11658         gdbarch_in_indirect_branch_thunk.
11659         * gdbarch.sh (in_indirect_branch_thunk): New.
11660         * gdbarch.c: Regenerated.
11661         * gdbarch.h: Regenerated.
11662         * x86-tdep.h: New.
11663         * x86-tdep.c: New.
11664         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11665         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11666         (ALLDEPFILES): Add x86-tdep.c.
11667         * arch-utils.h (default_in_indirect_branch_thunk): New.
11668         * arch-utils.c (default_in_indirect_branch_thunk): New.
11669         * i386-tdep: Include x86-tdep.h.
11670         (i386_in_indirect_branch_thunk): New.
11671         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11672         function.
11673         * amd64-tdep: Include x86-tdep.h.
11674         (amd64_in_indirect_branch_thunk): New.
11675         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11676
11677 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11678
11679         PR gdb/23053
11680         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11681         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11682         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11683         regression.
11684
11685 2018-04-12  Tom Tromey  <tom@tromey.com>
11686
11687         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11688         (rust_evaluate_subexp): Likewise.
11689
11690 2018-04-12  Pedro Alves  <palves@redhat.com>
11691
11692         * procfs.c (procfs_detach): Make forward declaration's prototype
11693         match definition's protototype.
11694         (proc_get_LDT_entry): Remove stale do_cleanups call.
11695
11696 2018-04-12  Pedro Alves  <palves@redhat.com>
11697
11698         * target.h (target_ops::to_has_exited): Delete.
11699         (target_has_exited): Delete.
11700         * target-delegates.c: Regenerate.
11701
11702 2018-04-11  Pedro Alves  <palves@redhat.com>
11703
11704         * target.c (fileio_fh_t::t): Add comment.
11705         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11706         (target_fileio_close): Handle a NULL target.
11707         (invalidate_fileio_fh): New.
11708         (target_close): Call it.
11709         * remote.c (remote_hostio_send_command): No longer check whether
11710         remote_desc is open.
11711
11712 2018-04-11  Pedro Alves  <palves@redhat.com>
11713
11714         * target.c (fileio_fh_t): Make it a named struct instead of a
11715         typedef.
11716         (fileio_fh_t::is_closed): New method.
11717         (DEF_VEC_O (fileio_fh_t)): Remove.
11718         (fileio_fhandles): Now a std::vector.
11719         (is_closed_fileio_fh): Delete.
11720         (acquire_fileio_fd): Adjust.  Rename parameters.
11721         (release_fileio_fd): Adjust.
11722         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11723         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11724         (target_fileio_close): Adjust.
11725
11726 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11727
11728         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11729         index.
11730
11731 2018-04-10  Pedro Alves  <palves@redhat.com>
11732
11733         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11734         (scoped_finish_thread_state): New class.
11735         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11736         cleanup.
11737         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11738         (fetch_inferior_event, normal_stop): Likewise.
11739         * thread.c (finish_thread_state_cleanup): Delete.
11740
11741 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11742             Pedro Alves  <palves@redhat.com>
11743
11744         * value.c: Include "selftest.h" and "common/array-view.h".
11745         (struct range) <operator ==>: New.
11746         (test_ranges_contain): New.
11747         (check_ranges_vector): New.
11748         (test_insert_into_bit_range_vector): New.
11749         (_initialize_values): Register selftests.
11750         * common/array-view.h (operator==, operator!=): New.
11751
11752 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11753
11754         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11755         an iterator.
11756         * inline-frame.c: Include <algorithm>.
11757         (struct inline_state): Add constructor.
11758         (inline_state_s): Remove.
11759         (DEF_VEC_O(inline_state_s)): Remove.
11760         (inline_states): Change type to std::vector.
11761         (find_inline_frame_state): Adjust to std::vector.
11762         (allocate_inline_frame_state): Remove.
11763         (clear_inline_frame_state): Adjust to std::vector.
11764         (skip_inline_frames): Adjust to std::vector.
11765
11766 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11767
11768         * tracepoint.h (struct trace_state_variable): Add constructor.
11769         <name>: Change type to std::string.
11770         * tracepoint.c (tsv_s): Remove.
11771         (DEF_VEC_O(tsv_s)): Remove.
11772         (tvariables): Change to std::vector.
11773         (create_trace_state_variable): Adjust to std::vector.
11774         (find_trace_state_variable): Likewise.
11775         (find_trace_state_variable_by_number): Likewise.
11776         (delete_trace_state_variable): Likewise.
11777         (trace_variable_command): Adjust to std::string.
11778         (delete_trace_variable_command): Likewise.
11779         (tvariables_info_1): Adjust to std::vector.
11780         (save_trace_state_variables): Likewise.
11781         (start_tracing): Likewise.
11782         (merge_uploaded_trace_state_variables): Adjust to std::vector
11783         and std::string.
11784         * target.h (struct target_ops)
11785         <to_download_trace_state_variable>: Pass reference to
11786         trace_state_variable.
11787         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11788         * target-delegates.c: Re-generate.
11789         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11790         (mi_tsv_deleted): Likewise.
11791         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11792         * remote.c (remote_download_trace_state_variable): Change
11793         pointer to reference and adjust.
11794         * make-target-delegates (parse_argtypes): Handle references.
11795         (write_function_header): Likewise.
11796         (munge_type): Likewise.
11797
11798 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11799
11800         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11801         string_view-selftests.c.
11802         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11803         testsuite.
11804         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11805         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11806         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11807         * unittests/basic_string_view/element_access/char/1.cc:
11808         Likewise.
11809         * unittests/basic_string_view/element_access/char/empty.cc:
11810         Likewise.
11811         * unittests/basic_string_view/element_access/char/front_back.cc:
11812         Likewise.
11813         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11814         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11815         Likewise.
11816         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11817         Likewise.
11818         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11819         Likewise.
11820         * unittests/basic_string_view/operations/compare/char/1.cc:
11821         Likewise.
11822         * unittests/basic_string_view/operations/compare/char/13650.cc:
11823         Likewise.
11824         * unittests/basic_string_view/operations/copy/char/1.cc:
11825         Likewise.
11826         * unittests/basic_string_view/operations/data/char/1.cc:
11827         Likewise.
11828         * unittests/basic_string_view/operations/find/char/1.cc:
11829         Likewise.
11830         * unittests/basic_string_view/operations/find/char/2.cc:
11831         Likewise.
11832         * unittests/basic_string_view/operations/find/char/3.cc:
11833         Likewise.
11834         * unittests/basic_string_view/operations/find/char/4.cc:
11835         Likewise.
11836         * unittests/basic_string_view/operations/rfind/char/1.cc:
11837         Likewise.
11838         * unittests/basic_string_view/operations/rfind/char/2.cc:
11839         Likewise.
11840         * unittests/basic_string_view/operations/rfind/char/3.cc:
11841         Likewise.
11842         * unittests/basic_string_view/operations/substr/char/1.cc:
11843         Likewise.
11844         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11845         * unittests/string_view-selftests.c: New file.
11846
11847 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11848
11849         * unittests/basic_string_view/capacity/1.cc: New file.
11850         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11851         * unittests/basic_string_view/cons/char/1.cc: New file.
11852         * unittests/basic_string_view/cons/char/2.cc: New file.
11853         * unittests/basic_string_view/cons/char/3.cc: New file.
11854         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11855         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11856         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11857         * unittests/basic_string_view/element_access/char/1.cc: New file.
11858         * unittests/basic_string_view/element_access/char/2.cc: New file.
11859         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11860         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11861         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11862         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11863         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11864         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11865         * unittests/basic_string_view/include.cc: New file.
11866         * unittests/basic_string_view/inserters/char/1.cc: New file.
11867         * unittests/basic_string_view/inserters/char/2.cc: New file.
11868         * unittests/basic_string_view/inserters/char/3.cc: New file.
11869         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11870         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11871         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11872         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11873         * unittests/basic_string_view/literals/types.cc: New file.
11874         * unittests/basic_string_view/literals/values.cc: New file.
11875         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11876         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11877         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11878         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11879         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11880         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11881         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11882         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11883         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11884         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11885         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11886         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11887         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11888         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11889         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11890         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11891         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11892         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11893         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11894         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11895         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11896         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11897         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11898         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11899         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11900         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11901         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11902         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11903         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11904         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11905         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11906         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11907         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11908         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11909         * unittests/basic_string_view/operators/char/2.cc: New file.
11910         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11911         * unittests/basic_string_view/range_access/char/1.cc: New file.
11912         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11913         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11914         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11915         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11916         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11917         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11918         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11919         * unittests/basic_string_view/typedefs.cc: New file.
11920         * unittests/basic_string_view/types/1.cc: New file.
11921
11922 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11923
11924         * common/gdb_string_view.h: Remove libstdc++ implementation
11925         details, adjust to gdb reality.
11926         * common/gdb_string_view.tcc: Likewise.
11927         * cli/cli-script.c (struct string_view): Remove.
11928         (user_args) <m_args>: Change element type to gdb::string_view.
11929         (user_args::insert_args): Adjust.
11930
11931 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11932
11933         * common/gdb_string_view.h: New file.
11934         * common/gdb_string_view.tcc: New file.
11935
11936 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11937
11938         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11939         * configure: Re-generate.
11940
11941 2018-04-09  Pedro Alves  <palves@redhat.com>
11942
11943         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11944         (set_target_gdbarch): Call
11945         gdb::observers::architecture_changed.notify instead of
11946         observer_notify_architecture_changed.
11947
11948 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11949
11950         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11951         (do_restore_current_traceframe_cleanup): Remove.
11952         (restore_current_traceframe_cleanup_dtor): Remove.
11953         (make_cleanup_restore_current_traceframe): Remove.
11954         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11955         New.
11956         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11957         * infrun.c (fetch_inferior_event): Use
11958         scoped_restore_current_traceframe.
11959
11960 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11961
11962         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11963         Remove.
11964         <n_allocated_type_units>: Remove.
11965         <all_type_units>: Change to std::vector.
11966         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11967         to std::vector change.
11968         (dwarf2_per_objfile::get_cutu): Likewise.
11969         (dwarf2_per_objfile::get_tu): Likewise.
11970         (create_signatured_type_table_from_index): Likewise.
11971         (create_signatured_type_table_from_debug_names): Likewise.
11972         (dw2_symtab_iter_next): Likewise.
11973         (dw2_print_stats): Likewise.
11974         (dw2_expand_all_symtabs): Likewise.
11975         (dw2_expand_marked_cus): Likewise.
11976         (dw2_debug_names_iterator::next): Likewise.
11977         (dwarf2_initialize_objfile): Likewise.
11978         (add_signatured_type_cu_to_table): Likewise.
11979         (create_all_type_units): Likewise.
11980         (add_type_unit): Likewise.
11981         (struct tu_abbrev_offset): Add constructor.
11982         (build_type_psymtabs_1): Adjust to std::vector change.
11983         (print_tu_stats): Likewise.
11984         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11985         (write_debug_names): Likewise.
11986
11987 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11988
11989         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11990         Make an std::vector.
11991         <n_comp_units>: Remove.
11992         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11993         to std::vector change.
11994         (dwarf2_per_objfile::get_cutu): Likewise.
11995         (dwarf2_per_objfile::get_cu): Likewise.
11996         (create_cus_from_index): Likewise.
11997         (create_addrmap_from_index): Likewise.
11998         (create_addrmap_from_aranges): Likewise.
11999         (dwarf2_read_index): Likewise.
12000         (dw2_find_last_source_symtab): Likewise.
12001         (dw2_map_symtabs_matching_filename): Likewise.
12002         (dw2_symtab_iter_next): Likewise.
12003         (dw2_print_stats): Likewise.
12004         (dw2_expand_all_symtabs): Likewise.
12005         (dw2_expand_symtabs_with_fullname): Likewise.
12006         (dw2_expand_marked_cus): Likewise.
12007         (dw2_map_symbol_filenames): Likewise.
12008         (create_cus_from_debug_names): Likewise.
12009         (dwarf2_read_debug_names): Likewise.
12010         (dw2_debug_names_iterator::next): Likewise.
12011         (dwarf2_initialize_objfile): Likewise.
12012         (set_partial_user): Likewise.
12013         (dwarf2_build_psymtabs_hard): Likewise.
12014         (read_comp_units_from_section): Remove arguments, adjust to
12015         std::vector change.
12016         (create_all_comp_units): Adjust to std::vector and
12017         read_comp_units_from_section changes.
12018         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12019         change.
12020         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12021         (psyms_seen_size): Likewise.
12022         (write_gdbindex): Likewise.
12023         (write_debug_names): Likewise.
12024
12025 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12026
12027         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12028         with dwarf2_per_objfile.
12029         (create_cus_from_index): Likewise.
12030         (create_signatured_type_table_from_index): Likewise.
12031         (dwarf2_read_index): Likewise.
12032         (dwarf2_initialize_objfile): Likewise.
12033         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12034         per_cu rather than get_dwarf2_per_objfile.
12035
12036 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12037
12038         * dwarf2read.h (struct signatured_type): Forward declare.
12039         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12040         New methods.
12041         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12042         (dw2_get_cutu): ...this.
12043         (dwarf2_per_objfile::get_cu): Rename from...
12044         (dw2_get_cu): ...this.
12045         (dwarf2_per_objfile::get_tu): New.
12046         (create_addrmap_from_index): Adjust.
12047         (create_addrmap_from_aranges): Adjust.
12048         (dw2_find_last_source_symtab): Adjust.
12049         (dw2_map_symtabs_matching_filename): Adjust.
12050         (dw2_symtab_iter_next): Adjust.
12051         (dw2_print_stats): Adjust.
12052         (dw2_expand_all_symtabs): Adjust.
12053         (dw2_expand_symtabs_with_fullname): Adjust.
12054         (dw2_expand_marked_cus): Adjust.
12055         (dw_expand_symtabs_matching_file_matcher): Adjust.
12056         (dw2_map_symbol_filenames): Adjust.
12057         (dw2_debug_names_iterator::next): Adjust.
12058         (dwarf2_initialize_objfile): Adjust.
12059         (set_partial_user): Adjust.
12060         (dwarf2_build_psymtabs_hard): Adjust.
12061
12062 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12063
12064         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12065         Remove unused variables.
12066         (dw2_map_symtabs_matching_filename): Likewise.
12067         (dwarf2_record_block_ranges): Likewise.
12068         (dwarf2_read_addr_index): Likewise.
12069         (follow_die_offset): Likewise.
12070
12071 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12072
12073         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12074         to symbol_file_add_main.
12075
12076 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12077
12078         PR mi/22299
12079         * mi/mi-console.c (do_fputc_async_safe): New.
12080         (mi_console_file::write_async_safe): New.
12081         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12082         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12083         New.
12084         * ui-file.c (ui_file::putstrn): Adjust call to
12085         fputstrn_unfiltered.
12086         * utils.c (printchar): Replace do_fputs and do_fprintf
12087         parameters by do_fputc.
12088         (fputstr_filtered): Adjust call to printchar.
12089         (fputstr_unfiltered): Likewise.
12090         (fputstrn_filtered): Likewise.
12091         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12092         printchar.
12093         * utils.h (do_fputc_ftype): New typedef.
12094         (fputstrn_unfiltered): Add do_fputc parameter.
12095
12096 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12097
12098         * regformats/i386/i386-avx.dat: Remove.
12099
12100 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12101
12102         PR gdb/22979
12103         * amd64-tdep.c (amd64_none_init_abi): New function.
12104         (amd64_x32_none_init_abi): New function.
12105         (_initialize_amd64_tdep): Register handlers for x86-64 and
12106         x64_32 with GDB_OSABI_NONE.
12107         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12108         GDB_OSABI_NONE osabi.
12109
12110 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12111
12112         PR gdb/22980
12113         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12114         GDB_OSABI_NONE.
12115         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12116         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12117
12118 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12119
12120         * common/byte-vector.h (char_vector): New type.
12121         * target.h (target_read_alloc): Return
12122         gdb::optional<byte_vector>.
12123         (target_read_stralloc): Return gdb::optional<char_vector>.
12124         (target_get_osdata): Return gdb::optional<char_vector>.
12125         * target.c (target_read_alloc_1): Templatize.  Replacement
12126         manual memory management with vector.
12127         (target_read_alloc): Change return type, adjust.
12128         (target_read_stralloc): Change return type, adjust.
12129         (target_get_osdata): Change return type, adjust.
12130         * auxv.c (struct auxv_info) <length>: Remove.
12131         <data>: Change type to gdb::optional<byte_vector>.
12132         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12133         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12134         (target_auxv_search): Adjust.
12135         (fprint_target_auxv): Adjust.
12136         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12137         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12138         (linux_make_corefile_notes): Adjust.
12139         * osdata.c (get_osdata): Adjust.
12140         * remote.c (remote_get_threads_with_qxfer): Adjust.
12141         (remote_memory_map): Adjust.
12142         (remote_traceframe_info): Adjust.
12143         (btrace_read_config): Adjust.
12144         (remote_read_btrace): Adjust.
12145         (remote_pid_to_exec_file): Adjust.
12146         * solib-aix.c (solib_aix_get_library_list): Adjust.
12147         * solib-dsbt.c (decode_loadmap): Don't free buf.
12148         (dsbt_get_initial_loadmaps): Adjust.
12149         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12150         * solib-target.c (solib_target_current_sos): Adjust.
12151         * tracepoint.c (sdata_make_value): Adjust.
12152         * xml-support.c (xinclude_start_include): Adjust.
12153         (xml_fetch_content_from_file): Adjust.
12154         * xml-support.h (xml_fetch_another): Change return type.
12155         (xml_fetch_content_from_file): Change return type.
12156         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12157         * xml-tdesc.c (file_read_description_xml): Adjust.
12158         (fetch_available_features_from_target): Change return type.
12159         (target_fetch_description_xml): Adjust.
12160         (target_read_description_xml): Adjust.
12161
12162 2018-04-06  Tom Tromey  <tom@tromey.com>
12163
12164         * value.c (~value): Update.
12165         (struct value) <contents>: Now unique_xmalloc_ptr.
12166         (value_contents_bits_eq, allocate_value_contents)
12167         (value_contents_raw, value_contents_all_raw)
12168         (value_contents_for_printing, value_contents_for_printing_const)
12169         (set_value_enclosing_type): Update.
12170
12171 2018-04-06  Tom Tromey  <tom@tromey.com>
12172
12173         * value.c (range_s): Remove typedef, VEC.
12174         (struct range): Add operator<.
12175         (range_lessthan): Remove.
12176         (ranges_contain): Change type.
12177         (~value): Update.
12178         (struct value) <unavailable, optimized_out>: Now std::vector.
12179         (value_entirely_available)
12180         (value_entirely_covered_by_range_vector)
12181         (value_entirely_unavailable, value_entirely_optimized_out):
12182         Update.
12183         (insert_into_bit_range_vector): Change argument type.
12184         (find_first_range_overlap): Likewise.
12185         (struct ranges_and_idx, value_contents_bits_eq)
12186         (require_not_optimized_out, require_available): Update.
12187         (ranges_copy_adjusted): Change argument types.
12188         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12189
12190 2018-04-06  Tom Tromey  <tom@tromey.com>
12191
12192         * value.c (~value): Update.
12193         (struct value) <parent>: Now a value_ref_ptr.
12194         (value_parent, set_value_parent, value_address, value_copy):
12195         Update.
12196
12197 2018-04-06  Tom Tromey  <tom@tromey.com>
12198
12199         * value.c (struct value): Add constructor, destructor, and member
12200         initializers.
12201         (allocate_value_lazy, value_decref): Update.
12202
12203 2018-04-06  Tom Tromey  <tom@tromey.com>
12204
12205         * value.c (struct value) <released, next>: Remove.
12206         (all_values): Now a std::vector.
12207         (allocate_value_lazy): Update.
12208         (value_next): Remove.
12209         (value_mark, value_free_to_mark, release_value)
12210         (value_release_to_mark): Update.
12211
12212 2018-04-06  Tom Tromey  <tom@tromey.com>
12213
12214         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12215         (free_value_chain): Remove.
12216         * value.c (free_value_chain): Remove.
12217         (value_release_to_mark): Return a std::vector.
12218         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12219         std::vector.
12220         (check_condition): Update.
12221         * eval.c (fetch_subexp_value): Change "val_chain" to a
12222         std::vector.
12223         * breakpoint.c (update_watchpoint): Update.
12224         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12225
12226 2018-04-06  Tom Tromey  <tom@tromey.com>
12227
12228         * value.h (free_all_values): Remove.
12229         * value.c (free_all_values): Remove.
12230
12231 2018-04-06  Tom Tromey  <tom@tromey.com>
12232
12233         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12234         (value_history_chain, value_history_count): Remove.
12235         (value_history): New global.
12236         (record_latest_value, access_value_history, show_values)
12237         (preserve_values): Update.
12238
12239 2018-04-06  Tom Tromey  <tom@tromey.com>
12240
12241         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12242         * varobj.c (varobj_set_display_format, varobj_set_value)
12243         (install_default_visualizer, construct_visualizer)
12244         (install_new_value, ~varobj, varobj_get_value_type)
12245         (my_value_of_variable, varobj_editable_p): Update.
12246         * c-varobj.c (c_describe_child, c_value_of_variable)
12247         (cplus_number_of_children, cplus_describe_child): Update.
12248         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12249         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12250         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12251
12252 2018-04-06  Tom Tromey  <tom@tromey.com>
12253
12254         * printcmd.c (last_examine_address): Change type to
12255         value_ref_ptr.
12256         (do_examine, x_command): Update.
12257
12258 2018-04-06  Tom Tromey  <tom@tromey.com>
12259
12260         * value.c (release_value): Update.
12261         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12262         (struct bpstats) <val>: Now a value_ref_ptr.
12263         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12264         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12265         (~watchpoint, print_it_watchpoint, watch_command_1)
12266         (invalidate_bp_value_on_memory_change): Update.
12267
12268 2018-04-06  Tom Tromey  <tom@tromey.com>
12269
12270         * varobj.c (varobj_clear_saved_item)
12271         (update_dynamic_varobj_children, install_new_value, ~varobj):
12272         Update.
12273         * value.h (value_incref): Move declaration earlier.
12274         (value_decref): Rename from value_free.
12275         (struct value_ref_policy): New.
12276         (value_ref_ptr): New typedef.
12277         (struct value_deleter): Remove.
12278         (gdb_value_up): Remove typedef.
12279         (release_value): Change return type.
12280         (release_value_or_incref): Remove.
12281         * value.c (set_value_parent): Update.
12282         (value_incref): Change return type.
12283         (value_decref): Rename from value_free.
12284         (value_free_to_mark, free_all_values, free_value_chain): Update.
12285         (release_value): Return value_ref_ptr.
12286         (release_value_or_incref): Remove.
12287         (record_latest_value, set_internalvar, clear_internalvar):
12288         Update.
12289         * stack.c (info_frame_command): Don't call value_free.
12290         * python/py-value.c (valpy_dealloc, valpy_new)
12291         (value_to_value_object): Update.
12292         * printcmd.c (do_examine): Update.
12293         * opencl-lang.c (lval_func_free_closure): Update.
12294         * mi/mi-main.c (register_changed_p): Don't call value_free.
12295         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12296         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12297         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12298         value_free.
12299         * guile/scm-value.c (vlscm_free_value_smob)
12300         (vlscm_scm_from_value): Update.
12301         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12302         (frame_unwind_register_unsigned, get_frame_register_bytes)
12303         (put_frame_register_bytes): Don't call value_free.
12304         * findvar.c (address_from_register): Don't call value_free.
12305         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12306         * dwarf2loc.c (entry_data_value_free_closure)
12307         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12308         (dwarf2_evaluate_loc_desc_full): Update.
12309         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12310         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12311         (~watchpoint, watch_command_1)
12312         (invalidate_bp_value_on_memory_change): Update.
12313         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12314
12315 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12316
12317         PR gdb/23022
12318         * warning.m4: Add -Wno-error=deprecated-register.
12319         * configure: Re-generate.
12320
12321 2018-04-05  Tom Tromey  <tom@tromey.com>
12322
12323         * linespec.h: Remove include of "vec.h".
12324
12325 2018-04-05  Tom Tromey  <tom@tromey.com>
12326
12327         * linespec.c (typep): Remove typedef.
12328         (find_methods, find_superclass_methods): Take a std::vector.
12329         (find_method): Use std::vector.
12330
12331 2018-04-05  Tom Tromey  <tom@tromey.com>
12332
12333         * utils.c (compare_strings): Remove.
12334         * utils.h (compare_strings): Remove.
12335         * objc-lang.h (find_imps): Update.
12336         * objc-lang.c (find_methods): Take a std::vector.
12337         (uniquify_strings, find_imps): Likewise.
12338         * linespec.c (find_methods): Take a std::vector.
12339         (decode_objc): Use std::vector.
12340         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12341         a std::vector.
12342         (find_method, find_function_symbols): Use std::vector.
12343
12344 2018-04-05  Tom Tromey  <tom@tromey.com>
12345
12346         * completer.c (completion_tracker::completion_tracker): Remove
12347         cast.
12348         (completion_tracker::discard_completions): Likewise.
12349         * breakpoint.c (ambiguous_names_p): Remove cast.
12350         * ada-lang.c (_initialize_ada_language): Remove cast.
12351         * utils.h (streq): Update.
12352         (streq_hash): Add new declaration.
12353         * utils.c (streq): Return bool.
12354         (streq_hash): New function.
12355
12356 2018-04-05  Tom Tromey  <tom@tromey.com>
12357
12358         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12359         Remove a string copy.
12360
12361 2018-04-05  Tom Tromey  <tom@tromey.com>
12362
12363         * linespec.c (filter_results): Use std::vector.
12364         (decode_line_2, decode_line_full): Update.
12365
12366 2018-04-05  Tom Tromey  <tom@tromey.com>
12367
12368         * linespec.c (canonical_to_fullform): Return std::string.
12369         (filter_results): Update.
12370         (struct decode_line_2_item): Add constructor.
12371         <fullform, displayform>: Now std::string.
12372         (decode_line_2_compare_items): Now a std::sort comparator.
12373         (decode_line_2): Update.
12374
12375 2018-04-05  Tom Tromey  <tom@tromey.com>
12376
12377         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12378         (unexpected_linespec_error): Update.
12379         (linespec_parse_basic, parse_linespec): Update.
12380
12381 2018-04-05  Tom Tromey  <tom@tromey.com>
12382
12383         * linespec.c (linespec_parse_basic): Reindent.
12384
12385 2018-04-05  Tom Tromey  <tom@tromey.com>
12386
12387         * minsyms.h (iterate_over_minimal_symbols): Update.
12388         * minsyms.c (iterate_over_minimal_symbols): Take a
12389         gdb::function_view.
12390         * linespec.c (struct collect_minsyms): Remove.
12391         (compare_msyms): Now a std::sort comparator.
12392         (add_minsym): Add parameters.
12393         (search_minsyms_for_name): Update.  Use std::vector.
12394
12395 2018-04-03  Tom Tromey  <tom@tromey.com>
12396
12397         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12398         gdb::byte_vector.
12399
12400 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12401
12402         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12403
12404 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12405
12406         PR gdb/16959
12407         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12408         printing static type.
12409
12410 2018-04-01  Tom Tromey  <tom@tromey.com>
12411
12412         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12413         (rs6000_xfer_shared_libraries): Update.
12414
12415 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12416
12417         * common/gdb_vecs.h (char_ptr): Remove.
12418         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12419
12420 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12421
12422         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12423         with std::vector.
12424         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12425
12426 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12427
12428         * tracepoint.h (struct uploaded_tp): Initialize fields.
12429         <actions, step_actions, cmd_strings>: Change type to
12430         std::vector<char *>.
12431         * tracepoint.c (get_uploaded_tp): Allocate with new.
12432         (free_uploaded_tps): Free with delete.
12433         (parse_tracepoint_definition): Adjust to std::vector change.
12434         * breakpoint.c (read_uploaded_action): Likewise.
12435         (create_tracepoint_from_upload): Likewise.
12436         * ctf.c (ctf_write_uploaded_tp): Likewise.
12437         (SET_ARRAY_FIELD): Likewise.
12438         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12439
12440 2018-03-30  Tom Tromey  <tom@tromey.com>
12441
12442         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12443         std::unique_ptr.
12444         (svr4_keep_data_in_core): Update.
12445         (svr4_read_so_list): Update.
12446
12447 2018-03-30  Tom Tromey  <tom@tromey.com>
12448
12449         * windows-nat.c (handle_output_debug_string, handle_exception):
12450         Update.
12451         * target.h (target_read_string): Update.
12452         * target.c (target_read_string): Change "string" to
12453         unique_xmalloc_ptr.
12454         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12455         Update.
12456         * solib-frv.c (frv_current_sos): Update.
12457         * solib-dsbt.c (dsbt_current_sos): Update.
12458         * solib-darwin.c (darwin_current_sos): Update.
12459         * linux-thread-db.c (inferior_has_bug): Update.
12460         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12461         Update.  Remove alloca.
12462         * ada-lang.c (ada_main_name): Update.
12463
12464 2018-03-30  Tom Tromey  <tom@tromey.com>
12465
12466         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12467         (struct dwo_file_deleter): New.
12468         (dwo_file_up): New typedef.
12469         (open_and_init_dwo_file): Use dwo_file_up.
12470         (free_dwo_file_cleanup): Remove.
12471
12472 2018-03-30  Tom Tromey  <tom@tromey.com>
12473
12474         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12475         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12476
12477 2018-03-30  Tom Tromey  <tom@tromey.com>
12478
12479         * dwarf2read.c (class free_cached_comp_units): New class.
12480         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12481         (free_cached_comp_units): Remove function.
12482
12483 2018-03-30  Tom Tromey  <tom@tromey.com>
12484
12485         * utils.h (make_cleanup_unpush_target): Remove.
12486         * inf-ptrace.c (struct target_unpusher): New.
12487         (target_unpush_up) New typedef.
12488         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12489         target_unpush_up.
12490         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12491
12492 2018-03-27  Tom Tromey  <tom@tromey.com>
12493
12494         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12495
12496 2018-03-27  Pedro Alves  <palves@redhat.com>
12497             Tom Tromey  <tom@tromey.com>
12498
12499         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12500         destructor.  Now a class.
12501         (gdb_readline_wrapper_cleanup): Remove function.
12502         (gdb_readline_wrapper): Remove cleanups.
12503
12504 2018-03-27  Tom Tromey  <tom@tromey.com>
12505
12506         * typeprint.h (struct type_print_options) <local_typedefs,
12507         global_typedefs>: Remove "struct" keyword.
12508         (class typedef_hash_table): New class.
12509         (recursively_update_typedef_hash, add_template_parameters)
12510         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12511         (find_typedef_in_hash): Don't declare.
12512         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12513         (typedef_hash_table::recursively_update): Rename from
12514         recursively_update_typedef_hash.  Now a member.
12515         (typedef_hash_table::add_template_parameters): Rename from
12516         add_template_parameters.  Now a member.
12517         (typedef_hash_table::typedef_hash_table): Now a constructor;
12518         rename from create_typedef_hash.
12519         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12520         rename from free_typedef_hash.
12521         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12522         (do_free_global_table): Remove.
12523         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12524         from copy_type_recursive.
12525         (create_global_typedef_table): Remove.
12526         (typedef_hash_table::find_global_typedef): Now a member of
12527         typedef_hash_table.
12528         (typedef_hash_table::find_typedef): Rename from
12529         find_typedef_in_hash; now a member.
12530         (whatis_exp): Update.
12531         * extension.h (struct ext_lang_type_printers): Add constructor and
12532         destructor.
12533         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12534         declare.
12535         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12536         Now a constructor; rename from start_ext_lang_type_printers.
12537         (ext_lang_type_printers): Now a destructor; rename from
12538         free_ext_lang_type_printers.
12539         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12540         Update.
12541         (c_type_print_base_struct_union): Update.  Remove cleanups.
12542
12543 2018-03-27  Tom Tromey  <tom@tromey.com>
12544
12545         * dwarf-index-write.c: Include <cmath>.
12546
12547 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12548
12549         * NEWS: Add entry describing new "set|show varsize-limit" command.
12550         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12551         command.
12552         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12553         "set variable".
12554
12555 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12556
12557         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12558         dwarf-index-write.c
12559         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12560         * dwarf-index-common.c: New file.
12561         * dwarf-index-common.h: New file.
12562         * dwarf-index-write.c: New file.
12563         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12564         (struct dwarf2_section_info): Move from here.
12565         (dwarf2_section_info_def): Likewise.
12566         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12567         (offset_type): Likewise.
12568         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12569         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12570         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12571         (byte_swap): Likewise.
12572         (MAYBE_SWAP): Likewise.
12573         (dwarf2_per_cu_ptr): Likewise.
12574         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12575         (struct tu_stats): Likewise.
12576         (struct dwarf2_per_objfile): Likewise.
12577         (struct dwarf2_per_cu_data): Likewise.
12578         (struct signatured_type): Likewise.
12579         (sig_type_ptr): Likewise.
12580         (DEF_VEC_P (sig_type_ptr)): Likewise.
12581         (INDEX4_SUFFIX): Likewise.
12582         (INDEX5_SUFFIX): Likewise.
12583         (DEBUG_STR_SUFFIX): Likewise.
12584         (dwarf2_read_section): Make non-static.
12585         (mapped_index_string_hash): Move from here.
12586         (dwarf5_djb_hash): Likewise.
12587         (file_write): Likewise.
12588         (class data_buf): Likewise.
12589         (struct symtab_index_entry): Likewise.
12590         (struct mapped_symtab): Likewise.
12591         (find_slot): Likewise.
12592         (hash_expand): Likewise.
12593         (add_index_entry): Likewise.
12594         (uniquify_cu_indices): Likewise.
12595         (class c_str_view): Likewise.
12596         (class c_str_view_hasher): Likewise.
12597         (class vector_hasher): Likewise.
12598         (write_hash_table): Likewise.
12599         (psym_index_map): Likewise.
12600         (struct addrmap_index_data): Likewise.
12601         (add_address_entry): Likewise.
12602         (add_address_entry_worker): Likewise.
12603         (write_address_map): Likewise.
12604         (symbol_kind): Likewise.
12605         (write_psymbols): Likewise.
12606         (struct signatured_type_index_data): Likewise.
12607         (write_one_signatured_type): Likewise.
12608         (recursively_count_psymbols): Likewise.
12609         (recursively_write_psymbols): Likewise.
12610         (class debug_names): Likewise.
12611         (check_dwarf64_offsets): Likewise.
12612         (psyms_seen_size): Likewise.
12613         (write_gdbindex): Likewise.
12614         (write_debug_names): Likewise.
12615         (assert_file_size): Likewise.
12616         (write_psymtabs_to_index): Likewise.
12617         (save_gdb_index_command): Likewise.
12618         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12619         command.
12620         * dwarf2read.h: New file.
12621
12622 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12623
12624         PR gdb/22670
12625         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12626         symbol name if the CU's language stores symbol names in linkage
12627         format.
12628         * language.h (struct language_defn)
12629         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12630         all instances of this struct.
12631
12632 2018-03-26  Tom Tromey  <tom@tromey.com>
12633
12634         * stack.c (backtrace_command_1): Remove verbose code.
12635
12636 2018-03-26  Tom Tromey  <tom@tromey.com>
12637
12638         * python/py-framefilter.c (py_print_type): Don't catch
12639         exceptions.  Return void.
12640         (py_print_value): Likewise.
12641         (py_print_single_arg): Likewise.
12642         (enumerate_args): Don't catch exceptions.
12643         (py_print_args): Likewise.
12644         (py_print_frame): Likewise.
12645         (gdbpy_apply_frame_filter): Catch exceptions here.
12646
12647 2018-03-26  Tom Tromey  <tom@tromey.com>
12648
12649         * stack.c (_initialize_stack): Remove trailing newlines from help
12650         text.  Add "Usage" line to "backtrace" help.
12651
12652 2018-03-26  Tom Tromey  <tom@tromey.com>
12653
12654         PR python/16486:
12655         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12656
12657 2018-03-26  Tom Tromey  <tom@tromey.com>
12658
12659         * python/py-framefilter.c (py_print_single_arg): Return
12660         EXT_LANG_BT_ERROR from catch.
12661
12662 2018-03-26  Tom Tromey  <tom@tromey.com>
12663
12664         PR backtrace/15584:
12665         * stack.c (backtrace_command_1): Move some code into no-filters
12666         "if".
12667
12668 2018-03-26  Tom Tromey  <tom@tromey.com>
12669
12670         * python/py-framefilter.c (throw_quit_or_print_exception): New
12671         function.
12672         (gdbpy_apply_frame_filter): Use it.
12673
12674 2018-03-26  Tom Tromey  <tom@tromey.com>
12675
12676         PR cli/17716:
12677         * python/py-framefilter.c (py_print_type, py_print_value)
12678         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12679         RETURN_MASK_ERROR.
12680
12681 2018-03-26  Tom Tromey  <tom@tromey.com>
12682
12683         * python/py-framefilter.c (enumerate_args): Use
12684         gdb::unique_xmalloc_ptr.
12685
12686 2018-03-26  Tom Tromey  <tom@tromey.com>
12687
12688         * python/py-framefilter.c (py_print_frame): Return
12689         EXT_LANG_BT_OK.
12690         (gdbpy_apply_frame_filter): Update comment.
12691         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12692         Remove.
12693         <EXT_LANG_BT_NO_FILTERS>: Change value.
12694
12695 2018-03-26  Tom Tromey  <tom@tromey.com>
12696
12697         PR backtrace/15582:
12698         * stack.c (backtrace_command): Parse "hide" argument.
12699         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12700         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12701         constant.
12702
12703 2018-03-26  Tom Tromey  <tom@tromey.com>
12704
12705         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12706         add "flags".
12707         (backtrace_command): Remove "fulltrace", add "flags".
12708
12709 2018-03-26  Tom Tromey  <tom@tromey.com>
12710
12711         * stack.c (backtrace_command): Rewrite command line parsing.
12712
12713 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12714
12715         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12716
12717 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12718
12719         * filename-seen-cache.h: Add include guard.
12720
12721 2018-03-26  Keith Seitz  <keiths@redhat.com>
12722
12723         * symfile.c (place_section): Remove "struct" from section_addr_info
12724         in comment.
12725         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12726         "struct" keyword from section_addr_info.
12727
12728 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12729
12730         * regformats/regdef.h (reg): Add constructors.
12731
12732 2018-03-25  Pedro Alves  <palves@redhat.com>
12733
12734         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12735         if then/else bodies in var_func_name extraction.
12736
12737 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12738
12739         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12740         lookup_minimal_symbol() to find symbol entry.
12741         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12742
12743 2018-03-23  Keith Seitz  <keiths@redhat.com>
12744
12745         PR c++/22968
12746         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12747         nested type definitions for C++, too.
12748
12749 2018-03-23  Tom Tromey  <tom@tromey.com>
12750
12751         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12752         a typedef.
12753         (macho_register_oso): Remove.
12754         (macho_symtab_read): Take a std::vector.
12755         (oso_el_compare_name): Now a std::sort comparator.
12756         (macho_symfile_read_all_oso): Take a std::vector.
12757         (macho_symfile_read): Use std::vector.  Remove cleanups.
12758
12759 2018-03-22  Tom Tromey  <tom@tromey.com>
12760
12761         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12762         (record_full_goto_bookmark): Use std::string.
12763
12764 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12765
12766         PR tdep/18295
12767         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12768         a single mask.
12769
12770 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12771
12772         * rs6000-tdep.c (store_insn_p): New function.
12773         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12774         and cr_reg to their unshifted values. Use store_insn_p to
12775         match LR saves using either R1 or fdata->alloca_reg. Use
12776         store_insn_p to match CR saves. Set alloca_reg_offset
12777         when alloca_reg and framep are set. Remove lr_reg shift
12778         when assigning to fdata->lr_register.
12779
12780 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12781
12782         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12783         command line args instead of emitting a warning.
12784
12785 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12786
12787         * tracepoint.h (struct static_tracepoint_marker): Initialize
12788         fields, define default constructor, move constructor and move
12789         assignment, disable the rest.
12790         <str_id, extra>: Make std::string.
12791         (release_static_tracepoint_marker): Remove.
12792         (free_current_marker): Remove.
12793         * tracepoint.c (free_current_marker): Remove.
12794         (parse_static_tracepoint_marker_definition): Adjust to
12795         std::string, use new hex2str overload.
12796         (release_static_tracepoint_marker): Remove.
12797         (print_one_static_tracepoint_marker): Get marker by reference
12798         and adjust to std::string.
12799         (info_static_tracepoint_markers_command): Adjust to std::vector
12800         changes
12801         * target.h (static_tracepoint_marker_p): Remove typedef.
12802         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12803         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12804         bool.
12805         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12806         * target-debug.h
12807         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12808         (target_debug_print_std_vector_static_tracepoint_marker): New.
12809         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12810         to...
12811         (target_debug_print_static_tracepoint_marker_p): ... this.
12812         * target-delegates.c: Re-generate.
12813         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12814         Make std::string.
12815         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12816         (decode_static_tracepoint_spec): Adjust to std::vector.
12817         (tracepoint_print_one_detail): Adjust to std::string.
12818         (strace_marker_decode_location): Adjust to std::string.
12819         (update_static_tracepoint): Adjust to std::string, remove call
12820         to release_static_tracepoint_marker.
12821         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12822         Adjust to std::vector.
12823         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12824         (remote_static_tracepoint_markers_by_strid): Adjust to
12825         std::vector.
12826         * common/rsp-low.h (hex2str): New overload with explicit count
12827         of bytes.
12828         * common/rsp-low.c (hex2str): New overload with explicit count
12829         of bytes.
12830         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12831         (_initialize_rsp_low_selftests): Add test_hex2str test.
12832         * unittests/tracepoint-selftests.c
12833         (test_parse_static_tracepoint_marker_definition): Adjust to
12834         std::string.
12835
12836 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12837
12838         * tracepoint.c (parse_static_tracepoint_marker_definition):
12839         Consider case where the definition is followed by more
12840         definitions.
12841         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12842         tracepoint-selftests.c.
12843         * unittests/tracepoint-selftests.c: New.
12844
12845 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12846
12847         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12848         Carvalho.
12849
12850 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12851
12852         * symtab.c (find_pc_sect_line): fixed indentation.
12853
12854 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12855
12856         * symtab.c (find_pc_sect_line): now uses binary search.
12857
12858 2018-03-19  Tom Tromey  <tom@tromey.com>
12859
12860         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12861         "IDENT" production.
12862
12863 2018-03-19  Pedro Alves  <palves@redhat.com>
12864             Tom Tromey  <tom@tromey.com>
12865
12866         * unittests/observable-selftests.c: New file.
12867         * common/observable.h: New file.
12868         * observable.h: New file.
12869         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12870         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12871         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12872         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12873         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12874         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12875         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12876         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12877         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12878         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12879         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12880         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12881         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12882         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12883         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12884         tui/tui-interp.c, valops.c: Update all users.
12885         * tui/tui-hooks.c (tui_bp_created_observer)
12886         (tui_bp_deleted_observer, tui_bp_modified_observer)
12887         (tui_inferior_exit_observer, tui_before_prompt_observer)
12888         (tui_normal_stop_observer, tui_register_changed_observer):
12889         Remove.
12890         (tui_observers_token): New global.
12891         (attach_or_detach, tui_attach_detach_observers): New functions.
12892         (tui_install_hooks, tui_remove_hooks): Use
12893         tui_attach_detach_observers.
12894         * record-btrace.c (record_btrace_thread_observer): Remove.
12895         (record_btrace_thread_observer_token): New global.
12896         * observer.sh: Remove.
12897         * observer.c: Rename to observable.c.
12898         * observable.c (namespace gdb_observers): Define new objects.
12899         (observer_debug): Move into gdb_observers namespace.
12900         (struct observer, struct observer_list, xalloc_observer_list_node)
12901         (xfree_observer_list_node, generic_observer_attach)
12902         (generic_observer_detach, generic_observer_notify): Remove.
12903         (_initialize_observer): Update.
12904         Don't include observer.inc.
12905         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12906         (clean mostlyclean): Likewise.
12907         (observer.h, observer.inc): Remove targets.
12908         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12909         (COMMON_SFILES): Use observable.c, not observer.c.
12910         * .gitignore: Remove observer.h.
12911
12912 2018-03-18  Tom Tromey  <tom@tromey.com>
12913
12914         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12915         gdb::def_vector.
12916         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12917
12918 2018-03-17  Tom Tromey  <tom@tromey.com>
12919
12920         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12921
12922 2018-03-17  Tom Tromey  <tom@tromey.com>
12923
12924         * target.c (class scoped_target_fd): New.
12925         (target_fileio_close_cleanup): Remove.
12926         (target_fileio_read_alloc_1): Use scoped_target_fd.
12927
12928 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12929
12930         * silent-rules.mk: New.
12931         * Makefile.in: Include silent-rules.mk
12932         (srcdir, VPATH, top_srcdir): Move up.
12933         (COMPILE): Add ECHO_CXX.
12934         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12935         (init.c): Add ECHO_INIT_C.
12936         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12937         (version.c): Add ECHO_GEN.
12938         (printcmd.o): Add ECHO_CXX.
12939         (target-float.o): Add ECHO_CXX.
12940         (ada-exp.o): Add ECHO_CXX.
12941         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12942         (insight$(EXEEXT)): Add ECHO_CXXLD.
12943         * gnulib/configure.ac: Add AM_SILENT_RULES.
12944         * gnulib/aclocal.m4: Re-generate.
12945         * gnulib/configure: Re-generate.
12946         * gnulib/import/Makefile.in: Re-generate.
12947
12948 2018-03-16  Tom Tromey  <tom@tromey.com>
12949
12950         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12951         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12952         * utils.c (do_free_section_addr_info)
12953         (make_cleanup_free_section_addr_info): Remove.
12954         * symfile.h (struct other_sections): Add constructor.
12955         (struct section_addr_info): Remove.
12956         (section_addr_info): New typedef.
12957         (struct sym_fns) <sym_offsets>: Change type of parameter.
12958         (build_section_addr_info_from_objfile)
12959         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12960         (default_symfile_offsets, symbol_file_add)
12961         (symbol_file_add_from_bfd)
12962         (build_section_addr_info_from_section_table): Update.
12963         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12964         * symfile.c (alloc_section_addr_info): Remove.
12965         (build_section_addr_info_from_section_table): Change return type.
12966         Update.
12967         (build_section_addr_info_from_bfd)
12968         (build_section_addr_info_from_objfile): Likewise.
12969         (free_section_addr_info): Remove.
12970         (relative_addr_info_to_section_offsets): Change type of "addrs".
12971         (addrs_section_compar): Now a std::sort comparator.
12972         (addrs_section_sort): Change return type.
12973         (addr_info_make_relative): Change type of "addrs".  Update.
12974         (default_symfile_offsets, syms_from_objfile_1)
12975         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12976         (symbol_file_add_separate): Update.
12977         (symbol_file_add): Change type of "addrs".  Update.
12978         (add_symbol_file_command): Update.  Remove cleanups.
12979         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12980         cleanups.
12981         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12982         * solib.c (solib_read_symbols): Update.
12983         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12984         * machoread.c (macho_symfile_offsets): Update.
12985         * jit.c (jit_bfd_try_read_symtab): Update.
12986
12987 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12988
12989         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12990         unittests/utils-selftests.c.
12991         * unittests/utils-selftests.c: New file.
12992
12993 2018-03-14  Tom Tromey  <tom@tromey.com>
12994
12995         PR cli/14977:
12996         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12997         for NULL.
12998
12999 2018-03-14  Tom Tromey  <tom@tromey.com>
13000
13001         PR cli/19918:
13002         * printcmd.c (printf_pointer): Allow "-" in format.
13003
13004 2018-03-14  Tom Tromey  <tom@tromey.com>
13005
13006         * printcmd.c (_initialize_printcmd): Add usage to printf.
13007
13008 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13009
13010         * MAINTAINERS: Update my email address.
13011
13012 2018-03-13  Tom Tromey  <tom@tromey.com>
13013
13014         * machoread.c (macho_check_dsym): Change filenamep to a
13015         std::string*.
13016         (macho_symfile_read): Update.
13017         * symfile.c (load_command): Use std::string.
13018
13019 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13020
13021         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13022         to error message string.
13023         (riscv_register_name): Use xsnprintf instead of sprintf.
13024         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13025         internal_error.
13026         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13027         error.
13028         (riscv_push_dummy_call): Likewise.
13029
13030 2018-03-12  Tom Tromey  <tom@tromey.com>
13031
13032         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13033         Use gdb::byte_vector.
13034         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13035
13036 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13037
13038         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13039         parameter type to readable_regcache.
13040         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13041         the declaration.
13042
13043 2018-03-11  Tom Tromey  <tom@tromey.com>
13044
13045         * dwarf2read.c (struct nextfield): Add initializers.
13046         (struct nextfnfield): Remove.
13047         (struct fnfieldlist): Add initializers.  Remove "length" and
13048         "head", use std::vector.
13049         (struct decl_field_list): Remove.
13050         (struct field_info): Add initializers.
13051         <fields, baseclasses>: Now std::vector.
13052         <nbaseclasses, nfnfields, typedef_field_list_count,
13053         nested_types_list_count>: Remove.
13054         (dwarf2_add_field, dwarf2_add_type_defn)
13055         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13056         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13057         (process_structure_scope): Update.
13058
13059 2018-03-11  Tom Tromey  <tom@tromey.com>
13060
13061         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13062         for use by std::sort.
13063         (build_type_psymtabs_1): Use std::vector.
13064
13065 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13066
13067         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13068         and LIBMPFR in the printed configuration.
13069
13070 2018-03-08  Tom Tromey  <tom@tromey.com>
13071
13072         * source.c (get_filename_and_charpos): Use scoped_fd.
13073         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13074         (procfs_pidlist): Likewise.
13075         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13076         (iterate_over_mappings): Likewise.
13077
13078 2018-03-08  Tom Tromey  <tom@tromey.com>
13079
13080         * infcall.c (struct call_return_meta_info)
13081         <stack_temporaries_enabled>: Remove.
13082         (get_call_return_value, call_function_by_hand_dummy): Update.
13083         * thread.c (disable_thread_stack_temporaries): Remove.
13084         (enable_thread_stack_temporaries): Remove.
13085         (thread_stack_temporaries_enabled_p): Return bool.
13086         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13087         (get_last_thread_stack_temporary): Update.
13088         * eval.c (evaluate_subexp): Update.
13089         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13090         class, not a function.
13091         (value_ptr, value_vec): Remove typedefs.
13092         (class thread_info) <stack_temporaries_enabled>: Now bool.
13093         <stack_temporaries>: Now a std::vector.
13094         (thread_stack_temporaries_enabled_p)
13095         (value_in_thread_stack_temporaries): Return bool.
13096
13097 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13098
13099         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13100         (getpkt_or_notif_sane_1): Likewise.
13101
13102 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13103
13104         * build-id.c (build_id_to_debug_bfd): Use std::string.
13105
13106 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13107
13108         * build-id.c (find_separate_debug_file_by_buildid): Return
13109         std::string.
13110         * build-id.h (find_separate_debug_file_by_buildid): Return
13111         std::string.
13112         * coffread.c (coff_symfile_read): Adjust to std::string.
13113         * elfread.c (elf_symfile_read): Adjust to std::string.
13114         * symfile.c (separate_debug_file_exists): Change parameter to
13115         std::string.
13116         (find_separate_debug_file): Return std::string.
13117         (find_separate_debug_file_by_debuglink): Return std::string.
13118         * symfile.h (find_separate_debug_file_by_debuglink): Return
13119         std::string.
13120
13121 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13122
13123         * common/xml-utils.c (xml_escape_text): Move code to...
13124         (xml_escape_text_append): ... this new function.
13125         * common/xml-utils.h (xml_escape_text_append): New declaration.
13126         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13127         New function.
13128         (_initialize_xml_utils): register test_xml_escape_text_append as
13129         a selftest.
13130
13131 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13132
13133         * defs.h: Remove MAX_REGISTER_SIZE.
13134         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13135         asserts.
13136         * python/py-unwind.c (pyuw_sniffer): Likewise.
13137
13138 2018-03-07  Tom Tromey  <tom@tromey.com>
13139
13140         * linux-tdep.c (linux_info_proc): Update.
13141         * target.h (struct target_ops) <to_fileio_readlink>: Return
13142         optional<string>.
13143         (target_fileio_readlink): Return optional<string>.
13144         * remote.c (remote_hostio_readlink): Return optional<string>.
13145         * inf-child.c (inf_child_fileio_readlink): Return
13146         optional<string>.
13147         * target.c (target_fileio_readlink): Return optional<string>.
13148
13149 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13150
13151         * regcache.c (cooked_read_test): Add riscv to the list of
13152         architectures that have a save_reggroup.
13153
13154 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13155
13156         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13157         value is not a dynamic class object.
13158
13159 2018-03-06  Tom Tromey  <tom@tromey.com>
13160
13161         * rust-exp.y: Formatting fixes.
13162
13163 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13164
13165         * riscv-tdep.c (riscv_register_name): Remove target description
13166         support.
13167         (riscv_gdbarch_init): Remove target description check.
13168
13169 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13170
13171         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13172         comment.
13173         * riscv-tdep.h: Likewise.
13174
13175 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13176
13177         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13178         (riscv_pseudo_register_write): Delete.
13179         (riscv_gdbarch_init): Remove all use of pseudo registers.
13180
13181 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13182
13183         * record-btrace.c (btrace_print_lines): Replace cleanup
13184         parameter with RAII equivalents.
13185         (btrace_insn_history): Replace cleanup with RAII equivalents.
13186         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13187         make_cleanup_ui_out_tuple_begin_end): Remove.
13188         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13189         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13190         make_cleanup_ui_out_list_begin_end): Remove.
13191
13192 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13193
13194         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13195         parameter types to std::vector.  Use bool.
13196         (record_btrace_wait): Replace VEC(tp_t) with
13197         std::vector<thread_info *>.
13198         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13199
13200 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13201
13202         * record-btrace.c (record_btrace_disable_callback): Remove.
13203         (struct scoped_btrace_disable): New.
13204         (record_btrace_open): Use scoped_btrace_disable.
13205
13206 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13207
13208         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13209         reading values from registers.
13210
13211 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13212
13213         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13214         where appropriate.
13215
13216 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13217
13218         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13219         change parameter type.  Use GDB's print functions, and use
13220         core_addr_to_string where appropriate.
13221         (riscv_push_dummy_call): Use core_addr_to_string where
13222         appropriate, update call to riscv_print_arg_location, and reindent
13223         a few lines.
13224         (riscv_return_value): Update call to riscv_print_arg_location.
13225
13226 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13227             Tim Newsome <tim@sifive.com>
13228             Albert Ou <a0u@eecs.berkeley.edu>
13229             Darius Rad <darius@bluespec.com>
13230
13231         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13232         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13233         (ALLDEPFILES): Add riscv-tdep.c
13234         * configure.tgt: Add riscv support.
13235         * riscv-tdep.c: New file.
13236         * riscv-tdep.h: New file.
13237         * NEWS: Mention new target.
13238         * MAINTAINERS: Add entry for riscv.
13239
13240 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13241
13242         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13243         fields within aggregates.
13244
13245 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13246
13247         * record-btrace.c (btrace_print_lines): Change type of flags to
13248         gdb_disassembly_flags.
13249
13250 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13251
13252         * fbsd-nat.c: Include "inf-ptrace.h".
13253         (USE_SIGTRAP_SIGINFO): Conditionally define.
13254         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13255         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13256         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13257         function.
13258         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13259         Likewise.
13260         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13261         Likewise.
13262         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13263         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13264         "supports_stopped_by_hw_breakpoint" target methods.
13265
13266 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13267
13268         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13269         * fbsd-nat.c (debug_fbsd_nat): New variable.
13270         (show_fbsd_nat_debug): New function.
13271         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13272         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13273
13274 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13275
13276         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13277         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13278         prototype.
13279         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13280         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13281         method.
13282
13283 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13284
13285         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13286         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13287
13288 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13289
13290         * charset.c (struct charset_vector): New.
13291         (charsets): Change type to charset_vector.
13292         (find_charset_names): Adjust.
13293         (add_one): Adjust.
13294         (_initialize_charset): Adjust.
13295
13296 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13297
13298         * progspace.h (struct program_space) <deleted_solibs>: Change
13299         type to std::vector<std::string>.
13300         * progspace.c (clear_program_space_solib_cache): Adjust.
13301         * breakpoint.c (print_solib_event): Adjust.
13302         (check_status_catch_solib): Adjust.
13303         * solib.c (update_solib_list): Adjust.
13304         * ui-out.h (class ui_out) <field_string>: New overload.
13305         * ui-out.c (ui_out::field_string): New overload.
13306
13307 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13308
13309         * progspace.h (struct program_space): Add constructor and
13310         destructor, initialize fields.
13311         (add_program_space): Remove.
13312         * progspace.c (add_program_space): Rename to...
13313         (program_space::program_space): ... this.
13314         (release_program_space): Rename to...
13315         (program_space::~program_space): ... this.
13316         (delete_program_space): Use delete to delete program_space.
13317         (initialize_progspace): Use new to allocate program_space.
13318         * inferior.c (add_inferior_with_spaces): Likewise.
13319         (clone_inferior_command): Likewise.
13320         * infrun.c (follow_fork_inferior): Likewise.
13321         (handle_vfork_child_exec_or_exit): Likewise.
13322
13323 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13324
13325         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13326         (delim_string_to_char_ptr_vec): Return std::vector of
13327         gdb::unique_xmalloc_ptr.
13328         (dirnames_to_char_ptr_vec_append): Take std::vector of
13329         gdb::unique_xmalloc_ptr.
13330         (dirnames_to_char_ptr_vec): Return std::vector of
13331         gdb::unique_xmalloc_ptr.
13332         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13333         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13334         (delim_string_to_char_ptr_vec): Return an std::vector of
13335         gdb::unique_xmalloc_ptr, adjust the code.
13336         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13337         gdb::unique_xmalloc_ptr, adjust the code.
13338         (dirnames_to_char_ptr_vec): Return an std::vector of
13339         gdb::unique_xmalloc_ptr, adjust the code.
13340         * auto-load.c (auto_load_safe_path_vec): Change type to
13341         std::vector of gdb::unique_xmalloc_ptr.
13342         (auto_load_expand_dir_vars): Return an std::vector of
13343         gdb::unique_xmalloc_ptr, adjust the code.
13344         (auto_load_safe_path_vec_update): Adjust.
13345         (filename_is_in_auto_load_safe_path_vec): Adjust.
13346         (auto_load_objfile_script_1): Adjust.
13347         * build-id.c (build_id_to_debug_bfd): Adjust.
13348         * linux-thread-db.c (thread_db_load_search): Adjust.
13349         * source.c (add_path): Adjust.
13350         (openp): Adjust.
13351         * symfile.c (find_separate_debug_file): Adjust.
13352         * utils.c (do_free_char_ptr_vec): Remove.
13353         (make_cleanup_free_char_ptr_vec): Remove.
13354
13355 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13356
13357         PR gdb/22907
13358         * common/pathstuff.c: Conditionally include "<windows.h>".
13359
13360 2018-03-01  Georg Sauthoff  <mail@georg.so>
13361
13362         PR gdb/22888
13363         * gcore.in: Quote variables and switch interpreter to bash.
13364
13365 2018-03-01  Tom Tromey  <tom@tromey.com>
13366
13367         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13368         assertion.  Add assertion for discriminant_index.
13369         (quirk_rust_enum): Use correct base type name in univariant case.
13370
13371 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13372
13373         * record.c (get_call_history_modifiers): Return a
13374         record_print_flags.
13375         (cmd_record_call_history): Adjust.
13376         * record-btrace.c (record_btrace_call_history): Adjust.
13377         (record_btrace_call_history_range): Adjust.
13378         (record_btrace_call_history_from): Adjust.
13379         * target-debug.h (target_debug_print_record_print_flags): New.
13380         * target-delegates.c: Re-generate.
13381         * target.c (target_call_history): Change flags type.
13382         (target_call_history_from): Likewise.
13383         (target_call_history_range): Likewise.
13384         * target.h (struct target_ops) <target_call_history>: Likewise.
13385         (target_call_history_from): Likewise.
13386         (target_call_history_range): Likewise.
13387
13388 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13389             Simon Marchi  <simon.marchi@polymtl.ca>
13390
13391         * common/common-utils.c: Include "sys/stat.h".
13392         (is_regular_file): Move here from "source.c"; change return
13393         type to "bool".
13394         * common/common-utils.h (is_regular_file): New prototype.
13395         * common/pathstuff.c (contains_dir_separator): New function.
13396         * common/pathstuff.h (contains_dir_separator): New prototype.
13397         * source.c: Don't include "sys/stat.h".
13398         (is_regular_file): Move to "common/common-utils.c".
13399
13400 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13401
13402         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13403         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13404         * auto-load.c: Include "common/pathstuff.h".
13405         * common/common-def.h (current_directory): Move here.
13406         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13407         function.
13408         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13409         prototype.
13410         * common/pathstuff.c: New file.
13411         * common/pathstuff.h: New file.
13412         * compile/compile.c: Include "common/pathstuff.h".
13413         * defs.h (current_directory): Move to "common/common-defs.h".
13414         * dwarf2read.c: Include "common/pathstuff.h".
13415         * exec.c: Likewise.
13416         * guile/scm-safe-call.c: Likewise.
13417         * linux-thread-db.c: Likewise.
13418         * main.c: Likewise.
13419         * nto-tdep.c: Likewise.
13420         * objfiles.c: Likewise.
13421         * source.c: Likewise.
13422         * symtab.c: Likewise.
13423         * utils.c: Include "common/pathstuff.h".
13424         (gdb_realpath): Move to "common/pathstuff.c".
13425         (gdb_realpath_keepfile): Likewise.
13426         (gdb_abspath): Likewise.
13427         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13428         (gdb_realpath_keepfile): Likewise.
13429         (gdb_abspath): Likewise.
13430
13431 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13432
13433         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13434         wildcard process pid for super_resume for kernels with a
13435         specific bug.
13436
13437 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13438
13439         * compile/compile.c (get_args): Add additional comments
13440         explaining function.
13441
13442 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13443             Tom Tromey  <tom@tromey.com>
13444
13445         * target.h (memory_write_request_s): Remove typedef.  Don't define
13446         VEC.
13447         (target_write_memory_blocks): Change argument to std::vector.
13448         (struct memory_write_request): Add constructor.
13449         * target-memory.c (compare_block_starting_address): Return bool.
13450         Change argument types.
13451         (claim_memory): Change arguments to use std::vector.
13452         (split_regular_and_flash_blocks, blocks_to_erase)
13453         (compute_garbled_blocks): Likewise.
13454         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13455         (target_write_memory_blocks): Change argument to std::vector.
13456         * symfile.c (struct load_section_data): Add constructor and
13457         destructor.  Use std::vector for "requests".
13458         (struct load_progress_data): Add initializers.
13459         (load_section_callback): Update.  Use "new".
13460         (clear_memory_write_data): Remove.
13461         (generic_load): Update.
13462
13463 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13464
13465         * arch/aarch64.h: Use common/tdesc.h.
13466
13467 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13468
13469         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13470         architecture with a 64-bit ABI.
13471
13472 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13473
13474         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13475         ahead of target description loading.
13476
13477 2018-02-26  Tom Tromey  <tom@tromey.com>
13478
13479         * stack.c (backtrace_command_1): Update.
13480         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13481         of "flags".
13482         * python/py-framefilter.c (py_print_frame)
13483         (gdbpy_apply_frame_filter): Change type of "flags".
13484         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13485         of "flags".
13486         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13487         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13488         * extension.h (enum frame_filter_flag): Rename from
13489         frame_filter_flags.
13490         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13491         (apply_ext_lang_frame_filter): Change type of "flags".
13492         * extension.c (apply_ext_lang_frame_filter): Change type of
13493         "flags".
13494         * extension-priv.h (struct extension_language_ops)
13495         <apply_frame_filter>: Change type of "flags".
13496
13497 2018-02-26  Tom Tromey  <tom@tromey.com>
13498
13499         PR python/16497:
13500         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13501         off-by-one in py_end computation.
13502         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13503         PRINT_MORE_FRAMES.
13504         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13505         constant.
13506
13507 2018-02-26  Tom Tromey  <tom@tromey.com>
13508
13509         * dwarf2read.c (struct variant_field): New.
13510         (struct nextfield) <variant>: New field.
13511         (dwarf2_add_field): Handle DW_TAG_variant_part.
13512         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13513         discriminated union.
13514         (read_structure_type): Handle DW_TAG_variant_part.
13515         (handle_struct_member_die): New function, extracted from
13516         process_structure_scope.  Handle DW_TAG_variant.
13517         (process_structure_scope): Handle discriminated unions.  Call
13518         handle_struct_member_die.
13519
13520 2018-02-26  Tom Tromey  <tom@tromey.com>
13521
13522         * rust-lang.h (rust_last_path_segment): Declare.
13523         * rust-lang.c (rust_last_path_segment): Now public.  Change
13524         contract.
13525         (struct disr_info): Remove.
13526         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13527         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13528         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13529         (rust_enum_p, rust_enum_variant): New function.
13530         (rust_underscore_fields): Remove "offset" parameter.
13531         (rust_print_enum): New function.
13532         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13533         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13534         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13535         enums.
13536         (rust_internal_print_type): New function, from rust_print_type.
13537         Remove enum code.
13538         (rust_print_type): Call rust_internal_print_type.
13539         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13540         Update enum handling.
13541         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13542         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13543         (rust_union_quirks): New functions.
13544         (process_full_comp_unit, process_full_type_unit): Call
13545         rust_union_quirks.
13546         (process_structure_scope): Update rust_unions if necessary.
13547
13548 2018-02-26  Tom Tromey  <tom@tromey.com>
13549
13550         * value.h (value_union_variant): Declare.
13551         * valops.c (value_union_variant): New function.
13552         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13553         (struct discriminant_info): New.
13554         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13555         enumerator.
13556         (struct main_type) <flag_discriminated_union>: New field.
13557
13558 2018-02-26  Tom Tromey  <tom@tromey.com>
13559
13560         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13561         unittests/unpack-selftests.c.
13562         * unittests/unpack-selftests.c: New file.
13563         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13564
13565 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13566
13567         * dwarf2read.c (struct partial_die_info) <read>: New method.
13568         (read_partial_die): Remove the declaration.
13569         (load_partial_dies): Update.
13570         (partial_die_info::partial_die_info):
13571         (read_partial_die): Change it to partial_die_info::read.
13572
13573 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13574
13575         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13576         (fixup_partial_die): Remove declaration.
13577         (scan_partial_symbols): Update.
13578         (partial_die_parent_scope): Likewise.
13579         (partial_die_full_name): Likewise.
13580         (fixup_partial_die): Change it to partial_die_info::fixup.
13581
13582 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13583
13584         * dwarf2read.c (read_partial_die): Update the declaration.
13585         (load_partial_dies): Caller update.
13586         (read_partial_die): Remove one argument abbrev_len.
13587
13588 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13589
13590         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13591         assignment operator.
13592         (load_partial_dies): Use ctor and copy ctor.
13593         (read_partial_die): Update.
13594         (dwarf2_cu::find_partial_die): Use ctor.
13595
13596 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13597
13598         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13599         (find_partial_die_in_comp_unit): Change it to
13600         dwarf2_cu::find_partial_die.
13601         (find_partial_die): Update.
13602
13603 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13604
13605         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13606         is NULL.
13607
13608 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13609
13610         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13611
13612 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13613
13614         * arch/amd64.h: Use common/tdesc.h.
13615         * arch/i386.c: Likewise.
13616         * arch/i386.h: Likewise.
13617         * arch/tic6x.c: Likewise.
13618         * arch/tdesc.h: Move file from here...
13619         * common/tdesc.h: ...to here.
13620         * features/aarch64-core.c: Regenerate.
13621         * features/aarch64-fpu.c: Regenerate.
13622         * features/i386/32bit-avx.c: Regenerate.
13623         * features/i386/32bit-avx512.c: Regenerate.
13624         * features/i386/32bit-core.c: Regenerate.
13625         * features/i386/32bit-linux.c: Regenerate.
13626         * features/i386/32bit-mpx.c: Regenerate.
13627         * features/i386/32bit-pkeys.c: Regenerate.
13628         * features/i386/32bit-sse.c: Regenerate.
13629         * features/i386/64bit-avx.c: Regenerate.
13630         * features/i386/64bit-avx512.c: Regenerate.
13631         * features/i386/64bit-core.c: Regenerate.
13632         * features/i386/64bit-linux.c: Regenerate.
13633         * features/i386/64bit-mpx.c: Regenerate.
13634         * features/i386/64bit-pkeys.c: Regenerate.
13635         * features/i386/64bit-segments.c: Regenerate.
13636         * features/i386/64bit-sse.c: Regenerate.
13637         * features/i386/x32-core.c: Regenerate.
13638         * features/tic6x-c6xp.c: Regenerate.
13639         * features/tic6x-core.c: Regenerate.
13640         * features/tic6x-gp.c: Regenerate.
13641         * target-descriptions.c: Use common/tdesc.h.
13642         * target-descriptions.h: Likewise.
13643
13644 2018-02-24  Tom Tromey  <tom@tromey.com>
13645
13646         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13647         (try_thread_db_load_from_dir, thread_db_load_search): Use
13648         std::string.
13649         (info_auto_load_libthread_db_compare): Return bool.  Change
13650         argument types.
13651         (info_auto_load_libthread_db): Use std::vector, std::string.
13652         Remove cleanups.
13653
13654 2018-02-24  Tom Tromey  <tom@tromey.com>
13655
13656         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13657         std::string.
13658         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13659         std::string*.
13660         * gdbarch.c: Rebuild.
13661         * gdbarch.h: Rebuild.
13662         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13663         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13664         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13665         std::string*.
13666
13667 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13668
13669         * gdbtypes.h (sect_offset): Change type to uint64_t.
13670         (sect_offset_str): New function.
13671         * dwarf2read.c (create_addrmap_from_aranges): Use
13672         sect_offset_str.
13673         (error_check_comp_unit_head): Likewise.
13674         (create_debug_type_hash_table): Likewise.
13675         (read_cutu_die_from_dwo): Likewise.
13676         (init_cutu_and_read_dies): Likewise.
13677         (init_cutu_and_read_dies_no_follow): Likewise.
13678         (process_psymtab_comp_unit_reader): Likewise.
13679         (partial_die_parent_scope): Likewise.
13680         (peek_die_abbrev): Likewise.
13681         (process_queue): Likewise.
13682         (dwarf2_physname): Likewise.
13683         (read_namespace_alias): Likewise.
13684         (read_import_statement): Likewise.
13685         (create_dwo_cu_reader): Likewise.
13686         (create_cus_hash_table): Likewise.
13687         (lookup_dwo_cutu): Likewise.
13688         (inherit_abstract_dies): Likewise.
13689         (read_func_scope): Likewise.
13690         (read_call_site_scope): Likewise.
13691         (dwarf2_add_member_fn): Likewise.
13692         (read_common_block): Likewise.
13693         (read_module_type): Likewise.
13694         (read_typedef): Likewise.
13695         (read_subrange_type): Likewise.
13696         (load_partial_dies): Likewise.
13697         (read_partial_die): Likewise.
13698         (find_partial_die): Likewise.
13699         (read_str_index): Likewise.
13700         (dwarf2_string_attr): Likewise.
13701         (build_error_marker_type): Likewise.
13702         (lookup_die_type): Likewise.
13703         (dump_die_shallow): Likewise.
13704         (follow_die_ref): Likewise.
13705         (dwarf2_fetch_die_loc_sect_off): Likewise.
13706         (dwarf2_fetch_constant_bytes): Likewise.
13707         (follow_die_sig): Likewise.
13708         (get_signatured_type): Likewise.
13709         (get_DW_AT_signature_type): Likewise.
13710         (dwarf2_find_containing_comp_unit): Likewise.
13711         (set_die_type): Likewise.
13712
13713 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13714
13715         * arch/aarch64.c: Include "common-defs.h".
13716         * arch/amd64.c: Likewise.
13717         * arch/i386.c: Likewise.
13718
13719 2018-02-21  Tom Tromey  <tom@tromey.com>
13720
13721         * value.h: (extract_field_op): Update.
13722         * eval.c (extract_field_op): Return a const char *.
13723         * expression.h (parse_expression_for_completion): Update.
13724         * completer.c (complete_expression): Update.
13725         (add_struct_fields): Make fieldname const.
13726         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13727         (mark_completion_tag, parse_exp_in_context_1): Update.
13728         (parse_expression_for_completion): Change "name" to
13729         unique_xmalloc_ptr*.
13730
13731 2018-02-21  Tom Tromey  <tom@tromey.com>
13732
13733         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13734
13735 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13736
13737         * avr-tdep.c (avr_read_pc): Change parameter type to
13738         readable_regcache.
13739         * gdbarch.sh (read_pc): Likewise.
13740         * gdbarch.c: Re-generated.
13741         * gdbarch.h: Re-generated.
13742         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13743         readable_regcache.
13744         * ia64-tdep.c (ia64_read_pc): Likewise.
13745         * mips-tdep.c (mips_read_pc): Likewise.
13746         * spu-tdep.c (spu_read_pc): Likewise.
13747
13748 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13749
13750         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13751         * regcache-dump.c: New file.
13752         * regcache.c: Move register_dump to regcache-dump.c.
13753         (maintenance_print_registers): Likewise.
13754         (maintenance_print_raw_registers): Likewise.
13755         (maintenance_print_cooked_registers): Likewise.
13756         (maintenance_print_register_groups): Likewise.
13757         (maintenance_print_remote_registers): Likewise.
13758         (_initialize_regcache): Likewise.
13759         * regcache.h (register_dump): Moved from regcache.c.
13760
13761 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13762
13763         * regcache.c (regcache::regcache): Update.
13764         (regcache::invalidate): Move it to detached_regcache::invalidate.
13765         (get_thread_arch_aspace_regcache): Update.
13766         (regcache::raw_update): Update.
13767         (regcache::cooked_read): Remove some code.
13768         (regcache::cooked_read_value): Likewise.
13769         (regcache::raw_write): Remove assert on m_readonly_p.
13770         (regcache::raw_supply_integer): Move it to
13771         detached_regcache::raw_supply_integer.
13772         (regcache::raw_supply_zeroed): Likewise.
13773         * regcache.h (detached_regcache) <raw_supply_integer>: New
13774         declaration.
13775         <raw_supply_zeroed, invalidate>: Likewise.
13776         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13777         <invalidate>: Likewise.
13778         <m_readonly_p>: Removed.
13779
13780 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13781
13782         * infcmd.c (get_return_value): Let stop_regs point to
13783         get_current_regcache.
13784         * regcache.c (regcache::regcache): Remove.
13785         (register_dump_reg_buffer): New class.
13786         (regcache_print): Adjust.
13787         * regcache.h (regcache): Remove constructors.
13788
13789 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13790
13791         * regcache.c (class register_dump): New class.
13792         (register_dump_regcache, register_dump_none): New class.
13793         (register_dump_remote, register_dump_groups): New class.
13794         (regcache_print): Update.
13795         * regcache.h (regcache_dump_what): Move it to regcache.c.
13796         (regcache) <dump>: Remove.
13797
13798 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13799
13800         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13801          reg_buffer_rw *.
13802         (jit_unwind_reg_set_impl): Call raw_supply.
13803         (jit_frame_sniffer): Use reg_buffer_rw.
13804         * record-full.c (record_full_core_regbuf): Change its type.
13805         (record_full_core_open_1): Use reg_buffer_rw.
13806         (record_full_close): Likewise.
13807         (record_full_core_fetch_registers): Use regcache->raw_supply.
13808         (record_full_core_store_registers): Likewise.
13809         * regcache.c (regcache::get_register_status): Move it to
13810         reg_buffer.
13811         (regcache_raw_set_cached_value): Remove.
13812         (regcache::raw_set_cached_value): Remove.
13813         (regcache::raw_write): Call raw_supply.
13814         (regcache::raw_supply): Move it to reg_buffer_rw.
13815         * regcache.h (regcache_raw_set_cached_value): Remove.
13816         (reg_buffer_rw): New class.
13817
13818 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13819
13820         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13821         readonly_detached_regcache.
13822         (dummy_frame_prev_register): Use regcache->cooked_read.
13823         * frame.c (frame_save_as_regcache): Change return type.
13824         (frame_pop): Update.
13825         * frame.h (frame_save_as_regcache): Update declaration.
13826         * inferior.h (get_infcall_suspend_state_regcache): Update
13827         declaration.
13828         * infrun.c (infcall_suspend_state) <registers>: use
13829         readonly_detached_regcache.
13830         (save_infcall_suspend_state): Don't use regcache_dup.
13831         (get_infcall_suspend_state_regcache): Change return type.
13832         * linux-fork.c (struct fork_info) <savedregs>: Change to
13833         readonly_detached_regcache.
13834         <pc>: New field.
13835         (fork_save_infrun_state): Don't use regcache_dup.
13836         (info_checkpoints_command): Adjust.
13837         * mi/mi-main.c (register_changed_p): Update declaration.
13838         (mi_cmd_data_list_changed_registers): Use
13839         readonly_detached_regcache.
13840         (register_changed_p): Change parameter type to
13841         readonly_detached_regcache.
13842         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13843         readonly_detached_regcache.
13844         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13845         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13846         New.
13847         (regcache::save): Move it to reg_buffer.
13848         (regcache::restore): Change parameter type.
13849         (regcache_dup): Remove.
13850         * regcache.h (reg_buffer) <save>: New method.
13851         (readonly_detached_regcache): New class.
13852         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13853         readonly_detached_regcache.
13854         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13855
13856 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13857
13858         * frame.c (frame_save_as_regcache): Use regcache method save.
13859         (frame_pop): Use regcache method restore.
13860         * infrun.c (restore_infcall_suspend_state): Likewise.
13861         * linux-fork.c (fork_load_infrun_state): Likewise.
13862         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13863         save.
13864         * regcache.c (regcache_save): Remove.
13865         (regcache::restore): More asserts.
13866         (regcache_cpy): Remove.
13867         * regcache.h (regcache_save): Remove the declaration.
13868         (regcache::restore): Move from private to public.
13869         Remove the friend declaration of regcache_cpy.
13870         (regcache_cpy): Remove declaration.
13871
13872 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13873
13874         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13875         parameter type to 'readable_regcache *'.
13876         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13877         * arm-tdep.c (arm_neon_quad_read): Likewise.
13878         (arm_pseudo_read): Likewise.
13879         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13880         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13881         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13882         * gdbarch.c: Re-generated.
13883         * gdbarch.h: Re-generated.
13884         * gdbarch.sh (pseudo_register_read): Change parameter type to
13885         'readable_regcache *'.
13886         (pseudo_register_read_value): Likewise.
13887         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13888         (h8300_pseudo_register_read): Likewise.
13889         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13890         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13891         (i386_pseudo_register_read_into_value): Likewise.
13892         (i386_pseudo_register_read_value): Likewise.
13893         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13894         declaration.
13895         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13896         * m32c-tdep.c (m32c_raw_read): Likewise.
13897         (m32c_read_flg): Likewise.
13898         (m32c_banked_register): Likewise.
13899         (m32c_banked_read): Likewise.
13900         (m32c_sb_read): Likewise.
13901         (m32c_part_read): Likewise.
13902         (m32c_cat_read): Likewise.
13903         (m32c_r3r2r1r0_read): Likewise.
13904         (m32c_pseudo_register_read): Likewise.
13905         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13906         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13907         (mep_pseudo_cr64_read): Likewise.
13908         (mep_pseudo_register_read): Likewise.
13909         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13910         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13911         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13912         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13913         (regcache::cooked_read): Likewise.
13914         (regcache::cooked_read_value): Likewise.
13915         (regcache_cooked_read_signed):
13916         (regcache::cooked_read): Likewise.
13917         * regcache.h (readable_regcache): New class.
13918         (regcache): Inherit readable_regcache.  Move some methods to
13919         readable_regcache.
13920         * rl78-tdep.c (rl78_pseudo_register_read): Change
13921         parameter type to 'readable_regcache *'.
13922         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13923         (e500_pseudo_register_read): Change parameter type to
13924         'readable_regcache *'.
13925         (dfp_pseudo_register_read): Likewise.
13926         (vsx_pseudo_register_read): Likewise.
13927         (efpr_pseudo_register_read): Likewise.
13928         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13929         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13930         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13931         (sh64_pseudo_register_read): Likewise.
13932         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13933         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13934         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13935         (spu_pseudo_register_read): Likewise.
13936         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13937         (xtensa_pseudo_register_read): Likewise.
13938
13939 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13940
13941         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13942         (regcache::arch): Move it to reg_buffer::arch.
13943         (regcache::register_buffer): Likewise.
13944         (regcache::assert_regnum): Likewise.
13945         (regcache::num_raw_registers): Likewise.
13946         * regcache.h (reg_buffer): New class.
13947         (regcache): Inherit reg_buffer.
13948
13949 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13950
13951         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13952         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13953
13954 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13955
13956         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13957
13958 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13959
13960         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13961         (SFILES): Remove common/*.c files.
13962         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13963         * common/common.host: Add common reference.
13964         * configure.ac: Likewise.
13965         * configure: Regenerate.
13966
13967 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13968
13969         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13970         (block_initialize_namespace): Use new.
13971         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13972         (dwarf2_free_objfile): Use delete.
13973         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13974         (copy_type_recursive): Use new.
13975         * gdb_obstack.h (allocate_on_obstack): New.
13976
13977 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13978
13979         PR gdb/22849
13980         * inferior.c (exit_inferior_1): Reset inf->control.
13981
13982 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13983
13984         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13985         declaration.
13986
13987 2018-02-14  Pedro Alves  <palves@redhat.com>
13988
13989         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13990         frame_cleanup_after_sniffer on exception.
13991
13992 2018-02-14  Tom Tromey  <tom@tromey.com>
13993
13994         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13995         const.
13996         (solib_bfd_open): Make pathname const.
13997         * solib.c (solib_bfd_open): Make pathname const.
13998         * solib-spu.c (spu_bfd_fopen): Make name const.
13999         (spu_bfd_open): Make pathname const.
14000         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14001         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14002
14003 2018-02-14  Tom Tromey  <tom@tromey.com>
14004
14005         * symfile.c (symfile_bfd_open): Update.
14006         * source.h (openp, source_full_path_of, find_and_open_source):
14007         Change argument type to unique_xmalloc_ptr.
14008         * source.c (openp): Take a unique_xmalloc_ptr.
14009         (source_full_path_of, find_and_open_source): Likewise.
14010         (open_source_file, symtab_to_fullname): Update.
14011         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14012         unique_xmalloc_ptr.
14013         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14014         (exec_file_find): Update.
14015         * psymtab.c (psymtab_to_fullname): Update.
14016         * nto-tdep.h (nto_find_and_open_solib): Update.
14017         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14018         unique_xmalloc_ptr.
14019         * exec.c (exec_file_attach): Update.
14020         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14021         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14022
14023 2018-02-14  Tom Tromey  <tom@tromey.com>
14024
14025         * solib.c: Include source.h.
14026         * nto-tdep.c: Include source.h.
14027         * mi/mi-cmd-env.c: Include source.h.
14028         * infcmd.c: Include source.h.
14029         * exec.c: Include source.h.
14030         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14031         (add_path, directory_switch, source_path, init_source_path): Move
14032         declarations...
14033         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14034         (add_path, directory_switch, source_path, init_source_path):
14035         ...here.
14036
14037 2018-02-14  Tom Tromey  <tom@tromey.com>
14038
14039         * solist.h (exec_file_find, solib_find): Return
14040         unique_xmalloc_ptr.
14041         (solib_bfd_fopen): Take a const char *.
14042         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14043         (exec_file_find, solib_find): Likewise.
14044         (solib_bfd_fopen): Do not take ownership of "pathname".
14045         (solib_bfd_open): Use unique_xmalloc_ptr.
14046         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14047         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14048         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14049         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14050
14051 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14052
14053         * ada-lang.c (name_match_type_from_name): Remove reference to
14054         ada_name_for_lookup in function's documentation.
14055         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14056
14057 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14058
14059         * defs.h (enum openp_flags): New enum.
14060         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14061         Move to enum openp_flags.
14062         (openp_flags): New enum flags.
14063         (openp): Change parameter type to openp_flags.
14064         * source.c (openp): Change parameter type to openp_flags.
14065         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14066         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14067
14068 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14069
14070         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14071         per-command.
14072
14073 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14074
14075         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14076         into...
14077         (class dwarf2_queue_guard): ...the destructor of this new class.
14078         (dw2_do_instantiate_symtab): Create instance of the new class
14079         dwarf2_queue_guard, remove cleanup.
14080
14081 2018-02-09  Tom Tromey  <tom@tromey.com>
14082
14083         * source.c (find_source_lines): Don't reference past the end of
14084         the vector.
14085
14086 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14087
14088         * remote.c (remote_btrace_maybe_reopen): Change error message.
14089         * btrace.c (btrace_enable): Likewise.
14090         (parse_xml_btrace): Likewise.
14091         (parse_xml_btrace_conf): Likewise.
14092
14093 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14094
14095         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14096         (linux_enable_pt, linux_enable_bts): Call
14097         diagnose_perf_event_open_fail.
14098
14099 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14100
14101         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14102         Remove parameter and change return type.  Update callers.  Move it.
14103         (linux_enable_bts, linux_enable_pt): Improve error message.
14104         (linux_enable_pt): Remove zero buffer size check.
14105         (linux_enable_btrace): Improve error messages.  Remove NULL return
14106         check.
14107
14108 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14109
14110         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14111         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14112         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14113         (linux_supports_pt, linux_supports_btrace): Remove.
14114         (linux_enable_bts): Call cpu_supports_bts.
14115         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14116         * remote.c (remote_supports_btrace): Remove.
14117         (init_remote_ops): Remove remote_supports_btrace.
14118         * target-delegates.c: Regenerated.
14119         * target.c (target_supports_btrace): Remove.
14120         * target.h (target_ops) <to_supports_btrace>: Remove
14121         (target_supports_btrace): Remove.
14122         * x86-linux-nat.c (x86_linux_create_target): Remove
14123         linux_supports_btrace.
14124
14125 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14126
14127         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14128         btrace failed.
14129         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14130         exception and use message in own exception.
14131
14132 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14133
14134         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14135         (perf_event_pt_event_type): Use gdb_file_up.
14136         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14137         scoped_fd, and scoped_mmap.
14138
14139 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14140
14141         * common/scoped_mmap.h: New.
14142         * unittests/scoped_mmap-selftest.c: New.
14143         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14144         unittests/scoped_mmap-selftest.c.
14145
14146 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14147
14148         * common/scoped_fd.h: New.
14149         * unittests/scoped_fd-selftest.c: New.
14150         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14151         unittests/scoped_fd-selftest.c.
14152
14153 2018-02-09  Tom Tromey  <tom@tromey.com>
14154
14155         * auto-load.c (auto_load_section_scripts): Use
14156         gdb::unique_xmalloc_ptr.
14157
14158 2018-02-09  Tom Tromey  <tom@tromey.com>
14159
14160         * auto-load.c (execute_script_contents): Use std::string.
14161
14162 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14163
14164         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14165         Python function, rather than a new command.
14166
14167 2018-02-08  Tom Tromey  <tom@tromey.com>
14168
14169         * solib.c (solib_find_1): Use std::string.
14170         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14171
14172 2018-02-08  Tom Tromey  <tom@tromey.com>
14173
14174         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14175
14176 2018-02-08  Tom Tromey  <tom@tromey.com>
14177
14178         * source.c (find_source_lines): Use gdb::def_vector.
14179
14180 2018-02-08  Tom Tromey  <tom@tromey.com>
14181
14182         * macrocmd.c (struct temporary_macro_definition): New.
14183         (macro_define_command): Use temporary_macro_definition.  Remove
14184         cleanups.
14185         (free_macro_definition_ptr): Remove.
14186
14187 2018-02-08  Tom Tromey  <tom@tromey.com>
14188
14189         * macroexp.c (maybe_expand): Use std::string.
14190
14191 2018-02-08  Tom Tromey  <tom@tromey.com>
14192
14193         * macroexp.c (struct macro_buffer): Add initializers for some
14194         members.
14195         (init_buffer, init_shared_buffer, free_buffer)
14196         (free_buffer_return_text): Remove.
14197         (macro_buffer): New constructors.
14198         (~macro_buffer): New destructor.
14199         (macro_buffer::set_shared): New method.
14200         (macro_buffer::resize_buffer, macro_buffer::appendc)
14201         (macro_buffer::appendmem): Now methods, not free functions.
14202         (set_token, append_tokens_without_splicing, stringify)
14203         (macro_stringify): Update.
14204         (gather_arguments): Change return type.  Remove argc_p argument,
14205         add args_ptr argument.  Use std::vector.
14206         (substitute_args): Remove argc argument.  Accept std::vector.
14207         (expand): Update.  Use std::vector.
14208         (scan, macro_expand, macro_expand_next): Update.
14209
14210 2018-02-08  Tom Tromey  <tom@tromey.com>
14211
14212         * symtab.c (default_collect_symbol_completion_matches_break_on):
14213         Use unique_xmalloc_ptr.
14214         * macroscope.h: (sal_macro_scope, user_macro_scope)
14215         (default_macro_scope): Return unique_xmalloc_ptr.
14216         * macroscope.c (sal_macro_scope, user_macro_scope)
14217         (default_macro_scope): Return unique_xmalloc_ptr.
14218         * macroexp.h (macro_expand, macro_expand_once): Return
14219         unique_xmalloc_ptr.
14220         * macroexp.c (macro_expand, macro_expand_once): Return
14221         unique_xmalloc_ptr.
14222         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14223         (info_macro_command, info_macros_command): Use
14224         unique_xmalloc_ptr.
14225         * compile/compile-c-support.c (write_macro_definitions): Use
14226         unique_xmalloc_ptr.
14227         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14228
14229 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14230
14231         * value.c (value_static_field): Assign field type instead of
14232         containing type when returning an optimized out value.
14233
14234 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14235
14236         * ft32-tdep.c (ft32_read_pc): Remove.
14237         (ft32_write_pc): Remove.
14238         (ft32_gdbarch_init): Update.
14239         * m32r-tdep.c (m32r_read_pc): Remove.
14240         (m32r_gdbarch_init): Update.
14241         * mep-tdep.c (mep_read_pc): Remove.
14242         (mep_gdbarch_init): Update.
14243         * microblaze-tdep.c (microblaze_write_pc): Remove.
14244         (microblaze_gdbarch_init): Update.
14245         * mn10300-tdep.c (mn10300_read_pc): Remove.
14246         (mn10300_write_pc): Remove.
14247         (mn10300_gdbarch_init): Update.
14248         * moxie-tdep.c (moxie_read_pc): Remove.
14249         (moxie_write_pc): Remove.
14250         (moxie_gdbarch_init): Update.
14251
14252 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14253
14254         * expprint.c (print_subexp_standard): Handle
14255         OP_F77_UNDETERMINED_ARGLIST.
14256         (dump_subexp_body_standard): Likewise.
14257
14258 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14259
14260         * target-descriptions.c (tdesc_element_visitor) Add empty
14261         implementations.
14262         (tdesc_type): Move make_gdb_type from here.
14263         (tdesc_type_builtin): Likewise.
14264         (tdesc_type_vector): Likewise.
14265         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14266         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14267         (make_gdb_type_union): Likewise.
14268         (make_gdb_type_flags): Likewise.
14269         (make_gdb_type_enum): Likewise.
14270         (make_gdb_type): New function.
14271         (tdesc_register_type): Use static make_gdb_type.
14272
14273 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14274
14275         * infcmd.c (default_print_one_register_info): Align natural-format
14276         column values consistently one under another.
14277         (pad_to_column): New function.
14278
14279 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14280
14281         * dwarf2read.c (dwarf2_physname): Move commment.
14282
14283 2018-02-01  Leszek Swirski  <leszeks@google.com>
14284
14285         * varobj.c (varobj_formatted_print_options): Allow recursive
14286         pretty printing if pretty printing is enabled.
14287
14288 2018-02-01  Leszek Swirski  <leszeks@google.com>
14289
14290         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14291         names after a structop as a filename.
14292
14293 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14294
14295         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14296         (arm_record_coproc_data_proc): Likewise.
14297
14298 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14299
14300         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14301
14302 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14303
14304         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14305         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14306
14307 2018-01-31  Pedro Alves  <palves@redhat.com>
14308
14309         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14310         * inflow.c (child_terminal_save_inferior): Wrap reference to
14311         tcgetpgrp in HAVE_TERMIOS_H.
14312         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14313         _WIN32.
14314         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14315         always iterate over all inferiors.
14316         (gdbsim_cntrl_c): Adjust.
14317         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14318
14319 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14320
14321         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14322         index type is objfile-owned if the element type is as well.
14323
14324 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14325
14326         GDB 8.1 released.
14327
14328 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14329
14330         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14331         "features/s390x-linux64.c".
14332         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14333         s390_linux32 and s390x_linux64.
14334         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14335         default tdesc.
14336         * s390-tdep.c: Include "features/s390-linux32.c" and
14337         "features/s390x-linux64.c".
14338         (s390_tdesc_valid): Add check for tdesc_has_registers.
14339         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14340         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14341         tdesc_s390x_linux64.
14342         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14343         tdesc_s390x_linux64 to...
14344         * s390-tdep.h: ...here.
14345
14346 2018-01-30  Pedro Alves  <palves@redhat.com>
14347
14348         PR gdb/13211
14349         * config.in, configure: Regenerate.
14350         * configure.ac: Check for getpgid.
14351         * go32-nat.c (go32_pass_ctrlc): New.
14352         (go32_target): Install it.
14353         * inf-child.c (inf_child_target): Install
14354         child_terminal_save_inferior, child_pass_ctrlc and
14355         child_interrupt.
14356         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14357         (inf_ptrace_target): No longer install it.
14358         * infcmd.c (interrupt_target_1): Adjust.
14359         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14360         (child_interrupt): Declare.
14361         (inferior::terminal_state): New.
14362         * inflow.c (struct terminal_info): Update comments.
14363         (inferior_process_group): Delete.
14364         (terminal_is_ours): Delete.
14365         (gdb_tty_state): New.
14366         (child_terminal_init): Adjust.
14367         (is_gdb_terminal, sharing_input_terminal_1)
14368         (sharing_input_terminal): New functions.
14369         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14370         Set the process's actual process group in the foreground if
14371         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14372         mark terminal as the inferior's if not sharing GDB's terminal.
14373         Don't check attach_flag.
14374         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14375         pass down a target_terminal_state.
14376         (child_terminal_save_inferior): New, factored out from ...
14377         (child_terminal_ours_1): ... this.  Handle
14378         target_terminal_state::is_ours_for_output.
14379         (child_interrupt, child_pass_ctrlc): New.
14380         (inflow_inferior_exit): Clear the inferior's terminal_state.
14381         (copy_terminal_info): Copy the inferior's terminal state.
14382         (_initialize_inflow): Remove reference to terminal_is_ours.
14383         * inflow.h (inferior_process_group): Delete.
14384         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14385         * procfs.c (procfs_target): Don't install procfs_interrupt.
14386         (procfs_interrupt): Delete.
14387         * remote.c (remote_serial_quit_handler): Adjust.
14388         (remote_interrupt): Remove ptid parameter.  Adjust.
14389         * target-delegates.c: Regenerate.
14390         * target.c: Include "terminal.h".
14391         (target_terminal::terminal_state): Rename to ...
14392         (target_terminal::m_terminal_state): ... this.
14393         (target_terminal::init): Adjust.
14394         (target_terminal::inferior): Adjust to per-inferior
14395         terminal_state.
14396         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14397         (target_terminal::ours, target_terminal::ours_for_output): Use
14398         target_terminal_is_ours_kind.
14399         (target_interrupt): Remove ptid parameter.  Adjust.
14400         (default_target_pass_ctrlc): Adjust.
14401         * target.h (target_ops::to_terminal_save_inferior): New field.
14402         (target_ops::to_interrupt): Remove ptid_t parameter.
14403         (target_interrupt): Remove ptid_t parameter.  Update comment.
14404         (target_pass_ctrlc): Update comment.
14405         * target/target.h (target_terminal_state): New scoped enum,
14406         factored out of ...
14407         (target_terminal::terminal_state): ... here.
14408         (target_terminal::inferior): Update comments.
14409         (target_terminal::restore_inferior): New.
14410         (target_terminal::is_inferior, target_terminal::is_ours)
14411         (target_terminal::is_ours_for_output): Adjust.
14412         (target_terminal::scoped_restore_terminal_state): Adjust to
14413         rename, and call restore_inferior() instead of inferior().
14414         (target_terminal::scoped_restore_terminal_state::m_state): Change
14415         type.
14416         (target_terminal::terminal_state): Rename to ...
14417         (target_terminal::m_terminal_state): ... this and change type.
14418
14419 2018-01-30  Pedro Alves  <palves@redhat.com>
14420
14421         * linux-nat.c (wait_for_signal): New function.
14422         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14423         directly.
14424         (async_terminal_is_ours)
14425         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14426         (linux_nat_add_target): Don't override
14427         to_terminal_inferior/to_terminal_ours.
14428
14429 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14430
14431         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14432
14433 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14434
14435         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14436         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14437         dwarf2_per_objfile_free here.
14438         (dwarf2_per_objfile_free): Remove.
14439         (_initialize_dwarf2_read): Don't register
14440         dwarf2_per_objfile_free as a registry cleanup.
14441
14442 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14443
14444         Avoid compilation errors in MinGW native builds
14445
14446         The error is triggered by including python-internal.h, and the
14447         error message is:
14448
14449              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14450                       from build-gnulib/import/math.h:27,
14451                       from d:/usr/Python26/include/pyport.h:235,
14452                       from d:/usr/Python26/include/Python.h:58,
14453                       from python/python-internal.h:94,
14454                       from python/py-arch.c:24:
14455              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14456         using ::hypot;
14457                 ^~~~~
14458
14459         This happens because Python headers define 'hypot' to expand t
14460         '_hypot' in the Windows builds.
14461         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14462         'hypoth'.  This avoids a compilation error.
14463
14464 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14465
14466         * MAINTAINERS (Write After Approval): Fix ordering.
14467
14468 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14469
14470         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14471
14472 2018-01-26  Alan Modra  <amodra@gmail.com>
14473
14474         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14475         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14476         Remove nop.  Make const.  Comment.
14477         (powerpc32_plt_stub_so_2): New.
14478         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14479         Correct count.  Update uses.
14480         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14481         Move common code reading PLT entry word.  Correct
14482         powerpc32_plt_stub PLT address calculation.
14483         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14484         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14485         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14486         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14487         (ppc64_standard_linkage8): Likewise.
14488         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14489         Correct insns description.
14490         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14491
14492 2018-01-24  Pedro Alves  <palves@redhat.com>
14493
14494         GCC PR libstdc++/83906
14495         * gdbtypes.c (operator==(const dynamic_prop &,
14496         const dynamic_prop &)): New.
14497         (operator==(const range_bounds &, const range_bounds &)): New.
14498         (check_types_equal): Use them instead of memcmp.
14499         * gdbtypes.h (operator==(const dynamic_prop &,
14500         const dynamic_prop &)): Declare.
14501         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14502         (operator==(const range_bounds &, const range_bounds &)): Declare.
14503         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14504
14505 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14506
14507         * s390-linux-tdep.c (s390_record_address_mask)
14508         (s390_record_calc_disp_common, s390_record_calc_disp)
14509         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14510         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14511         (s390_process_record): Move to s390-tdep.c.
14512         (s390_linux_init_abi_any): Adjust.
14513         * s390-tdep.c (s390_record_address_mask)
14514         (s390_record_calc_disp_common, s390_record_calc_disp)
14515         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14516         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14517         (s390_process_record): Moved from s390-linux-tdep.c
14518         (s390_gdbarch_init): Adjust.
14519
14520 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14521
14522         * s390-linux-nat.c (s390-tdep.h): New include.
14523         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14524         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14525         (ALLDEPFILES): Add s390-tdep.c.
14526         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14527         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14528         * s390-tdep.h: ...this.  New file.
14529         * s390-linux-tdep.c (s390-tdep.h): New include.
14530         (_initialize_s390_tdep): Rename to...
14531         (_initialize_s390_linux_tdep): ...this and adjust.
14532         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14533         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14534         s390-tdep.h.
14535         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14536         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14537         (s390_is_partial_instruction, s390_software_single_step)
14538         (is_non_branch_ril, s390_displaced_step_copy_insn)
14539         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14540         (s390_prologue_data, s390_addr, s390_store, s390_load)
14541         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14542         (s390_register_call_saved, s390_guess_tracepoint_registers)
14543         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14544         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14545         (s390_pseudo_register_name, s390_pseudo_register_type)
14546         (s390_pseudo_register_read, s390_pseudo_register_write)
14547         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14548         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14549         (s390_addr_bits_remove, s390_address_class_type_flags)
14550         (s390_address_class_type_flags_to_name)
14551         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14552         (s390_function_arg_float, s390_function_arg_vector)
14553         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14554         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14555         (s390_frame_align, s390_register_return_value, s390_return_value)
14556         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14557         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14558         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14559         (s390_trad_frame_prev_register, s390_unwind_cache)
14560         (s390_prologue_frame_unwind_cache)
14561         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14562         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14563         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14564         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14565         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14566         (s390_frame_base_address, s390_local_base_address)
14567         (s390_frame_base, s390_gcc_target_options)
14568         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14569         (s390_validate_reg_range, s390_tdesc_valid)
14570         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14571         * s390-tdep.c: ...this.  New file.
14572
14573 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14574
14575         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14576         (s390_process_record, s390_gdbarch_tdep_alloc)
14577         (s390_linux_init_abi_any): Use/set new hook.
14578
14579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14580
14581         * s390-linux-tdep.c (osabi.h): New include.
14582         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14583         (s390_linux_init_abi_any): New functions.
14584         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14585
14586 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14587
14588         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14589         tdesc_has_registers check
14590
14591 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14592
14593         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14594         (s390_validate_reg_range): New macro.
14595         (s390_gdbarch_init): Adjust.
14596
14597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14598
14599         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14600         (s390_gdbarch_tdep_alloc): Adjust.
14601         (s390_gdbarch_init): Adjust.
14602
14603 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14604
14605         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14606         <have_tdb>: Change type to bool.
14607         (s390_gdbarch_tdep_alloc): Adjust.
14608         (s390_gdbarch_init): Adjust.
14609
14610 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14611
14612         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14613         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14614         (s390_gdbarch_tdep_alloc): New function.
14615         (s390_gdbarch_init): Allocate tdep at start and use its fields
14616         instead of separate variables.
14617
14618 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14619
14620         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14621         when looking for cached gdbarch and add comment for remaining.
14622
14623 2018-01-22  Pedro Alves  <palves@redhat.com>
14624             Sergio Durigan Junior  <sergiodj@redhat.com>
14625
14626         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14627         case.
14628
14629 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14630
14631         * MAINTAINERS: Update my company e-mail address.
14632
14633 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14634
14635         * regcache.c (cooked_write_test): New function.
14636         (_initialize_regcache): Register the test.
14637
14638 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14639
14640         * ia64-tdep.c (ia64_pseudo_register_read): Call
14641         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14642         * m32c-tdep.c (m32c_cat_read): Likewise.
14643         (m32c_r3r2r1r0_read): Likewise.
14644         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14645         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14646
14647 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14648
14649         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14650         method raw_read instead of regcache_raw_read.
14651         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14652         * arm-tdep.c (arm_neon_quad_read): Likewise.
14653         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14654         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14655         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14656         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14657         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14658         (i386_pseudo_register_read_into_value): Likewise.
14659         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14660         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14661         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14662         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14663         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14664         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14665         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14666         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14667         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14668
14669 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14670
14671         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14672         * configure.tgt: Remove target mt.
14673         * mt-tdep.c: Remove.
14674         * regcache.c (cooked_read_test): Remove the check for mt.
14675
14676 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14677
14678         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14679         instead of gdbarch_pseudo_register_read_value.
14680
14681 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14682
14683         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14684         language is Ada.
14685
14686 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14687
14688         * linespec.c (create_sals_line_offset): Remove code that preserved
14689         the symtab_and_line's line number.
14690
14691 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14692
14693         * varobj.c (varobj_create): Don't set valid_block when creating a
14694         floating varobj.
14695
14696 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14697
14698         * varobj.c (varobj_create): Remove out of date comment.
14699
14700 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14701
14702         PR mi/20395
14703         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14704         updating innermost block.
14705         * parse.c (innermost_block_tracker::update): Take extra type
14706         parameter, and check types match before updating innermost block.
14707         (write_dollar_variable): Update innermost block for registers.
14708         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14709         (innermost_block_tracker::innermost_block_tracker): Initialise
14710         m_types member.
14711         (innermost_block_tracker::reset): Take type parameter.
14712         (innermost_block_tracker::update): Take type parameter, and pass
14713         type through as needed.
14714         (innermost_block_tracker::m_types): New member.
14715         * varobj.c (varobj_create): Pass type when reseting innermost
14716         block.
14717
14718 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14719
14720         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14721         * ada-lang.c (resolve_subexp): Likewise.
14722         * breakpoint.c (set_breakpoint_condition) Likewise.
14723         (watch_command_1) Likewise.
14724         * c-exp.y (variable): Likewise.
14725         * d-exp.y (PrimaryExpression): Likewise.
14726         * f-exp.y (variable): Likewise.
14727         * go-exp.y (variable): Likewise.
14728         * m2-exp.y (variable): Likewise.
14729         * objfiles.c (objfile::~objfile): Likewise.
14730         * p-exp.y (variable): Likewise.
14731         * parse.c (innermost_block): Change type.
14732         * parser-defs.h (class innermost_block_tracker): New.
14733         (innermost_block): Change to innermost_block_tracker.
14734         * printcmd.c (display_command): Switch to innermost_block API.
14735         (do_one_display): Likewise.
14736         * rust-exp.y (do_one_display): Likewise.
14737         * symfile.c (clear_symtab_users): Likewise.
14738         * varobj.c (varobj_create): Switch to innermost_block API, replace
14739         use of innermost_block with block stored on varobj object.
14740
14741 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14742
14743         * expression.h (innermost_block): Remove declaration.
14744         * varobj.c: Add 'parser-defs.h' include.
14745
14746 2018-01-19  Tom Tromey  <tom@tromey.com>
14747
14748         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14749         symbols in the static and global blocks.
14750
14751 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14752
14753         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14754         gdb_ptrace.h, and move including gdb_wait.h ...
14755         * nat/linux-ptrace.h: ... to here.
14756
14757 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14758
14759         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14760         inf_ptrace_detach_success.
14761         (inf_ptrace_detach_success): Add inferior parameter, use it
14762         instead of inferior_ptid, pass it to detach_inferior.
14763         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14764         parameter.
14765         * inferior.c (detach_inferior): Add overload that takes an
14766         inferior object.
14767         * inferior.h (detach_inferior): Likewise.
14768         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14769         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14770         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14771
14772 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14773
14774         * target.h (struct target_ops) <to_detach>: Add inferior
14775         parameter.
14776         (target_detach): Likewise.
14777         * target.c (dispose_inferior): Pass inferior down.
14778         (target_detach): Pass inferior down.  Assert that it is equal to
14779         the current inferior.
14780         * aix-thread.c (aix_thread_detach): Pass inferior down.
14781         * corefile.c (core_file_command): Pass current_inferior() down.
14782         * corelow.c (core_detach): Add inferior parameter.
14783         * darwin-nat.c (darwin_detach): Likewise.
14784         * gnu-nat.c (gnu_detach): Likewise.
14785         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14786         * infcmd.c (detach_command): Pass current_inferior() down to
14787         target_detach.
14788         * infrun.c (follow_fork_inferior): Pass parent_inf to
14789         target_detach.
14790         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14791         target_detach.
14792         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14793         * linux-thread-db.c (thread_db_detach): Likewise.
14794         * nto-procfs.c (procfs_detach): Likewise.
14795         * procfs.c (procfs_detach): Likewise.
14796         * record.c (record_detach): Likewise.
14797         * record.h (struct inferior): Forward-declare.
14798         (record_detach): Add inferior parameter.
14799         * remote-sim.c (gdbsim_detach): Likewise.
14800         * remote.c (remote_detach_1): Likewise.
14801         (remote_detach): Likewise.
14802         (extended_remote_detach): Likewise.
14803         * sol-thread.c (sol_thread_detach): Likewise.
14804         * target-debug.h (target_debug_print_inferior_p): New macro.
14805         * target-delegates.c: Re-generate.
14806         * top.c (kill_or_detach): Pass inferior down to target_detach.
14807         * windows-nat.c (windows_detach): Add inferior parameter.
14808
14809 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14810
14811         * target.h (struct target_ops) <to_detach>: Remove args
14812         parameter.
14813         (target_detach): Likewise.
14814         * target.c (dispose_inferior): Adjust.
14815         (target_detach): Remove args parameter, adjust.
14816         * aix-thread.c (aix_thread_detach): Adjust.
14817         * corefile.c (core_file_command): Adjust.
14818         * corelow.c (core_detach): Adjust.
14819         * darwin-nat.c (darwin_detach): Adjust.
14820         * gnu-nat.c (gnu_detach): Adjust.
14821         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14822         * infcmd.c (detach_command): Adjust
14823         * infrun.c (follow_fork_inferior): Adjust.
14824         (handle_vfork_child_exec_or_exit): Adjust.
14825         * linux-fork.c (linux_fork_detach): Remove args parameter.
14826         * linux-fork.h (linux_fork_detach): Likewise.
14827         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14828         * linux-thread-db.c (thread_db_detach): Likewise.
14829         * nto-procfs.c (procfs_detach): Likewise.
14830         * procfs.c (procfs_detach): Likewise.
14831         (do_detach): Remove signo parameter.
14832         * record.c (record_detach): Remove args parameter.
14833         * record.h (record_detach): Likewise.
14834         * remote-sim.c (gdbsim_detach): Likewise.
14835         * remote.c (remote_detach_1): Likewise.
14836         (remote_detach): Likewise.
14837         (extended_remote_detach): Likewise.
14838         * sol-thread.c (sol_thread_detach): Likewise.
14839         * target-delegates.c: Re-generate.
14840         * top.c (struct qt_args) <args>: Remove field.
14841         (kill_or_detach): Don't pass args.
14842         (quit_force): Don't set args.
14843         * windows-nat.c (windows_detach): Remove args parameter.
14844
14845 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14846
14847         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14848         (arm_linux_init_abi): Install it.
14849
14850 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14851
14852         * osabi.c (gdb_osabi_names): Extend the regexp for
14853         arm-linux-gnueabihf.
14854
14855 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14856
14857         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14858         m_abbrevs.
14859         (abbrev_table::add_abbrev): Update.
14860         (abbrev_table::lookup_abbrev): Update.
14861
14862 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14863
14864         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14865
14866 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14867
14868         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14869         to "std::string".
14870
14871 2018-01-17  Tom Tromey  <tom@tromey.com>
14872
14873         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14874
14875 2018-01-17  Tom Tromey  <tom@tromey.com>
14876
14877         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14878         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14879         (create_array_type_with_stride): Update.
14880         * dwarf2read.c (set_die_type): Update.
14881
14882 2018-01-17  Tom Tromey  <tom@tromey.com>
14883
14884         * dwarf2read.c (delayed_method_info): Remove typedef.
14885         (dwarf2_cu::method_info): Now a std::vector.
14886         (add_to_method_list): Update.
14887         (free_delayed_list): Remove.
14888         (compute_delayed_physnames): Update.
14889         (process_full_comp_unit, process_full_type_unit): Clear the method
14890         list.  Remove cleanups.
14891         (psymtab_include_file_name): Add name_holder parameter.  Use
14892         unique_xmalloc_ptr.
14893         (dwarf_decode_lines): Update.
14894
14895 2018-01-17  Tom Tromey  <tom@tromey.com>
14896             Simon Marchi  <simon.marchi@ericsson.com>
14897
14898         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14899         (dwarf2_per_objfile::free_cached_comp_units)
14900         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14901         (init_cutu_and_read_dies_no_follow): Update.
14902         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14903         (dwarf2_cu::~dwarf2_cu): New.
14904         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14905         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14906
14907 2018-01-17  Tom Tromey  <tom@tromey.com>
14908             Simon Marchi  <simon.marchi@ericsson.com>
14909
14910         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14911         (struct die_reader_specs) <abbrev_table>: New member.
14912         (struct abbrev_table): Add constructor.
14913         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14914         <abbrev_obstack>: Now an auto_obstack.
14915         (abbrev_table_up): New typedef.
14916         (init_cu_die_reader): Add abbrev_table parameter.
14917         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14918         Add result_dwo_abbrev_table.
14919         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14920         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14921         Update.
14922         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14923         parameter.
14924         (skip_children): Update.
14925         (abbrev_table::alloc_abbrev): Rename from
14926         abbrev_table_alloc_abbrev.
14927         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14928         (abbrev_table::lookup_abbrev): Rename from
14929         abbrev_table_lookup_abbrev.
14930         (abbrev_table_read_table): Return abbrev_table_up.
14931         (abbrev_table_free, abbrev_table_free_cleanup)
14932         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14933         (load_partial_dies): Update.
14934
14935 2018-01-17  Tom Tromey  <tom@tromey.com>
14936
14937         * dwarf2read.c (dwarf2_compute_name): Update comment.
14938         (read_func_scope, read_variable): Update.
14939         (new_symbol): Remove.
14940         (new_symbol_full): Rename to new_symbol.
14941
14942 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14943
14944         PR gdb/16577
14945         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14946         a warning instead of throwing an error, set section size to 0 and return
14947         NULL.
14948         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14949
14950 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14951
14952         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14953         std::string.
14954         (linux_ptrace_attach_fail_reason_string): Likewise.
14955         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14956         Likewise.
14957         (linux_ptrace_attach_fail_reason_string): Likewise.
14958         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14959
14960 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14961
14962         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14963
14964 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14965
14966         PR gdb/21559
14967         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14968         checking for fs_base/gs_base fields in struct user_regs_struct.
14969         * configure: Regenerate.
14970
14971 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14972
14973         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14974         function.
14975         (aarch64_linux_init_abi): Install it to gdbarch hook
14976         gcc_target_options.
14977
14978 2018-01-15  Pedro Alves  <palves@redhat.com>
14979
14980         * common/signals-state-save-restore.c
14981         (save_original_signals_state): Fix typos.
14982
14983 2017-01-12  Tom Tromey  <tom@tromey.com>
14984             Sergio Durigan Junior  <sergiodj@redhat.com>
14985
14986         * Makefile.in (install-only): Install gdb-add-index.
14987
14988 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14989
14990         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14991
14992 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14993
14994         * infrun.c (keep_going_pass_signal): Clear step-over info when
14995         insert_breakpoints fails.
14996
14997 2018-01-11  Pedro Alves  <palves@redhat.com>
14998
14999         PR gdb/22583
15000         * infrun.c (resume): Rename to ...
15001         (resume_1): ... this.
15002         (resume): Reimplement as wrapper around resume_1.
15003
15004 2018-01-11  Pedro Alves  <palves@redhat.com>
15005
15006         PR remote/22597
15007         * remote.c (remote_parse_stop_reply): Default to the last-set
15008         general thread instead of to 'magic_null_ptid'.
15009
15010 2018-01-10  Pedro Alves  <palves@redhat.com>
15011
15012         * language.h (language_get_symbol_name_matcher): Rename ...
15013         (get_symbol_name_matcher): ... this.
15014         * language.c (language_get_symbol_name_matcher): Ditto.
15015         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15016         callers adjusted.
15017
15018 2018-01-10  Pedro Alves  <palves@redhat.com>
15019
15020         PR gdb/22670
15021         * dwarf2read.c
15022         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15023         Adjust to use language_get_symbol_name_matcher instead of
15024         language_defn::la_get_symbol_name_matcher.
15025         * language.c (language_get_symbol_name_matcher): If in Ada mode
15026         and the lookup name is a verbatim match, return Ada's matcher.
15027         * language.h (language_get_symbol_name_matcher): Adjust comment.
15028         (ada_lookup_name_info::verbatim_p):: New method.
15029
15030 2018-01-10  Pedro Alves  <palves@redhat.com>
15031
15032         PR gdb/22670
15033         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15034         minsym's language is language_auto or language_cplus, pass down
15035         language_ada instead.
15036         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15037
15038 2018-01-10  Pedro Alves  <palves@redhat.com>
15039
15040         PR gdb/22670
15041         * minsyms.c (linkage_name_str): New function.
15042         (iterate_over_minimal_symbols): Use it.
15043
15044 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15045
15046         * NEWS: Document that 'info proc' now works on FreeBSD.
15047
15048 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15049
15050         * configure.ac: Check for kinfo_getfile in libutil.
15051         * configure: Regenerate.
15052         * config.in: Regenerate.
15053         * fbsd-nat.c: Include "fbsd-tdep.h".
15054         (fbsd_fetch_cmdline): New.
15055         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15056         rather than calling error.
15057         (fbsd_info_proc): New.
15058         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15059         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15060         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15061
15062 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15063
15064         * fbsd-nat.c (struct free_deleter): Remove.
15065         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15066
15067 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15068
15069         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15070         NULL for an empty pathname.
15071
15072 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15073
15074         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15075         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15076         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15077         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15078         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15079         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15080         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15081         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15082         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15083         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15084         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15085         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15086         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15087         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15088         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15089
15090 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15091
15092         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15093         (gnu_xfer_auxv): New function.
15094         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15095         TARGET_OBJECT_AUXV.
15096
15097 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15098             Simon Marchi  <simon.marchi@ericsson.com>
15099
15100         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15101         common/selftest.c.
15102         (COMMON_OBS): Remove selftest.o.
15103         * configure.ac: Append selftest-arch.c and common/selftest.c to
15104         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15105         * configure: Re-generated.
15106         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15107         GDB_SELF_TEST.
15108         (maintenance_info_selftests): Likewise.
15109
15110 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15111
15112         * ada-valprint.c (val_print_packed_array_elements): Use
15113         proper number of elements when printing an array indexed
15114         by an enumeration type.
15115
15116 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15117
15118         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15119         (dw2_get_file_names_reader): Adjust.
15120         (lookup_dwo_signatured_type): Adjust.
15121         (lookup_dwp_signatured_type): Adjust.
15122         (lookup_signatured_type): Adjust.
15123         (create_type_unit_group): Adjust.
15124         (get_type_unit_group): Adjust.
15125         (process_psymtab_comp_unit_reader): Adjust.
15126         (build_type_psymtabs_reader): Adjust.
15127         (scan_partial_symbols): Adjust.
15128         (add_partial_symbol): Adjust.
15129         (add_partial_subprogram): Adjust.
15130         (peek_die_abbrev): Adjust.
15131         (fixup_go_packaging): Adjust.
15132         (process_imported_unit_die): Adjust.
15133         (dwarf2_compute_name): Adjust.
15134         (dwarf2_physname): Adjust.
15135         (read_import_statement): Adjust.
15136         (handle_DW_AT_stmt_list): Adjust.
15137         (read_file_scope): Adjust.
15138         (read_func_scope): Adjust.
15139         (read_lexical_block_scope): Adjust.
15140         (read_call_site_scope): Adjust.
15141         (read_variable): Adjust.
15142         (dwarf2_rnglists_process): Adjust.
15143         (dwarf2_ranges_process): Adjust.
15144         (dwarf2_ranges_read): Adjust.
15145         (dwarf2_get_pc_bounds): Adjust.
15146         (dwarf2_record_block_ranges): Adjust.
15147         (dwarf2_add_field): Adjust.
15148         (dwarf2_add_member_fn): Adjust.
15149         (read_structure_type): Adjust.
15150         (process_structure_scope): Adjust.
15151         (read_enumeration_type): Adjust.
15152         (read_array_type): Adjust.
15153         (mark_common_block_symbol_computed): Adjust.
15154         (read_common_block): Adjust.
15155         (read_namespace_type): Adjust.
15156         (read_namespace): Adjust.
15157         (read_module_type): Adjust.
15158         (read_tag_pointer_type): Adjust.
15159         (read_tag_ptr_to_member_type): Adjust.
15160         (read_tag_string_type): Adjust.
15161         (read_subroutine_type): Adjust.
15162         (read_typedef): Adjust.
15163         (read_base_type): Adjust.
15164         (attr_to_dynamic_prop): Adjust.
15165         (read_subrange_type): Adjust.
15166         (read_unspecified_type): Adjust.
15167         (dwarf2_read_abbrevs): Adjust.
15168         (load_partial_dies): Adjust.
15169         (read_partial_die): Adjust.
15170         (find_partial_die): Adjust.
15171         (guess_partial_die_structure_name): Adjust.
15172         (fixup_partial_die): Adjust.
15173         (read_attribute_value): Adjust.
15174         (read_addr_index): Adjust.
15175         (read_addr_index_from_leb128): Adjust.
15176         (read_str_index): Adjust.
15177         (dwarf2_string_attr): Adjust.
15178         (get_debug_line_section): Adjust.
15179         (dwarf_decode_line_header): Adjust.
15180         (lnp_state_machine::check_line_address): Adjust.
15181         (dwarf_decode_lines_1): Adjust.
15182         (dwarf_decode_lines): Adjust.
15183         (dwarf2_start_symtab): Adjust.
15184         (var_decode_location): Adjust.
15185         (new_symbol_full): Adjust.
15186         (dwarf2_const_value_data): Adjust.
15187         (dwarf2_const_value_attr): Adjust.
15188         (dwarf2_const_value): Adjust.
15189         (die_type): Adjust.
15190         (die_containing_type): Adjust.
15191         (build_error_marker_type): Adjust.
15192         (lookup_die_type): Adjust.
15193         (guess_full_die_structure_name): Adjust.
15194         (anonymous_struct_prefix): Adjust.
15195         (determine_prefix): Adjust.
15196         (dwarf2_name): Adjust.
15197         (follow_die_ref_or_sig): Adjust.
15198         (follow_die_offset): Adjust.
15199         (follow_die_ref): Adjust.
15200         (follow_die_sig_1): Adjust.
15201         (follow_die_sig): Adjust.
15202         (get_signatured_type): Adjust.
15203         (get_DW_AT_signature_type): Adjust.
15204         (decode_locdesc): Adjust.
15205         (dwarf_decode_macros): Adjust.
15206         (cu_debug_loc_section): Adjust.
15207         (fill_in_loclist_baton): Adjust.
15208         (dwarf2_symbol_mark_computed): Adjust.
15209         (init_one_comp_unit): Don't assign
15210         dwarf2_cu::dwarf2_per_objfile.
15211         (set_die_type): Adjust.
15212
15213 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15214
15215         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15216         <dwarf2_per_objfile>: New field.
15217         (dwarf2_per_objfile): Remove global.
15218         (get_dwarf2_per_objfile): New function.
15219         (set_dwarf2_per_objfile): New function.
15220         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15221         dwarf2_per_objfile.
15222         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15223         (read_abbrev_offset): Likewise.
15224         (read_indirect_string): Likewise.
15225         (read_indirect_line_string): Likewise.
15226         (read_indirect_string_at_offset): Likewise.
15227         (read_indirect_string_from_dwz): Likewise.
15228         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15229         dwarf2_per_objfile.
15230         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15231         (create_all_comp_units): Change objfile parameter to
15232         dwarf2_per_objfile.
15233         (create_all_type_units): Likewise.
15234         (process_queue): Add dwarf2_per_objfile parameter.
15235         (read_and_check_comp_unit_head): Likewise.
15236         (lookup_dwo_unit_in_dwp): Likewise.
15237         (get_dwp_file): Likewise.
15238         (process_cu_includes): Likewise.
15239         (struct free_dwo_file_cleanup_data): New struct.
15240         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15241         set_dwarf2_per_objfile.
15242         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15243         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15244         context, adjust calls.
15245         (dw2_instantiate_symtab): Likewise.
15246         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15247         (dw2_get_cu): Likewise.
15248         (create_cu_from_index_list): Change objfile parameter to
15249         dwarf2_per_objfile.
15250         (create_cus_from_index_list): Get dwarf2_per_objfile from
15251         context, adjust calls.
15252         (create_cus_from_index): Likewise.
15253         (create_signatured_type_table_from_index): Change objfile
15254         parameter to dwarf2_per_objfile.
15255         (create_signatured_type_table_from_debug_names): Change objfile
15256         parameter to dwarf2_per_objfile.
15257         (create_addrmap_from_index): Likewise.
15258         (create_addrmap_from_aranges): Likewise.
15259         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15260         (dw2_setup): Remove.
15261         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15262         context.
15263         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15264         get_dwarf2_per_objfile.
15265         (dw2_forget_cached_source_info): Likewise.
15266         (dw2_map_symtabs_matching_filename): Likewise.
15267         (struct dw2_symtab_iterator) <index>: Remove.
15268         <dwarf2_per_objfile>: New field.
15269         (dw2_symtab_iter_init): Replace index parameter with
15270         dwarf2_per_objfile.
15271         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15272         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15273         (dw2_print_stats): Likewise.
15274         (dw2_dump): Likewise.
15275         (dw2_expand_symtabs_for_function): Likewise.
15276         (dw2_expand_all_symtabs): Likewise.
15277         (dw2_expand_symtabs_with_fullname): Likewise.
15278         (dw2_expand_marked_cus): Replace index and objfile parameters
15279         with dwarf2_per_objfile.
15280         (dw_expand_symtabs_matching_file_matcher): Add
15281         dwarf2_per_objfile parameter and adjust calls.
15282         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15283         adjust calls.
15284         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15285         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15286         adjust calls.
15287         (create_cus_from_debug_names_list): Replace objfile parameter
15288         with dwarf2_per_objfile and adjust calls.
15289         (create_cus_from_debug_names): Likewise.
15290         (dwarf2_read_debug_names): Likewise.
15291         (mapped_debug_names::namei_to_name): Adjust call.
15292         (dw2_debug_names_iterator::next): Likewise.
15293         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15294         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15295         (dw2_debug_names_dump): Likewise.
15296         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15297         (dw2_debug_names_expand_symtabs_matching): Likewise.
15298         (dwarf2_initialize_objfile): Likewise.
15299         (dwarf2_build_psymtabs): Likewise.
15300         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15301         this_cu.
15302         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15303         (read_and_check_comp_unit_head): Likewise.
15304         (read_abbrev_offset): Likewise.
15305         (create_debug_type_hash_table): Likewise.
15306         (create_debug_types_hash_table): Likewise.
15307         (create_all_type_units): Replace objfile parameter with
15308         dwarf2_per_objfile.
15309         (add_type_unit): Add dwarf2_per_objfile parameter.
15310         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15311         with dwarf2_per_objfile.
15312         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15313         (lookup_dwp_signatured_type): Likewise.
15314         (lookup_signatured_type): Likewise.
15315         (read_cutu_die_from_dwo): Likewise.
15316         (init_tu_and_read_dwo_dies): Likewise.
15317         (init_cutu_and_read_dies): Likewise.
15318         (init_cutu_and_read_dies_no_follow): Likewise.
15319         (allocate_type_unit_groups_table): Add objfile parameter.
15320         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15321         (get_type_unit_group): Likewise.
15322         (process_psymtab_comp_unit): Update call.
15323         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15324         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15325         (print_tu_stats): Likewise.
15326         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15327         in void* parameter.
15328         (build_type_psymtabs): Change objfile parameter to
15329         dwarf2_per_objfile.
15330         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15331         passed in void* parameter.
15332         (process_skeletonless_type_units): Change objfile parameter to
15333         dwarf2_per_objfile.
15334         (set_partial_user): Likewise.
15335         (dwarf2_build_psymtabs_hard): Likewise.
15336         (read_comp_units_from_section): Likewise.
15337         (create_all_comp_units): Likewise.
15338         (scan_partial_symbols): Update calls.
15339         (add_partial_symbol): Likewise.
15340         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15341         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15342         (process_queue): Add dwarf2_per_objfile parameter.
15343         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15344         (compute_compunit_symtab_includes): Likewise.
15345         (process_cu_includes): Add dwarf2_per_objfile parameter.
15346         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15347         (process_full_type_unit): Likewise.
15348         (process_imported_unit_die): Update call.
15349         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15350         (read_file_scope): Likewise.
15351         (allocate_dwo_file_hash_table): Add objfile parameter.
15352         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15353         (create_cus_hash_table): Likewise.
15354         (create_dwp_hash_table): Likewise.
15355         (create_dwo_unit_in_dwp_v1): Likewise.
15356         (create_dwp_v2_section): Likewise.
15357         (create_dwo_unit_in_dwp_v2): Likewise.
15358         (lookup_dwo_unit_in_dwp): Likewise.
15359         (try_open_dwop_file): Likewise.
15360         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15361         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15362         cleanup to include a reference to dwarf2_per_objfile.
15363         (open_dwp_file): Add dwarf2_per_objfile parameter.
15364         (open_and_init_dwp_file): Likewise.
15365         (get_dwp_file): Likewise.
15366         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15367         (queue_and_load_all_dwo_tus): Update call.
15368         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15369         data.
15370         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15371         (dwarf2_ranges_process): Likewise.
15372         (dwarf2_get_pc_bounds): Likewise.
15373         (mark_common_block_symbol_computed): Likewise.
15374         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15375         (dwarf2_read_abbrevs): Update call.
15376         (read_partial_die): Use dwarf2_per_objfile from cu.
15377         (find_partial_die): Likewise.
15378         (fixup_partial_die): Likewise.
15379         (read_attribute_value): Likewise.
15380         (read_indirect_string_at_offset_from): Add objfile parameter.
15381         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15382         parameter.
15383         (read_indirect_string_from_dwz): Add objfile parameter.
15384         (read_indirect_string): Add objfile parameter.
15385         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15386         (read_addr_index): Use dwarf2_per_objfile from cu.
15387         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15388         call dw2_setup.
15389         (read_str_index): Use dwarf2_per_objfile from cu.
15390         (get_debug_line_section): Likewise.
15391         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15392         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15393         (new_symbol_full): Use dwarf2_per_objfile from cu.
15394         (build_error_marker_type): Likewise.
15395         (lookup_die_type): Likewise.
15396         (determine_prefix): Likewise.
15397         (follow_die_offset): Likewise.
15398         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15399         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15400         (dwarf2_fetch_die_type_sect_off): Likewise.
15401         (dwarf2_get_die_type): Likewise.
15402         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15403         (get_signatured_type): Likewise.
15404         (get_DW_AT_signature_type): Likewise.
15405         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15406         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15407         (cu_debug_loc_section): Likewise.
15408         (fill_in_loclist_baton): Likewise.
15409         (dwarf2_symbol_mark_computed): Likewise.
15410         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15411         dwarf2_per_objfile.
15412         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15413         parameter.
15414         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15415         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15416         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15417         (set_die_type): Use dwarf2_free_objfile from cu.
15418         (get_die_type_at_offset): Likewise.
15419         (dwarf2_per_objfile_free): Don't assign global variable.
15420         (debug_names) <constructor>: Add dwarf2_per_objfile
15421         parameter, update m_debugstrlookup construction.
15422         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15423         parameter.
15424         <m_dwarf2_per_objfile>: New field.
15425         <lookup>: Use m_dwarf2_per_objfile.
15426         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15427         (psyms_seen_size): Likewise.
15428         (write_gdbindex): Replace objfile parameter with
15429         dwarf2_per_objfile.
15430         (write_debug_names): Likewise.
15431         (write_psymtabs_to_index): Likewise.
15432         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15433         calls.
15434
15435 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15436
15437         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15438         <dwarf2_per_objfile>: New field.
15439         (struct dwarf2_per_cu_data) <objfile>: Remove.
15440         <dwarf2_per_objfile>: New field.
15441         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15442         of objfile.
15443         (create_signatured_type_table_from_index): Likewise.
15444         (create_debug_type_hash_table): Likewise.
15445         (fill_in_sig_entry_from_dwo_entry): Likewise.
15446         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15447         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15448         objfile.
15449         (create_partial_symtab): Access objfile through
15450         dwarf2_per_objfile.
15451         (process_psymtab_comp_unit_reader): Likewise.
15452         (read_comp_units_from_section): Likewise.
15453         (scan_partial_symbols): Likewise.
15454         (add_partial_symbol): Likewise.
15455         (add_partial_subprogram): Likewise.
15456         (peek_die_abbrev): Likewise.
15457         (fixup_go_packaging): Likewise.
15458         (process_full_comp_unit): Likewise.
15459         (process_full_type_unit): Likewise.
15460         (process_imported_unit_die): Likewise.
15461         (dwarf2_compute_name): Likewise.
15462         (dwarf2_physname): Likewise.
15463         (read_import_statement): Likewise.
15464         (create_cus_hash_table): Assign dwarf2_physname instead of
15465         objfile.
15466         (read_func_scope): Access objfile through dwarf2_per_objfile.
15467         (read_lexical_block_scope): Likewise.
15468         (read_call_site_scope): Likewise.
15469         (read_variable): Likewise.
15470         (dwarf2_rnglists_process): Likewise.
15471         (dwarf2_ranges_process): Likewise.
15472         (dwarf2_ranges_read): Likewise.
15473         (dwarf2_record_block_ranges): Likewise.
15474         (dwarf2_add_field): Likewise.
15475         (dwarf2_add_member_fn): Likewise.
15476         (read_structure_type): Likewise.
15477         (process_structure_scope): Likewise.
15478         (read_enumeration_type): Likewise.
15479         (read_array_type): Likewise.
15480         (read_common_block): Likewise.
15481         (read_namespace_type): Likewise.
15482         (read_namespace): Likewise.
15483         (read_module_type): Likewise.
15484         (read_tag_pointer_type): Likewise.
15485         (read_tag_ptr_to_member_type): Likewise.
15486         (read_tag_string_type): Likewise.
15487         (read_subroutine_type): Likewise.
15488         (read_typedef): Likewise.
15489         (read_base_type): Likewise.
15490         (attr_to_dynamic_prop): Likewise.
15491         (read_subrange_type): Likewise.
15492         (read_unspecified_type): Likewise.
15493         (load_partial_dies): Likewise.
15494         (read_partial_die): Likewise.
15495         (find_partial_die): Likewise.
15496         (guess_partial_die_structure_name): Likewise.
15497         (fixup_partial_die): Likewise.
15498         (read_attribute_value): Likewise.
15499         (read_addr_index_from_leb128): Likewise.
15500         (dwarf2_read_addr_index): Likewise.
15501         (dwarf2_string_attr): Likewise.
15502         (lnp_state_machine::check_line_address): Likewise.
15503         (dwarf_decode_lines_1): Likewise.
15504         (dwarf_decode_lines): Likewise.
15505         (dwarf2_start_symtab): Likewise.
15506         (var_decode_location): Likewise.
15507         (new_symbol_full): Likewise.
15508         (dwarf2_const_value_data): Likewise.
15509         (dwarf2_const_value_attr): Likewise.
15510         (dwarf2_const_value): Likewise.
15511         (die_type): Likewise.
15512         (die_containing_type): Likewise.
15513         (lookup_die_type): Likewise.
15514         (guess_full_die_structure_name): Likewise.
15515         (anonymous_struct_prefix): Likewise.
15516         (dwarf2_name): Likewise.
15517         (follow_die_ref_or_sig): Likewise.
15518         (follow_die_offset): Likewise.
15519         (follow_die_ref): Likewise.
15520         (dwarf2_fetch_die_loc_sect_off): Likewise.
15521         (dwarf2_fetch_constant_bytes): Likewise.
15522         (dwarf2_fetch_die_type_sect_off): Likewise.
15523         (dwarf2_get_die_type): Likewise.
15524         (follow_die_sig): Likewise.
15525         (decode_locdesc): Likewise.
15526         (dwarf2_per_cu_objfile): Likewise.
15527         (dwarf2_per_cu_text_offset): Likewise.
15528         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15529         objfile.
15530         (set_die_type): Access objfile through
15531         dwarf2_per_objfile.
15532
15533 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15534
15535         * valprint.c (converted_character_d): Remove typedef.
15536         (DEF_VEC_O (converted_character_d)): Remove.
15537         (count_next_character): Use std::vector.
15538         (print_converted_chars_to_obstack): Likewise.
15539         (generic_printstr): Likewise.
15540
15541 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15542
15543         * xml-support.h (struct gdb_xml_value): Add constructor.
15544         <value>: Change type to unique_xmalloc_ptr.
15545         (gdb_xml_value_s): Remove typedef.
15546         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15547         (gdb_xml_element_start_handler): Change parameter type to
15548         std::vector.
15549         (xml_find_attribute): Likewise.
15550         * xml-support.c (xml_find_attribute): Change parameter type to
15551         std::vector and adjust.
15552         (gdb_xml_values_cleanup): Remove.
15553         (gdb_xml_parser::start_element): Adjust to std::vector.
15554         (xinclude_start_include): Change paraeter type to std::vector
15555         and adjust.
15556         * btrace.c (check_xml_btrace_version): Likewise.
15557         (parse_xml_btrace_block): Likewise.
15558         (parse_xml_btrace_pt_config_cpu): Likewise.
15559         (parse_xml_btrace_pt): Likewise.
15560         (parse_xml_btrace_conf_bts): Likewise.
15561         (parse_xml_btrace_conf_pt): Likewise.
15562         * memory-map.c (memory_map_start_memory): Likewise.
15563         (memory_map_start_property): Likewise.
15564         * osdata.c (osdata_start_osdata): Likewise.
15565         (osdata_start_item): Likewise.
15566         (osdata_start_column): Likewise.
15567         * remote.c (start_thread): Likewise.
15568         * solib-aix.c (library_list_start_library): Likewise.
15569         (library_list_start_list): Likewise.
15570         * solib-svr4.c (library_list_start_library): Likewise.
15571         (svr4_library_list_start_list): Likewise.
15572         * solib-target.c (library_list_start_segment): Likewise.
15573         (library_list_start_section): Likewise.
15574         (library_list_start_library): Likewise.
15575         (library_list_start_list): Likewise.
15576         * tracepoint.c (traceframe_info_start_memory): Likewise.
15577         (traceframe_info_start_tvar): Likewise.
15578         * xml-syscall.c (syscall_start_syscall): Likewise.
15579         * xml-tdesc.c (tdesc_start_target): Likewise.
15580         (tdesc_start_feature): Likewise.
15581         (tdesc_start_reg): Likewise.
15582         (tdesc_start_union): Likewise.
15583         (tdesc_start_struct): Likewise.
15584         (tdesc_start_flags): Likewise.
15585         (tdesc_start_enum): Likewise.
15586         (tdesc_start_field): Likewise.
15587         (tdesc_start_enum_value): Likewise.
15588         (tdesc_start_vector): Likewise.
15589
15590 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15591
15592         * extension.h (struct xmethod_worker) <clone>: Remove.
15593         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15594         Remove.
15595         (python_xmethod_worker::clone): Remove.
15596         * valops.c (find_overload_match): Use std::move instead of
15597         clone.
15598
15599 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15600
15601         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15602         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15603         <free_xmethod_worker_data>: Remove.
15604         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15605         <get_xmethod_arg_types>: Remove.
15606         <get_xmethod_result_type>: Remove.
15607         <invoke_xmethod>: Remove.
15608         * extension.c (new_xmethod_worker): Remove.
15609         (clone_xmethod_worker): Remove.
15610         (get_matching_xmethod_workers): Return void, pass std::vector by
15611         pointer.
15612         (get_xmethod_arg_types): Rename to...
15613         (xmethod_worker::get_arg_types): ... this, and adjust.
15614         (get_xmethod_result_type): Rename to...
15615         (xmethod_worker::get_result_type): ... this, and adjust.
15616         (invoke_xmethod): Remove.
15617         (free_xmethod_worker): Remove.
15618         (free_xmethod_worker_vec): Remove.
15619         * extension.h (enum ext_lang_rc): Move here from
15620         extension-priv.h.
15621         (struct xmethod_worker): Add constructor and destructor.
15622         <data>: Remove.
15623         <value>: Remove.
15624         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15625         virtual pure methods.
15626         <get_arg_types, get_result_type>: New methods.
15627         (xmethod_worker_ptr): Remove typedef.
15628         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15629         (xmethod_worker_vec): Remove typedef.
15630         (xmethod_worker_up): New typedef.
15631         (invoke_xmethod): Remove.
15632         (clone_xmethod_worker): Remove.
15633         (free_xmethod_worker): Remove.
15634         (free_xmethod_worker_vec): Remove.
15635         (get_xmethod_arg_types): Remove.
15636         (get_xmethod_result_type): Remove.
15637         * valops.c (find_method_list): Use std::vector, don't use
15638         intermediate vector.
15639         (value_find_oload_method_list): Use std::vector.
15640         (find_overload_match): Use std::vector.
15641         (find_oload_champ): Use std::vector.
15642         * value.c (value_free): Use operator delete.
15643         (value_of_xmethod): Rename to...
15644         (value_from_xmethod): ... this.  Don't assign
15645         xmethod_worker::value, take rvalue-reference.
15646         (result_type_of_xmethod): Adjust.
15647         (call_xmethod): Adjust.
15648         * value.h: Include extension.h.
15649         (struct xmethod_worker): Don't forward-declare.
15650         (value_of_xmethod): Rename to...
15651         (value_from_xmethod): ... this, take rvalue-reference.
15652         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15653         (struct python_xmethod_worker): ... this, add constructor and
15654         destructor.
15655         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15656         (gdbpy_free_xmethod_worker_data): Rename to...
15657         (python_xmethod_worker::~python_xmethod_worker): ... this and
15658         adjust.
15659         (gdbpy_clone_xmethod_worker_data): Rename to...
15660         (python_xmethod_worker::clone): ... this and adjust.
15661         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15662         temporary vector.
15663         (gdbpy_get_xmethod_arg_types): Rename to...
15664         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15665         (gdbpy_get_xmethod_result_type): Rename to...
15666         (python_xmethod_worker::do_get_result_type): ... this and
15667         adjust.
15668         (gdbpy_invoke_xmethod): Rename to...
15669         (python_xmethod_worker::invoke): ... this and adjust.
15670         (new_python_xmethod_worker): Rename to...
15671         (python_xmethod_worker::python_xmethod_worker): ... this and
15672         adjust.
15673         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15674         Remove.
15675         (gdbpy_free_xmethod_worker_data): Remove.
15676         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15677         (gdbpy_get_xmethod_arg_types): Remove.
15678         (gdbpy_get_xmethod_result_type): Remove.
15679         (gdbpy_invoke_xmethod): Remove.
15680         * python/python.c (python_extension_ops): Remove obsolete
15681         callbacks.
15682
15683 2018-01-05  Pedro Alves  <palves@redhat.com>
15684
15685         PR gdb/18653
15686         * common/signals-state-save-restore.c
15687         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15688         find a custom handler preinstalled, instead of internal erroring.
15689         But only warn if !quiet.
15690         * common/signals-state-save-restore.h
15691         (save_original_signals_state): New parameter 'quiet'.
15692         * main.c (captured_main_1): Move save_original_signals_state call
15693         after option handling, and pass QUIET.
15694
15695 2018-01-05  Pedro Alves  <palves@redhat.com>
15696
15697         * spu-tdep.c (spu_catch_start): Pass
15698         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15699
15700 2018-01-05  Pedro Alves  <palves@redhat.com>
15701
15702         PR gdb/22670
15703         * ada-lang.c (literal_symbol_name_matcher): New function.
15704         (ada_get_symbol_name_matcher): Use it for
15705         symbol_name_match_type::SEARCH_NAME.
15706         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15707         it down instead of assuming symbol_name_match_type::FULL.
15708         * block.h (block_lookup_symbol): New parameter 'match_type'.
15709         * c-valprint.c (print_unpacked_pointer): Use
15710         lookup_symbol_search_name instead of lookup_symbol.
15711         * compile/compile-object-load.c (get_out_value_type): Pass down
15712         symbol_name_match_type::SEARCH_NAME.
15713         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15714         symbol_name_match_type::FULL.
15715         * cp-support.c (cp_get_symbol_name_matcher): Handle
15716         symbol_name_match_type::SEARCH_NAME.
15717         * infrun.c (insert_exception_resume_breakpoint): Use
15718         lookup_symbol_search_name.
15719         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15720         * psymtab.c (maintenance_check_psymtabs): Use
15721         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15722         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15723         SYMBOL_SEARCH_NAME.
15724         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15725         if symbol_name_match_type::SEARCH_NAME.
15726         (lookup_symbol_in_language): Pass down
15727         symbol_name_match_type::FULL.
15728         (lookup_symbol_search_name): New.
15729         (lookup_language_this): Pass down
15730         symbol_name_match_type::SEARCH_NAME.
15731         (lookup_symbol_aux, lookup_local_symbol): New parameter
15732         'match_type'.  Pass it down.
15733         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15734         (lookup_symbol_search_name): New declaration.
15735         (lookup_symbol_in_block): New 'match_type' parameter.
15736
15737 2018-01-05  Pedro Alves  <palves@redhat.com>
15738
15739         PR gdb/22670
15740         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15741         ada_lookup_symbol.
15742         (ada_lookup_symbol): Reimplement in terms of
15743         ada_lookup_symbol_list, bits factored out from
15744         ada_lookup_encoded_symbol.
15745
15746 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15747
15748         * ada-exp.y (write_object_renaming): When subscripting an array
15749         using a symbol as the index, pass the block in call to
15750         ada_lookup_encoded_symbol when looking that symbol up.
15751
15752 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15753
15754         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15755         TYPE_INDEX_TYPE.
15756
15757 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15758
15759         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15760         the case where VALUE_LVAL (val0) is not lval_memory.
15761
15762 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15763
15764         * ada-valprint.c (print_optional_low_bound): Handle
15765         character-indexed array printing like boolean-indexed array
15766         printing.
15767
15768 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15769
15770         * NEWS: Create a new section for the next release branch.
15771         Rename the section of the current branch, now that it has
15772         been cut.
15773
15774 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15775
15776         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15777         * version.in: Bump version to 8.1.50.DATE-git.
15778
15779 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15780
15781         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15782         Add field.
15783         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15784         Add field.
15785         (default_exception_support_info) <catch_handlers_sym>: Add field.
15786         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15787         (ada_exception_name_addr_1): Add "catch handlers" handling.
15788         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15789         Update all callers.
15790         (create_excep_cond_exprs) <ex>: Add parameter.
15791         (re_set_exception): Update create_excep_cond_exprs call.
15792         (print_it_exception, print_one_exception, print_mention_exception)
15793         (print_recreate_exception): Add "catch handler" handling.
15794         (allocate_location_catch_handlers, re_set_catch_handlers)
15795         (check_status_catch_handlers, print_it_catch_handlers)
15796         (print_one_catch_handlers, print_mention_catch_handlers)
15797         (print_recreate_catch_handlers): New function.
15798         (catch_handlers_breakpoint_ops): New variable.
15799         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15800         Add parameter.  Add "catch handler" handling.
15801         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15802         Add "catch handler" handling.
15803         (ada_exception_catchpoint_cond_string): Add "catch handler"
15804         handling.
15805         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15806         call.
15807         (catch_ada_handlers_command): New function.
15808         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15809         operations structure.
15810         (_initialize_ada_language): Add "catch handlers" command entry.
15811         * NEWS: Document "catch handlers" feature.
15812
15813 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15814
15815         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15816         account when creating the array type of the slice.
15817         (ada_value_slice): Likewise.
15818
15819 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15820
15821         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15822         New enum value.
15823         (create_array_type_with_stride): Add byte_stride_prop parameter.
15824         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15825         New parameter.  Update all callers in this file.
15826         (array_type_has_dynamic_stride): New function.
15827         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15828         of arrays with dynamic byte strides.
15829         * dwarf2read.c (read_array_type): Add support for dynamic
15830         DW_AT_byte_stride attributes.
15831
15832 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15833
15834         * dwarf2read.c (read_unspecified_type): Treat
15835         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15836
15837 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15838
15839         Update copyright year range in all GDB files.
15840
15841 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15842
15843         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15844         and gdb/testsuite/gdb.base/step-line.c.
15845
15846 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15847
15848         * copyright.py (main): Dump the contents of
15849         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15850         even if BY_HAND is empty.
15851
15852 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15853
15854         * top.c (print_gdb_version): Update Copyright year in version
15855         message.
15856
15857 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15858
15859         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15860
15861 For older changes see ChangeLog-2017.
15862 \f
15863 Local Variables:
15864 mode: change-log
15865 left-margin: 8
15866 fill-column: 74
15867 version-control: never
15868 coding: utf-8
15869 End: