Fix inaccuracies in "info skip" help
[external/binutils.git] / gdb / ChangeLog
1 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
2
3         * skip.c (_initialize_step_skip): Fix "info skip" help.
4
5 2018-11-16  Tom Tromey  <tom@tromey.com>
6
7         PR rust/23625:
8         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
9
10 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
11
12         * infrun.c (displaced_step_inferior_states): Change type to
13         std::forward_list.
14         (get_displaced_stepping_state): Adjust.
15         (displaced_step_in_progress_any_inferior): Adjust.
16         (add_displaced_stepping_state): Adjust.
17         (remove_displaced_stepping_state): Adjust.
18
19 2018-11-18  Tom Tromey  <tom@tromey.com>
20
21         PR build/23814:
22         * target-delegates.c: Rebuild.
23         * ia64-linux-nat.c (class ia64_linux_nat_target)
24         <have_steppable_watchpoint>: Use override.  Return true, not 1.
25         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
26         "self" argument.
27         (ia64_linux_nat_target::low_new_thread): Rename.
28         (class ia64_linux_nat_target) <read_description>: Don't declare.
29         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
30         bool.
31
32 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
33
34         PR gdb/22736:
35         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
36         lang_struct_return code.
37
38 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
39
40         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
41         return_method.
42         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
43         * amd64-tdep.c (amd64_push_arguments): Likewise.
44         (amd64_push_dummy_call): Likewise.
45         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
46         * arc-tdep.c (arc_push_dummy_call): Likewise.
47         * arm-tdep.c (arm_push_dummy_call): Likewise.
48         * avr-tdep.c (avr_push_dummy_call): Likewise.
49         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
50         * cris-tdep.c (cris_push_dummy_call): Likewise.
51         * csky-tdep.c (csky_push_dummy_call): Likewise.
52         * frv-tdep.c (frv_push_dummy_call): Likewise.
53         * gdbarch.c: Regenerate.
54         * gdbarch.h: Regenerate.
55         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
56         return_method.
57         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
58         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
59         (hppa64_push_dummy_call): Likewise.
60         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
61         * i386-tdep.c (i386_push_dummy_call): Likewise.
62         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
63         * infcall.c (call_function_by_hand_dummy): Likewise.
64         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
65         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
66         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
67         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
68         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
69         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
70         * mep-tdep.c (mep_push_dummy_call): Likewise.
71         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
72         (mips_n32n64_push_dummy_call): Likewise.
73         (mips_o32_push_dummy_call): Likewise.
74         (mips_o64_push_dummy_call): Likewise.
75         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
76         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
77         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
78         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
79         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
80         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
81         (ppc64_sysv_abi_push_dummy_call): Likewise.
82         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
83         (ppc64_sysv_abi_push_dummy_call): Likewise.
84         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
85         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
86         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
87         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
88         * rx-tdep.c (rx_push_dummy_call): Likewise.
89         * s390-tdep.c (s390_push_dummy_call): Likewise.
90         * score-tdep.c (score_push_dummy_call): Likewise.
91         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
92         (sh_push_dummy_call_nofpu): Likewise.
93         * sparc-tdep.c (sparc32_store_arguments): Likewise.
94         (sparc32_push_dummy_call): Likewise.
95         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
96         (sparc64_push_dummy_call): Likewise.
97         * spu-tdep.c (spu_push_dummy_call): Likewise.
98         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
99         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
100         * v850-tdep.c (v850_push_dummy_call): Likewise.
101         * vax-tdep.c (vax_push_dummy_call): Likewise.
102         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
103         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
104
105 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
106
107         * gdbarch.sh (enum function_call_return_method): Add enum.
108         * gdbarch.h: Regenerate.
109         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
110
111 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
112
113         * unittests/copy_bitwise-selftests.c: New file.
114         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
115         (selftests::copy_bitwise_tests): Delete, moving this code to
116         unittests/copy_bitwise-selftests.c instead.
117         (_initialize_utils): Do not register copy_bitwise tests.
118         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
119         unittests/copy_bitwise-selftests.c.
120
121 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
122
123         * ada-lang.c (move_bits): Delete. Update all callers to use
124         copy_bitwise instead.
125         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
126         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
127         Move from here to utils.c.
128         (_initialize_dwarf2loc): Remove call to register copy_bitwise
129         selftests.
130         * utils.h (copy_bitwise): Add declaration.
131         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
132         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
133         Moved here from dwarf2loc.c.
134         (_initialize_utils): Register copy_bitwise selftests.
135
136 2018-11-14  Jim Wilson  <jimw@sifive.com>
137
138         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
139         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
140         then increment next_regnum if odd.
141         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
142         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
143         function type.  Pass new arg to riscv_arg_location based on function
144         type.
145         (riscv_return_value): Pass new arg to riscv_arg_location.
146
147         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
148         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
149         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
150
151         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
152         setting len.  New local align, set to max of arg align and xlen,
153         and pass to first riscv_assign_stack_location call.
154
155 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
156
157         * skip.c (complete_skip_number): New function.
158         (_initialize_step_skip): Add completers to some skip commands.
159
160 2018-11-09  Tom Tromey  <tom@tromey.com>
161
162         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
163         (struct remote_g_packet_data): Derive from allocate_on_obstack.
164         <guesses>: Now a std::vector.
165         (remote_g_packet_data_init, register_remote_g_packet_guess):
166         Update.
167         (remote_read_description_p): Update.  Return bool.
168         (remote_target::read_description): Update.
169         (struct remote_g_packet_guess): Add constructor.
170
171 2018-11-09  Tom Tromey  <tom@tromey.com>
172
173         * common/scoped_fd.h (class scoped_fd): Add move constructor and
174         move assignment operator.
175         * psymtab.c (psymtab_to_fullname): Update.
176         * source.h (open_source_file): Return scoped_fd.
177         (find_and_open_source): Likewise.
178         * source.c (open_source_file): Return scoped_fd.
179         (get_filename_and_charpos): Update.
180         (print_source_lines_base): Update.  Use scoped_fd::to_file.
181         (forward_search_command): Likewise.
182         (reverse_search_command): Likewise.
183         (find_and_open_source): Return scoped_fd.
184         * tui/tui-source.c (tui_set_source_content): Update.  Use
185         gdb_file_up.
186
187 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
188
189         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
190         overflow.
191
192 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
193
194         * configure: Regenerate.
195
196 2018-11-09  Tom de Vries  <tdevries@suse.de>
197
198         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
199         unconditionally, to set the language of the symbol.  Manage freeing
200         returned pointer using gdb::unique_xmalloc_ptr.
201
202 2018-11-08  Tom Tromey  <tom@tromey.com>
203
204         * record.c (require_record_target): Upper-case "<TAB>".
205
206 2018-11-08  Tom Tromey  <tom@tromey.com>
207
208         * python/lib/gdb/command/pretty_printers.py
209         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
210
211 2018-11-08  Tom Tromey  <tom@tromey.com>
212
213         PR gdb/23555:
214         PR gdb/23838:
215         * target.h (target_supports_terminal_ours): Return bool.
216         * target.c (target_supports_terminal_ours): Handle case where
217         current_top_target returns nullptr.  Return bool.
218
219 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
220
221         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
222         return the correct count for potential HFAs.
223
224 2018-11-08  Jan Beulich  <jbeulich@suse.com>
225
226         * i387-tdep.c (i387_supply_xsave): Split handling of
227         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
228         (i387_collect_xsave): Likewise.
229
230 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
231
232         * riscv-tdep.c (riscv_insn::decode): Update header comment.
233         (riscv_frame_this_id): Catch errors thrown while building the
234         frame cache, leave the frame id as the default, which is the outer
235         frame id.
236
237 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
238
239         * ada-lang.c (read_atcb): Only set task_info->called_task if
240         task_info->state == Entry_Caller_Sleep.
241         (print_ada_task_info): Do not check task_info->state before
242         checking task_info->called_task.
243         (info_task): Likewise.
244
245 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
246
247         * ada-tasks.c (read_atcb): Clear task_info before computing
248         the value of each of its fields.
249
250 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
251
252         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
253         NULL before dereferencing it.
254
255 2018-11-06  Tom de Vries  <tdevries@suse.de>
256
257         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
258         program headers.
259
260 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
261
262         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
263         so that it applies to uclinux as well.
264
265 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
266
267         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
268         when on AAPCS.
269
270 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
271
272         * riscv-fbsd-nat.c (getregs_supplies): Return true for
273         RISCV_CSR_SSTATUS_REGNUM.
274
275 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
276
277         * source.c (open_source_file): Fix leak by transferring the
278         current s->fullname to the unique_xmalloc_ptr fullname given
279         to find_and_open_source.
280
281 2018-11-04  Tom Tromey  <tom@tromey.com>
282
283         * varobj.c (install_default_visualizer): Update.
284         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
285         Return gdbpy_ref.
286         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
287         (find_pretty_printer_from_progspace)
288         (find_pretty_printer_from_gdb, find_pretty_printer)
289         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
290         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
291         Update.
292
293 2018-11-04  Tom Tromey  <tom@tromey.com>
294
295         * python/python.c (gdbpy_parameter_value): Update.
296         * python/python-internal.h (python_string_to_unicode)
297         (python_string_to_target_python_string)
298         (host_string_to_python_string): Return gdbpy_ref.
299         * python/py-utils.c (python_string_to_unicode)
300         (unicode_to_encoded_python_string)
301         (unicode_to_target_python_string)
302         (python_string_to_target_string)
303         (python_string_to_target_python_string): Return gdbpy_ref.
304         (python_string_to_host_string): Update.
305         (host_string_to_python_string): Return gdbpy_ref.
306         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
307         (stpy_fullname): Update.
308         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
309         Update.
310         * python/py-prettyprint.c (print_string_repr): Update.
311         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
312         (objfpy_get_build_id): Update.
313         * python/py-breakpoint.c (bppy_get_location)
314         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
315         Update.
316
317 2018-11-04  Tom Tromey  <tom@tromey.com>
318
319         * python/python-internal.h (gdb_py_object_from_longest)
320         (gdb_py_object_from_ulongest): Return gdbpy_ref.
321         * python/py-value.c (valpy_int): Update.
322         * python/py-utils.c (gdb_py_object_from_longest): Return
323         gdbpy_ref.
324         (gdb_py_object_from_ulongest): Likewise.
325         * python/py-type.c (typy_get_alignof): Update.
326         * python/py-linetable.c (ltpy_get_all_source_lines)
327         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
328         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
329
330 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
331
332         * ada-lang.c (_initialize_ada_language): Fix typo.
333
334 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
335
336         * language.c (type): Remove.
337         (_initialize_language): Remove assignment to type.
338
339 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
340
341         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
342         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
343         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
344         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
345         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
346         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
347         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
348         and aarch64-ravenscar-thread.o.
349         * NEWS: Add entry documenting Ravenscar tasking support
350         on AArch64 ELF.
351
352 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
353
354         * symtab.c (info_functions_command): Initialize quiet flag.
355         * stack.c (info_args_command): Likewise.
356
357 2018-11-01  Jim Wilson  <jimw@sifive.com>
358
359         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
360         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
361         debugging messages.
362
363 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
364
365         * ada-lang.c (ada_watch_location_expression): New function.
366         (ada_language_defn): Set la_watch_location_expression to
367         ada_watch_location_expression.
368
369 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
370
371         * print-utils.c (int_string): Remove unnecessary trailing spaces.
372
373 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
374
375         * rs6000-tdep.c (skip_prologue): Fix potential negative left
376         shifting.
377
378 2018-11-01  Jerome Guitton  <guitton@adacore.com>
379             Joel Brobecker  <brobecker@adacore.com>
380
381         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
382         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
383         * arm-pikeos-tdep.c: New file.
384         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
385         embedded system.
386         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
387
388 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
389
390         * common/pathstuff.c (get_standard_temp_dir): New.
391         * common/pathstuff.h (get_standard_temp_dir): New.
392         * config.in: Re-generate.
393         * configure: Re-generate.
394         * configure.ac: Don't check for mkdtemp.
395         * gnulib/aclocal-m4-deps.mk: Re-generate.
396         * gnulib/aclocal.m4: Re-generate.
397         * gnulib/config.in: Re-generate.
398         * gnulib/configure: Re-generate.
399         * gnulib/import/Makefile.am: Re-generate.
400         * gnulib/import/Makefile.in: Re-generate.
401         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
402         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
403         * gnulib/import/m4/mkdtemp.m4: New file.
404         * gnulib/import/mkdtemp.c: New file.
405         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
406         Add mkdtemp module.
407         * unittests/mkdir-recursive-selftests.c (test): Use
408         get_standard_temp_dir.
409         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
410         ifdef.
411         * compile/compile.c (get_compile_file_tempdir): Likewise.
412
413 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
414
415         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
416         (SIG_FRAME_LR_OFFSET64): New define.
417         (SIG_FRAME_FP_OFFSET64): New define.
418         (aix_sighandle_frame_cache): New Function.
419         (aix_sighandle_frame_this_id): New Function.
420         (aix_sighandle_frame_prev_register): New Function.
421         (aix_sighandle_frame_sniffer): New Function.
422         (aix_sighandle_frame_unwind): New global variable.
423         (rs6000_aix_init_osabi): Install new frame unwinder.
424
425 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
426
427         PR gdb/23835
428         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
429         already defined.
430
431 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
432
433         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
434
435 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
436
437         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
438         (producer_is_icc): New function.
439         (check_producer): Set producer_is_icc field on dwarf2_cu.
440         (dwarf2_init_integer_type): New function.
441         (read_base_type): Call dwarf2_init_integer_type instead of
442         init_integer_type in all cases.
443         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
444         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
445         LEN is greater than 0.
446
447 2018-10-30  Tom Tromey  <tom@tromey.com>
448
449         * main.c (captured_main_1): Check return value of bfd_init.
450
451 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
452
453         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
454         Adjust comments.
455
456 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
457
458         * procfs.c: Include common/pathstuff.h.
459
460 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
461
462         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
463         Add missing braces.  No functional change.
464
465 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
466
467         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
468         to report a bad option and fix indentation.
469         * demangle.c (demangle_command): Use report_unrecognized_option_error
470         to report a bad option and correctly report the bad option.
471
472 2018-10-27  Tom Tromey  <tom@tromey.com>
473
474         PR cli/23364:
475         * darwin-nat.c (copied_shell): New global.
476         (may_have_sip): Rename from should_disable_startup_with_shell.
477         (copy_shell_to_cache, maybe_cache_shell): New functions.
478         (darwin_nat_target::create_inferior): Update.  Use
479         copied_shell.
480
481 2018-10-27  Tom Tromey  <tom@tromey.com>
482
483         * unittests/scoped_fd-selftests.c (test_to_file): New function.
484         (run_tests): Call test_to_file.
485         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
486         temporary files.
487         * common/scoped_fd.h (scoped_fd::to_file): New method.
488
489 2018-10-27  Tom Tromey  <tom@tromey.com>
490
491         * unittests/scoped_mmap-selftests.c (test_normal): Use
492         gdb_mkostemp_cloexec.
493         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
494         Use gdb_mkostemp_cloexec.
495         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
496         gnulib/config.in, gnulib/configure,
497         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
498         gnulib/import/m4/gnulib-cache.m4,
499         gnulib/import/m4/gnulib-comp.m4: Update.
500         * gnulib/import/m4/mkostemp.m4: New file.
501         * gnulib/import/m4/mkstemp.m4: Remove.
502         * gnulib/import/mkostemp.c: New file.
503         * gnulib/import/mkstemp.m4: Remove.
504         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
505         mkstemp, add mkostemp.  Apply new patch.
506         * gnulib/import/stdlib.in.h: Apply patch.
507         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
508         New file.
509         * dwarf-index-write.c (write_psymtabs_to_index): Use
510         gdb_mkostemp_cloexec.
511         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
512
513 2018-10-27  Tom Tromey  <tom@tromey.com>
514
515         * unittests/mkdir-recursive-selftests.c: New file.
516         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
517         unittests/mkdir-recursive-selftests.c.
518         * dwarf-index-cache.c (mkdir_recursive): Move to
519         common/filestuff.c.
520         (index_cache::store): Check return value of mkdir_recursive.
521         (create_dir_and_check, test_mkdir_recursive): Move to new file.
522         (_initialize_index_cache): Don't register test.
523         * common/filestuff.h (mkdir_recursive): Declare.
524         * common/filestuff.c (mkdir_recursive): Move from
525         dwarf-index-cache.c.  Return bool.
526
527 2018-10-27  Tom Tromey  <tom@tromey.com>
528
529         * dwarf-index-write.c (write_psymtabs_to_index): Move
530         make_temp_filename to common/pathstuff.c.
531         * common/pathstuff.h (make_temp_filename): Declare.
532         * common/pathstuff.c (make_temp_filename): New function, moved
533         from dwarf-index-write.c.
534
535 2018-10-27  Tom Tromey  <tom@tromey.com>
536
537         * procfs.c (procfs_target::create_inferior): Use get_shell.
538         * cli/cli-cmds.c (shell_escape): Use get_shell.
539         * windows-nat.c (windows_nat_target::create_inferior): Use
540         get_shell.
541         * common/pathstuff.c (get_shell): New function.
542         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
543         (fork_inferior): Use get_shell.
544         * common/pathstuff.h (get_shell): Declare.
545
546 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
547
548         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
549
550 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
551
552         * stack.c (print_variable_and_value_data): Add preg and treg.
553         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
554         and update callers.
555         (print_frame_arg_vars): Likewise.
556         (prepare_reg): New function.
557         (info_locals_command): Extract info print args and use them.
558         (info_args_command): Likewise.
559         (_initialize_stack): Modify on-line help.
560         * symtab.c (treg_matches_sym_type_name): New function.
561         (search_symbols): New arg t_regexp.
562         (symtab_symbol_info): New args quiet, regexp, t_regexp.
563         (info_variables_command): Extract info print args and use them.
564         (info_functions_command): Likewise.
565         (info_types_command): Update call to symtab_symbol_info.
566         (_initialize_symtab): Modify on-line help.
567         * symtab.h (treg_matches_sym_type_name): New function.
568         (search_symbols): New t_regexp arg.
569
570 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
571
572         * cli-utils.c (extract_arg_maybe_quoted): New function.
573         (extract_info_print_args): New function.
574         (info_print_args_help): New function.
575         (report_unrecognized_option_error): New function.
576         * cli-utils.h (extract_arg_maybe_quoted): New function.
577         (extract_info_print_args): New function.
578         (info_print_args_help): New function.
579         (report_unrecognized_option_error): New function.
580
581 2018-10-26  Tom Tromey  <tom@tromey.com>
582
583         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
584         (compute_compunit_symtab_includes): Update.
585         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
586         (compunit_symtab_ptr): Likewise.
587
588 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
589
590         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
591         default_print_auxv_entry for specific tag values.
592
593 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
594
595         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
596
597 2018-10-26  Jim Wilson  <jimw@sifive.com>
598
599         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
600         (riscv_linux_sigframe_init): Declare.
601         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
602         (riscv_linux_sigframe): New.
603         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
604         (riscv_linux_sigframe_init): Define.
605         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
606
607         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
608         (riscv_isa_flen): Likewise.  Drop static.
609         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
610         (riscv_isa_flen): Likewise.  Declare.
611
612 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
613             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
614
615         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
616         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
617         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
618         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
619         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
620         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
621         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
622         Define.
623         (struct ppc_linux_features) <htm>: New field.
624         (ppc_linux_no_features): Add initializer for htm field.
625         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
626         new tdescs.
627         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
628         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
629         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
630         Define if not already defined.
631         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
632         and rs6000/powerpc-isa207-htm-vsx64l.
633         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
634         rs6000/powerpc-isa207-htm-vsx64l.xml.
635         * features/rs6000/power-htm-spr.xml: New file.
636         * features/rs6000/power-htm-core.xml: New file.
637         * features/rs6000/power64-htm-core.xml: New file.
638         * features/rs6000/power-htm-fpu.xml: New file.
639         * features/rs6000/power-htm-altivec.xml: New file.
640         * features/rs6000/power-htm-vsx.xml: New file.
641         * features/rs6000/power-htm-ppr.xml: New file.
642         * features/rs6000/power-htm-dscr.xml: New file.
643         * features/rs6000/power-htm-tar.xml: New file.
644         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
645         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
646         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
647         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
648         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
649         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
650         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
651         fetch_regset with HTM regsets.
652         (store_register, store_ppc_registers): Call store_regset with HTM
653         regsets.
654         (ppc_linux_nat_target::read_description): Set htm field in the
655         features struct if needed.
656         * ppc-linux-tdep.c: Include
657         features/rs6000/powerpc-isa207-htm-vsx32l.c and
658         features/rs6000/powerpc-isa207-htm-vsx64l.c.
659         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
660         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
661         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
662         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
663         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
664         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
665         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
666         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
667         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
668         (ppc32_linux_ctarregset): New globals.
669         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
670         (ppc_linux_collect_core_cpgrregset): New function.
671         (ppc_linux_iterate_over_regset_sections): Call back with the htm
672         regsets.
673         (ppc_linux_core_read_description): Check if the tm spr section is
674         present and set htm in the features struct.
675         (_initialize_ppc_linux_tdep): Call
676         initialize_tdesc_powerpc_isa207_htm_vsx32l and
677         initialize_tdesc_powerpc_isa207_htm_vsx64l.
678         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
679         Declare.
680         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
681         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
682         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
683         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
684         New fields.
685         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
686         Likewise.
687         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
688         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
689         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
690         New enum fields.
691         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
692         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
693         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
694         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
695         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
696         <PPC_CTAR_REGNUM>: Likewise.
697         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
698         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
699         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
700         (IS_CEFP_PSEUDOREG): Define.
701         (rs6000_register_name): Hide the upper halves of checkpointed VSX
702         registers.  Return names for the checkpointed DFP, VSX, and EFP
703         pseudo registers.
704         (rs6000_pseudo_register_type): Remove initial assert and raise an
705         internal error in the else clause instead.  Return types for the
706         checkpointed DFP, VSX, and EFP pseudo registers.
707         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
708         checkpointed DFP pseudo registers.
709         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
710         checkpointed VSX pseudo registers.
711         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
712         from efpr_pseudo_register_read and
713         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
714         registers.
715         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
716         Handle checkpointed DFP, VSX, and EFP registers.
717         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
718         (efp_ax_pseudo_register_collect): New functions.
719         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
720         register logic to new functions.  Handle checkpointed DFP, VSX,
721         and EFP pseudo registers.
722         (rs6000_gdbarch_init): Look for and validate the htm features.
723         Include checkpointed DFP, VSX and EFP pseudo-registers.
724         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
725         HTM registers.
726
727 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
728
729         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
730         without altivec or fpu.
731
732 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
733             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
734
735         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
736         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
737         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
738         Define if not already defined.
739         * features/rs6000/power-ebb.xml: New file.
740         * features/rs6000/power-linux-pmu.xml: New file.
741         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
742         features.
743         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
744         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
745         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
746         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
747         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
748         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
749         fetch_regset with ebb and pmu regsets.
750         (store_register, store_ppc_registers): Call store_regset with ebb
751         and pmu regsets.
752         (ppc_linux_nat_target::read_description): Set isa207 field in the
753         features struct if ebb and pmu are avaiable.
754         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
755         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
756         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
757         and pmu regsets.
758         (ppc_linux_core_read_description): Check if the pmu section is
759         present and set isa207 in the features struct.
760         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
761         (ppc32_linux_pmuregset): Declare.
762         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
763         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
764         <ppc_sier_regnum>: New field.
765         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
766         New enum values.
767         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
768         values.
769         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
770         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
771         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
772         ebb and pmu features.
773
774 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
775             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
776
777         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
778         (tdesc_powerpc_isa207_vsx64l): Declare.
779         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
780         (struct ppc_linux_features) <isa207>: New field.
781         (ppc_linux_no_features): Add initializer for isa207 field.
782         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
783         new tdescs.
784         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
785         (NT_PPC_TAR): Define if not already defined.
786         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
787         rs6000/powerpc-isa207-vsx64l.
788         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
789         rs6000/powerpc-isa207-vsx64l.xml.
790         * features/rs6000/power-tar.xml: New file.
791         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
792         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
793         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
794         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
795         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
796         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
797         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
798         fetch_regset with the TAR regset.
799         (store_register, store_ppc_registers): Call store_regset with the
800         TAR regset.
801         (ppc_linux_nat_target::read_description): Set isa207 field in the
802         features struct if needed.
803         * ppc-linux-tdep.c: Include
804         features/rs6000/powerpc-isa207-vsx32l.c and
805         features/rs6000/powerpc-isa207-vsx64l.c.
806         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
807         (ppc_linux_iterate_over_regset_sections): Call back with the tar
808         regset.
809         (ppc_linux_core_read_description): Check if the tar section is
810         present and set isa207 in the features struct.
811         (_initialize_ppc_linux_tdep): Call
812         initialize_tdesc_powerpc_isa207_vsx32l and
813         initialize_tdesc_powerpc_isa207_vsx64l.
814         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
815         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
816         (enum) <PPC_TAR_REGNUM>: New enum value.
817         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
818         feature.
819         (ppc_process_record_op31): Record changes to TAR.
820
821 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
822             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
823
824         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
825         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
826         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
827         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
828         (struct ppc_linux_features) <ppr_dscr>: New field.
829         (ppc_linux_no_features): Add initializer for ppr_dscr field.
830         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
831         new tdescs.
832         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
833         Define if not already defined.
834         * features/Makefile (WHICH): Add
835         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
836         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
837         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
838         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
839         * features/rs6000/power-dscr.xml: New file.
840         * features/rs6000/power-ppr.xml: New file.
841         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
842         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
843         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
844         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
845         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
846         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
847         * ppc-linux-nat.c: Include <sys/uio.h>.
848         (fetch_regset, store_regset, check_regset): New functions.
849         (fetch_register, fetch_ppc_registers): Call fetch_regset with
850         DSCR and PPR regsets.
851         (store_register, store_ppc_registers): Call store_regset with
852         DSCR and PPR regsets.
853         (ppc_linux_get_hwcap2): New function.
854         (ppc_linux_nat_target::read_description): Call
855         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
856         features struct if needed.
857         * ppc-linux-tdep.c: Include
858         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
859         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
860         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
861         (ppc32_linux_dscrregset): New globals.
862         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
863         and dscr regsets.
864         (ppc_linux_core_read_description): Check if the ppr and dscr
865         sections are present and set ppr_dscr in the features struct.
866         (_initialize_ppc_linux_tdep): Call
867         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
868         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
869         * ppc-linux-tdep.h (ppc32_linux_pprregset)
870         (ppc32_linux_dscrregset): Declare.
871         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
872         <ppc_dscr_regnum>: New field.
873         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
874         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
875         and dscr features.
876         (ppc_process_record_op31): Record changes to PPR and DSCR.
877
878 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
879
880         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
881         second initializer line for the have_* variables.  Initialize
882         have_fpu to 0 instead of 1.
883
884 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
885
886         * arch/ppc-linux-common.c (ppc_linux_match_description):
887         Parenthesize tdesc assignements and indent them properly.
888
889 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
890
891         * ppc-linux-nat.c (fetch_register): Change if statement to else
892         if.
893         (store_register): Likewise.
894
895 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
896
897         * rs6000-tdep.c: Remove reggroups.h include.
898         (rs6000_pseudo_register_reggroup_p): Remove.
899         (rs6000_gdbarch_init): Remove call to
900         set_tdesc_pseudo_register_reggroup_p.
901
902 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
903
904         * reggroups.c (default_register_reggroup_p): Return true for
905         decfloat registers and float_reggroup.
906
907 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
908
909         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
910         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
911         ppc_linux_collect_vrregset by regcache_collect_regset.
912
913 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
914
915         * linux-tdep.c (linux_collect_regset_section_cb): Use
916         std::vector<gdb_byte> instead of char * and malloc for buf.
917         Remove xfree.
918
919 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
920
921         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
922         symtab_start instead of always using language_unknown.
923
924 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
925
926         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
927         READ_P parameter, catch and ignore register access errors from
928         either the old or new MISA location.
929         (riscv_has_feature): Update call to riscv_read_misa_reg.
930
931 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
932
933         * python/py-function.c (convert_values_to_python): Return
934         gdbpy_ref<>.  Add header comment.
935         (fnpy_call): Adjust.
936
937 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
938
939         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
940         (cmdpy_completer_handle_brkchars): Adjust.
941         (cmdpy_completer): Adjust.
942
943 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
944
945         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
946         Pass correct regnum to raw_supply_zeroed.
947
948 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
949
950         * regcache.c (cooked_read_test): Add CSKY to the list of
951         architectures with a save_reggroup
952
953 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
954
955         PR gdb/23368
956         * infrun.c (follow_exec): In the follow_exec_mode_new case,
957         transfer terminal state from old new new inferior.
958         * terminal.h (swap_terminal_info): New function.
959         * inflow.c (swap_terminal_info): New function.
960
961 2018-10-23  Tom Tromey  <tom@tromey.com>
962
963         * record-btrace.c (get_thread_current_frame_id): Rename from
964         get_thread_current_frame.  Return a frame_id.
965         (record_btrace_start_replaying): Update.
966
967 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
968
969         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
970         for CSRs.
971
972 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
973
974         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
975         have_nonsteppable_watchpoint attribute to 1.
976
977 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
978
979         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
980         register names.
981         (struct register_alias): Rename to...
982         (struct riscv_register_alias): ...this, and update comment.
983         (riscv_register_aliases): Update type, and alias names.  Remove
984         CSR names from this list.
985         (riscv_register_name): Use riscv_gdb_reg_names for int and float
986         register names.  Add an extra assertion.
987         (riscv_is_regnum_a_named_csr): New function.
988         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
989
990 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
991
992         * configure.tgt: Add configuration for s12z.
993         * s12z-tdep.c:  New file.
994         * NEWS: Mention new target.
995
996 2018-10-22  Jim Wilson  <jimw@sifive.com>
997
998         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
999         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1000
1001         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1002         (riscv_register_type): Use them.
1003         (riscv_print_one_register_info): Handle union of floats same as float.
1004         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1005         riscv_fpreg_q_type fields.
1006
1007 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1008
1009         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1010         * gdbarch.h: Re-generate.
1011         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1012         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1013         * eval.c (evaluate_subexp_standard): Likewise.
1014         * findvar.c (value_of_register): Likewise.
1015         (value_of_register_lazy): Likewise.
1016         (address_from_register): Likewise.
1017         * frame.c (get_frame_register_bytes): Likewise.
1018         * gdbarch-selftests.c (register_to_value_test): Likewise.
1019         * h8300-tdep.c (h8300_register_type): Likewise.
1020         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1021         (i386_svr4_reg_to_regnum): Likewise.
1022         * infcmd.c (default_print_registers_info): Likewise.
1023         (registers_info): Likewise.
1024         (print_vector_info): Likewise.
1025         (default_print_float_info): Likewise.
1026         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1027         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1028         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1029         (mi_cmd_data_list_changed_registers): Likewise.
1030         (mi_cmd_data_list_register_values): Likewise.
1031         (mi_cmd_data_write_register_values): Likewise.
1032         (mi_cmd_trace_frame_collected): Likewise.
1033         * mips-tdep.c (print_gp_register_row): Likewise.
1034         (mips_print_registers_info): Likewise.
1035         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1036         * regcache.c (init_regcache_descr): Likewise.
1037         (register_size): Likewise.
1038         (register_dump::dump): Likewise.
1039         (cooked_read_test): Likewise.
1040         (cooked_write_test): Likewise.
1041         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1042         (rs6000_gdbarch_init): Likewise.
1043         * stabsread.c (stab_reg_to_regnum): Likewise.
1044         * stack.c (info_frame_command): Likewise.
1045         * target-descriptions.c (tdesc_register_name): Likewise.
1046         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1047         * tui/tui-regs.c (tui_show_register_group): Likewise.
1048         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1049         (user_reg_map_regnum_to_name): Likewise.
1050         (value_of_user_reg): Likewise.
1051         (maintenance_print_user_registers): Likewise.
1052         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1053         (xtensa_register_name): Likewise.
1054         (xtensa_register_type): Likewise.
1055         (xtensa_reg_to_regnum): Likewise.
1056         (xtensa_pseudo_register_read): Likewise.
1057         (xtensa_pseudo_register_write): Likewise.
1058
1059 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1060
1061         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1062         correctly-sized buffer with raw_read.
1063         (amd64_pseudo_register_write): Use correctly-sized buffer for
1064         raw_read/raw_write.
1065
1066 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1067
1068         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1069         in add_prefix_cmd of set print type.
1070
1071 2018-10-19  Tom Tromey  <tom@tromey.com>
1072
1073         PR tui/18388:
1074         * NEWS: Mention tabset deprecation.
1075         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1076         (update_tab_width): New function.
1077         (tui_set_tab_width, tui_show_tab_width): New functions.
1078         (tui_set_tab_width_command): Use update_tab_width.
1079         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1080         Add new "set tui tab-width" command.
1081         * tui/tui-source.c (tui_set_source_content): Update.
1082         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1083         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1084         Don't declare.
1085         (tui_tab_width): Declare.
1086         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1087         (tui_set_default_tab_len): Remove.
1088
1089 2018-10-19  Tom Tromey  <tom@tromey.com>
1090
1091         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1092         (key_is_backspace, tui_getc): Don't declare.
1093         * tui/tui-io.c (key_is_start_sequence): Now static.
1094         (key_is_end_sequence, key_is_backspace): Remove.
1095         (tui_getc): Now static.
1096
1097 2018-10-19  Tom Tromey  <tom@tromey.com>
1098
1099         * symfile.c (reread_symbols): Clear "static_links".
1100
1101 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1102
1103         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1104         define.
1105         (aarch64_linux_sigframe_init): Extra boundary checks.
1106
1107 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1108
1109         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1110         the possibly non-existent tdesc type 'vec128', but the type of raw
1111         register v16 instead.
1112
1113 2018-10-19  Gary Benson <gbenson@redhat.com>
1114
1115         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1116
1117 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1118
1119         PR cli/23785
1120         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1121         NULL.
1122
1123 2018-10-17  Paul Koning  <paul_koning@dell.com>
1124
1125         * charset.c (convert_between_encodings): Fix unsigned overflow.
1126
1127 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1128
1129         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1130         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1131         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1132         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1133         New functions.
1134         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1135         and fbsd_info_proc_mappings_header.
1136         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1137         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1138         New.
1139
1140 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1141
1142         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1143         Solaris Maintainer.
1144
1145 2018-10-15  Tom Tromey  <tom@tromey.com>
1146
1147         * tui/tui.c (strcat_to_buf): Remove casts.
1148         * tui/tui-winsource.c (tui_show_source_line)
1149         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1150         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1151         * tui/tui-windata.c (tui_first_data_item_displayed)
1152         (tui_delete_data_content_windows, tui_erase_data_content)
1153         (tui_display_all_data, tui_display_data_from)
1154         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1155         * tui/tui-win.c (tui_set_win_height)
1156         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1157         casts.
1158         * tui/tui-win.c (tui_resize_all): Remove casts.
1159         (tui_scroll_backward_command, tui_set_focus)
1160         (tui_set_tab_width_command): Likewise.
1161         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1162         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1163         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1164         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1165         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1166         Remove casts.
1167
1168 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1169
1170         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1171         AArch64/ARM maintainer.
1172
1173 2018-10-11  Gary Benson <gbenson@redhat.com>
1174
1175         * interps.h (interp::m_name): Make private and mutable.
1176         * interps.c (interp::~interp): Free m_name.
1177
1178 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1179             Simon Marchi <simark@simark.ca>
1180
1181         * README (`configure' options): Add documentation for new
1182         "--enable-unit-tests" option.
1183         * acinclude.m4: Include "selftest.m4".
1184         * configure: Regenerate.
1185         * configure.ac: Use "GDB_AC_SELFTEST".
1186         * maint.c (maintenance_selftest): Update message informing
1187         that selftests have been disabled.
1188         (maintenance_info_selftests): Likewise.
1189         * selftest.m4: New file.
1190
1191 2018-10-10  Gary Benson <gbenson@redhat.com>
1192
1193         * remote.c (remote_target::remote_send_printf): Add
1194         missing va_end found by Coverity.
1195
1196 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1197
1198         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1199
1200 2018-10-09  Tom Tromey  <tom@tromey.com>
1201
1202         * configure: Rebuild.
1203         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1204         * NEWS: Update --enable-ubsan documentation.
1205
1206 2018-10-09  Gary Benson <gbenson@redhat.com>
1207
1208         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1209         found by Coverity.
1210
1211 2018-10-08  Tom Tromey  <tom@tromey.com>
1212
1213         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1214         variable.
1215         (riscv_fbsd_init_abi): Likewise.
1216
1217 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1218         * valops.c (value_struct_elt_for_reference): Rename local variable
1219         to work around the shadowing a previous local warning.
1220
1221 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1222
1223         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1224         * NEWS: Mention new FreeBSD/riscv native configuration.
1225         * configure.host: Add riscv*-*-freebsd*.
1226         * configure.nat: Likewise.
1227         * riscv-fbsd-nat.c: New file.
1228
1229 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1230
1231         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1232         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1233         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1234         * NEWS: Mention new FreeBSD/riscv target.
1235         * configure.tgt: Add riscv*-*-freebsd*.
1236         * riscv-fbsd-tdep.c: New file.
1237         * riscv-fbsd-tdep.h: New file.
1238
1239 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1240
1241         * regcache.h (struct regcache_map_entry): Note that this type can
1242         be used with traditional frame caches.
1243         * trad-frame.c (trad_frame_set_reg_regmap): New.
1244         * trad-frame.h (trad_frame_set_reg_regmap): New.
1245
1246 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1247
1248         PR c++/16841
1249         * valops.c (get_virtual_base_offset): New function.
1250         (value_struct_elt_for_reference): Use it to get virtual base offset
1251         and add it in calculating class member address.
1252
1253 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1254
1255     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1256       (check_producer): Check if the producer is codewarrior.
1257       (producer_is_codewarrior): New function.
1258       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1259        produced by codewarrior.
1260       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1261
1262 2018-10-06  Tom Tromey  <tom@tromey.com>
1263
1264         PR python/19399:
1265         * python/py-inferior.c: Add "architecture" entry.
1266         (infpy_architecture): New function.
1267
1268 2018-10-06  Tom Tromey  <tom@tromey.com>
1269
1270         PR python/21765:
1271         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1272         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1273         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1274         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1275
1276 2018-10-06  Tom Tromey  <tom@tromey.com>
1277
1278         PR build/17077:
1279         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1280         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1281         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1282         #include.
1283
1284 2018-10-06  Tom Tromey  <tom@tromey.com>
1285
1286         * python/py-breakpoint.c (bppy_get_location): Handle a
1287         bp_breakpoint without a location.
1288
1289 2018-10-06  Tom Tromey  <tom@tromey.com>
1290
1291         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1292         (_RegEx): Reformat help text.
1293         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1294         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1295         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1296         text.
1297         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1298         (EnableXMethod, DisableXMethod): Remove help indentation.
1299         Capitalize meta-syntactic variables.
1300         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1301         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1302         Capitalize meta-syntactic variables.
1303         * python/lib/gdb/command/explore.py (ExploreCommand)
1304         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1305         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1306         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1307         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1308         Remove help indentation.
1309         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1310         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1311         (DisableFrameFilter, SetFrameFilterPriority)
1312         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1313
1314 2018-10-06  Tom Tromey  <tom@tromey.com>
1315
1316         PR tui/28819:
1317         * tui/tui-io.c (gdb_wgetch): New function.
1318         (tui_mld_getc, tui_getc): Use it.
1319
1320 2018-10-05  Tom Tromey  <tom@tromey.com>
1321
1322         * sol-thread.c (sol_thread_target::wait): Rename inner
1323         "save_ptid".
1324
1325 2018-10-04  Tom Tromey  <tom@tromey.com>
1326
1327         * configure: Rebuild.
1328         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1329
1330 2018-10-04  Tom Tromey  <tom@tromey.com>
1331
1332         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1333         declaration of "block".
1334
1335 2018-10-04  Tom Tromey  <tom@tromey.com>
1336
1337         * common/filestuff.c (fdwalk): Remove inner declaration of
1338         "result".
1339
1340 2018-10-04  Tom Tromey  <tom@tromey.com>
1341
1342         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1343         "structs_addr" and hoist declaration.
1344
1345 2018-10-04  Tom Tromey  <tom@tromey.com>
1346
1347         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1348         variable "size".
1349
1350 2018-10-04  Tom Tromey  <tom@tromey.com>
1351
1352         * mdebugread.c (parse_partial_symbols): Use std::string.
1353
1354 2018-10-04  Tom Tromey  <tom@tromey.com>
1355
1356         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1357         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1358         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1359         header.
1360         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1361         more inner scope.
1362         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1363         * varobj.c (varobj_update): Rename inner "newobj",
1364         "type_changed".
1365         * valprint.c (generic_emit_char): Rename inner "buf".
1366         * valops.c (find_overload_match): Rename inner "temp".
1367         (value_struct_elt_for_reference): Declare "v" in more inner
1368         scope.
1369         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1370         * unittests/array-view-selftests.c (run_tests): Rename inner
1371         "vec".
1372         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1373         header.
1374         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1375         "tsv" in more inner scope.
1376         (print_one_static_tracepoint_marker): Rename inner
1377         "tuple_emitter".
1378         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1379         (tic6x_push_dummy_call): Don't redeclare "addr".
1380         * target-float.c: Declare "dto" lower.
1381         * symtab.c (lookup_local_symbol): Rename inner "sym".
1382         (find_pc_sect_line): Rename inner "pc".
1383         * stack.c (print_frame): Don't redeclare "gdbarch".
1384         (return_command): Rename inner "gdbarch".
1385         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1386         "sp".
1387         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1388         header.
1389         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1390         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1391         scope.
1392         * remote.c (remote_target::update_thread_list): Don't redeclare
1393         "tp".
1394         (remote_target::process_initial_stop_replies): Rename inner
1395         "thread".
1396         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1397         (remote_target::wait_as): Don't redeclare "stop_reply".
1398         (remote_target::get_thread_local_address): Rename inner
1399         "result".
1400         (remote_target::get_tib_address): Likewise.
1401
1402         * regcache.c (cooked_read_test): Rename "regnum".
1403         * record-btrace.c (cmd_record_btrace_start): Rename inner
1404         "exception".
1405         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1406         loop header.
1407         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1408         header.
1409         (ppu2spu_sniffer): Rename inner "buf".
1410         * parse.c (operator_check_standard): Rename inner "type",
1411         "objfile".
1412         * p-valprint.c (pascal_val_print): Introduce new scope for
1413         "low_bound", "high_bound".
1414         * p-exp.y (yylex): Declare "i" in loop header.
1415         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1416         Lower declaration of "s".
1417         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1418         header.
1419         (nios2_push_dummy_call): Rename "len".
1420         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1421         "buf".
1422         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1423         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1424         (linux_xfer_osdata_modules): Likewise.
1425         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1426         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1427         (mips_o64_push_dummy_call): Likewise.
1428         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1429         "op".
1430         * mi/mi-main.c (list_available_thread_groups): Rename inner
1431         "tuple_emitter".
1432         (mi_cmd_data_read_memory): Rename inner "opts".
1433         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1434         "tuple_emitter".
1435         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1436         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1437         more inner scope.
1438         (parse_partial_symbols): Rename inner "pst", "p", "name"
1439         * main.c (captured_main_1): Rename inner "i"s.
1440         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1441         "oso2".
1442         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1443         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1444         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1445         (handle_signal_stop): Rename inner "gdbarch".
1446         (handle_command): Declare "signum" in loop header.
1447         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1448         "status".
1449         (examine_prologue): Rename inner "sol" and "sof".
1450         (ia64_extract_return_value): Rename inner "val".  Declare another
1451         "val" in a more inner scope.
1452         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1453         inner scope.
1454         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1455         "except".
1456         * findvar.c (default_read_var_value): Don't redeclare "addr".
1457         * f-exp.y (yylex): Declare "i" in loop header.
1458         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1459         Rename inner "type", "expect_type".
1460         (evaluate_subexp_for_sizeof): Rename inner "pc".
1461         * elfread.c (elf_symfile_read): Rename inner "abfd".
1462         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1463         "bytes_read".
1464         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1465         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1466         (dwarf_decode_line_header): Rename inner "lh".
1467         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1468         "offset".  Declare "i" in loop header.
1469         (disassemble_dwarf_expression): Rename inner "addr_size".
1470         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1471         inner "result".
1472         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1473         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1474         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1475         "inner_list_emitter".
1476         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1477         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1478         declaration in a block.
1479         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1480         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1481         "obstack_final_size".
1482         * cp-support.c (inspect_type): Declare "i" in loop header.
1483         * compile/compile.c (compile_instance::insert_symbol_error):
1484         Rename inner "e".
1485         * common/agent.c (agent_run_command): Remove inner "ret"
1486         declaration.
1487         * coffread.c (coff_symfile_read): Rename inner "name".
1488         (coff_symfile_read): Rename inner "abfd".
1489         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1490         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1491         "high".
1492         * c-exp.y (lex_one_token): Move "len" declaration lower.
1493         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1494         "gdbarch".
1495         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1496         "b".
1497         (watch_command_1): Declare "mark" later.
1498         (clear_command): Don't shadow "a" or "b".
1499         (delete_command): Rename inner "b".
1500         (delete_trace_command): Likewise.
1501         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1502         "op".
1503         (arm_gdbarch_init): Remove inner "e_flags".
1504         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1505         "offset" in inner blocks.
1506
1507 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1508
1509         * dwarf-index-write.c (file_write): Don't write if the vector is
1510         empty.
1511
1512 2018-10-05  Tom de Vries  <tdevries@suse.de>
1513
1514         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1515         PyArg_ParseTuple call.
1516
1517 2018-10-05  Tom de Vries  <tdevries@suse.de>
1518
1519         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1520         PyArg_ParseTuple call.
1521
1522 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1523
1524         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1525         to avoid exceeding 80 characters per line limit.
1526
1527 2018-10-04  Tom Tromey  <tom@tromey.com>
1528
1529         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1530         (reread_symbols): Update.
1531         * complaints.h (clear_complaints): Remove argument.
1532         * complaints.c (enum complaint_series): Remove.
1533         (series): Remove global.
1534         (complaint_internal): Update.
1535         (clear_complaints): Remove argument.
1536
1537 2018-10-04  Tom Tromey  <tom@tromey.com>
1538
1539         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1540         debugging symbols" message if there is a separate debug objfile.
1541
1542 2018-10-04  Tom Tromey  <tom@tromey.com>
1543
1544         PR cli/19551:
1545         * symfile.c (symbol_file_add_with_addrs): Update output.
1546         * psymtab.c (require_partial_symbols): Update output.
1547
1548 2018-10-04  Tom Tromey  <tom@tromey.com>
1549
1550         PR cli/22234:
1551         * complaints.c: Emit \n.
1552
1553 2018-10-04  Tom Tromey  <tom@tromey.com>
1554
1555         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1556         (separate_debug_file_exists, find_separate_debug_file)
1557         (add_symbol_file_command, reread_symbols, allocate_symtab)
1558         (allocate_compunit_symtab): Use filtered printing, not
1559         unfiltered.
1560         * psymtab.c (require_partial_symbols, dump_psymtab)
1561         (allocate_psymtab): Use filtered printing, not unfiltered.
1562
1563 2018-10-04  Tom Tromey  <tom@tromey.com>
1564
1565         * complaints.c (complaint_internal): Correctly check complaint
1566         count.
1567
1568 2018-10-04  Tom Tromey  <tom@tromey.com>
1569
1570         * complaints.h (struct complaints): Remove declaration.
1571         * complaints.c (clear_complaints): Remove an unused variable.
1572
1573 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1574
1575         * MAINTAINERS (Write After Approval): Add self.
1576
1577 2018-10-03  Tom Tromey  <tom@tromey.com>
1578
1579         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1580         "buffer_contents".
1581         * coffread.c (coff_symtab_read): Initialize "newobj".
1582
1583 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1584
1585         * dwarf2read.c (read_func_scope): Remove struct keyword in
1586         range-based for.
1587
1588 2018-10-03  Tom Tromey  <tom@tromey.com>
1589
1590         * README: Mention --enable-ubsan.
1591         * NEWS: Mention --enable-ubsan.
1592         * acinclude.m4: Include sanitize.m4.
1593         * configure: Rebuild.
1594         * configure.ac: Call AM_GDB_UBSAN.
1595         * sanitize.m4: New file.
1596
1597 2018-10-03  Tom Tromey  <tom@tromey.com>
1598
1599         * expression.h (enum exp_opcode): Use uint8_t as base type.
1600         * expprint.c (op_name): Handle invalid opcodes.
1601
1602 2018-10-03  Tom Tromey  <tom@tromey.com>
1603
1604         * parse.c (prefixify_expression): Add assert.
1605         (parse_exp_in_context_1): Throw exception if the expression is
1606         empty.
1607
1608 2018-10-03  Tom Tromey  <tom@tromey.com>
1609
1610         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1611
1612 2018-10-03  Tom Tromey  <tom@tromey.com>
1613
1614         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1615
1616 2018-10-03  Tom Tromey  <tom@tromey.com>
1617
1618         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1619         unsigned.
1620
1621 2018-10-03  Tom Tromey  <tom@tromey.com>
1622
1623         * findvar.c (extract_integer): Do work in an unsigned type.
1624
1625 2018-10-03  Tom Tromey  <tom@tromey.com>
1626
1627         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1628         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1629         base type.
1630         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1631         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1632         type.
1633         * c-lang.h (enum c_string_type_values): Use unsigned as base
1634         type.
1635         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1636
1637 2018-10-03  Tom Tromey  <tom@tromey.com>
1638
1639         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1640         <~dwarf2_frame_state_reg_info>: Update.
1641         <dwarf2_frame_state_reg_info>: Update.
1642         <alloc_regs>: Add assertion.  Update.
1643         <reg>: Now a std::vector.
1644         <num_regs>: Remove.
1645         <swap>: Update.
1646         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1647         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1648
1649 2018-10-03  Tom Tromey  <tom@tromey.com>
1650
1651         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1652
1653 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1654
1655         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1656
1657 2018-10-02  Tom Tromey  <tom@tromey.com>
1658
1659         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1660
1661 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1662
1663         * NEWS: Mention changed commands.
1664         * ser-uds.c: New file.
1665         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1666         * configure: Regenerate.
1667         * Makefile.in: Add new file.
1668         * serial.c (serial_open): Check if filename is a socket
1669           and lookup the appropriate interface accordingly.
1670
1671 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1672
1673         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1674         define.
1675         (AARCH64_EXTRA_MAGIC): Likewise.
1676         (AARCH64_FPSIMD_MAGIC): Likewise.
1677         (AARCH64_SVE_MAGIC): Likewise.
1678         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1679         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1680         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1681         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1682         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1683         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1684         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1685         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1686         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1687         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1688         (read_aarch64_ctx): Add function.
1689         (aarch64_linux_sigframe_init): Detect FP registers.
1690
1691 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1692
1693         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1694         (AARCH64_D0_REGNUM): Likewise.
1695         (AARCH64_S0_REGNUM): Likewise.
1696         (AARCH64_H0_REGNUM): Likewise.
1697         (AARCH64_B0_REGNUM): Likewise.
1698         (AARCH64_SVE_V0_REGNUM): Likewise.
1699         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1700         (AARCH64_D0_REGNUM): Likewise.
1701         (AARCH64_S0_REGNUM): Likewise.
1702         (AARCH64_H0_REGNUM): Likewise.
1703         (AARCH64_B0_REGNUM): Likewise.
1704         (AARCH64_SVE_V0_REGNUM): Likewise.
1705
1706 2018-10-01  Gary Benson <gbenson@redhat.com>
1707
1708         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1709         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1710         prfpregset_t instead of gdb_prfpregset_t.
1711         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1712         * configure, config.in: Rebuild.
1713
1714 2018-10-01  Gary Benson <gbenson@redhat.com>
1715
1716         * common/gdb_proc_service.h: New file, factored out from...
1717         * gdb_proc_service.h: Moved common code to the above file.
1718         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1719
1720 2018-10-01  Gary Benson <gbenson@redhat.com>
1721
1722         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1723         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1724
1725 2018-10-01  Gary Benson <gbenson@redhat.com>
1726
1727         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1728         (AC_CHECK_HEADERS): Check for linux/elf.h.
1729         * configure, config.in: Rebuild.
1730         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1731         doesn't define elf_fpregset_t.
1732
1733 2018-10-01  Gary Benson <gbenson@redhat.com>
1734
1735         * gdb_proc_service.h: Whitespace change.
1736
1737 2018-10-01  Tom Tromey  <tom@tromey.com>
1738
1739         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1740         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1741         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1742
1743 2018-10-01  Tom Tromey  <tom@tromey.com>
1744
1745         * README: Minor change.
1746
1747 2018-09-30  Pedro Alves  <palves@redhat.com>
1748
1749         * darwin-nat-info.c (darwin_debug_regions_recurse)
1750         (info_mach_exceptions_command): Remove unused local variables.
1751         * darwin-nat.c (darwin_decode_notify_message)
1752         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1753         (darwin_stop_inferior, darwin_setup_exceptions)
1754         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1755         (darwin_nat_target::attach, darwin_nat_target::detach)
1756         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1757         local variables.
1758         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1759         variables.
1760
1761 2018-09-29  Tom Tromey  <tom@tromey.com>
1762
1763         * README: Remove some leftover text.
1764
1765 2018-09-29  Tom Tromey  <tom@tromey.com>
1766
1767         * PROBLEMS: Rewrite.
1768         * README: Update.
1769
1770 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1771
1772         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1773         case with explicit breakpoint kind.
1774         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1775         'additional_info' and related logic.
1776         (riscv_debug_breakpoints): New variable.
1777         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1778         instruction to determine the breakpoint kind.
1779         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1780         flag.  Update description of 'set/show riscv
1781         use-compressed-breakpoints' flag.
1782
1783 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1784
1785         (NEWS): Mention changes to frame related commands.
1786         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1787         (add_prefix_cmd_suppress_notification): New function.
1788         (add_com_suppress_notification): Call
1789         add_cmd_suppress_notification.
1790         * command.h (add_cmd_suppress_notification): Declare.
1791         (add_prefix_cmd_suppress_notification): Declare.
1792         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1793         (parse_frame_specification): Moved from stack.c, with
1794         simplification to handle a single argument.
1795         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1796         switch to the selected frame.  Add a header comment.
1797         * stack.c: Remove 'safe-ctype.h' include.
1798         (find_frame_for_function): Add declaration.
1799         (find_frame_for_address): New function.
1800         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1801         (frame_selection_by_function_completer): New function.
1802         (info_frame_command): Rename to...
1803         (info_frame_command_core): ...this, and update parameter types.
1804         (select_frame_command): Rename to...
1805         (select_frame_command_core): ...this, and update parameter types.
1806         (frame_command): Rename to...
1807         (frame_command_core): ...this, and update parameter types.
1808         (class frame_command_helper): New class to wrap implementations of
1809         frame related sub-commands.
1810         (frame_apply_cmd_list): New static global.
1811         (frame_cmd_list): Make static.
1812         (select_frame_cmd_list): New global for sub-commands.
1813         (info_frame_cmd_list): New global for sub-commands.
1814         (_initialize_stack): Register sub-commands for 'frame',
1815         'select-frame', and 'info frame'.  Update 'frame apply' commands
1816         to use frame_apply_cmd_list.  Move function local static
1817         frame_apply_list to file static frame_apply_cmd_list for
1818         consistency.
1819         * stack.h (select_frame_command): Delete declarationn.
1820         (select_frame_for_mi): Declare new function.
1821
1822 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1823
1824         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1825         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1826         and NOP.
1827
1828 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1829
1830         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1831
1832 2018-09-26  Tom Tromey  <tom@tromey.com>
1833
1834         * valops.c (auto_abandon): Remove dead code.
1835
1836 2018-09-26  Tom Tromey  <tom@tromey.com>
1837
1838         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1839
1840 2018-09-24  Tom Tromey  <tom@tromey.com>
1841
1842         * common/pathstuff.c (get_standard_cache_dir): Make
1843         "xdg_cache_home" and "home" const.
1844         * top.c (init_history): Make "tmpenv" const.
1845         * main.c (get_init_files): Make "homedir" const.
1846
1847 2018-09-23  Tom Tromey  <tom@tromey.com>
1848
1849         PR python/18852:
1850         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1851
1852 2018-09-23  Tom Tromey  <tom@tromey.com>
1853
1854         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1855         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1856         * python/python-internal.h (gdbpy_handle_exception): Declare.
1857         * python/py-utils.c (gdbpy_handle_exception): New function.
1858
1859 2018-09-23  Tom Tromey  <tom@tromey.com>
1860
1861         PR python/17284:
1862         * python/py-type.c (typy_template_argument): Check for negative
1863         argument number.
1864
1865 2018-09-23  Tom Tromey  <tom@tromey.com>
1866
1867         PR python/14062:
1868         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1869
1870 2018-09-23  Tom Tromey  <tom@tromey.com>
1871
1872         PR python/18170:
1873         * python/py-value.c (valpy_int): Allow conversion from pointer
1874         type.
1875
1876 2018-09-23  Tom Tromey  <tom@tromey.com>
1877
1878         PR python/20126:
1879         * python/py-value.c (valpy_int): Respect type sign.
1880
1881 2018-09-23  Tom Tromey  <tom@tromey.com>
1882
1883         PR python/18352;
1884         * python/py-value.c (valpy_float): Allow conversions from int or
1885         char.
1886         (valpy_int, valpy_long): Allow conversions from float.
1887
1888 2018-09-23  Tom Tromey  <tom@tromey.com>
1889
1890         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1891         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1892
1893 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1894
1895         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1896         __sighndlr.
1897         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1898
1899 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1900
1901         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1902         target_terminal::ours().
1903
1904 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1905
1906         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1907         of vl to ULONGEST.
1908
1909 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1910
1911         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1912         redundant condition.
1913
1914 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1915
1916         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1917
1918         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1919         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1920         * sol-thread.c (ps_pdmodel): Don't guard definition.
1921
1922         * procfs.c: Fix formatting.
1923
1924         * procfs.c (sysset_t_alloc): Remove.
1925         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1926         (procfs_debug_inferior): Likewise.
1927         (procfs_set_exec_trap): Likewise.
1928         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1929         (proc_set_traced_sysexit): Likewise.
1930
1931         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1932         (dead_procinfo): Likewise.
1933         (proc_warn): Likewise.
1934         (proc_error): Likewise.
1935         (proc_get_LDT_entry): Likewise.
1936         (do_attach): Likewise.
1937         (procfs_target::pid_to_str): Likewise.
1938         (iterate_over_mappings): Likewise.
1939
1940         * procfs.c (create_procinfo): Fix ARI warning.
1941         (proc_get_status): Likewise.
1942         (proc_stop_process): Likewise.
1943         (proc_run_process): Likewise.
1944         (proc_kill): Likewise.
1945         (proc_get_LDT_entry): Likewise.
1946         (procfs_find_LDT_entry): Likewise.
1947         (proc_update_threads): Likewise.
1948         (proc_iterate_over_threads): Likewise.
1949         (do_attach): Likewise.
1950         (procfs_xfer_memory): Likewise.
1951         (invalidate_cache): Likewise.
1952         (procfs_target::resume): Likewise.
1953         (procfs_init_inferior): Likewise.
1954         (procfs_set_exec_trap): Likewise.
1955         (procfs_target::thread_alive): Likewise.
1956         (procfs_target::pid_to_exec_file): Likewise.
1957         (iterate_over_mappings): Likewise.
1958         (procfs_target::make_corefile_notes): Likewise.
1959         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1960
1961         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1962         (procfs_find_LDT_entry): Likewise.
1963         * sol-thread.c (ps_lgetLDT): Likewise.
1964
1965 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1966
1967         PR tdep/17903
1968         * procfs.c (procfs_target): Declare pid_to_exec_file.
1969         (procfs_target::pid_to_exec_file): New.
1970
1971 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1972
1973         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1974         renaming.
1975         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1976         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1977
1978 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1979
1980         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1981         (supply_fpregset, fill_fpregset): Move ...
1982         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1983         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1984         Remove references to ioctl-based procfs.
1985         Include <sys/reg.h>.
1986         Remove PR_MODEL_NATIVE guards.
1987         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1988         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1989
1990 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1991
1992         PR gdb/20981:
1993         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1994         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1995         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1996
1997 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1998
1999         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2000         (fbsd_print_sockaddr_in6): Likewise.
2001
2002 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2003             Chris January  <chris.january@arm.com>
2004
2005         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2006         (evaluate_subexp_standard): Return a dummy type when
2007         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2008         OP_F77_UNDETERMINED_ARGLIST case.
2009         * expression.h (enum noside): Update comment.
2010
2011 2018-09-19  George Vasick <george.vasick@oracle.com>
2012
2013         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2014
2015 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2016             April Chin <april.chin@oracle.com>
2017             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2018
2019         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2020         uint_t lwpid_t.
2021         (create_procinfo): Print pids in /proc without leading zeros.
2022
2023 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2024
2025         * nios2-tdep.c (nios2_gcc_target_options): New.
2026         (nios2_gdb_arch_init): Install new hook.
2027
2028 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2029
2030         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2031         New file.
2032         * update-gnulib.sh: Apply patch.
2033         * configure: Re-generate.
2034
2035 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2036
2037         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2038         description.  Make "info proc" command descriptions more
2039         consistent.
2040
2041 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2042
2043         * NEWS: Mention 'info proc files' command.
2044
2045 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2046
2047         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2048         descriptors for IP_FILES and IP_ALL.
2049
2050 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2051
2052         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2053         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2054         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2055         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2056         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2057         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2058         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2059         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2060         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2061         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2062         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2063         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2064         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2065         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2066         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2067         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2068         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2069         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2070         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2071         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2072         (struct fbsd_sockaddr_un): New types.
2073         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2074         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2075         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2076         (fbsd_core_info_proc_files): New functions.
2077         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2078         IP_ALL.
2079         * fbsd-tdep.h (fbsd_info_proc_files_header)
2080         (fbsd_info_proc_files_entry): New.
2081
2082 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2083
2084         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2085         * infcmd.c (info_proc_cmd_files): New function.
2086         (_initialize_infcmd): Register 'info proc files' command.
2087
2088 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2089
2090         * gnulib/aclocal-m4-deps.mk: Re-generate.
2091         * gnulib/aclocal.m4: Re-generate.
2092         * gnulib/config.in: Re-generate.
2093         * gnulib/configure: Re-generate.
2094         * gnulib/import/Makefile.am: Re-generate.
2095         * gnulib/import/Makefile.in: Re-generate.
2096         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2097         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2098         * gnulib/import/arpa_inet.in.h: New file.
2099         * gnulib/import/inet_ntop.c: New file.
2100         * gnulib/import/m4/arpa_inet_h.m4: New file.
2101         * gnulib/import/m4/inet_ntop.m4: New file.
2102         * gnulib/import/m4/netinet_in_h.m4: New file.
2103         * gnulib/import/m4/socklen.m4: New file.
2104         * gnulib/import/m4/sockpfaf.m4: New file.
2105         * gnulib/import/m4/stdalign.m4: New file.
2106         * gnulib/import/m4/sys_uio_h.m4: New file.
2107         * gnulib/import/netinet_in.in.h: New file.
2108         * gnulib/import/stdalign.in.h: New file.
2109         * gnulib/import/sys_socket.c: New file.
2110         * gnulib/import/sys_socket.in.h: New file.
2111         * gnulib/import/sys_uio.in.h: New file.
2112         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2113         module.
2114
2115 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2116
2117         * gnulib/aclocal-m4-deps.mk: New file.
2118         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2119         deterministically.
2120
2121 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2122
2123         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2124         KVE_PATH.
2125
2126 2018-09-18  Tom Tromey  <tom@tromey.com>
2127
2128         * compile/compile-object-load.c (struct
2129         link_hash_table_cleanup_data): Add constructor and destructor.
2130         Use DISABLE_COPY_AND_ASSIGN.
2131         (~link_hash_table_cleanup_data): Rename from
2132         link_hash_table_free.  Now a destructor.
2133         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2134
2135 2018-09-18  Tom Tromey  <tom@tromey.com>
2136
2137         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2138         * compile/compile-object-load.c (struct munmap_list): Move to
2139         header file.
2140         (munmap_list::add): Rename from munmap_list_add; rewrite.
2141         (munmap_list::~munmap_list): Rename from munmap_list_free.
2142         (munmap_listp_free_cleanup): Remove.
2143         (compile_object_load): Update.
2144         * compile/compile-object-load.h (struct munmap_list): Move from
2145         compile-object-load.c.  Rewrite.
2146
2147 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2148
2149         * aarch64-tdep.c (pass_in_v): Use register size.
2150         (aarch64_extract_return_value): Likewise.
2151         (aarch64_store_return_value): Likewise.
2152
2153 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2154
2155         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2156         rlim_t.
2157
2158 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2159
2160         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2161         Fix short help line.
2162
2163 2018-09-17  Tom Tromey  <tom@tromey.com>
2164
2165         PR python/20445:
2166         * configure: Rebuild.
2167         * configure.ac: Conditionally use -DNDEBUG for Python.
2168
2169 2018-09-17  Tom Tromey  <tom@tromey.com>
2170
2171         * configure: Rebuild.
2172         * configure.ac: Use gmp as a library dependency when checking for
2173         mpfr.
2174
2175 2018-09-17  Pedro Alves  <palves@redhat.com>
2176
2177         * python/py-inferior.c (find_inferior_object): Delete.
2178
2179 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2180
2181         * compile/compile-cplus-types.c
2182         (compile_cplus_instance::enter_scope): Don't use new_scope after
2183         std::move.
2184
2185 2018-09-17  Tom Tromey  <tom@tromey.com>
2186
2187         * common/pathstuff.c (get_standard_cache_dir): Use
2188         ~/Library/Caches on macOS.
2189         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2190
2191 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2192
2193         PR python/23669
2194         * breakpoint.c (commands_cmd_element): New.
2195         (_initialize_breakpoint): Assign commands_cmd_element.
2196         * breakpoint.h (commands_cmd_element): New.
2197         * cli/cli-script.c (while_cmd_element, if_command,
2198         define_cmd_element): New.
2199         (command_name_equals): Remove.
2200         (process_next_line): Compare commands by pointer, not by name.
2201         (_initialize_cli_script): Assign the various cmd_list_element
2202         variables.
2203         * compile/compile.c (compile_cmd_element): New.
2204         (_initialize_compile): Assign compile_cmd_element.
2205         * compile/compile.h (compile_cmd_element): New.
2206         * guile/guile.c (guile_cmd_element): New.
2207         (install_gdb_commands): Assign guile_cmd_element.
2208         * guile/guile.h (guile_cmd_element): New.
2209         * python/python.c (python_cmd_element): New.
2210         (_initialize_python): Assign python_cmd_element.
2211         * python/python.h (python_cmd_element): New.
2212         * tracepoint.c (while_stepping_cmd_element): New.
2213         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2214         * tracepoint.h (while_stepping_cmd_element): New.
2215
2216 2018-09-17  Tom Tromey  <tom@tromey.com>
2217
2218         * infrun.c (save_infcall_suspend_state): Return
2219         infcall_suspend_state_up.
2220         (save_infcall_control_state): Return infcall_control_state_up.
2221         * inferior.h (save_infcall_suspend_state)
2222         (save_infcall_control_state): Declare later.  Return unique
2223         pointers.
2224
2225 2018-09-17  Tom Tromey  <tom@tromey.com>
2226
2227         * infrun.c (struct stop_context): Declare constructor,
2228         destructor, "changed" method.
2229         (stop_context::stop_context): Rename from save_stop_context.
2230         (stop_context::~stop_context): Rename from
2231         release_stop_context_cleanup.
2232         (normal_stop): Update.
2233         (stop_context::changed): Rename from stop_context_changed.  Return
2234         bool.
2235
2236 2018-09-17  Tom Tromey  <tom@tromey.com>
2237
2238         * inferior.h (struct infcall_suspend_state_deleter): New.
2239         (infcall_suspend_state_up): New typedef.
2240         (struct infcall_control_state_deleter): New.
2241         (infcall_control_state_up): New typedef.
2242         (make_cleanup_restore_infcall_suspend_state)
2243         (make_cleanup_restore_infcall_control_state): Don't declare.
2244         * infcall.c (call_function_by_hand_dummy): Update.
2245         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2246         (make_cleanup_restore_infcall_suspend_state): Remove.
2247         (do_restore_infcall_control_state_cleanup)
2248         (make_cleanup_restore_infcall_control_state): Remove.
2249
2250 2018-09-17  Tom Tromey  <tom@tromey.com>
2251
2252         * gdbthread.h (struct thread_control_state): Add initializer.
2253         (class thread_info) <control>: Remove initializer.
2254         * inferior.h (struct inferior_control_state): Add initializer.
2255         (class inferior) <control>: Remove initializer.
2256         (exit_inferior_1): Update.
2257         * infrun.c (struct infcall_control_state): Add constructors.
2258         (save_infcall_control_state): Use new.
2259         (restore_infcall_control_state, discard_infcall_control_state):
2260         Use delete.
2261
2262 2018-09-17  Tom Tromey  <tom@tromey.com>
2263
2264         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2265         unique_ptr.
2266         <siginfo_data>: Now a unique_xmalloc_ptr.
2267         (save_infcall_suspend_state, restore_infcall_suspend_state)
2268         (discard_infcall_suspend_state)
2269         (get_infcall_suspend_state_regcache): Update.
2270
2271 2018-09-17  Tom Tromey  <tom@tromey.com>
2272
2273         * gdbthread.h (struct thread_suspend_state): Add initializers.
2274         (class thread_info) <suspend>: Remove initializer.
2275         * infrun.c (struct infcall_suspend_state): Add initializers.
2276         (save_infcall_suspend_state): Use new.
2277         (discard_infcall_suspend_state): Use delete.
2278
2279 2018-09-16  Tom Tromey  <tom@tromey.com>
2280
2281         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2282         Remove.
2283         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2284         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2285         (py_varobj_iter_new): Likewise.
2286         (py_varobj_get_iterator): Use gdbpy_ref.
2287
2288 2018-09-16  Tom Tromey  <tom@tromey.com>
2289
2290         * python/py-threadevent.c (py_get_event_thread): Simplify.
2291         * python/py-inferior.c (infpy_thread_from_thread_handle):
2292         Return immediately after calling thread_to_thread_object.  Use
2293         Py_RETURN_NONE.
2294         (thread_to_thread_object): Set the exception on a NULL return.
2295
2296 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2297
2298         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2299
2300 2018-09-16  Tom Tromey  <tom@tromey.com>
2301
2302         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2303         Remove.
2304
2305 2018-09-16  Tom Tromey  <tom@tromey.com>
2306
2307         * python/python-internal.h (thread_to_thread_object): Change
2308         return type.
2309         * python/py-inferior.c (thread_to_thread_object): Return a new
2310         reference.
2311         (infpy_thread_from_thread_handle): Update.
2312         * python/py-infthread.c (gdbpy_selected_thread): Update.
2313         * python/py-stopevent.c (create_stop_event_object): Update.
2314         * python/py-threadevent.c (py_get_event_thread): Return a new
2315         reference.
2316         (py_get_event_thread): Update.
2317         * python/py-event.h (py_get_event_thread): Change return type.
2318         * python/py-continueevent.c (create_continue_event_object):
2319         Update.
2320
2321 2018-09-16  Tom Tromey  <tom@tromey.com>
2322
2323         * python/py-progspace.c (pspy_get_objfiles): Update.
2324         * python/python-internal.h (objfile_to_objfile_object): Change
2325         return type.
2326         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2327         Update.
2328         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2329         Update.
2330         * python/python.c (gdbpy_get_current_objfile): Update.
2331         (gdbpy_objfiles): Update.
2332         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2333         Update.
2334         (objfile_to_objfile_object): Return a new reference.
2335         * python/py-symtab.c (stpy_get_objfile): Update.
2336         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2337         Update.
2338
2339 2018-09-16  Tom Tromey  <tom@tromey.com>
2340
2341         * python/py-inferior.c (infpy_get_progspace): Update.
2342         * python/python-internal.h (pspace_to_pspace_object): Change
2343         return type.
2344         * python/py-newobjfileevent.c
2345         (create_clear_objfiles_event_object): Update.
2346         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2347         Update.
2348         * python/python.c (gdbpy_get_current_progspace): Update.
2349         (gdbpy_progspaces): Update.
2350         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2351         reference.
2352         * python/py-objfile.c (objfpy_get_progspace): Update.
2353         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2354         Update.
2355
2356 2018-09-16  Tom Tromey  <tom@tromey.com>
2357
2358         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2359         (solib_name, block_for_pc, find_pc_line): New functions.
2360         (execute_unwinders): Update.
2361         * python/py-block.c (gdbpy_block_for_pc): Remove.
2362         * python/py-inferior.c (infpy_get_progspace): New function.
2363         (inferior_object_getset) <progspace>: Add.
2364         * python/py-progspace.c (pspy_objfiles): Rewrite.
2365         (pspy_solib_name, pspy_block_for_pc)
2366         (pspy_find_pc_line, pspy_is_valid): New functions.
2367         (progspace_object_methods): Add entries for solib_name,
2368         block_for_pc, find_pc_line, is_valid.
2369         * python/python-internal.h (gdbpy_block_for_pc)
2370         (build_objfiles_list): Don't declare.
2371         * python/python.c: Don't include solib.h.
2372         (gdbpy_solib_name, gdbpy_find_pc_line)
2373         (gdbpy_get_current_progspace, build_objfiles_list)
2374         (gdbpy_objfiles): Remove.
2375         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2376         solib_name, find_pc_line>: Remove entries.
2377
2378 2018-09-16  Tom Tromey  <tom@tromey.com>
2379
2380         * top.c (new_ui_command): Use GNU style for metasyntactic
2381         variables.
2382         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2383         variables.
2384         * maint.c (maintenance_translate_address): Remove "<>" around
2385         text.
2386         * interps.c (interpreter_exec_cmd): Use GNU style for
2387         metasyntactic variables.
2388         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2389         metasyntactic variables.
2390         * tracepoint.c (tfind_range_command): Use GNU style for
2391         metasyntactic variables.
2392         (tfind_outside_command): Likewise.
2393         (_initialize_tracepoint): Likewise.
2394         * remote.c (extended_remote_target::create_inferior): Use GNU
2395         style for metasyntactic variables.
2396         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2397         metasyntactic variables.
2398         (adi_assign_command): Likewise.
2399
2400 2018-09-16  Tom Tromey  <tom@tromey.com>
2401
2402         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2403         metasyntactic variables.  Print message if no disassembler options
2404         are available.
2405
2406 2018-09-15  Tom Tromey  <tom@tromey.com>
2407
2408         * infcmd.c (get_inferior_args): Return const char *.
2409         * inferior.h (get_inferior_args): Return type now const.
2410         * linux-tdep.c (linux_fill_prpsinfo): Update.
2411         * procfs.c (procfs_target::make_corefile_notes): Update.
2412
2413 2018-09-07  Tom Tromey  <tom@tromey.com>
2414
2415         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2416         inside the TRY.
2417
2418 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2419
2420         * nios2-tdep.c (nios2_type_align): New.
2421         (nios2_gdb_arch_init): Install type_align hook.
2422
2423 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2424
2425         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2426         type that is neither object file owned, nor gdbarch owned.
2427         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2428         gdbarch is non-NULL.
2429         (alloc_type_instance): Allocate non-objfile owned types on the
2430         gdbarch obstack.
2431         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2432         using TYPE_ALLOC to ensure memory is allocated on the correct
2433         obstack.
2434         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2435         obstack, or the gdbarch obstack.
2436         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2437
2438 2018-09-14  Tom Tromey  <tom@tromey.com>
2439
2440         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2441         block.
2442
2443 2018-09-14  Tom Tromey  <tom@tromey.com>
2444
2445         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2446
2447 2018-09-13  Tom Tromey  <tom@tromey.com>
2448
2449         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2450         static.
2451
2452 2018-09-13  Tom Tromey  <tom@tromey.com>
2453
2454         * exec.c (try_open_exec_file): Use std::string.
2455
2456 2018-09-13  Tom Tromey  <tom@tromey.com>
2457
2458         * utils.h (gdb_bfd_errmsg): Return std::string.
2459         * exec.c (exec_file_attach): Update.
2460         * compile/compile-object-load.c (compile_object_load): Update.
2461         * utils.c (gdb_bfd_errmsg): Return std::string.
2462
2463 2018-09-13  Tom Tromey  <tom@tromey.com>
2464
2465         * procfs.c (struct procinfo_deleter): New.
2466         (procinfo_up): New typedef.
2467         (do_destroy_procinfo_cleanup): Remove.
2468         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2469
2470 2018-09-13  Tom Tromey  <tom@tromey.com>
2471
2472         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2473
2474 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2475 2018-09-13  Tom Tromey  <tom@tromey.com>
2476
2477         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2478         (pspy_get_objfiles): New function.
2479         (progspace_object_methods): New.
2480         (pspace_object_type): Add tp_methods callback.
2481         * python/python-internal.h (build_objfiles_list): New
2482         declaration.
2483         * python/python.c (build_objfiles_list): New function.
2484         (gdbpy_objfiles): Implement using build_objfiles_list.
2485         * NEWS: Mention the Progspace.objfiles method.
2486
2487 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2488
2489         * python/py-inferior.c (infpy_get_progspace): New function.
2490         (inferior_object_getset): Add progspace property.
2491         * NEWS: Mention the new property.
2492
2493 2018-09-13  Tom Tromey  <tom@tromey.com>
2494
2495         PR rust/23650:
2496         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2497
2498 2018-09-13  Tom Tromey  <tom@tromey.com>
2499
2500         PR rust/23626:
2501         * rust-lang.c (rust_enum_variant): Now static.
2502         (rust_empty_enum_p): New function.
2503         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2504         Handle empty enum.
2505
2506 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2507
2508         * python/py-inferior.c (infpy_repr): New.
2509         (inferior_object_type): Register infpy_repr.
2510         * python/py-objfile.c (objfpy_repr): New.
2511         (objfile_object_type): Register objfpy_repr.
2512
2513 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2514
2515         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2516
2517 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2518
2519         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2520         typo.
2521
2522 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2523
2524         * common/common-utils.c: Don't include '<sys/stat.h>'.
2525         (is_regular_file): Move to...
2526         * common/filestuff.c (is_regular_file): ... here.
2527         * common/common-utils.h (is_regular_file): Move to...
2528         * common/filestuff.h (is_regular_file): ... here.
2529
2530 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2531
2532         * skip.c (debug_skip): New variable.
2533         (skiplist_entry::do_skip_file_p): Add debug output.
2534         (skiplist_entry::do_skip_gfile_p): Likewise.
2535         (skiplist_entry::skip_function_p): Likewise.
2536         (_initialize_step_skip): Create debug command.
2537         * NEWS: Mention set/show debug skip.
2538
2539 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2540
2541         * darwin-nat.c (should_disable_startup_with_shell):
2542         New function.
2543         (darwin_nat_target::create_inferior): Add call.
2544
2545 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2546
2547         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2548         inf_port, msg_state>: Initialize.
2549         (struct darwin_thread_info) <signaled, single_step>: Change
2550         type and initialize.
2551         (struct darwin_thread_info) <event>: Initialize.
2552
2553 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2554
2555         PR gdb/23555
2556         PR gdb/23558
2557         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2558         guesses.
2559
2560 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2561
2562         Revert:
2563         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2564
2565         PR gdb/23555
2566         PR gdb/23558
2567         * gnulib/aclocal.m4: Regenerate.
2568         * gnulib/config.in: Regenerate.
2569         * gnulib/configure: Regenerate.
2570         * gnulib/import/Makefile.am: Update.
2571         * gnulib/import/Makefile.in: Update.
2572         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2573         * gnulib/import/_Noreturn.h: ... this.
2574         * gnulib/import/alloca.in.h: Update.
2575         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2576         * gnulib/import/arg-nonnull.h: ... this.
2577         * gnulib/import/assure.h: Update.
2578         * gnulib/import/at-func.c: Update.
2579         * gnulib/import/basename-lgpl.c: Update.
2580         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2581         * gnulib/import/c++defs.h: ... this.
2582         * gnulib/import/canonicalize-lgpl.c: Update.
2583         * gnulib/import/cdefs.h: Update.
2584         * gnulib/import/chdir-long.c: Update.
2585         * gnulib/import/chdir-long.h: Update.
2586         * gnulib/import/cloexec.c: Update.
2587         * gnulib/import/cloexec.h: Update.
2588         * gnulib/import/close.c: Update.
2589         * gnulib/import/closedir.c: Update.
2590         * gnulib/import/config.charset: Update.
2591         * gnulib/import/dirent-private.h: Update.
2592         * gnulib/import/dirent.in.h: Update.
2593         * gnulib/import/dirfd.c: Update.
2594         * gnulib/import/dirname-lgpl.c: Update.
2595         * gnulib/import/dirname.h: Update.
2596         * gnulib/import/dosname.h: Update.
2597         * gnulib/import/dup-safer-flag.c: Update.
2598         * gnulib/import/dup-safer.c: Update.
2599         * gnulib/import/dup.c: Update.
2600         * gnulib/import/dup2.c: Update.
2601         * gnulib/import/errno.in.h: Update.
2602         * gnulib/import/error.c: Update.
2603         * gnulib/import/error.h: Update.
2604         * gnulib/import/exitfail.c: Update.
2605         * gnulib/import/exitfail.h: Update.
2606         * gnulib/import/extra/update-copyright: Update.
2607         * gnulib/import/fchdir.c: Update.
2608         * gnulib/import/fcntl.c: Update.
2609         * gnulib/import/fcntl.in.h: Update.
2610         * gnulib/import/fd-hook.c: Update.
2611         * gnulib/import/fd-hook.h: Update.
2612         * gnulib/import/fd-safer-flag.c: Update.
2613         * gnulib/import/fd-safer.c: Update.
2614         * gnulib/import/fdopendir.c: Update.
2615         * gnulib/import/filename.h: Update.
2616         * gnulib/import/filenamecat-lgpl.c: Update.
2617         * gnulib/import/filenamecat.h: Update.
2618         * gnulib/import/flexmember.h: Update.
2619         * gnulib/import/float+.h: Update.
2620         * gnulib/import/float.c: Update.
2621         * gnulib/import/float.in.h: Update.
2622         * gnulib/import/fnmatch.c: Update.
2623         * gnulib/import/fnmatch.in.h: Update.
2624         * gnulib/import/fnmatch_loop.c: Update.
2625         * gnulib/import/fpucw.h: Update.
2626         * gnulib/import/frexp.c: Update.
2627         * gnulib/import/frexpl.c: Update.
2628         * gnulib/import/fstat.c: Update.
2629         * gnulib/import/fstatat.c: Update.
2630         * gnulib/import/getcwd-lgpl.c: Update.
2631         * gnulib/import/getcwd.c: Update.
2632         * gnulib/import/getdtablesize.c: Update.
2633         * gnulib/import/getlogin_r.c: Update.
2634         * gnulib/import/getprogname.c: Update.
2635         * gnulib/import/getprogname.h: Update.
2636         * gnulib/import/gettext.h: Update.
2637         * gnulib/import/gettimeofday.c: Update.
2638         * gnulib/import/glob-libc.h: Update.
2639         * gnulib/import/glob.c: Update.
2640         * gnulib/import/glob.in.h: Update.
2641         * gnulib/import/glob_internal.h: Update.
2642         * gnulib/import/glob_pattern_p.c: Update.
2643         * gnulib/import/globfree.c: Update.
2644         * gnulib/import/hard-locale.c: Update.
2645         * gnulib/import/hard-locale.h: Update.
2646         * gnulib/import/intprops.h: Update.
2647         * gnulib/import/inttypes.in.h: Update.
2648         * gnulib/import/isnan.c: Update.
2649         * gnulib/import/isnand-nolibm.h: Update.
2650         * gnulib/import/isnand.c: Update.
2651         * gnulib/import/isnanl-nolibm.h: Update.
2652         * gnulib/import/isnanl.c: Update.
2653         * gnulib/import/itold.c: Update.
2654         * gnulib/import/libc-config.h: Update.
2655         * gnulib/import/limits.in.h: Update.
2656         * gnulib/import/localcharset.c: Update.
2657         * gnulib/import/localcharset.h: Update.
2658         * gnulib/import/localtime-buffer.c: Update.
2659         * gnulib/import/localtime-buffer.h: Update.
2660         * gnulib/import/lstat.c: Update.
2661         * gnulib/import/m4/00gnulib.m4: Update.
2662         * gnulib/import/m4/__inline.m4: Update.
2663         * gnulib/import/m4/absolute-header.m4: Update.
2664         * gnulib/import/m4/alloca.m4: Update.
2665         * gnulib/import/m4/builtin-expect.m4: Update.
2666         * gnulib/import/m4/canonicalize.m4: Update.
2667         * gnulib/import/m4/chdir-long.m4: Update.
2668         * gnulib/import/m4/close.m4: Update.
2669         * gnulib/import/m4/closedir.m4: Update.
2670         * gnulib/import/m4/configmake.m4: Update.
2671         * gnulib/import/m4/d-ino.m4: Update.
2672         * gnulib/import/m4/d-type.m4: Update.
2673         * gnulib/import/m4/dirent_h.m4: Update.
2674         * gnulib/import/m4/dirfd.m4: Update.
2675         * gnulib/import/m4/dirname.m4: Update.
2676         * gnulib/import/m4/double-slash-root.m4: Update.
2677         * gnulib/import/m4/dup.m4: Update.
2678         * gnulib/import/m4/dup2.m4: Update.
2679         * gnulib/import/m4/eealloc.m4: Update.
2680         * gnulib/import/m4/environ.m4: Update.
2681         * gnulib/import/m4/errno_h.m4: Update.
2682         * gnulib/import/m4/error.m4: Update.
2683         * gnulib/import/m4/exponentd.m4: Update.
2684         * gnulib/import/m4/exponentl.m4: Update.
2685         * gnulib/import/m4/extensions.m4: Update.
2686         * gnulib/import/m4/extern-inline.m4: Update.
2687         * gnulib/import/m4/fchdir.m4: Update.
2688         * gnulib/import/m4/fcntl-o.m4: Update.
2689         * gnulib/import/m4/fcntl.m4: Update.
2690         * gnulib/import/m4/fcntl_h.m4: Update.
2691         * gnulib/import/m4/fdopendir.m4: Update.
2692         * gnulib/import/m4/filenamecat.m4: Update.
2693         * gnulib/import/m4/flexmember.m4: Update.
2694         * gnulib/import/m4/float_h.m4: Update.
2695         * gnulib/import/m4/fnmatch.m4: Update.
2696         * gnulib/import/m4/fnmatch_h.m4: Update.
2697         * gnulib/import/m4/fpieee.m4: Update.
2698         * gnulib/import/m4/frexp.m4: Update.
2699         * gnulib/import/m4/frexpl.m4: Update.
2700         * gnulib/import/m4/fstat.m4: Update.
2701         * gnulib/import/m4/fstatat.m4: Update.
2702         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2703         * gnulib/import/m4/getcwd-path-max.m4: Update.
2704         * gnulib/import/m4/getcwd.m4: Update.
2705         * gnulib/import/m4/getdtablesize.m4: Update.
2706         * gnulib/import/m4/getlogin.m4: Update.
2707         * gnulib/import/m4/getlogin_r.m4: Update.
2708         * gnulib/import/m4/getpagesize.m4: Update.
2709         * gnulib/import/m4/getprogname.m4: Update.
2710         * gnulib/import/m4/gettimeofday.m4: Update.
2711         * gnulib/import/m4/glibc21.m4: Update.
2712         * gnulib/import/m4/glob.m4: Update.
2713         * gnulib/import/m4/glob_h.m4: Update.
2714         * gnulib/import/m4/gnulib-cache.m4: Update.
2715         * gnulib/import/m4/gnulib-common.m4: Update.
2716         * gnulib/import/m4/gnulib-comp.m4: Update.
2717         * gnulib/import/m4/gnulib-tool.m4: Update.
2718         * gnulib/import/m4/hard-locale.m4: Update.
2719         * gnulib/import/m4/include_next.m4: Update.
2720         * gnulib/import/m4/inttypes-pri.m4: Update.
2721         * gnulib/import/m4/inttypes.m4: Update.
2722         * gnulib/import/m4/isnand.m4: Update.
2723         * gnulib/import/m4/isnanl.m4: Update.
2724         * gnulib/import/m4/largefile.m4: Update.
2725         * gnulib/import/m4/limits-h.m4: Update.
2726         * gnulib/import/m4/localcharset.m4: Update.
2727         * gnulib/import/m4/locale-fr.m4: Update.
2728         * gnulib/import/m4/locale-ja.m4: Update.
2729         * gnulib/import/m4/locale-zh.m4: Update.
2730         * gnulib/import/m4/localtime-buffer.m4: Update.
2731         * gnulib/import/m4/longlong.m4: Update.
2732         * gnulib/import/m4/lstat.m4: Update.
2733         * gnulib/import/m4/malloc.m4: Update.
2734         * gnulib/import/m4/malloca.m4: Update.
2735         * gnulib/import/m4/math_h.m4: Update.
2736         * gnulib/import/m4/mbrtowc.m4: Update.
2737         * gnulib/import/m4/mbsinit.m4: Update.
2738         * gnulib/import/m4/mbsrtowcs.m4: Update.
2739         * gnulib/import/m4/mbstate_t.m4: Update.
2740         * gnulib/import/m4/memchr.m4: Update.
2741         * gnulib/import/m4/memmem.m4: Update.
2742         * gnulib/import/m4/mempcpy.m4: Update.
2743         * gnulib/import/m4/memrchr.m4: Update.
2744         * gnulib/import/m4/mkdir.m4: Update.
2745         * gnulib/import/m4/mkstemp.m4: Update.
2746         * gnulib/import/m4/mmap-anon.m4: Update.
2747         * gnulib/import/m4/mode_t.m4: Update.
2748         * gnulib/import/m4/msvc-inval.m4: Update.
2749         * gnulib/import/m4/msvc-nothrow.m4: Update.
2750         * gnulib/import/m4/multiarch.m4: Update.
2751         * gnulib/import/m4/nocrash.m4: Update.
2752         * gnulib/import/m4/off_t.m4: Update.
2753         * gnulib/import/m4/onceonly.m4: Update.
2754         * gnulib/import/m4/open-cloexec.m4: Update.
2755         * gnulib/import/m4/open.m4: Update.
2756         * gnulib/import/m4/openat.m4: Update.
2757         * gnulib/import/m4/opendir.m4: Update.
2758         * gnulib/import/m4/pathmax.m4: Update.
2759         * gnulib/import/m4/rawmemchr.m4: Update.
2760         * gnulib/import/m4/readdir.m4: Update.
2761         * gnulib/import/m4/readlink.m4: Update.
2762         * gnulib/import/m4/realloc.m4: Update.
2763         * gnulib/import/m4/rename.m4: Update.
2764         * gnulib/import/m4/rewinddir.m4: Update.
2765         * gnulib/import/m4/rmdir.m4: Update.
2766         * gnulib/import/m4/save-cwd.m4: Update.
2767         * gnulib/import/m4/secure_getenv.m4: Update.
2768         * gnulib/import/m4/setenv.m4: Update.
2769         * gnulib/import/m4/signal_h.m4: Update.
2770         * gnulib/import/m4/ssize_t.m4: Update.
2771         * gnulib/import/m4/stat-time.m4: Update.
2772         * gnulib/import/m4/stat.m4: Update.
2773         * gnulib/import/m4/std-gnu11.m4: Update.
2774         * gnulib/import/m4/stdbool.m4: Update.
2775         * gnulib/import/m4/stddef_h.m4: Update.
2776         * gnulib/import/m4/stdint.m4: Update.
2777         * gnulib/import/m4/stdio_h.m4: Update.
2778         * gnulib/import/m4/stdlib_h.m4: Update.
2779         * gnulib/import/m4/strchrnul.m4: Update.
2780         * gnulib/import/m4/strdup.m4: Update.
2781         * gnulib/import/m4/strerror.m4: Update.
2782         * gnulib/import/m4/string_h.m4: Update.
2783         * gnulib/import/m4/strstr.m4: Update.
2784         * gnulib/import/m4/strtok_r.m4: Update.
2785         * gnulib/import/m4/sys_socket_h.m4: Update.
2786         * gnulib/import/m4/sys_stat_h.m4: Update.
2787         * gnulib/import/m4/sys_time_h.m4: Update.
2788         * gnulib/import/m4/sys_types_h.m4: Update.
2789         * gnulib/import/m4/tempname.m4: Update.
2790         * gnulib/import/m4/time_h.m4: Update.
2791         * gnulib/import/m4/unistd-safer.m4: Update.
2792         * gnulib/import/m4/unistd_h.m4: Update.
2793         * gnulib/import/m4/warn-on-use.m4: Update.
2794         * gnulib/import/m4/wchar_h.m4: Update.
2795         * gnulib/import/m4/wchar_t.m4: Update.
2796         * gnulib/import/m4/wctype_h.m4: Update.
2797         * gnulib/import/m4/wint_t.m4: Update.
2798         * gnulib/import/malloc.c: Update.
2799         * gnulib/import/malloc/scratch_buffer.h: Update.
2800         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2801         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2802         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2803         * gnulib/import/malloca.c: Update.
2804         * gnulib/import/malloca.h: Update.
2805         * gnulib/import/malloca.valgrind: Update.
2806         * gnulib/import/math.in.h: Update.
2807         * gnulib/import/mbrtowc.c: Update.
2808         * gnulib/import/mbsinit.c: Update.
2809         * gnulib/import/mbsrtowcs-impl.h: Update.
2810         * gnulib/import/mbsrtowcs-state.c: Update.
2811         * gnulib/import/mbsrtowcs.c: Update.
2812         * gnulib/import/memchr.c: Update.
2813         * gnulib/import/memmem.c: Update.
2814         * gnulib/import/mempcpy.c: Update.
2815         * gnulib/import/memrchr.c: Update.
2816         * gnulib/import/mkdir.c: Update.
2817         * gnulib/import/mkstemp.c: Update.
2818         * gnulib/import/msvc-inval.c: Update.
2819         * gnulib/import/msvc-inval.h: Update.
2820         * gnulib/import/msvc-nothrow.c: Update.
2821         * gnulib/import/msvc-nothrow.h: Update.
2822         * gnulib/import/open.c: Update.
2823         * gnulib/import/openat-die.c: Update.
2824         * gnulib/import/openat-priv.h: Update.
2825         * gnulib/import/openat-proc.c: Update.
2826         * gnulib/import/openat.c: Update.
2827         * gnulib/import/openat.h: Update.
2828         * gnulib/import/opendir.c: Update.
2829         * gnulib/import/pathmax.h: Update.
2830         * gnulib/import/pipe-safer.c: Update.
2831         * gnulib/import/rawmemchr.c: Update.
2832         * gnulib/import/readdir.c: Update.
2833         * gnulib/import/readlink.c: Update.
2834         * gnulib/import/realloc.c: Update.
2835         * gnulib/import/ref-add.sin: Update.
2836         * gnulib/import/ref-del.sin: Update.
2837         * gnulib/import/rename.c: Update.
2838         * gnulib/import/rewinddir.c: Update.
2839         * gnulib/import/rmdir.c: Update.
2840         * gnulib/import/same-inode.h: Update.
2841         * gnulib/import/save-cwd.c: Update.
2842         * gnulib/import/save-cwd.h: Update.
2843         * gnulib/import/scratch_buffer.h: Update.
2844         * gnulib/import/secure_getenv.c: Update.
2845         * gnulib/import/setenv.c: Update.
2846         * gnulib/import/signal.in.h: Update.
2847         * gnulib/import/stat-time.c: Update.
2848         * gnulib/import/stat-time.h: Update.
2849         * gnulib/import/stat-w32.c: Update.
2850         * gnulib/import/stat-w32.h: Update.
2851         * gnulib/import/stat.c: Update.
2852         * gnulib/import/stdbool.in.h: Update.
2853         * gnulib/import/stddef.in.h: Update.
2854         * gnulib/import/stdint.in.h: Update.
2855         * gnulib/import/stdio.in.h: Update.
2856         * gnulib/import/stdlib.in.h: Update.
2857         * gnulib/import/str-two-way.h: Update.
2858         * gnulib/import/strchrnul.c: Update.
2859         * gnulib/import/strdup.c: Update.
2860         * gnulib/import/streq.h: Update.
2861         * gnulib/import/strerror-override.c: Update.
2862         * gnulib/import/strerror-override.h: Update.
2863         * gnulib/import/strerror.c: Update.
2864         * gnulib/import/string.in.h: Update.
2865         * gnulib/import/stripslash.c: Update.
2866         * gnulib/import/strnlen1.c: Update.
2867         * gnulib/import/strnlen1.h: Update.
2868         * gnulib/import/strstr.c: Update.
2869         * gnulib/import/strtok_r.c: Update.
2870         * gnulib/import/sys_stat.in.h: Update.
2871         * gnulib/import/sys_time.in.h: Update.
2872         * gnulib/import/sys_types.in.h: Update.
2873         * gnulib/import/tempname.c: Update.
2874         * gnulib/import/tempname.h: Update.
2875         * gnulib/import/time.in.h: Update.
2876         * gnulib/import/unistd--.h: Update.
2877         * gnulib/import/unistd-safer.h: Update.
2878         * gnulib/import/unistd.in.h: Update.
2879         * gnulib/import/unsetenv.c: Update.
2880         * gnulib/import/verify.h: Update.
2881         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2882         * gnulib/import/wchar.in.h: Update.
2883         * gnulib/import/wctype.in.h: Update.
2884         * gnulib/import/xalloc-oversized.h: Update.
2885         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2886         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2887
2888 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2889
2890         * record-btrace.c (get_thread_current_frame): Remove
2891         old_inferior_ptid.
2892
2893 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2894
2895         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2896         with check_tag to 1 if and only if the type is tagged and the
2897         component being searched cannot been found in the current
2898         view. Otherwise, always call ada_to_fixed_type with
2899         check_tag to 0.
2900
2901 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2902
2903         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2904         declaration.
2905         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2906         * ada-varobj.c (ada_varobj_get_number_of_children,
2907         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2908
2909 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2910
2911         * ada-valprint.c (ada_value_print): Use type instead of
2912         enclosing type.
2913
2914 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2915
2916         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2917         an array of access to unconstrained array.
2918
2919 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2920
2921         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2922         (ada_check_typedef): Use it.
2923
2924 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2925
2926         * ada-varobj.c (ada_varobj_describe_struct_child)
2927         (ada_varobj_describe_child): Handle union case like struct one.
2928
2929 2018-09-10  Tom Tromey  <tom@tromey.com>
2930
2931         PR python/18380:
2932         * python/python.c (_initialize_python): Make example in "python"
2933         help work in Python 3.
2934
2935 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2936
2937         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2938         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2939         $(EXEEXT) to the script, as it is not a program.
2940
2941 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2942
2943         * python/py-prettyprint.c (pretty_print_one_value): Return
2944         gdbpy_ref<>.
2945         (print_string_repr): Adjust.
2946         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2947         * python/python-internal.h (apply_varobj_pretty_printer): Return
2948         gdbpy_ref<>.
2949         * varobj.c (varobj_value_get_print_value): Adjust.
2950
2951 2018-09-08  Tom Tromey  <tom@tromey.com>
2952
2953         PR python/16047:
2954         * python/py-prettyprint.c (pretty_print_one_value): Check for
2955         to_string method.
2956
2957 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2958
2959         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2960         replace_operator_with_call.
2961
2962 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2963
2964         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2965
2966 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2967
2968         * ada-typeprint.c (print_range): Print the bounds using TYPE
2969         rather than its TYPE_TARGET_TYPE.
2970
2971 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2972
2973         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2974         call to ada_to_fixed_value_create.
2975
2976 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2977
2978         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2979
2980 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2981
2982         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2983         by calls to error.
2984
2985 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2986
2987         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2988         Move update of loop variable "fi".
2989
2990 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2991
2992         * ada-lang.c (value_assign_to_component): In the case of
2993         big-endian targets, extract the bits of the given VAL
2994         using an src_offset of zero if container is not a scalar.
2995
2996 2018-09-06  Simon Ser  <contact@emersion.fr>
2997
2998         PR gdb/23105
2999         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3000         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3001         * fbsd-tdep.c (fbsd_make_note_desc): New.
3002         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3003         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3004         * target.h (enum target_object) Add FreeBSD-specific
3005         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3006
3007 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3008
3009         * compile/compile-c.h (generate_c_for_variable_locations):
3010         Change reference to pointer.
3011         * compile/compile-c-support.c (compile_program) <compute>:
3012         Likewise.
3013         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3014         (generate_c_for_for_one_variable): Likewise
3015         (generate_c_for_variable_locations): Likewise
3016         * compile/compile-c-types.c (compile_c_instance::convert_type):
3017         Likewise
3018         * compile/compile-cplus-symbols.c (convert_one_symbol):
3019         std::move the scope passed to enter_scope.
3020         * compile/compile-cplus-types.c
3021         (compile_cplus_instance::enter_scope): Make parameter
3022         rvalue-reference.
3023         (compile_cplus_instance::new_scope): Change reference to
3024         pointer.
3025         (compile_cplus_instance::convert_type): Likewise
3026         (compile_cplus_convert_typedef): std::move the scope passed to
3027         enter_scope.
3028         (compile_cplus_convert_struct_or_union): Likewise.
3029         (compile_cplus_convert_enum): Likewise.
3030         (compile_cplus_convert_namespace): Likewise.
3031         * compile/compile-cplus.h (compile_cplus_instance)
3032         <enter_scope>: Make parameter rvalue-reference.
3033         * compile/compile-internal.h (compile_instance)
3034         <get_cached_type>: Likewise
3035         * compile/compile-loc2c.c (push): Likewise
3036         (pushf): Likewise
3037         (unary): Likewise
3038         (binary): Likewise
3039         (print_label): Likewise
3040         (pushf_register_address): Likewise
3041         (pushf_register): Likewise
3042         (do_compile_dwarf_expr_to_c): Likewise
3043         (compile_dwarf_expr_to_c): Likewise
3044         (compile_dwarf_bounds_to_c): Likewise
3045         * compile/compile.c (compile_instance::get_cached_type):
3046         Likewise
3047         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3048         (compile_dwarf_bounds_to_c): Likewise
3049         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3050         (dwarf2_compile_property_to_c): Likewise
3051         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3052         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3053         Likewise
3054
3055 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3056
3057         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3058         * tui/tui-data.c (init_content_element): Don't initialize it.
3059
3060 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3061
3062         * tui/tui-data.h (struct tui_win_info)
3063         <detail::opaque>: Remove.
3064         * tui/tui-data.c (init_win_info): Remove assignment.
3065
3066 2018-09-05  Tom Tromey  <tom@tromey.com>
3067
3068         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3069         -Wformat-nonliteral.
3070         * target-float.c (host_float_ops<T>::to_string)
3071         (host_float_ops<T>::from_string): Use
3072         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3073         * configure: Rebuild.
3074
3075 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3076
3077         * printcmd.c (printf_c_string): Use
3078         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3079         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3080
3081 2018-09-05  Tom Tromey  <tom@tromey.com>
3082
3083         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3084
3085 2018-09-05  Tom de Vries  <tdevries@suse.de>
3086
3087         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3088         with resolve_abstract_p == true.
3089         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3090         defaulting to false. Propagate resolve_abstract_p to
3091         dwarf2_fetch_die_loc_sect_off.
3092         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3093         parameter, defaulting to false.
3094         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3095         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3096         parameter.
3097         * dwarf2read.h (struct die_info): Forward-declare.
3098         (die_info_ptr): New typedef.
3099         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3100
3101 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3102
3103         GDB 8.2 released.
3104
3105 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3106             Pedro Alves  <palves@redhat.com>
3107
3108         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3109         "aclocal-m4-deps.mk".  Include file here.
3110         $(srcdir)/aclocal.m4: Add "configure.ac".
3111         * gnulib/aclocal-m4-deps.mk: New file.
3112         * gnulib/update-gnulib.sh: Automatically update
3113         "aclocal-m4-deps.mk".
3114
3115 2018-09-04  Tom Tromey  <tom@tromey.com>
3116
3117         * configure: Rebuild.
3118         * configure.ac: Remove multi-ice code.
3119
3120 2018-09-04  Tom Tromey  <tom@tromey.com>
3121
3122         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3123         (ada-exp.o): Update.
3124
3125 2018-09-04  Tom Tromey  <tom@tromey.com>
3126
3127         * Makefile.in (printcmd.o, target-float.o): Remove.
3128         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3129
3130 2018-09-04  Tom Tromey  <tom@tromey.com>
3131
3132         * gnulib/Makefile.in: Remove obsolete comment.
3133         * Makefile.in: Remove obsolete comment.
3134
3135 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3136
3137         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3138         line with '+'.
3139
3140 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3141
3142         * riscv-tdep.c: Add 'prologue-value.h' include.
3143         (struct riscv_unwind_cache): New struct.
3144         (riscv_debug_unwinder): New global.
3145         (riscv_scan_prologue): Update arguments, capture register details
3146         from prologue scan.
3147         (riscv_skip_prologue): Reformat arguments line, move end of
3148         prologue calculation into riscv_scan_prologue.
3149         (riscv_frame_cache): Update return type, create
3150         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3151         details.
3152         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3153         (riscv_frame_prev_register): Use the trad_frame within the
3154         riscv_unwind_cache.
3155         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3156         flag.
3157
3158 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3159
3160         * trad-frame.h (trad_frame_set_realreg): Declare.
3161         (trad_frame_set_addr): Declare.
3162         * trad-frame.c (trad_frame_set_realreg): Define new function.
3163         (trad_frame_set_addr): Define new function.
3164         (trad_frame_set_reg_realreg): Use new function.
3165         (trad_frame_set_reg_addr): Use new function.
3166
3167 2018-09-01  Keith Seitz  <keiths@redhat.com>
3168
3169         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3170         pulongest instead of "%lld".
3171         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3172         ATTRIBUTE_UNUSED.
3173
3174 2018-08-31  Tom Tromey  <tom@tromey.com>
3175
3176         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3177         variant part type.
3178
3179 2018-08-31  Pedro Alves  <palves@redhat.com>
3180
3181         * gdbarch.h: Regenerate.
3182
3183 2018-08-31  Pedro Alves  <palves@redhat.com>
3184
3185         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3186         * target.h (Hardware watchpoint interfaces): Describe
3187         continuable/steppable/non-steppable watchpoints.
3188         * gdbarch.h, gdbarch.c: Regenerate.
3189
3190 2018-08-31  Pedro Alves  <palves@redhat.com>
3191
3192         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3193         Delete.
3194         * s390-linux-nat.c
3195         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3196         * target.h (target_ops::have_continuable_watchpoint): Delete.
3197         (target_have_continuable_watchpoint): Delete.
3198         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3199         * target-delegates.c: Regenerate.
3200
3201 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3202
3203         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3204         the files present in "gnulib/import/m4/".
3205
3206 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3207
3208         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3209         c.sw, c.swsp, and c.sdsp.
3210
3211 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3212
3213         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3214         (riscv_read_misa_reg): Don't cache value read into inferior data.
3215         (riscv_new_inferior_data): Delete.
3216         (riscv_inferior_data_cleanup): Delete.
3217         (riscv_inferior_data): Delete.
3218         (riscv_invalidate_inferior_data): Delete.
3219         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3220
3221 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3222
3223         * compile/compile-cplus-types.c
3224         (compile_cplus_instance::leave_scope): Take the address of scope
3225         object.
3226         (compile_cplus_instance::convert_qualified_base): Compare quals
3227         to 0.
3228
3229 2018-08-30  Keith Seitz  <keiths@redhat.com>
3230
3231         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3232         Use "%s" and host_address_to_string instead of "%p" in printf.
3233
3234 2018-08-29  Keith Seitz  <keiths@redhat.com>
3235
3236         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3237         and compile-cplus-types.c.
3238         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3239         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3240         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3241         Declare.
3242         * compile/compile-c-support.c: Include compile-cplus.h.
3243         (load_libcompile): Templatize.
3244         (get_compile_context): "New" function.
3245         (c_get_compile_context): Use get_compile_context.
3246         (cplus_get_compile_context): New function.
3247         (cplus_push_user_expression, cplus_pop_user_expression)
3248         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3249         (cplus_compute_program): Define new structs/functions.
3250         * compile/compile-cplus-symmbols.c: New file.
3251         * compile/compile-cplus-types.c: New file.
3252         * compile/compile-cplus.h: New file.
3253         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3254         Declare.
3255         * compile/compile-object-load.c (get_out_value_type): Use
3256         strncmp_iw when comparing symbol names.
3257         (compile_object_load): Add mst_bss and mst_data.
3258         * compile/compile.c (_initialize_compile): Remove
3259         -Wno-implicit-function-declaration from `compile_args'.
3260         * compile/gcc-cp-plugin.h: New file.
3261         * NEWS: Mention C++ compile support and new debug options.
3262
3263 2018-08-29  Keith Seitz  <keiths@redhat.com>
3264
3265         * linespec.c (collect_info::add_symbol): Make virtual.
3266         (struct symbol_searcher_collect_info): New struct.
3267         (symbol_searcher::find_all_symbols): New method.
3268         * symtab.h (class symbol_searcher): New class.
3269
3270 2018-08-29  Keith Seitz  <keiths@redhat.com>
3271
3272         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3273         Change to vector of block_symbol.  Update all users.
3274         (struct collect_info) <symbols>: Likewise.
3275         (collect_info::add_symbol): Take block_symbol as argument.
3276         Update all callers.
3277         (decode_compound_collector) <m_symbols>: Change type to vector
3278         of block_symbol.  Update all users.
3279         (decode_compound_collector::operator ()): Change parameter type
3280         to block_symbol.
3281         (find_method, find_function_symbols, find_linespec_symbols)
3282         (find_label_symbols_in_block, find_label_symbols): Change symbol
3283         vectors to block_symbol vectors.
3284         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3285         block_symbol.
3286
3287 2018-08-29  Keith Seitz  <keiths@redhat.com>
3288
3289         * linespec.c (symbolp): Remove typedef and VEC definitions.
3290         (bound_minimal_symbol_d): Likewise.
3291
3292 2018-08-29  Keith Seitz  <keiths@redhat.com>
3293
3294         * linespec.c (decode_compound_collector::decode_compound_collector):
3295         Remove initialization for `m_symtabs'.
3296         (decode_compound_collector::release_symbols): Change return type
3297         to std::vector.  Update all callers.
3298         (class decode_compound_collector) <m_symbols>: Change type to
3299         std::vector.
3300         (lookup_prefix_sym): Change return type to std::vector.  Update all
3301         callers.
3302         (compare_symbols): Remove.
3303         (std_compare_symbols): Rename to `compare_symbols'.
3304         (find_method): Change `sym_classes' parameter to std::vector.
3305         Update all callers.  Use std::sort to sort sym_classes.
3306         (find_linespec_symbols): Remove cleanup.
3307
3308 2018-08-29  Keith Seitz  <keiths@redhat.com>
3309
3310         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3311         std::vector.  Update all users.
3312         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3313         (struct collect_info) <minimal_symbols>: Likewise.
3314         (compare_msymbols): Return bool.  Change parameters to const
3315         bound_minimal_symbol references.
3316         (find_method, find_function_symbols, find_linespec_symbols): Change
3317         `minsyms' parameter to std::vector.  Update all callers.
3318
3319 2018-08-29  Keith Seitz  <keiths@redhat.com>
3320
3321         * linespec.c (struct linespec) <label_symbols>: Change type to
3322         std::vector.  Update all users.
3323         (find_label_symbols_in_block): Change `result' parameter to
3324         std::vector.  Update all callers.
3325         (find_label_symbols): Return std::vector.  Update all callers.
3326
3327 2018-08-29  Keith Seitz  <keiths@redhat.com>
3328
3329         * linespec.c (struct linespec) <function_symbols>: Change type to
3330         std::vector.  Update all users.
3331         (struct collect_info) <function_symbols>: Likewise.
3332         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3333         (std_compare_symbols): New function.
3334         (find_method, find_function_symbols, find_linespec_symbols)
3335         (find_label_symbols_in_block): Change `symbols' parameter to
3336         std::vector.  Update all callers.
3337         (find_label_symbols): Likewise for `function_symbols' and
3338         `label_funcs_ret'.
3339
3340 2018-08-29  Keith Seitz  <keiths@redhat.com>
3341
3342         * linespec.c (symtab_vector_up): Define.
3343         (struct linespec) <file_symtabs>: Change type to std::vector *.
3344         Update all uses.
3345         (struct collect_info) <file_symtabs>: Likewise.
3346         (collect_symtabs_from_filename): Return symtab_vector_up.
3347         Update all callers.
3348         (decode_objc): Remove cleanup.
3349         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3350         (symtab_collector::release_symtabs): Return symtab_vector_up.
3351         Update all callers.
3352         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3353         Update all users.
3354         (collect_symtabs_from_filename, symtabs_from_filename): Return
3355         symtab_vector_up.  Update all callers.
3356
3357 2018-08-29  Tom Tromey  <tom@tromey.com>
3358
3359         * csky-tdep.c (csky_analyze_prologue): Use
3360         core_addr_to_string_nz.
3361
3362 2018-08-29  Tom Tromey  <tom@tromey.com>
3363
3364         * windows-nat.c (struct xlate_exception) <them>: Change type to
3365         DWORD.
3366         (xlate): Fix formatting.  Remove last entry.
3367         (struct xlate_exception, xlate): Comment out.
3368         (windows_nat_target::resume): Use ranged for.
3369
3370 2018-08-29  Jim Wilson  <jimw@sifive.com>
3371
3372         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3373         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3374         of NT_PRFPREG.
3375         (riscv_linux_nat_target::store_registers): Likewise.
3376
3377 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3378
3379         PR gdb/23555
3380         PR gdb/23558
3381         * gnulib/aclocal.m4: Regenerate.
3382         * gnulib/config.in: Regenerate.
3383         * gnulib/configure: Regenerate.
3384         * gnulib/import/Makefile.am: Update.
3385         * gnulib/import/Makefile.in: Update.
3386         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3387         * gnulib/import/_Noreturn.h: ... this.
3388         * gnulib/import/alloca.in.h: Update.
3389         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3390         * gnulib/import/arg-nonnull.h: ... this.
3391         * gnulib/import/assure.h: Update.
3392         * gnulib/import/at-func.c: Update.
3393         * gnulib/import/basename-lgpl.c: Update.
3394         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3395         * gnulib/import/c++defs.h: ... this.
3396         * gnulib/import/canonicalize-lgpl.c: Update.
3397         * gnulib/import/cdefs.h: Update.
3398         * gnulib/import/chdir-long.c: Update.
3399         * gnulib/import/chdir-long.h: Update.
3400         * gnulib/import/cloexec.c: Update.
3401         * gnulib/import/cloexec.h: Update.
3402         * gnulib/import/close.c: Update.
3403         * gnulib/import/closedir.c: Update.
3404         * gnulib/import/config.charset: Update.
3405         * gnulib/import/dirent-private.h: Update.
3406         * gnulib/import/dirent.in.h: Update.
3407         * gnulib/import/dirfd.c: Update.
3408         * gnulib/import/dirname-lgpl.c: Update.
3409         * gnulib/import/dirname.h: Update.
3410         * gnulib/import/dosname.h: Update.
3411         * gnulib/import/dup-safer-flag.c: Update.
3412         * gnulib/import/dup-safer.c: Update.
3413         * gnulib/import/dup.c: Update.
3414         * gnulib/import/dup2.c: Update.
3415         * gnulib/import/errno.in.h: Update.
3416         * gnulib/import/error.c: Update.
3417         * gnulib/import/error.h: Update.
3418         * gnulib/import/exitfail.c: Update.
3419         * gnulib/import/exitfail.h: Update.
3420         * gnulib/import/extra/update-copyright: Update.
3421         * gnulib/import/fchdir.c: Update.
3422         * gnulib/import/fcntl.c: Update.
3423         * gnulib/import/fcntl.in.h: Update.
3424         * gnulib/import/fd-hook.c: Update.
3425         * gnulib/import/fd-hook.h: Update.
3426         * gnulib/import/fd-safer-flag.c: Update.
3427         * gnulib/import/fd-safer.c: Update.
3428         * gnulib/import/fdopendir.c: Update.
3429         * gnulib/import/filename.h: Update.
3430         * gnulib/import/filenamecat-lgpl.c: Update.
3431         * gnulib/import/filenamecat.h: Update.
3432         * gnulib/import/flexmember.h: Update.
3433         * gnulib/import/float+.h: Update.
3434         * gnulib/import/float.c: Update.
3435         * gnulib/import/float.in.h: Update.
3436         * gnulib/import/fnmatch.c: Update.
3437         * gnulib/import/fnmatch.in.h: Update.
3438         * gnulib/import/fnmatch_loop.c: Update.
3439         * gnulib/import/fpucw.h: Update.
3440         * gnulib/import/frexp.c: Update.
3441         * gnulib/import/frexpl.c: Update.
3442         * gnulib/import/fstat.c: Update.
3443         * gnulib/import/fstatat.c: Update.
3444         * gnulib/import/getcwd-lgpl.c: Update.
3445         * gnulib/import/getcwd.c: Update.
3446         * gnulib/import/getdtablesize.c: Update.
3447         * gnulib/import/getlogin_r.c: Update.
3448         * gnulib/import/getprogname.c: Update.
3449         * gnulib/import/getprogname.h: Update.
3450         * gnulib/import/gettext.h: Update.
3451         * gnulib/import/gettimeofday.c: Update.
3452         * gnulib/import/glob-libc.h: Update.
3453         * gnulib/import/glob.c: Update.
3454         * gnulib/import/glob.in.h: Update.
3455         * gnulib/import/glob_internal.h: Update.
3456         * gnulib/import/glob_pattern_p.c: Update.
3457         * gnulib/import/globfree.c: Update.
3458         * gnulib/import/hard-locale.c: Update.
3459         * gnulib/import/hard-locale.h: Update.
3460         * gnulib/import/intprops.h: Update.
3461         * gnulib/import/inttypes.in.h: Update.
3462         * gnulib/import/isnan.c: Update.
3463         * gnulib/import/isnand-nolibm.h: Update.
3464         * gnulib/import/isnand.c: Update.
3465         * gnulib/import/isnanl-nolibm.h: Update.
3466         * gnulib/import/isnanl.c: Update.
3467         * gnulib/import/itold.c: Update.
3468         * gnulib/import/libc-config.h: Update.
3469         * gnulib/import/limits.in.h: Update.
3470         * gnulib/import/localcharset.c: Update.
3471         * gnulib/import/localcharset.h: Update.
3472         * gnulib/import/localtime-buffer.c: Update.
3473         * gnulib/import/localtime-buffer.h: Update.
3474         * gnulib/import/lstat.c: Update.
3475         * gnulib/import/m4/00gnulib.m4: Update.
3476         * gnulib/import/m4/__inline.m4: Update.
3477         * gnulib/import/m4/absolute-header.m4: Update.
3478         * gnulib/import/m4/alloca.m4: Update.
3479         * gnulib/import/m4/builtin-expect.m4: Update.
3480         * gnulib/import/m4/canonicalize.m4: Update.
3481         * gnulib/import/m4/chdir-long.m4: Update.
3482         * gnulib/import/m4/close.m4: Update.
3483         * gnulib/import/m4/closedir.m4: Update.
3484         * gnulib/import/m4/configmake.m4: Update.
3485         * gnulib/import/m4/d-ino.m4: Update.
3486         * gnulib/import/m4/d-type.m4: Update.
3487         * gnulib/import/m4/dirent_h.m4: Update.
3488         * gnulib/import/m4/dirfd.m4: Update.
3489         * gnulib/import/m4/dirname.m4: Update.
3490         * gnulib/import/m4/double-slash-root.m4: Update.
3491         * gnulib/import/m4/dup.m4: Update.
3492         * gnulib/import/m4/dup2.m4: Update.
3493         * gnulib/import/m4/eealloc.m4: Update.
3494         * gnulib/import/m4/environ.m4: Update.
3495         * gnulib/import/m4/errno_h.m4: Update.
3496         * gnulib/import/m4/error.m4: Update.
3497         * gnulib/import/m4/exponentd.m4: Update.
3498         * gnulib/import/m4/exponentl.m4: Update.
3499         * gnulib/import/m4/extensions.m4: Update.
3500         * gnulib/import/m4/extern-inline.m4: Update.
3501         * gnulib/import/m4/fchdir.m4: Update.
3502         * gnulib/import/m4/fcntl-o.m4: Update.
3503         * gnulib/import/m4/fcntl.m4: Update.
3504         * gnulib/import/m4/fcntl_h.m4: Update.
3505         * gnulib/import/m4/fdopendir.m4: Update.
3506         * gnulib/import/m4/filenamecat.m4: Update.
3507         * gnulib/import/m4/flexmember.m4: Update.
3508         * gnulib/import/m4/float_h.m4: Update.
3509         * gnulib/import/m4/fnmatch.m4: Update.
3510         * gnulib/import/m4/fnmatch_h.m4: Update.
3511         * gnulib/import/m4/fpieee.m4: Update.
3512         * gnulib/import/m4/frexp.m4: Update.
3513         * gnulib/import/m4/frexpl.m4: Update.
3514         * gnulib/import/m4/fstat.m4: Update.
3515         * gnulib/import/m4/fstatat.m4: Update.
3516         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3517         * gnulib/import/m4/getcwd-path-max.m4: Update.
3518         * gnulib/import/m4/getcwd.m4: Update.
3519         * gnulib/import/m4/getdtablesize.m4: Update.
3520         * gnulib/import/m4/getlogin.m4: Update.
3521         * gnulib/import/m4/getlogin_r.m4: Update.
3522         * gnulib/import/m4/getpagesize.m4: Update.
3523         * gnulib/import/m4/getprogname.m4: Update.
3524         * gnulib/import/m4/gettimeofday.m4: Update.
3525         * gnulib/import/m4/glibc21.m4: Update.
3526         * gnulib/import/m4/glob.m4: Update.
3527         * gnulib/import/m4/glob_h.m4: Update.
3528         * gnulib/import/m4/gnulib-cache.m4: Update.
3529         * gnulib/import/m4/gnulib-common.m4: Update.
3530         * gnulib/import/m4/gnulib-comp.m4: Update.
3531         * gnulib/import/m4/gnulib-tool.m4: Update.
3532         * gnulib/import/m4/hard-locale.m4: Update.
3533         * gnulib/import/m4/include_next.m4: Update.
3534         * gnulib/import/m4/inttypes-pri.m4: Update.
3535         * gnulib/import/m4/inttypes.m4: Update.
3536         * gnulib/import/m4/isnand.m4: Update.
3537         * gnulib/import/m4/isnanl.m4: Update.
3538         * gnulib/import/m4/largefile.m4: Update.
3539         * gnulib/import/m4/limits-h.m4: Update.
3540         * gnulib/import/m4/localcharset.m4: Update.
3541         * gnulib/import/m4/locale-fr.m4: Update.
3542         * gnulib/import/m4/locale-ja.m4: Update.
3543         * gnulib/import/m4/locale-zh.m4: Update.
3544         * gnulib/import/m4/localtime-buffer.m4: Update.
3545         * gnulib/import/m4/longlong.m4: Update.
3546         * gnulib/import/m4/lstat.m4: Update.
3547         * gnulib/import/m4/malloc.m4: Update.
3548         * gnulib/import/m4/malloca.m4: Update.
3549         * gnulib/import/m4/math_h.m4: Update.
3550         * gnulib/import/m4/mbrtowc.m4: Update.
3551         * gnulib/import/m4/mbsinit.m4: Update.
3552         * gnulib/import/m4/mbsrtowcs.m4: Update.
3553         * gnulib/import/m4/mbstate_t.m4: Update.
3554         * gnulib/import/m4/memchr.m4: Update.
3555         * gnulib/import/m4/memmem.m4: Update.
3556         * gnulib/import/m4/mempcpy.m4: Update.
3557         * gnulib/import/m4/memrchr.m4: Update.
3558         * gnulib/import/m4/mkdir.m4: Update.
3559         * gnulib/import/m4/mkstemp.m4: Update.
3560         * gnulib/import/m4/mmap-anon.m4: Update.
3561         * gnulib/import/m4/mode_t.m4: Update.
3562         * gnulib/import/m4/msvc-inval.m4: Update.
3563         * gnulib/import/m4/msvc-nothrow.m4: Update.
3564         * gnulib/import/m4/multiarch.m4: Update.
3565         * gnulib/import/m4/nocrash.m4: Update.
3566         * gnulib/import/m4/off_t.m4: Update.
3567         * gnulib/import/m4/onceonly.m4: Update.
3568         * gnulib/import/m4/open-cloexec.m4: Update.
3569         * gnulib/import/m4/open.m4: Update.
3570         * gnulib/import/m4/openat.m4: Update.
3571         * gnulib/import/m4/opendir.m4: Update.
3572         * gnulib/import/m4/pathmax.m4: Update.
3573         * gnulib/import/m4/rawmemchr.m4: Update.
3574         * gnulib/import/m4/readdir.m4: Update.
3575         * gnulib/import/m4/readlink.m4: Update.
3576         * gnulib/import/m4/realloc.m4: Update.
3577         * gnulib/import/m4/rename.m4: Update.
3578         * gnulib/import/m4/rewinddir.m4: Update.
3579         * gnulib/import/m4/rmdir.m4: Update.
3580         * gnulib/import/m4/save-cwd.m4: Update.
3581         * gnulib/import/m4/secure_getenv.m4: Update.
3582         * gnulib/import/m4/setenv.m4: Update.
3583         * gnulib/import/m4/signal_h.m4: Update.
3584         * gnulib/import/m4/ssize_t.m4: Update.
3585         * gnulib/import/m4/stat-time.m4: Update.
3586         * gnulib/import/m4/stat.m4: Update.
3587         * gnulib/import/m4/std-gnu11.m4: Update.
3588         * gnulib/import/m4/stdbool.m4: Update.
3589         * gnulib/import/m4/stddef_h.m4: Update.
3590         * gnulib/import/m4/stdint.m4: Update.
3591         * gnulib/import/m4/stdio_h.m4: Update.
3592         * gnulib/import/m4/stdlib_h.m4: Update.
3593         * gnulib/import/m4/strchrnul.m4: Update.
3594         * gnulib/import/m4/strdup.m4: Update.
3595         * gnulib/import/m4/strerror.m4: Update.
3596         * gnulib/import/m4/string_h.m4: Update.
3597         * gnulib/import/m4/strstr.m4: Update.
3598         * gnulib/import/m4/strtok_r.m4: Update.
3599         * gnulib/import/m4/sys_socket_h.m4: Update.
3600         * gnulib/import/m4/sys_stat_h.m4: Update.
3601         * gnulib/import/m4/sys_time_h.m4: Update.
3602         * gnulib/import/m4/sys_types_h.m4: Update.
3603         * gnulib/import/m4/tempname.m4: Update.
3604         * gnulib/import/m4/time_h.m4: Update.
3605         * gnulib/import/m4/unistd-safer.m4: Update.
3606         * gnulib/import/m4/unistd_h.m4: Update.
3607         * gnulib/import/m4/warn-on-use.m4: Update.
3608         * gnulib/import/m4/wchar_h.m4: Update.
3609         * gnulib/import/m4/wchar_t.m4: Update.
3610         * gnulib/import/m4/wctype_h.m4: Update.
3611         * gnulib/import/m4/wint_t.m4: Update.
3612         * gnulib/import/malloc.c: Update.
3613         * gnulib/import/malloc/scratch_buffer.h: Update.
3614         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3615         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3616         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3617         * gnulib/import/malloca.c: Update.
3618         * gnulib/import/malloca.h: Update.
3619         * gnulib/import/malloca.valgrind: Update.
3620         * gnulib/import/math.in.h: Update.
3621         * gnulib/import/mbrtowc.c: Update.
3622         * gnulib/import/mbsinit.c: Update.
3623         * gnulib/import/mbsrtowcs-impl.h: Update.
3624         * gnulib/import/mbsrtowcs-state.c: Update.
3625         * gnulib/import/mbsrtowcs.c: Update.
3626         * gnulib/import/memchr.c: Update.
3627         * gnulib/import/memmem.c: Update.
3628         * gnulib/import/mempcpy.c: Update.
3629         * gnulib/import/memrchr.c: Update.
3630         * gnulib/import/mkdir.c: Update.
3631         * gnulib/import/mkstemp.c: Update.
3632         * gnulib/import/msvc-inval.c: Update.
3633         * gnulib/import/msvc-inval.h: Update.
3634         * gnulib/import/msvc-nothrow.c: Update.
3635         * gnulib/import/msvc-nothrow.h: Update.
3636         * gnulib/import/open.c: Update.
3637         * gnulib/import/openat-die.c: Update.
3638         * gnulib/import/openat-priv.h: Update.
3639         * gnulib/import/openat-proc.c: Update.
3640         * gnulib/import/openat.c: Update.
3641         * gnulib/import/openat.h: Update.
3642         * gnulib/import/opendir.c: Update.
3643         * gnulib/import/pathmax.h: Update.
3644         * gnulib/import/pipe-safer.c: Update.
3645         * gnulib/import/rawmemchr.c: Update.
3646         * gnulib/import/readdir.c: Update.
3647         * gnulib/import/readlink.c: Update.
3648         * gnulib/import/realloc.c: Update.
3649         * gnulib/import/ref-add.sin: Update.
3650         * gnulib/import/ref-del.sin: Update.
3651         * gnulib/import/rename.c: Update.
3652         * gnulib/import/rewinddir.c: Update.
3653         * gnulib/import/rmdir.c: Update.
3654         * gnulib/import/same-inode.h: Update.
3655         * gnulib/import/save-cwd.c: Update.
3656         * gnulib/import/save-cwd.h: Update.
3657         * gnulib/import/scratch_buffer.h: Update.
3658         * gnulib/import/secure_getenv.c: Update.
3659         * gnulib/import/setenv.c: Update.
3660         * gnulib/import/signal.in.h: Update.
3661         * gnulib/import/stat-time.c: Update.
3662         * gnulib/import/stat-time.h: Update.
3663         * gnulib/import/stat-w32.c: Update.
3664         * gnulib/import/stat-w32.h: Update.
3665         * gnulib/import/stat.c: Update.
3666         * gnulib/import/stdbool.in.h: Update.
3667         * gnulib/import/stddef.in.h: Update.
3668         * gnulib/import/stdint.in.h: Update.
3669         * gnulib/import/stdio.in.h: Update.
3670         * gnulib/import/stdlib.in.h: Update.
3671         * gnulib/import/str-two-way.h: Update.
3672         * gnulib/import/strchrnul.c: Update.
3673         * gnulib/import/strdup.c: Update.
3674         * gnulib/import/streq.h: Update.
3675         * gnulib/import/strerror-override.c: Update.
3676         * gnulib/import/strerror-override.h: Update.
3677         * gnulib/import/strerror.c: Update.
3678         * gnulib/import/string.in.h: Update.
3679         * gnulib/import/stripslash.c: Update.
3680         * gnulib/import/strnlen1.c: Update.
3681         * gnulib/import/strnlen1.h: Update.
3682         * gnulib/import/strstr.c: Update.
3683         * gnulib/import/strtok_r.c: Update.
3684         * gnulib/import/sys_stat.in.h: Update.
3685         * gnulib/import/sys_time.in.h: Update.
3686         * gnulib/import/sys_types.in.h: Update.
3687         * gnulib/import/tempname.c: Update.
3688         * gnulib/import/tempname.h: Update.
3689         * gnulib/import/time.in.h: Update.
3690         * gnulib/import/unistd--.h: Update.
3691         * gnulib/import/unistd-safer.h: Update.
3692         * gnulib/import/unistd.in.h: Update.
3693         * gnulib/import/unsetenv.c: Update.
3694         * gnulib/import/verify.h: Update.
3695         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3696         * gnulib/import/wchar.in.h: Update.
3697         * gnulib/import/wctype.in.h: Update.
3698         * gnulib/import/xalloc-oversized.h: Update.
3699         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3700         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3701
3702 2018-08-16  Gary Benson <gbenson@redhat.com>
3703
3704         PR gdb/13000:
3705         * gdb/main.c (captured_main_1): Exit with nonzero status
3706         in batch mode if the last command to be executed failed.
3707         * NEWS: Mention the above.
3708
3709 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3710
3711         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3712         end of warning message.
3713
3714 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3715
3716         PR gdb/22943:
3717         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3718         (aarch64_extract_return_value): Use
3719         aapcs_is_vfp_call_or_return_candidate.
3720         (aarch64_return_in_memory): Likewise.
3721         (aarch64_store_return_value): Likewise.
3722
3723 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3724
3725         * aarch64-tdep.c
3726         (aapcs_is_vfp_call_or_return_candidate): Make static
3727         (pass_in_v_or_stack): Remove function.
3728         (pass_in_v_vfp_candidate): New function.
3729         (aarch64_push_dummy_call): Check for float register candidates.
3730
3731 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3732
3733         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3734         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3735         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3736
3737 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3738
3739         PR build/23399
3740         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3741         (struct ipa_sym_addresses): Rename to...
3742         (struct ipa_sym_addresses_common): ... this.
3743         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3744
3745 2018-08-28  Tom Tromey  <tom@tromey.com>
3746
3747         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3748         (token_fifo): Now a std::vector.
3749         (yylex, c_parse): Update.
3750         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3751         (token_fifo): Now a std::vector.
3752         (yylex, d_parse): Update.
3753         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3754         (token_fifo): Now a std::vector.
3755         (yylex, go_parse): Update.
3756
3757 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3758
3759         * parser-defs.h (struct type_stack) <elements>: Change type to
3760         std::vector<union type_stack_elt>.
3761         <depth, size>: Remove.
3762         * parse.c (parse_exp_in_context_1): Adjust.
3763         (type_stack_reserve): Remove.
3764         (check_type_stack_depth): Remove.
3765         (insert_into_type_stack): Adjust to std::vector.
3766         (insert_type): Likewise.
3767         (push_type): Likewise.
3768         (push_type_int): Likewise.
3769         (insert_type_address_space): Likewise.
3770         (pop_type): Likewise.
3771         (pop_type_int): Likewise.
3772         (pop_typelist): Likewise.
3773         (pop_type_stack): Likewise.
3774         (append_type_stack): Likewise.
3775         (push_type_stack): Likewise.
3776         (get_type_stack): Likewise.
3777         (type_stack_cleanup): Likewise.
3778         (push_typelist): Likewise.
3779         (follow_types): Likewise.
3780         (_initialize_parse): Likewise.
3781
3782 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3783
3784         * NEWS: Mention csky target.
3785
3786 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3787             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3788             Don Breazeal  <donb@codesourcery.com>
3789
3790         * csky-linux-tdep.c: New file.
3791         * csky-tdep.c: Likewise.
3792         * csky-tdep.h: Likewise.
3793         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3794         csky-tdep.o.
3795         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3796         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3797         * configure.tgt: Add csky support.
3798
3799 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3800
3801         * python/py-framefilter.c (py_print_frame): Print frame architecture
3802         when printing on an MI output.
3803
3804 2018-08-27  Tom Tromey  <tom@tromey.com>
3805
3806         PR build/23087:
3807         * configure: Rebuild.
3808         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3809
3810 2018-08-27  Tom Tromey  <tom@tromey.com>
3811
3812         * aarch64-linux-tdep.c
3813         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3814         casts to int.
3815
3816 2018-08-27  Tom Tromey  <tom@tromey.com>
3817
3818         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3819         unsigned.
3820         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3821         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3822         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3823         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3824         unsigned.
3825
3826 2018-08-27  Tom Tromey  <tom@tromey.com>
3827
3828         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3829         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3830
3831 2018-08-27  Tom Tromey  <tom@tromey.com>
3832
3833         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3834         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3835         ULONGEST_MAX.
3836         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3837         ULONGEST_MAX.
3838         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3839         ULONGEST_MAX.
3840         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3841         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3842         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3843         ULONGEST_MAX.
3844         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3845         (ppc64_linux_sigaction_tramp_frame)
3846         (ppc32_linux_sighandler_tramp_frame)
3847         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3848         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3849         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3850         * mn10300-linux-tdep.c (am33_linux_sigframe)
3851         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3852         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3853         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3854         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3855         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3856         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3857         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3858         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3859         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3860         * microblaze-linux-tdep.c
3861         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3862         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3863         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3864         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3865         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3866         * common/common-types.h (ULONGEST_MAX): New define.
3867         (CORE_ADDR_MAX): Fix formatting.
3868         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3869         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3870         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3871         (arm_linux_rt_sigreturn_tramp_frame)
3872         (arm_eabi_linux_sigreturn_tramp_frame)
3873         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3874         (thumb2_eabi_linux_sigreturn_tramp_frame)
3875         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3876         (arm_linux_restart_syscall_tramp_frame)
3877         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3878         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3879         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3880         ULONGEST_MAX.
3881         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3882
3883 2018-08-27  Tom Tromey  <tom@tromey.com>
3884
3885         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3886         CORE_ADDR_MAX.
3887         * mips-tdep.c (mips_deal_with_atomic_sequence)
3888         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3889         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3890         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3891         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3892         CORE_ADDR_MAX.
3893         * aarch64-tdep.c (aarch64_software_single_step): Use
3894         CORE_ADDR_MAX.
3895
3896 2018-08-27  Tom Tromey  <tom@tromey.com>
3897
3898         * linespec.c (complete_linespec_component): Add cast to "char".
3899         * completer.c (completion_tracker::build_completion_result): Add
3900         cast to "char".
3901
3902 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3903
3904         * solist.h (struct solist, struct target_so_ops): Fix
3905         indentation.
3906
3907 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3908
3909         * ada-tasks.c (ada_task_info_s): Remove typedef.
3910         (DEF_VEC_O(ada_task_info_s)): Remove.
3911         (struct ada_tasks_inferior_data): Initialize fields.
3912         <task_list>: Make an std::vector.
3913         (get_ada_tasks_inferior_data): Allocate with new.
3914         (ada_get_task_number): Adjust.
3915         (get_task_number_from_id): Likewise.
3916         (valid_task_id): Likewise.
3917         (ada_get_task_info_from_ptid): Likewise.
3918         (iterate_over_live_ada_tasks): Likewise.
3919         (add_ada_task): Likewise.
3920         (read_known_tasks): Likewise.
3921         (ada_build_task_list): Likewise.
3922         (print_ada_task_info): Likewise.
3923         (info_task): Likewise.
3924         (task_command_1): Likewise.
3925
3926 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3927
3928         * ada-lang.c (add_angle_brackets): Return std::string.
3929
3930 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3931
3932         * python/py-threadevent.c (py_get_event_thread): Initialize
3933         pythread.
3934
3935 2018-08-24  Pedro Alves  <palves@redhat.com>
3936
3937         * python/py-bpevent.c (create_breakpoint_event_object): Use
3938         copy-initialization.
3939         * python/py-continueevent.c (emit_continue_event): Use
3940         copy-initialization.
3941         * python/py-exitedevent.c (create_exited_event_object): Return a
3942         gdbpy_ref<>.
3943         (emit_exited_event): Use copy-initialization.
3944         * python/py-inferior.c (python_new_inferior)
3945         (python_inferior_deleted, add_thread_object): Use
3946         copy-initialization.
3947         * python/py-infevents.c (create_inferior_call_event_object)
3948         (create_register_changed_event_object)
3949         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3950         (emit_inferior_call_event, emit_memory_changed_event)
3951         (emit_register_changed_event): Use copy-initialization.
3952         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3953         Return a gdbpy_ref<>.
3954         (emit_new_objfile_event): Use copy-initialization.
3955         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3956         (emit_clear_objfiles_event): Use copy-initialization.
3957         * python/py-signalevent.c (create_signal_event_object): Use
3958         copy-initialization.
3959         * python/py-threadevent.c (create_thread_event_object): Use
3960         copy-initialization.
3961
3962 2018-08-24  Pedro Alves  <palves@redhat.com>
3963             Simon Marchi  <simon.marchi@ericsson.com>
3964
3965         PR gdb/23379
3966         * python/py-continueevent.c: Include "gdbthread.h".
3967         (create_continue_event_object): Add intro comment.  Add 'ptid'
3968         parameter.  Use it to find thread to pass to
3969         create_thread_event_object.
3970         (emit_continue_event): Pass PTID down to
3971         create_continue_event_object.
3972         * python/py-event.h (py_get_event_thread): Declare.
3973         (create_thread_event_object): Remove default from 'thread'
3974         parameter.
3975         * python/py-stopevent.c (create_stop_event_object): Use
3976         py_get_event_thread.
3977         * python/py-threadevent.c (get_event_thread): Rename to ...
3978         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3979         and use it to find the thread.
3980         (create_thread_event_object): Assert that THREAD isn't null.
3981         Don't find the event thread here.
3982
3983 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3984
3985         * block.h (blockrange, blockranges): New struct declarations.
3986         (struct block): Add new field named `ranges'.
3987         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3988         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3989         macros for accessing ranges in struct block.
3990         (make_blockranges): New declaration.
3991         block.c (make_blockranges): New function.
3992         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3993         for block.
3994         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3995         * blockframe.c (cache_pc_function_block): New static global.
3996         (clear_pc_function_cache): Clear cache_pc_function_block.
3997         (find_pc_partial_function): Move comment to symtab.h.  Add
3998         support for non-contiguous blocks.
3999         * cli/cli-cmds.c (block.h): Include.
4000         (print_disassembly): Handle printing of non-contiguous blocks.
4001         (disassemble_current_function): Likewise.
4002         (disassemble_command): Likewise.
4003
4004         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4005         BLOCK_START.
4006         * blockframe.c (get_pc_function_start): Likewise.
4007         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4008         (gcc_symbol_address): Likewise.
4009         * compile/compile-object-run.c (compile_object_run): Likewise.
4010         * compile/compile.c (get_expr_block_and_pc): Likewise.
4011         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4012         (func_addr_to_tail_call_list): Likewise.
4013         * findvar.c (default_read_var_value): Likewise.
4014         * inline-frame.c (inline_frame_this_id): Likewise.
4015         (skip-inline_frames): Likewise.
4016         * infcmd.c (until_next_command): Likewise.
4017         * linespec.c (convert_linespec_to_sals): Likewise.
4018         * parse.c (parse_exp_in_context_1): Likewise.
4019         * printcmd.c (build_address_symbolic): likewise.
4020         (info_address_command): Likewise.
4021         symtab.c (find_function_start_sal): Likewise.
4022         (skip_prologue_sal): Likewise.
4023         (find_function_alias_target): Likewise.
4024         (find_gnu_ifunc): Likewise.
4025         * stack.c (find_frame_funname): Likewise.
4026         * symtab.c (fixup_symbol_section): Likewise.
4027         (find_function_start_sal): Likewise.
4028         (skip_prologue_sal): Likewsie.
4029         (find_function_alias_target): Likewise.
4030         (find_gnu_ifunc): Likewise.
4031         * tracepoint.c (info_scope_command): Likewise.
4032         * value.c (value_fn_field): Likewise.
4033
4034         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4035         in place of find_pc_partial_function.
4036         * blockframe.c (find_function_entry_range_from_pc): New function.
4037         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4038         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4039         for each range in a block.
4040
4041
4042 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4043
4044         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4045         incrementation.
4046
4047 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4048
4049         * solib-svr4.c (read_program_headers_from_bfd): Return
4050         gdb::optional<gdb::byte_vector>.
4051         (svr4_exec_displacement): Adjust.
4052
4053 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4054
4055         * solib-svr4.c (read_program_header): Return
4056         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4057         (find_program_interpreter): Return
4058         gdb::optional<gdb::byte_vector>.
4059         (scan_dyntag_auxv): Adjust.
4060         (enable_break): Adjust.
4061         (svr4_exec_displacement): Adjust.
4062
4063 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4064
4065         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4066         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4067
4068 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4069
4070         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4071         string_vprintf.
4072         * guile/scm-utils.c (gdbscm_printf): Likewise.
4073         * serial.c (serial_printf): Likewise.
4074         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4075
4076 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4077
4078         * stack.c (print_frame): Print frame architecture when printing on
4079         an MI output.
4080         * NEWS: Mention new "arch" attribute in frame output.
4081
4082 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4083
4084         * arch/aarch64.h (aarch64_regnum): Update comment.
4085
4086 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4087
4088         * NEWS: Add SVE to 8.2 section.
4089
4090 2018-08-21  Pedro Alves  <palves@redhat.com>
4091
4092         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4093         out from gdbscm_parse_function_args.
4094         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4095         gdbscm_parse_function_args_1.
4096
4097 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4098
4099         PR gdb/17816
4100         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4101         operator.
4102
4103 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4104
4105         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4106
4107 2018-08-19  Michael Spang  <spang@google.com>
4108
4109         PR gdb/11786
4110         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4111         for PT_TLS segments.
4112
4113 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4114
4115         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4116         dwarf_variable_value.
4117         * dwarf2-frame.c (class dwarf_expr_executor):
4118         Add override for dwarf_variable_value.
4119         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4120         (class symbol_needs_eval_context): Likewise.
4121         (indirect_synthetic_pointer): Add forward declaration.
4122         (sect_variable_value): New function.
4123         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4124         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4125         for DW_OP_GNU_variable_value.
4126
4127 2018-08-16  Tom Tromey  <tom@tromey.com>
4128
4129         * top.c (read_command_file): Update.
4130         (command_line_input): Remove "repeat" argument.
4131         * ada-lang.c (get_selections): Update.
4132         * linespec.c (decode_line_2): Update.
4133         * defs.h (command_line_input): Remove argument.
4134         * cli/cli-script.c (read_next_line): Update.
4135         * python/py-gdb-readline.c: Update.
4136
4137 2018-08-17  Tom Tromey  <tom@tromey.com>
4138
4139         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4140         command_line_input.
4141
4142 2018-08-15  Tom Tromey  <tom@tromey.com>
4143
4144         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4145
4146 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4147
4148         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4149         If used, use find_pc_partial_function to find address range
4150         to disassemble.
4151         * mi/mi-main.c (mi_cmd_list_features): Report
4152         "data-disassemble-a-option" feature.
4153         * NEWS: Mention new -data-disassemble option -a.
4154
4155 2018-08-13  Tom Tromey  <tom@tromey.com>
4156
4157         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4158
4159 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4160
4161         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4162         (aarch64_linux_collect_sve_regset): Likewise.
4163         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4164         * regcache.h (regcache_map_entry_size): New function.
4165
4166 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4167
4168         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4169         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4170         (SVE_HEADER_VL_LENGTH): Likewise.
4171         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4172         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4173         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4174         (SVE_HEADER_SIZE_OFFSET): Likewise.
4175         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4176         (SVE_HEADER_VL_OFFSET): Likewise.
4177         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4178         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4179         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4180         (SVE_HEADER_SIZE): Likewise.
4181         (aarch64_linux_core_read_vq): Add function.
4182         (aarch64_linux_core_read_description): Check for SVE section.
4183
4184 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4185
4186         * aarch64-fbsd-tdep.c
4187         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4188         collect_size.
4189         * aarch64-linux-tdep.c
4190         (aarch64_linux_iterate_over_regset_sections): Likewise.
4191         * alpha-linux-tdep.c
4192         (alpha_linux_iterate_over_regset_sections):
4193         * alpha-nbsd-tdep.c
4194         (alphanbsd_iterate_over_regset_sections): Likewise.
4195         * amd64-fbsd-tdep.c
4196         (amd64fbsd_iterate_over_regset_sections): Likewise.
4197         * amd64-linux-tdep.c
4198         (amd64_linux_iterate_over_regset_sections): Likewise.
4199         * arm-bsd-tdep.c
4200         (armbsd_iterate_over_regset_sections): Likewise.
4201         * arm-fbsd-tdep.c
4202         (arm_fbsd_iterate_over_regset_sections): Likewise.
4203         * arm-linux-tdep.c
4204         (arm_linux_iterate_over_regset_sections): Likewise.
4205         * corelow.c (get_core_registers_cb): Likewise.
4206         (core_target::fetch_registers): Likewise.
4207         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4208         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4209         * gdbarch.h (void): Regenerate.
4210         * gdbarch.sh: Add supply_size and collect_size.
4211         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4212         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4213         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4214         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4215         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4216         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4217         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4218         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4219         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4220         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4221         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4222         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4223         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4224         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4225         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4226         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4227         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4228         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4229         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4230         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4231         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4232         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4233         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4234         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4235         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4236         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4237         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4238         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4239         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4240         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4241
4242 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4243
4244         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4245         with string_printf.
4246
4247 2018-08-10  Keith Seitz  <keiths@redhat.com>
4248
4249         * compile/compile-c-support.c (add_code_header, add_code_footer):
4250         Move into policy class.
4251         (c_push_user_expression, pop_user_expression_nop)
4252         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4253         (compile_program): New host class.
4254         (c_compile_program): New typedef.
4255         (c_compute_porgram): Use c_compile_program.
4256
4257 2018-08-10  Keith Seitz  <keiths@redhat.com>
4258
4259         * compile/compile-internal.h (compile_instance::~compile_instance):
4260         Remove calls to htab_delete.
4261         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4262         * compile.c (compile_instance::compile_instance): Initialize
4263         htab unique pointers.
4264         (compile_instance::get_cached_type, compile_instance::insert_type)
4265         (compile_instance::error_symbol_once): Update for unique_ptr.
4266
4267 2018-08-10  Keith Seitz  <keiths@redhat.com>
4268
4269         * compile/compile-c-symbols.c (struct symbol_error)
4270         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4271         (compile_instance::insert_symbol_error)
4272         (compile_instance::error_symbol_once): Move to ...
4273         * compile/compile.c: ... here.
4274
4275 2018-08-10  Keith Seitz  <keiths@redhat.com>
4276
4277         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4278         instead of `new_compile_instance'.
4279         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4280         Update description.
4281         If the symbol error map is not initialized, create it.
4282         (generate_c_for_for_one_symbol): Do not check/initialize
4283         the symbol error map.
4284         * compile/compile-c-types.c (compile_c_instance): Make a class.
4285         Update all callers.
4286         (compile_instance::compile_instance): Initialize the type cache.
4287         (get_cached_type): New function.
4288         (insert_type): Update description.
4289         (compile_c_instance::m_default_cflags): Define.
4290         (convert_type): Update description.  Use get_cached_type.
4291         (delete_instance): Moved to destructor.
4292         (new_compile_instance): Moved to constructor.
4293         * compile/compile-c.h (compile_c_instance): Make class inheriting
4294         from compile_instance.
4295         <base>: Remove field.
4296         <type_map, symbol_err_map>: Move to base class.
4297         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4298         * compile/compile-internal.h (compile_instance): Make class.
4299         <type_map_t, symbol_err_map_t>: Define.
4300         <fe>: Rename to `m_gcc_fe'.
4301         <scope, block, gcc_target_options>: Add `m_' prefix.
4302         <m_type_map, m_symbol_err_map>: New fields, moved from
4303         compile_c_instance.
4304         <destroy>: Remove.
4305         (convert_type, new_compile_instance): Remove.
4306         * compile/compile.c (cleanup_compile_instance): Remove.
4307         (compile_to_object): Use unique_ptr to eliminate cleanups.
4308         (compile_instance::set_print_callback, compile_instance::version)
4309         (compile_instance::set_verbose)
4310         (compile_instance::set_driver_filename)
4311         (compile_instance::set_triplet_regexp)
4312         (compile_instance::set_arguments)
4313         (compile_instance::set_source_file)
4314         (compile_instance::compile): Define.
4315
4316 2018-08-10  Keith Seitz  <keiths@redhat.com>
4317
4318         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4319         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4320         gcc-c-fe.def to define C plugin.
4321         (delete_instance): Delete `c_plugin'.
4322         (new_compile_instance): Initialize `c_plugin'.
4323         * compile/compile-c.h: Include gcc_c_plugin.h.
4324         (struct compile_c_instance) <c_plugin>: New member.
4325         * gcc-c-plugin.h: New file.
4326         Update all callers with API change.
4327
4328 2018-08-10  Keith Seitz  <keiths@redhat.com>
4329
4330         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4331         (HFILES_NO_SRCDIR): ... to here.
4332         Add compile-internal.h and compile-c.h.
4333         * compile/compile-c-support.c: Include compile-c.h.
4334         * compile/compile-c-symbols.c: Include compile-c.h.
4335         (generate_c_for_variable_locations): Update comment.
4336         * compile/compile-c-types.c: Include compile-c.h.
4337         * compile/compile-c.h: New file -- moved C language declarations
4338         from other files here.
4339         * compile/compile-internal.h: Do not include hashtab.h or
4340         common/enum-flags.h.
4341         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4342         (gcc_convert_symbol, gcc_symbol_address)
4343         (generate_c_for_variable_locations, c_get_mode_for_size)
4344         (c_get_range_decl_name): Definitions moved to compile-c.h.
4345         * compile/compile-loc2c.c: Include compile-c.h.
4346
4347 2018-08-10  Keith Seitz  <keiths@redhat.com>
4348
4349         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4350         (c_symbol_substitution_name): ... this.
4351         Update all callers.
4352
4353 2018-08-10  Keith Seitz  <keiths@redhat.com>
4354
4355         * compile/compile-c-support.c (c_compute_program): Use
4356         unique_xmalloc_ptr to eliminate cleanup.
4357         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4358         Return a unique_xmalloc_ptr and eliminate cleanup.
4359         * compile/compile-internal.h (generate_c_for_variable_locations):
4360         Return unique_xmalloc_ptr and update description.
4361
4362 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4363
4364         * corelow.c (core_target::get_core_register_section): Rename
4365         min_size to section_min_size.
4366
4367 2018-08-09  Jim Wilson  <jimw@sifive.com>
4368
4369         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4370         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4371         * NEWS: Mention new GNU/Linux RISC-V target.
4372         * configure.host: Add riscv*-*-linux*.
4373         * configure.nat: Add riscv*.
4374         * configure.tgt: Add riscv*-*-linux*.
4375         * riscv-linux-nat.c: New file.
4376         * riscv-linux-tdep.c: New file.
4377
4378 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4379
4380         * infrun.c (resume): Make static, add forward declaration.
4381         (proceed): Update header comment.
4382         * infrun.h (resume): Delete declaration.
4383
4384 2018-08-09  Tom Tromey  <tom@tromey.com>
4385
4386         * riscv-tdep.h: Minor formatting fixes.
4387
4388 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4389
4390         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4391         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4392         (test_mkdir_recursive): Likewise.
4393         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4394
4395 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4396
4397         * valarith.c (value_subscripted_rvalue): If an array is not in
4398         memory, and we don't know the upper bound, then we can't know that
4399         the requested element exists or not.
4400
4401 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4402
4403         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4404         (target_options_to_string): Add comment.
4405
4406 2018-08-08  Tom Tromey  <tom@tromey.com>
4407
4408         * unittests/scoped_mmap-selftests.c: Check result of "write".
4409
4410 2018-08-08  Jim Wilson  <jimw@sifive.com>
4411
4412         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4413         (decode_register_index_short): New.
4414         (decode_j_type_insn, decode_cj_type_insn): New.
4415         (decode_b_type_insn, decode_cb_type_insn): New.
4416         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4417         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4418         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4419         is_c_sw_insn instead of is_sw_insn.
4420         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4421         (riscv_software_single_step): New.
4422         * riscv-tdep.h (riscv_software_single_step): Declare.
4423
4424         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4425         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4426
4427 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4428
4429         PR gdb/18050:
4430         * target.c (dispose_inferior): Don't dispose of inferiors that are
4431         already killed.
4432
4433 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4434
4435         * remote.c (remote_target::download_tracepoint): Change char* to
4436         const char*.
4437
4438 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4439
4440         * target.h (target_options_to_string): Return an std::string.
4441         * target.c (str_comma_list_concat_elem): Return void, use
4442         std::string.
4443         (do_option): Likewise.
4444         (target_options_to_string): Return an std::string.
4445         * linux-nat.c (linux_nat_target::wait): Adjust.
4446         * target-debug.h (target_debug_print_options): Adjust.
4447
4448 2018-08-07  Tom Tromey  <tom@tromey.com>
4449
4450         * Makefile.in (CPPFLAGS): New variable.
4451         (INTERNAL_CPPFLAGS): Use it.
4452
4453 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4454
4455         * NEWS: Mention the index cache.
4456
4457 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4458
4459         * common/pathstuff.h (get_standard_cache_dir): New.
4460         * common/pathstuff.c (get_standard_cache_dir): New.
4461         * build-id.h (build_id_to_string): New.
4462         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4463         DEBUG_STR_SUFFIX): Move to here.
4464         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4465         DEBUG_STR_SUFFIX): Move from there.
4466         (write_psymtabs_to_index): Make non-static, add basename
4467         parameter.  Write to temporary files, rename when done.
4468         (save_gdb_index_command): Adjust call to
4469         write_psymtabs_to_index.
4470         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4471         field.
4472         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4473         (get_gdb_index_contents_from_cache): New.
4474         (get_gdb_index_contents_from_cache_dwz): New.
4475         (dwarf2_initialize_objfile): Read index from cache.
4476         (dwarf2_build_psymtabs): Save to index.
4477         * dwarf-index-cache.h: New file.
4478         * dwarf-index-cache.c: New file.
4479         * dwarf-index-write.h: New file.
4480
4481 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4482
4483         * gnulib/aclocal.m4: Re-generate.
4484         * gnulib/config.in: Re-generate.
4485         * gnulib/configure: Re-generate.
4486         * gnulib/import/Makefile.am: Re-generate.
4487         * gnulib/import/Makefile.in: Re-generate.
4488         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4489         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4490         * gnulib/import/m4/mkdir.m4: New file.
4491         * gnulib/import/mkdir.c: New file.
4492         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4493         module.
4494
4495 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4496
4497         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4498         * common/scoped_mmap.c: New file.
4499         * common/scoped_mmap.h (destroy): New method.
4500         (~scoped_mmap, reset): Use destroy.
4501         (scoped_mmap): New move constructor.
4502         (mmap_file): New declaration.
4503         * unittests/scoped_mmap-selftests.c (test_normal,
4504         test_invalid_filename, run_tests): New functions.
4505         (_initialize_scoped_mmap_selftests): Register selftest.
4506
4507 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4508
4509         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4510         (read_gdb_index_from_buffer): ... this.  Remove section
4511         parameter, add buffer parameter.
4512         (get_gdb_index_contents_ftype,
4513         get_gdb_index_contents_dwz_ftype): New typedefs.
4514         (dwarf2_read_gdb_index): Add callback parameters to get the
4515         index contents.
4516         (get_gdb_index_contents_from_section): New.
4517         (dwarf2_initialize_objfile): Update call to
4518         dwarf2_read_gdb_index.
4519
4520 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4521
4522         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4523         (gdb_open_cloexec): Likewise.
4524         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4525         (commandline_from_pid): Likewise.
4526         (linux_xfer_osdata_threads): Likewise.
4527         (linux_xfer_osdata_fds): Likewise.
4528         * ada-lang.c (is_package_name): Likewise.
4529         * auxv.c (procfs_xfer_auxv): Likewise.
4530         * breakpoint.c (print_one_breakpoint_location): Use
4531         uiout::field_fmt.
4532         (print_one_catch_solib): Use string_printf.
4533         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4534         (add_pe_forwarded_sym): Likewise.
4535         * dwarf2read.c (create_type_unit_group): Likewise.
4536         (build_error_marker_type): Likewise.
4537         * infcall.c (get_function_name): Likewise.
4538         * valprint.c (print_converted_chars_to_obstack): Likewise.
4539         * xtensa-tdep.c (xtensa_register_type): Likewise.
4540
4541 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4542
4543         * remote.c (remote_target::download_tracepoint): Fix format
4544         string errors.
4545
4546 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4547
4548         * tracefile.c: Include common/byte-vector.h.
4549         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4550         with trace_regblock_size if needed.  Update uses of buf.
4551
4552 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4553
4554         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4555         std::vector<unsigned char>.
4556         * tracepoint.c (collection_list::collection_list): Remove
4557         m_regs_mask initializer from initializer list.  Resize
4558         m_regs_mask using the largest remote register number.
4559         (collection_list::add_remote_register): Remove size check on
4560         m_regs_mask.  Use at to access element.
4561         (collection_list::stringify): Change type of temp_buf to
4562         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4563         stringify the register mask.  Use pack_hex_byte for the register
4564         mask.
4565
4566 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4567
4568         * tracepoint.h (class collection_list) <add_register>: Remove.
4569         <add_remote_register, add_ax_registers, add_local_register>:
4570         Declare.
4571         <add_memrange>: Add scope parameter.
4572         * tracepoint.c (encode_actions_1): Likewise.
4573         (collection_list::add_register): Rename to ...
4574         (collection_list::add_remote_register): ... this.  Update
4575         comment.
4576         (collection_list::add_ax_registers, add_local_register): New
4577         methods.
4578         (collection_list::add_memrange): Add scope parameter.  Call
4579         add_local_register instead of add_register.
4580         (finalize_tracepoint_aexpr): New function.
4581         (collection_list::collect_symbol): Update calls to add_memrange.
4582         Call add_local_register instead of add_register.  Call
4583         add_ax_registers.  Call finalize_tracepoint_aexpr.
4584         (encode_actions_1): Get remote regnos for $reg action.  Call
4585         add_remote_register, add_ax_registers, and add_local_register.
4586         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4587         (validate_actionline): Call finalize_tracepoint_aexpr.
4588
4589 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4590
4591         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4592         Replace array buf with gdb::char_vector buf, of size
4593         get_remote_packet_size ().  Replace references to buf and
4594         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4595         and xsnprintf with snprintf.  Raise errors if the buffer is too
4596         small.
4597
4598 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4599
4600         * remote.c (remote_target::download_tracepoint): Fix the has_more
4601         predicate in the QTDP action list iteration.
4602
4603 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4604
4605         * remote.c (remote_target::download_tracepoint): Fix indentation
4606         in for block.
4607
4608 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4609
4610         * proc-api.c (_initialize_proc_api): Remove c, unused.
4611         * procfs.c (procfs_init_inferior): Remove signals, unused.
4612         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4613         unused.
4614
4615 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4616             Andrew Burgess  <andrew.burgess@embecosm.com>
4617
4618         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4619         'W_STOPCODE (0)' as this could be ambiguous.
4620
4621 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4622
4623         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4624         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4625         "ai_socktype").
4626
4627 2018-08-02  Tom Tromey  <tom@tromey.com>
4628
4629         PR symtab/16842.
4630         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4631         symbols.
4632         (process_structure_scope): Likewise.
4633
4634 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4635
4636         PR gdb/22629:
4637         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4638         kill inferior.
4639
4640 2018-08-02  Tom Tromey  <tom@tromey.com>
4641
4642         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4643         (darwin_suspend_inferior, darwin_resume_inferior)
4644         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4645         (darwin_check_new_threads): Check result of get_darwin_inferior.
4646
4647 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4648
4649         GDB 8.1.1 released.
4650
4651 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4652
4653         * varobj.c (varobj_get_path_expr_parent): Report an error if
4654         parent is a dynamic varobj.
4655
4656 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4657
4658         * gnulib/aclocal.m4: Re-generate.
4659         * gnulib/config.in: Re-generate.
4660         * gnulib/configure: Re-generate.
4661         * gnulib/import/Makefile.in: Re-generate.
4662         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4663         * gnulib/import/m4/onceonly.m4: Re-generate.
4664
4665 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4666
4667         * target-descriptions.c (struct xml_test_tdesc): New.
4668         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4669         (record_xml_tdesc): Update.
4670         (maintenance_check_xml_descriptions): Update.
4671         * target-descriptions.h (record_xml_tdesc): Update comment.
4672
4673 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4674
4675         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4676         checking array bounds are defined.
4677
4678 2018-07-30  Tom Tromey  <tom@tromey.com>
4679
4680         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4681         irreflexivity violation.
4682
4683 2018-07-30  Tom Tromey  <tom@tromey.com>
4684
4685         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4686         * value.c (unpack_long): Remove lint code.
4687         * valops.c (value_ind): Remove lint code.
4688         * valarith.c (value_x_binop, value_x_unop, value_equal)
4689         (value_pos): Remove lint code.
4690
4691 2018-07-28  Tom de Vries  <tdevries@suse.de>
4692
4693         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4694         with undefined upper bound as <optimized out>.
4695
4696 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4697
4698         * gcore.in: Rename variable "name" to "prefix".  Expand
4699         "usage" text.
4700
4701 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4702
4703         * windows-nat.c (windows_nat_target::create_inferior): Update to
4704         call close() in global namespace.
4705
4706 2018-07-26  Tom Tromey  <tom@tromey.com>
4707
4708         * dwarf-index-write.c (add_address_entry): Don't add objfile
4709         offsets.
4710         * dbxread.c (find_stab_function): Rename from
4711         find_stab_function_addr.  Return a bound_minimal_symbol.
4712         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4713         Don't add objfile offsets.
4714         (end_psymtab): Use raw_text_low, raw_text_high,
4715         MSYMBOL_VALUE_RAW_ADDRESS.
4716         (read_ofile_symtab): Update.
4717         (process_one_symbol): Update.
4718         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4719         offsets.
4720         (dw2_relocate): Remove.
4721         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4722         searching addrmap.
4723         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4724         Update.
4725         (process_psymtab_comp_unit_reader, add_partial_symbol)
4726         (add_partial_subprogram, dwarf2_ranges_read): Update.
4727         (load_partial_dies): Update.
4728         (add_address_entry): Don't add objfile offsets.
4729         (dwarf2_build_include_psymtabs): Update.
4730         (create_addrmap_from_aranges): Don't add objfile offsets.
4731         (dw2_find_pc_sect_compunit_symtab): Update.
4732         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4733         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4734         Update.
4735         (parse_partial_symbols): Don't add objfile offsets.  Use
4736         raw_text_low, raw_text_high.  Update.
4737         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4738         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4739         or call 'relocate' quick function.  Clear psymbol_map.
4740         * psympriv.h (struct partial_symbol) <address>: Add section
4741         offset.
4742         <set_unrelocated_address>: Rename from set_address.
4743         <raw_text_low, raw_text_high>: New methods.
4744         <text_low, text_high>: Add objfile parameter.
4745         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4746         set_unrelocated_address.
4747         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4748         (find_pc_psymbol): Update.
4749         (fixup_psymbol_section, relocate_psymtabs): Remove.
4750         (dump_psymtab, psym_functions): Update.
4751         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4752         parameter.
4753         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4754         (start_psymtab_common): Update.
4755         * symfile-debug.c (debug_qf_relocate): Remove.
4756         (debug_sym_quick_functions): Update.
4757         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4758         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4759         Update.
4760
4761 2018-07-26  Tom Tromey  <tromey@redhat.com>
4762
4763         * dbxread.c (end_psymtab): Use text_high_valid and
4764         text_low_valid.
4765         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4766         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4767         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4768         Update comment.
4769         <text_low_valid, text_high_valid>: New fields.
4770         <set_text_low, set_text_high>: Update.
4771         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4772
4773 2018-07-26  Tom Tromey  <tom@tromey.com>
4774
4775         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4776         Update.
4777         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4778         textlow and texthigh fields.
4779         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4780         Update.
4781         * mdebugread.c (parse_lines, parse_partial_symbols)
4782         (psymtab_to_symtab_1): Update.
4783         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4784         Rename fields.  Update comment.  Now private.
4785         <text_low, text_high, set_text_low, set_text_high>: New methods.
4786         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4787         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4788         (start_psymtab_common, maintenance_info_psymtabs)
4789         (maintenance_check_psymtabs): Update.
4790         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4791         texthigh fields.
4792         (scan_xcoff_symtab): Update.
4793
4794 2018-07-26  Tom Tromey  <tromey@redhat.com>
4795
4796         * psympriv.h (struct partial_symbol) <unrelocated_address,
4797         address, set_address>: New methods.
4798         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4799         (fixup_psymbol_section, relocate_psymtabs): Update.
4800         (print_partial_symbols): Add 'objfile' parameter.  Update.
4801         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4802         Update.
4803
4804 2018-07-26  Tom Tromey  <tom@tromey.com>
4805
4806         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4807         (debug_names::write_psymbols): Update.
4808         * psympriv.h (struct partial_symbol): Derive from
4809         general_symbol_info.
4810         <obj_section>: New method.
4811         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4812         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4813         (find_pc_sect_psymbol, fixup_psymbol_section)
4814         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4815         (print_partial_symbols, recursively_search_psymtabs)
4816         (compare_psymbols, psymbol_hash, psymbol_compare)
4817         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4818         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4819
4820 2018-07-26  Tom Tromey  <tromey@redhat.com>
4821
4822         * dbxread.c (end_psymtab): Remove dead code.
4823
4824 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4825
4826         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4827         DWARF unwinders are disabled.
4828         * dwarf2-frame.c: Add dwarf2read.h include.
4829         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4830         disabled.
4831         (dwarf2_frame_unwinders_enabled_p): Define.
4832         (show_dwarf_unwinders_enabled_p): New function.
4833         (_initialize_dwarf2_frame): Register switch to control DWARF
4834         unwinder use.
4835         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4836         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4837         (show_dwarf_cmdlist): Remove static keyword.
4838         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4839         (show_dwarf_cmdlist): Declare.
4840         * NEWS: Document new feature.
4841
4842 2018-07-26  Tom de Vries  <tdevries@suse.de>
4843
4844         PR breakpoints/23366
4845         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4846
4847 2018-07-26  Tom de Vries  <tdevries@suse.de>
4848
4849         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4850         DW_AT_count can't be translated to a dynamic prop.
4851
4852 2018-07-25  Tom de Vries  <tdevries@suse.de>
4853
4854         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4855         try/catch.
4856
4857 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4858
4859         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4860
4861 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4862
4863         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4864
4865 2018-07-24  Keith Seitz  <keiths@redhat.comt
4866
4867         PR symtab/23010
4868         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4869         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4870         instead of add_symbol_to_list.
4871         (read_file_scope): Call prepare_one_comp_unit before reading
4872         any other DIEs.
4873
4874 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4875
4876         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4877
4878 2018-07-24  Tom Tromey  <tom@tromey.com>
4879
4880         * utils.c (malloc, realloc, free): Don't declare.
4881         * configure, config.in: Rebuild.
4882         * configure.ac: Don't check for declarations of free, malloc, or
4883         realloc.
4884
4885 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4886
4887         * aarch64-linux-nat.c
4888         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4889         variable.
4890         * arm-linux-nat.c (fetch_regs): Likewise.
4891         (store_regs): Likewise.
4892         (fetch_vfp_regs): Likewise.
4893         (store_vfp_regs): Likewise.
4894         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4895         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4896         (arm_linux_nat_target::insert_watchpoint): Likewise.
4897         (arm_linux_nat_target::remove_watchpoint): Likewise.
4898         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4899         Likewise.
4900         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4901         Likewise.
4902         * ppc-linux-nat.c (fetch_register): Likewise.
4903         (fetch_all_gp_regs): Likewise.
4904         (fetch_ppc_registers): Likewise.
4905         (store_all_gp_regs): Likewise.
4906         (store_ppc_registers): Likewise.
4907         (hwdebug_insert_point): Likewise.
4908         (can_use_watchpoint_cond_accel): Likewise.
4909         * remote-sim.c (gdb_os_write_stdout): Likewise.
4910
4911 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4912             Tom Tromey  <tom@tromey.com>
4913
4914         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4915         test for it.
4916         * configure: Rebuild.
4917
4918 2018-07-22  Tom Tromey  <tom@tromey.com>
4919
4920         * regformats/regdat.sh: Define xmltarget_${name} inside
4921         #ifndef IN_PROCESS_AGENT.
4922
4923 2018-07-22  Tom Tromey  <tom@tromey.com>
4924
4925         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4926
4927 2018-07-22  Tom Tromey  <tom@tromey.com>
4928
4929         * symfile.c (reread_symbols): Notify iter, not objfile.
4930
4931 2018-07-22  Tom Tromey  <tom@tromey.com>
4932
4933         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4934         Use arch_ops.
4935         (ravenscar_thread_target::prepare_to_store): Likewise.
4936
4937 2018-07-22  Tom Tromey  <tom@tromey.com>
4938
4939         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4940         unused variable.  Call value_fetch_lazy when needed.
4941         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4942         Remove unused variable.  Call value_fetch_lazy when needed.
4943
4944 2018-07-22  Tom Tromey  <tom@tromey.com>
4945
4946         * m32c-tdep.c (mark_dma): Return void.
4947         (make_regs): Remove unused declarations.
4948
4949 2018-07-22  Tom Tromey  <tom@tromey.com>
4950
4951         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4952         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4953         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4954         bkscm_get_valid_block_smob_arg_unsafe for effect.
4955
4956 2018-07-22  Tom Tromey  <tom@tromey.com>
4957
4958         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4959         value_type.
4960
4961 2018-07-22  Tom Tromey  <tom@tromey.com>
4962
4963         * windows-nat.c (saved_context): Conditionally define.
4964         * remote.c (remote_target::remote_btrace_maybe_reopen):
4965         Conditionally declare "warned".
4966         * inflow.c (sigquit_ours): Conditionally define.
4967         (new_tty): Move "tty" declaration inside #if.
4968         * guile/guile.c (guile_datadir): Conditionally define.
4969         * charset.c (set_be_le_names): Move some declarations inside #if.
4970         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4971         #if.
4972         (parse_xml_btrace_conf): Likewise.
4973
4974 2018-07-22  Tom Tromey  <tom@tromey.com>
4975
4976         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4977
4978 2018-07-22  Tom Tromey  <tom@tromey.com>
4979
4980         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4981         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4982         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4983         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4984         * stack.c (frame_apply_level_command): Remove unused variable.
4985         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4986         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4987         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4988         unused variable.
4989         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4990         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4991         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4992         variable.
4993         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4994         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4995         variable.
4996         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4997         Remove unused variable.
4998         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4999         variable.
5000         * common/tdesc.c (print_xml_feature::visit): Remove unused
5001         variable.
5002         * compile/compile-object-load.c (store_regs): Remove unused
5003         variables.
5004         * complaints.c (clear_complaints): Remove unused variable.
5005         * corelow.c (core_target_open): Remove unused variable.
5006         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5007         variable.
5008         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5009         variable.
5010         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5011         variable.
5012         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5013         variable.
5014         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5015         variable.
5016         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5017         variable.
5018         * ia64-tdep.c (examine_prologue): Remove unused variable.
5019         * infcall.c (run_inferior_call): Remove unused variable.
5020         * inferior.c (exit_inferior): Remove unused variable.
5021         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5022         * linespec.c (decode_line_2): Remove unused variable.
5023         * linux-nat.c (super_close): Remove.
5024         * linux-tdep.c (linux_info_proc): Remove unused variable.
5025         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5026         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5027         Remove unused variable.
5028         * parse.c (find_minsym_type_and_address): Remove unused variable.
5029         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5030         variable.
5031         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5032         variable.
5033         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5034         variables.
5035         * record-btrace.c (record_btrace_target::store_registers): Remove
5036         unused variable.
5037         (cmd_show_record_btrace_cpu): Remove unused variable.
5038         * riscv-tdep.c (riscv_register_reggroup_p)
5039         (riscv_push_dummy_call, riscv_return_value): Remove unused
5040         variable.
5041         * rust-exp.y (literal): Remove unused variable.
5042         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5043         unused variable.
5044         <STRUCTOP_ANONYMOUS>: Likewise.
5045         * s390-linux-tdep.c (s390_linux_init_abi_31)
5046         (s390_linux_init_abi_64): Remove unused variable.
5047         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5048         (file_select_thread, net_windows_open, _initialize_ser_windows):
5049         Remove unused variables.
5050         * symtab.c (find_pc_sect_line): Remove unused variable.
5051         * target-memory.c (compute_garbled_blocks): Remove unused
5052         variable.
5053         (target_write_memory_blocks): Remove unused variable.
5054         * target.c (target_stack::unpush): Remove unused variables.
5055         * tracepoint.c (start_tracing, all_tracepoint_actions)
5056         (merge_uploaded_trace_state_variables)
5057         (print_one_static_tracepoint_marker): Remove unused variable.
5058         * unittests/basic_string_view/element_access/char/1.cc (test01):
5059         Remove unused variable.
5060         * windows-nat.c (windows_continue, windows_add_all_dlls)
5061         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5062         Remove unused variables.
5063
5064 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5065
5066         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5067         attr_profile in HAVE_ELF.
5068         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5069         HAVE_ELF.
5070
5071 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5072
5073         * frame.c (frame_register_unwind): Change parameter name.
5074         (frame_unwind_register): Likewise.
5075         (frame_unwind_register_value): Likewise.
5076         (frame_unwind_register_signed): Likewise.
5077         (frame_unwind_register_unsigned): Likewise.
5078         * frame.h (frame_register_unwind): Likewise.
5079         (frame_unwind_register): Likewise.
5080         (frame_unwind_register_value): Likewise.
5081         (frame_unwind_register_signed): Likewise.
5082         (frame_unwind_register_unsigned): Likewise.
5083         (frame_unwind_arch): Likewise.
5084
5085 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5086
5087         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5088         ISA maintenance.
5089
5090 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5091
5092         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5093         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5094         hand.
5095
5096 2018-07-20  Keith Seitz  <keiths@redhat.com>
5097
5098         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5099         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5100         m_compunit_symtab, m_language>: Add "m_" prefix.
5101         Update all uses.
5102         * buildsym.c: Update all uses.
5103
5104 2018-07-20  Tom Tromey  <tom@tromey.com>
5105
5106         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5107         * buildsym.h (record_line_ftype): Remove typedef.
5108
5109 2018-07-20  Tom Tromey  <tom@tromey.com>
5110
5111         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5112         (end_expandable_symtab): Likewise.
5113         (end_symtab_get_static_block): Likewise.
5114         (end_symtab_from_static_block): Likewise.
5115         * buildsym-legacy.c (augment_type_symtab): Remove.
5116         (end_expandable_symtab): Remove.
5117         (end_symtab_get_static_block): Remove.
5118         (end_symtab_from_static_block): Remove.
5119
5120 2018-07-20  Tom Tromey  <tom@tromey.com>
5121
5122         * dwarf2read.c: Include buildsym.h.
5123         (struct dwarf2_cu) <builder>: New method.
5124         (fixup_go_packaging): Update.
5125         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5126         use scoped_free_pendings.
5127         (using_directives): Add "cu" parameter, remove "language".
5128         (read_import_statement, setup_type_unit_groups, )
5129         (read_func_scope, read_lexical_block_scope)
5130         (dwarf2_record_block_ranges, read_namespace): Update.
5131         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5132         (lnp_state_machine::handle_end_sequence): Update.
5133         (class lnp_state_machine) <m_cu>: New member.
5134         <m_record_line_callback>: Remove.
5135         <m_currently_recording_lines>: New member.
5136         (lnp_state_machine::handle_set_file): Update.
5137         (noop_record_line): Remove.
5138         (dwarf_record_line_p): Add cu parameter.
5139         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5140         (lnp_state_machine::record_line)
5141         (lnp_state_machine::lnp_state_machine)
5142         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5143         (dwarf_decode_lines): Update.
5144         (dwarf2_start_subfile): Add cu parameter.
5145         (dwarf2_start_symtab, new_symbol): Update.
5146         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5147         Remove dwarf2_per_objfile parameter.
5148         (dwarf_decode_macros): Update.
5149
5150 2018-07-20  Tom Tromey  <tom@tromey.com>
5151
5152         * stabsread.c (define_symbol): Update.
5153         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5154         * dwarf2read.c (new_symbol): Update.
5155         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5156         * cp-namespace.c: Include buildsym.h.
5157         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5158         * buildsym-legacy.c (get_buildsym_compunit): New function.
5159
5160 2018-07-20  Tom Tromey  <tom@tromey.com>
5161
5162         * xcoffread.c: Include buildsym-legacy.h.
5163         * windows-nat.c: Include buildsym-legacy.h.
5164         * stabsread.c: Include buildsym-legacy.h.
5165         * mdebugread.c: Include buildsym-legacy.h.
5166         * buildsym-legacy.h: New file.
5167         * buildsym-legacy.c: New file, from buildsym.c.
5168         * go32-nat.c: Include buildsym-legacy.h.
5169         * dwarf2read.c: Include buildsym-legacy.h.
5170         * dbxread.c: Include buildsym-legacy.h.
5171         * cp-namespace.c: Include buildsym-legacy.h.
5172         * coffread.c: Include buildsym-legacy.h.
5173         * buildsym.h: Move some contents to buildsym-legacy.h.
5174         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5175         buildsym-legacy.c.
5176         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5177
5178 2018-07-20  Tom Tromey  <tom@tromey.com>
5179
5180         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5181         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5182         (buildsym_compunit::buildsym_compunit)
5183         (buildsym_compunit::~buildsym_compunit)
5184         (buildsym_compunit::get_macro_table): Define.
5185
5186 2018-07-20  Tom Tromey  <tom@tromey.com>
5187
5188         * buildsym.c (reset_symtab_globals): Remove.
5189         (buildsym_compunit::end_symtab_from_static_block): Update.
5190         (buildsym_compunit::augment_type_symtab): Update.
5191         (end_symtab_from_static_block): Call free_buildsym_compunit.
5192         (augment_type_symtab, end_symtab, end_expandable_symtab):
5193         Likewise.
5194
5195 2018-07-20  Tom Tromey  <tom@tromey.com>
5196
5197         * arch-utils.c: Do not include buildsym.h.
5198         * mipsread.c: Do not include buildsym.h.
5199         * machoread.c: Do not include buildsym.h.
5200         * elfread.c: Do not include buildsym.h.
5201
5202 2018-07-20  Tom Tromey  <tom@tromey.com>
5203
5204         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5205         initialization.
5206         (buildsym_compunit): Add new constructor.
5207         (struct buildsym_compunit) <get_last_source_file, finish_block,
5208         record_block_range, start_subfile, patch_subfile_names,
5209         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5210         set_last_source_start_addr, get_last_source_start_addr,
5211         get_local_using_directives, set_local_using_directives,
5212         get_global_using_directives, outermost_context_p,
5213         get_current_context_stack, get_context_stack_depth,
5214         get_current_subfile, get_local_symbols, get_file_symbols,
5215         get_global_symbols, record_debugformat, record_producer,
5216         push_context, pop_context, end_symtab_get_static_block,
5217         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5218         New public methods.
5219         <record_pending_block, finish_block_internal, make_blockvector,
5220         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5221         private methods.
5222         Update all users.
5223
5224 2018-05-22  Tom Tromey  <tom@tromey.com>
5225
5226         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5227         parameter.
5228         (finish_block_internal): Update.
5229
5230 2018-07-20  Tom Tromey  <tom@tromey.com>
5231
5232         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5233         parameter.
5234         (finish_block_internal): Update.
5235
5236 2018-07-20  Tom Tromey  <tom@tromey.com>
5237
5238         * buildsym.h (EXTERN): Don't define or undef.
5239         * buildsym.c (EXTERN): Don't define.
5240
5241 2018-07-20  Tom Tromey  <tom@tromey.com>
5242
5243         * buildsym.c: Remove TODO comment.
5244
5245 2018-07-20  Tom Tromey  <tom@tromey.com>
5246
5247         * coffread.c (coff_symtab_read): Update.
5248         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5249         (xcoff_new_init): Update.
5250         * mipsread.c (mipscoff_new_init): Update.
5251         * mdebugread.c (mdebug_build_psymtabs): Update.
5252         * elfread.c (elf_new_init): Update.
5253         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5254         Update.
5255         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5256         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5257         (stabsect_build_psymtabs): Update.
5258         * buildsym.h (buildsym_init): Don't declare.
5259         * buildsym.c: Update comment.
5260         (prepare_for_building): Remove.
5261         (start_symtab, restart_symtab): Update.
5262         (reset_symtab_globals): Update comment.
5263         (buildsym_init): Remove.
5264
5265 2018-07-20  Tom Tromey  <tom@tromey.com>
5266
5267         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5268         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5269         (read_enum_type, common_block_start, common_block_end)
5270         (cleanup_undefined_types_1, finish_global_stabs): Update.
5271         * mdebugread.c (psymtab_to_symtab_1): Update.
5272         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5273         (read_lexical_block_scope, new_symbol): Update.
5274         * dbxread.c (process_one_symbol): Update.
5275         * coffread.c (coff_symtab_read, process_coff_symbol)
5276         (coff_read_enum_type): Update.
5277         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5278         declare.
5279         (get_local_symbols, get_file_symbols, get_global_symbols): New
5280         functions.
5281         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5282         m_global_symbols.
5283         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5284         (~scoped_free_pendings): Update.
5285         (finish_block, prepare_for_building, reset_symtab_globals)
5286         (end_symtab_get_static_block, end_symtab_with_blockvector)
5287         (augment_type_symtab, push_context): Update.
5288         (get_local_symbols, get_file_symbols, get_global_symbols): New
5289         functions.
5290         (buildsym_init): Update.
5291
5292 2018-07-20  Tom Tromey  <tom@tromey.com>
5293
5294         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5295         (process_full_type_unit): Likewise.
5296         (dwarf2_start_symtab): Set list_in_scope.
5297
5298 2018-07-20  Tom Tromey  <tom@tromey.com>
5299
5300         * dwarf2read.c (process_psymtab_comp_unit_reader)
5301         (build_type_psymtabs_reader): Do not set list_in_scope.
5302
5303 2018-07-20  Tom Tromey  <tom@tromey.com>
5304
5305         * buildsym.c (free_pendings): Remove.
5306         (add_symbol_to_list, scoped_free_pendings)
5307         (finish_block_internal, buildsym_init): Update.
5308
5309 2018-07-20  Tom Tromey  <tom@tromey.com>
5310
5311         * xcoffread.c (read_xcoff_symtab): Update.
5312         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5313         Update.
5314         * dbxread.c (process_one_symbol): Update.
5315         * coffread.c (coff_symtab_read): Update.
5316         * buildsym.h (finish_block): Update.
5317         * buildsym.c (finish_block): Remove "listhead" argument.
5318         (end_symtab_get_static_block): Update.
5319
5320 2018-07-20  Tom Tromey  <tom@tromey.com>
5321
5322         * buildsym.h (class scoped_free_pendings): Remove constructor.
5323         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5324         method.
5325         <m_pending_block_obstack, m_pending_blocks>: New members.
5326         (pending_block_obstack, pending_blocks): Remove.
5327         (scoped_free_pendings::scoped_free_pendings): Default.
5328         (~scoped_free_pendings): Update.
5329         (free_pending_blocks): Remove.
5330         (finish_block_internal, record_pending_block, make_blockvector)
5331         (end_symtab_get_static_block, augment_type_symtab, push_context)
5332         (buildsym_init): Update.
5333
5334 2018-07-20  Tom Tromey  <tom@tromey.com>
5335
5336         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5337         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5338         members.
5339         (pending_addrmap, pending_addrmap_obstack)
5340         (pending_addrmap_interesting): Remove.
5341         (scoped_free_pendings, record_block_range, make_blockvector)
5342         (prepare_for_building, reset_symtab_globals, buildsym_init):
5343         Update.
5344
5345 2018-07-20  Tom Tromey  <tom@tromey.com>
5346
5347         * xcoffread.c (process_linenos): Update.
5348         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5349         * mdebugread.c (psymtab_to_symtab_1): Update.
5350         * dwarf2read.c (setup_type_unit_groups)
5351         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5352         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5353         * dbxread.c (process_one_symbol): Update.
5354         * coffread.c (coff_symtab_read, enter_linenos)
5355         (process_coff_symbol): Update.
5356         * buildsym.h (current_subfile): Don't declare.
5357         (get_current_subfile): Declare.
5358         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5359         member.
5360         (start_subfile, free_buildsym_compunit, push_subfile)
5361         (prepare_for_building, start_symtab): Update.
5362         (get_current_subfile): New function.
5363
5364 2018-07-20  Tom Tromey  <tom@tromey.com>
5365
5366         * coffread.c (coff_symtab_read): Update.
5367         * xcoffread.c (read_xcoff_symtab): Update.
5368         * dwarf2read.c (new_symbol): Update.
5369         (read_func_scope, read_lexical_block_scope): Update.
5370         * dbxread.c (process_one_symbol): Update.
5371         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5372         (outermost_context_p): Remove macro.
5373         (outermost_context_p, get_current_context_stack)
5374         (get_context_stack_depth): Declare.
5375         (pop_context): Return struct context_stack.
5376         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5377         member.
5378         (context_stack_size): Remove.
5379         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5380         (prepare_for_building, end_symtab_get_static_block)
5381         (augment_type_symtab, push_context): Update.
5382         (pop_context): Return struct context_stack.
5383         (outermost_context_p, get_current_context_stack)
5384         (get_context_stack_depth): New functions.
5385         (buildsym_init): Update.
5386
5387 2018-07-20  Tom Tromey  <tom@tromey.com>
5388
5389         * rust-exp.y: Now a pure parser.  Update all rules.
5390         (%union): Move earlier.
5391         (current_parser, work_obstack): Remove globals.
5392         (rust_parser, ~rust_parser): Update.
5393         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5394         lex_character, lex_number, lex_string, lex_identifier,
5395         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5396         convert_name, convert_params_to_expression,
5397         convert_ast_to_expression, ast_basic_type, ast_operation,
5398         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5399         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5400         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5401         ast_array_type, ast_slice_type, ast_reference_type,
5402         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5403         (rust_parse): Update.
5404         (rustyyerror, rustyylex): Add parser parameter.
5405         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5406         (rust_lex_stringish_test, rust_lex_test_sequence)
5407         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5408         (rust_lex_test_push_back, rust_lex_tests): Update.
5409
5410 2018-07-19  Pedro Alves  <palves@redhat.com>
5411
5412         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5413         gdb::unique_xmalloc_ptr.
5414         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5415         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5416         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5417         copy-initialization.
5418         * guile/scm-pretty-print.c (ppscm_print_children): Use
5419         gdb::unique_xmalloc_ptr instead of cleanups.
5420         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5421         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5422         gdb::unique_xmalloc_ptr.
5423         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5424         Adjust to use gdb::unique_xmalloc_ptr.
5425         * guile/scm-utils.c (extract_arg): Adjust.
5426         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5427         gdb::unique_xmalloc_ptr instead of a cleanup.
5428
5429 2018-07-19  Tom Tromey  <tom@tromey.com>
5430
5431         * utils.c (do_value_free_to_mark)
5432         (make_cleanup_value_free_to_mark): Remove.
5433         * utils.h (make_cleanup_value_free_to_mark): Remove.
5434
5435 2018-07-19  Pedro Alves  <palves@redhat.com>
5436
5437         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5438         forwarding reference.
5439
5440 2018-07-18  Pedro Alves  <palves@redhat.com>
5441
5442         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5443         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5444         cleanup.
5445
5446 2018-07-18  Pedro Alves  <palves@redhat.com>
5447
5448         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5449         exceptions.
5450         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5451         (gdbscm_wrap): New.
5452         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5453         directly instead of a cleanup.
5454         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5455         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5456         (vlscm_binop_gdbthrow): New, factored out from ...
5457         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5458         (vlscm_rich_compare): Use gdbscm_wrap.
5459         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5460         instead of a cleanup.
5461         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5462         cleanup.
5463         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5464         Use xfree directly instead of a cleanup.
5465         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5466         Adjust to use gdbscm_wrap and scoped_value_mark.
5467         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5468         (gdbscm_value_address, gdbscm_value_dereference)
5469         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5470         scoped_value_mark.
5471         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5472         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5473         scoped_value_mark.
5474         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5475         gdbscm_wrap and scoped_value_mark.
5476         (gdbscm_value_to_string): Use xfree directly instead of a
5477         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5478         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5479         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5480         scoped_value_mark.
5481         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5482         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5483         scoped_value_mark.
5484         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5485         gdbscm_wrap.
5486
5487 2018-07-18  Tom de Vries  <tdevries@suse.de>
5488
5489         * findvar.c (default_read_var_value): Also resolve dynamic type for
5490         LOC_OPTIMIZED_OUT vars.
5491
5492 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5493
5494         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5495         decoding.
5496
5497 2018-07-17  Tom Tromey  <tom@tromey.com>
5498
5499         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5500         (compute_enum_list, pascm_set_param_value_x)
5501         (gdbscm_parameter_value): Update.
5502         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5503         (gdbscm_scm_to_host_string): Update.
5504         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5505         Update.
5506         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5507         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5508         * guile/scm-string.c (gdbscm_scm_to_string): Return
5509         unique_xmalloc_ptr.
5510         (gdbscm_scm_to_host_string): Likewise.
5511
5512 2018-07-17  Tom Tromey  <tom@tromey.com>
5513
5514         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5515         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5516         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5517         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5518         unique_xmalloc_ptr.
5519
5520 2018-07-17  Tom Tromey  <tom@tromey.com>
5521
5522         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5523         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5524         Update.
5525         * guile/scm-cmd.c (cmdscm_function): Update.
5526         * guile/scm-pretty-print.c
5527         (ppscm_print_exception_unless_memory_error): Update.
5528         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5529         Return unique_xmalloc_ptr.
5530
5531 2018-07-17  Tom Tromey  <tom@tromey.com>
5532
5533         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5534         Use string_printf.
5535
5536 2018-07-17  Jim Wilson  <jimw@sifive.com>
5537
5538         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5539         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5540         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5541         unecessary braces after EF_RISCV_RVC test.  Delete call to
5542         set_gdbarch_decr_pc_after_break.
5543
5544         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5545         RISCV_LAST_FP_REGNUM + 1.
5546         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5547
5548 2018-07-17  Tom Tromey  <tom@tromey.com>
5549
5550         * configure.ac: Remove --disable-gdbcli.
5551         * configure: Rebuild.
5552         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5553         (SUBDIR_CLI_CFLAGS): Remove.
5554         (SFILES): Use SUBDIR_CLI_SRCS.
5555         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5556
5557 2018-07-17  Tom Tromey  <tom@tromey.com>
5558
5559         PR gdb/18624:
5560         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5561
5562 2018-07-16  Jim Wilson  <jimw@sifive.com>
5563
5564         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5565
5566 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5567
5568         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5569         variable.
5570         (libunwind_frame_sniffer): Likewise.
5571         (libunwind_frame_prev_register): Likewise.
5572         (libunwind_sigtramp_frame_sniffer): Likewise.
5573         * ia64-tdep.c (ia64_access_reg): Likewise.
5574         (ia64_access_rse_reg): Likewise.
5575         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5576         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5577
5578 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5579
5580         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5581
5582 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5583
5584         * remote-sim.c (gdbsim_target::close,
5585         gdbsim_target::mourn_inferior): Remove unused variables.
5586
5587 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5588
5589         * ia64-tdep.c (ktab_buf): New global.
5590         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5591         (get_kernel_table): Adjust.
5592
5593 2018-07-16  Tom Tromey  <tom@tromey.com>
5594
5595         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5596         * dwarf2read.c (using_directives, new_symbol): Use
5597         outermost_context_p.
5598         * dbxread.c (process_one_symbol): Use outermost_context_p.
5599         * coffread.c (coff_symtab_read): Use outermost_context_p.
5600
5601 2018-07-16  Tom Tromey  <tom@tromey.com>
5602
5603         * dwarf2read.c (using_directives, read_func_scope)
5604         (read_lexical_block_scope): Update.
5605         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5606         * buildsym.h (local_using_directives, global_using_directives):
5607         Don't declare.
5608         (get_local_using_directives, set_local_using_directives)
5609         (get_global_using_directives): Declare.
5610         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5611         m_global_using_directives>: New members.
5612         (finish_block_internal, prepare_for_building)
5613         (reset_symtab_globals, end_symtab_get_static_block)
5614         (push_context): Update.
5615         (get_local_using_directives, set_local_using_directives)
5616         (get_global_using_directives): New functions.
5617         (buildsym_init): Update.
5618
5619 2018-07-16  Tom Tromey  <tom@tromey.com>
5620
5621         * xcoffread.c (xcoff_initial_scan): Don't call
5622         free_pending_blocks.
5623         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5624         * buildsym.h (class scoped_free_pendings): Add constructor.
5625         (free_pending_blocks): Don't declare.
5626         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5627         (free_pending_blocks): Now static.
5628
5629 2018-07-16  Tom Tromey  <tom@tromey.com>
5630
5631         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5632         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5633         member.
5634         (struct subfile_stack): Remove.
5635         (subfile_stack): Remove.
5636         (push_subfile, pop_subfile, buildsym_init): Update.
5637
5638 2018-07-16  Tom Tromey  <tom@tromey.com>
5639
5640         * buildsym.c (push_subfile): Use gdb_assert.
5641         (pop_subfile): Use gdb_assert.
5642
5643 2018-07-16  Tom Tromey  <tom@tromey.com>
5644
5645         * buildsym.h (merge_symbol_lists): Remove.
5646         * buildsym.c (merge_symbol_lists): Remove.
5647
5648 2018-07-16  Tom Tromey  <tom@tromey.com>
5649
5650         * stabsread.c (scan_file_globals): Update comment.
5651         * stabsread.h (scan_file_globals): Move from buildsym.h.
5652         * buildsym.h (scan_file_globals): Move to stabsread.h.
5653
5654 2018-07-16  Tom Tromey  <tom@tromey.com>
5655
5656         * xcoffread.c (xcoff_new_init): Update.
5657         * mipsread.c (mipscoff_new_init): Update.
5658         * mdebugread.c (mdebug_build_psymtabs): Update.
5659         * elfread.c (elf_new_init): Update.
5660         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5661         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5662         * buildsym.h (buildsym_new_init): Don't declare.
5663         * buildsym.c (buildsym_new_init): Remove.
5664
5665 2018-07-16  Tom Tromey  <tom@tromey.com>
5666
5667         * stabsread.h (within_function): Move from buildsym.h.
5668         * stabsread.c (start_stabs): Clear within_function.
5669         * coffread.c (coff_start_symtab): Clear within_function.
5670         * buildsym.h (within_function): Move to stabsread.h.
5671         * buildsym.c (prepare_for_building): Update.
5672
5673 2018-07-16  Tom Tromey  <tom@tromey.com>
5674
5675         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5676         * dwarf2read.c (dwarf2_start_symtab): Don't set
5677         processing_gcc_compilation.
5678         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5679
5680 2018-07-16  Tom Tromey  <tom@tromey.com>
5681
5682         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5683         (next_symbol_text_func): Move from buildsym.h.
5684         * stabsread.c (hashname): Move from buildsym.c.
5685         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5686         (next_symbol_text_func, hashname): Move to stabsread.h.
5687         * buildsym.c: Don't include bcache.h
5688         (hashname): Move to stasbread.c.
5689
5690 2018-07-16  Tom Tromey  <tom@tromey.com>
5691
5692         * buildsym.h (context_stack_size): Don't declare.
5693         * buildsym.c (context_stack_size): New global.
5694
5695 2018-07-16  Tom Tromey  <tom@tromey.com>
5696
5697         * dbxread.c (processing_acc_compilation): New global.
5698         * buildsym.h (processing_acc_compilation): Don't declare.
5699
5700 2018-07-16  Tom Tromey  <tom@tromey.com>
5701
5702         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5703         * dbxread.c (read_ofile_symtab): Update.
5704         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5705         * buildsym.h (last_source_start_addr): Remove.
5706         (set_last_source_start_addr, get_last_source_start_addr):
5707         Declare.
5708         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5709         parameter.
5710         (struct buildsym_compunit) <m_last_source_start_addr>: New
5711         member.
5712         (prepare_for_building): Remove start_addr parameter.
5713         (start_symtab, restart_symtab, end_symtab_get_static_block)
5714         (end_symtab_with_blockvector): Update.
5715         (set_last_source_start_addr, get_last_source_start_addr): New
5716         functions.
5717
5718 2018-07-16  Tom Tromey  <tom@tromey.com>
5719
5720         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5721         member.
5722         (have_line_numbers): Remove.
5723         (record_line, prepare_for_building, end_symtab_get_static_block)
5724         (augment_type_symtab): Update.
5725
5726 2018-07-16  Tom Tromey  <tom@tromey.com>
5727
5728         * buildsym.c (~buildsym_compunit): Free the macro table.
5729         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5730         methods.
5731         <m_pending_macros>: New member.
5732         (pending_macros): Remove.
5733         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5734         (reset_symtab_globals, end_symtab_get_static_block)
5735         (end_symtab_with_blockvector, augment_type_symtab)
5736         (buildsym_init): Update.
5737
5738 2018-07-16  Tom Tromey  <tom@tromey.com>
5739
5740         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5741         parameter.
5742         (buildsym_compunit::set_last_source_file): New method.
5743         <m_last_source_file>: New member.
5744         (prepare_for_building): Remove "name" parameter.
5745         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5746         (last_source_file): Remove.
5747         (set_last_source_file, get_last_source_file): Update.
5748
5749 2018-07-16  Tom Tromey  <tom@tromey.com>
5750
5751         * buildsym.c (prepare_for_building): Add assert.
5752
5753 2018-07-16  Tom Tromey  <tom@tromey.com>
5754
5755         * buildsym.c (~buildsym_compunit): Update.
5756         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5757         (start_subfile, patch_subfile_names)
5758         (end_symtab_with_blockvector): Update.
5759
5760 2018-07-16  Tom Tromey  <tom@tromey.com>
5761
5762         * buildsym.c (struct buildsym_compunit): Add constructor,
5763         destructor, initializers.
5764         (start_buildsym_compunit): Remove.
5765         (free_buildsym_compunit): Use "delete".
5766         (start_symtab, restart_symtab): Use "new".
5767
5768 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5769
5770         * symfile.c (set_objfile_default_section_offset): Remove struct
5771         keyword.
5772
5773 2018-07-14  Stafford Horne  <shorne@gmail.com>
5774
5775         * (Responsible Maintainers): Add myself as or1k maintainer.
5776
5777 2018-07-13  Tom Tromey  <tom@tromey.com>
5778
5779         * symfile.c (set_objfile_default_section_offset): Use extra braces
5780         around initializer.
5781
5782 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5783
5784         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5785         non-branching basr.
5786
5787 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5788
5789         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5790         unittests/cli-utils-selftests.c
5791         * unittests/cli-utils-selftests.c: New file.
5792
5793 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5794
5795         * NEWS: Mention new commands. Mention change to 'thread apply'.
5796
5797 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5798
5799         * thread.c (thr_try_catch_cmd): New function.
5800         (thread_apply_all_command): Handle qcs flags.
5801         (thread_apply_command): Handle qcs flags.
5802         (taas_command): New function.
5803         (tfaas_command): New function.
5804         (_initialize_thread): Update to setup the new commands 'taas
5805         and 'tfaas'. Change doc string for 'thread apply'.
5806
5807 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5808
5809         * stack.c: (trailing_outermost_frame): New function, mostly
5810         extracted from backtrace_command_1.
5811         (leading_innermost_frame): New function.
5812         (backtrace_command_1): Update to call trailing_outermost_frame.
5813         (frame_apply_command_count): New function.
5814         (frame_apply_level_command): New function.
5815         (frame_apply_all_command): New function.
5816         (frame_apply_command): New function.
5817         (faas_command): New function.
5818         (frame_cmd_list): New variable.
5819         (_initialize_stack): Update to setup the new commands 'frame apply'
5820         and 'faas'.
5821
5822 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5823
5824         * cli-utils.c (number_or_range_parser::get_number): Only handle
5825         numbers or convenience var as numbers.
5826         (parse_flags): New function.
5827         (parse_flags_qcs): New function.
5828         (number_or_range_parser::finished): Ensure parsing end is detected
5829         before end of string.
5830         * cli-utils.h (parse_flags): New function.
5831         (parse_flags_qcs): New function.
5832         (number_or_range_parser): Remove m_finished bool.
5833         (number_or_range_parser::skip_range): Set m_in_range to false.
5834
5835 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5836
5837         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5838         on Windows.
5839
5840 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5841             Jan Kratochvil  <jan.kratochvil@redhat.com>
5842             Paul Fertser  <fercerpav@gmail.com>
5843             Tsutomu Seki  <sekiriki@gmail.com>
5844             Pedro Alves  <palves@redhat.com>
5845
5846         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5847         'unittests/parse-connection-spec-selftests.c'.
5848         (COMMON_SFILES): Add 'common/netstuff.c'.
5849         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5850         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5851         * common/netstuff.c: New file.
5852         * common/netstuff.h: New file.
5853         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5854         (wait_for_connect): Update comment.  New parameter
5855         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5856         Use 'sock' directly instead of 'scb->fd'.
5857         (try_connect): New function, with code from 'net_open'.
5858         (net_open): Rewrite main loop to deal with multiple
5859         sockets/addresses.  Handle IPv6-style hostnames; implement
5860         support for IPv6 connections.
5861         * unittests/parse-connection-spec-selftests.c: New file.
5862
5863 2018-07-11  Pedro Alves  <palves@redhat.com>
5864
5865         PR gdb/23377
5866         * remote.c (remote_target::remote_detach_pid): Call
5867         set_current_process.
5868
5869 2018-07-11  Pedro Alves  <palves@redhat.com>
5870
5871         * h8300-tdep.c (h8300_gdbarch_init): Remove
5872         set_gdbarch_ecoff_reg_to_regnum calls.
5873
5874 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5875
5876         PR c++/23373
5877         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5878         offsets/sizes for static members of a class/struct.
5879
5880 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5881
5882         * target-descriptions.c (tdesc_register_bitsize): Rename.
5883         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5884         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5885         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5886
5887 2018-07-10  Tom Tromey  <tom@tromey.com>
5888
5889         * breakpoint.c (moribund_locations): Now static and a
5890         std::vector.
5891         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5892         (build_bpstat_chain, update_global_location_list)
5893         (breakpoint_retire_moribund): Update.
5894         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5895         VEC.
5896
5897 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5898
5899         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5900         (riscv_register_reggroup_p): Use new function, remove unneeded
5901         parenthesis.
5902         (riscv_push_dummy_call): Extend assert to compare against xlen or
5903         flen based on register type.
5904
5905 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5906
5907         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5908
5909 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5910
5911         * remote.c (show_hardware_watchpoint_limit): New function.
5912         (show_hardware_watchpoint_length_limit): New function.
5913         (show_hardware_breakpoint_limit): New function.
5914         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5915         where appropriate, update help text.
5916
5917 2018-07-09  Tom Tromey  <tom@tromey.com>
5918
5919         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5920         (CLIBS): Don't mention NAT_CLIBS.
5921
5922 2018-07-09  Tom Tromey  <tom@tromey.com>
5923
5924         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5925         (LIBGDB_OBS, clean mostlyclean): Update.
5926         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5927
5928 2018-07-09  Tom Tromey  <tom@tromey.com>
5929
5930         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5931         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5932         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5933
5934 2018-07-09  Tom Tromey  <tom@tromey.com>
5935
5936         * Makefile.in (ALLDEPFILES): Remove exec.c.
5937         (COMMON_OBS): Remove exec.o.
5938         (COMMON_SFILES): Add exec.c.
5939
5940 2018-07-09  Tom Tromey  <tom@tromey.com>
5941
5942         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5943
5944 2018-07-09  Tom Tromey  <tom@tromey.com>
5945
5946         * Makefile.in (clean mostlyclean): Remove stamp-version.
5947         (version.c): Depend on stamp-version.
5948         (stamp-version): New rule, from version.c rule.
5949
5950 2018-07-09  Tom Tromey  <tom@tromey.com>
5951
5952         * Makefile.in (init.c): Depend on stamp-init.
5953         (stamp-init): New rule, from init.c rule.
5954         (clean mostlyclean): Remove stamp-init.
5955
5956 2018-07-09  Tom Tromey  <tom@tromey.com>
5957
5958         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5959         SUBDIR_GCC_COMPILE_SRCS.
5960
5961 2018-07-09  Tom Tromey  <tom@tromey.com>
5962
5963         * Makefile.in (init.c): Remove some unused sed rules.
5964
5965 2018-07-09  Tom Tromey  <tom@tromey.com>
5966
5967         * Makefile.in (TSOBS): Remove.
5968         (INIT_FILES): Update.
5969         (LIBGDB_OBS): Update.
5970         (COMMON_SFILES): Add inflow.c.
5971         (SFILES): Remove inflow.c.
5972
5973 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5974
5975         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5976
5977 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5978
5979         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5980         get_saveloc_name, is_signal_frame_name, step_name,
5981         init_remote_name, create_addr_space_name,
5982         destroy_addr_space_name, search_unwind_table_name,
5983         find_dyn_list_name): Constify.
5984
5985 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5986
5987         * darwin-nat.c (darwin_pthread_kill): New function.
5988         (darwin_resume_thread): Use darwin_pthread_kill.
5989
5990 2018-07-05  Tom de Vries  <tdevries@suse.de>
5991
5992         * macroexp.c (macro_buffer) <operator=>: New member function.
5993
5994 2018-07-04  Tom Tromey  <tom@tromey.com>
5995
5996         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5997
5998 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5999
6000         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6001         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6002         * maint.c: Likewise.
6003         * top.c: Likewise.
6004
6005 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6006
6007         * NEWS: Create a new section for the next release branch.
6008         Rename the section of the current branch, now that it has
6009         been cut.
6010
6011 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6012
6013         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6014         * version.in: Bump version to 8.2.50.DATE-git.
6015
6016 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6017             Pedro Alves  <palves@redhat.com>
6018
6019         * linux-nat.c (linux_init_ptrace): Rename to ...
6020         (linux_init_ptrace_procfs): ... this.  Call
6021         linux_proc_init_warnings.
6022         (linux_nat_target::post_attach)
6023         (linux_nat_target::post_startup_inferior): Adjust.
6024         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6025         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6026
6027 2018-07-04  Tom de Vries  <tdevries@suse.de>
6028
6029         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6030         check ...
6031         (read_comp_unit_head): ... here.
6032
6033 2018-07-03  Tom Tromey  <tom@tromey.com>
6034
6035         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6036         (stop_tracing, tstatus_command)
6037         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6038         (print_one_static_tracepoint_marker): Update.
6039         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6040         std::vector.
6041         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6042         VEC.
6043         (all_tracepoints, static_tracepoints_here): Return std::vector.
6044
6045 2018-07-03  Tom Tromey  <tom@tromey.com>
6046
6047         * common/ptid.c (ptid_equal): Remove.
6048         * common/ptid.h (ptid_equal): Don't declare.
6049         * ada-tasks.c: Update.
6050         * breakpoint.c: Update.
6051         * common/agent.c: Update.
6052         * corelow.c: Update.
6053         * darwin-nat-info.c: Update.
6054         * darwin-nat.c: Update.
6055         * dcache.c: Update.
6056         * dtrace-probe.c: Update.
6057         * dummy-frame.c: Update.
6058         * fbsd-nat.c: Update.
6059         * frame.c: Update.
6060         * gdbthread.h: Update.
6061         * gnu-nat.c: Update.
6062         * go32-nat.c: Update.
6063         * inf-loop.c: Update.
6064         * inf-ptrace.c: Update.
6065         * infcall.c: Update.
6066         * infcmd.c: Update.
6067         * inflow.c: Update.
6068         * infrun.c: Update.
6069         * linux-fork.c: Update.
6070         * linux-nat.c: Update.
6071         * linux-thread-db.c: Update.
6072         * mi/mi-cmd-var.c: Update.
6073         * mi/mi-interp.c: Update.
6074         * mi/mi-main.c: Update.
6075         * nto-procfs.c: Update.
6076         * ppc-linux-tdep.c: Update.
6077         * procfs.c: Update.
6078         * python/py-inferior.c: Update.
6079         * python/py-record-btrace.c: Update.
6080         * python/py-record.c: Update.
6081         * ravenscar-thread.c: Update.
6082         * regcache.c: Update.
6083         * remote-sim.c: Update.
6084         * remote.c: Update.
6085         * sol-thread.c: Update.
6086         * solib.c: Update.
6087         * target.c: Update.
6088         * tui/tui-stack.c: Update.
6089         * varobj.c: Update.
6090         * windows-nat.c: Update.
6091         * windows-tdep.c: Update.
6092
6093 2018-07-03  Tom Tromey  <tom@tromey.com>
6094
6095         * common/ptid.c (ptid_match): Remove.
6096         * common/ptid.h (ptid_match): Don't declare.
6097         * fbsd-nat.c: Update.
6098         * infcmd.c: Update.
6099         * infrun.c: Update.
6100         * linux-nat.c: Update.
6101         * record-btrace.c: Update.
6102         * regcache.c: Update.
6103         * remote.c: Update.
6104
6105 2018-07-03  Tom Tromey  <tom@tromey.com>
6106
6107         * common/ptid.c (ptid_tid_p): Remove.
6108         * common/ptid.h (ptid_tid_p): Don't declare.
6109         * sol-thread.c: Update.
6110
6111 2018-07-03  Tom Tromey  <tom@tromey.com>
6112
6113         * common/ptid.c (ptid_lwp_p): Remove.
6114         * common/ptid.h (ptid_lwp_p): Don't declare.
6115         * fbsd-nat.c: Update.
6116         * linux-nat.c: Update.
6117         * nat/linux-procfs.c: Update.
6118         * nat/x86-linux-dregs.c: Update.
6119         * sol-thread.c: Update.
6120
6121 2018-07-03  Tom Tromey  <tom@tromey.com>
6122
6123         * common/ptid.c (ptid_is_pid): Remove.
6124         * common/ptid.h (ptid_is_pid): Don't declare.
6125         * infrun.c: Update.
6126         * linux-nat.c: Update.
6127         * mi/mi-interp.c: Update.
6128         * remote.c: Update.
6129         * thread.c: Update.
6130
6131 2018-07-03  Tom Tromey  <tom@tromey.com>
6132
6133         * common/ptid.c (ptid_get_tid): Remove.
6134         * common/ptid.h (ptid_get_tid): Don't declare.
6135         * ada-tasks.c: Update.
6136         * aix-thread.c: Update.
6137         * bsd-uthread.c: Update.
6138         * darwin-nat.c: Update.
6139         * fbsd-nat.c: Update.
6140         * i386-darwin-nat.c: Update.
6141         * infrun.c: Update.
6142         * linux-tdep.c: Update.
6143         * nto-procfs.c: Update.
6144         * ppc-ravenscar-thread.c: Update.
6145         * python/py-infthread.c: Update.
6146         * ravenscar-thread.c: Update.
6147         * sol-thread.c: Update.
6148         * sparc-ravenscar-thread.c: Update.
6149         * windows-nat.c: Update.
6150
6151 2018-07-03  Tom Tromey  <tom@tromey.com>
6152
6153         * common/ptid.c (ptid_get_lwp): Remove.
6154         * common/ptid.h (ptid_get_lwp): Don't declare.
6155         * aarch64-linux-nat.c: Update.
6156         * ada-tasks.c: Update.
6157         * aix-thread.c: Update.
6158         * amd64-linux-nat.c: Update.
6159         * arm-linux-nat.c: Update.
6160         * corelow.c: Update.
6161         * fbsd-nat.c: Update.
6162         * fbsd-tdep.c: Update.
6163         * gnu-nat.c: Update.
6164         * i386-cygwin-tdep.c: Update.
6165         * i386-gnu-nat.c: Update.
6166         * i386-linux-nat.c: Update.
6167         * ia64-linux-nat.c: Update.
6168         * inf-ptrace.c: Update.
6169         * infrun.c: Update.
6170         * linux-fork.c: Update.
6171         * linux-nat.c: Update.
6172         * linux-tdep.c: Update.
6173         * linux-thread-db.c: Update.
6174         * mips-linux-nat.c: Update.
6175         * nat/aarch64-linux-hw-point.c: Update.
6176         * nat/aarch64-linux.c: Update.
6177         * nat/linux-btrace.c: Update.
6178         * nat/linux-osdata.c: Update.
6179         * nat/linux-procfs.c: Update.
6180         * nat/x86-linux-dregs.c: Update.
6181         * obsd-nat.c: Update.
6182         * ppc-fbsd-nat.c: Update.
6183         * ppc-linux-nat.c: Update.
6184         * procfs.c: Update.
6185         * python/py-infthread.c: Update.
6186         * ravenscar-thread.c: Update.
6187         * remote.c: Update.
6188         * s390-linux-nat.c: Update.
6189         * sol-thread.c: Update.
6190         * sol2-tdep.c: Update.
6191         * spu-linux-nat.c: Update.
6192         * x86-linux-nat.c: Update.
6193         * xtensa-linux-nat.c: Update.
6194
6195 2018-07-03  Tom Tromey  <tom@tromey.com>
6196
6197         * common/ptid.c (ptid_get_pid): Remove.
6198         * common/ptid.h (ptid_get_pid): Don't declare.
6199         * aarch64-linux-nat.c: Update.
6200         * ada-lang.c: Update.
6201         * aix-thread.c: Update.
6202         * alpha-bsd-nat.c: Update.
6203         * amd64-fbsd-nat.c: Update.
6204         * amd64-linux-nat.c: Update.
6205         * arm-linux-nat.c: Update.
6206         * arm-nbsd-nat.c: Update.
6207         * auxv.c: Update.
6208         * break-catch-syscall.c: Update.
6209         * breakpoint.c: Update.
6210         * bsd-uthread.c: Update.
6211         * corelow.c: Update.
6212         * ctf.c: Update.
6213         * darwin-nat.c: Update.
6214         * fbsd-nat.c: Update.
6215         * fbsd-tdep.c: Update.
6216         * gcore.c: Update.
6217         * gnu-nat.c: Update.
6218         * hppa-nbsd-nat.c: Update.
6219         * hppa-obsd-nat.c: Update.
6220         * i386-fbsd-nat.c: Update.
6221         * ia64-linux-nat.c: Update.
6222         * inf-ptrace.c: Update.
6223         * infcmd.c: Update.
6224         * inferior.c: Update.
6225         * inferior.h: Update.
6226         * inflow.c: Update.
6227         * infrun.c: Update.
6228         * linux-fork.c: Update.
6229         * linux-nat.c: Update.
6230         * linux-tdep.c: Update.
6231         * linux-thread-db.c: Update.
6232         * m68k-bsd-nat.c: Update.
6233         * mi/mi-interp.c: Update.
6234         * mi/mi-main.c: Update.
6235         * mips-linux-nat.c: Update.
6236         * mips-nbsd-nat.c: Update.
6237         * mips64-obsd-nat.c: Update.
6238         * nat/aarch64-linux-hw-point.c: Update.
6239         * nat/aarch64-linux.c: Update.
6240         * nat/linux-btrace.c: Update.
6241         * nat/linux-osdata.c: Update.
6242         * nat/linux-procfs.c: Update.
6243         * nat/x86-linux-dregs.c: Update.
6244         * nto-procfs.c: Update.
6245         * obsd-nat.c: Update.
6246         * ppc-linux-nat.c: Update.
6247         * ppc-nbsd-nat.c: Update.
6248         * ppc-obsd-nat.c: Update.
6249         * proc-service.c: Update.
6250         * procfs.c: Update.
6251         * python/py-inferior.c: Update.
6252         * python/py-infthread.c: Update.
6253         * ravenscar-thread.c: Update.
6254         * record.c: Update.
6255         * remote-sim.c: Update.
6256         * remote.c: Update.
6257         * rs6000-nat.c: Update.
6258         * s390-linux-nat.c: Update.
6259         * sh-nbsd-nat.c: Update.
6260         * sol-thread.c: Update.
6261         * sparc-nat.c: Update.
6262         * sparc64-tdep.c: Update.
6263         * spu-linux-nat.c: Update.
6264         * spu-tdep.c: Update.
6265         * target-debug.h: Update.
6266         * target.c: Update.
6267         * thread.c: Update.
6268         * tid-parse.c: Update.
6269         * tracefile-tfile.c: Update.
6270         * vax-bsd-nat.c: Update.
6271         * windows-nat.c: Update.
6272         * x86-linux-nat.c: Update.
6273         * x86-nat.c: Update.
6274
6275 2018-07-03  Tom Tromey  <tom@tromey.com>
6276
6277         * common/ptid.c (pid_to_ptid): Remove.
6278         * common/ptid.h (pid_to_ptid): Don't declare.
6279         * aix-thread.c: Update.
6280         * arm-linux-nat.c: Update.
6281         * common/ptid.c: Update.
6282         * common/ptid.h: Update.
6283         * corelow.c: Update.
6284         * ctf.c: Update.
6285         * darwin-nat.c: Update.
6286         * fbsd-nat.c: Update.
6287         * fork-child.c: Update.
6288         * gnu-nat.c: Update.
6289         * go32-nat.c: Update.
6290         * inf-ptrace.c: Update.
6291         * infcmd.c: Update.
6292         * inferior.c: Update.
6293         * infrun.c: Update.
6294         * linux-fork.c: Update.
6295         * linux-nat.c: Update.
6296         * nat/aarch64-linux-hw-point.c: Update.
6297         * nat/fork-inferior.c: Update.
6298         * nat/x86-linux-dregs.c: Update.
6299         * nto-procfs.c: Update.
6300         * obsd-nat.c: Update.
6301         * procfs.c: Update.
6302         * progspace.c: Update.
6303         * remote.c: Update.
6304         * rs6000-nat.c: Update.
6305         * s390-linux-nat.c: Update.
6306         * sol-thread.c: Update.
6307         * spu-linux-nat.c: Update.
6308         * target.c: Update.
6309         * top.c: Update.
6310         * tracefile-tfile.c: Update.
6311         * windows-nat.c: Update.
6312
6313 2018-07-03  Tom Tromey  <tom@tromey.com>
6314
6315         * common/ptid.h (ptid_build): Don't declare.
6316         * common/ptid.c (ptid_build): Remove.
6317         * aix-thread.c: Update.
6318         * bsd-kvm.c: Update.
6319         * bsd-uthread.c: Update.
6320         * common/agent.c: Update.
6321         * common/ptid.c: Update.
6322         * common/ptid.h: Update.
6323         * corelow.c: Update.
6324         * darwin-nat.c: Update.
6325         * fbsd-nat.c: Update.
6326         * gnu-nat.c: Update.
6327         * linux-fork.c: Update.
6328         * linux-nat.c: Update.
6329         * linux-thread-db.c: Update.
6330         * nat/linux-osdata.c: Update.
6331         * nat/linux-procfs.c: Update.
6332         * nto-procfs.c: Update.
6333         * obsd-nat.c: Update.
6334         * proc-service.c: Update.
6335         * procfs.c: Update.
6336         * ravenscar-thread.c: Update.
6337         * remote-sim.c: Update.
6338         * remote.c: Update.
6339         * sol-thread.c: Update.
6340         * target.c: Update.
6341         * windows-nat.c: Update.
6342
6343 2018-07-03  Tom Tromey  <tom@tromey.com>
6344
6345         * infrun.c (follow_exec): Use exit_inferior_silent.
6346         * inferior.c (exit_inferior_num_silent): Remove.
6347         * inferior.h (exit_inferior_num_silent): Don't declare.
6348
6349 2018-07-03  Tom Tromey  <tom@tromey.com>
6350
6351         PR cli/23340:
6352         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6353         inferior_ptid on error.
6354
6355 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6356             Simon Marchi  <simon.marchi@polymtl.ca>
6357
6358         PR tdep/8282
6359         * disasm.h (gdb_disassembler): Add
6360         `m_disassembler_options_holder'. member
6361         * disasm.c (get_all_disassembler_options): New function.
6362         (gdb_disassembler::gdb_disassembler): Use it.
6363         (gdb_buffered_insn_length_init_dis): Likewise.
6364         (gdb_buffered_insn_length): Adjust accordingly.
6365         (set_disassembler_options): Handle options with arguments.
6366         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6367         line if showing options with descriptions.
6368         (disassembler_options_completer): Adapt to using the
6369         `disasm_options_and_args_t' structure.
6370         * mips-tdep.c (mips_disassembler_options): New variable.
6371         (mips_disassembler_options_o32): Likewise.
6372         (mips_disassembler_options_n32): Likewise.
6373         (mips_disassembler_options_n64): Likewise.
6374         (gdb_print_insn_mips): Don't set `disassembler_options'.
6375         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6376         functions.
6377         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6378         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6379         `gdbarch_disassembler_options_implicit' and
6380         `gdbarch_valid_disassembler_options'.
6381         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6382         `disasm_options_and_args_t' structure.
6383         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6384         method.
6385         (valid_disassembler_options): Switch from `disasm_options_t' to
6386         the `disasm_options_and_args_t' structure.
6387         * NEWS: Document `set disassembler-options' support for the MIPS
6388         target.
6389         * gdbarch.h: Regenerate.
6390         * gdbarch.c: Regenerate.
6391
6392 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6393
6394         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6395
6396 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6397
6398         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6399         parameter in call to amd64_target_description.
6400         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6401         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6402         (amd64fbsd_init_abi): Likewise.
6403         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6404         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6405         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6406         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6407
6408 2018-06-29  Pedro Alves  <palves@redhat.com>
6409
6410         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6411         "segments" parameter.
6412         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6413         (_initialize_amd64_tdep): Update call to
6414         amd64_create_target_description.
6415         (amd64_target_description): Add "segments" parameter.  Adjust
6416         the implementation to use it.
6417         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6418         call to amd64_create_target_description.
6419         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6420         * gdb/arch/amd64.h (amd64_create_target_description): Add
6421         "segments" register.
6422         * gdb/arch/amd64.c (amd64_create_target_description): Add
6423         "segments" parameter.  Call create_feature_i386_64bit_segments
6424         only if SEGMENTS is true.
6425         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6426         call to amd64_create_target_description.
6427
6428 2018-06-29  Pedro Alves  <palves@redhat.com>
6429
6430         * thread.c (thread_target_id_str): New, factored out from ...
6431         (print_thread_info_1): ... here.  Use it to compute the max
6432         "Target Id" column width.
6433
6434 2018-06-29  Pedro Alves  <palves@redhat.com>
6435
6436         * remote.c (remote_target::extra_thread_info): Delete
6437         'display_buf' and 'n' locals.  from the cache, regardless of
6438         packet mechanims is in use.  Use cache for qThreadExtra and qP
6439         methods too.
6440
6441 2018-06-29  Pedro Alves  <palves@redhat.com>
6442
6443         * blockframe.c (find_pc_sect_containing_function): New function.
6444         * breakpoint.c (print_breakpoint_location): Don't call
6445         find_pc_sect_function.
6446         * linespec.c (create_sals_line_offset): Record the location's
6447         symbol in the sal.
6448         * linespec.c (convert_address_location_to_sals): Fill in sal's
6449         symbol with find_pc_sect_containing_function.
6450         * symtab.c (find_function_start_sal): Rename to ...
6451         (find_function_start_sal_1): ... this.
6452         (find_function_start_sal): Reimplement as wrapper around
6453         find_function_start_sal_1, and use
6454         find_pc_sect_containing_function to fill in the sal's symbol.
6455         (find_function_start_sal(symbol*, bool)): Adjust.
6456         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6457         comments.
6458         (find_pc_sect_containing_function): Declare.
6459
6460 2018-06-29  Pedro Alves  <palves@redhat.com>
6461
6462         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6463         true if the the location has no symbol.
6464
6465 2018-06-28  Tom Tromey  <tom@tromey.com>
6466
6467         * NEWS: Mention --enable-codesign.
6468         * silent-rules.mk (ECHO_SIGN): New variable.
6469         * configure.ac: Add --enable-codesign.
6470         * configure: Rebuild.
6471         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6472         (gdb$(EXEEXT)): Optionally invoke codesign.
6473
6474 2018-06-28  Pedro Alves  <palves@redhat.com>
6475
6476         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6477         comments.
6478         (switch_to_thread_no_regs): Adjust comment.
6479         * infcmd.c (stop_pc): Delete.
6480         (post_create_inferior, info_program_command): Replace references
6481         to stop_pc with references to thread_info->suspend.stop_pc.
6482         * inferior.h (stop_pc): Delete declaration.
6483         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6484         (handle_inferior_event_1, handle_signal_stop)
6485         (process_event_stop_test, keep_going_stepped_thread)
6486         (handle_step_into_function, handle_step_into_function_backward)
6487         (print_stop_location): Replace references to stop_pc with
6488         references to thread_info->suspend.stop_pc.
6489         (struct infcall_suspend_state) <stop_pc>: Delete field.
6490         (save_infcall_suspend_state, restore_infcall_suspend_state):
6491         Remove references to inf_stat->stop_pc.
6492         * linux-fork.c (fork_load_infrun_state): Likewise.
6493         * record-btrace.c (record_btrace_set_replay): Likewise.
6494         * record-full.c (record_full_goto_entry): Likewise.
6495         * remote.c (print_one_stopped_thread): Likewise.
6496         * target.c (target_resume): Extend comment.
6497         * thread.c (set_executing_thread): New.
6498         (set_executing): Use it.
6499         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6500         Remove references to stop_pc.
6501
6502 2018-06-28  Pedro Alves  <palves@redhat.com>
6503
6504         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6505         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6506
6507 2018-06-28  Tom Tromey  <tom@tromey.com>
6508
6509         * coffread.c (coff_symfile_finish): Update.
6510         * xcoffread.c (xcoff_symfile_finish): Update.
6511         * elfread.c (elf_symfile_finish): Update.
6512         * symfile.h (dwarf2_free_objfile): Don't declare.
6513         * dwarf2read.c (_initialize_dwarf2_read): Use
6514         register_objfile_data_with_cleanup.
6515         (dwarf2_free_objfile): Now static.  Change signature.
6516
6517 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6518
6519         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6520         option "-o" to add-symbol-file-load to add an offset to each
6521         section's load address.
6522         * symfile.c (set_objfile_default_section_offset): New function.
6523
6524 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6525
6526         * symfile.c (add_symbol_file_command): Make sure that sections
6527         with the same name are sorted in the same order.
6528
6529 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6530
6531         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6532         require the second argument.  If omitted, load sections at the
6533         addresses specified in the file.
6534
6535 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6536
6537         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6538         (_initialize_symfile): Add option "-o" to symbol-file to add an
6539         offset to each section of the symbol file.
6540
6541 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6542
6543         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6544
6545 2018-06-27  Tom Tromey  <tom@tromey.com>
6546
6547         * stack.c (_initialize_stack): Update "func" help text.
6548
6549 2018-06-27  Tom Tromey  <tom@tromey.com>
6550
6551         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6552         std::vector.
6553         (unwind_infopy_str, pyuw_create_unwind_info)
6554         (unwind_infopy_add_saved_register, pyuw_sniffer)
6555         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6556         Update.
6557         (struct saved_reg): Add constructor.
6558         <value>: Now a gdbpy_ref<>.
6559
6560 2018-06-27  Tom Tromey  <tom@tromey.com>
6561
6562         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6563
6564 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6565
6566         * gdb-gdb.py.in: Format using autopep8.
6567
6568 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6569
6570         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6571         (type_lookup_function): Recognize CORE_ADDR values.
6572
6573 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6574
6575         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6576         print tag_name.
6577
6578 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6579
6580         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6581         <__lt__>: Add.
6582
6583 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6584
6585         * gdb-gdb.py: Move to...
6586         * gdb-gdb.py.in: ... here.
6587         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6588         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6589         dependencies.
6590         (distclean): Remove gdb-gdb.py when cleaning.
6591         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6592         * configure: Re-generate.
6593
6594 2018-06-27  Pedro Alves  <palves@redhat.com>
6595
6596         * proc-service.c (get_ps_regcache): New.
6597         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6598         (ps_lsetfpregs): Use it.
6599
6600 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6601
6602         PR gdb/21695
6603         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6604         (dwarf_decode_lines_1): Adjust.
6605
6606 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6607
6608         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6609         override.
6610         <info_proc>: Likewise.
6611
6612 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6613
6614         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6615         to windows_fetch_one_register, and only handle the case of
6616         fetching one register.  Move the code that reloads the context
6617         and iterates over all registers if R is negative to...
6618         (windows_nat_target::fetch_registers): ... here.
6619         (do_windows_store_inferior_registers): Rename to
6620         windows_store_one_register, and only handle the case of storing
6621         one register.  Move the code that handles the case where r is
6622         negative to...
6623         (windows_nat_target::store_registers) ... here.
6624
6625 2018-06-26  Tom Tromey  <tom@tromey.com>
6626
6627         PR rust/22574:
6628         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6629         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6630         Update.
6631         (rust_internal_print_type): Add podata parameter.
6632         (rust_print_type): Update.
6633
6634 2018-06-26  Tom Tromey  <tom@tromey.com>
6635
6636         * typeprint.h (struct print_offset_data) <update, finish,
6637         maybe_print_hole>: New methods.
6638         <indentation>: New constant.
6639         * typeprint.c (print_offset_data::indentation): Define.
6640         (print_offset_data::maybe_print_hole, print_offset_data::update)
6641         (print_offset_data::finish): Move from c-typeprint.c and rename.
6642         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6643         (print_spaces_filtered_with_print_options): Update.
6644         (c_print_type_union_field_offset, maybe_print_hole)
6645         (c_print_type_struct_field_offset): Move to typeprint.c and
6646         rename.
6647         (c_type_print_base_struct_union): Update.
6648
6649 2018-06-25  Pedro Alves  <palves@redhat.com>
6650
6651         * gdbthread.h (thread_info_ref, delete_thread)
6652         (delete_thread_silent, first_thread_of_inferior)
6653         (any_thread_of_inferior, switch_to_thread)
6654         (enable_thread_stack_temporaries)
6655         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6656         (get_last_thread_stack_temporary)
6657         (value_in_thread_stack_temporaries, can_access_registers_thread):
6658         Spell out "struct thread_info" instead of just "thread_info".
6659         * inferior.h (notice_new_inferior): Likewise.
6660
6661 2018-06-25  Pedro Alves  <palves@redhat.com>
6662
6663         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6664         pass thread_info pointer to delete_thread.
6665         (windows_nat_target::detach): Pass inferior pointer to
6666         detach_inferior.
6667         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6668         delete_thread.
6669         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6670         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6671         and pass a thread_info pointer to delete_thread.
6672         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6673         pass thread_info pointer to delete_thread.
6674         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6675         delete_thread_silent call.
6676         * procfs.c (procfs_target::detach): Pass inferior pointer to
6677         detach_inferior.
6678         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6679         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6680         delete_thread_silent call.
6681         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6682         pass thread_info pointer to delete_thread.
6683         (windows_nat_target::detach): Pass inferior pointer to
6684         delete_inferior.
6685
6686 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6687
6688         * regcache.c (readable_regcache::read_part): Fix asserts.
6689         (reg_buffer::raw_collect_part): New function.
6690         (regcache::write_part): Fix asserts.
6691         (reg_buffer::raw_supply_part): New function.
6692         (regcache::transfer_regset_register): New helper function.
6693         (regcache::transfer_regset): Call new functions.
6694         (regcache_supply_regset): Use gdb_byte*.
6695         (regcache::supply_regset): Likewise.
6696         (regcache_collect_regset): Likewise.
6697         (regcache::collect_regset): Likewise.
6698         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6699         (reg_buffer::raw_supply_part): Likewise.
6700         (regcache::transfer_regset_register): Likewise.
6701         (regcache::transfer_regset): Use gdb_byte*.
6702
6703 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6704
6705         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6706
6707 2018-06-21  Pedro Alves  <palves@redhat.com>
6708
6709         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6710         instead of a ptid_t.  All callers adjusted.
6711         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6712         adjusted.
6713         (print_ada_task_info, display_current_task_id, task_command_1):
6714         Adjust.
6715         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6716         inferior_thread.
6717         (breakpoint_kind): Adjust.
6718         (remove_breakpoints_pid): Rename to ...
6719         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6720         pointer.  All callers adjusted.
6721         (bpstat_clear_actions): Use inferior_thread.
6722         (get_bpstat_thread): New.
6723         (bpstat_do_actions): Use it.
6724         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6725         to take a thread_info pointer.  All callers adjusted.
6726         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6727         (breakpoint_re_set_thread): Use inferior_thread.
6728         * breakpoint.h (struct inferior): Forward declare.
6729         (bpstat_stop_status): Update.
6730         (remove_breakpoints_pid): Delete.
6731         (remove_breakpoints_inf): New.
6732         * bsd-uthread.c (bsd_uthread_target::wait)
6733         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6734         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6735         (maint_btrace_packet_history_cmd)
6736         (maint_btrace_clear_packet_history_cmd): Adjust.
6737         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6738         inferior_thread.
6739         * cli/cli-interp.c: Include "inferior.h".
6740         * common/refcounted-object.h (struct
6741         refcounted_object_ref_policy): New.
6742         * compile/compile-object-load.c: Include gdbthread.h.
6743         (store_regs): Use inferior_thread.
6744         * corelow.c (core_target::close): Use current_inferior.
6745         (core_target_open): Adjust to use first_thread_of_inferior and use
6746         the current inferior.
6747         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6748         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6749         <thread>: ... this new field.  All references adjusted.
6750         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6751         Take a thread_info pointer instead of a ptid_t.
6752         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6753         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6754         thread_info pointer instead of a ptid_t.
6755         * elfread.c: Include "inferior.h".
6756         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6757         Use inferior_thread.
6758         * eval.c (evaluate_subexp): Likewise.
6759         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6760         inferior_thread.
6761         * gdb_proc_service.h (struct thread_info): Forward declare.
6762         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6763         <thread>: ... this new field.  All references adjusted.
6764         * gdbarch.h, gdbarch.c: Regenerate.
6765         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6766         'thread' parameter.  All implementations and callers adjusted.
6767         * gdbthread.h (thread_info) <set_running>: New method.
6768         (delete_thread, delete_thread_silent): Take a thread_info pointer
6769         instead of a ptid.
6770         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6771         (first_thread_of_process): Delete, replaced by ...
6772         (first_thread_of_inferior): ... this new function.  All callers
6773         adjusted.
6774         (any_live_thread_of_process): Delete, replaced by ...
6775         (any_live_thread_of_inferior): ... this new function.  All callers
6776         adjusted.
6777         (switch_to_thread, switch_to_no_thread): Declare.
6778         (is_executing): Delete.
6779         (enable_thread_stack_temporaries): Update comment.
6780         <enable_thread_stack_temporaries>: Take a thread_info pointer
6781         instead of a ptid_t.  Incref the thread.
6782         <~enable_thread_stack_temporaries>: Decref the thread.
6783         <m_ptid>: Delete
6784         <m_thr>: New.
6785         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6786         (get_last_thread_stack_temporary)
6787         (value_in_thread_stack_temporaries, can_access_registers_thread):
6788         Take a thread_info pointer instead of a ptid_t.  All callers
6789         adjusted.
6790         * infcall.c (get_call_return_value): Use inferior_thread.
6791         (run_inferior_call): Work with thread pointers instead of ptid_t.
6792         (call_function_by_hand_dummy): Work with thread pointers instead
6793         of ptid_t.  Use thread_info_ref.
6794         * infcmd.c (proceed_thread_callback): Access thread's state
6795         directly.
6796         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6797         access thread's state directly.
6798         (continue_command): Use inferior_thread.
6799         (info_program_command): Use find_thread_ptid and access thread
6800         state directly.
6801         (proceed_after_attach_callback): Use thread state directly.
6802         (notice_new_inferior): Take a thread_info pointer instead of a
6803         ptid_t.  All callers adjusted.
6804         (exit_inferior): Take an inferior pointer instead of a pid.  All
6805         callers adjusted.
6806         (exit_inferior_silent): New.
6807         (detach_inferior): Delete.
6808         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6809         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6810         (detach_inferior_command, kill_inferior_command): Use
6811         find_inferior_id instead of valid_gdb_inferior_id and
6812         gdb_inferior_id_to_pid.
6813         (inferior_command): Use inferior and thread pointers.
6814         * inferior.h (struct thread_info): Forward declare.
6815         (notice_new_inferior): Take a thread_info pointer instead of a
6816         ptid_t.  All callers adjusted.
6817         (detach_inferior): Delete declaration.
6818         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6819         instead of a pid.  All callers adjusted.
6820         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6821         (valid_gdb_inferior_id): Delete.
6822         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6823         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6824         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6825         ...
6826         <inf>: ... this new field.
6827         <step_ptid>: Delete, replaced by ...
6828         <step_thread>: ... this new field.
6829         (get_displaced_stepping_state): Take an inferior pointer instead
6830         of a pid.  All callers adjusted.
6831         (displaced_step_in_progress_any_inferior): Adjust.
6832         (displaced_step_in_progress_thread): Take a thread pointer instead
6833         of a ptid_t.  All callers adjusted.
6834         (displaced_step_in_progress, add_displaced_stepping_state): Take
6835         an inferior pointer instead of a pid.  All callers adjusted.
6836         (get_displaced_step_closure_by_addr): Adjust.
6837         (remove_displaced_stepping_state): Take an inferior pointer
6838         instead of a pid.  All callers adjusted.
6839         (displaced_step_prepare_throw, displaced_step_prepare)
6840         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6841         All callers adjusted.
6842         (start_step_over): Adjust.
6843         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6844         displaced step queue.
6845         (do_target_resume): Adjust.
6846         (fetch_inferior_event): Use inferior_thread.
6847         (context_switch, get_inferior_stop_soon): Take an
6848         execution_control_state pointer instead of a ptid_t.  All callers
6849         adjusted.
6850         (switch_to_thread_cleanup): Delete.
6851         (stop_all_threads): Use scoped_restore_current_thread.
6852         * inline-frame.c: Include "gdbthread.h".
6853         (inline_state) <inline_state>: Take a thread pointer instead of a
6854         ptid_t.  All callers adjusted.
6855         <ptid>: Delete, replaced by ...
6856         <thread>: ... this new field.
6857         (find_inline_frame_state): Take a thread pointer instead of a
6858         ptid_t.  All callers adjusted.
6859         (skip_inline_frames, step_into_inline_frame)
6860         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6861         pointer instead of a ptid_t.  All callers adjusted.
6862         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6863         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6864         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6865         pointers directly.
6866         * linux-nat.c (get_detach_signal): Likewise.
6867         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6868         (thread_db_notice_clone): Adjust.
6869         (thread_db_find_new_threads_silently)
6870         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6871         a thread pointer instead of a ptid_t.  All callers adjusted.
6872         * mi/mi-cmd-var.c: Include "inferior.h".
6873         (mi_cmd_var_update_iter): Update to use thread pointers.
6874         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6875         inferior directly.
6876         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6877         out to ...
6878         (mi_output_running): ... this new function.
6879         (mi_on_resume_1): Adjust to use it.
6880         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6881         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6882         directly.
6883         (interrupt_thread_callback): : Adjust to use thread and inferior
6884         pointers.
6885         * proc-service.c: Include "gdbthread.h".
6886         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6887         * progspace-and-thread.c: Include "inferior.h".
6888         * progspace.c: Include "inferior.h".
6889         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6890         hold a reference to an inferior_object.
6891         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6892         inferior_thread.
6893         * python/py-inferior.c (struct inferior_object): Give the type a
6894         tag name instead of a typedef.
6895         (python_on_normal_stop): No need to check if the current thread is
6896         listed.
6897         (inferior_to_inferior_object): Change return type to
6898         inferior_object.  All callers adjusted.
6899         (find_thread_object): Delete, bits factored out to ...
6900         (thread_to_thread_object): ... this new function.
6901         * python/py-infthread.c (create_thread_object): Use
6902         inferior_to_inferior_object.
6903         (thpy_is_stopped): Use thread pointer directly.
6904         (gdbpy_selected_thread): Use inferior_thread.
6905         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6906         field, replaced with ...
6907         <thread>: ... this new field.  All users adjusted.
6908         (btpy_insn_or_gap_new): Drop const.
6909         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6910         callers adjusted.
6911         * python/py-record.c: Include "gdbthread.h".
6912         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6913         a ptid_t.  All callers adjusted.
6914         (gdbpy_current_recording): Use inferior_thread.
6915         * python/py-record.h (recpy_record_object) <ptid>: Delete
6916         field, replaced with ...
6917         <thread>: ... this new field.  All users adjusted.
6918         (recpy_element_object) <ptid>: Delete
6919         field, replaced with ...
6920         <thread>: ... this new field.  All users adjusted.
6921         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6922         a ptid_t.  All callers adjusted.
6923         * python/py-threadevent.c: Include "gdbthread.h".
6924         (get_event_thread): Use thread_to_thread_object.
6925         * python/python-internal.h (struct inferior_object): Forward
6926         declare.
6927         (find_thread_object, find_inferior_object): Delete declarations.
6928         (thread_to_thread_object, inferior_to_inferior_object): New
6929         declarations.
6930         * record-btrace.c: Include "inferior.h".
6931         (require_btrace_thread): Use inferior_thread.
6932         (record_btrace_frame_sniffer)
6933         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6934         (get_thread_current_frame): Use scoped_restore_current_thread and
6935         switch_to_thread.
6936         (get_thread_current_frame): Use thread pointer directly.
6937         (record_btrace_replay_at_breakpoint): Use thread's inferior
6938         pointer directly.
6939         * record-full.c: Include "inferior.h".
6940         * regcache.c: Include "gdbthread.h".
6941         (get_thread_arch_regcache): Use the inferior's address space
6942         directly.
6943         (get_thread_regcache, registers_changed_thread): New.
6944         * regcache.h (get_thread_regcache(thread_info *thread)): New
6945         overload.
6946         (registers_changed_thread): New.
6947         (remote_target) <remote_detach_1>: Swap order of parameters.
6948         (remote_add_thread): <remote_add_thread>: Return the new thread.
6949         (get_remote_thread_info(ptid_t)): New overload.
6950         (remote_target::remote_notice_new_inferior): Use thread pointers
6951         directly.
6952         (remote_target::process_initial_stop_replies): Use
6953         thread_info::set_running.
6954         (remote_target::remote_detach_1, remote_target::detach)
6955         (extended_remote_target::detach): Adjust.
6956         * stack.c (frame_show_address): Use inferior_thread.
6957         * target-debug.h (target_debug_print_thread_info_pp): New.
6958         * target-delegates.c: Regenerate.
6959         * target.c (default_thread_address_space): Delete.
6960         (memory_xfer_partial_1): Use current_inferior.
6961         (target_detach): Use current_inferior.
6962         (target_thread_address_space): Delete.
6963         (generic_mourn_inferior): Use current_inferior.
6964         * target.h (struct target_ops) <thread_address_space>: Delete.
6965         (target_thread_address_space): Delete.
6966         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6967         pointers directly.
6968         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6969         thread pointer instead of a ptid_t.  Adjust all callers.
6970         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6971         (first_thread_of_process): Delete, replaced by ...
6972         (first_thread_of_inferior): ... this new function.  All callers
6973         adjusted.
6974         (any_thread_of_process): Rename to ...
6975         (any_thread_of_inferior): ... this, and take an inferior pointer.
6976         (any_live_thread_of_process): Rename to ...
6977         (any_live_thread_of_inferior): ... this, and take an inferior
6978         pointer.
6979         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6980         (value_in_thread_stack_temporaries)
6981         (get_last_thread_stack_temporary): Take a thread pointer instead
6982         of a ptid_t.  Adjust all callers.
6983         (thread_info::set_running): New.
6984         (validate_registers_access): Use inferior_thread.
6985         (can_access_registers_ptid): Rename to ...
6986         (can_access_registers_thread): ... this, and take a thread
6987         pointer.
6988         (print_thread_info_1): Adjust to compare thread pointers instead
6989         of ptids.
6990         (switch_to_no_thread, switch_to_thread): Make extern.
6991         (scoped_restore_current_thread::~scoped_restore_current_thread):
6992         Use m_thread pointer directly.
6993         (scoped_restore_current_thread::scoped_restore_current_thread):
6994         Use inferior_thread.
6995         (thread_command): Use thread pointer directly.
6996         (thread_num_make_value_helper): Use inferior_thread.
6997         * top.c (execute_command): Use inferior_thread.
6998         * tui/tui-interp.c: Include "inferior.h".
6999         * varobj.c (varobj_create): Use inferior_thread.
7000         (value_of_root_1): Use find_thread_global_id instead of
7001         global_thread_id_to_ptid.
7002
7003 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7004
7005         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7006         possible.
7007         (regcache::write_part): Likewise.
7008         (readable_regcache::cooked_read_part): Update comment.
7009         (readable_regcache::cooked_write_part): Likewise.
7010         * regcache.h: (readable_regcache::read_part): Likewise.
7011         (regcache::write_part): Likewise.
7012
7013 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7014             Dirk Schubert  <dirk.schubert@arm.com>
7015
7016         * aarch64-linux-nat.c (post_attach): New.
7017         (aarch64_linux_nat_target::post_attach): Override post_attach to
7018         record the number of hardware debug registers.
7019
7020 2018-06-20  Tom Tromey  <tom@tromey.com>
7021
7022         * python/py-param.c (add_setshow_generic): Make parameters const.
7023         (parmpy_init): Update.
7024
7025 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7026
7027         * regcache.h (regcache_cooked_read_ftype): Rename to...
7028         (register_read_ftype): ...this, change type to function_view.
7029         (class reg_buffer) <save>: Remove src parameter.
7030         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7031         parameter non-const in first overload.  Remove src parameter in
7032         second overload.
7033         * regcache.c (do_cooked_read): Remove.
7034         (readonly_detached_regcache::readonly_detached_regcache): Make
7035         parameter non-const, adjust call to other constructor.
7036         (reg_buffer::save): Remove src parameter.
7037         * frame.c (do_frame_register_read): Remove.
7038         (frame_save_as_regcache): Use lambda function.
7039         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7040         parameter to ppu2spu_data *.
7041         (ppu2spu_sniffer): Use lambda function.
7042
7043 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7044
7045         * record-full.c (record_full_target::insert_breakpoint): Remove
7046         "struct" keyword, add const.
7047
7048 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7049
7050         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7051         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7052         * configure.ac: Remove AC_PREREQ, add missing quoting.
7053         * gnulib/configure.ac: Modernize usage of
7054         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7055         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7056         (AUTOMAKE_VERSION): Bump to 1.15.1.
7057         * configure: Re-generate.
7058         * config.in: Re-generate.
7059         * aclocal.m4: Re-generate.
7060         * gnulib/aclocal.m4: Re-generate.
7061         * gnulib/config.in: Re-generate.
7062         * gnulib/configure: Re-generate.
7063         * gnulib/import/Makefile.in: Re-generate.
7064
7065 2018-06-19  Pedro Alves  <palves@redhat.com>
7066
7067         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7068         (lookup_minimal_symbol_by_pc_section): ... here with
7069         gdb_assert_not_reached added.
7070
7071 2018-06-19  Pedro Alves  <palves@redhat.com>
7072
7073         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7074         parameter with a block parameter.  Compare location's block symbol
7075         with the frame's block instead of addresses.
7076         (skip_inline_frames): Pass the current block instead of the
7077         frame's address.  Break out as soon as we determine the frame
7078         should not be skipped.
7079
7080 2018-06-18  Tom Tromey  <tom@tromey.com>
7081
7082         * solib-aix.c (solib_aix_get_section_offsets): Return
7083         unique_xmalloc_ptr.
7084         (solib_aix_solib_create_inferior_hook): Update.
7085
7086 2018-06-18  Tom Tromey  <tom@tromey.com>
7087
7088         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7089
7090 2018-06-18  Tom Tromey  <tom@tromey.com>
7091
7092         * solib-frv.c (frv_relocate_main_executable): Use
7093         unique_xmalloc_ptr.
7094         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7095         unique_xmalloc_ptr.
7096
7097 2018-06-18  Tom Tromey  <tom@tromey.com>
7098
7099         * objfiles.h (inhibit_section_map_updates): Update.
7100         (resume_section_map_updates, resume_section_map_updates_cleanup):
7101         Remove.
7102         * solib-svr4.c (svr4_handle_solib_event): Update.
7103         * objfiles.c (inhibit_section_map_updates): Return
7104         scoped_restore_tmpl<int>.
7105         (resume_section_map_updates, resume_section_map_updates_cleanup):
7106         Remove.
7107
7108 2018-06-18  Tom Tromey  <tom@tromey.com>
7109
7110         * valprint.h (read_string): Update.
7111         * valprint.c (read_string): Change type of "buffer".
7112         (val_print_string): Update.
7113         * python/py-value.c (valpy_string): Update.
7114         * language.h (struct language_defn) <la_get_string>: Change
7115         type of "buffer".
7116         (default_get_string, c_get_string): Update.
7117         * language.c (default_get_string): Change type of "buffer".
7118         * guile/scm-value.c (gdbscm_value_to_string): Update.
7119         * c-lang.c (c_get_string): Change type of "buffer".
7120
7121 2018-06-18  Tom Tromey  <tom@tromey.com>
7122
7123         * ser-mingw.c (struct pipe_state_destroyer): New.
7124         (pipe_state_up): New typedef.
7125         (cleanup_pipe_state): Remove.
7126         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7127
7128 2018-06-18  Tom Tromey  <tom@tromey.com>
7129
7130         * rust-lang.h (rust_yyerror): Don't declare.
7131         * rust-lang.c (rust_language_defn): Update.
7132         * rust-exp.y (yyerror): Now static.
7133         * parse.c (parse_exp_in_context_1): Update.
7134         * p-lang.h (p_yyerror): Don't declare.
7135         * p-lang.c (p_language_defn): Update.
7136         * p-exp.y (yyerror): Now static.
7137         * opencl-lang.c (opencl_language_defn): Update.
7138         * objc-lang.c (objc_language_defn): Update.
7139         * m2-lang.h (m2_yyerror): Don't declare.
7140         * m2-lang.c (m2_language_defn): Update.
7141         * m2-exp.y (yyerror): Now static.
7142         * language.h (struct language_defn) <la_error>: Remove.
7143         * language.c (unk_lang_error): Remove.
7144         (unknown_language_defn, auto_language_defn): Remove.
7145         * go-lang.h (go_yyerror): Don't declare.
7146         * go-lang.c (go_language_defn): Update.
7147         * go-exp.y (yyerror): Now static.
7148         * f-lang.h (f_yyerror): Don't declare.
7149         * f-lang.c (f_language_defn): Update.
7150         * f-exp.y (yyerror): Now static.
7151         * d-lang.h (d_yyerror): Don't declare.
7152         * d-lang.c (d_language_defn): Update.
7153         * d-exp.y (yyerror): Now static.
7154         * c-lang.h (c_yyerror): Don't declare.
7155         * c-lang.c (c_language_defn, cplus_language_defn)
7156         (asm_language_defn, minimal_language_defn): Update.
7157         * c-exp.y (yyerror): Now static.
7158         * ada-lang.h (ada_yyerror): Don't declare.
7159         * ada-lang.c (ada_language_defn): Update.
7160         * ada-exp.y (yyerror): Now static.
7161
7162 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7163
7164         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7165         (store_sveregs_to_thread): Likewise.
7166         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7167         (aarch64_linux_store_inferior_registers): Likewise.
7168         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7169         function.
7170         (aarch64_sve_regs_copy_to_regcache): Likewise.
7171         (aarch64_sve_regs_copy_from_regcache): Likewise.
7172         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7173         declaration.
7174         (aarch64_sve_regs_copy_to_regcache): Likewise.
7175         (aarch64_sve_regs_copy_from_regcache): Likewise.
7176         (sve_context): Structure from Linux headers.
7177         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7178         (SVE_SIG_ZREG_SIZE): Likewise.
7179         (SVE_SIG_PREG_SIZE): Likewise.
7180         (SVE_SIG_FFR_SIZE): Likewise.
7181         (SVE_SIG_REGS_OFFSET): Likewise.
7182         (SVE_SIG_ZREGS_OFFSET): Likewise.
7183         (SVE_SIG_ZREG_OFFSET): Likewise.
7184         (SVE_SIG_ZREGS_SIZE): Likewise.
7185         (SVE_SIG_PREGS_OFFSET): Likewise.
7186         (SVE_SIG_PREG_OFFSET): Likewise.
7187         (SVE_SIG_PREGS_SIZE): Likewise.
7188         (SVE_SIG_FFR_OFFSET): Likewise.
7189         (SVE_SIG_REGS_SIZE): Likewise.
7190         (SVE_SIG_CONTEXT_SIZE): Likewise.
7191         (SVE_PT_REGS_MASK): Likewise.
7192         (SVE_PT_REGS_FPSIMD): Likewise.
7193         (SVE_PT_REGS_SVE): Likewise.
7194         (SVE_PT_VL_INHERIT): Likewise.
7195         (SVE_PT_VL_ONEXEC): Likewise.
7196         (SVE_PT_REGS_OFFSET): Likewise.
7197         (SVE_PT_FPSIMD_OFFSET): Likewise.
7198         (SVE_PT_FPSIMD_SIZE): Likewise.
7199         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7200         (SVE_PT_SVE_PREG_SIZE): Likewise.
7201         (SVE_PT_SVE_FFR_SIZE): Likewise.
7202         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7203         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7204         (__SVE_SIG_TO_PT): Likewise.
7205         (SVE_PT_SVE_OFFSET): Likewise.
7206         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7207         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7208         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7209         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7210         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7211         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7212         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7213         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7214         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7215         (SVE_PT_SVE_SIZE): Likewise.
7216         (SVE_PT_SIZE): Likewise.
7217         (HAS_SVE_STATE): New define.
7218
7219 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7220
7221         * nat/aarch64-sve-linux-sigcontext.h: New file.
7222         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7223         new files.
7224         (SVE_VQ_MIN): Likewise.
7225         (SVE_VQ_MAX): Likewise.
7226         (SVE_VL_MIN): Likewise.
7227         (SVE_VL_MAX): Likewise.
7228         (SVE_NUM_ZREGS): Likewise.
7229         (SVE_NUM_PREGS): Likewise.
7230         (sve_vl_valid): Likewise.
7231         (struct user_sve_header): Likewise.
7232
7233 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7234             Richard Bunt <Richard.Bunt@arm.com>
7235
7236         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7237         was requested by GDB.
7238
7239 2018-06-15  Tom de Vries  <tdevries@suse.de>
7240
7241         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7242
7243 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7244
7245         * gnulib/update-gnulib.sh: Print expected versions of
7246         autoconf/aclocal.
7247
7248 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7249
7250         * arch-utils.c (default_type_align): Use type_length_units.
7251         * gdbtypes.c (type_align): Use type_length_units.
7252
7253 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7254
7255         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7256         of 'define' command.
7257
7258 2018-06-14  Tom de Vries  <tdevries@suse.de>
7259
7260         PR cli/22573
7261         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7262         get_no_prettyformat_print_options.
7263
7264 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7265
7266         * sparc-nat.h: Include target.h.
7267         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7268         <fetch_registers>: Remove this argument in function call.
7269         <store_registers>: Remove this argument in function call, remove
7270         extra semicolon.
7271         <low_forget_process>: Call sparc64_forget_process instead of
7272         sparc_forget_process.
7273
7274 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7275
7276         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7277         (procfs_target::make_corefile_notes): Adjust to new
7278         target_read_alloc return type.
7279
7280 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7281             Stephen Roberts  <stephen.roberts@arm.com>
7282
7283         PR gdb/22882
7284         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7285         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7286         Move should_notify_stop local into more inner scope.
7287
7288 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7289             Stephen Roberts  <stephen.roberts@arm.com>
7290
7291         PR gdb/22882
7292         * infrun.c (resume_1): Add call to mark_async_event_handler.
7293
7294 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7295
7296         * infrun.c (do_target_wait): Change old version of $pc printed.
7297
7298 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7299
7300         * dwarf2read.c (read_index_from_section): Rename to...
7301         (read_gdb_index_from_section): ... this, update all callers.
7302         (dwarf2_read_index): Rename to...
7303         (dwarf2_read_gdb_index): ... this, update all callers.
7304
7305 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7306
7307         * gdb/hppa-linux-nat.c
7308         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7309         hppa_linux_nat_target::fetch_registers.
7310
7311 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7312
7313         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7314         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7315         (AARCH64_DWARF_SVE_FFR): Likewise.
7316         (AARCH64_DWARF_SVE_P0): Likewise.
7317         (AARCH64_DWARF_SVE_Z0): Likewise.
7318
7319 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7320
7321         * common/common-regcache.h (raw_compare): New function.
7322         * regcache.c (regcache::raw_compare): Likewise.
7323         * regcache.h (regcache::raw_compare): New declaration.
7324
7325 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7326
7327         * common/common-regcache.h (reg_buffer_common): New structure.
7328         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7329         (reg_buffer::raw_supply): Likewise.
7330         (reg_buffer::raw_supply_integer): Likewise.
7331         (reg_buffer::raw_supply_zeroed): Likewise.
7332         (reg_buffer::raw_collect): Likewise.
7333         (reg_buffer::raw_collect_integer): Likewise.
7334         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7335         (reg_buffer::raw_supply): Likewise.
7336         (reg_buffer::raw_supply_integer): Likewise.
7337         (reg_buffer::raw_supply_zeroed): Likewise.
7338         (reg_buffer::raw_collect): Likewise.
7339         (reg_buffer::raw_collect_integer): Likewise.
7340
7341 2018-06-10  Tom Tromey  <tom@tromey.com>
7342
7343         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7344         (class remote_state) <stop_reply_queue>: Now std::vector.
7345         (remote_state::~remote_state)
7346         (remote_target::stop_reply_queue_length): Update.
7347         (struct queue_iter_param, remove_child_of_pending_fork)
7348         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7349         (check_pending_event_prevents_wildcard_vcont_callback)
7350         (remove_stop_reply_for_inferior)
7351         (remove_stop_reply_of_remote_state)
7352         (remote_notif_remove_once_on_match)
7353         (stop_reply_match_ptid_and_ws)
7354         (remote_kill_child_of_pending_fork): Remove.
7355         (remote_target::remove_new_fork_children)
7356         (remote_target::check_pending_events_prevent_wildcard_vcont)
7357         (remote_target::discard_pending_stop_replies)
7358         (remote_target::discard_pending_stop_replies_in_queue)
7359         (remote_target::remote_notif_remove_queued_reply)
7360         (remote_target::queued_stop_reply)
7361         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7362         (remote_target::wait, remote_target::kill_new_fork_children)
7363         (remote_target::async): Update.
7364
7365 2018-06-10  Tom Tromey  <tom@tromey.com>
7366
7367         * record-full.c (record_full_arch_list_cleanups): Remove.
7368         (record_full_message): Use try/catch.
7369         (record_full_wait_cleanups): Remove.
7370         (record_full_wait_1): Use try/catch.
7371         (record_full_restore): Likewise.
7372
7373 2018-06-10  Tom Tromey  <tom@tromey.com>
7374
7375         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7376         declare VEC.  Add constructor.
7377         <in_target_beneath>: Now bool.
7378         (record_full_breakpoints): Now a std::vector, static.
7379         (record_full_sync_record_breakpoints)
7380         (record_full_init_record_breakpoints)
7381         (record_full_target::insert_breakpoint)
7382         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7383
7384 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7385
7386         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7387         * serial.c (serial_interface_lookup): Remove struct keyword.
7388
7389 2018-06-10  Tom Tromey  <tom@tromey.com>
7390
7391         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7392         method.
7393         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7394         a method.
7395         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7396         method.
7397         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7398         "beneath" as a method.
7399         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7400         Use "beneath" as a method.
7401
7402 2018-06-10  Tom Tromey  <tom@tromey.com>
7403
7404         * tracefile.c (struct trace_file_writer_deleter): New.
7405         <operator()>: Rename from trace_file_writer_xfree.
7406         (trace_file_writer_up): New typedef.
7407         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7408
7409 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7410
7411         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7412         <m_registers, m_register_status>: Change type to
7413         std::unique_ptr.
7414         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7415         XCNEWVEC.
7416
7417 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7418
7419         * common/common-regcache.h (enum register_status): Add
7420         underlying type "signed char".
7421         * regcache.h (reg_buffer) <m_register_status>: Change type to
7422         register_status *.
7423         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7424         register_status instead of signed char.
7425         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7426         (reg_buffer::get_register_status): Remove cast.
7427         (readable_regcache::raw_read): Remove cast.
7428         (readable_regcache::cooked_read): Remove cast.
7429
7430 2018-06-09  Tom Tromey  <tom@tromey.com>
7431
7432         * source.c (reverse_search_command, forward_search_command): Use
7433         scoped_fd.
7434
7435 2018-06-09  Tom Tromey  <tom@tromey.com>
7436
7437         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7438         (serial_ops_list): Now static, std::vector.
7439         (serial_interface_lookup, serial_add_interface): Update.
7440
7441 2018-06-09  Tom Tromey  <tom@tromey.com>
7442
7443         * dwarf2read.c (process_cu_includes): Update.
7444         (process_full_comp_unit): Update.
7445         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7446         std::vector.
7447
7448 2018-06-08  Paul Koning  <paul_koning@dell.com>
7449
7450         PR gdb/23252
7451
7452         * python/python.c (do_start_initialization):
7453         Avoid call to internal Python API.
7454         (init__gdb_module): New function.
7455
7456 2018-06-08  Gary Benson <gbenson@redhat.com>
7457
7458         * linux-thread-db.c (valprint.h): New include.
7459         (struct check_thread_db_info): New structure.
7460         (check_thread_db_on_load, tdb_testinfo): New static globals.
7461         (check_thread_db, check_thread_db_callback): New functions.
7462         (try_thread_db_load_1): Run integrity checks if requested.
7463         (maintenance_check_libthread_db): New function.
7464         (_initialize_thread_db): Register "maint check libthread-db"
7465         and "maint set/show check-libthread-db".
7466         * NEWS: Mention the above new commands.
7467
7468 2018-06-08  Tom Tromey  <tom@tromey.com>
7469
7470         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7471         now a method.
7472
7473 2018-06-08  Tom Tromey  <tom@tromey.com>
7474
7475         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7476
7477 2018-06-08  Tom Tromey  <tom@tromey.com>
7478
7479         * common/btrace-common.h (struct btrace_data): Add constructor,
7480         destructor, move assignment operator.
7481         <empty, clear, fini>: New methods.
7482         <format>: Initialize.
7483         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7484         (btrace_data_empty): Don't declare.
7485         * common/btrace-common.c (btrace_data_init): Remove.
7486         (btrace_data::fini): Rename from btrace_data_fini.
7487         (btrace_data::empty): Rename from btrace_data_empty.
7488         (btrace_data::clear): Rename from btrace_data_clear.  Return
7489         bool.
7490         * btrace.h (make_cleanup_btrace_data): Don't declare.
7491         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7492         (parse_xml_btrace): Update.
7493         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7494         (maint_btrace_clear_packet_history_cmd): Update.
7495
7496 2018-06-07  Pedro Alves  <palves@redhat.com>
7497
7498         * target.h (target_ops) <beneath>: Now a method.  All references
7499         updated.
7500         (class target_stack): New.
7501         * target.c (g_target_stack): New.
7502         (g_current_top_target): Delete.
7503         (current_top_target): Get the top target out of g_target_stack.
7504         (target_stack::push, target_stack::unpush): New.
7505         (push_target, unpush_target): Reimplement.
7506         (target_is_pushed): Reimplement in terms of g_target_stack.
7507         (target_ops::beneath, target_stack::find_beneath): New.
7508
7509 2018-06-07  Pedro Alves  <palves@redhat.com>
7510
7511         * target.h (find_target_beneath): Delete declaration.
7512         * target.c (find_target_beneath): Delete definition.
7513         * aix-thread.c: All callers of find_target_beneath adjusted to
7514         call target_ops::beneath instead.
7515         * bsd-uthread.c: Likewise.
7516         * linux-thread-db.c: Likewise.
7517         * ravenscar-thread.c: Likewise.
7518         * sol-thread.c: Likewise.
7519         * spu-multiarch.c: Likewise.
7520
7521 2018-06-07  Pedro Alves  <palves@redhat.com>
7522
7523         * target.h (target_ops) <beneath>: Now a method.  All references
7524         updated.
7525         (target_ops) <m_beneath>: New.
7526         * target.c (target_ops::beneath): New.
7527         * corelow.c: Adjust all references to target_ops::beneath.
7528         * linux-thread-db.c: Likewise.
7529         * make-target-delegates: Likewise.
7530         * record-btrace.c: Likewise.
7531         * record-full.c: Likewise.
7532         * remote.c: Likewise.
7533         * target.c: Likewise.
7534         * target-delegates.c: Regenerate.
7535
7536 2018-06-07  Pedro Alves  <palves@redhat.com>
7537
7538         * target.h (target_stack): Delete.
7539         (current_top_target): Declare function.
7540         * target.c (target_stack): Delete.
7541         (g_current_top_target): New.
7542         (current_top_target): New function.
7543         * auxv.c: Use current_top_target instead of target_stack
7544         throughout.
7545         * avr-tdep.c: Likewise.
7546         * breakpoint.c: Likewise.
7547         * corefile.c: Likewise.
7548         * elfread.c: Likewise.
7549         * eval.c: Likewise.
7550         * exceptions.c: Likewise.
7551         * frame.c: Likewise.
7552         * gdbarch-selftests.c: Likewise.
7553         * gnu-v3-abi.c: Likewise.
7554         * ia64-tdep.c: Likewise.
7555         * ia64-vms-tdep.c: Likewise.
7556         * infcall.c: Likewise.
7557         * infcmd.c: Likewise.
7558         * infrun.c: Likewise.
7559         * linespec.c: Likewise.
7560         * linux-tdep.c: Likewise.
7561         * minsyms.c: Likewise.
7562         * ppc-linux-nat.c: Likewise.
7563         * ppc-linux-tdep.c: Likewise.
7564         * procfs.c: Likewise.
7565         * regcache.c: Likewise.
7566         * remote.c: Likewise.
7567         * rs6000-tdep.c: Likewise.
7568         * s390-linux-nat.c: Likewise.
7569         * s390-tdep.c: Likewise.
7570         * solib-aix.c: Likewise.
7571         * solib-darwin.c: Likewise.
7572         * solib-dsbt.c: Likewise.
7573         * solib-spu.c: Likewise.
7574         * solib-svr4.c: Likewise.
7575         * solib-target.c: Likewise.
7576         * sparc-tdep.c: Likewise.
7577         * sparc64-tdep.c: Likewise.
7578         * spu-tdep.c: Likewise.
7579         * symfile.c: Likewise.
7580         * symtab.c: Likewise.
7581         * target-descriptions.c: Likewise.
7582         * target-memory.c: Likewise.
7583         * target.c: Likewise.
7584         * target.h: Likewise.
7585         * tracefile-tfile.c: Likewise.
7586         * tracepoint.c: Likewise.
7587         * valops.c: Likewise.
7588         * valprint.c: Likewise.
7589         * value.c: Likewise.
7590         * windows-tdep.c: Likewise.
7591         * mi/mi-main.c: Likewise.
7592
7593 2018-06-07  Tom Tromey  <tom@tromey.com>
7594
7595         * valprint.h (build_address_symbolic): Declare.
7596         * printcmd.c (print_address_symbolic): Update.
7597         (build_address_symbolic): Change "name" and "filename" to
7598         std::string.
7599         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7600         Update.
7601         * defs.h (build_address_symbolic): Remove declaration.
7602
7603 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7604
7605         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7606         (aarch64_vnv_type): Add function.
7607         (aarch64_pseudo_register_name): Add V regs for SVE.
7608         (aarch64_pseudo_register_type): Likewise.
7609         (aarch64_pseudo_register_reggroup_p): Likewise.
7610         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7611         (aarch64_pseudo_read_value): Add V regs for SVE.
7612         (aarch64_pseudo_write_2): Use V0 offset for SVE
7613         (aarch64_pseudo_write): Add V regs for SVE.
7614         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7615
7616 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7617
7618         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7619         (sve_vl_from_vq): Likewise.
7620
7621 2018-06-05  Tom Tromey  <tom@tromey.com>
7622
7623         * cli/cli-cmds.c (show_version): Update.
7624         * top.c (print_gdb_version): Add "interactive" parameter.
7625         Update.
7626         * main.c (captured_main_1): Update.
7627         * top.h (print_gdb_version): Add "interactive" parameter and a
7628         comment.
7629
7630 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7631
7632         * common/enum-flags.h: Add trailing semicolon to example in
7633         comment.
7634
7635 2018-06-05  Tom Tromey  <tom@tromey.com>
7636
7637         PR cli/12326:
7638         * NEWS: Add entry about pager.
7639         * utils.c (pagination_disabled_for_command): New global.
7640         (prompt_for_continue): Allow "c" response to prompt.
7641         (reinitialize_more_filter): Clear
7642         pagination_disabled_for_command.
7643         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7644
7645 2018-06-04  Tom Tromey  <tom@tromey.com>
7646
7647         * ada-lang.h (ada_lookup_symbol_list): Update.
7648         * ada-lang.c (resolve_subexp): Update.
7649         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7650         parameter.
7651         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7652         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7653         results parameter to std::vector.
7654         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7655         Update.
7656         * ada-exp.y (block_lookup): Update.
7657         (select_possible_type_sym): Change type of syms.  Remove nsyms
7658         parameter.
7659         (write_var_or_type, write_name_assoc): Update.
7660
7661 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7662
7663         * windows-nat.c (windows_nat_target::xfer_partial): Return
7664         TARGET_XFER_E_IO if we need to delegate to the target beneath
7665         but BENEATH is NULL.
7666
7667 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7668
7669         * Makefile.in (config.status): Add configure.nat as a
7670         dependency.
7671
7672 2018-06-04  Tom Tromey  <tom@tromey.com>
7673
7674         * cp-name-parser.y (cpname_state): Add method declarations.
7675         (HANDLE_QUAL): Update.
7676         (cpname_state::d_grab, cpname_state::fill_comp)
7677         (cpname_state::make_operator, cpname_state::make_dtor)
7678         (cpname_state::make_builtin_type, cpname_state::make_name)
7679         (cpname_state::d_qualify, cpname_state::d_int_type)
7680         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7681         (%union): Move earlier.
7682
7683 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7684
7685         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7686
7687 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7688
7689         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7690         (aarch64_pseudo_write_1): Likewise.
7691         (aarch64_pseudo_read_value): Use helper.
7692         (aarch64_pseudo_write): Likewise.
7693
7694 2018-06-04  Pedro Alves  <palves@redhat.com>
7695
7696         * darwin-nat.c (darwin_ops): Delete.
7697         (darwin_attach_pid): Use get_native_target.
7698
7699 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7700
7701         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7702         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7703
7704 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7705
7706         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7707         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7708         (aarch64_gdbarch_init): Check for SVE.
7709         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7710
7711 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7712
7713         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7714         * aarch64-tdep.h (aarch64_read_description): Likewise.
7715         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7716         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7717         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7718         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7719         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7720
7721 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7722
7723         * value.c (value_fetch_lazy_bitfield): New.
7724         (value_fetch_lazy_memory): New.
7725         (value_fetch_lazy_register): New.
7726         (value_fetch_lazy): Factor out to smaller functions.
7727
7728 2018-06-01  Tom Tromey  <tom@tromey.com>
7729
7730         * cp-name-parser.y (backslashable, represented): Now const.
7731
7732 2018-06-01  Tom Tromey  <tom@tromey.com>
7733
7734         * cp-name-parser.y: Include parser-defs.h.
7735         (parser_fprintf): Remove declaration.
7736
7737 2018-06-01  Tom Tromey  <tom@tromey.com>
7738
7739         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7740         %parse-param.
7741         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7742         (global_result): Remove globals.
7743         (struct cpname_state): New.
7744         (yyparse): Don't declare.
7745         (yylex, yyerror): Move declarations after %union.
7746         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7747         (make_name): Add state parameter.
7748         Update all callers.
7749         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7750         parameter.
7751         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7752         Update.
7753         (yylex): Add lvalp, state parameters.
7754         (yyerror): Add state parameter.
7755         (cp_demangled_name_to_comp): Update.
7756
7757 2018-06-01  Tom Tromey  <tom@tromey.com>
7758
7759         * cp-name-parser.y (parser_fprintf): Declare.
7760         (GDB_YY_REMAP_PREFIX): Define.
7761         Include yy-remap.h.  Don't redefine yy* identifiers.
7762
7763 2018-06-01  Tom Tromey  <tom@tromey.com>
7764
7765         * python/py-type.c (typy_legacy_template_argument): Update.
7766         * cp-support.h (cp_demangled_name_to_comp): Update.
7767         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7768         parameter to be a "std::string *".
7769         (main): Update.
7770
7771 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7772
7773         * ada-lex.l: Include "diagnostics.h" instead of
7774         "common/diagnostics.h".
7775         * unittests/environ-selftests.c: Likewise.
7776         * common/diagnostics.h: Moved to ../include.
7777
7778 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7779
7780         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7781         to language_mode_manual while calling breakpoint_re_set_one.
7782
7783 2018-06-01  Tom Tromey  <tom@tromey.com>
7784
7785         * valops.c (value_cast_structs, destructor_name_p): Update.
7786         * symtab.c (gdb_mangle_name): Update.
7787         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7788         Update.
7789         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7790         (pascal_object_print_value_fields, pascal_object_print_value):
7791         Update.
7792         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7793         * linespec.c (find_methods): Update.
7794         * gdbtypes.h (type_name_no_tag): Remove.
7795         (type_name_or_error): Rename from type_name_no_tag_or_error.
7796         * gdbtypes.c (type_name_no_tag): Remove.
7797         (type_name_or_error): Rename from type_name_no_tag_or_error.
7798         (lookup_struct_elt_type, check_typedef): Update.
7799         * expprint.c (print_subexp_standard): Update.
7800         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7801         * d-namespace.c (d_lookup_nested_symbol): Update.
7802         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7803         (cp_print_class_member): Update.
7804         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7805         * completer.c (add_struct_fields): Update.
7806         * c-typeprint.c (cp_type_print_derivation_info)
7807         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7808         Update.
7809         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7810         (ada_prefer_type, ada_is_exception_sym): Update.
7811
7812 2018-06-01  Tom Tromey  <tom@tromey.com>
7813
7814         * valops.c (enum_constant_from_type, value_namespace_elt)
7815         (value_maybe_namespace_elt): Update.
7816         * valarith.c (find_size_for_pointer_math): Update.
7817         * target-descriptions.c (make_gdb_type): Update.
7818         * symmisc.c (print_symbol): Update.
7819         * stabsread.c (define_symbol, read_type)
7820         (complain_about_struct_wipeout, add_undefined_type)
7821         (cleanup_undefined_types_1): Update.
7822         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7823         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7824         (rust_internal_print_type, rust_composite_type)
7825         (rust_evaluate_funcall, rust_evaluate_subexp)
7826         (rust_inclusive_range_type_p): Update.
7827         * python/py-type.c (typy_get_tag): Update.
7828         * p-typeprint.c (pascal_type_print_base): Update.
7829         * mdebugread.c (parse_symbol, parse_type): Update.
7830         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7831         Update.
7832         * guile/scm-type.c (gdbscm_type_tag): Update.
7833         * go-lang.c (sixg_string_p): Update.
7834         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7835         Update.
7836         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7837         (TYPE_TAG_NAME): Remove.
7838         * gdbtypes.c (type_name_no_tag): Simplify.
7839         (check_typedef, check_types_equal, recursive_dump_type)
7840         (copy_type_recursive, arch_composite_type): Update.
7841         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7842         in summary mode when needed.
7843         * eval.c (evaluate_funcall): Update.
7844         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7845         (process_structure_scope, read_enumeration_type)
7846         (read_namespace_type, read_module_type, determine_prefix): Update.
7847         * cp-support.c (inspect_type): Update.
7848         * coffread.c (process_coff_symbol, decode_base_type): Update.
7849         * c-varobj.c (c_is_path_expr_parent): Update.
7850         * c-typeprint.c (c_type_print_base_struct_union): Update.
7851         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7852         summary when using C language.
7853         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7854         (gen_maybe_namespace_elt): Update.
7855         * ada-lang.c (ada_type_name): Simplify.
7856         (empty_record, ada_template_to_fixed_record_type_1)
7857         (template_to_static_fixed_type)
7858         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7859
7860 2018-06-01  Tom Tromey  <tom@tromey.com>
7861
7862         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7863         c_print_type.
7864         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7865         (c_print_type): Update.
7866         (c_print_type): New overload.
7867         (c_type_print_varspec_prefix, c_type_print_args)
7868         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7869         (c_type_print_base_struct_union, c_type_print_base_1)
7870         (cp_type_print_method_args): Add "language" parameter.
7871         (c_type_print_base): Update.
7872         * c-lang.h (c_print_type): Add new overload.
7873
7874 2018-06-01  Tom Tromey  <tom@tromey.com>
7875
7876         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7877         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7878
7879 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7880
7881         * aarch64-tdep.c (aarch64_sve_register_names): New const
7882         var.
7883         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7884         (AARCH64_SVE_Z_REGS_NUM): New define.
7885         (AARCH64_SVE_P_REGS_NUM): Likewise.
7886         (AARCH64_SVE_NUM_REGS): Likewise.
7887
7888 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7889
7890         * nat/linux-ptrace.h [__alpha__]
7891         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7892         definitions.
7893
7894 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7895
7896         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7897         the endianness selected.
7898         * NEWS: Document `set endian auto' mode operation update.
7899
7900 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7901
7902         * Makefile.in: Add new header.
7903         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7904         (sve_vl_from_vg): Likewise.
7905         (sve_vq_from_vl): Likewise.
7906         (sve_vl_from_vq): Likewise.
7907         (sve_vq_from_vg): Likewise.
7908         (sve_vg_from_vq): Likewise.
7909         * configure.nat: Add new c file.
7910         * nat/aarch64-sve-linux-ptrace.c: New file.
7911         * nat/aarch64-sve-linux-ptrace.h: New file.
7912
7913 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7914
7915         * aarch64-linux-nat.c (aarch64_linux_read_description):
7916         Add parmeter zero.
7917         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7918         Likewise.
7919         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7920         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7921         (aarch64_gdbarch_init): Add parmeter zero.
7922         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7923         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7924         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7925         parmeter.
7926         * doc/gdb.texinfo: Describe SVE feature
7927         * features/aarch64-sve.c: New file.
7928
7929 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7930
7931         PR gdb/23210
7932         * gdbarch.sh (significant_addr_bit): Default to zero when
7933         not set by target architecture.
7934         * gdbarch.c: Re-generated.
7935         * utils.c (address_significant): Update.
7936
7937 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7938
7939         * stack.c (func_command): Remove trailing newline in call to error.
7940
7941 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7942
7943         * regcache.h (regcache_raw_collect): Remove, update callers to
7944         use regcache::raw_collect.
7945         * regcache.c (regcache_raw_collect): Remove.
7946
7947 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7948
7949         * regcache.h (regcache_raw_supply): Remove, update callers to
7950         use detached_regcache::raw_supply.
7951         * regcache.c (regcache_raw_supply): Remove.
7952
7953 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7954
7955         * regcache.h (regcache_cooked_write_part): Remove, update
7956         callers to use regcache::cooked_write_part.
7957         * regcache.c (regcache_cooked_write_part): Remove.
7958
7959 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7960
7961         * regcache.h (regcache_cooked_read_part): Remove, update callers
7962         to use readable_regcache::cooked_read_part.
7963         * regcache.c (regcache_cooked_read_part): Remove.
7964
7965 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7966
7967         * regcache.h (regcache_cooked_read_value): Remove, update
7968         callers to use readable_regcache::cooked_read_value.
7969         * regcache.c (regcache_cooked_read_value): Remove.
7970
7971 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7972
7973         * regcache.h (regcache_cooked_write): Remove, update callers to
7974         use regcache::cooked_write.
7975         * regcache.c (regcache_cooked_write): Remove.
7976
7977 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7978
7979         * regcache.h (regcache_invalidate): Remove, update callers to
7980         use detached_regcache::invalidate instead.
7981         * regcache.c (regcache_invalidate): Remove.
7982
7983 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7984
7985         * regcache.h (regcache_raw_write_part): Remove, update callers
7986         to use regcache::raw_write_part instead.
7987         * regcache.c (regcache_raw_write_part): Remove.
7988
7989 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7990
7991         * regcache.h (regcache_raw_read_part): Remove, update callers to
7992         use readable_regcache::raw_read_part instead.
7993         * regcache.c (regcache_raw_read_part): Remove.
7994
7995 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7996
7997         * regcache.h (regcache_cooked_read): Remove, update callers to
7998         use readable_regcache::cooked_read instead.
7999         * regcache.c (regcache_cooked_read): Remove.
8000
8001 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8002
8003         * regcache.h (regcache_raw_write): Remove, update callers to use
8004         regcache::raw_write instead.
8005         * regcache.c (regcache_raw_write): Remove.
8006
8007 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8008
8009         * regcache.h (regcache_raw_read): Remove, update callers to use
8010         readable_regcache::raw_read instead.
8011         * regcache.c (regcache_raw_read): Remove.
8012
8013 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8014
8015         * regcache.h (regcache_raw_update): Remove, update callers to
8016         use readable_regcache::raw_update instead.
8017         * regcache.c (regcache_raw_update): Remove.
8018
8019 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8020
8021         * regcache.h (regcache_register_status): Remove, update callers
8022         to use reg_buffer::get_register_status directly instead.
8023         * regcache.c (regcache_register_status): Remove.
8024
8025 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8026
8027         * regcache.h (regcache_get_ptid): Remove, update all callers to
8028         call regcache::ptid instead.
8029         * regcache.c (regcache_get_ptid): Remove.
8030
8031 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8032
8033         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8034
8035 2018-05-30  Pedro Alves  <palves@redhat.com>
8036
8037         * common/common-exceptions.h (exception_rethrow): Use
8038         ATTRIBUTE_NORETURN.
8039
8040 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8041
8042         * breakpoint.c (print_solib_event, check_status_catch_solib):
8043         Remove struct keyword in range-based for loops.
8044         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8045         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8046         Likewise.
8047         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8048         Likewise.
8049         * symfile.c (addr_info_make_relative): Likewise.
8050         * thread.c (value_in_thread_stack_temporaries): Likewise.
8051
8052 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8053
8054         PR gdb/16841
8055         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8056         aggregate type to get its real type before accessing it.
8057
8058 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8059
8060         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8061         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8062         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8063         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8064         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8065         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8066         * printcmd.c (info_address_command): Likewise.
8067
8068 2018-05-29  Tom Tromey  <tom@tromey.com>
8069
8070         * windows-nat.c (handle_exception): Update fall-through comment.
8071
8072 2018-05-29  Tom Tromey  <tom@tromey.com>
8073
8074         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8075         (struct program_space) <added_solibs>: Now a std::vector.
8076         * breakpoint.c (print_solib_event): Update.
8077         (check_status_catch_solib): Update.
8078         * progspace.c (clear_program_space_solib_cache): Update.
8079         * solib.c (update_solib_list): Update.
8080
8081 2018-05-29  Tom Tromey  <tom@tromey.com>
8082
8083         * python/py-type.c (typy_richcompare): Update.
8084         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8085         * gdbtypes.h (types_deeply_equal): Return bool.
8086         (types_equal): Likewise.
8087         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8088         declare VEC.
8089         (check_types_equal): Change worklist to std::vector.  Return
8090         bool.
8091         (struct type_equality_entry): Add constructor.
8092         (compare_maybe_null_strings): Return bool.
8093         (check_types_worklist): Return bool.  Change worklist to
8094         std::vector.
8095         (types_deeply_equal): Use std::vector.
8096         (types_equal): Return bool.
8097         (compare_maybe_null_strings): Simplify.
8098
8099 2018-05-29  Tom Tromey  <tom@tromey.com>
8100
8101         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8102
8103 2018-05-29  Tom Tromey  <tom@tromey.com>
8104
8105         * objc-lang.h: Don't include cp-support.h.
8106         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8107         declare VEC.
8108
8109 2018-05-27  Tom Tromey  <tom@tromey.com>
8110
8111         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8112
8113 2018-05-25  Tom Tromey  <tom@tromey.com>
8114
8115         * value.c (value::location): Initialize.
8116
8117 2018-05-25  Tom Tromey  <tom@tromey.com>
8118
8119         * dbxread.c (init_bincl_list): Remove.
8120         (bincl_list): Now a std::vector.
8121         (bincls_allocated, next_bincl): Remove.
8122         (free_bincl_list, do_free_bincl_list_cleanup)
8123         (make_cleanup_free_bincl_list): Remove.
8124         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8125         unique_xmalloc_ptr.
8126         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8127         (struct header_file_location): Add constructor.
8128         (add_bincl_to_list): Remove.
8129
8130 2018-05-25  Tom Tromey  <tom@tromey.com>
8131
8132         * tui/tui.c (tui_enable): Update.
8133         * mi/mi-interp.c (mi_interp::init): Update.
8134         * interps.h (class interp) <name>: New method.
8135         <m_name>: Rename from name.
8136         (~scoped_restore_interp): Update.
8137         * interps.c (interp::interp): Update.
8138         (interp_add, interp_set, interp_lookup_existing)
8139         (current_interp_named_p): Update.
8140
8141 2018-05-25  Tom Tromey  <tom@tromey.com>
8142
8143         * interps.c (interp_name): Remove.
8144         * mi/mi-interp.c (mi_interp::init): Update.
8145         * interps.h (interp_name): Remove.
8146         (~scoped_restore_interp): Update.
8147         * tui/tui.c (tui_enable): Update.
8148
8149 2018-05-25  Tom Tromey  <tom@tromey.com>
8150
8151         * utils.c (fputs_maybe_filtered): Update.
8152         * linespec.c (decode_line_full): Update.
8153         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8154         (mi_print_breakpoint_for_event, mi_solib_loaded)
8155         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8156         (mi_user_selected_context_changed): Update.
8157         * mi/mi-main.c (mi_execute_command): Update.
8158         * cli/cli-script.c (execute_control_command): Update.
8159         * python/python.c (execute_gdb_command): Update.
8160         * solib.c (info_sharedlibrary_command): Update.
8161         * interps.c (interp_ui_out): Remove.
8162         * interps.h (interp_ui_out): Remove.
8163
8164 2018-05-25  Tom Tromey  <tom@tromey.com>
8165
8166         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8167         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8168         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8169
8170 2018-05-25  Tom Tromey  <tom@tromey.com>
8171
8172         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8173         * interps.c (interp_exec): Use scoped_restore.
8174
8175 2018-05-25  Tom Tromey  <tom@tromey.com>
8176
8177         * remote.c (remote_target::remote_file_get): Use
8178         gdb::byte_vector.
8179         (remote_target::remote_file_put): Likewise.
8180
8181 2018-05-25  Tom Tromey  <tom@tromey.com>
8182
8183         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8184         a std::string.
8185         (get_pe_section_index, add_pe_exported_sym): Update.
8186         (read_pe_exported_syms): Use gdb::def_vector.
8187
8188 2018-05-25  Tom Tromey  <tom@tromey.com>
8189
8190         * frame.c (remove_prev_frame): Remove.
8191         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8192
8193 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8194
8195         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8196         Remove prototypes.
8197         * mips-linux-nat.c (supply_fpregset): Always call
8198         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8199         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8200         `mips_fill_fpregset'.
8201         * mips-linux-tdep.c (mips_supply_fpregset)
8202         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8203         (mips_fill_fpregset_wrapper): Remove functions.
8204         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8205         (mips_linux_fpregset): Remove variable.
8206         (mips_linux_iterate_over_regset_sections): Use
8207         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8208         (mips_linux_o32_sigframe_init): Remove comment.
8209
8210 2018-05-25  Pedro Alves  <palves@redhat.com>
8211
8212         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8213         (struct readahead_cache, struct packet_reg, struct
8214         remote_arch_state, class remote_state): Move higher up in the
8215         file.
8216         (remote_target::m_remote_state): Now an object instead of a pointer.
8217         (remote_target::get_remote_state): Adjust.
8218
8219 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8220
8221         * stack.c (select_and_print_frame): Delete.
8222         (struct function_bounds): Move struct within function.
8223         (func_command): Most content moved into new function
8224         find_frame_for_function, use new function, print result, add
8225         function comment.
8226         (find_frame_for_function): New function, now returns a result.
8227
8228 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8229
8230         * stack.c (iterate_over_block_arg_vars): Fix comment.
8231         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8232
8233 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8234
8235         PR gdb/23203
8236         * frame.c
8237         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8238         Define.
8239         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8240         Define.
8241         * frame.h (class scoped_restore_selected_frame): New class.
8242         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8243         of any exception, use scoped_restore_selected_frame to restore the
8244         frame instead.
8245
8246 2018-05-24  Pedro Alves  <palves@redhat.com>
8247
8248         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8249         override.
8250
8251 2018-05-23  Tom Tromey  <tom@tromey.com>
8252
8253         * complaints.c (struct complaints): Remove.
8254         (symfile_complaint_book): Remove.
8255         (series): New global.
8256         (complaint_internal): Update.
8257         (clear_complaints): Update.
8258
8259 2018-05-23  Tom Tromey  <tom@tromey.com>
8260
8261         * complaints.c (counters): New global.
8262         (struct complain): Remove.
8263         (struct complaints) <root>: Remove.
8264         (complaint_sentinel): Remove.
8265         (symfile_complaint_book): Update.
8266         (find_complaint) Remove.
8267         (complaint_internal, clear_complaints): Update.
8268
8269 2018-05-23  Tom Tromey  <tom@tromey.com>
8270
8271         * complaints.c (struct complain) <file, line>: Remove.
8272         (find_complaint): Remove file, line parameters.
8273         (complaint_internal): Update.
8274
8275 2018-05-23  Tom Tromey  <tom@tromey.com>
8276
8277         * complaints.c (vcomplaint): Remove.
8278         (complaint_internal) Merge in contents of vcomplaint.
8279
8280 2018-05-23  Tom Tromey  <tom@tromey.com>
8281
8282         * complaints.c (struct complaints) <explanation>: Remove.
8283         (symfile_explanations): Remove.
8284         (symfile_complaint_book): Update.
8285         (vcomplaint): Update.
8286         (struct explanation): Remove.
8287
8288 2018-05-23  Tom Tromey  <tom@tromey.com>
8289
8290         * complaints.c (symfile_complaints): Remove.
8291         (complaint_internal): Remove "complaints" parameter.
8292         (clear_complaints, vcomplaint): Remove "c" parameter.
8293         (get_complaints): Remove.
8294         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8295         (dwarf2_debug_line_missing_file_complaint)
8296         (dwarf2_debug_line_missing_end_sequence_complaint)
8297         (dwarf2_complex_location_expr_complaint)
8298         (dwarf2_const_value_length_mismatch_complaint)
8299         (dwarf2_section_buffer_overflow_complaint)
8300         (dwarf2_macro_malformed_definition_complaint)
8301         (dwarf2_invalid_attrib_class_complaint)
8302         (create_addrmap_from_index, dw2_symtab_iter_next)
8303         (dw2_expand_marked_cus)
8304         (dw2_debug_names_iterator::find_vec_in_debug_names)
8305         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8306         (create_debug_type_hash_table, init_cutu_and_read_dies)
8307         (partial_die_parent_scope, add_partial_enumeration)
8308         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8309         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8310         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8311         (create_cus_hash_table, create_dwp_hash_table)
8312         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8313         (dwarf2_rnglists_process, dwarf2_ranges_process)
8314         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8315         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8316         (handle_struct_member_die, process_structure_scope)
8317         (read_array_type, read_common_block, read_module_type)
8318         (read_tag_pointer_type, read_typedef, read_base_type)
8319         (read_subrange_type, load_partial_dies, partial_die_info::read)
8320         (partial_die_info::read, partial_die_info::read)
8321         (partial_die_info::read, read_checked_initial_length_and_offset)
8322         (dwarf2_string_attr, read_formatted_entries)
8323         (dwarf_decode_line_header)
8324         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8325         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8326         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8327         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8328         (get_signatured_type, get_DW_AT_signature_type)
8329         (decode_locdesc, file_file_name, consume_improper_spaces)
8330         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8331         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8332         (dwarf2_symbol_mark_computed, set_die_type)
8333         (read_attribute_value): Update.
8334         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8335         Update.
8336         * dbxread.c (unknown_symtype_complaint)
8337         (lbrac_mismatch_complaint, repeated_header_complaint)
8338         (set_namestring, function_outside_compilation_unit_complaint)
8339         (read_dbx_symtab, process_one_symbol): Update.
8340         * gdbtypes.c (stub_noname_complaint): Update.
8341         * windows-nat.c (handle_unload_dll): Update.
8342         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8343         (decode_base_type): Update.
8344         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8345         (eb_complaint, record_include_begin, record_include_end)
8346         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8347         (process_xcoff_symbol, read_symbol)
8348         (function_outside_compilation_unit_complaint)
8349         (scan_xcoff_symtab): Update.
8350         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8351         * buildsym.c (finish_block_internal, make_blockvector)
8352         (end_symtab_get_static_block, augment_type_symtab): Update.
8353         * dtrace-probe.c (dtrace_process_dof)
8354         (dtrace_static_probe_ops::get_probes): Update.
8355         * complaints.h (struct complaint): Don't declare.
8356         (symfile_complaints): Remove.
8357         (complaint_internal): Remove "complaints" parameter.
8358         (complaint): Likewise.
8359         (clear_complaints): Likewise.
8360         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8361         (reread_symbols): Update.
8362         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8363         (dwarf2_frame_cache, decode_frame_entry): Update.
8364         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8365         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8366         (info_selectors_command): Update.
8367         * macrotab.c (macro_include, check_for_redefinition)
8368         (macro_undef): Update.
8369         * objfiles.c (filter_overlapping_sections): Update.
8370         * stabsread.c (invalid_cpp_abbrev_complaint)
8371         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8372         (define_symbol, error_type, read_type, rs6000_builtin_type)
8373         (stabs_method_name_from_physname, read_member_functions)
8374         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8375         (attach_fields_to_type, complain_about_struct_wipeout)
8376         (read_range_type, read_args, common_block_start)
8377         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8378         Update.
8379         * mdebugread.c (index_complaint, unknown_ext_complaint)
8380         (basic_type_complaint, bad_tag_guess_complaint)
8381         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8382         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8383         (parse_procedure, parse_lines)
8384         (function_outside_compilation_unit_complaint)
8385         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8386         (bad_tag_guess_complaint, reg_value_complaint): Update.
8387         * cp-support.c (demangled_name_complaint): Update.
8388         * macroscope.c (sal_macro_scope): Update.
8389         * dwarf-index-write.c (class debug_names): Update.
8390
8391 2018-05-23  Tom Tromey  <tom@tromey.com>
8392
8393         * complaints.c (clear_complaints): Remove "noisy" parameter.
8394         * complaints.h (clear_complaints): Update.
8395         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8396         (reread_symbols): Update.
8397
8398 2018-05-23  Tom Tromey  <tom@tromey.com>
8399
8400         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8401         SUBSEQUENT_MESSAGE.
8402         (vcomplaint, clear_complaints): Update.
8403         (symfile_explanations): Remove some messages.
8404
8405 2018-05-23  Tom Tromey  <tom@tromey.com>
8406
8407         * complaints.c (internal_complaint): Remove.
8408         * complaints.h (internal_complaint): Remove.
8409
8410 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8411
8412         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8413
8414 2018-05-22  Pedro Alves  <palves@redhat.com>
8415
8416         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8417         (remote_fileio_badfd, remote_fileio_return_errno)
8418         (remote_fileio_return_success, remote_fileio_func_open)
8419         (remote_fileio_func_open, remote_fileio_func_close)
8420         (remote_fileio_func_read, remote_fileio_func_write)
8421         (remote_fileio_func_lseek, remote_fileio_func_rename)
8422         (remote_fileio_func_unlink, remote_fileio_func_stat)
8423         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8424         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8425         remote_target parameter.
8426         (remote_fio_func_map) <func>: Add remote_target parameter.
8427         (do_remote_fileio_request, remote_fileio_request):
8428         * remote-fileio.h (remote_fileio_request):
8429         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8430         remote_target parameter.
8431         (remote_notif_process, handle_notification): Adjust to pass down
8432         the remote.
8433         (remote_notif_state_allocate): Add remote_target parameter.  Save
8434         it.
8435         * remote-notif.h (struct remote_target): Forward declare.
8436         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8437         remote_target parameter.
8438         (struct remote_notif_state) <remote>: New field.
8439         (remote_notif_ack, remote_notif_parse): Add remote_target
8440         parameter.
8441         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8442         remote_target parameter.
8443         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8444         (threads_listing_context, rmt_thread_action, protocol_feature)
8445         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8446         (packet_result, struct threads_listing_context, remote_state):
8447         Move definitions and declarations higher up.
8448         (remote_target) <~remote_target>: Declare.
8449         (remote_download_command_source, remote_file_put, remote_file_get)
8450         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8451         (remote_hostio_pread_vFile, remote_hostio_send_command)
8452         (remote_hostio_set_filesystem, remote_hostio_open)
8453         (remote_hostio_close, remote_hostio_unlink, remote_state)
8454         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8455         (get_memory_write_packet_size, get_memory_read_packet_size)
8456         (append_pending_thread_resumptions, remote_detach_1)
8457         (append_resumption, remote_resume_with_vcont)
8458         (add_current_inferior_and_thread, wait_ns, wait_as)
8459         (process_stop_reply, remote_notice_new_inferior)
8460         (process_initial_stop_replies, remote_add_thread)
8461         (btrace_sync_conf, remote_btrace_maybe_reopen)
8462         (remove_new_fork_children, kill_new_fork_children)
8463         (discard_pending_stop_replies, stop_reply_queue_length)
8464         (check_pending_events_prevent_wildcard_vcont)
8465         (discard_pending_stop_replies_in_queue, stop_reply)
8466         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8467         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8468         (remote_interrupt_as, remote_interrupt_ns)
8469         (remote_get_noisy_reply, remote_query_attached)
8470         (remote_add_inferior, remote_current_thread, get_current_thread)
8471         (set_thread, set_general_thread, set_continue_thread)
8472         (set_general_process, write_ptid)
8473         (remote_unpack_thread_info_response, remote_get_threadinfo)
8474         (parse_threadlist_response, remote_get_threadlist)
8475         (remote_threadlist_iterator, remote_get_threads_with_ql)
8476         (remote_get_threads_with_qxfer)
8477         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8478         (get_offsets, remote_check_symbols, remote_supported_packet)
8479         (remote_query_supported, remote_packet_size)
8480         (remote_serial_quit_handler, remote_detach_pid)
8481         (remote_vcont_probe, remote_resume_with_hc)
8482         (send_interrupt_sequence, interrupt_query)
8483         (remote_notif_get_pending_events, fetch_register_using_p)
8484         (send_g_packet, process_g_packet, fetch_registers_using_g)
8485         (store_register_using_P, store_registers_using_G)
8486         (set_remote_traceframe, check_binary_download)
8487         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8488         (remote_xfer_live_readonly_partial, remote_read_bytes)
8489         (remote_send_printf, remote_flash_write, readchar)
8490         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8491         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8492         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8493         (extended_remote_disable_randomization, extended_remote_run)
8494         (send_environment_packet, extended_remote_environment_support)
8495         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8496         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8497         (packet_command): Now methods of ...
8498         (remote_target): ... this class.
8499         (m_remote_state) <remote_target>: New field.
8500         (struct remote_state) <stop_reply_queue,
8501         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8502         fields.
8503         (remote_state::remote_state): Allocate stop_reply_queue.
8504         (remote_state): Delete global.
8505         (get_remote_state_raw): Delete.
8506         (remote_target::get_remote_state): Allocate m_remote_state on
8507         demand.
8508         (get_current_remote_target): New.
8509         (remote_ops, extended_remote_ops): Delete.
8510         (wait_forever_enabled_p, remote_async_inferior_event_token):
8511         Delete, moved to struct remote_state.
8512         (remote_target::close): Delete self.  Destruction bits split to
8513         ...
8514         (remote_target::~remote_target): ... this.
8515         (show_memory_packet_size): Adjust to use
8516         get_current_remote_target.
8517         (struct protocol_feature) <func>: Add remote_target parameter.
8518         All callers adjusted.
8519         (curr_quit_handler_target): New.
8520         (remote_serial_quit_handler): Reimplement.
8521         (remote_target::open_1): Adjust to use get_current_remote_target.
8522         Heap-allocate remote_target/extended_remote_target instances.
8523         (vcont_builder::vcont_builder): Add remote_target parameter, and
8524         save it in m_remote.  All callers adjusted.
8525         (vcont_builder::m_remote): New field.
8526         (vcont_builder::restart, vcont_builder::flush)
8527         (vcont_builder::push_action): Use it.
8528         (remote_target::commit_resume): Use it.
8529         (struct queue_iter_param) <remote>: New field.
8530         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8531         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8532         (check_pending_event_prevents_wildcard_vcont_callback)
8533         (remote_target::check_pending_events_prevent_wildcard_vcont)
8534         (remote_target::discard_pending_stop_replies)
8535         (remote_target::discard_pending_stop_replies_in_queue)
8536         (remote_target::remote_notif_remove_queued_reply): Fill in
8537         'remote' field.
8538         (remote_notif_get_pending_events): New.
8539         (remote_target::readchar, remote_target::remote_serial_write):
8540         Save/restore curr_quit_handler_target.
8541         (putpkt): New.
8542         (kill_new_fork_children): Fill in 'remote' field.
8543         (packet_command): Use get_current_remote_target, defer to
8544         remote_target method of same name.
8545         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8546         parameter, and save it in m_remote.  All callers adjusted.
8547         (scoped_remote_fd::release): Use m_remote.
8548         (scoped_remote_fd::m_remote): New field.
8549         (remote_file_put, remote_file_get, remote_file_delete): Use
8550         get_current_remote_target, defer to remote_target method of same
8551         name.
8552         (remote_btrace_reset): Add remote_state paremeter.  Update all
8553         callers.
8554         (remote_async_inferior_event_handler). Pass down 'data'.
8555         (remote_new_objfile): Use get_current_remote_target.
8556         (remote_target::vcont_r_supported): New.
8557         (set_range_stepping): Use get_current_remote_target and
8558         remote_target::vcont_r_supported.
8559         (_initialize_remote): Don't allocate 'remote_state' and
8560         'stop_reply_queue' globals.
8561         * remote.h (struct remote_target): Forward declare.
8562         (getpkt, putpkt, remote_notif_get_pending_events): Add
8563         'remote_target' parameter.
8564
8565 2018-05-22  Pedro Alves  <palves@redhat.com>
8566
8567         * remote.c (vcont_builder): Now a class.  Make all data members
8568         private.
8569         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8570         Declare methods.
8571         (vcont_builder_restart): Rename to ...
8572         (vcont_builder::restart): ... this.
8573         (vcont_builder_flush): Rename to ...
8574         (vcont_builder::flush): ... this.
8575         (vcont_builder_push_action): Rename to ...
8576         (vcont_builder::push_action): ... this.
8577         (remote_target::commit_resume): Adjust.
8578
8579 2018-05-22  Pedro Alves  <palves@redhat.com>
8580
8581         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8582         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8583         (get_fixed_memory_packet_size): New.
8584         (get_memory_packet_size): Use it.
8585         (set_memory_packet_size): Don't override the config size with
8586         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8587         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8588         Don't refer to get_memory_packet_size if not connected to a remote
8589         target.  Show "(default)" if configured size is 0.
8590
8591 2018-05-22  Pedro Alves  <palves@redhat.com>
8592
8593         * remote.c (remote_target::mourn_inferior): Move
8594         discard_pending_stop_replies call here from ...
8595         (_initialize_remote): ... here.
8596
8597 2018-05-22  Pedro Alves  <palves@redhat.com>
8598
8599         * remote.c (compare_section_command): Remove set_general_process
8600         call.
8601
8602 2018-05-22  Pedro Alves  <palves@redhat.com>
8603
8604         * remote.c (struct packet_reg, struct remote_arch_state):
8605         Move higher up in the file.
8606         (remote_state) <m_arch_states>: Store remote_arch_state values
8607         instead of remote_arch_state pointers.
8608         (remote_state::get_remote_arch_state): Adjust.
8609
8610 2018-05-22  Pedro Alves  <palves@redhat.com>
8611
8612         * remote.c: Include <unordered_map>.
8613         (remote_state): Now a class.
8614         (remote_state) <get_remote_arch_state>: Declare method.
8615         <get_remote_arch_state>: New field.
8616         (remote_arch_state) <remote_arch_state>: Declare ctor.
8617         <regs>: Now a unique_ptr.
8618         (remote_gdbarch_data_handle): Delete.
8619         (get_remote_arch_state): Delete.
8620         (remote_state::get_remote_arch_state): New.
8621         (get_remote_state): Adjust to call remote_state's
8622         get_remote_arch_state method.
8623         (init_remote_state): Delete, bits factored out to ...
8624         (remote_arch_state::remote_arch_state): ... this new method.
8625         (get_remote_packet_size, get_memory_packet_size)
8626         (process_g_packet, remote_target::fetch_registers)
8627         (remote_target::prepare_to_store, store_registers_using_G)
8628         (remote_target::store_registers, remote_target::get_trace_status):
8629         Adjust to call remote_state's method.
8630         (_initialize_remote): Remove reference to
8631         remote_gdbarch_data_handle.
8632
8633 2018-05-22  Pedro Alves  <palves@redhat.com>
8634
8635         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8636         pread>: New method declarations.
8637         (remote_target::open_1): Adjust.
8638         (readahead_cache_invalidate): Rename to ...
8639         (readahead_cache::invalidate): ... this, and adjust to be a class
8640         method.
8641         (readahead_cache_invalidate_fd): Rename to ...
8642         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8643         class method.
8644         (remote_hostio_pwrite): Adjust.
8645         (remote_hostio_pread_from_cache): Rename to ...
8646         (readahead_cache::pread): ... this, and adjust to be a class
8647         method.
8648         (remote_hostio_close): Adjust.
8649
8650 2018-05-22  Pedro Alves  <palves@redhat.com>
8651
8652         * remote.c (remote_hostio_close_cleanup): Delete.
8653         (class scoped_remote_fd): New.
8654         (remote_file_put, remote_file_get): Use it.
8655
8656 2018-05-22  Pedro Alves  <palves@redhat.com>
8657
8658         (struct vCont_action_support): Use bool and initialize all fields.
8659         (struct readahead_cache): Initialize all fields.
8660         (remote_state): Use bool and initialize all fields.
8661         (remote_state::remote_state, remote_state::~remote_state): New.
8662         (new_remote_state): Delete.
8663         (_initialize_remote): Use new to allocate remote_state.
8664
8665 2018-05-22  Pedro Alves  <palves@redhat.com>
8666             張俊芝  <zjz@zjz.name>
8667
8668         PR gdb/22973
8669         * c-exp.y: Include "c-support.h".
8670         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8671         of tolower.  Use c_ident_is_alpha to scan names.
8672         * c-lang.c: Include "c-support.h".
8673         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8674         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8675         * c-support.h: New file, with bits factored out from ...
8676         * cp-name-parser.y: ... this file.
8677         Include "c-support.h".
8678         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8679         c-support.h and renamed.
8680         (symbol_end, yylex): Adjust.
8681
8682 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8683
8684         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8685         parameter type to CORE_ADDR.
8686         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8687         parameter type in declaration to CORE_ADDR.
8688         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8689         target_auxv_search to get AT_HWCAP and use the result to get the
8690         target description.
8691         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8692         to CORE_ADDR. Remove the cast of the return value to unsigned
8693         long. Fix error predicate of target_auxv_search.
8694         (ppc_linux_nat_target::read_description): Change the type of the
8695         hwcap variable to CORE_ADDR.
8696
8697 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8698
8699         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8700         if the size of fpscr is larger than 32 bits.
8701
8702 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8703
8704         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8705         (ppc32_linux_vsxregmap): New global.
8706         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8707         regcache_supply_regset, and regcache_collect_regset.
8708         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8709         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8710         (fetch_vsx_register, store_vsx_register): Remove.
8711         (fetch_vsx_registers): Add regno parameter. Get regset using
8712         ppc_linux_vsxregset. Use regset to supply registers.
8713         (store_vsx_registers): Add regno parameter. Get regset using
8714         ppc_linux_vsxregset. Use regset to collect registers.
8715         (fetch_register): Call fetch_vsx_registers instead of
8716         fetch_vsx_register.
8717         (store_register): Call store_vsx_registers instead of
8718         store_vsx_register.
8719         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8720         new regno parameter.
8721         (store_ppc_registers): Call store_vsx_registers with -1 for the
8722         new regno parameter.
8723         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8724         (ppc_collect_vsxregset): Remove.
8725
8726 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8727
8728         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8729         offset fields.
8730         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8731         for vector register offset fields.
8732         (ppc64_fbsd_reg_offsets): Likewise.
8733         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8734         to vector register offset fields.
8735         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8736         to vector register offset fields.
8737         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8738         vector register offset fields.
8739         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8740         initializers for vector register offset fields.
8741         (rs6000_aix64_reg_offsets): Likewise.
8742         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8743         (ppc_supply_vrregset): Remove.
8744         (ppc_collect_vrregset): Remove.
8745         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8746         (ppc_linux_vrregset) : New function.
8747         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8748         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8749         (ppc32_linux_vrregset): Remove.
8750         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8751         and use result instead of ppc32_linux_vrregset.
8752         (ppc32_linux_reg_offsets): Remove initializers for vector register
8753         offset fields.
8754         (ppc64_linux_reg_offsets): Likewise.
8755         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8756         * ppc-linux-nat.c: Include regset.h.
8757         (gdb_vrregset_t): Adjust comment to account for little-endian
8758         mode.
8759         (supply_vrregset, fill_vrregset): Remove.
8760         (fetch_altivec_register, store_altivec_register): Remove.
8761         (fetch_altivec_registers): Add regno parameter. Get regset using
8762         ppc_linux_vrregset. Use regset to supply registers.
8763         (store_altivec_registers): Add regno parameter. Get regset using
8764         ppc_linux_vrregset. Use regset to collect registers.
8765         (fetch_register): Call fetch_altivec_registers instead of
8766         fetch_altivec_register.
8767         (store_register): Call store_altivec_registers instead of
8768         store_altivec_register.
8769         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8770         the new regno parameter.
8771         (store_ppc_registers): Call store_altivec_registers with -1 for
8772         the new regno parameter.
8773
8774 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8775
8776         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8777         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8778         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8779         (gdb_vrregset_t): Change array type size to
8780         PPC_LINUX_SIZEOF_VRREGSET.
8781         (gdb_vsxregset_t): Change array type size to
8782         PPC_LINUX_SIZEOF_VSXREGSET.
8783         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8784         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8785         PPC_LINUX_SIZEOF_VSXREGSET.
8786
8787 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8788
8789         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8790         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8791         nat/ppc-linux.c.
8792         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8793         ppc_linux_target_wordsize with tid.
8794         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8795         wordsize with tid.
8796         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8797         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8798         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8799         tid parameter. Remove static specifier.
8800         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8801         (ppc_linux_target_wordsize): New declaration.
8802
8803 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8804
8805         * arch/ppc-linux-common.c: New file.
8806         * arch/ppc-linux-common.h: New file.
8807         * arch/ppc-linux-tdesc.h: New file.
8808         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8809         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8810         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8811         arch/ppc-linux-tdesc.h.
8812         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8813         arch/ppc-linux-tdesc.h.
8814         (ppc_linux_nat_target::read_description): Remove target
8815         description matching code. Fill a ppc_linux_features struct and
8816         call ppc_linux_match_description with it. Move comment about ISA
8817         2.05 to ppc-linux-common.c.
8818         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8819         arch/ppc-linux-tdesc.h.
8820         (ppc_linux_core_read_description): Remove target description
8821         matching code. Fill a ppc_linux_features struct and call
8822         ppc_linux_match_description with it.
8823         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8824         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8825         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8826         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8827         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8828         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8829         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8830         (tdesc_powerpc_e500l): Remove.
8831
8832 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8833
8834         * ada-lang.c (catch_assert_command): Pass empty string instead
8835         of NULL for excep_string argument.
8836
8837 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8838
8839         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8840         the width of the requested register exceeds the width of the
8841         `ptrace' data type.
8842
8843 2018-05-21  Tom Tromey  <tom@tromey.com>
8844
8845         * printcmd.c (output_command): Remove.
8846         (output_command_const): Rename to output_command.
8847         * valprint.h (output_command): Rename from output_command_const.
8848         * tracepoint.c (trace_dump_actions): Call output_command.
8849
8850 2018-05-21  Tom Tromey  <tom@tromey.com>
8851
8852         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8853         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8854         * ada-lang.h (create_ada_exception_catchpoint): Update.
8855         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8856         std::string.
8857         (create_excep_cond_exprs, ~ada_catchpoint)
8858         (should_stop_exception, print_one_exception)
8859         (print_mention_exception, print_recreate_exception): Update.
8860         (ada_get_next_arg): Remove.
8861         (catch_ada_exception_command_split): Use std::string.  Change type
8862         of "excep_string", "cond_string".
8863         (catch_ada_exception_command): Update.
8864         (create_ada_exception_catchpoint): Change type of excep_string.
8865         (ada_exception_sal): Remove excep_string parameter.
8866         (~ada_catchpoint): Remove.
8867
8868 2018-05-21  Tom Tromey  <tom@tromey.com>
8869
8870         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8871         cleanup.
8872
8873 2018-05-21  Tom Tromey  <tom@tromey.com>
8874
8875         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8876         Return unique_xmalloc_ptr.
8877         (print_it_exception): Update.
8878
8879 2018-05-21  Tom Tromey  <tom@tromey.com>
8880
8881         * tracepoint.c (trace_dump_actions): Use std::string.
8882
8883 2018-05-21  Tom Tromey  <tom@tromey.com>
8884
8885         * symfile.c (reread_symbols): Use std::string for original_name.
8886
8887 2018-05-21  Tom Tromey  <tom@tromey.com>
8888
8889         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8890         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8891         constructor.
8892
8893 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8894
8895         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8896         instance to...
8897         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8898         * objfiles.c (get_objfile_bfd_data): Allocate
8899         objfile_per_bfd_storage with obstack_new when allocating on
8900         obstack.
8901
8902 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8903
8904         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8905         OBSTACK_ZALLOC.
8906         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8907         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8908         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8909         (add_pending): Likewise.
8910         (parse_symbol): Likewise.
8911         (parse_partial_symbols): Likewise.
8912         (psymtab_to_symtab_1): Likewise.
8913         (new_psymtab): Likewise.
8914         (elfmdebug_build_psymtabs): Likewise.
8915         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8916         * objfiles.c (get_objfile_bfd_data): Likewise.
8917         (objfile_register_static_link): Likewise.
8918         * psymtab.c (allocate_psymtab): Likewise.
8919         * stabsread.c (read_member_functions): Likewise.
8920         * xcoffread.c (xcoff_end_psymtab): Likewise.
8921
8922 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8923
8924         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8925         compiler supports std::is_trivially_constructible.
8926         * common/poison.h: Include obstack.h.
8927         (IsMallocable): Define to is_trivially_constructible if the
8928         compiler supports it, define to true_type otherwise.
8929         (xobnew): New.
8930         (XOBNEW): Redefine.
8931         (xobnewvec): New.
8932         (XOBNEWVEC): Redefine.
8933         * gdb_obstack.h (obstack_zalloc): New.
8934         (OBSTACK_ZALLOC): Redefine.
8935         (obstack_calloc): New.
8936         (OBSTACK_CALLOC): Redefine.
8937         (obstack_new): New.
8938         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8939         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8940         gdbarch.c.
8941         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8942         obstack_calloc/obstack_zalloc.
8943         (gdbarch_obstack_zalloc): Remove.
8944         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8945
8946 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8947
8948         * stack.c (backtrace_command_1): Remove useless variable int i.
8949
8950 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8951
8952         * stack.c (print_frame_info): Fix comment.
8953
8954 2018-05-18  Tom Tromey  <tom@tromey.com>
8955
8956         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8957         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8958         (~dwarf2_per_objfile): Update
8959         (dwarf2_get_dwz_file): Use new.
8960         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8961         unique_ptr.
8962
8963 2018-05-18  Tom Tromey  <tom@tromey.com>
8964
8965         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8966         unique_ptr.
8967         * dwarf2read.c (struct dwp_file): Add constructor and
8968         initializers.
8969         (open_and_init_dwp_file): Return a unique_ptr.
8970         (dwarf2_per_objfile, create_dwp_hash_table)
8971         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8972         (lookup_dwo_unit_in_dwp): Update.
8973         (open_and_init_dwp_file, get_dwp_file): Update.
8974
8975 2018-05-18  Tom Tromey  <tom@tromey.com>
8976
8977         * dwarf2read.c (dwarf2_per_objfile): Update.
8978         (struct mapped_index): Add initializers.
8979         (dwarf2_read_index): Use new.
8980         (dw2_symtab_iter_init): Update.
8981         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8982         unique_ptr.
8983
8984 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8985
8986         * dwarf2read.c (mapped_index) <total_size>: Remove.
8987
8988 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8989
8990         * unittests/format_pieces-selftests.c (test_format_specifier):
8991         Add ARI comments.
8992
8993 2018-05-18  Tom Tromey  <tom@tromey.com>
8994
8995         * c-typeprint.c (maybe_print_hole): New function.
8996         (c_print_type_struct_field_offset): Update.
8997         (c_type_print_base_struct_union): Call maybe_print_hole.
8998
8999 2018-05-17  Keith Seitz  <keiths@redhat.com>
9000
9001         * breakpoint.c (build_bpstat_chain): New function, moved from
9002         bpstat_stop_status.
9003         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9004         If no stop chain is passed, call build_bpstat_chain to build it.
9005         * breakpoint.h (build_bpstat_chain): Declare.
9006         (bpstat_stop_status): Move documentation here from breakpoint.c.
9007         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9008         build the stop chain and pass it to skip_inline_frames.
9009         Pass this stop chain to bpstat_stop_status.
9010         * inline-frame.c: Include breakpoint.h.
9011         (stopped_by_user_bp_inline_frame): New function.
9012         (skip_inline_frames): Add parameter `stop_chain'.
9013         Move documention to inline-frame.h.
9014         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9015         whether the frame should be elided.
9016         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9017         Add moved documentation and update for new parameter.
9018
9019 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9020
9021         PR cli/14975
9022         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9023         unittests/format_pieces-selftests.c.
9024         * common/format.h (format_piece) <operator==>: New.
9025         (format_pieces) <operator[]>: Remove.
9026         * common/format.c (format_pieces::format_pieces): Handle \e.
9027         * unittests/format_pieces-selftests.c: New.
9028
9029 2018-05-17  Tom Tromey  <tom@tromey.com>
9030
9031         PR symtab/23010:
9032         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9033         (dw2_instantiate_symtab): Add skip_partial parameter.
9034         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9035         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9036         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9037         (dw2_expand_symtabs_matching_one)
9038         (dw2_find_pc_sect_compunit_symtab)
9039         (dw2_debug_names_lookup_symbol)
9040         (dw2_debug_names_expand_symtabs_for_function): Update.
9041         (init_cutu_and_read_dies): Add skip_partial parameter.
9042         (process_psymtab_comp_unit, build_type_psymtabs_1)
9043         (process_skeletonless_type_unit, load_partial_comp_unit)
9044         (psymtab_to_symtab_1): Update.
9045         (load_full_comp_unit): Add skip_partial parameter.
9046         (process_imported_unit_die, dwarf2_read_addr_index)
9047         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9048         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9049         (read_signatured_type): Update.
9050
9051 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9052
9053         * value.c (release_value): Remove unused variable.
9054         (record_latest_value): Likewise.
9055         (access_value_history): Likewise.
9056         (preserve_values): Likewise.
9057
9058 2018-05-17  Tom Tromey  <tom@tromey.com>
9059
9060         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9061         Initialize.
9062
9063 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9064
9065         PR gdb/22286
9066         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9067         Also handle registers whose width is not a multiple of
9068         PTRACE_TYPE_RET.
9069         (linux_nat_trad_target::store_register): Likewise.
9070
9071 2018-05-16  Tom Tromey  <tom@tromey.com>
9072
9073         * gdbcore.h (core_bfd): Redefine.
9074         * corelow.c (core_target::close): Update.
9075         (core_target_open): Update.
9076         * progspace.h (struct program_space) <cbfd>: Now a
9077         gdb_bfd_ref_ptr.
9078
9079 2018-05-16  Tom Tromey  <tom@tromey.com>
9080
9081         PR cli/19551:
9082         * symfile-add-flags.h (enum symfile_add_flags)
9083         <SYMFILE_NOT_FILENAME>: New constant.
9084         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9085         objfile name from BFD.
9086         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9087         * minidebug.c (find_separate_debug_file_in_section): Put
9088         ".gnu_debugdata" into BFD's file name.
9089
9090 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9091
9092         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9093         Remove.
9094
9095 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9096
9097         PR binutils/21446
9098         * aarch64-tdep.c (aarch64_analyze_prologue,
9099         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9100         Indicate not interested in errors.
9101
9102 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9103
9104         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9105         Supply the MIPS_ZERO_REGNUM register.
9106
9107 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9108
9109         * mips-tdep.c (mask_address_var): Make variable static.
9110
9111 2018-05-14  Tom Tromey  <tom@tromey.com>
9112
9113         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9114
9115 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9116
9117         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9118         FXSAVE_ADDR for the mxcsr register.
9119
9120 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9121
9122         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9123
9124 2018-05-11  Pedro Alves  <palves@redhat.com>
9125
9126         * corelow.c (core_target) <core_target>: No longer inline.
9127         Initialize m_core_gdbarch, m_core_vec and build the section table
9128         here.
9129         <~core_target>: New.
9130         <core_gdbarch, get_core_register_section>: New methods.
9131         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9132         factored out from ...
9133         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9134         (core_ops): Delete.
9135         (sniff_core_bfd): Add gdbarch parameter.
9136         (core_close): Delete, merged into ...
9137         (core_target::close): ... here.  Delete self.
9138         (core_close_cleanup): Delete.
9139         (core_target_open): Allocate a core_target on the heap.  Use a
9140         unique_ptr instead of a cleanup.  Bits moved into the core_target
9141         ctor.  Adjust to use core_target methods instead of globals.
9142         (get_core_register_section): Rename to ...
9143         (core_target::get_core_register_section): ... this and adjust.
9144         (struct get_core_registers_cb_data): New.
9145         (get_core_registers_cb): Use it.  Use bool.
9146         (core_target::fetch_registers, core_target::files_info)
9147         (core_target::xfer_partial, core_target::read_description)
9148         (core_target::pid_to, core_target::thread_name): Adjust to
9149         reference class fields instead of globals.
9150         * target.h (struct target_ops_deleter, target_ops_up): New.
9151
9152 2018-05-11  Pedro Alves  <palves@redhat.com>
9153
9154         * corefile.c (core_file_command): Move to corelow.c.
9155         * corelow.c (the_core_target): Delete.
9156         (core_file_command): Moved from corefile.c.  Check exec_bfd
9157         instead of the_core_target.  Use target_detach instead of calling
9158         into the_core_target directly.
9159         (maybe_say_no_core_file_now): New.
9160         (core_target::detach): Use it.
9161         (_initialize_corelow): Remove references to the_core_target.
9162         * gdbcore.h (the_core_target): Delete.
9163
9164 2018-05-11  Tom Tromey  <tromey@redhat.com>
9165             Pedro Alves  <palves@redhat.com>
9166
9167         * corefile.c (core_bfd): Remove.
9168         * gdbcore.h (core_bfd): Now a macro.
9169         * progspace.h (struct program_space) <cbfd>: New field.
9170
9171 2018-05-11  Tom Tromey  <tom@tromey.com>
9172
9173         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9174         gdb::def_vector.
9175
9176 2018-05-10  Tom Tromey  <tom@tromey.com>
9177
9178         * configure: Rebuild.
9179         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9180
9181 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9182
9183         PR server/23158:
9184         * regformats/regdat.sh: Adjust script, following the addition
9185         of the new expedite_regs parameter to init_target_desc.
9186
9187 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9188     
9189         PR gdb/23127
9190         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9191         set_gdbarch_significant_addr_bit.
9192         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9193         set_gdbarch_significant_addr_bit.
9194         * utils.c (address_significant): Update to sign extend addr.
9195
9196 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9197
9198         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9199         (xtensa_linux_init_abi): Limit tdep->num_regs by
9200         tdep->num_nopriv_regs.
9201         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9202         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9203         not initialized.
9204
9205 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9206
9207         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9208
9209 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9210
9211         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9212         (I387_MXCSR_INIT_VAL): New constant.
9213         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9214         buffer if it was supplied by the inferior.
9215         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9216         (i387_xsave_get_clear_bv): New function.
9217         (i387_supply_xsave): Only read x87 control registers from the
9218         xsave buffer if the feature is enabled, and the state will have
9219         been written, otherwise, provide a suitable default.
9220         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9221         including x87 control registers.  Update control registers if they
9222         have changed from the default value, and mark features as enabled
9223         as required.
9224         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9225
9226 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9227
9228         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9229
9230 2018-05-07  Tom Tromey  <tom@tromey.com>
9231
9232         * configure: Rebuild.
9233         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9234
9235 2018-05-07  Tom Tromey  <tom@tromey.com>
9236
9237         PR tdep/20362:
9238         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9239         bit.  Use correct value for VDIV.
9240
9241 2018-05-04  Tom Tromey  <tom@tromey.com>
9242
9243         * configure: Rebuild.
9244         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9245
9246 2018-05-04  Tom Tromey  <tom@tromey.com>
9247
9248         * linux-record.c (record_linux_system_call) <case
9249         RECORD_SYS_RECVFROM>: Add "break".
9250
9251 2018-05-04  Tom Tromey  <tom@tromey.com>
9252
9253         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9254         Add missing "break".
9255         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9256         Add missing "break".
9257
9258 2018-05-04  Tom Tromey  <tom@tromey.com>
9259
9260         * rs6000-tdep.c (ppc_process_record_op4)
9261         (ppc_process_record_op63): Add fall-through comment.
9262
9263 2018-05-04  Tom Tromey  <tom@tromey.com>
9264
9265         * i386-tdep.c (i386_process_record): Add fall-through comment.
9266
9267 2018-05-04  Tom Tromey  <tom@tromey.com>
9268
9269         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9270         comment.
9271
9272 2018-05-04  Tom Tromey  <tom@tromey.com>
9273
9274         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9275         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9276         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9277         comment.
9278         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9279         comment.
9280         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9281         comment.
9282
9283 2018-05-04  Tom Tromey  <tom@tromey.com>
9284
9285         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9286
9287 2018-05-04  Tom Tromey  <tom@tromey.com>
9288
9289         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9290         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9291         * symfile.c (section_is_mapped): Fix fall-through comment.
9292         * stabsread.c (define_symbol, read_member_functions): Fix
9293         fall-through comment.
9294         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9295         comment.
9296         * remote.c (remote_wait_as): Fix fall-through comment.
9297         * p-exp.y (yylex): Fix fall-through comment.
9298         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9299         comment.
9300         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9301         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9302         * jv-exp.y (yylex): Fix fall-through comment.
9303         * go-exp.y (lex_one_token): Fix fall-through comment.
9304         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9305         fall-through comment.
9306         * f-exp.y (yylex): Fix fall-through comment.
9307         * dwarf2read.c (process_die): Fix fall-through comments.
9308         * dbxread.c (process_one_symbol): Fix fall-through comment.
9309         * d-exp.y (lex_one_token): Fix fall-through comment.
9310         * cp-name-parser.y (yylex): Fix fall-through comment.
9311         * coffread.c (coff_symtab_read): Fix fall-through comment.
9312         * c-exp.y (lex_one_token): Fix fall-through comment.
9313         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9314         comment.
9315         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9316         comment.
9317
9318 2018-05-04  Tom Tromey  <tom@tromey.com>
9319
9320         PR python/22730:
9321         * NEWS: Mention gdb.execute change.
9322         * gdbcmd.h (execute_control_command): Don't declare.
9323         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9324         execute_control_commands, execute_control_commands_to_string.
9325         * cli/cli-script.h (execute_control_commands)
9326         (execute_control_commands_to_string): Declare.
9327         (execute_control_command): Add from_tty parameter.
9328         * cli/cli-script.c (execute_control_commands)
9329         (execute_control_commands_to_string): New functions.
9330         (execute_user_command): Use execute_control_commands.
9331         (execute_control_command_1): Add "from_tty" parameter.  Update.
9332         (execute_control_command): Likewise.
9333
9334 2018-05-04  Tom Tromey  <tom@tromey.com>
9335
9336         PR python/22731:
9337         * NEWS: Mention that breakpoint commands are writable.
9338         * python/py-breakpoint.c (bppy_set_commands): New function.
9339         (breakpoint_object_getset) <"commands">: Use it.
9340
9341 2018-05-04  Tom Tromey  <tom@tromey.com>
9342
9343         * tracepoint.c (actions_command): Update.
9344         * mi/mi-cmd-break.c (mi_command_line_array)
9345         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9346         (mi_read_next_line): Remove.
9347         (mi_cmd_break_commands): Update.
9348         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9349         function_view.
9350         * cli/cli-script.c (get_command_line): Update.
9351         (process_next_line): Use function_view.  Constify.
9352         (recurse_read_control_structure, read_command_lines)
9353         (read_command_lines_1): Change argument types to function_view.
9354         (do_define_command, document_command): Update.
9355         * breakpoint.h (check_tracepoint_command): Don't declare.
9356         * breakpoint.c (check_tracepoint_command): Remove.
9357         (commands_command_1, create_tracepoint_from_upload): Update.
9358
9359 2018-05-04  Tom Tromey  <tom@tromey.com>
9360
9361         PR gdb/11750:
9362         * cli/cli-script.h (enum command_control_type) <define_control>:
9363         New constant.
9364         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9365         (build_command_line, execute_control_command_1)
9366         (process_next_line): Likewise.
9367         (do_define_command): New function, extracted from define_command.
9368         (define_command): Use it.
9369
9370 2018-05-04  Tom Tromey  <tom@tromey.com>
9371
9372         * tracepoint.c (actions_command): Update.
9373         * cli/cli-script.h (read_command_lines): Update.
9374         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9375         (MAX_TMPBUF): Remove define.
9376         (define_command): Use string_printf.
9377         (document_command): Likewise.
9378         * breakpoint.c (commands_command_1): Update.
9379
9380 2018-05-04  Tom Tromey  <tom@tromey.com>
9381
9382         * top.c (execute_command): Update.
9383         * cli/cli-script.h (print_command_lines): Now varargs.
9384         * cli/cli-script.c (print_command_lines): Now varargs.
9385         (execute_control_command_1) <case while_control, case if_control>:
9386         Update.
9387
9388 2018-05-04  Tom Tromey  <tom@tromey.com>
9389
9390         * tracepoint.c (all_tracepoint_actions): Rename from
9391         all_tracepoint_actions_and_cleanup.  Change return type.
9392         (actions_command, encode_actions_1, encode_actions)
9393         (trace_dump_actions, tdump_command): Update.
9394         * remote.c (remote_download_command_source): Update.
9395         * python/python.c (gdbpy_eval_from_control_command)
9396         (python_command, python_interactive_command): Update.
9397         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9398         * guile/guile.c (guile_command)
9399         (gdbscm_eval_from_control_command, guile_command): Update.
9400         * compile/compile.c (compile_code_command)
9401         (compile_print_command, compile_to_object): Update.
9402         * cli/cli-script.h (struct command_lines_deleter): New.
9403         (counted_command_line): New typedef.
9404         (struct command_line): Add constructor, destructor.
9405         <body_list>: Remove.
9406         <body_list_0, body_list_1>: New members.
9407         (command_line_up): Remove typedef.
9408         (read_command_lines, read_command_lines_1, get_command_line):
9409         Update.
9410         (copy_command_lines): Don't declare.
9411         * cli/cli-script.c (build_command_line): Use "new".
9412         (get_command_line): Return counted_command_line.
9413         (print_command_lines, execute_user_command)
9414         (execute_control_command_1, while_command, if_command): Update.
9415         (realloc_body_list): Remove.
9416         (process_next_line, recurse_read_control_structure): Update.
9417         (read_command_lines, read_command_lines_1): Return counted_command_line.
9418         (free_command_lines): Use "delete".
9419         (copy_command_lines): Remove.
9420         (define_command, document_command, show_user_1): Update.
9421         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9422         a counted_command_line.
9423         * breakpoint.h (counted_command_line): Remove typedef.
9424         (breakpoint_set_commands): Update.
9425         * breakpoint.c (check_no_tracepoint_commands)
9426         (validate_commands_for_breakpoint): Update.
9427         (breakpoint_set_commands): Change commands to be a
9428         counted_command_line.
9429         (commands_command_1, update_dprintf_command_list)
9430         (create_tracepoint_from_upload): Update.
9431
9432 2018-05-04  Tom Tromey  <tom@tromey.com>
9433
9434         * cli/cli-decode.h (cmd_list_element): New constructor.
9435         (~cmd_list_element): New destructor.
9436         (struct cmd_list_element): Add initializers.
9437         * cli/cli-decode.c (do_add_cmd): Use "new".
9438         (delete_cmd): Use "delete".
9439
9440 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9441             Pedro Alves <palves@redhat.com>
9442
9443         PR breakpoints/19806 and support for PR external/20207.
9444         * NEWS: Mention Aarch64 watchpoint improvements.
9445         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9446         watchpoints and PR external/20207 watchpoints.
9447         * nat/aarch64-linux-hw-point.c
9448         (kernel_supports_any_contiguous_range): New.
9449         (aarch64_watchpoint_offset): New.
9450         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9451         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9452         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9453         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9454         next_addr_orig_p.  Support PR external/20207 watchpoints.
9455         (aarch64_downgrade_regs): New.
9456         (aarch64_dr_state_insert_one_point): New parameters offset and
9457         addr_orig.
9458         (aarch64_dr_state_remove_one_point): Likewise.
9459         (aarch64_handle_breakpoint): Update caller.
9460         (aarch64_handle_aligned_watchpoint): Likewise.
9461         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9462         aligned_offset.
9463         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9464         aarch64_downgrade_regs.
9465         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9466         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9467         (DR_CONTROL_MASK): ... this.
9468         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9469         (unsigned int aarch64_watchpoint_offset): New prototype.
9470         (aarch64_linux_set_debug_regs): Remove const from state.
9471         * utils.c (align_up, align_down): Move to ...
9472         * common/common-utils.c (align_up, align_down): ... here.
9473         * utils.h (align_up, align_down): Move to ...
9474         * common/common-utils.h (align_up, align_down): ... here.
9475
9476 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9477
9478         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9479         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9480         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9481         Re-implement to match the ABI as summarized in GCC's
9482         gcc/config/sparc/sparc.c.  All callers updated.
9483         (sparc32_store_arguments): Remove assertion.
9484
9485 2018-05-04  Tom Tromey  <tom@tromey.com>
9486
9487         * printcmd.c: Don't include tui.h.
9488         (decode_format): Use skip_spaces.
9489
9490 2018-05-04  Tom Tromey  <tom@tromey.com>
9491
9492         PR gdb/22619:
9493         * printcmd.c (last_count): New global.
9494         (x_command): Use saved count when repeating.
9495
9496 2018-05-04  Tom Tromey  <tom@tromey.com>
9497
9498         * nto-procfs.c (do_closedir_cleanup): Remove.
9499         (procfs_pidlist): Use gdb_dir_up.
9500         * procfs.c (do_closedir_cleanup): Remove.
9501         (proc_update_threads): Use gdb_dir_up.
9502         * common/filestuff.h (struct gdb_dir_deleter): New.
9503         (gdb_dir_up): New typedef.
9504
9505 2018-05-04  Tom Tromey  <tom@tromey.com>
9506
9507         * ada-lang.c (print_mention_exception): Use std::string.
9508
9509 2018-05-04  Tom Tromey  <tom@tromey.com>
9510
9511         * ada-lang.c (create_excep_cond_exprs): Update.
9512         (ada_exception_catchpoint_cond_string): Use std::string.
9513
9514 2018-05-04  Tom Tromey  <tom@tromey.com>
9515
9516         * ada-lang.c (xget_renaming_scope): Return std::string.
9517         (old_renaming_is_invisible): Update.
9518
9519 2018-05-04  Tom Tromey  <tom@tromey.com>
9520
9521         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9522         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9523
9524 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9525
9526         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9527
9528 2018-05-04  Tom Tromey  <tom@tromey.com>
9529
9530         * remote.c (remote_query_supported_append): Change type.
9531         (remote_check_symbols): Update.
9532
9533 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9534
9535         PR gdb/11420
9536         * configure.ac: Prepend libpython.
9537         * python/python-config.py: Likewise.
9538         * configure: Regenerate.
9539
9540 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9541
9542         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9543
9544 2018-05-03  Pedro Alves  <palves@redhat.com>
9545
9546         * s390-linux-nat.c
9547         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9548         override.  Write 'true' instead of '1'.
9549         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9550         declaration.
9551
9552 2018-05-02  Pedro Alves  <palves@redhat.com>
9553
9554         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9555         add_inf_child_target.
9556         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9557         add_inf_child_target.
9558         * aix-thread.c (aix_thread_target_info): New.
9559         (aix_thread_target) <shortname, longname, doc>: Delete.
9560         <info>: New.
9561         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9562         add_inf_child_target.
9563         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9564         add_inf_child_target.
9565         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9566         add_inf_child_target.
9567         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9568         add_inf_child_target.
9569         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9570         add_inf_child_target.
9571         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9572         add_inf_child_target.
9573         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9574         add_inf_child_target.
9575         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9576         add_inf_child_target.
9577         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9578         add_inf_child_target.
9579         * bfd-target.c (target_bfd_target_info): New.
9580         (target_bfd) <shortname, longname, doc>: Delete.
9581         <info>: New.
9582         * bsd-kvm.c (bsd_kvm_target_info): New.
9583         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9584         <info>: New.
9585         (bsd_kvm_target::open): Rename to ...
9586         (bsd_kvm_target_open): ... this.  Adjust.
9587         * bsd-uthread.c (bsd_uthread_target_info): New.
9588         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9589         <info>: New.
9590         * corefile.c (core_file_command): Adjust.
9591         * corelow.c (core_target_info): New.
9592         (core_target) <shortname, longname, doc>: Delete.
9593         <info>: New.
9594         (core_target::open): Rename to ...
9595         (core_target_open): ... this.  Adjust.
9596         * ctf.c (ctf_target_info): New.
9597         (ctf_target) <shortname, longname, doc>: Delete.
9598         <info>: New.
9599         (ctf_target::open): Rename to ...
9600         (ctf_target_open): ... this.
9601         (_initialize_ctf): Adjust.
9602         * exec.c (exec_target_info): New.
9603         (exec_target) <shortname, longname, doc>: Delete.
9604         <info>: New.
9605         (exec_target::open): Rename to ...
9606         (exec_target_open): ... this.
9607         * gdbcore.h (core_target_open): Declare.
9608         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9609         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9610         add_inf_child_target.
9611         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9612         add_inf_child_target.
9613         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9614         add_inf_child_target.
9615         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9616         add_inf_child_target.
9617         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9618         add_inf_child_target.
9619         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9620         add_inf_child_target.
9621         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9622         add_inf_child_target.
9623         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9624         add_inf_child_target.
9625         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9626         add_inf_child_target.
9627         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9628         add_inf_child_target.
9629         * inf-child.c (inf_child_target_info): New.
9630         (inf_child_target::info): New.
9631         (inf_child_open_target): Remove 'target' parameter.  Use
9632         get_native_target instead.
9633         (inf_child_target::open): Delete.
9634         (add_inf_child_target): New.
9635         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9636         Delete.
9637         <info>: New.
9638         (add_inf_child_target): Declare.
9639         (inf_child_open_target): Declare.
9640         * linux-thread-db.c (thread_db_target_info): New.
9641         (thread_db_target) <shortname, longname, doc>: Delete.
9642         <info>: New.
9643         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9644         add_inf_child_target.
9645         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9646         add_inf_child_target.
9647         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9648         add_inf_child_target.
9649         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9650         add_inf_child_target.
9651         * make-target-delegates (print_class): Adjust.
9652         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9653         add_inf_child_target.
9654         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9655         add_inf_child_target.
9656         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9657         add_inf_child_target.
9658         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9659         add_inf_child_target.
9660         * nto-procfs.c (nto_native_target_info): New.
9661         (nto_procfs_target_native) <shortname, longname, doc>:
9662         Delete.
9663         <info>: New.
9664         (nto_procfs_target_info): New.
9665         (nto_procfs_target_procfs) <shortname, longname, doc>:
9666         Delete.
9667         <info>: New.
9668         (init_procfs_targets): Adjust.
9669         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9670         add_inf_child_target.
9671         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9672         add_inf_child_target.
9673         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9674         add_inf_child_target.
9675         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9676         add_inf_child_target.
9677         * ravenscar-thread.c (ravenscar_target_info): New.
9678         (ravenscar_thread_target) <shortname, longname, doc>:
9679         Delete.
9680         <info>: New.
9681         * record-btrace.c (record_btrace_target_info):
9682         (record_btrace_target) <shortname, longname, doc>: Delete.
9683         <info>: New.
9684         (record_btrace_target::open): Rename to ...
9685         (record_btrace_target_open): ... this.  Adjust.
9686         * record-full.c (record_longname, record_doc): New.
9687         (record_full_base_target) <shortname, longname, doc>: Delete.
9688         <info>: New.
9689         (record_full_target_info): New.
9690         (record_full_target): <shortname>: Delete.
9691         <info>: New.
9692         (record_full_core_open_1, record_full_open_1): Update comments.
9693         (record_full_base_target::open): Rename to ...
9694         (record_full_open): ... this.
9695         (cmd_record_full_restore): Update.
9696         (_initialize_record_full): Update.
9697         * remote-sim.c (remote_sim_target_info): New.
9698         (gdbsim_target) <shortname, longname, doc>: Delete.
9699         <info>: New.
9700         (gdbsim_target::open): Rename to ...
9701         (gdbsim_target_open): ... this.
9702         (_initialize_remote_sim): Adjust.
9703         * remote.c (remote_doc): New.
9704         (remote_target_info): New.
9705         (remote_target) <shortname, longname, doc>: Delete.
9706         <info>: New.
9707         (extended_remote_target_info): New.
9708         (extended_remote_target) <shortname, longname, doc>: Delete.
9709         <info>: New.
9710         (remote_target::open_1): Make static.  Adjust.
9711         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9712         * s390-linux-nat.c (_initialize_s390_nat): Use
9713         add_inf_child_target.
9714         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9715         add_inf_child_target.
9716         * sol-thread.c (thread_db_target_info): New.
9717         (sol_thread_target) <shortname, longname, doc>: Delete.
9718         <info>: New.
9719         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9720         add_inf_child_target.
9721         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9722         add_inf_child_target.
9723         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9724         add_inf_child_target.
9725         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9726         add_inf_child_target.
9727         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9728         add_inf_child_target.
9729         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9730         add_inf_child_target.
9731         * spu-linux-nat.c (_initialize_spu_nat): Use
9732         add_inf_child_target.
9733         * spu-multiarch.c (spu_multiarch_target_info): New.
9734         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9735         <info>: New.
9736         * target-delegates.c: Regenerate.
9737         * target.c: Include <unordered_map>.
9738         (target_ops_p): Delete.
9739         (DEF_VEC_P(target_ops_p)): Delete.
9740         (target_factories): New.
9741         (test_target_info): New.
9742         (test_target_ops::info): New.
9743         (open_target): Adjust to use target_factories.
9744         (add_target_with_completer): Rename to ...
9745         (add_target): ... this.  Change prototype.  Register target_info
9746         and open callback in target_factories.  Register target_info in
9747         command context instead of target_ops.
9748         (add_target): Delete old implementation.
9749         (add_deprecated_target_alias): Change prototype.  Adjust.
9750         (the_native_target): New.
9751         (set_native_target, get_native_target): New.
9752         (find_default_run_target): Use the_native_target.
9753         (find_attach_target, find_run_target): Simplify.
9754         (target_ops::open): Delete.
9755         (dummy_target_info): New.
9756         (dummy_target::shortname, dummy_target::longname)
9757         (dummy_target::doc): Delete.
9758         (dummy_target::info): New.
9759         (debug_target::shortname, debug_target::longname)
9760         (debug_target::doc): Delete.
9761         (debug_target::info): New.
9762         * target.h (struct target_info): New.
9763         (target_ops::~target_ops): Add comment.
9764         (target_ops::info): New.
9765         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9766         longer virtual.  Implement in terms of target_info.
9767         (set_native_target, get_native_target): Declare.
9768         (target_open_ftype): New.
9769         (add_target, add_target_with_completer)
9770         (add_deprecated_target_alias): Change prototype.
9771         (test_target) <shortname, longname, doc>: Delete.
9772         <info>: New.
9773         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9774         add_inf_child_target.
9775         * tracefile-tfile.c (tfile_target_info): New.
9776         (tfile_target) <shortname, longname, doc>: Delete.
9777         <info>: New.
9778         (tfile_target::open): Rename to ...
9779         (tfile_target_open): ... this.
9780         (_initialize_tracefile_tfile): Adjust.
9781         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9782         add_inf_child_target.
9783         * windows-nat.c (_initialize_windows_nat): Use
9784         add_inf_child_target.
9785         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9786         add_inf_child_target.
9787
9788 2018-05-02  Pedro Alves  <palves@redhat.com>
9789
9790         * linux-nat.h (linux_nat_target) <low_new_thread,
9791         low_delete_thread, low_new_fork, low_forget_process,
9792         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9793         New virtual methods.
9794         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9795         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9796         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9797         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9798         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9799         Delete.
9800         * linux-fork.c (delete_fork): Adjust to call low method.
9801         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9802         (linux_nat_new_fork, linux_nat_forget_process_hook)
9803         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9804         (linux_nat_status_is_event):
9805         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9806         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9807         to call low method.
9808         (sigtrap_is_event): Rename to ...
9809         (linux_nat_target::low_status_is_event): ... this.
9810         (linux_nat_set_status_is_event): Delete.
9811         (save_stop_reason, linux_nat_wait_1)
9812         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9813         low methods.
9814         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9815         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9816         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9817         (linux_nat_set_prepare_to_resume): Delete.
9818         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9819         low virtual methods.
9820         * amd64-linux-nat.c: Likewise.
9821         * arm-linux-nat.c: Likewise.
9822         * i386-linux-nat.c: Likewise.
9823         * ia64-linux-nat.c: Likewise.
9824         * mips-linux-nat.c: Likewise.
9825         * ppc-linux-nat.c: Likewise.
9826         * s390-linux-nat.c: Likewise.
9827         * sparc64-linux-nat.c: Likewise.
9828         * x86-linux-nat.c: Likewise.
9829         * x86-linux-nat.h: Include "nat/x86-linux.h".
9830         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9831         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9832         Override methods.
9833
9834 2018-05-02  Pedro Alves  <palves@redhat.com>
9835
9836         * target.h (target_ops)
9837         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9838         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9839         stopped_by_watchpoint, have_continuable_watchpoint,
9840         stopped_data_address, watchpoint_addr_within_range,
9841         can_accel_watchpoint_condition, can_run, thread_alive,
9842         has_all_memory, has_memory, has_stack, has_registers,
9843         has_execution, can_async_p, is_async_p, supports_non_stop,
9844         always_non_stop_p, can_execute_reverse, supports_multi_process,
9845         supports_enable_disable_tracepoint,
9846         supports_disable_randomization, supports_string_tracing,
9847         supports_evaluation_of_breakpoint_conditions,
9848         can_run_breakpoint_commands, filesystem_is_local,
9849         can_download_tracepoint, get_trace_state_variable_value,
9850         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9851         record_is_replaying, record_will_replay,
9852         augmented_libraries_svr4_read>: Adjust to return bool.
9853         * aarch64-linux-nat.c: All implementations adjusted.
9854         * aix-thread.c: All implementations adjusted.
9855         * arm-linux-nat.c: All implementations adjusted.
9856         * breakpoint.c: All implementations adjusted.
9857         * bsd-kvm.c: All implementations adjusted.
9858         * bsd-uthread.c: All implementations adjusted.
9859         * corelow.c: All implementations adjusted.
9860         * ctf.c: All implementations adjusted.
9861         * darwin-nat.c: All implementations adjusted.
9862         * darwin-nat.h: All implementations adjusted.
9863         * exec.c: All implementations adjusted.
9864         * fbsd-nat.c: All implementations adjusted.
9865         * fbsd-nat.h: All implementations adjusted.
9866         * gnu-nat.c: All implementations adjusted.
9867         * gnu-nat.h: All implementations adjusted.
9868         * go32-nat.c: All implementations adjusted.
9869         * ia64-linux-nat.c: All implementations adjusted.
9870         * inf-child.c: All implementations adjusted.
9871         * inf-child.h: All implementations adjusted.
9872         * inf-ptrace.c: All implementations adjusted.
9873         * inf-ptrace.h: All implementations adjusted.
9874         * linux-nat.c: All implementations adjusted.
9875         * linux-nat.h: All implementations adjusted.
9876         * mips-linux-nat.c: All implementations adjusted.
9877         * nto-procfs.c: All implementations adjusted.
9878         * ppc-linux-nat.c: All implementations adjusted.
9879         * procfs.c: All implementations adjusted.
9880         * ravenscar-thread.c: All implementations adjusted.
9881         * record-btrace.c: All implementations adjusted.
9882         * record-full.c: All implementations adjusted.
9883         * remote-sim.c: All implementations adjusted.
9884         * remote.c: All implementations adjusted.
9885         * s390-linux-nat.c: All implementations adjusted.
9886         * sol-thread.c: All implementations adjusted.
9887         * spu-multiarch.c: All implementations adjusted.
9888         * target-delegates.c: All implementations adjusted.
9889         * target.c: All implementations adjusted.
9890         * target.h: All implementations adjusted.
9891         * tracefile-tfile.c: All implementations adjusted.
9892         * tracefile.c: All implementations adjusted.
9893         * tracefile.h: All implementations adjusted.
9894         * windows-nat.c: All implementations adjusted.
9895         * x86-linux-nat.h: All implementations adjusted.
9896         * x86-nat.h: All implementations adjusted.
9897
9898 2018-05-02  Pedro Alves  <palves@redhat.com>
9899
9900         * make-target-delegates (scan_target_h): Don't trim lines here.
9901         Replace sequences of tabs and/or whitespace with a single
9902         whitespace.
9903         (top level, parsing methods): Trim each line before processing it
9904         here.
9905
9906 2018-05-02  Pedro Alves  <palves@redhat.com>
9907             John Baldwin  <jhb@freebsd.org>
9908
9909         * target.h (enum strata) <debug_stratum>: New.
9910         (struct target_ops) <all delegation methods>: Replace by C++
9911         virtual methods, and drop "to_" prefix.  All references updated
9912         throughout.
9913         <to_shortname, to_longname, to_doc, to_data,
9914         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9915         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9916         virtual methods.  All references updated throughout.
9917         <can_attach, supports_terminal_ours, can_create_inferior,
9918         get_thread_control_capabilities, attach_no_wait>: New
9919         virtual methods.
9920         <insert_breakpoint, remove_breakpoint>: Now
9921         TARGET_DEFAULT_NORETURN methods.
9922         <info_proc>: Now returns bool.
9923         <to_magic>: Delete.
9924         (OPS_MAGIC): Delete.
9925         (current_target): Delete.  All references replaced by references
9926         to ...
9927         (target_stack): ... this.  New.
9928         (target_shortname, target_longname): Adjust.
9929         (target_can_run): Now a function declaration.
9930         (default_child_has_all_memory, default_child_has_memory)
9931         (default_child_has_stack, default_child_has_registers)
9932         (default_child_has_execution): Remove target_ops parameter.
9933         (complete_target_initialization): Delete.
9934         (memory_breakpoint_target): New template class.
9935         (test_target_ops): Refactor as a C++ class with virtual methods.
9936         * make-target-delegates (NAME_PART): Tighten.
9937         (POINTER_PART, CP_SYMBOL): New.
9938         (SIMPLE_RETURN_PART): Reimplement.
9939         (VEC_RETURN_PART): Expect less.
9940         (RETURN_PART, VIRTUAL_PART): New.
9941         (METHOD): Adjust to C++ virtual methods.
9942         (scan_target_h): Remove reference to C99.
9943         (dname): Output "target_ops::" prefix.
9944         (write_function_header): Adjust to output a C++ class method.
9945         (write_declaration): New.
9946         (write_delegator): Adjust to output a C++ class method.
9947         (tdname): Output "dummy_target::" prefix.
9948         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9949         method.
9950         (tdefault_names, debug_names): Delete.
9951         (return_types, tdefaults, styles, argtypes_array): New.
9952         (top level): All methods are delegators.
9953         (print_class): New.
9954         (top level): Print dummy_target and debug_target classes.
9955         * target-delegates.c: Regenerate.
9956         * target-debug.h (target_debug_print_enum_info_proc_what)
9957         (target_debug_print_thread_control_capabilities)
9958         (target_debug_print_thread_info_p): New.
9959         * target.c (dummy_target): Delete.
9960         (the_dummy_target, the_debug_target): New.
9961         (target_stack): Now extern.
9962         (set_targetdebug): Push/unpush debug target.
9963         (default_child_has_all_memory, default_child_has_memory)
9964         (default_child_has_stack, default_child_has_registers)
9965         (default_child_has_execution): Remove target_ops parameter.
9966         (complete_target_initialization): Delete.
9967         (add_target_with_completer): No longer call
9968         complete_target_initialization.
9969         (target_supports_terminal_ours): Use regular delegation.
9970         (update_current_target): Delete.
9971         (push_target): No longer check magic number.  Don't call
9972         update_current_target.
9973         (unpush_target): Don't call update_current_target.
9974         (target_is_pushed): No longer check magic number.
9975         (target_require_runnable): Skip for all stratums over
9976         process_stratum.
9977         (target_ops::info_proc): New.
9978         (target_info_proc): Use find_target_at and
9979         find_default_run_target.
9980         (target_supports_disable_randomization): Use regular delegation.
9981         (target_get_osdata): Use find_target_at.
9982         (target_ops::open, target_ops::close, target_ops::can_attach)
9983         (target_ops::attach, target_ops::can_create_inferior)
9984         (target_ops::create_inferior, target_ops::can_run)
9985         (target_can_run): New.
9986         (default_fileio_target): Use regular delegation.
9987         (target_ops::fileio_open, target_ops::fileio_pwrite)
9988         (target_ops::fileio_pread, target_ops::fileio_fstat)
9989         (target_ops::fileio_close, target_ops::fileio_unlink)
9990         (target_ops::fileio_readlink): New.
9991         (target_fileio_open_1, target_fileio_unlink)
9992         (target_fileio_readlink): Always call the target method.  Handle
9993         FILEIO_ENOSYS.
9994         (return_zero, return_zero_has_execution): Delete.
9995         (init_dummy_target): Delete.
9996         (dummy_target::dummy_target, dummy_target::shortname)
9997         (dummy_target::longname, dummy_target::doc)
9998         (debug_target::debug_target, debug_target::shortname)
9999         (debug_target::longname, debug_target::doc): New.
10000         (target_supports_delete_record): Use regular delegation.
10001         (setup_target_debug): Delete.
10002         (maintenance_print_target_stack): Skip debug_stratum.
10003         (initialize_targets): Instantiate the_dummy_target and
10004         the_debug_target.
10005         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10006         use target_stack.
10007         (target_auxv_search, fprint_target_auxv): Adjust.
10008         (info_auxv_command): Adjust to use target_stack.
10009         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10010         * exceptions.c (print_flush): Handle a NULL target_stack.
10011         * regcache.c (target_ops_no_register): Refactor as class with
10012         virtual methods.
10013
10014         * exec.c (exec_target): New class.
10015         (exec_ops): Now an exec_target.
10016         (exec_open, exec_close_1, exec_get_section_table)
10017         (exec_xfer_partial, exec_files_info, exec_has_memory)
10018         (exec_make_note_section): Refactor as exec_target methods.
10019         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10020         Delete.
10021         (exec_target::find_memory_regions): New.
10022         (_initialize_exec): Don't call init_exec_ops.
10023         * gdbcore.h (exec_file_clear): Delete.
10024
10025         * corefile.c (core_target): Delete.
10026         (core_file_command): Adjust.
10027         * corelow.c (core_target): New class.
10028         (the_core_target): New.
10029         (core_close): Remove target_ops parameter.
10030         (core_close_cleanup): Adjust.
10031         (core_target::close): New.
10032         (core_open, core_detach, get_core_registers, core_files_info)
10033         (core_xfer_partial, core_thread_alive, core_read_description)
10034         (core_pid_to_str, core_thread_name, core_has_memory)
10035         (core_has_stack, core_has_registers, core_info_proc): Rework as
10036         core_target methods.
10037         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10038         (_initialize_corelow): Initialize the_core_target.
10039         * gdbcore.h (core_target): Delete.
10040         (the_core_target): New.
10041
10042         * ctf.c: (ctf_target): New class.
10043         (ctf_ops): Now a ctf_target.
10044         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10045         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10046         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10047         methods.
10048         (init_ctf_ops): Delete.
10049         (_initialize_ctf): Don't call it.
10050         * tracefile-tfile.c (tfile_target): New class.
10051         (tfile_ops): Now a tfile_target.
10052         (tfile_open, tfile_close, tfile_files_info)
10053         (tfile_get_tracepoint_status, tfile_trace_find)
10054         (tfile_fetch_registers, tfile_xfer_partial)
10055         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10056         Refactor as tfile_target methods.
10057         (tfile_xfer_partial_features): Remove target_ops parameter.
10058         (init_tfile_ops): Delete.
10059         (_initialize_tracefile_tfile): Don't call it.
10060         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10061         (tracefile_has_stack, tracefile_has_registers)
10062         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10063         tracefile_target methods.
10064         (init_tracefile_ops): Delete.
10065         (tracefile_target::tracefile_target): New.
10066         * tracefile.h: Include "target.h".
10067         (tracefile_target): New class.
10068         (init_tracefile_ops): Delete.
10069
10070         * spu-multiarch.c (spu_multiarch_target): New class.
10071         (spu_ops): Now a spu_multiarch_target.
10072         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10073         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10074         (spu_search_memory, spu_mourn_inferior): Refactor as
10075         spu_multiarch_target methods.
10076         (init_spu_ops): Delete.
10077         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10078         complete_target_initialization.
10079
10080         * ravenscar-thread.c (ravenscar_thread_target): New class.
10081         (ravenscar_ops): Now a ravenscar_thread_target.
10082         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10083         (ravenscar_thread_alive, ravenscar_pid_to_str)
10084         (ravenscar_fetch_registers, ravenscar_store_registers)
10085         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10086         (ravenscar_stopped_by_hw_breakpoint)
10087         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10088         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10089         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10090         methods.
10091         (init_ravenscar_thread_ops): Delete.
10092         (_initialize_ravenscar): Remove references to
10093         init_ravenscar_thread_ops and complete_target_initialization.
10094
10095         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10096         (bsd_uthread_target): New class.
10097         (bsd_uthread_ops): Now a bsd_uthread_target.
10098         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10099         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10100         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10101         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10102         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10103         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10104         (bsd_uthread_target): Delete function.
10105         (_initialize_bsd_uthread): Remove reference to
10106         complete_target_initialization.
10107
10108         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10109         (target_bfd): ... this new class.
10110         (target_bfd_xfer_partial, target_bfd_get_section_table)
10111         (target_bfd_close): Refactor as target_bfd methods.
10112         (target_bfd::~target_bfd): New.
10113         (target_bfd_reopen): Adjust.
10114         (target_bfd::close): New.
10115
10116         * record-btrace.c (record_btrace_target): New class.
10117         (record_btrace_ops): Now a record_btrace_target.
10118         (record_btrace_open, record_btrace_stop_recording)
10119         (record_btrace_disconnect, record_btrace_close)
10120         (record_btrace_async, record_btrace_info)
10121         (record_btrace_insn_history, record_btrace_insn_history_range)
10122         (record_btrace_insn_history_from, record_btrace_call_history)
10123         (record_btrace_call_history_range)
10124         (record_btrace_call_history_from, record_btrace_record_method)
10125         (record_btrace_is_replaying, record_btrace_will_replay)
10126         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10127         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10128         (record_btrace_store_registers, record_btrace_prepare_to_store)
10129         (record_btrace_to_get_unwinder)
10130         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10131         (record_btrace_commit_resume, record_btrace_wait)
10132         (record_btrace_stop, record_btrace_can_execute_reverse)
10133         (record_btrace_stopped_by_sw_breakpoint)
10134         (record_btrace_supports_stopped_by_sw_breakpoint)
10135         (record_btrace_stopped_by_hw_breakpoint)
10136         (record_btrace_supports_stopped_by_hw_breakpoint)
10137         (record_btrace_update_thread_list, record_btrace_thread_alive)
10138         (record_btrace_goto_begin, record_btrace_goto_end)
10139         (record_btrace_goto, record_btrace_stop_replaying_all)
10140         (record_btrace_execution_direction)
10141         (record_btrace_prepare_to_generate_core)
10142         (record_btrace_done_generating_core): Refactor as
10143         record_btrace_target methods.
10144         (init_record_btrace_ops): Delete.
10145         (_initialize_record_btrace): Remove reference to
10146         init_record_btrace_ops.
10147         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10148         the execution_direction global.
10149         (record_full_base_target, record_full_target)
10150         (record_full_core_target): New classes.
10151         (record_full_ops): Now a record_full_target.
10152         (record_full_core_ops): Now a record_full_core_target.
10153         (record_full_target::detach, record_full_target::disconnect)
10154         (record_full_core_target::disconnect)
10155         (record_full_target::mourn_inferior, record_full_target::kill):
10156         New.
10157         (record_full_open, record_full_close, record_full_async): Refactor
10158         as methods of the record_full_base_target class.
10159         (record_full_resume, record_full_commit_resume): Refactor
10160         as methods of the record_full_target class.
10161         (record_full_wait, record_full_stopped_by_watchpoint)
10162         (record_full_stopped_data_address)
10163         (record_full_stopped_by_sw_breakpoint)
10164         (record_full_supports_stopped_by_sw_breakpoint)
10165         (record_full_stopped_by_hw_breakpoint)
10166         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10167         methods of the record_full_base_target class.
10168         (record_full_store_registers, record_full_xfer_partial)
10169         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10170         Refactor as methods of the record_full_target class.
10171         (record_full_can_execute_reverse, record_full_get_bookmark)
10172         (record_full_goto_bookmark, record_full_execution_direction)
10173         (record_full_record_method, record_full_info, record_full_delete)
10174         (record_full_is_replaying, record_full_will_replay)
10175         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10176         (record_full_stop_replaying): Refactor as methods of the
10177         record_full_base_target class.
10178         (record_full_core_resume, record_full_core_kill)
10179         (record_full_core_fetch_registers)
10180         (record_full_core_prepare_to_store)
10181         (record_full_core_store_registers, record_full_core_xfer_partial)
10182         (record_full_core_insert_breakpoint)
10183         (record_full_core_remove_breakpoint)
10184         (record_full_core_has_execution): Refactor
10185         as methods of the record_full_core_target class.
10186         (record_full_base_target::supports_delete_record): New.
10187         (init_record_full_ops): Delete.
10188         (init_record_full_core_ops): Delete.
10189         (record_full_save): Refactor as method of the
10190         record_full_base_target class.
10191         (_initialize_record_full): Remove references to
10192         init_record_full_ops and init_record_full_core_ops.
10193
10194         * remote.c (remote_target, extended_remote_target): New classes.
10195         (remote_ops): Now a remote_target.
10196         (extended_remote_ops): Now an extended_remote_target.
10197         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10198         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10199         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10200         (remote_pass_signals, remote_set_syscall_catchpoint)
10201         (remote_program_signals, )
10202         (remote_thread_always_alive): Remove target_ops parameter.
10203         (remote_thread_alive, remote_thread_name)
10204         (remote_update_thread_list, remote_threads_extra_info)
10205         (remote_static_tracepoint_marker_at)
10206         (remote_static_tracepoint_markers_by_strid)
10207         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10208         (remote_open): Refactor as methods of remote_target.
10209         (extended_remote_open, extended_remote_detach)
10210         (extended_remote_attach, extended_remote_post_attach):
10211         (extended_remote_supports_disable_randomization)
10212         (extended_remote_create_inferior): : Refactor as method of
10213         extended_remote_target.
10214         (remote_set_permissions, remote_open_1, remote_detach)
10215         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10216         (remote_resume, remote_commit_resume, remote_stop)
10217         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10218         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10219         (remote_prepare_to_store, remote_store_registers)
10220         (remote_flash_erase, remote_flash_done, remote_files_info)
10221         (remote_kill, remote_mourn, remote_insert_breakpoint)
10222         (remote_remove_breakpoint, remote_insert_watchpoint)
10223         (remote_watchpoint_addr_within_range)
10224         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10225         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10226         (remote_supports_stopped_by_sw_breakpoint)
10227         (remote_stopped_by_hw_breakpoint)
10228         (remote_supports_stopped_by_hw_breakpoint)
10229         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10230         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10231         (remote_verify_memory): Refactor as methods of remote_target.
10232         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10233         parameter.
10234         (remote_xfer_partial, remote_get_memory_xfer_limit)
10235         (remote_search_memory, remote_rcmd, remote_memory_map)
10236         (remote_pid_to_str, remote_get_thread_local_address)
10237         (remote_get_tib_address, remote_read_description): Refactor as
10238         methods of remote_target.
10239         (remote_target::fileio_open, remote_target::fileio_pwrite)
10240         (remote_target::fileio_pread, remote_target::fileio_close): New.
10241         (remote_hostio_readlink, remote_hostio_fstat)
10242         (remote_filesystem_is_local, remote_can_execute_reverse)
10243         (remote_supports_non_stop, remote_supports_disable_randomization)
10244         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10245         (remote_supports_enable_disable_tracepoint)
10246         (remote_supports_string_tracing)
10247         (remote_can_run_breakpoint_commands, remote_trace_init)
10248         (remote_download_tracepoint, remote_can_download_tracepoint)
10249         (remote_download_trace_state_variable, remote_enable_tracepoint)
10250         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10251         (remote_trace_start, remote_get_trace_status)
10252         (remote_get_tracepoint_status, remote_trace_stop)
10253         (remote_trace_find, remote_get_trace_state_variable_value)
10254         (remote_save_trace_data, remote_get_raw_trace_data)
10255         (remote_set_disconnected_tracing, remote_core_of_thread)
10256         (remote_set_circular_trace_buffer, remote_traceframe_info)
10257         (remote_get_min_fast_tracepoint_insn_len)
10258         (remote_set_trace_buffer_size, remote_set_trace_notes)
10259         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10260         (remote_disable_btrace, remote_teardown_btrace)
10261         (remote_read_btrace, remote_btrace_conf)
10262         (remote_augmented_libraries_svr4_read, remote_load)
10263         (remote_pid_to_exec_file, remote_can_do_single_step)
10264         (remote_execution_direction, remote_thread_handle_to_thread_info):
10265         Refactor as methods of remote_target.
10266         (init_remote_ops, init_extended_remote_ops): Delete.
10267         (remote_can_async_p, remote_is_async_p, remote_async)
10268         (remote_thread_events, remote_upload_tracepoints)
10269         (remote_upload_trace_state_variables): Refactor as methods of
10270         remote_target.
10271         (_initialize_remote): Remove references to init_remote_ops and
10272         init_extended_remote_ops.
10273
10274         * remote-sim.c (gdbsim_target): New class.
10275         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10276         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10277         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10278         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10279         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10280         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10281         Refactor as methods of gdbsim_target.
10282         (gdbsim_ops): Now a gdbsim_target.
10283         (init_gdbsim_ops): Delete.
10284         (gdbsim_cntrl_c): Adjust.
10285         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10286
10287         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10288         (the_amd64_linux_nat_target): New.
10289         (amd64_linux_fetch_inferior_registers)
10290         (amd64_linux_store_inferior_registers): Refactor as methods of
10291         amd64_linux_nat_target.
10292         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10293         * i386-linux-nat.c: Don't include "linux-nat.h".
10294         (i386_linux_nat_target): New class.
10295         (the_i386_linux_nat_target): New.
10296         (i386_linux_fetch_inferior_registers)
10297         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10298         as methods of i386_linux_nat_target.
10299         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10300         * inf-child.c (inf_child_ops): Delete.
10301         (inf_child_fetch_inferior_registers)
10302         (inf_child_store_inferior_registers): Delete.
10303         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10304         methods of inf_child_target.
10305         (inf_child_target::supports_terminal_ours)
10306         (inf_child_target::terminal_init)
10307         (inf_child_target::terminal_inferior)
10308         (inf_child_target::terminal_ours_for_output)
10309         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10310         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10311         New.
10312         (inf_child_open, inf_child_disconnect, inf_child_close)
10313         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10314         (inf_child_post_startup_inferior, inf_child_can_run)
10315         (inf_child_pid_to_exec_file): Refactor as methods of
10316         inf_child_target.
10317         (inf_child_follow_fork): Delete.
10318         (inf_child_target::can_create_inferior)
10319         (inf_child_target::can_attach): New.
10320         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10321         (inf_child_target::has_stack, inf_child_target::has_registers)
10322         (inf_child_target::has_execution): New.
10323         (inf_child_fileio_open, inf_child_fileio_pwrite)
10324         (inf_child_fileio_pread, inf_child_fileio_fstat)
10325         (inf_child_fileio_close, inf_child_fileio_unlink)
10326         (inf_child_fileio_readlink, inf_child_use_agent)
10327         (inf_child_can_use_agent): Refactor as methods of
10328         inf_child_target.
10329         (return_zero, inf_child_target): Delete.
10330         (inf_child_target::inf_child_target): New.
10331         * inf-child.h: Include "target.h".
10332         (inf_child_target): Delete function prototype.
10333         (inf_child_target): New class.
10334         (inf_child_open_target, inf_child_mourn_inferior)
10335         (inf_child_maybe_unpush_target): Delete.
10336         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10337         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10338         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10339         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10340         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10341         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10342         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10343         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10344         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10345         methods of inf_ptrace_target.
10346         (inf_ptrace_target): Delete function.
10347         * inf-ptrace.h: Include "inf-child.h".
10348         (inf_ptrace_target): Delete function declaration.
10349         (inf_ptrace_target): New class.
10350         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10351         * linux-nat.c (linux_target): New.
10352         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10353         (linux_nat_target::~linux_nat_target): New.
10354         (linux_child_post_attach, linux_child_post_startup_inferior)
10355         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10356         (linux_child_remove_fork_catchpoint)
10357         (linux_child_insert_vfork_catchpoint)
10358         (linux_child_remove_vfork_catchpoint)
10359         (linux_child_insert_exec_catchpoint)
10360         (linux_child_remove_exec_catchpoint)
10361         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10362         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10363         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10364         (linux_nat_stopped_data_address)
10365         (linux_nat_stopped_by_sw_breakpoint)
10366         (linux_nat_supports_stopped_by_sw_breakpoint)
10367         (linux_nat_stopped_by_hw_breakpoint)
10368         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10369         (linux_nat_kill, linux_nat_mourn_inferior)
10370         (linux_nat_xfer_partial, linux_nat_thread_alive)
10371         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10372         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10373         (linux_child_static_tracepoint_markers_by_strid)
10374         (linux_nat_is_async_p, linux_nat_can_async_p)
10375         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10376         (linux_nat_supports_multi_process)
10377         (linux_nat_supports_disable_randomization, linux_nat_async)
10378         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10379         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10380         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10381         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10382         methods of linux_nat_target.
10383         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10384         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10385         parameter.
10386         (check_stopped_by_watchpoint): Adjust.
10387         (linux_xfer_partial): Delete.
10388         (linux_target_install_ops, linux_target, linux_nat_add_target):
10389         Delete.
10390         (linux_nat_target::linux_nat_target): New.
10391         * linux-nat.h: Include "inf-ptrace.h".
10392         (linux_nat_target): New.
10393         (linux_target, linux_target_install_ops, linux_nat_add_target):
10394         Delete function declarations.
10395         (linux_target): Declare global.
10396         * linux-thread-db.c (thread_db_target): New.
10397         (thread_db_target::thread_db_target): New.
10398         (thread_db_ops): Delete.
10399         (the_thread_db_target): New.
10400         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10401         (thread_db_update_thread_list, thread_db_pid_to_str)
10402         (thread_db_extra_thread_info)
10403         (thread_db_thread_handle_to_thread_info)
10404         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10405         (thread_db_resume): Refactor as methods of thread_db_target.
10406         (init_thread_db_ops): Delete.
10407         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10408         * x86-linux-nat.c: Don't include "linux-nat.h".
10409         (super_post_startup_inferior): Delete.
10410         (x86_linux_nat_target::~x86_linux_nat_target): New.
10411         (x86_linux_child_post_startup_inferior)
10412         (x86_linux_read_description, x86_linux_enable_btrace)
10413         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10414         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10415         methods of x86_linux_nat_target.
10416         (x86_linux_create_target): Delete.  Bits folded ...
10417         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10418         pointer.
10419         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10420         (x86_linux_nat_target): New class.
10421         (x86_linux_create_target): Delete.
10422         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10423         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10424         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10425         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10426         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10427         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10428         make extern.
10429         (x86_use_watchpoints): Delete.
10430         * x86-nat.h: Include "breakpoint.h" and "target.h".
10431         (x86_use_watchpoints): Delete.
10432         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10433         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10434         (x86_insert_watchpoint, x86_remove_watchpoint)
10435         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10436         (x86_stopped_by_hw_breakpoint): New declarations.
10437         (x86_nat_target): New template class.
10438
10439         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10440         (the_ppc_linux_nat_target): New.
10441         (ppc_linux_fetch_inferior_registers)
10442         (ppc_linux_can_use_hw_breakpoint)
10443         (ppc_linux_region_ok_for_hw_watchpoint)
10444         (ppc_linux_ranged_break_num_registers)
10445         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10446         (ppc_linux_insert_mask_watchpoint)
10447         (ppc_linux_remove_mask_watchpoint)
10448         (ppc_linux_can_accel_watchpoint_condition)
10449         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10450         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10451         (ppc_linux_watchpoint_addr_within_range)
10452         (ppc_linux_masked_watch_num_registers)
10453         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10454         (ppc_linux_read_description): Refactor as methods of
10455         ppc_linux_nat_target.
10456         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10457
10458         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10459         (procfs_target): New class.
10460         (the_procfs_target): New.
10461         (procfs_target): Delete function.
10462         (procfs_auxv_parse, procfs_attach, procfs_detach)
10463         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10464         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10465         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10466         (procfs_create_inferior, procfs_update_thread_list)
10467         (procfs_thread_alive, procfs_pid_to_str)
10468         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10469         (procfs_stopped_data_address, procfs_insert_watchpoint)
10470         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10471         (proc_find_memory_regions, procfs_info_proc)
10472         (procfs_make_note_section): Refactor as methods of procfs_target.
10473         (_initialize_procfs): Adjust.
10474         * sol-thread.c (sol_thread_target): New class.
10475         (sol_thread_ops): Now a sol_thread_target.
10476         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10477         (sol_thread_fetch_registers, sol_thread_store_registers)
10478         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10479         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10480         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10481         (init_sol_thread_ops): Delete.
10482         (_initialize_sol_thread): Adjust.  Remove references to
10483         init_sol_thread_ops and complete_target_initialization.
10484
10485         * windows-nat.c (windows_nat_target): New class.
10486         (windows_fetch_inferior_registers)
10487         (windows_store_inferior_registers, windows_resume, windows_wait)
10488         (windows_attach, windows_detach, windows_pid_to_exec_file)
10489         (windows_files_info, windows_create_inferior)
10490         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10491         (windows_close, windows_pid_to_str, windows_xfer_partial)
10492         (windows_get_tib_address, windows_get_ada_task_ptid)
10493         (windows_thread_name, windows_thread_alive): Refactor as
10494         windows_nat_target methods.
10495         (do_initial_windows_stuff): Adjust.
10496         (windows_target): Delete function.
10497         (_initialize_windows_nat): Adjust.
10498
10499         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10500         (darwin_mourn_inferior, darwin_kill_inferior)
10501         (darwin_create_inferior, darwin_attach, darwin_detach)
10502         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10503         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10504         (darwin_supports_multi_process): Refactor as darwin_nat_target
10505         methods.
10506         (darwin_resume_to, darwin_files_info): Delete.
10507         (_initialize_darwin_inferior): Rename to ...
10508         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10509         * darwin-nat.h: Include "inf-child.h".
10510         (darwin_nat_target): New class.
10511         (darwin_complete_target): Delete.
10512         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10513         (darwin_target): New.
10514         (i386_darwin_fetch_inferior_registers)
10515         (i386_darwin_store_inferior_registers): Refactor as methods of
10516         darwin_nat_target.
10517         (darwin_complete_target): Delete, with ...
10518         (_initialize_i386_darwin_nat): ... bits factored out here.
10519
10520         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10521         (the_alpha_linux_nat_target): New.
10522         (alpha_linux_register_u_offset): Refactor as
10523         alpha_linux_nat_target method.
10524         (_initialize_alpha_linux_nat): Adjust.
10525         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10526         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10527         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10528         methods of linux_nat_trad_target.
10529         (linux_trad_target): Delete.
10530         * linux-nat-trad.h (linux_trad_target): Delete function.
10531         (linux_nat_trad_target): New class.
10532         * mips-linux-nat.c (mips_linux_nat_target): New class.
10533         (super_fetch_registers, super_store_registers, super_close):
10534         Delete.
10535         (the_mips_linux_nat_target): New.
10536         (mips64_linux_regsets_fetch_registers)
10537         (mips64_linux_regsets_store_registers)
10538         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10539         (mips_linux_register_u_offset, mips_linux_read_description)
10540         (mips_linux_can_use_hw_breakpoint)
10541         (mips_linux_stopped_by_watchpoint)
10542         (mips_linux_stopped_data_address)
10543         (mips_linux_region_ok_for_hw_watchpoint)
10544         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10545         (mips_linux_close): Refactor as methods of mips_linux_nat.
10546         (_initialize_mips_linux_nat): Adjust to C++ification.
10547
10548         * aix-thread.c (aix_thread_target): New class.
10549         (aix_thread_ops): Now an aix_thread_target.
10550         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10551         (aix_thread_fetch_registers, aix_thread_store_registers)
10552         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10553         (aix_thread_thread_alive, aix_thread_pid_to_str)
10554         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10555         Refactor as methods of aix_thread_target.
10556         (init_aix_thread_ops): Delete.
10557         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10558         and complete_target_initialization.
10559         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10560         (rs6000_nat_target): New class.
10561         (the_rs6000_nat_target): New.
10562         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10563         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10564         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10565         (super_create_inferior): Delete.
10566         (_initialize_rs6000_nat): Adjust to C++ification.
10567
10568         * arm-linux-nat.c (arm_linux_nat_target): New class.
10569         (the_arm_linux_nat_target): New.
10570         (arm_linux_fetch_inferior_registers)
10571         (arm_linux_store_inferior_registers, arm_linux_read_description)
10572         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10573         (arm_linux_remove_hw_breakpoint)
10574         (arm_linux_region_ok_for_hw_watchpoint)
10575         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10576         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10577         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10578         arm_linux_nat_target.
10579         (_initialize_arm_linux_nat): Adjust to C++ification.
10580
10581         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10582         (the_aarch64_linux_nat_target): New.
10583         (aarch64_linux_fetch_inferior_registers)
10584         (aarch64_linux_store_inferior_registers)
10585         (aarch64_linux_child_post_startup_inferior)
10586         (aarch64_linux_read_description)
10587         (aarch64_linux_can_use_hw_breakpoint)
10588         (aarch64_linux_insert_hw_breakpoint)
10589         (aarch64_linux_remove_hw_breakpoint)
10590         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10591         (aarch64_linux_region_ok_for_hw_watchpoint)
10592         (aarch64_linux_stopped_data_address)
10593         (aarch64_linux_stopped_by_watchpoint)
10594         (aarch64_linux_watchpoint_addr_within_range)
10595         (aarch64_linux_can_do_single_step): Refactor as methods of
10596         aarch64_linux_nat_target.
10597         (super_post_startup_inferior): Delete.
10598         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10599
10600         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10601         (the_hppa_linux_nat_target): New.
10602         (hppa_linux_fetch_inferior_registers)
10603         (hppa_linux_store_inferior_registers): Refactor as methods of
10604         hppa_linux_nat_target.
10605         (_initialize_hppa_linux_nat): Adjust to C++ification.
10606
10607         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10608         (the_ia64_linux_nat_target): New.
10609         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10610         (ia64_linux_stopped_data_address)
10611         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10612         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10613         ia64_linux_nat_target methods.
10614         (super_xfer_partial): Delete.
10615         (_initialize_ia64_linux_nat): Adjust to C++ification.
10616
10617         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10618         (the_m32r_linux_nat_target): New.
10619         (m32r_linux_fetch_inferior_registers)
10620         (m32r_linux_store_inferior_registers): Refactor as
10621         m32r_linux_nat_target methods.
10622         (_initialize_m32r_linux_nat): Adjust to C++ification.
10623
10624         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10625         (the_m68k_linux_nat_target): New.
10626         (m68k_linux_fetch_inferior_registers)
10627         (m68k_linux_store_inferior_registers): Refactor as
10628         m68k_linux_nat_target methods.
10629         (_initialize_m68k_linux_nat): Adjust to C++ification.
10630
10631         * s390-linux-nat.c (s390_linux_nat_target): New class.
10632         (the_s390_linux_nat_target): New.
10633         (s390_linux_fetch_inferior_registers)
10634         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10635         (s390_insert_watchpoint, s390_remove_watchpoint)
10636         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10637         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10638         (s390_auxv_parse, s390_read_description): Refactor as methods of
10639         s390_linux_nat_target.
10640         (_initialize_s390_nat): Adjust to C++ification.
10641
10642         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10643         (the_sparc_linux_nat_target): New.
10644         (_initialize_sparc_linux_nat): Adjust to C++ification.
10645         * sparc-nat.c (sparc_fetch_inferior_registers)
10646         (sparc_store_inferior_registers): Remove target_ops parameter.
10647         * sparc-nat.h (sparc_fetch_inferior_registers)
10648         (sparc_store_inferior_registers): Remove target_ops parameter.
10649         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10650         (the_sparc64_linux_nat_target): New.
10651         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10652
10653         * spu-linux-nat.c (spu_linux_nat_target): New class.
10654         (the_spu_linux_nat_target): New.
10655         (spu_child_post_startup_inferior, spu_child_post_attach)
10656         (spu_child_wait, spu_fetch_inferior_registers)
10657         (spu_store_inferior_registers, spu_xfer_partial)
10658         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10659         methods.
10660         (_initialize_spu_nat): Adjust to C++ification.
10661
10662         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10663         (the_tilegx_linux_nat_target): New.
10664         (fetch_inferior_registers, store_inferior_registers):
10665         Refactor as methods.
10666         (_initialize_tile_linux_nat): Adjust to C++ification.
10667
10668         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10669         (the_xtensa_linux_nat_target): New.
10670         (xtensa_linux_fetch_inferior_registers)
10671         (xtensa_linux_store_inferior_registers): Refactor as
10672         xtensa_linux_nat_target methods.
10673         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10674
10675         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10676         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10677         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10678         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10679         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10680         (fbsd_stopped_by_sw_breakpoint)
10681         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10682         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10683         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10684         (fbsd_post_startup_inferior, fbsd_post_attach)
10685         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10686         (fbsd_set_syscall_catchpoint)
10687         (super_xfer_partial, super_resume, super_wait)
10688         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10689         (fbsd_handle_debug_trap): Remove target_ops parameter.
10690         (fbsd_nat_add_target): Delete.
10691         * fbsd-nat.h: Include "inf-ptrace.h".
10692         (fbsd_nat_add_target): Delete.
10693         (USE_SIGTRAP_SIGINFO): Define.
10694         (fbsd_nat_target): New class.
10695
10696         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10697         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10698         (amd64bsd_target): Delete.
10699         * amd64-bsd-nat.h: New file.
10700         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10701         "x86-bsd-nat.h".
10702         (amd64_fbsd_nat_target): New class.
10703         (the_amd64_fbsd_nat_target): New.
10704         (amd64fbsd_read_description): Refactor as method of
10705         amd64_fbsd_nat_target.
10706         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10707         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10708         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10709         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10710         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10711         (i386bsd_target): Delete.
10712         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10713         (i386bsd_fetch_inferior_registers)
10714         (i386bsd_store_inferior_registers): Declare.
10715         (i386_bsd_nat_target): New class.
10716         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10717         (the_i386_fbsd_nat_target): New.
10718         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10719         i386_fbsd_nat_target methods.
10720         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10721         (_initialize_i386fbsd_nat): Adjust to C++ification.
10722         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10723         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10724         (_initialize_x86_bsd_nat): Adjust to C++ification.
10725         * x86-bsd-nat.h: Include "x86-nat.h".
10726         (x86bsd_target): Delete declaration.
10727         (x86bsd_nat_target): New class.
10728
10729         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10730         (the_aarch64_fbsd_nat_target): New.
10731         (aarch64_fbsd_fetch_inferior_registers)
10732         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10733         aarch64_fbsd_nat_target.
10734         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10735         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10736         (the_alpha_bsd_nat_target): New.
10737         (alphabsd_fetch_inferior_registers)
10738         (alphabsd_store_inferior_registers): Refactor as
10739         alpha_bsd_nat_target methods.
10740         (_initialize_alphabsd_nat): Refactor as methods of
10741         alpha_bsd_nat_target.
10742         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10743         (the_amd64_nbsd_nat_target): New.
10744         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10745         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10746         (the_amd64_obsd_nat_target): New.
10747         (_initialize_amd64obsd_nat): Adjust to C++ification.
10748         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10749         (the_arm_fbsd_nat_target): New.
10750         (arm_fbsd_fetch_inferior_registers)
10751         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10752         (_initialize_arm_fbsd_nat): Refactor as methods of
10753         arm_fbsd_nat_target.
10754         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10755         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10756         (the_arm_netbsd_nat_target): New.
10757         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10758         arm_netbsd_nat_target.
10759         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10760         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10761         (the_hppa_nbsd_nat_target): New.
10762         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10763         hppa_nbsd_nat_target methods.
10764         (_initialize_hppanbsd_nat): Adjust to C++ification.
10765         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10766         (the_hppa_obsd_nat_target): New.
10767         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10768         methods of hppa_obsd_nat_target.
10769         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10770         add_target.
10771         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10772         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10773         add_target.
10774         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10775         (_initialize_i386obsd_nat): Use add_target.
10776         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10777         (the_m68k_bsd_nat_target): New.
10778         (m68kbsd_fetch_inferior_registers)
10779         (m68kbsd_store_inferior_registers): Refactor as methods of
10780         m68k_bsd_nat_target.
10781         (_initialize_m68kbsd_nat): Adjust to C++ification.
10782         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10783         (the_mips_fbsd_nat_target): New.
10784         (mips_fbsd_fetch_inferior_registers)
10785         (mips_fbsd_store_inferior_registers): Refactor as methods of
10786         mips_fbsd_nat_target.
10787         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10788         add_target.
10789         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10790         (the_mips_nbsd_nat_target): New.
10791         (mipsnbsd_fetch_inferior_registers)
10792         (mipsnbsd_store_inferior_registers): Refactor as methods of
10793         mips_nbsd_nat_target.
10794         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10795         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10796         (the_mips64_obsd_nat_target): New.
10797         (mips64obsd_fetch_inferior_registers)
10798         (mips64obsd_store_inferior_registers): Refactor as methods of
10799         mips64_obsd_nat_target.
10800         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10801         add_target.
10802         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10803         nbsd_nat_target.
10804         * nbsd-nat.h: Include "inf-ptrace.h".
10805         (nbsd_nat_target): New class.
10806         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10807         (obsd_wait): Refactor as methods of obsd_nat_target.
10808         (obsd_add_target): Delete.
10809         * obsd-nat.h: Include "inf-ptrace.h".
10810         (obsd_nat_target): New class.
10811         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10812         (the_ppc_fbsd_nat_target): New.
10813         (ppcfbsd_fetch_inferior_registers)
10814         (ppcfbsd_store_inferior_registers): Refactor as methods of
10815         ppc_fbsd_nat_target.
10816         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10817         add_target.
10818         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10819         (the_ppc_nbsd_nat_target): New.
10820         (ppcnbsd_fetch_inferior_registers)
10821         (ppcnbsd_store_inferior_registers): Refactor as methods of
10822         ppc_nbsd_nat_target.
10823         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10824         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10825         (the_ppc_obsd_nat_target): New.
10826         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10827         methods of ppc_obsd_nat_target.
10828         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10829         add_target.
10830         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10831         (the_sh_nbsd_nat_target): New.
10832         (shnbsd_fetch_inferior_registers)
10833         (shnbsd_store_inferior_registers): Refactor as methods of
10834         sh_nbsd_nat_target.
10835         (_initialize_shnbsd_nat): Adjust to C++ification.
10836         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10837         (inf_ptrace_xfer_partial): Delete.
10838         (sparc_xfer_partial, sparc_target): Delete.
10839         * sparc-nat.h (sparc_fetch_inferior_registers)
10840         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10841         (sparc_target): Delete function declaration.
10842         (sparc_target): New template class.
10843         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10844         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10845         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10846         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10847         add_target.
10848         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10849         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10850         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10851         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10852         add_target.
10853         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10854         (the_vax_bsd_nat_target): New.
10855         (vaxbsd_fetch_inferior_registers)
10856         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10857         methods.
10858         (_initialize_vaxbsd_nat): Adjust to C++ification.
10859
10860         * bsd-kvm.c (bsd_kvm_target): New class.
10861         (bsd_kvm_ops): Now a bsd_kvm_target.
10862         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10863         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10864         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10865         bsd_kvm_target.
10866         (bsd_kvm_return_one): Delete.
10867         (bsd_kvm_add_target): Adjust to C++ification.
10868
10869         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10870         (nto_procfs_target_procfs): New classes.
10871         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10872         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10873         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10874         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10875         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10876         (procfs_remove_hw_breakpoint, procfs_resume)
10877         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10878         (procfs_kill_inferior, procfs_store_registers)
10879         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10880         as methods of nto_procfs_target.
10881         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10882         (nto_native_ops): Delete.
10883         (procfs_open, procfs_native_open): Delete.
10884         (nto_native_ops): Now an nto_procfs_target_native.
10885         (init_procfs_targets): Adjust to C++ification.
10886         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10887         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10888         Refactor as methods of nto_procfs_target.
10889
10890         * go32-nat.c (go32_nat_target): New class.
10891         (the_go32_nat_target): New.
10892         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10893         (go32_store_registers, go32_xfer_partial, go32_files_info)
10894         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10895         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10896         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10897         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10898         (go32_target): Delete.
10899         (_initialize_go32_nat): Adjust to C++ification.
10900
10901         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10902         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10903         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10904         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10905         gnu_nat_target.
10906         (gnu_target): Delete.
10907         * gnu-nat.h (gnu_target): Delete.
10908         (gnu_nat_target): New class.
10909         * i386-gnu-nat.c (gnu_base_target): New.
10910         (i386_gnu_nat_target): New class.
10911         (the_i386_gnu_nat_target): New.
10912         (_initialize_i386gnu_nat): Adjust to C++ification.
10913
10914 2018-05-02  Pedro Alves  <palves@redhat.com>
10915
10916         * bfd-target.c (target_bfd_xclose): Rename to ...
10917         (target_bfd_close): ... this.
10918         (target_bfd_reopen): Adjust.
10919         * target.c (target_close): Remove references to to_xclose.
10920         * target.h (target_ops::to_xclose): Delete.
10921         (target_ops::to_close): Update comments.
10922
10923 2018-05-02  Pedro Alves  <palves@redhat.com>
10924
10925         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10926         "linux-nat.h".
10927         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10928         * inf-ptrace.c (inf_ptrace_register_u_offset)
10929         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10930         (inf_ptrace_store_register, inf_ptrace_store_registers)
10931         (inf_ptrace_trad_target): Move to ...
10932         * linux-nat-trad.c: ... this new file.
10933         * linux-nat-trad.h: New file.
10934         * linux-nat.c (linux_target_install_ops): Make extern.
10935         (linux_trad_target): Delete.
10936         * linux-nat.h (linux_trad_target): Delete declaration.
10937         (linux_target_install_ops): Declare.
10938         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10939         "linux-nat.h".
10940
10941 2018-05-02  Pedro Alves  <palves@redhat.com>
10942
10943         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10944         procfs_target/add_target here.
10945         * procfs.c (procfs_target): Make static.
10946         (_initialize_procfs): Call add_target here.
10947         * procfs.h (struct target_ops): Remove forward declaration.
10948         (procfs_target): Remove declaration.
10949         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10950
10951 2018-05-02  Pedro Alves  <palves@redhat.com>
10952
10953         * procfs.c (procfs_stopped_by_watchpoint)
10954         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10955         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10956         Forward declare.
10957         (procfs_use_watchpoints): Delete, move contents...
10958         (procfs_target): ... here.
10959         * procfs.h (procfs_use_watchpoints): Delete declaration.
10960         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10961         procfs_use_watchpoints.
10962         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10963         procfs_use_watchpoints.
10964
10965 2018-05-02  Tom Tromey  <tom@tromey.com>
10966
10967         PR python/20084:
10968         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10969         and var_zuinteger_unlimited.
10970         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10971         and PARAM_ZUINTEGER_UNLIMITED.
10972         (set_parameter_value): Handle var_zuinteger and
10973         var_zuinteger_unlimited.
10974         (add_setshow_generic): Likewise.
10975         (parmpy_init): Likewise.
10976
10977 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10978
10979         PR rust/23124
10980         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10981         pointer is not null before dereferencing it.
10982
10983 2018-04-30  Tom Tromey  <tom@tromey.com>
10984
10985         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10986         is_mi_like_p.
10987
10988 2018-04-30  Tom Tromey  <tom@tromey.com>
10989
10990         * breakpoint.c (mention): Remove use of is_mi_like_p.
10991         (print_mention_ranged_breakpoint): Likewise.
10992         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10993         of is_mi_like_p.
10994
10995 2018-04-30  Tom Tromey  <tom@tromey.com>
10996
10997         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10998
10999 2018-04-30  Tom Tromey  <tom@tromey.com>
11000
11001         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11002         (info_spu_event_command): Remove some uses of is_mi_like_p.
11003
11004 2018-04-30  Tom Tromey  <tom@tromey.com>
11005
11006         * python/py-framefilter.c (py_print_single_arg)
11007         (enumerate_locals, py_print_args, py_print_frame): Remove some
11008         uses of is_mi_like_p.
11009
11010 2018-04-30  Tom Tromey  <tom@tromey.com>
11011
11012         * ui-out.c: Update.
11013         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11014         * ui-out.h (ui_out::is_mi_like_p): Now const.
11015         (ui_out::do_is_mi_like_p): Now const.
11016         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11017
11018 2018-04-30  Tom Tromey  <tom@tromey.com>
11019
11020         * varobj.c (varobj_set_visualizer): Use new_reference.
11021         * python/python.c (gdbpy_decode_line): Use new_reference.
11022         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11023         new_reference.
11024
11025 2018-04-30  Tom Tromey  <tom@tromey.com>
11026
11027         * varobj.c (install_new_value): Use new_reference.
11028         * value.h (value_incref): Return void.  Swap intro comment with
11029         value_decref.
11030         * value.c (set_value_parent): Use new_reference.
11031         (value_incref): Return void.  Update intro comment.
11032         (release_value): Use new_reference.
11033         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11034
11035 2018-04-30  Tom Tromey  <tom@tromey.com>
11036
11037         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11038         * gdb_bfd.h (new_bfd_ref): Remove.
11039         (gdb_bfd_open): Update comment.
11040         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11041         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11042         (gdb_bfd_fdopenr): Use new_reference.
11043         * exec.c (exec_file_attach): Use new_reference.
11044
11045 2018-04-30  Tom Tromey  <tom@tromey.com>
11046
11047         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11048         method.
11049
11050 2018-04-30  Tom Tromey  <tom@tromey.com>
11051
11052         * jit.c (jit_read_code_entry): Use type_align.
11053         * i386-tdep.c (i386_gdbarch_init): Don't call
11054         set_gdbarch_long_long_align_bit.
11055         * gdbarch.sh: Remove long_long_align_bit.
11056         * gdbarch.c, gdbarch.h: Rebuild.
11057         * arc-tdep.c (arc_type_align): New function.
11058         (arc_gdbarch_init): Use arc_type_align.  Don't call
11059         set_gdbarch_long_long_align_bit.
11060
11061 2018-04-30  Tom Tromey  <tom@tromey.com>
11062
11063         * rust-lang.c (rust_type_alignment): Remove.
11064         (rust_composite_type): Use type_align.
11065
11066 2018-04-30  Tom Tromey  <tom@tromey.com>
11067
11068         * NEWS: Mention Type.align.
11069         * python/py-type.c (typy_get_alignof): New function.
11070         (type_object_getset): Add "alignof".
11071
11072 2018-04-30  Tom Tromey  <tom@tromey.com>
11073
11074         PR exp/17095:
11075         * NEWS: Update.
11076         * std-operator.def (UNOP_ALIGNOF): New operator.
11077         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11078         New.
11079         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11080         * c-lang.c (c_op_print_tab): Add alignof.
11081         * c-exp.y (ALIGNOF): New token.
11082         (exp): Add "ALIGNOF" production.
11083         (ident_tokens): Add _Alignof and alignof.
11084
11085 2018-04-30  Tom Tromey  <tom@tromey.com>
11086
11087         * i386-tdep.c (i386_type_align): New function.
11088         (i386_gdbarch_init): Update.
11089         * gdbarch.sh (type_align): New method.
11090         * gdbarch.c, gdbarch.h: Rebuild.
11091         * arch-utils.h (default_type_align): Declare.
11092         * arch-utils.c (default_type_align): New function.
11093         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11094         (struct type) <align_log2>: New field.
11095         <instance_flags>: Now a bitfield.
11096         (TYPE_RAW_ALIGN): New macro.
11097         (type_align, type_raw_align, set_type_align): Declare.
11098         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11099         functions.
11100         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11101         (get_alignment, maybe_set_alignment): New functions.
11102         (read_structure_type, read_enumeration_type, read_array_type)
11103         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11104         (read_subrange_type, read_base_type): Set type alignment.
11105
11106 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11107
11108         * dwarf2read.c (read_index_from_section): Use bool.
11109
11110 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11111
11112         PR gdb/22950
11113         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11114         with #ifdef.
11115
11116 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11117
11118         PR build/22873
11119         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11120         last step, and do it atomically.
11121
11122 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11123
11124         * compile/compile-c-types.c (convert_int, convert_float):
11125         Update for C FE v1.
11126
11127 2018-04-27  Tom Tromey  <tom@tromey.com>
11128
11129         PR rust/22545:
11130         * rust-lang.c (rust_inclusive_range_type_p): New function.
11131         (rust_range): Handle inclusive ranges.
11132         (rust_compute_range): Likewise.
11133         * rust-exp.y (struct rust_op) <inclusive>: New field.
11134         (DOTDOTEQ): New constant.
11135         (range_expr): Add "..=" productions.
11136         (operator_tokens): Add "..=" token.
11137         (ast_range): Add "inclusive" parameter.
11138         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11139         ranges.
11140         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11141         bounds values.
11142         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11143         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11144         Update comments.
11145         * expprint.c (print_subexp_standard): Handle new bounds values.
11146         (dump_subexp_body_standard): Likewise.
11147
11148 2018-04-27  Tom Tromey  <tom@tromey.com>
11149
11150         * configure: Rebuild.
11151         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11152         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11153         "OVERRIDE".
11154         (class symbol_needs_eval_context): Likewise.
11155         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11156         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11157         "virtual".
11158         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11159         "override".
11160         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11161         * aarch64-tdep.c (instruction_reader::read): Use "override".
11162         (instruction_reader_test::read): Likewise.
11163         * arm-tdep.c (instruction_reader::read): Use "override".
11164         (instruction_reader_thumb::read): Likewise.
11165
11166 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11167
11168         PR remote/9665
11169         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11170         instead of remote_send.
11171         (remote_send): Remove.
11172
11173 2018-04-26  Pedro Alves  <palves@redhat.com>
11174
11175         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11176         find_function_start_sal instead of find_pc_line.
11177
11178 2018-04-26  Pedro Alves  <palves@redhat.com>
11179
11180         * breakpoint.c (set_breakpoint_location_function): Handle
11181         mst_data_gnu_ifunc.
11182         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11183         * elfread.c (elf_symtab_read): Give data symbols with
11184         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11185         (elf_rel_plt_read): Update comment.
11186         * linespec.c (convert_linespec_to_sals): Handle
11187         mst_data_gnu_ifunc.
11188         (minsym_found): Handle mst_data_gnu_ifunc.
11189         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11190         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11191         * parse.c (find_minsym_type_and_address): Handle
11192         mst_data_gnu_ifunc.
11193         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11194         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11195         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11196         comment.
11197         <mst_data_gnu_ifunc>: New enumerator.
11198
11199 2018-04-26  Pedro Alves  <palves@redhat.com>
11200
11201         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11202         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11203         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11204         Handle it.
11205         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11206         (lookup_minimal_symbol_by_pc): Adjust.
11207         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11208         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11209         * minsyms.h (lookup_msym_prefer): New enum.
11210         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11211         parameter by a lookup_msym_prefer parameter.
11212
11213 2018-04-26  Pedro Alves  <palves@redhat.com>
11214
11215         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11216         ends in "@plt" instead of looking at the symbol's section.
11217
11218 2018-04-26  Pedro Alves  <palves@redhat.com>
11219
11220         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11221         all references.
11222         (find_pc_partial_function_gnu_ifunc): Rename to ...
11223         (find_pc_partial_function): ... this, and remove references to
11224         'is_gnu_ifunc_p'.
11225         (find_pc_partial_function): Delete old implementation.
11226         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11227
11228 2018-04-26  Pedro Alves  <palves@redhat.com>
11229
11230         * linespec.c (struct bound_minimal_symbol_search_key): New.
11231         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11232         skip first line if we found a GNU ifunc minimal symbol by name.
11233         (compare_msymbols): Change parameters to work with a destructured
11234         lhs minsym.
11235         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11236         functions.
11237
11238 2018-04-26  Pedro Alves  <palves@redhat.com>
11239
11240         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11241         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11242         address/name.
11243         (add_location_to_breakpoint): Store the minsym and the objfile in
11244         the breakpoint location.
11245         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11246         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11247         Record the minsym in the sal.
11248         * symtab.h (symtab_and_line) <msymbol>: New field.
11249
11250 2018-04-26  Pedro Alves  <palves@redhat.com>
11251
11252         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11253         unless we actually resolved the ifunc.
11254
11255 2018-04-26  Pedro Alves  <palves@redhat.com>
11256
11257         * c-exp.y (variable production): Prefer ifunc minsyms over
11258         regular function symbols.
11259         * symtab.c (find_gnu_ifunc): New function.
11260         * minsyms.h (lookup_msym_prefer): New enum.
11261         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11262         parameter by a lookup_msym_prefer parameter.
11263         * symtab.h (find_gnu_ifunc): New declaration.
11264
11265 2018-04-26  Pedro Alves  <palves@redhat.com>
11266
11267         * blockframe.c (find_gnu_ifunc_target_type): New function.
11268         (find_function_type): New.
11269         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11270         return a value with a memory address.
11271         (eval_call): For calls to GNU ifunc functions, try to find the
11272         type of the target function from the type that the resolver
11273         returns.
11274         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11275         symbols.
11276         * infcall.c (find_function_return_type): Delete.
11277         (find_function_addr): Add 'function_type' parameter.  For calls to
11278         GNU ifunc functions, try to find the type of the target function
11279         from the type that the resolver returns, and return it via
11280         FUNCTION_TYPE.
11281         (call_function_by_hand_dummy): Adjust to use the function type
11282         returned by find_function_addr.
11283         (find_function_addr): Add 'function_type' parameter and move
11284         description here.
11285         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11286         declarations.
11287
11288 2018-04-26  Pedro Alves  <palves@redhat.com>
11289
11290         * c-exp.y (variable production): Skip finding an alias for ifunc
11291         symbols.
11292
11293 2018-04-26  Pedro Alves  <palves@redhat.com>
11294
11295         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11296
11297 2018-04-25  Pedro Alves  <palves@redhat.com>
11298
11299         * infcmd.c (kill_command): Print the pid as string, not the whole
11300         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11301         message.
11302         * remote.c (remote_detach_1): Print the pid as string, not the
11303         whole thread's ptid.
11304
11305 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11306             Sergio Durigan Junior  <sergiodj@redhat.com>
11307             Pedro Alves  <palves@redhat.com>
11308
11309         * infcmd.c (kill_command): Print message when inferior has
11310         been killed.
11311         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11312         '1'.
11313         (add_inferior): Improve message printed when
11314         'print_inferior_events' is on.
11315         (exit_inferior): Remove message printed when
11316         'print_inferior_events' is on.
11317         (detach_inferior): Improve message printed when
11318         'print_inferior_events' is on.
11319         (initialize_inferiors): Use 'add_inferior_silent' to set
11320         'current_inferior_'.
11321         * inferior.h (print_inferior_events): Declare here as
11322         'extern'.
11323         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11324         '[Detaching...]' messages when 'print_inferior_events' is on.
11325         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11326         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11327         'Detaching after fork from child...', replace it by '... from
11328         parent...'.
11329         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11330         prefix/suffix when printing 'Detaching...' messages.  Print
11331         them when 'print_inferior_events' is on.
11332         * remote.c (remote_detach_1): Print message when detaching
11333         from inferior and '!is_fork_parent'.
11334
11335 2018-04-24  Tom Tromey  <tom@tromey.com>
11336
11337         * cli-out.h: Reindent.
11338
11339 2018-04-24  Tom Tromey  <tom@tromey.com>
11340
11341         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11342         (cli_ui_out::do_field_string): Use fputs_filtered.
11343         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11344
11345 2018-04-23  Tom Tromey  <tom@tromey.com>
11346
11347         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11348         gdb::unique_xmalloc_ptr.
11349
11350 2018-04-23  Tom Tromey  <tom@tromey.com>
11351
11352         * configure: Rebuild.
11353
11354 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11355
11356         PR gdb/23095
11357         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11358         prepare_for_testing.  Set normal_bp to r_debug_state if target
11359         is bsd.
11360
11361 2018-04-21  Pedro Alves  <palves@redhat.com>
11362             Rajendra SY  <rajendra.sy@gmail.com>
11363
11364         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11365         * remote.c (extended_remote_attach): In all-stop mode, mark the
11366         thread as executing.
11367
11368 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11369
11370         * thread.c (thread_apply_all_command): Fix comment.
11371         (thread_command): Fix comment.
11372
11373 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11374
11375         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11376         parameter.
11377         * features/aarch64-core.c (create_feature_aarch64_core):
11378         Regenerate.
11379         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11380         Likewise.
11381         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11382         Likewise.
11383         * features/i386/32bit-avx512.c
11384         (create_feature_i386_32bit_avx512): Likewise.
11385         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11386         Likewise.
11387         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11388         Likewise.
11389         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11390         Likewise.
11391         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11392         Likewise.
11393         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11394         Likewise.
11395         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11396         Likewise.
11397         * features/i386/64bit-avx512.c
11398         (create_feature_i386_64bit_avx512): Likewise.
11399         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11400         Likewise.
11401         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11402         Likewise.
11403         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11404         Likewise.
11405         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11406         Likewise.
11407         * features/i386/64bit-segments.c
11408         (create_feature_i386_64bit_segments): Likewise.
11409         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11410         Likewise.
11411         * features/i386/x32-core.c
11412         (create_feature_i386_x32_core): Likewise.
11413         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11414         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11415         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11416         * target-descriptions.c: In generated code, don't pass xml
11417         filename.
11418
11419 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11420
11421         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11422         (print_xml_feature::visit_post): Likewise.
11423         (print_xml_feature::visit): Likewise.
11424         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11425         (print_xml_feature): Add new class.
11426         * regformats/regdat.sh: Null xmltarget on feature targets.
11427         * target-descriptions.c (struct target_desc): Add xmltarget.
11428         (maintenance_check_tdesc_xml_convert): Add unittest function.
11429         (tdesc_get_features_xml): Add function to get xml.
11430         (maintenance_check_xml_descriptions): Test xml generation.
11431         * xml-tdesc.c (string_read_description_xml): Add function.
11432         * xml-tdesc.h (string_read_description_xml): Add declaration.
11433
11434 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11435
11436         * features/Makefile: Add feature marker to targets with new style
11437         target descriptions.
11438         * regformats/aarch64.dat: Regenerate.
11439         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11440         * regformats/i386/amd64-avx-linux.dat: Likewise.
11441         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11442         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11443         * regformats/i386/amd64-linux.dat: Likewise.
11444         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11445         * regformats/i386/amd64.dat: Likewise.
11446         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11447         * regformats/i386/i386-avx-linux.dat: Likewise.
11448         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11449         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11450         * regformats/i386/i386-linux.dat: Likewise.
11451         * regformats/i386/i386-mmx-linux.dat: Likewise.
11452         * regformats/i386/i386-mpx-linux.dat: Likewise.
11453         * regformats/i386/i386.dat: Likewise.
11454         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11455         * regformats/i386/x32-avx-linux.dat: Likewise.
11456         * regformats/i386/x32-linux.dat: Likewise.
11457         * regformats/tic6x-c62x-linux.dat: Likewise.
11458         * regformats/tic6x-c64x-linux.dat: Likewise.
11459         * regformats/tic6x-c64xp-linux.dat: Likewise.
11460         * regformats/regdat.sh: Parse feature marker.
11461
11462 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11463
11464         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11465         (tdesc_osabi_name): Likewise.
11466         * target-descriptions.c (tdesc_architecture_name): Add new
11467         function.
11468         (tdesc_osabi_name): Likewise.
11469
11470 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11471
11472         * common/tdesc.c (tdesc_predefined_type): Move to here.
11473         (tdesc_named_type): Likewise.
11474         (tdesc_create_vector): Likewise.
11475         (tdesc_create_struct): Likewise.
11476         (tdesc_set_struct_size): Likewise.
11477         (tdesc_create_union): Likewise.
11478         (tdesc_create_flags): Likewise.
11479         (tdesc_create_enum): Likewise.
11480         (tdesc_add_field): Likewise.
11481         (tdesc_add_typed_bitfield): Likewise.
11482         (tdesc_add_bitfield): Likewise.
11483         (tdesc_add_flag): Likewise.
11484         (tdesc_add_enum_value): Likewise.
11485         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11486         (struct tdesc_type_vector): Likewise.
11487         (struct tdesc_type_field): Likewise.
11488         (struct tdesc_type_with_fields): Likewise.
11489         (tdesc_create_enum): Add declaration.
11490         (tdesc_add_typed_bitfield): Likewise.
11491         (tdesc_add_enum_value): Likewise.
11492         * target-descriptions.c (tdesc_type_field): Move from here.
11493         (tdesc_type_builtin): Likewise.
11494         (tdesc_type_vector): Likewise.
11495         (tdesc_type_with_fields): Likewise.
11496         (tdesc_predefined_types): Likewise.
11497         (tdesc_named_type): Likewise.
11498         (tdesc_create_vector): Likewise.
11499         (tdesc_create_struct): Likewise.
11500         (tdesc_set_struct_size): Likewise.
11501         (tdesc_create_union): Likewise.
11502         (tdesc_create_flags): Likewise.
11503         (tdesc_create_enum): Likewise.
11504         (tdesc_add_field): Likewise.
11505         (tdesc_add_typed_bitfield): Likewise.
11506         (tdesc_add_bitfield): Likewise.
11507         (tdesc_add_flag): Likewise.
11508         (tdesc_add_enum_value): Likewise.
11509         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11510         (tdesc_add_typed_bitfield): Likewise.
11511         (tdesc_add_enum_value): Likewise.
11512
11513 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11514
11515         * common/tdesc.c (tdesc_feature::accept): Move to here.
11516         (tdesc_feature::operator==): Likewise.
11517         (tdesc_create_reg): Likewise.
11518         * common/tdesc.h (tdesc_type_kind): Likewise.
11519         (struct tdesc_type): Likewise.
11520         (struct tdesc_feature): Likewise.
11521         * regformats/regdat.sh: Create a feature.
11522         * target-descriptions.c (tdesc_type_kind): Move from here.
11523         (tdesc_type): Likewise.
11524         (tdesc_type_up): Likewise.
11525         (tdesc_feature): Likewise.
11526         (tdesc_create_reg): Likewise.
11527
11528 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11529
11530         * Makefile.in: Add arch/tdesc.c
11531         * common/tdesc.c: New file.
11532         * common/tdesc.h (tdesc_element_visitor): Move to here.
11533         (tdesc_element): Likewise.
11534         (tdesc_reg): Likewise.
11535         (tdesc_reg_up): Likewise.
11536         * regformats/regdef.h (reg): Add offset to constructors.
11537         * target-descriptions.c (tdesc_element_visitor): Move from here.
11538         (tdesc_element): Likewise.
11539         (tdesc_reg): Likewise.
11540         (tdesc_reg_up): Likewise.
11541
11542 2018-04-17  Tom Tromey  <tom@tromey.com>
11543
11544         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11545         discriminant field.
11546
11547 2018-04-17  Tom Tromey  <tom@tromey.com>
11548
11549         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11550
11551 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11552
11553         * symtab.c (print_symbol_info): Skip printing filename and line
11554         number when `last' is NULL.
11555         (symtab_symbol_info): Use empty string instead of NULL for first
11556         invocation of print_symbol_info.
11557         (rbreak_command): Pass NULL to `last' parameter of
11558         print_symbol_info.
11559
11560 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11561
11562         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11563         instead of nullptr.
11564
11565 2018-04-16  Pedro Alves  <palves@redhat.com>
11566
11567         * MAINTAINERS (sh): Remove.
11568         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11569         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11570         (ALLDEPFILES): Remove sh64-tdep.c.
11571         * NEWS: Mentions that support for SH-5/SH64 is removed.
11572         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11573         (sh*-*-openbsd*): Ditto.
11574         (sh64-*-elf*): Remove.
11575         (sh*): Remove.
11576         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11577         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11578         * sh-tdep.c: No longer include "sh64-tdep.h".
11579         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11580         * sh64-tdep.c, sh64-tdep.h: Remove files.
11581
11582 2018-04-16  Pedro Alves  <palves@redhat.com>
11583
11584         * MAINTAINERS: Remove m88k.
11585         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11586         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11587         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11588         * NEWS: Mention that support for m88k was removed.
11589         * configure.host (m88*-*-*): Remove support.
11590         * configure.nat (m88k-*-*): Remove support.
11591         * configure.tgt (m88*-*-openbsd*): Remove.
11592         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11593
11594 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11595
11596         * configure.tgt (x86_tobjs): New variable.
11597         (amd64_tobjs, i386_tobjs): Use it.
11598
11599 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11600
11601         * symtab.c (print_symbol_info): Precede the symbol definition by
11602         the line number when available.
11603         * NEWS: Advertise this enhancement.
11604
11605 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11606
11607         * NEWS (New options): announce set/show record btrace cpu.
11608         * btrace.c: Include record-btrace.h.
11609         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11610         the vendor is unknown.
11611         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11612         Maybe overwrite the btrace configuration's cpu.
11613         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11614         (btrace_fetch): Add cpu parameter.  Update callers.
11615         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11616         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11617         errata workarounds if the vendor is unknown.
11618         * python/py-record-btrace.c: Include record-btrace.h.
11619         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11620         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11621         * record-btrace.c (record_btrace_cpu_state_kind): New.
11622         (record_btrace_cpu): New.
11623         (set_record_btrace_cpu_cmdlist): New.
11624         (record_btrace_get_cpu): New.
11625         (require_btrace_thread, record_btrace_info)
11626         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11627         (cmd_set_record_btrace_cpu_none): New.
11628         (cmd_set_record_btrace_cpu_auto): New.
11629         (cmd_set_record_btrace_cpu): New.
11630         (cmd_show_record_btrace_cpu): New.
11631         (_initialize_record_btrace): Initialize set/show record btrace cpu
11632         commands.
11633         * record-btrace.h (record_btrace_get_cpu): New.
11634
11635 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11636
11637         * record.c (set_record_command): Fix typo in message.
11638
11639 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11640
11641         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11642
11643 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11644
11645         * infrun.c (process_event_stop_test): Call
11646         gdbarch_in_indirect_branch_thunk.
11647         * gdbarch.sh (in_indirect_branch_thunk): New.
11648         * gdbarch.c: Regenerated.
11649         * gdbarch.h: Regenerated.
11650         * x86-tdep.h: New.
11651         * x86-tdep.c: New.
11652         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11653         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11654         (ALLDEPFILES): Add x86-tdep.c.
11655         * arch-utils.h (default_in_indirect_branch_thunk): New.
11656         * arch-utils.c (default_in_indirect_branch_thunk): New.
11657         * i386-tdep: Include x86-tdep.h.
11658         (i386_in_indirect_branch_thunk): New.
11659         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11660         function.
11661         * amd64-tdep: Include x86-tdep.h.
11662         (amd64_in_indirect_branch_thunk): New.
11663         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11664
11665 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11666
11667         PR gdb/23053
11668         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11669         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11670         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11671         regression.
11672
11673 2018-04-12  Tom Tromey  <tom@tromey.com>
11674
11675         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11676         (rust_evaluate_subexp): Likewise.
11677
11678 2018-04-12  Pedro Alves  <palves@redhat.com>
11679
11680         * procfs.c (procfs_detach): Make forward declaration's prototype
11681         match definition's protototype.
11682         (proc_get_LDT_entry): Remove stale do_cleanups call.
11683
11684 2018-04-12  Pedro Alves  <palves@redhat.com>
11685
11686         * target.h (target_ops::to_has_exited): Delete.
11687         (target_has_exited): Delete.
11688         * target-delegates.c: Regenerate.
11689
11690 2018-04-11  Pedro Alves  <palves@redhat.com>
11691
11692         * target.c (fileio_fh_t::t): Add comment.
11693         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11694         (target_fileio_close): Handle a NULL target.
11695         (invalidate_fileio_fh): New.
11696         (target_close): Call it.
11697         * remote.c (remote_hostio_send_command): No longer check whether
11698         remote_desc is open.
11699
11700 2018-04-11  Pedro Alves  <palves@redhat.com>
11701
11702         * target.c (fileio_fh_t): Make it a named struct instead of a
11703         typedef.
11704         (fileio_fh_t::is_closed): New method.
11705         (DEF_VEC_O (fileio_fh_t)): Remove.
11706         (fileio_fhandles): Now a std::vector.
11707         (is_closed_fileio_fh): Delete.
11708         (acquire_fileio_fd): Adjust.  Rename parameters.
11709         (release_fileio_fd): Adjust.
11710         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11711         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11712         (target_fileio_close): Adjust.
11713
11714 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11715
11716         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11717         index.
11718
11719 2018-04-10  Pedro Alves  <palves@redhat.com>
11720
11721         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11722         (scoped_finish_thread_state): New class.
11723         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11724         cleanup.
11725         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11726         (fetch_inferior_event, normal_stop): Likewise.
11727         * thread.c (finish_thread_state_cleanup): Delete.
11728
11729 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11730             Pedro Alves  <palves@redhat.com>
11731
11732         * value.c: Include "selftest.h" and "common/array-view.h".
11733         (struct range) <operator ==>: New.
11734         (test_ranges_contain): New.
11735         (check_ranges_vector): New.
11736         (test_insert_into_bit_range_vector): New.
11737         (_initialize_values): Register selftests.
11738         * common/array-view.h (operator==, operator!=): New.
11739
11740 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11741
11742         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11743         an iterator.
11744         * inline-frame.c: Include <algorithm>.
11745         (struct inline_state): Add constructor.
11746         (inline_state_s): Remove.
11747         (DEF_VEC_O(inline_state_s)): Remove.
11748         (inline_states): Change type to std::vector.
11749         (find_inline_frame_state): Adjust to std::vector.
11750         (allocate_inline_frame_state): Remove.
11751         (clear_inline_frame_state): Adjust to std::vector.
11752         (skip_inline_frames): Adjust to std::vector.
11753
11754 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11755
11756         * tracepoint.h (struct trace_state_variable): Add constructor.
11757         <name>: Change type to std::string.
11758         * tracepoint.c (tsv_s): Remove.
11759         (DEF_VEC_O(tsv_s)): Remove.
11760         (tvariables): Change to std::vector.
11761         (create_trace_state_variable): Adjust to std::vector.
11762         (find_trace_state_variable): Likewise.
11763         (find_trace_state_variable_by_number): Likewise.
11764         (delete_trace_state_variable): Likewise.
11765         (trace_variable_command): Adjust to std::string.
11766         (delete_trace_variable_command): Likewise.
11767         (tvariables_info_1): Adjust to std::vector.
11768         (save_trace_state_variables): Likewise.
11769         (start_tracing): Likewise.
11770         (merge_uploaded_trace_state_variables): Adjust to std::vector
11771         and std::string.
11772         * target.h (struct target_ops)
11773         <to_download_trace_state_variable>: Pass reference to
11774         trace_state_variable.
11775         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11776         * target-delegates.c: Re-generate.
11777         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11778         (mi_tsv_deleted): Likewise.
11779         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11780         * remote.c (remote_download_trace_state_variable): Change
11781         pointer to reference and adjust.
11782         * make-target-delegates (parse_argtypes): Handle references.
11783         (write_function_header): Likewise.
11784         (munge_type): Likewise.
11785
11786 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11787
11788         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11789         string_view-selftests.c.
11790         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11791         testsuite.
11792         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11793         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11794         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11795         * unittests/basic_string_view/element_access/char/1.cc:
11796         Likewise.
11797         * unittests/basic_string_view/element_access/char/empty.cc:
11798         Likewise.
11799         * unittests/basic_string_view/element_access/char/front_back.cc:
11800         Likewise.
11801         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11802         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11803         Likewise.
11804         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11805         Likewise.
11806         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11807         Likewise.
11808         * unittests/basic_string_view/operations/compare/char/1.cc:
11809         Likewise.
11810         * unittests/basic_string_view/operations/compare/char/13650.cc:
11811         Likewise.
11812         * unittests/basic_string_view/operations/copy/char/1.cc:
11813         Likewise.
11814         * unittests/basic_string_view/operations/data/char/1.cc:
11815         Likewise.
11816         * unittests/basic_string_view/operations/find/char/1.cc:
11817         Likewise.
11818         * unittests/basic_string_view/operations/find/char/2.cc:
11819         Likewise.
11820         * unittests/basic_string_view/operations/find/char/3.cc:
11821         Likewise.
11822         * unittests/basic_string_view/operations/find/char/4.cc:
11823         Likewise.
11824         * unittests/basic_string_view/operations/rfind/char/1.cc:
11825         Likewise.
11826         * unittests/basic_string_view/operations/rfind/char/2.cc:
11827         Likewise.
11828         * unittests/basic_string_view/operations/rfind/char/3.cc:
11829         Likewise.
11830         * unittests/basic_string_view/operations/substr/char/1.cc:
11831         Likewise.
11832         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11833         * unittests/string_view-selftests.c: New file.
11834
11835 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11836
11837         * unittests/basic_string_view/capacity/1.cc: New file.
11838         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11839         * unittests/basic_string_view/cons/char/1.cc: New file.
11840         * unittests/basic_string_view/cons/char/2.cc: New file.
11841         * unittests/basic_string_view/cons/char/3.cc: New file.
11842         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11843         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11844         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11845         * unittests/basic_string_view/element_access/char/1.cc: New file.
11846         * unittests/basic_string_view/element_access/char/2.cc: New file.
11847         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11848         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11849         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11850         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11851         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11852         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11853         * unittests/basic_string_view/include.cc: New file.
11854         * unittests/basic_string_view/inserters/char/1.cc: New file.
11855         * unittests/basic_string_view/inserters/char/2.cc: New file.
11856         * unittests/basic_string_view/inserters/char/3.cc: New file.
11857         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11858         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11859         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11860         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11861         * unittests/basic_string_view/literals/types.cc: New file.
11862         * unittests/basic_string_view/literals/values.cc: New file.
11863         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11864         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11865         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11866         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11867         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11868         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11869         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11870         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11871         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11872         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11873         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11874         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11875         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11876         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11877         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11878         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11879         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11880         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11881         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11882         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11883         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11884         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11885         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11886         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11887         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11888         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11889         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11890         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11891         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11892         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11893         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11894         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11895         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11896         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11897         * unittests/basic_string_view/operators/char/2.cc: New file.
11898         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11899         * unittests/basic_string_view/range_access/char/1.cc: New file.
11900         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11901         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11902         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11903         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11904         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11905         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11906         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11907         * unittests/basic_string_view/typedefs.cc: New file.
11908         * unittests/basic_string_view/types/1.cc: New file.
11909
11910 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11911
11912         * common/gdb_string_view.h: Remove libstdc++ implementation
11913         details, adjust to gdb reality.
11914         * common/gdb_string_view.tcc: Likewise.
11915         * cli/cli-script.c (struct string_view): Remove.
11916         (user_args) <m_args>: Change element type to gdb::string_view.
11917         (user_args::insert_args): Adjust.
11918
11919 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11920
11921         * common/gdb_string_view.h: New file.
11922         * common/gdb_string_view.tcc: New file.
11923
11924 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11925
11926         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11927         * configure: Re-generate.
11928
11929 2018-04-09  Pedro Alves  <palves@redhat.com>
11930
11931         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11932         (set_target_gdbarch): Call
11933         gdb::observers::architecture_changed.notify instead of
11934         observer_notify_architecture_changed.
11935
11936 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11937
11938         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11939         (do_restore_current_traceframe_cleanup): Remove.
11940         (restore_current_traceframe_cleanup_dtor): Remove.
11941         (make_cleanup_restore_current_traceframe): Remove.
11942         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11943         New.
11944         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11945         * infrun.c (fetch_inferior_event): Use
11946         scoped_restore_current_traceframe.
11947
11948 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11949
11950         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11951         Remove.
11952         <n_allocated_type_units>: Remove.
11953         <all_type_units>: Change to std::vector.
11954         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11955         to std::vector change.
11956         (dwarf2_per_objfile::get_cutu): Likewise.
11957         (dwarf2_per_objfile::get_tu): Likewise.
11958         (create_signatured_type_table_from_index): Likewise.
11959         (create_signatured_type_table_from_debug_names): Likewise.
11960         (dw2_symtab_iter_next): Likewise.
11961         (dw2_print_stats): Likewise.
11962         (dw2_expand_all_symtabs): Likewise.
11963         (dw2_expand_marked_cus): Likewise.
11964         (dw2_debug_names_iterator::next): Likewise.
11965         (dwarf2_initialize_objfile): Likewise.
11966         (add_signatured_type_cu_to_table): Likewise.
11967         (create_all_type_units): Likewise.
11968         (add_type_unit): Likewise.
11969         (struct tu_abbrev_offset): Add constructor.
11970         (build_type_psymtabs_1): Adjust to std::vector change.
11971         (print_tu_stats): Likewise.
11972         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11973         (write_debug_names): Likewise.
11974
11975 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11976
11977         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11978         Make an std::vector.
11979         <n_comp_units>: Remove.
11980         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11981         to std::vector change.
11982         (dwarf2_per_objfile::get_cutu): Likewise.
11983         (dwarf2_per_objfile::get_cu): Likewise.
11984         (create_cus_from_index): Likewise.
11985         (create_addrmap_from_index): Likewise.
11986         (create_addrmap_from_aranges): Likewise.
11987         (dwarf2_read_index): Likewise.
11988         (dw2_find_last_source_symtab): Likewise.
11989         (dw2_map_symtabs_matching_filename): Likewise.
11990         (dw2_symtab_iter_next): Likewise.
11991         (dw2_print_stats): Likewise.
11992         (dw2_expand_all_symtabs): Likewise.
11993         (dw2_expand_symtabs_with_fullname): Likewise.
11994         (dw2_expand_marked_cus): Likewise.
11995         (dw2_map_symbol_filenames): Likewise.
11996         (create_cus_from_debug_names): Likewise.
11997         (dwarf2_read_debug_names): Likewise.
11998         (dw2_debug_names_iterator::next): Likewise.
11999         (dwarf2_initialize_objfile): Likewise.
12000         (set_partial_user): Likewise.
12001         (dwarf2_build_psymtabs_hard): Likewise.
12002         (read_comp_units_from_section): Remove arguments, adjust to
12003         std::vector change.
12004         (create_all_comp_units): Adjust to std::vector and
12005         read_comp_units_from_section changes.
12006         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12007         change.
12008         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12009         (psyms_seen_size): Likewise.
12010         (write_gdbindex): Likewise.
12011         (write_debug_names): Likewise.
12012
12013 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12014
12015         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12016         with dwarf2_per_objfile.
12017         (create_cus_from_index): Likewise.
12018         (create_signatured_type_table_from_index): Likewise.
12019         (dwarf2_read_index): Likewise.
12020         (dwarf2_initialize_objfile): Likewise.
12021         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12022         per_cu rather than get_dwarf2_per_objfile.
12023
12024 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12025
12026         * dwarf2read.h (struct signatured_type): Forward declare.
12027         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12028         New methods.
12029         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12030         (dw2_get_cutu): ...this.
12031         (dwarf2_per_objfile::get_cu): Rename from...
12032         (dw2_get_cu): ...this.
12033         (dwarf2_per_objfile::get_tu): New.
12034         (create_addrmap_from_index): Adjust.
12035         (create_addrmap_from_aranges): Adjust.
12036         (dw2_find_last_source_symtab): Adjust.
12037         (dw2_map_symtabs_matching_filename): Adjust.
12038         (dw2_symtab_iter_next): Adjust.
12039         (dw2_print_stats): Adjust.
12040         (dw2_expand_all_symtabs): Adjust.
12041         (dw2_expand_symtabs_with_fullname): Adjust.
12042         (dw2_expand_marked_cus): Adjust.
12043         (dw_expand_symtabs_matching_file_matcher): Adjust.
12044         (dw2_map_symbol_filenames): Adjust.
12045         (dw2_debug_names_iterator::next): Adjust.
12046         (dwarf2_initialize_objfile): Adjust.
12047         (set_partial_user): Adjust.
12048         (dwarf2_build_psymtabs_hard): Adjust.
12049
12050 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12051
12052         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12053         Remove unused variables.
12054         (dw2_map_symtabs_matching_filename): Likewise.
12055         (dwarf2_record_block_ranges): Likewise.
12056         (dwarf2_read_addr_index): Likewise.
12057         (follow_die_offset): Likewise.
12058
12059 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12060
12061         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12062         to symbol_file_add_main.
12063
12064 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12065
12066         PR mi/22299
12067         * mi/mi-console.c (do_fputc_async_safe): New.
12068         (mi_console_file::write_async_safe): New.
12069         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12070         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12071         New.
12072         * ui-file.c (ui_file::putstrn): Adjust call to
12073         fputstrn_unfiltered.
12074         * utils.c (printchar): Replace do_fputs and do_fprintf
12075         parameters by do_fputc.
12076         (fputstr_filtered): Adjust call to printchar.
12077         (fputstr_unfiltered): Likewise.
12078         (fputstrn_filtered): Likewise.
12079         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12080         printchar.
12081         * utils.h (do_fputc_ftype): New typedef.
12082         (fputstrn_unfiltered): Add do_fputc parameter.
12083
12084 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12085
12086         * regformats/i386/i386-avx.dat: Remove.
12087
12088 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12089
12090         PR gdb/22979
12091         * amd64-tdep.c (amd64_none_init_abi): New function.
12092         (amd64_x32_none_init_abi): New function.
12093         (_initialize_amd64_tdep): Register handlers for x86-64 and
12094         x64_32 with GDB_OSABI_NONE.
12095         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12096         GDB_OSABI_NONE osabi.
12097
12098 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12099
12100         PR gdb/22980
12101         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12102         GDB_OSABI_NONE.
12103         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12104         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12105
12106 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12107
12108         * common/byte-vector.h (char_vector): New type.
12109         * target.h (target_read_alloc): Return
12110         gdb::optional<byte_vector>.
12111         (target_read_stralloc): Return gdb::optional<char_vector>.
12112         (target_get_osdata): Return gdb::optional<char_vector>.
12113         * target.c (target_read_alloc_1): Templatize.  Replacement
12114         manual memory management with vector.
12115         (target_read_alloc): Change return type, adjust.
12116         (target_read_stralloc): Change return type, adjust.
12117         (target_get_osdata): Change return type, adjust.
12118         * auxv.c (struct auxv_info) <length>: Remove.
12119         <data>: Change type to gdb::optional<byte_vector>.
12120         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12121         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12122         (target_auxv_search): Adjust.
12123         (fprint_target_auxv): Adjust.
12124         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12125         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12126         (linux_make_corefile_notes): Adjust.
12127         * osdata.c (get_osdata): Adjust.
12128         * remote.c (remote_get_threads_with_qxfer): Adjust.
12129         (remote_memory_map): Adjust.
12130         (remote_traceframe_info): Adjust.
12131         (btrace_read_config): Adjust.
12132         (remote_read_btrace): Adjust.
12133         (remote_pid_to_exec_file): Adjust.
12134         * solib-aix.c (solib_aix_get_library_list): Adjust.
12135         * solib-dsbt.c (decode_loadmap): Don't free buf.
12136         (dsbt_get_initial_loadmaps): Adjust.
12137         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12138         * solib-target.c (solib_target_current_sos): Adjust.
12139         * tracepoint.c (sdata_make_value): Adjust.
12140         * xml-support.c (xinclude_start_include): Adjust.
12141         (xml_fetch_content_from_file): Adjust.
12142         * xml-support.h (xml_fetch_another): Change return type.
12143         (xml_fetch_content_from_file): Change return type.
12144         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12145         * xml-tdesc.c (file_read_description_xml): Adjust.
12146         (fetch_available_features_from_target): Change return type.
12147         (target_fetch_description_xml): Adjust.
12148         (target_read_description_xml): Adjust.
12149
12150 2018-04-06  Tom Tromey  <tom@tromey.com>
12151
12152         * value.c (~value): Update.
12153         (struct value) <contents>: Now unique_xmalloc_ptr.
12154         (value_contents_bits_eq, allocate_value_contents)
12155         (value_contents_raw, value_contents_all_raw)
12156         (value_contents_for_printing, value_contents_for_printing_const)
12157         (set_value_enclosing_type): Update.
12158
12159 2018-04-06  Tom Tromey  <tom@tromey.com>
12160
12161         * value.c (range_s): Remove typedef, VEC.
12162         (struct range): Add operator<.
12163         (range_lessthan): Remove.
12164         (ranges_contain): Change type.
12165         (~value): Update.
12166         (struct value) <unavailable, optimized_out>: Now std::vector.
12167         (value_entirely_available)
12168         (value_entirely_covered_by_range_vector)
12169         (value_entirely_unavailable, value_entirely_optimized_out):
12170         Update.
12171         (insert_into_bit_range_vector): Change argument type.
12172         (find_first_range_overlap): Likewise.
12173         (struct ranges_and_idx, value_contents_bits_eq)
12174         (require_not_optimized_out, require_available): Update.
12175         (ranges_copy_adjusted): Change argument types.
12176         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12177
12178 2018-04-06  Tom Tromey  <tom@tromey.com>
12179
12180         * value.c (~value): Update.
12181         (struct value) <parent>: Now a value_ref_ptr.
12182         (value_parent, set_value_parent, value_address, value_copy):
12183         Update.
12184
12185 2018-04-06  Tom Tromey  <tom@tromey.com>
12186
12187         * value.c (struct value): Add constructor, destructor, and member
12188         initializers.
12189         (allocate_value_lazy, value_decref): Update.
12190
12191 2018-04-06  Tom Tromey  <tom@tromey.com>
12192
12193         * value.c (struct value) <released, next>: Remove.
12194         (all_values): Now a std::vector.
12195         (allocate_value_lazy): Update.
12196         (value_next): Remove.
12197         (value_mark, value_free_to_mark, release_value)
12198         (value_release_to_mark): Update.
12199
12200 2018-04-06  Tom Tromey  <tom@tromey.com>
12201
12202         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12203         (free_value_chain): Remove.
12204         * value.c (free_value_chain): Remove.
12205         (value_release_to_mark): Return a std::vector.
12206         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12207         std::vector.
12208         (check_condition): Update.
12209         * eval.c (fetch_subexp_value): Change "val_chain" to a
12210         std::vector.
12211         * breakpoint.c (update_watchpoint): Update.
12212         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12213
12214 2018-04-06  Tom Tromey  <tom@tromey.com>
12215
12216         * value.h (free_all_values): Remove.
12217         * value.c (free_all_values): Remove.
12218
12219 2018-04-06  Tom Tromey  <tom@tromey.com>
12220
12221         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12222         (value_history_chain, value_history_count): Remove.
12223         (value_history): New global.
12224         (record_latest_value, access_value_history, show_values)
12225         (preserve_values): Update.
12226
12227 2018-04-06  Tom Tromey  <tom@tromey.com>
12228
12229         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12230         * varobj.c (varobj_set_display_format, varobj_set_value)
12231         (install_default_visualizer, construct_visualizer)
12232         (install_new_value, ~varobj, varobj_get_value_type)
12233         (my_value_of_variable, varobj_editable_p): Update.
12234         * c-varobj.c (c_describe_child, c_value_of_variable)
12235         (cplus_number_of_children, cplus_describe_child): Update.
12236         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12237         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12238         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12239
12240 2018-04-06  Tom Tromey  <tom@tromey.com>
12241
12242         * printcmd.c (last_examine_address): Change type to
12243         value_ref_ptr.
12244         (do_examine, x_command): Update.
12245
12246 2018-04-06  Tom Tromey  <tom@tromey.com>
12247
12248         * value.c (release_value): Update.
12249         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12250         (struct bpstats) <val>: Now a value_ref_ptr.
12251         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12252         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12253         (~watchpoint, print_it_watchpoint, watch_command_1)
12254         (invalidate_bp_value_on_memory_change): Update.
12255
12256 2018-04-06  Tom Tromey  <tom@tromey.com>
12257
12258         * varobj.c (varobj_clear_saved_item)
12259         (update_dynamic_varobj_children, install_new_value, ~varobj):
12260         Update.
12261         * value.h (value_incref): Move declaration earlier.
12262         (value_decref): Rename from value_free.
12263         (struct value_ref_policy): New.
12264         (value_ref_ptr): New typedef.
12265         (struct value_deleter): Remove.
12266         (gdb_value_up): Remove typedef.
12267         (release_value): Change return type.
12268         (release_value_or_incref): Remove.
12269         * value.c (set_value_parent): Update.
12270         (value_incref): Change return type.
12271         (value_decref): Rename from value_free.
12272         (value_free_to_mark, free_all_values, free_value_chain): Update.
12273         (release_value): Return value_ref_ptr.
12274         (release_value_or_incref): Remove.
12275         (record_latest_value, set_internalvar, clear_internalvar):
12276         Update.
12277         * stack.c (info_frame_command): Don't call value_free.
12278         * python/py-value.c (valpy_dealloc, valpy_new)
12279         (value_to_value_object): Update.
12280         * printcmd.c (do_examine): Update.
12281         * opencl-lang.c (lval_func_free_closure): Update.
12282         * mi/mi-main.c (register_changed_p): Don't call value_free.
12283         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12284         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12285         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12286         value_free.
12287         * guile/scm-value.c (vlscm_free_value_smob)
12288         (vlscm_scm_from_value): Update.
12289         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12290         (frame_unwind_register_unsigned, get_frame_register_bytes)
12291         (put_frame_register_bytes): Don't call value_free.
12292         * findvar.c (address_from_register): Don't call value_free.
12293         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12294         * dwarf2loc.c (entry_data_value_free_closure)
12295         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12296         (dwarf2_evaluate_loc_desc_full): Update.
12297         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12298         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12299         (~watchpoint, watch_command_1)
12300         (invalidate_bp_value_on_memory_change): Update.
12301         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12302
12303 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12304
12305         PR gdb/23022
12306         * warning.m4: Add -Wno-error=deprecated-register.
12307         * configure: Re-generate.
12308
12309 2018-04-05  Tom Tromey  <tom@tromey.com>
12310
12311         * linespec.h: Remove include of "vec.h".
12312
12313 2018-04-05  Tom Tromey  <tom@tromey.com>
12314
12315         * linespec.c (typep): Remove typedef.
12316         (find_methods, find_superclass_methods): Take a std::vector.
12317         (find_method): Use std::vector.
12318
12319 2018-04-05  Tom Tromey  <tom@tromey.com>
12320
12321         * utils.c (compare_strings): Remove.
12322         * utils.h (compare_strings): Remove.
12323         * objc-lang.h (find_imps): Update.
12324         * objc-lang.c (find_methods): Take a std::vector.
12325         (uniquify_strings, find_imps): Likewise.
12326         * linespec.c (find_methods): Take a std::vector.
12327         (decode_objc): Use std::vector.
12328         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12329         a std::vector.
12330         (find_method, find_function_symbols): Use std::vector.
12331
12332 2018-04-05  Tom Tromey  <tom@tromey.com>
12333
12334         * completer.c (completion_tracker::completion_tracker): Remove
12335         cast.
12336         (completion_tracker::discard_completions): Likewise.
12337         * breakpoint.c (ambiguous_names_p): Remove cast.
12338         * ada-lang.c (_initialize_ada_language): Remove cast.
12339         * utils.h (streq): Update.
12340         (streq_hash): Add new declaration.
12341         * utils.c (streq): Return bool.
12342         (streq_hash): New function.
12343
12344 2018-04-05  Tom Tromey  <tom@tromey.com>
12345
12346         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12347         Remove a string copy.
12348
12349 2018-04-05  Tom Tromey  <tom@tromey.com>
12350
12351         * linespec.c (filter_results): Use std::vector.
12352         (decode_line_2, decode_line_full): Update.
12353
12354 2018-04-05  Tom Tromey  <tom@tromey.com>
12355
12356         * linespec.c (canonical_to_fullform): Return std::string.
12357         (filter_results): Update.
12358         (struct decode_line_2_item): Add constructor.
12359         <fullform, displayform>: Now std::string.
12360         (decode_line_2_compare_items): Now a std::sort comparator.
12361         (decode_line_2): Update.
12362
12363 2018-04-05  Tom Tromey  <tom@tromey.com>
12364
12365         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12366         (unexpected_linespec_error): Update.
12367         (linespec_parse_basic, parse_linespec): Update.
12368
12369 2018-04-05  Tom Tromey  <tom@tromey.com>
12370
12371         * linespec.c (linespec_parse_basic): Reindent.
12372
12373 2018-04-05  Tom Tromey  <tom@tromey.com>
12374
12375         * minsyms.h (iterate_over_minimal_symbols): Update.
12376         * minsyms.c (iterate_over_minimal_symbols): Take a
12377         gdb::function_view.
12378         * linespec.c (struct collect_minsyms): Remove.
12379         (compare_msyms): Now a std::sort comparator.
12380         (add_minsym): Add parameters.
12381         (search_minsyms_for_name): Update.  Use std::vector.
12382
12383 2018-04-03  Tom Tromey  <tom@tromey.com>
12384
12385         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12386         gdb::byte_vector.
12387
12388 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12389
12390         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12391
12392 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12393
12394         PR gdb/16959
12395         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12396         printing static type.
12397
12398 2018-04-01  Tom Tromey  <tom@tromey.com>
12399
12400         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12401         (rs6000_xfer_shared_libraries): Update.
12402
12403 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12404
12405         * common/gdb_vecs.h (char_ptr): Remove.
12406         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12407
12408 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12409
12410         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12411         with std::vector.
12412         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12413
12414 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12415
12416         * tracepoint.h (struct uploaded_tp): Initialize fields.
12417         <actions, step_actions, cmd_strings>: Change type to
12418         std::vector<char *>.
12419         * tracepoint.c (get_uploaded_tp): Allocate with new.
12420         (free_uploaded_tps): Free with delete.
12421         (parse_tracepoint_definition): Adjust to std::vector change.
12422         * breakpoint.c (read_uploaded_action): Likewise.
12423         (create_tracepoint_from_upload): Likewise.
12424         * ctf.c (ctf_write_uploaded_tp): Likewise.
12425         (SET_ARRAY_FIELD): Likewise.
12426         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12427
12428 2018-03-30  Tom Tromey  <tom@tromey.com>
12429
12430         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12431         std::unique_ptr.
12432         (svr4_keep_data_in_core): Update.
12433         (svr4_read_so_list): Update.
12434
12435 2018-03-30  Tom Tromey  <tom@tromey.com>
12436
12437         * windows-nat.c (handle_output_debug_string, handle_exception):
12438         Update.
12439         * target.h (target_read_string): Update.
12440         * target.c (target_read_string): Change "string" to
12441         unique_xmalloc_ptr.
12442         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12443         Update.
12444         * solib-frv.c (frv_current_sos): Update.
12445         * solib-dsbt.c (dsbt_current_sos): Update.
12446         * solib-darwin.c (darwin_current_sos): Update.
12447         * linux-thread-db.c (inferior_has_bug): Update.
12448         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12449         Update.  Remove alloca.
12450         * ada-lang.c (ada_main_name): Update.
12451
12452 2018-03-30  Tom Tromey  <tom@tromey.com>
12453
12454         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12455         (struct dwo_file_deleter): New.
12456         (dwo_file_up): New typedef.
12457         (open_and_init_dwo_file): Use dwo_file_up.
12458         (free_dwo_file_cleanup): Remove.
12459
12460 2018-03-30  Tom Tromey  <tom@tromey.com>
12461
12462         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12463         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12464
12465 2018-03-30  Tom Tromey  <tom@tromey.com>
12466
12467         * dwarf2read.c (class free_cached_comp_units): New class.
12468         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12469         (free_cached_comp_units): Remove function.
12470
12471 2018-03-30  Tom Tromey  <tom@tromey.com>
12472
12473         * utils.h (make_cleanup_unpush_target): Remove.
12474         * inf-ptrace.c (struct target_unpusher): New.
12475         (target_unpush_up) New typedef.
12476         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12477         target_unpush_up.
12478         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12479
12480 2018-03-27  Tom Tromey  <tom@tromey.com>
12481
12482         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12483
12484 2018-03-27  Pedro Alves  <palves@redhat.com>
12485             Tom Tromey  <tom@tromey.com>
12486
12487         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12488         destructor.  Now a class.
12489         (gdb_readline_wrapper_cleanup): Remove function.
12490         (gdb_readline_wrapper): Remove cleanups.
12491
12492 2018-03-27  Tom Tromey  <tom@tromey.com>
12493
12494         * typeprint.h (struct type_print_options) <local_typedefs,
12495         global_typedefs>: Remove "struct" keyword.
12496         (class typedef_hash_table): New class.
12497         (recursively_update_typedef_hash, add_template_parameters)
12498         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12499         (find_typedef_in_hash): Don't declare.
12500         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12501         (typedef_hash_table::recursively_update): Rename from
12502         recursively_update_typedef_hash.  Now a member.
12503         (typedef_hash_table::add_template_parameters): Rename from
12504         add_template_parameters.  Now a member.
12505         (typedef_hash_table::typedef_hash_table): Now a constructor;
12506         rename from create_typedef_hash.
12507         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12508         rename from free_typedef_hash.
12509         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12510         (do_free_global_table): Remove.
12511         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12512         from copy_type_recursive.
12513         (create_global_typedef_table): Remove.
12514         (typedef_hash_table::find_global_typedef): Now a member of
12515         typedef_hash_table.
12516         (typedef_hash_table::find_typedef): Rename from
12517         find_typedef_in_hash; now a member.
12518         (whatis_exp): Update.
12519         * extension.h (struct ext_lang_type_printers): Add constructor and
12520         destructor.
12521         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12522         declare.
12523         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12524         Now a constructor; rename from start_ext_lang_type_printers.
12525         (ext_lang_type_printers): Now a destructor; rename from
12526         free_ext_lang_type_printers.
12527         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12528         Update.
12529         (c_type_print_base_struct_union): Update.  Remove cleanups.
12530
12531 2018-03-27  Tom Tromey  <tom@tromey.com>
12532
12533         * dwarf-index-write.c: Include <cmath>.
12534
12535 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12536
12537         * NEWS: Add entry describing new "set|show varsize-limit" command.
12538         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12539         command.
12540         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12541         "set variable".
12542
12543 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12544
12545         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12546         dwarf-index-write.c
12547         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12548         * dwarf-index-common.c: New file.
12549         * dwarf-index-common.h: New file.
12550         * dwarf-index-write.c: New file.
12551         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12552         (struct dwarf2_section_info): Move from here.
12553         (dwarf2_section_info_def): Likewise.
12554         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12555         (offset_type): Likewise.
12556         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12557         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12558         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12559         (byte_swap): Likewise.
12560         (MAYBE_SWAP): Likewise.
12561         (dwarf2_per_cu_ptr): Likewise.
12562         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12563         (struct tu_stats): Likewise.
12564         (struct dwarf2_per_objfile): Likewise.
12565         (struct dwarf2_per_cu_data): Likewise.
12566         (struct signatured_type): Likewise.
12567         (sig_type_ptr): Likewise.
12568         (DEF_VEC_P (sig_type_ptr)): Likewise.
12569         (INDEX4_SUFFIX): Likewise.
12570         (INDEX5_SUFFIX): Likewise.
12571         (DEBUG_STR_SUFFIX): Likewise.
12572         (dwarf2_read_section): Make non-static.
12573         (mapped_index_string_hash): Move from here.
12574         (dwarf5_djb_hash): Likewise.
12575         (file_write): Likewise.
12576         (class data_buf): Likewise.
12577         (struct symtab_index_entry): Likewise.
12578         (struct mapped_symtab): Likewise.
12579         (find_slot): Likewise.
12580         (hash_expand): Likewise.
12581         (add_index_entry): Likewise.
12582         (uniquify_cu_indices): Likewise.
12583         (class c_str_view): Likewise.
12584         (class c_str_view_hasher): Likewise.
12585         (class vector_hasher): Likewise.
12586         (write_hash_table): Likewise.
12587         (psym_index_map): Likewise.
12588         (struct addrmap_index_data): Likewise.
12589         (add_address_entry): Likewise.
12590         (add_address_entry_worker): Likewise.
12591         (write_address_map): Likewise.
12592         (symbol_kind): Likewise.
12593         (write_psymbols): Likewise.
12594         (struct signatured_type_index_data): Likewise.
12595         (write_one_signatured_type): Likewise.
12596         (recursively_count_psymbols): Likewise.
12597         (recursively_write_psymbols): Likewise.
12598         (class debug_names): Likewise.
12599         (check_dwarf64_offsets): Likewise.
12600         (psyms_seen_size): Likewise.
12601         (write_gdbindex): Likewise.
12602         (write_debug_names): Likewise.
12603         (assert_file_size): Likewise.
12604         (write_psymtabs_to_index): Likewise.
12605         (save_gdb_index_command): Likewise.
12606         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12607         command.
12608         * dwarf2read.h: New file.
12609
12610 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12611
12612         PR gdb/22670
12613         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12614         symbol name if the CU's language stores symbol names in linkage
12615         format.
12616         * language.h (struct language_defn)
12617         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12618         all instances of this struct.
12619
12620 2018-03-26  Tom Tromey  <tom@tromey.com>
12621
12622         * stack.c (backtrace_command_1): Remove verbose code.
12623
12624 2018-03-26  Tom Tromey  <tom@tromey.com>
12625
12626         * python/py-framefilter.c (py_print_type): Don't catch
12627         exceptions.  Return void.
12628         (py_print_value): Likewise.
12629         (py_print_single_arg): Likewise.
12630         (enumerate_args): Don't catch exceptions.
12631         (py_print_args): Likewise.
12632         (py_print_frame): Likewise.
12633         (gdbpy_apply_frame_filter): Catch exceptions here.
12634
12635 2018-03-26  Tom Tromey  <tom@tromey.com>
12636
12637         * stack.c (_initialize_stack): Remove trailing newlines from help
12638         text.  Add "Usage" line to "backtrace" help.
12639
12640 2018-03-26  Tom Tromey  <tom@tromey.com>
12641
12642         PR python/16486:
12643         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12644
12645 2018-03-26  Tom Tromey  <tom@tromey.com>
12646
12647         * python/py-framefilter.c (py_print_single_arg): Return
12648         EXT_LANG_BT_ERROR from catch.
12649
12650 2018-03-26  Tom Tromey  <tom@tromey.com>
12651
12652         PR backtrace/15584:
12653         * stack.c (backtrace_command_1): Move some code into no-filters
12654         "if".
12655
12656 2018-03-26  Tom Tromey  <tom@tromey.com>
12657
12658         * python/py-framefilter.c (throw_quit_or_print_exception): New
12659         function.
12660         (gdbpy_apply_frame_filter): Use it.
12661
12662 2018-03-26  Tom Tromey  <tom@tromey.com>
12663
12664         PR cli/17716:
12665         * python/py-framefilter.c (py_print_type, py_print_value)
12666         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12667         RETURN_MASK_ERROR.
12668
12669 2018-03-26  Tom Tromey  <tom@tromey.com>
12670
12671         * python/py-framefilter.c (enumerate_args): Use
12672         gdb::unique_xmalloc_ptr.
12673
12674 2018-03-26  Tom Tromey  <tom@tromey.com>
12675
12676         * python/py-framefilter.c (py_print_frame): Return
12677         EXT_LANG_BT_OK.
12678         (gdbpy_apply_frame_filter): Update comment.
12679         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12680         Remove.
12681         <EXT_LANG_BT_NO_FILTERS>: Change value.
12682
12683 2018-03-26  Tom Tromey  <tom@tromey.com>
12684
12685         PR backtrace/15582:
12686         * stack.c (backtrace_command): Parse "hide" argument.
12687         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12688         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12689         constant.
12690
12691 2018-03-26  Tom Tromey  <tom@tromey.com>
12692
12693         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12694         add "flags".
12695         (backtrace_command): Remove "fulltrace", add "flags".
12696
12697 2018-03-26  Tom Tromey  <tom@tromey.com>
12698
12699         * stack.c (backtrace_command): Rewrite command line parsing.
12700
12701 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12702
12703         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12704
12705 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12706
12707         * filename-seen-cache.h: Add include guard.
12708
12709 2018-03-26  Keith Seitz  <keiths@redhat.com>
12710
12711         * symfile.c (place_section): Remove "struct" from section_addr_info
12712         in comment.
12713         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12714         "struct" keyword from section_addr_info.
12715
12716 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12717
12718         * regformats/regdef.h (reg): Add constructors.
12719
12720 2018-03-25  Pedro Alves  <palves@redhat.com>
12721
12722         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12723         if then/else bodies in var_func_name extraction.
12724
12725 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12726
12727         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12728         lookup_minimal_symbol() to find symbol entry.
12729         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12730
12731 2018-03-23  Keith Seitz  <keiths@redhat.com>
12732
12733         PR c++/22968
12734         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12735         nested type definitions for C++, too.
12736
12737 2018-03-23  Tom Tromey  <tom@tromey.com>
12738
12739         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12740         a typedef.
12741         (macho_register_oso): Remove.
12742         (macho_symtab_read): Take a std::vector.
12743         (oso_el_compare_name): Now a std::sort comparator.
12744         (macho_symfile_read_all_oso): Take a std::vector.
12745         (macho_symfile_read): Use std::vector.  Remove cleanups.
12746
12747 2018-03-22  Tom Tromey  <tom@tromey.com>
12748
12749         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12750         (record_full_goto_bookmark): Use std::string.
12751
12752 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12753
12754         PR tdep/18295
12755         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12756         a single mask.
12757
12758 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12759
12760         * rs6000-tdep.c (store_insn_p): New function.
12761         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12762         and cr_reg to their unshifted values. Use store_insn_p to
12763         match LR saves using either R1 or fdata->alloca_reg. Use
12764         store_insn_p to match CR saves. Set alloca_reg_offset
12765         when alloca_reg and framep are set. Remove lr_reg shift
12766         when assigning to fdata->lr_register.
12767
12768 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12769
12770         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12771         command line args instead of emitting a warning.
12772
12773 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12774
12775         * tracepoint.h (struct static_tracepoint_marker): Initialize
12776         fields, define default constructor, move constructor and move
12777         assignment, disable the rest.
12778         <str_id, extra>: Make std::string.
12779         (release_static_tracepoint_marker): Remove.
12780         (free_current_marker): Remove.
12781         * tracepoint.c (free_current_marker): Remove.
12782         (parse_static_tracepoint_marker_definition): Adjust to
12783         std::string, use new hex2str overload.
12784         (release_static_tracepoint_marker): Remove.
12785         (print_one_static_tracepoint_marker): Get marker by reference
12786         and adjust to std::string.
12787         (info_static_tracepoint_markers_command): Adjust to std::vector
12788         changes
12789         * target.h (static_tracepoint_marker_p): Remove typedef.
12790         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12791         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12792         bool.
12793         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12794         * target-debug.h
12795         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12796         (target_debug_print_std_vector_static_tracepoint_marker): New.
12797         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12798         to...
12799         (target_debug_print_static_tracepoint_marker_p): ... this.
12800         * target-delegates.c: Re-generate.
12801         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12802         Make std::string.
12803         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12804         (decode_static_tracepoint_spec): Adjust to std::vector.
12805         (tracepoint_print_one_detail): Adjust to std::string.
12806         (strace_marker_decode_location): Adjust to std::string.
12807         (update_static_tracepoint): Adjust to std::string, remove call
12808         to release_static_tracepoint_marker.
12809         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12810         Adjust to std::vector.
12811         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12812         (remote_static_tracepoint_markers_by_strid): Adjust to
12813         std::vector.
12814         * common/rsp-low.h (hex2str): New overload with explicit count
12815         of bytes.
12816         * common/rsp-low.c (hex2str): New overload with explicit count
12817         of bytes.
12818         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12819         (_initialize_rsp_low_selftests): Add test_hex2str test.
12820         * unittests/tracepoint-selftests.c
12821         (test_parse_static_tracepoint_marker_definition): Adjust to
12822         std::string.
12823
12824 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12825
12826         * tracepoint.c (parse_static_tracepoint_marker_definition):
12827         Consider case where the definition is followed by more
12828         definitions.
12829         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12830         tracepoint-selftests.c.
12831         * unittests/tracepoint-selftests.c: New.
12832
12833 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12834
12835         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12836         Carvalho.
12837
12838 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12839
12840         * symtab.c (find_pc_sect_line): fixed indentation.
12841
12842 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12843
12844         * symtab.c (find_pc_sect_line): now uses binary search.
12845
12846 2018-03-19  Tom Tromey  <tom@tromey.com>
12847
12848         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12849         "IDENT" production.
12850
12851 2018-03-19  Pedro Alves  <palves@redhat.com>
12852             Tom Tromey  <tom@tromey.com>
12853
12854         * unittests/observable-selftests.c: New file.
12855         * common/observable.h: New file.
12856         * observable.h: New file.
12857         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12858         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12859         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12860         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12861         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12862         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12863         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12864         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12865         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12866         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12867         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12868         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12869         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12870         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12871         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12872         tui/tui-interp.c, valops.c: Update all users.
12873         * tui/tui-hooks.c (tui_bp_created_observer)
12874         (tui_bp_deleted_observer, tui_bp_modified_observer)
12875         (tui_inferior_exit_observer, tui_before_prompt_observer)
12876         (tui_normal_stop_observer, tui_register_changed_observer):
12877         Remove.
12878         (tui_observers_token): New global.
12879         (attach_or_detach, tui_attach_detach_observers): New functions.
12880         (tui_install_hooks, tui_remove_hooks): Use
12881         tui_attach_detach_observers.
12882         * record-btrace.c (record_btrace_thread_observer): Remove.
12883         (record_btrace_thread_observer_token): New global.
12884         * observer.sh: Remove.
12885         * observer.c: Rename to observable.c.
12886         * observable.c (namespace gdb_observers): Define new objects.
12887         (observer_debug): Move into gdb_observers namespace.
12888         (struct observer, struct observer_list, xalloc_observer_list_node)
12889         (xfree_observer_list_node, generic_observer_attach)
12890         (generic_observer_detach, generic_observer_notify): Remove.
12891         (_initialize_observer): Update.
12892         Don't include observer.inc.
12893         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12894         (clean mostlyclean): Likewise.
12895         (observer.h, observer.inc): Remove targets.
12896         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12897         (COMMON_SFILES): Use observable.c, not observer.c.
12898         * .gitignore: Remove observer.h.
12899
12900 2018-03-18  Tom Tromey  <tom@tromey.com>
12901
12902         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12903         gdb::def_vector.
12904         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12905
12906 2018-03-17  Tom Tromey  <tom@tromey.com>
12907
12908         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12909
12910 2018-03-17  Tom Tromey  <tom@tromey.com>
12911
12912         * target.c (class scoped_target_fd): New.
12913         (target_fileio_close_cleanup): Remove.
12914         (target_fileio_read_alloc_1): Use scoped_target_fd.
12915
12916 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12917
12918         * silent-rules.mk: New.
12919         * Makefile.in: Include silent-rules.mk
12920         (srcdir, VPATH, top_srcdir): Move up.
12921         (COMPILE): Add ECHO_CXX.
12922         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12923         (init.c): Add ECHO_INIT_C.
12924         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12925         (version.c): Add ECHO_GEN.
12926         (printcmd.o): Add ECHO_CXX.
12927         (target-float.o): Add ECHO_CXX.
12928         (ada-exp.o): Add ECHO_CXX.
12929         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12930         (insight$(EXEEXT)): Add ECHO_CXXLD.
12931         * gnulib/configure.ac: Add AM_SILENT_RULES.
12932         * gnulib/aclocal.m4: Re-generate.
12933         * gnulib/configure: Re-generate.
12934         * gnulib/import/Makefile.in: Re-generate.
12935
12936 2018-03-16  Tom Tromey  <tom@tromey.com>
12937
12938         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12939         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12940         * utils.c (do_free_section_addr_info)
12941         (make_cleanup_free_section_addr_info): Remove.
12942         * symfile.h (struct other_sections): Add constructor.
12943         (struct section_addr_info): Remove.
12944         (section_addr_info): New typedef.
12945         (struct sym_fns) <sym_offsets>: Change type of parameter.
12946         (build_section_addr_info_from_objfile)
12947         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12948         (default_symfile_offsets, symbol_file_add)
12949         (symbol_file_add_from_bfd)
12950         (build_section_addr_info_from_section_table): Update.
12951         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12952         * symfile.c (alloc_section_addr_info): Remove.
12953         (build_section_addr_info_from_section_table): Change return type.
12954         Update.
12955         (build_section_addr_info_from_bfd)
12956         (build_section_addr_info_from_objfile): Likewise.
12957         (free_section_addr_info): Remove.
12958         (relative_addr_info_to_section_offsets): Change type of "addrs".
12959         (addrs_section_compar): Now a std::sort comparator.
12960         (addrs_section_sort): Change return type.
12961         (addr_info_make_relative): Change type of "addrs".  Update.
12962         (default_symfile_offsets, syms_from_objfile_1)
12963         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12964         (symbol_file_add_separate): Update.
12965         (symbol_file_add): Change type of "addrs".  Update.
12966         (add_symbol_file_command): Update.  Remove cleanups.
12967         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12968         cleanups.
12969         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12970         * solib.c (solib_read_symbols): Update.
12971         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12972         * machoread.c (macho_symfile_offsets): Update.
12973         * jit.c (jit_bfd_try_read_symtab): Update.
12974
12975 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12976
12977         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12978         unittests/utils-selftests.c.
12979         * unittests/utils-selftests.c: New file.
12980
12981 2018-03-14  Tom Tromey  <tom@tromey.com>
12982
12983         PR cli/14977:
12984         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12985         for NULL.
12986
12987 2018-03-14  Tom Tromey  <tom@tromey.com>
12988
12989         PR cli/19918:
12990         * printcmd.c (printf_pointer): Allow "-" in format.
12991
12992 2018-03-14  Tom Tromey  <tom@tromey.com>
12993
12994         * printcmd.c (_initialize_printcmd): Add usage to printf.
12995
12996 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12997
12998         * MAINTAINERS: Update my email address.
12999
13000 2018-03-13  Tom Tromey  <tom@tromey.com>
13001
13002         * machoread.c (macho_check_dsym): Change filenamep to a
13003         std::string*.
13004         (macho_symfile_read): Update.
13005         * symfile.c (load_command): Use std::string.
13006
13007 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13008
13009         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13010         to error message string.
13011         (riscv_register_name): Use xsnprintf instead of sprintf.
13012         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13013         internal_error.
13014         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13015         error.
13016         (riscv_push_dummy_call): Likewise.
13017
13018 2018-03-12  Tom Tromey  <tom@tromey.com>
13019
13020         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13021         Use gdb::byte_vector.
13022         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13023
13024 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13025
13026         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13027         parameter type to readable_regcache.
13028         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13029         the declaration.
13030
13031 2018-03-11  Tom Tromey  <tom@tromey.com>
13032
13033         * dwarf2read.c (struct nextfield): Add initializers.
13034         (struct nextfnfield): Remove.
13035         (struct fnfieldlist): Add initializers.  Remove "length" and
13036         "head", use std::vector.
13037         (struct decl_field_list): Remove.
13038         (struct field_info): Add initializers.
13039         <fields, baseclasses>: Now std::vector.
13040         <nbaseclasses, nfnfields, typedef_field_list_count,
13041         nested_types_list_count>: Remove.
13042         (dwarf2_add_field, dwarf2_add_type_defn)
13043         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13044         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13045         (process_structure_scope): Update.
13046
13047 2018-03-11  Tom Tromey  <tom@tromey.com>
13048
13049         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13050         for use by std::sort.
13051         (build_type_psymtabs_1): Use std::vector.
13052
13053 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13054
13055         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13056         and LIBMPFR in the printed configuration.
13057
13058 2018-03-08  Tom Tromey  <tom@tromey.com>
13059
13060         * source.c (get_filename_and_charpos): Use scoped_fd.
13061         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13062         (procfs_pidlist): Likewise.
13063         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13064         (iterate_over_mappings): Likewise.
13065
13066 2018-03-08  Tom Tromey  <tom@tromey.com>
13067
13068         * infcall.c (struct call_return_meta_info)
13069         <stack_temporaries_enabled>: Remove.
13070         (get_call_return_value, call_function_by_hand_dummy): Update.
13071         * thread.c (disable_thread_stack_temporaries): Remove.
13072         (enable_thread_stack_temporaries): Remove.
13073         (thread_stack_temporaries_enabled_p): Return bool.
13074         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13075         (get_last_thread_stack_temporary): Update.
13076         * eval.c (evaluate_subexp): Update.
13077         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13078         class, not a function.
13079         (value_ptr, value_vec): Remove typedefs.
13080         (class thread_info) <stack_temporaries_enabled>: Now bool.
13081         <stack_temporaries>: Now a std::vector.
13082         (thread_stack_temporaries_enabled_p)
13083         (value_in_thread_stack_temporaries): Return bool.
13084
13085 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13086
13087         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13088         (getpkt_or_notif_sane_1): Likewise.
13089
13090 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13091
13092         * build-id.c (build_id_to_debug_bfd): Use std::string.
13093
13094 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13095
13096         * build-id.c (find_separate_debug_file_by_buildid): Return
13097         std::string.
13098         * build-id.h (find_separate_debug_file_by_buildid): Return
13099         std::string.
13100         * coffread.c (coff_symfile_read): Adjust to std::string.
13101         * elfread.c (elf_symfile_read): Adjust to std::string.
13102         * symfile.c (separate_debug_file_exists): Change parameter to
13103         std::string.
13104         (find_separate_debug_file): Return std::string.
13105         (find_separate_debug_file_by_debuglink): Return std::string.
13106         * symfile.h (find_separate_debug_file_by_debuglink): Return
13107         std::string.
13108
13109 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13110
13111         * common/xml-utils.c (xml_escape_text): Move code to...
13112         (xml_escape_text_append): ... this new function.
13113         * common/xml-utils.h (xml_escape_text_append): New declaration.
13114         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13115         New function.
13116         (_initialize_xml_utils): register test_xml_escape_text_append as
13117         a selftest.
13118
13119 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13120
13121         * defs.h: Remove MAX_REGISTER_SIZE.
13122         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13123         asserts.
13124         * python/py-unwind.c (pyuw_sniffer): Likewise.
13125
13126 2018-03-07  Tom Tromey  <tom@tromey.com>
13127
13128         * linux-tdep.c (linux_info_proc): Update.
13129         * target.h (struct target_ops) <to_fileio_readlink>: Return
13130         optional<string>.
13131         (target_fileio_readlink): Return optional<string>.
13132         * remote.c (remote_hostio_readlink): Return optional<string>.
13133         * inf-child.c (inf_child_fileio_readlink): Return
13134         optional<string>.
13135         * target.c (target_fileio_readlink): Return optional<string>.
13136
13137 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13138
13139         * regcache.c (cooked_read_test): Add riscv to the list of
13140         architectures that have a save_reggroup.
13141
13142 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13143
13144         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13145         value is not a dynamic class object.
13146
13147 2018-03-06  Tom Tromey  <tom@tromey.com>
13148
13149         * rust-exp.y: Formatting fixes.
13150
13151 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13152
13153         * riscv-tdep.c (riscv_register_name): Remove target description
13154         support.
13155         (riscv_gdbarch_init): Remove target description check.
13156
13157 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13158
13159         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13160         comment.
13161         * riscv-tdep.h: Likewise.
13162
13163 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13164
13165         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13166         (riscv_pseudo_register_write): Delete.
13167         (riscv_gdbarch_init): Remove all use of pseudo registers.
13168
13169 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13170
13171         * record-btrace.c (btrace_print_lines): Replace cleanup
13172         parameter with RAII equivalents.
13173         (btrace_insn_history): Replace cleanup with RAII equivalents.
13174         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13175         make_cleanup_ui_out_tuple_begin_end): Remove.
13176         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13177         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13178         make_cleanup_ui_out_list_begin_end): Remove.
13179
13180 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13181
13182         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13183         parameter types to std::vector.  Use bool.
13184         (record_btrace_wait): Replace VEC(tp_t) with
13185         std::vector<thread_info *>.
13186         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13187
13188 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13189
13190         * record-btrace.c (record_btrace_disable_callback): Remove.
13191         (struct scoped_btrace_disable): New.
13192         (record_btrace_open): Use scoped_btrace_disable.
13193
13194 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13195
13196         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13197         reading values from registers.
13198
13199 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13200
13201         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13202         where appropriate.
13203
13204 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13205
13206         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13207         change parameter type.  Use GDB's print functions, and use
13208         core_addr_to_string where appropriate.
13209         (riscv_push_dummy_call): Use core_addr_to_string where
13210         appropriate, update call to riscv_print_arg_location, and reindent
13211         a few lines.
13212         (riscv_return_value): Update call to riscv_print_arg_location.
13213
13214 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13215             Tim Newsome <tim@sifive.com>
13216             Albert Ou <a0u@eecs.berkeley.edu>
13217             Darius Rad <darius@bluespec.com>
13218
13219         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13220         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13221         (ALLDEPFILES): Add riscv-tdep.c
13222         * configure.tgt: Add riscv support.
13223         * riscv-tdep.c: New file.
13224         * riscv-tdep.h: New file.
13225         * NEWS: Mention new target.
13226         * MAINTAINERS: Add entry for riscv.
13227
13228 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13229
13230         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13231         fields within aggregates.
13232
13233 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13234
13235         * record-btrace.c (btrace_print_lines): Change type of flags to
13236         gdb_disassembly_flags.
13237
13238 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13239
13240         * fbsd-nat.c: Include "inf-ptrace.h".
13241         (USE_SIGTRAP_SIGINFO): Conditionally define.
13242         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13243         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13244         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13245         function.
13246         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13247         Likewise.
13248         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13249         Likewise.
13250         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13251         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13252         "supports_stopped_by_hw_breakpoint" target methods.
13253
13254 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13255
13256         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13257         * fbsd-nat.c (debug_fbsd_nat): New variable.
13258         (show_fbsd_nat_debug): New function.
13259         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13260         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13261
13262 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13263
13264         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13265         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13266         prototype.
13267         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13268         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13269         method.
13270
13271 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13272
13273         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13274         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13275
13276 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13277
13278         * charset.c (struct charset_vector): New.
13279         (charsets): Change type to charset_vector.
13280         (find_charset_names): Adjust.
13281         (add_one): Adjust.
13282         (_initialize_charset): Adjust.
13283
13284 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13285
13286         * progspace.h (struct program_space) <deleted_solibs>: Change
13287         type to std::vector<std::string>.
13288         * progspace.c (clear_program_space_solib_cache): Adjust.
13289         * breakpoint.c (print_solib_event): Adjust.
13290         (check_status_catch_solib): Adjust.
13291         * solib.c (update_solib_list): Adjust.
13292         * ui-out.h (class ui_out) <field_string>: New overload.
13293         * ui-out.c (ui_out::field_string): New overload.
13294
13295 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13296
13297         * progspace.h (struct program_space): Add constructor and
13298         destructor, initialize fields.
13299         (add_program_space): Remove.
13300         * progspace.c (add_program_space): Rename to...
13301         (program_space::program_space): ... this.
13302         (release_program_space): Rename to...
13303         (program_space::~program_space): ... this.
13304         (delete_program_space): Use delete to delete program_space.
13305         (initialize_progspace): Use new to allocate program_space.
13306         * inferior.c (add_inferior_with_spaces): Likewise.
13307         (clone_inferior_command): Likewise.
13308         * infrun.c (follow_fork_inferior): Likewise.
13309         (handle_vfork_child_exec_or_exit): Likewise.
13310
13311 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13312
13313         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13314         (delim_string_to_char_ptr_vec): Return std::vector of
13315         gdb::unique_xmalloc_ptr.
13316         (dirnames_to_char_ptr_vec_append): Take std::vector of
13317         gdb::unique_xmalloc_ptr.
13318         (dirnames_to_char_ptr_vec): Return std::vector of
13319         gdb::unique_xmalloc_ptr.
13320         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13321         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13322         (delim_string_to_char_ptr_vec): Return an std::vector of
13323         gdb::unique_xmalloc_ptr, adjust the code.
13324         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13325         gdb::unique_xmalloc_ptr, adjust the code.
13326         (dirnames_to_char_ptr_vec): Return an std::vector of
13327         gdb::unique_xmalloc_ptr, adjust the code.
13328         * auto-load.c (auto_load_safe_path_vec): Change type to
13329         std::vector of gdb::unique_xmalloc_ptr.
13330         (auto_load_expand_dir_vars): Return an std::vector of
13331         gdb::unique_xmalloc_ptr, adjust the code.
13332         (auto_load_safe_path_vec_update): Adjust.
13333         (filename_is_in_auto_load_safe_path_vec): Adjust.
13334         (auto_load_objfile_script_1): Adjust.
13335         * build-id.c (build_id_to_debug_bfd): Adjust.
13336         * linux-thread-db.c (thread_db_load_search): Adjust.
13337         * source.c (add_path): Adjust.
13338         (openp): Adjust.
13339         * symfile.c (find_separate_debug_file): Adjust.
13340         * utils.c (do_free_char_ptr_vec): Remove.
13341         (make_cleanup_free_char_ptr_vec): Remove.
13342
13343 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13344
13345         PR gdb/22907
13346         * common/pathstuff.c: Conditionally include "<windows.h>".
13347
13348 2018-03-01  Georg Sauthoff  <mail@georg.so>
13349
13350         PR gdb/22888
13351         * gcore.in: Quote variables and switch interpreter to bash.
13352
13353 2018-03-01  Tom Tromey  <tom@tromey.com>
13354
13355         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13356         assertion.  Add assertion for discriminant_index.
13357         (quirk_rust_enum): Use correct base type name in univariant case.
13358
13359 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13360
13361         * record.c (get_call_history_modifiers): Return a
13362         record_print_flags.
13363         (cmd_record_call_history): Adjust.
13364         * record-btrace.c (record_btrace_call_history): Adjust.
13365         (record_btrace_call_history_range): Adjust.
13366         (record_btrace_call_history_from): Adjust.
13367         * target-debug.h (target_debug_print_record_print_flags): New.
13368         * target-delegates.c: Re-generate.
13369         * target.c (target_call_history): Change flags type.
13370         (target_call_history_from): Likewise.
13371         (target_call_history_range): Likewise.
13372         * target.h (struct target_ops) <target_call_history>: Likewise.
13373         (target_call_history_from): Likewise.
13374         (target_call_history_range): Likewise.
13375
13376 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13377             Simon Marchi  <simon.marchi@polymtl.ca>
13378
13379         * common/common-utils.c: Include "sys/stat.h".
13380         (is_regular_file): Move here from "source.c"; change return
13381         type to "bool".
13382         * common/common-utils.h (is_regular_file): New prototype.
13383         * common/pathstuff.c (contains_dir_separator): New function.
13384         * common/pathstuff.h (contains_dir_separator): New prototype.
13385         * source.c: Don't include "sys/stat.h".
13386         (is_regular_file): Move to "common/common-utils.c".
13387
13388 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13389
13390         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13391         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13392         * auto-load.c: Include "common/pathstuff.h".
13393         * common/common-def.h (current_directory): Move here.
13394         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13395         function.
13396         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13397         prototype.
13398         * common/pathstuff.c: New file.
13399         * common/pathstuff.h: New file.
13400         * compile/compile.c: Include "common/pathstuff.h".
13401         * defs.h (current_directory): Move to "common/common-defs.h".
13402         * dwarf2read.c: Include "common/pathstuff.h".
13403         * exec.c: Likewise.
13404         * guile/scm-safe-call.c: Likewise.
13405         * linux-thread-db.c: Likewise.
13406         * main.c: Likewise.
13407         * nto-tdep.c: Likewise.
13408         * objfiles.c: Likewise.
13409         * source.c: Likewise.
13410         * symtab.c: Likewise.
13411         * utils.c: Include "common/pathstuff.h".
13412         (gdb_realpath): Move to "common/pathstuff.c".
13413         (gdb_realpath_keepfile): Likewise.
13414         (gdb_abspath): Likewise.
13415         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13416         (gdb_realpath_keepfile): Likewise.
13417         (gdb_abspath): Likewise.
13418
13419 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13420
13421         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13422         wildcard process pid for super_resume for kernels with a
13423         specific bug.
13424
13425 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13426
13427         * compile/compile.c (get_args): Add additional comments
13428         explaining function.
13429
13430 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13431             Tom Tromey  <tom@tromey.com>
13432
13433         * target.h (memory_write_request_s): Remove typedef.  Don't define
13434         VEC.
13435         (target_write_memory_blocks): Change argument to std::vector.
13436         (struct memory_write_request): Add constructor.
13437         * target-memory.c (compare_block_starting_address): Return bool.
13438         Change argument types.
13439         (claim_memory): Change arguments to use std::vector.
13440         (split_regular_and_flash_blocks, blocks_to_erase)
13441         (compute_garbled_blocks): Likewise.
13442         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13443         (target_write_memory_blocks): Change argument to std::vector.
13444         * symfile.c (struct load_section_data): Add constructor and
13445         destructor.  Use std::vector for "requests".
13446         (struct load_progress_data): Add initializers.
13447         (load_section_callback): Update.  Use "new".
13448         (clear_memory_write_data): Remove.
13449         (generic_load): Update.
13450
13451 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13452
13453         * arch/aarch64.h: Use common/tdesc.h.
13454
13455 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13456
13457         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13458         architecture with a 64-bit ABI.
13459
13460 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13461
13462         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13463         ahead of target description loading.
13464
13465 2018-02-26  Tom Tromey  <tom@tromey.com>
13466
13467         * stack.c (backtrace_command_1): Update.
13468         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13469         of "flags".
13470         * python/py-framefilter.c (py_print_frame)
13471         (gdbpy_apply_frame_filter): Change type of "flags".
13472         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13473         of "flags".
13474         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13475         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13476         * extension.h (enum frame_filter_flag): Rename from
13477         frame_filter_flags.
13478         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13479         (apply_ext_lang_frame_filter): Change type of "flags".
13480         * extension.c (apply_ext_lang_frame_filter): Change type of
13481         "flags".
13482         * extension-priv.h (struct extension_language_ops)
13483         <apply_frame_filter>: Change type of "flags".
13484
13485 2018-02-26  Tom Tromey  <tom@tromey.com>
13486
13487         PR python/16497:
13488         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13489         off-by-one in py_end computation.
13490         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13491         PRINT_MORE_FRAMES.
13492         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13493         constant.
13494
13495 2018-02-26  Tom Tromey  <tom@tromey.com>
13496
13497         * dwarf2read.c (struct variant_field): New.
13498         (struct nextfield) <variant>: New field.
13499         (dwarf2_add_field): Handle DW_TAG_variant_part.
13500         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13501         discriminated union.
13502         (read_structure_type): Handle DW_TAG_variant_part.
13503         (handle_struct_member_die): New function, extracted from
13504         process_structure_scope.  Handle DW_TAG_variant.
13505         (process_structure_scope): Handle discriminated unions.  Call
13506         handle_struct_member_die.
13507
13508 2018-02-26  Tom Tromey  <tom@tromey.com>
13509
13510         * rust-lang.h (rust_last_path_segment): Declare.
13511         * rust-lang.c (rust_last_path_segment): Now public.  Change
13512         contract.
13513         (struct disr_info): Remove.
13514         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13515         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13516         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13517         (rust_enum_p, rust_enum_variant): New function.
13518         (rust_underscore_fields): Remove "offset" parameter.
13519         (rust_print_enum): New function.
13520         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13521         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13522         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13523         enums.
13524         (rust_internal_print_type): New function, from rust_print_type.
13525         Remove enum code.
13526         (rust_print_type): Call rust_internal_print_type.
13527         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13528         Update enum handling.
13529         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13530         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13531         (rust_union_quirks): New functions.
13532         (process_full_comp_unit, process_full_type_unit): Call
13533         rust_union_quirks.
13534         (process_structure_scope): Update rust_unions if necessary.
13535
13536 2018-02-26  Tom Tromey  <tom@tromey.com>
13537
13538         * value.h (value_union_variant): Declare.
13539         * valops.c (value_union_variant): New function.
13540         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13541         (struct discriminant_info): New.
13542         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13543         enumerator.
13544         (struct main_type) <flag_discriminated_union>: New field.
13545
13546 2018-02-26  Tom Tromey  <tom@tromey.com>
13547
13548         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13549         unittests/unpack-selftests.c.
13550         * unittests/unpack-selftests.c: New file.
13551         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13552
13553 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13554
13555         * dwarf2read.c (struct partial_die_info) <read>: New method.
13556         (read_partial_die): Remove the declaration.
13557         (load_partial_dies): Update.
13558         (partial_die_info::partial_die_info):
13559         (read_partial_die): Change it to partial_die_info::read.
13560
13561 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13562
13563         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13564         (fixup_partial_die): Remove declaration.
13565         (scan_partial_symbols): Update.
13566         (partial_die_parent_scope): Likewise.
13567         (partial_die_full_name): Likewise.
13568         (fixup_partial_die): Change it to partial_die_info::fixup.
13569
13570 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13571
13572         * dwarf2read.c (read_partial_die): Update the declaration.
13573         (load_partial_dies): Caller update.
13574         (read_partial_die): Remove one argument abbrev_len.
13575
13576 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13577
13578         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13579         assignment operator.
13580         (load_partial_dies): Use ctor and copy ctor.
13581         (read_partial_die): Update.
13582         (dwarf2_cu::find_partial_die): Use ctor.
13583
13584 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13585
13586         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13587         (find_partial_die_in_comp_unit): Change it to
13588         dwarf2_cu::find_partial_die.
13589         (find_partial_die): Update.
13590
13591 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13592
13593         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13594         is NULL.
13595
13596 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13597
13598         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13599
13600 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13601
13602         * arch/amd64.h: Use common/tdesc.h.
13603         * arch/i386.c: Likewise.
13604         * arch/i386.h: Likewise.
13605         * arch/tic6x.c: Likewise.
13606         * arch/tdesc.h: Move file from here...
13607         * common/tdesc.h: ...to here.
13608         * features/aarch64-core.c: Regenerate.
13609         * features/aarch64-fpu.c: Regenerate.
13610         * features/i386/32bit-avx.c: Regenerate.
13611         * features/i386/32bit-avx512.c: Regenerate.
13612         * features/i386/32bit-core.c: Regenerate.
13613         * features/i386/32bit-linux.c: Regenerate.
13614         * features/i386/32bit-mpx.c: Regenerate.
13615         * features/i386/32bit-pkeys.c: Regenerate.
13616         * features/i386/32bit-sse.c: Regenerate.
13617         * features/i386/64bit-avx.c: Regenerate.
13618         * features/i386/64bit-avx512.c: Regenerate.
13619         * features/i386/64bit-core.c: Regenerate.
13620         * features/i386/64bit-linux.c: Regenerate.
13621         * features/i386/64bit-mpx.c: Regenerate.
13622         * features/i386/64bit-pkeys.c: Regenerate.
13623         * features/i386/64bit-segments.c: Regenerate.
13624         * features/i386/64bit-sse.c: Regenerate.
13625         * features/i386/x32-core.c: Regenerate.
13626         * features/tic6x-c6xp.c: Regenerate.
13627         * features/tic6x-core.c: Regenerate.
13628         * features/tic6x-gp.c: Regenerate.
13629         * target-descriptions.c: Use common/tdesc.h.
13630         * target-descriptions.h: Likewise.
13631
13632 2018-02-24  Tom Tromey  <tom@tromey.com>
13633
13634         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13635         (try_thread_db_load_from_dir, thread_db_load_search): Use
13636         std::string.
13637         (info_auto_load_libthread_db_compare): Return bool.  Change
13638         argument types.
13639         (info_auto_load_libthread_db): Use std::vector, std::string.
13640         Remove cleanups.
13641
13642 2018-02-24  Tom Tromey  <tom@tromey.com>
13643
13644         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13645         std::string.
13646         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13647         std::string*.
13648         * gdbarch.c: Rebuild.
13649         * gdbarch.h: Rebuild.
13650         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13651         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13652         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13653         std::string*.
13654
13655 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13656
13657         * gdbtypes.h (sect_offset): Change type to uint64_t.
13658         (sect_offset_str): New function.
13659         * dwarf2read.c (create_addrmap_from_aranges): Use
13660         sect_offset_str.
13661         (error_check_comp_unit_head): Likewise.
13662         (create_debug_type_hash_table): Likewise.
13663         (read_cutu_die_from_dwo): Likewise.
13664         (init_cutu_and_read_dies): Likewise.
13665         (init_cutu_and_read_dies_no_follow): Likewise.
13666         (process_psymtab_comp_unit_reader): Likewise.
13667         (partial_die_parent_scope): Likewise.
13668         (peek_die_abbrev): Likewise.
13669         (process_queue): Likewise.
13670         (dwarf2_physname): Likewise.
13671         (read_namespace_alias): Likewise.
13672         (read_import_statement): Likewise.
13673         (create_dwo_cu_reader): Likewise.
13674         (create_cus_hash_table): Likewise.
13675         (lookup_dwo_cutu): Likewise.
13676         (inherit_abstract_dies): Likewise.
13677         (read_func_scope): Likewise.
13678         (read_call_site_scope): Likewise.
13679         (dwarf2_add_member_fn): Likewise.
13680         (read_common_block): Likewise.
13681         (read_module_type): Likewise.
13682         (read_typedef): Likewise.
13683         (read_subrange_type): Likewise.
13684         (load_partial_dies): Likewise.
13685         (read_partial_die): Likewise.
13686         (find_partial_die): Likewise.
13687         (read_str_index): Likewise.
13688         (dwarf2_string_attr): Likewise.
13689         (build_error_marker_type): Likewise.
13690         (lookup_die_type): Likewise.
13691         (dump_die_shallow): Likewise.
13692         (follow_die_ref): Likewise.
13693         (dwarf2_fetch_die_loc_sect_off): Likewise.
13694         (dwarf2_fetch_constant_bytes): Likewise.
13695         (follow_die_sig): Likewise.
13696         (get_signatured_type): Likewise.
13697         (get_DW_AT_signature_type): Likewise.
13698         (dwarf2_find_containing_comp_unit): Likewise.
13699         (set_die_type): Likewise.
13700
13701 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13702
13703         * arch/aarch64.c: Include "common-defs.h".
13704         * arch/amd64.c: Likewise.
13705         * arch/i386.c: Likewise.
13706
13707 2018-02-21  Tom Tromey  <tom@tromey.com>
13708
13709         * value.h: (extract_field_op): Update.
13710         * eval.c (extract_field_op): Return a const char *.
13711         * expression.h (parse_expression_for_completion): Update.
13712         * completer.c (complete_expression): Update.
13713         (add_struct_fields): Make fieldname const.
13714         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13715         (mark_completion_tag, parse_exp_in_context_1): Update.
13716         (parse_expression_for_completion): Change "name" to
13717         unique_xmalloc_ptr*.
13718
13719 2018-02-21  Tom Tromey  <tom@tromey.com>
13720
13721         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13722
13723 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13724
13725         * avr-tdep.c (avr_read_pc): Change parameter type to
13726         readable_regcache.
13727         * gdbarch.sh (read_pc): Likewise.
13728         * gdbarch.c: Re-generated.
13729         * gdbarch.h: Re-generated.
13730         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13731         readable_regcache.
13732         * ia64-tdep.c (ia64_read_pc): Likewise.
13733         * mips-tdep.c (mips_read_pc): Likewise.
13734         * spu-tdep.c (spu_read_pc): Likewise.
13735
13736 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13737
13738         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13739         * regcache-dump.c: New file.
13740         * regcache.c: Move register_dump to regcache-dump.c.
13741         (maintenance_print_registers): Likewise.
13742         (maintenance_print_raw_registers): Likewise.
13743         (maintenance_print_cooked_registers): Likewise.
13744         (maintenance_print_register_groups): Likewise.
13745         (maintenance_print_remote_registers): Likewise.
13746         (_initialize_regcache): Likewise.
13747         * regcache.h (register_dump): Moved from regcache.c.
13748
13749 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13750
13751         * regcache.c (regcache::regcache): Update.
13752         (regcache::invalidate): Move it to detached_regcache::invalidate.
13753         (get_thread_arch_aspace_regcache): Update.
13754         (regcache::raw_update): Update.
13755         (regcache::cooked_read): Remove some code.
13756         (regcache::cooked_read_value): Likewise.
13757         (regcache::raw_write): Remove assert on m_readonly_p.
13758         (regcache::raw_supply_integer): Move it to
13759         detached_regcache::raw_supply_integer.
13760         (regcache::raw_supply_zeroed): Likewise.
13761         * regcache.h (detached_regcache) <raw_supply_integer>: New
13762         declaration.
13763         <raw_supply_zeroed, invalidate>: Likewise.
13764         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13765         <invalidate>: Likewise.
13766         <m_readonly_p>: Removed.
13767
13768 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13769
13770         * infcmd.c (get_return_value): Let stop_regs point to
13771         get_current_regcache.
13772         * regcache.c (regcache::regcache): Remove.
13773         (register_dump_reg_buffer): New class.
13774         (regcache_print): Adjust.
13775         * regcache.h (regcache): Remove constructors.
13776
13777 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13778
13779         * regcache.c (class register_dump): New class.
13780         (register_dump_regcache, register_dump_none): New class.
13781         (register_dump_remote, register_dump_groups): New class.
13782         (regcache_print): Update.
13783         * regcache.h (regcache_dump_what): Move it to regcache.c.
13784         (regcache) <dump>: Remove.
13785
13786 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13787
13788         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13789          reg_buffer_rw *.
13790         (jit_unwind_reg_set_impl): Call raw_supply.
13791         (jit_frame_sniffer): Use reg_buffer_rw.
13792         * record-full.c (record_full_core_regbuf): Change its type.
13793         (record_full_core_open_1): Use reg_buffer_rw.
13794         (record_full_close): Likewise.
13795         (record_full_core_fetch_registers): Use regcache->raw_supply.
13796         (record_full_core_store_registers): Likewise.
13797         * regcache.c (regcache::get_register_status): Move it to
13798         reg_buffer.
13799         (regcache_raw_set_cached_value): Remove.
13800         (regcache::raw_set_cached_value): Remove.
13801         (regcache::raw_write): Call raw_supply.
13802         (regcache::raw_supply): Move it to reg_buffer_rw.
13803         * regcache.h (regcache_raw_set_cached_value): Remove.
13804         (reg_buffer_rw): New class.
13805
13806 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13807
13808         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13809         readonly_detached_regcache.
13810         (dummy_frame_prev_register): Use regcache->cooked_read.
13811         * frame.c (frame_save_as_regcache): Change return type.
13812         (frame_pop): Update.
13813         * frame.h (frame_save_as_regcache): Update declaration.
13814         * inferior.h (get_infcall_suspend_state_regcache): Update
13815         declaration.
13816         * infrun.c (infcall_suspend_state) <registers>: use
13817         readonly_detached_regcache.
13818         (save_infcall_suspend_state): Don't use regcache_dup.
13819         (get_infcall_suspend_state_regcache): Change return type.
13820         * linux-fork.c (struct fork_info) <savedregs>: Change to
13821         readonly_detached_regcache.
13822         <pc>: New field.
13823         (fork_save_infrun_state): Don't use regcache_dup.
13824         (info_checkpoints_command): Adjust.
13825         * mi/mi-main.c (register_changed_p): Update declaration.
13826         (mi_cmd_data_list_changed_registers): Use
13827         readonly_detached_regcache.
13828         (register_changed_p): Change parameter type to
13829         readonly_detached_regcache.
13830         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13831         readonly_detached_regcache.
13832         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13833         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13834         New.
13835         (regcache::save): Move it to reg_buffer.
13836         (regcache::restore): Change parameter type.
13837         (regcache_dup): Remove.
13838         * regcache.h (reg_buffer) <save>: New method.
13839         (readonly_detached_regcache): New class.
13840         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13841         readonly_detached_regcache.
13842         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13843
13844 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13845
13846         * frame.c (frame_save_as_regcache): Use regcache method save.
13847         (frame_pop): Use regcache method restore.
13848         * infrun.c (restore_infcall_suspend_state): Likewise.
13849         * linux-fork.c (fork_load_infrun_state): Likewise.
13850         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13851         save.
13852         * regcache.c (regcache_save): Remove.
13853         (regcache::restore): More asserts.
13854         (regcache_cpy): Remove.
13855         * regcache.h (regcache_save): Remove the declaration.
13856         (regcache::restore): Move from private to public.
13857         Remove the friend declaration of regcache_cpy.
13858         (regcache_cpy): Remove declaration.
13859
13860 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13861
13862         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13863         parameter type to 'readable_regcache *'.
13864         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13865         * arm-tdep.c (arm_neon_quad_read): Likewise.
13866         (arm_pseudo_read): Likewise.
13867         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13868         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13869         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13870         * gdbarch.c: Re-generated.
13871         * gdbarch.h: Re-generated.
13872         * gdbarch.sh (pseudo_register_read): Change parameter type to
13873         'readable_regcache *'.
13874         (pseudo_register_read_value): Likewise.
13875         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13876         (h8300_pseudo_register_read): Likewise.
13877         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13878         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13879         (i386_pseudo_register_read_into_value): Likewise.
13880         (i386_pseudo_register_read_value): Likewise.
13881         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13882         declaration.
13883         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13884         * m32c-tdep.c (m32c_raw_read): Likewise.
13885         (m32c_read_flg): Likewise.
13886         (m32c_banked_register): Likewise.
13887         (m32c_banked_read): Likewise.
13888         (m32c_sb_read): Likewise.
13889         (m32c_part_read): Likewise.
13890         (m32c_cat_read): Likewise.
13891         (m32c_r3r2r1r0_read): Likewise.
13892         (m32c_pseudo_register_read): Likewise.
13893         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13894         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13895         (mep_pseudo_cr64_read): Likewise.
13896         (mep_pseudo_register_read): Likewise.
13897         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13898         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13899         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13900         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13901         (regcache::cooked_read): Likewise.
13902         (regcache::cooked_read_value): Likewise.
13903         (regcache_cooked_read_signed):
13904         (regcache::cooked_read): Likewise.
13905         * regcache.h (readable_regcache): New class.
13906         (regcache): Inherit readable_regcache.  Move some methods to
13907         readable_regcache.
13908         * rl78-tdep.c (rl78_pseudo_register_read): Change
13909         parameter type to 'readable_regcache *'.
13910         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13911         (e500_pseudo_register_read): Change parameter type to
13912         'readable_regcache *'.
13913         (dfp_pseudo_register_read): Likewise.
13914         (vsx_pseudo_register_read): Likewise.
13915         (efpr_pseudo_register_read): Likewise.
13916         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13917         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13918         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13919         (sh64_pseudo_register_read): Likewise.
13920         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13921         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13922         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13923         (spu_pseudo_register_read): Likewise.
13924         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13925         (xtensa_pseudo_register_read): Likewise.
13926
13927 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13928
13929         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13930         (regcache::arch): Move it to reg_buffer::arch.
13931         (regcache::register_buffer): Likewise.
13932         (regcache::assert_regnum): Likewise.
13933         (regcache::num_raw_registers): Likewise.
13934         * regcache.h (reg_buffer): New class.
13935         (regcache): Inherit reg_buffer.
13936
13937 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13938
13939         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13940         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13941
13942 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13943
13944         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13945
13946 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13947
13948         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13949         (SFILES): Remove common/*.c files.
13950         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13951         * common/common.host: Add common reference.
13952         * configure.ac: Likewise.
13953         * configure: Regenerate.
13954
13955 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13956
13957         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13958         (block_initialize_namespace): Use new.
13959         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13960         (dwarf2_free_objfile): Use delete.
13961         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13962         (copy_type_recursive): Use new.
13963         * gdb_obstack.h (allocate_on_obstack): New.
13964
13965 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13966
13967         PR gdb/22849
13968         * inferior.c (exit_inferior_1): Reset inf->control.
13969
13970 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13971
13972         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13973         declaration.
13974
13975 2018-02-14  Pedro Alves  <palves@redhat.com>
13976
13977         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13978         frame_cleanup_after_sniffer on exception.
13979
13980 2018-02-14  Tom Tromey  <tom@tromey.com>
13981
13982         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13983         const.
13984         (solib_bfd_open): Make pathname const.
13985         * solib.c (solib_bfd_open): Make pathname const.
13986         * solib-spu.c (spu_bfd_fopen): Make name const.
13987         (spu_bfd_open): Make pathname const.
13988         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13989         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13990
13991 2018-02-14  Tom Tromey  <tom@tromey.com>
13992
13993         * symfile.c (symfile_bfd_open): Update.
13994         * source.h (openp, source_full_path_of, find_and_open_source):
13995         Change argument type to unique_xmalloc_ptr.
13996         * source.c (openp): Take a unique_xmalloc_ptr.
13997         (source_full_path_of, find_and_open_source): Likewise.
13998         (open_source_file, symtab_to_fullname): Update.
13999         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14000         unique_xmalloc_ptr.
14001         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14002         (exec_file_find): Update.
14003         * psymtab.c (psymtab_to_fullname): Update.
14004         * nto-tdep.h (nto_find_and_open_solib): Update.
14005         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14006         unique_xmalloc_ptr.
14007         * exec.c (exec_file_attach): Update.
14008         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14009         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14010
14011 2018-02-14  Tom Tromey  <tom@tromey.com>
14012
14013         * solib.c: Include source.h.
14014         * nto-tdep.c: Include source.h.
14015         * mi/mi-cmd-env.c: Include source.h.
14016         * infcmd.c: Include source.h.
14017         * exec.c: Include source.h.
14018         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14019         (add_path, directory_switch, source_path, init_source_path): Move
14020         declarations...
14021         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14022         (add_path, directory_switch, source_path, init_source_path):
14023         ...here.
14024
14025 2018-02-14  Tom Tromey  <tom@tromey.com>
14026
14027         * solist.h (exec_file_find, solib_find): Return
14028         unique_xmalloc_ptr.
14029         (solib_bfd_fopen): Take a const char *.
14030         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14031         (exec_file_find, solib_find): Likewise.
14032         (solib_bfd_fopen): Do not take ownership of "pathname".
14033         (solib_bfd_open): Use unique_xmalloc_ptr.
14034         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14035         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14036         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14037         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14038
14039 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14040
14041         * ada-lang.c (name_match_type_from_name): Remove reference to
14042         ada_name_for_lookup in function's documentation.
14043         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14044
14045 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14046
14047         * defs.h (enum openp_flags): New enum.
14048         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14049         Move to enum openp_flags.
14050         (openp_flags): New enum flags.
14051         (openp): Change parameter type to openp_flags.
14052         * source.c (openp): Change parameter type to openp_flags.
14053         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14054         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14055
14056 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14057
14058         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14059         per-command.
14060
14061 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14062
14063         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14064         into...
14065         (class dwarf2_queue_guard): ...the destructor of this new class.
14066         (dw2_do_instantiate_symtab): Create instance of the new class
14067         dwarf2_queue_guard, remove cleanup.
14068
14069 2018-02-09  Tom Tromey  <tom@tromey.com>
14070
14071         * source.c (find_source_lines): Don't reference past the end of
14072         the vector.
14073
14074 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14075
14076         * remote.c (remote_btrace_maybe_reopen): Change error message.
14077         * btrace.c (btrace_enable): Likewise.
14078         (parse_xml_btrace): Likewise.
14079         (parse_xml_btrace_conf): Likewise.
14080
14081 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14082
14083         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14084         (linux_enable_pt, linux_enable_bts): Call
14085         diagnose_perf_event_open_fail.
14086
14087 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14088
14089         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14090         Remove parameter and change return type.  Update callers.  Move it.
14091         (linux_enable_bts, linux_enable_pt): Improve error message.
14092         (linux_enable_pt): Remove zero buffer size check.
14093         (linux_enable_btrace): Improve error messages.  Remove NULL return
14094         check.
14095
14096 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14097
14098         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14099         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14100         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14101         (linux_supports_pt, linux_supports_btrace): Remove.
14102         (linux_enable_bts): Call cpu_supports_bts.
14103         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14104         * remote.c (remote_supports_btrace): Remove.
14105         (init_remote_ops): Remove remote_supports_btrace.
14106         * target-delegates.c: Regenerated.
14107         * target.c (target_supports_btrace): Remove.
14108         * target.h (target_ops) <to_supports_btrace>: Remove
14109         (target_supports_btrace): Remove.
14110         * x86-linux-nat.c (x86_linux_create_target): Remove
14111         linux_supports_btrace.
14112
14113 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14114
14115         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14116         btrace failed.
14117         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14118         exception and use message in own exception.
14119
14120 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14121
14122         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14123         (perf_event_pt_event_type): Use gdb_file_up.
14124         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14125         scoped_fd, and scoped_mmap.
14126
14127 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14128
14129         * common/scoped_mmap.h: New.
14130         * unittests/scoped_mmap-selftest.c: New.
14131         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14132         unittests/scoped_mmap-selftest.c.
14133
14134 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14135
14136         * common/scoped_fd.h: New.
14137         * unittests/scoped_fd-selftest.c: New.
14138         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14139         unittests/scoped_fd-selftest.c.
14140
14141 2018-02-09  Tom Tromey  <tom@tromey.com>
14142
14143         * auto-load.c (auto_load_section_scripts): Use
14144         gdb::unique_xmalloc_ptr.
14145
14146 2018-02-09  Tom Tromey  <tom@tromey.com>
14147
14148         * auto-load.c (execute_script_contents): Use std::string.
14149
14150 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14151
14152         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14153         Python function, rather than a new command.
14154
14155 2018-02-08  Tom Tromey  <tom@tromey.com>
14156
14157         * solib.c (solib_find_1): Use std::string.
14158         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14159
14160 2018-02-08  Tom Tromey  <tom@tromey.com>
14161
14162         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14163
14164 2018-02-08  Tom Tromey  <tom@tromey.com>
14165
14166         * source.c (find_source_lines): Use gdb::def_vector.
14167
14168 2018-02-08  Tom Tromey  <tom@tromey.com>
14169
14170         * macrocmd.c (struct temporary_macro_definition): New.
14171         (macro_define_command): Use temporary_macro_definition.  Remove
14172         cleanups.
14173         (free_macro_definition_ptr): Remove.
14174
14175 2018-02-08  Tom Tromey  <tom@tromey.com>
14176
14177         * macroexp.c (maybe_expand): Use std::string.
14178
14179 2018-02-08  Tom Tromey  <tom@tromey.com>
14180
14181         * macroexp.c (struct macro_buffer): Add initializers for some
14182         members.
14183         (init_buffer, init_shared_buffer, free_buffer)
14184         (free_buffer_return_text): Remove.
14185         (macro_buffer): New constructors.
14186         (~macro_buffer): New destructor.
14187         (macro_buffer::set_shared): New method.
14188         (macro_buffer::resize_buffer, macro_buffer::appendc)
14189         (macro_buffer::appendmem): Now methods, not free functions.
14190         (set_token, append_tokens_without_splicing, stringify)
14191         (macro_stringify): Update.
14192         (gather_arguments): Change return type.  Remove argc_p argument,
14193         add args_ptr argument.  Use std::vector.
14194         (substitute_args): Remove argc argument.  Accept std::vector.
14195         (expand): Update.  Use std::vector.
14196         (scan, macro_expand, macro_expand_next): Update.
14197
14198 2018-02-08  Tom Tromey  <tom@tromey.com>
14199
14200         * symtab.c (default_collect_symbol_completion_matches_break_on):
14201         Use unique_xmalloc_ptr.
14202         * macroscope.h: (sal_macro_scope, user_macro_scope)
14203         (default_macro_scope): Return unique_xmalloc_ptr.
14204         * macroscope.c (sal_macro_scope, user_macro_scope)
14205         (default_macro_scope): Return unique_xmalloc_ptr.
14206         * macroexp.h (macro_expand, macro_expand_once): Return
14207         unique_xmalloc_ptr.
14208         * macroexp.c (macro_expand, macro_expand_once): Return
14209         unique_xmalloc_ptr.
14210         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14211         (info_macro_command, info_macros_command): Use
14212         unique_xmalloc_ptr.
14213         * compile/compile-c-support.c (write_macro_definitions): Use
14214         unique_xmalloc_ptr.
14215         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14216
14217 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14218
14219         * value.c (value_static_field): Assign field type instead of
14220         containing type when returning an optimized out value.
14221
14222 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14223
14224         * ft32-tdep.c (ft32_read_pc): Remove.
14225         (ft32_write_pc): Remove.
14226         (ft32_gdbarch_init): Update.
14227         * m32r-tdep.c (m32r_read_pc): Remove.
14228         (m32r_gdbarch_init): Update.
14229         * mep-tdep.c (mep_read_pc): Remove.
14230         (mep_gdbarch_init): Update.
14231         * microblaze-tdep.c (microblaze_write_pc): Remove.
14232         (microblaze_gdbarch_init): Update.
14233         * mn10300-tdep.c (mn10300_read_pc): Remove.
14234         (mn10300_write_pc): Remove.
14235         (mn10300_gdbarch_init): Update.
14236         * moxie-tdep.c (moxie_read_pc): Remove.
14237         (moxie_write_pc): Remove.
14238         (moxie_gdbarch_init): Update.
14239
14240 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14241
14242         * expprint.c (print_subexp_standard): Handle
14243         OP_F77_UNDETERMINED_ARGLIST.
14244         (dump_subexp_body_standard): Likewise.
14245
14246 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14247
14248         * target-descriptions.c (tdesc_element_visitor) Add empty
14249         implementations.
14250         (tdesc_type): Move make_gdb_type from here.
14251         (tdesc_type_builtin): Likewise.
14252         (tdesc_type_vector): Likewise.
14253         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14254         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14255         (make_gdb_type_union): Likewise.
14256         (make_gdb_type_flags): Likewise.
14257         (make_gdb_type_enum): Likewise.
14258         (make_gdb_type): New function.
14259         (tdesc_register_type): Use static make_gdb_type.
14260
14261 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14262
14263         * infcmd.c (default_print_one_register_info): Align natural-format
14264         column values consistently one under another.
14265         (pad_to_column): New function.
14266
14267 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14268
14269         * dwarf2read.c (dwarf2_physname): Move commment.
14270
14271 2018-02-01  Leszek Swirski  <leszeks@google.com>
14272
14273         * varobj.c (varobj_formatted_print_options): Allow recursive
14274         pretty printing if pretty printing is enabled.
14275
14276 2018-02-01  Leszek Swirski  <leszeks@google.com>
14277
14278         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14279         names after a structop as a filename.
14280
14281 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14282
14283         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14284         (arm_record_coproc_data_proc): Likewise.
14285
14286 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14287
14288         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14289
14290 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14291
14292         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14293         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14294
14295 2018-01-31  Pedro Alves  <palves@redhat.com>
14296
14297         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14298         * inflow.c (child_terminal_save_inferior): Wrap reference to
14299         tcgetpgrp in HAVE_TERMIOS_H.
14300         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14301         _WIN32.
14302         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14303         always iterate over all inferiors.
14304         (gdbsim_cntrl_c): Adjust.
14305         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14306
14307 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14308
14309         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14310         index type is objfile-owned if the element type is as well.
14311
14312 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14313
14314         GDB 8.1 released.
14315
14316 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14317
14318         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14319         "features/s390x-linux64.c".
14320         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14321         s390_linux32 and s390x_linux64.
14322         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14323         default tdesc.
14324         * s390-tdep.c: Include "features/s390-linux32.c" and
14325         "features/s390x-linux64.c".
14326         (s390_tdesc_valid): Add check for tdesc_has_registers.
14327         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14328         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14329         tdesc_s390x_linux64.
14330         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14331         tdesc_s390x_linux64 to...
14332         * s390-tdep.h: ...here.
14333
14334 2018-01-30  Pedro Alves  <palves@redhat.com>
14335
14336         PR gdb/13211
14337         * config.in, configure: Regenerate.
14338         * configure.ac: Check for getpgid.
14339         * go32-nat.c (go32_pass_ctrlc): New.
14340         (go32_target): Install it.
14341         * inf-child.c (inf_child_target): Install
14342         child_terminal_save_inferior, child_pass_ctrlc and
14343         child_interrupt.
14344         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14345         (inf_ptrace_target): No longer install it.
14346         * infcmd.c (interrupt_target_1): Adjust.
14347         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14348         (child_interrupt): Declare.
14349         (inferior::terminal_state): New.
14350         * inflow.c (struct terminal_info): Update comments.
14351         (inferior_process_group): Delete.
14352         (terminal_is_ours): Delete.
14353         (gdb_tty_state): New.
14354         (child_terminal_init): Adjust.
14355         (is_gdb_terminal, sharing_input_terminal_1)
14356         (sharing_input_terminal): New functions.
14357         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14358         Set the process's actual process group in the foreground if
14359         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14360         mark terminal as the inferior's if not sharing GDB's terminal.
14361         Don't check attach_flag.
14362         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14363         pass down a target_terminal_state.
14364         (child_terminal_save_inferior): New, factored out from ...
14365         (child_terminal_ours_1): ... this.  Handle
14366         target_terminal_state::is_ours_for_output.
14367         (child_interrupt, child_pass_ctrlc): New.
14368         (inflow_inferior_exit): Clear the inferior's terminal_state.
14369         (copy_terminal_info): Copy the inferior's terminal state.
14370         (_initialize_inflow): Remove reference to terminal_is_ours.
14371         * inflow.h (inferior_process_group): Delete.
14372         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14373         * procfs.c (procfs_target): Don't install procfs_interrupt.
14374         (procfs_interrupt): Delete.
14375         * remote.c (remote_serial_quit_handler): Adjust.
14376         (remote_interrupt): Remove ptid parameter.  Adjust.
14377         * target-delegates.c: Regenerate.
14378         * target.c: Include "terminal.h".
14379         (target_terminal::terminal_state): Rename to ...
14380         (target_terminal::m_terminal_state): ... this.
14381         (target_terminal::init): Adjust.
14382         (target_terminal::inferior): Adjust to per-inferior
14383         terminal_state.
14384         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14385         (target_terminal::ours, target_terminal::ours_for_output): Use
14386         target_terminal_is_ours_kind.
14387         (target_interrupt): Remove ptid parameter.  Adjust.
14388         (default_target_pass_ctrlc): Adjust.
14389         * target.h (target_ops::to_terminal_save_inferior): New field.
14390         (target_ops::to_interrupt): Remove ptid_t parameter.
14391         (target_interrupt): Remove ptid_t parameter.  Update comment.
14392         (target_pass_ctrlc): Update comment.
14393         * target/target.h (target_terminal_state): New scoped enum,
14394         factored out of ...
14395         (target_terminal::terminal_state): ... here.
14396         (target_terminal::inferior): Update comments.
14397         (target_terminal::restore_inferior): New.
14398         (target_terminal::is_inferior, target_terminal::is_ours)
14399         (target_terminal::is_ours_for_output): Adjust.
14400         (target_terminal::scoped_restore_terminal_state): Adjust to
14401         rename, and call restore_inferior() instead of inferior().
14402         (target_terminal::scoped_restore_terminal_state::m_state): Change
14403         type.
14404         (target_terminal::terminal_state): Rename to ...
14405         (target_terminal::m_terminal_state): ... this and change type.
14406
14407 2018-01-30  Pedro Alves  <palves@redhat.com>
14408
14409         * linux-nat.c (wait_for_signal): New function.
14410         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14411         directly.
14412         (async_terminal_is_ours)
14413         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14414         (linux_nat_add_target): Don't override
14415         to_terminal_inferior/to_terminal_ours.
14416
14417 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14418
14419         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14420
14421 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14422
14423         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14424         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14425         dwarf2_per_objfile_free here.
14426         (dwarf2_per_objfile_free): Remove.
14427         (_initialize_dwarf2_read): Don't register
14428         dwarf2_per_objfile_free as a registry cleanup.
14429
14430 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14431
14432         Avoid compilation errors in MinGW native builds
14433
14434         The error is triggered by including python-internal.h, and the
14435         error message is:
14436
14437              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14438                       from build-gnulib/import/math.h:27,
14439                       from d:/usr/Python26/include/pyport.h:235,
14440                       from d:/usr/Python26/include/Python.h:58,
14441                       from python/python-internal.h:94,
14442                       from python/py-arch.c:24:
14443              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14444         using ::hypot;
14445                 ^~~~~
14446
14447         This happens because Python headers define 'hypot' to expand t
14448         '_hypot' in the Windows builds.
14449         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14450         'hypoth'.  This avoids a compilation error.
14451
14452 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14453
14454         * MAINTAINERS (Write After Approval): Fix ordering.
14455
14456 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14457
14458         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14459
14460 2018-01-26  Alan Modra  <amodra@gmail.com>
14461
14462         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14463         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14464         Remove nop.  Make const.  Comment.
14465         (powerpc32_plt_stub_so_2): New.
14466         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14467         Correct count.  Update uses.
14468         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14469         Move common code reading PLT entry word.  Correct
14470         powerpc32_plt_stub PLT address calculation.
14471         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14472         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14473         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14474         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14475         (ppc64_standard_linkage8): Likewise.
14476         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14477         Correct insns description.
14478         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14479
14480 2018-01-24  Pedro Alves  <palves@redhat.com>
14481
14482         GCC PR libstdc++/83906
14483         * gdbtypes.c (operator==(const dynamic_prop &,
14484         const dynamic_prop &)): New.
14485         (operator==(const range_bounds &, const range_bounds &)): New.
14486         (check_types_equal): Use them instead of memcmp.
14487         * gdbtypes.h (operator==(const dynamic_prop &,
14488         const dynamic_prop &)): Declare.
14489         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14490         (operator==(const range_bounds &, const range_bounds &)): Declare.
14491         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14492
14493 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14494
14495         * s390-linux-tdep.c (s390_record_address_mask)
14496         (s390_record_calc_disp_common, s390_record_calc_disp)
14497         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14498         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14499         (s390_process_record): Move to s390-tdep.c.
14500         (s390_linux_init_abi_any): Adjust.
14501         * s390-tdep.c (s390_record_address_mask)
14502         (s390_record_calc_disp_common, s390_record_calc_disp)
14503         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14504         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14505         (s390_process_record): Moved from s390-linux-tdep.c
14506         (s390_gdbarch_init): Adjust.
14507
14508 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14509
14510         * s390-linux-nat.c (s390-tdep.h): New include.
14511         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14512         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14513         (ALLDEPFILES): Add s390-tdep.c.
14514         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14515         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14516         * s390-tdep.h: ...this.  New file.
14517         * s390-linux-tdep.c (s390-tdep.h): New include.
14518         (_initialize_s390_tdep): Rename to...
14519         (_initialize_s390_linux_tdep): ...this and adjust.
14520         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14521         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14522         s390-tdep.h.
14523         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14524         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14525         (s390_is_partial_instruction, s390_software_single_step)
14526         (is_non_branch_ril, s390_displaced_step_copy_insn)
14527         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14528         (s390_prologue_data, s390_addr, s390_store, s390_load)
14529         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14530         (s390_register_call_saved, s390_guess_tracepoint_registers)
14531         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14532         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14533         (s390_pseudo_register_name, s390_pseudo_register_type)
14534         (s390_pseudo_register_read, s390_pseudo_register_write)
14535         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14536         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14537         (s390_addr_bits_remove, s390_address_class_type_flags)
14538         (s390_address_class_type_flags_to_name)
14539         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14540         (s390_function_arg_float, s390_function_arg_vector)
14541         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14542         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14543         (s390_frame_align, s390_register_return_value, s390_return_value)
14544         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14545         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14546         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14547         (s390_trad_frame_prev_register, s390_unwind_cache)
14548         (s390_prologue_frame_unwind_cache)
14549         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14550         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14551         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14552         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14553         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14554         (s390_frame_base_address, s390_local_base_address)
14555         (s390_frame_base, s390_gcc_target_options)
14556         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14557         (s390_validate_reg_range, s390_tdesc_valid)
14558         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14559         * s390-tdep.c: ...this.  New file.
14560
14561 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14562
14563         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14564         (s390_process_record, s390_gdbarch_tdep_alloc)
14565         (s390_linux_init_abi_any): Use/set new hook.
14566
14567 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14568
14569         * s390-linux-tdep.c (osabi.h): New include.
14570         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14571         (s390_linux_init_abi_any): New functions.
14572         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14573
14574 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14575
14576         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14577         tdesc_has_registers check
14578
14579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14580
14581         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14582         (s390_validate_reg_range): New macro.
14583         (s390_gdbarch_init): Adjust.
14584
14585 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14586
14587         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14588         (s390_gdbarch_tdep_alloc): Adjust.
14589         (s390_gdbarch_init): Adjust.
14590
14591 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14592
14593         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14594         <have_tdb>: Change type to bool.
14595         (s390_gdbarch_tdep_alloc): Adjust.
14596         (s390_gdbarch_init): Adjust.
14597
14598 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14599
14600         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14601         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14602         (s390_gdbarch_tdep_alloc): New function.
14603         (s390_gdbarch_init): Allocate tdep at start and use its fields
14604         instead of separate variables.
14605
14606 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14607
14608         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14609         when looking for cached gdbarch and add comment for remaining.
14610
14611 2018-01-22  Pedro Alves  <palves@redhat.com>
14612             Sergio Durigan Junior  <sergiodj@redhat.com>
14613
14614         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14615         case.
14616
14617 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14618
14619         * MAINTAINERS: Update my company e-mail address.
14620
14621 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14622
14623         * regcache.c (cooked_write_test): New function.
14624         (_initialize_regcache): Register the test.
14625
14626 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14627
14628         * ia64-tdep.c (ia64_pseudo_register_read): Call
14629         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14630         * m32c-tdep.c (m32c_cat_read): Likewise.
14631         (m32c_r3r2r1r0_read): Likewise.
14632         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14633         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14634
14635 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14636
14637         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14638         method raw_read instead of regcache_raw_read.
14639         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14640         * arm-tdep.c (arm_neon_quad_read): Likewise.
14641         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14642         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14643         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14644         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14645         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14646         (i386_pseudo_register_read_into_value): Likewise.
14647         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14648         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14649         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14650         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14651         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14652         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14653         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14654         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14655         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14656
14657 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14658
14659         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14660         * configure.tgt: Remove target mt.
14661         * mt-tdep.c: Remove.
14662         * regcache.c (cooked_read_test): Remove the check for mt.
14663
14664 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14665
14666         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14667         instead of gdbarch_pseudo_register_read_value.
14668
14669 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14670
14671         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14672         language is Ada.
14673
14674 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14675
14676         * linespec.c (create_sals_line_offset): Remove code that preserved
14677         the symtab_and_line's line number.
14678
14679 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14680
14681         * varobj.c (varobj_create): Don't set valid_block when creating a
14682         floating varobj.
14683
14684 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14685
14686         * varobj.c (varobj_create): Remove out of date comment.
14687
14688 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14689
14690         PR mi/20395
14691         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14692         updating innermost block.
14693         * parse.c (innermost_block_tracker::update): Take extra type
14694         parameter, and check types match before updating innermost block.
14695         (write_dollar_variable): Update innermost block for registers.
14696         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14697         (innermost_block_tracker::innermost_block_tracker): Initialise
14698         m_types member.
14699         (innermost_block_tracker::reset): Take type parameter.
14700         (innermost_block_tracker::update): Take type parameter, and pass
14701         type through as needed.
14702         (innermost_block_tracker::m_types): New member.
14703         * varobj.c (varobj_create): Pass type when reseting innermost
14704         block.
14705
14706 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14707
14708         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14709         * ada-lang.c (resolve_subexp): Likewise.
14710         * breakpoint.c (set_breakpoint_condition) Likewise.
14711         (watch_command_1) Likewise.
14712         * c-exp.y (variable): Likewise.
14713         * d-exp.y (PrimaryExpression): Likewise.
14714         * f-exp.y (variable): Likewise.
14715         * go-exp.y (variable): Likewise.
14716         * m2-exp.y (variable): Likewise.
14717         * objfiles.c (objfile::~objfile): Likewise.
14718         * p-exp.y (variable): Likewise.
14719         * parse.c (innermost_block): Change type.
14720         * parser-defs.h (class innermost_block_tracker): New.
14721         (innermost_block): Change to innermost_block_tracker.
14722         * printcmd.c (display_command): Switch to innermost_block API.
14723         (do_one_display): Likewise.
14724         * rust-exp.y (do_one_display): Likewise.
14725         * symfile.c (clear_symtab_users): Likewise.
14726         * varobj.c (varobj_create): Switch to innermost_block API, replace
14727         use of innermost_block with block stored on varobj object.
14728
14729 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14730
14731         * expression.h (innermost_block): Remove declaration.
14732         * varobj.c: Add 'parser-defs.h' include.
14733
14734 2018-01-19  Tom Tromey  <tom@tromey.com>
14735
14736         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14737         symbols in the static and global blocks.
14738
14739 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14740
14741         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14742         gdb_ptrace.h, and move including gdb_wait.h ...
14743         * nat/linux-ptrace.h: ... to here.
14744
14745 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14746
14747         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14748         inf_ptrace_detach_success.
14749         (inf_ptrace_detach_success): Add inferior parameter, use it
14750         instead of inferior_ptid, pass it to detach_inferior.
14751         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14752         parameter.
14753         * inferior.c (detach_inferior): Add overload that takes an
14754         inferior object.
14755         * inferior.h (detach_inferior): Likewise.
14756         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14757         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14758         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14759
14760 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14761
14762         * target.h (struct target_ops) <to_detach>: Add inferior
14763         parameter.
14764         (target_detach): Likewise.
14765         * target.c (dispose_inferior): Pass inferior down.
14766         (target_detach): Pass inferior down.  Assert that it is equal to
14767         the current inferior.
14768         * aix-thread.c (aix_thread_detach): Pass inferior down.
14769         * corefile.c (core_file_command): Pass current_inferior() down.
14770         * corelow.c (core_detach): Add inferior parameter.
14771         * darwin-nat.c (darwin_detach): Likewise.
14772         * gnu-nat.c (gnu_detach): Likewise.
14773         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14774         * infcmd.c (detach_command): Pass current_inferior() down to
14775         target_detach.
14776         * infrun.c (follow_fork_inferior): Pass parent_inf to
14777         target_detach.
14778         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14779         target_detach.
14780         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14781         * linux-thread-db.c (thread_db_detach): Likewise.
14782         * nto-procfs.c (procfs_detach): Likewise.
14783         * procfs.c (procfs_detach): Likewise.
14784         * record.c (record_detach): Likewise.
14785         * record.h (struct inferior): Forward-declare.
14786         (record_detach): Add inferior parameter.
14787         * remote-sim.c (gdbsim_detach): Likewise.
14788         * remote.c (remote_detach_1): Likewise.
14789         (remote_detach): Likewise.
14790         (extended_remote_detach): Likewise.
14791         * sol-thread.c (sol_thread_detach): Likewise.
14792         * target-debug.h (target_debug_print_inferior_p): New macro.
14793         * target-delegates.c: Re-generate.
14794         * top.c (kill_or_detach): Pass inferior down to target_detach.
14795         * windows-nat.c (windows_detach): Add inferior parameter.
14796
14797 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14798
14799         * target.h (struct target_ops) <to_detach>: Remove args
14800         parameter.
14801         (target_detach): Likewise.
14802         * target.c (dispose_inferior): Adjust.
14803         (target_detach): Remove args parameter, adjust.
14804         * aix-thread.c (aix_thread_detach): Adjust.
14805         * corefile.c (core_file_command): Adjust.
14806         * corelow.c (core_detach): Adjust.
14807         * darwin-nat.c (darwin_detach): Adjust.
14808         * gnu-nat.c (gnu_detach): Adjust.
14809         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14810         * infcmd.c (detach_command): Adjust
14811         * infrun.c (follow_fork_inferior): Adjust.
14812         (handle_vfork_child_exec_or_exit): Adjust.
14813         * linux-fork.c (linux_fork_detach): Remove args parameter.
14814         * linux-fork.h (linux_fork_detach): Likewise.
14815         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14816         * linux-thread-db.c (thread_db_detach): Likewise.
14817         * nto-procfs.c (procfs_detach): Likewise.
14818         * procfs.c (procfs_detach): Likewise.
14819         (do_detach): Remove signo parameter.
14820         * record.c (record_detach): Remove args parameter.
14821         * record.h (record_detach): Likewise.
14822         * remote-sim.c (gdbsim_detach): Likewise.
14823         * remote.c (remote_detach_1): Likewise.
14824         (remote_detach): Likewise.
14825         (extended_remote_detach): Likewise.
14826         * sol-thread.c (sol_thread_detach): Likewise.
14827         * target-delegates.c: Re-generate.
14828         * top.c (struct qt_args) <args>: Remove field.
14829         (kill_or_detach): Don't pass args.
14830         (quit_force): Don't set args.
14831         * windows-nat.c (windows_detach): Remove args parameter.
14832
14833 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14834
14835         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14836         (arm_linux_init_abi): Install it.
14837
14838 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14839
14840         * osabi.c (gdb_osabi_names): Extend the regexp for
14841         arm-linux-gnueabihf.
14842
14843 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14844
14845         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14846         m_abbrevs.
14847         (abbrev_table::add_abbrev): Update.
14848         (abbrev_table::lookup_abbrev): Update.
14849
14850 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14851
14852         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14853
14854 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14855
14856         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14857         to "std::string".
14858
14859 2018-01-17  Tom Tromey  <tom@tromey.com>
14860
14861         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14862
14863 2018-01-17  Tom Tromey  <tom@tromey.com>
14864
14865         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14866         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14867         (create_array_type_with_stride): Update.
14868         * dwarf2read.c (set_die_type): Update.
14869
14870 2018-01-17  Tom Tromey  <tom@tromey.com>
14871
14872         * dwarf2read.c (delayed_method_info): Remove typedef.
14873         (dwarf2_cu::method_info): Now a std::vector.
14874         (add_to_method_list): Update.
14875         (free_delayed_list): Remove.
14876         (compute_delayed_physnames): Update.
14877         (process_full_comp_unit, process_full_type_unit): Clear the method
14878         list.  Remove cleanups.
14879         (psymtab_include_file_name): Add name_holder parameter.  Use
14880         unique_xmalloc_ptr.
14881         (dwarf_decode_lines): Update.
14882
14883 2018-01-17  Tom Tromey  <tom@tromey.com>
14884             Simon Marchi  <simon.marchi@ericsson.com>
14885
14886         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14887         (dwarf2_per_objfile::free_cached_comp_units)
14888         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14889         (init_cutu_and_read_dies_no_follow): Update.
14890         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14891         (dwarf2_cu::~dwarf2_cu): New.
14892         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14893         (age_cached_comp_units, free_one_cached_comp_unit): 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) <abbrev_table>: Remove.
14899         (struct die_reader_specs) <abbrev_table>: New member.
14900         (struct abbrev_table): Add constructor.
14901         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14902         <abbrev_obstack>: Now an auto_obstack.
14903         (abbrev_table_up): New typedef.
14904         (init_cu_die_reader): Add abbrev_table parameter.
14905         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14906         Add result_dwo_abbrev_table.
14907         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14908         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14909         Update.
14910         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14911         parameter.
14912         (skip_children): Update.
14913         (abbrev_table::alloc_abbrev): Rename from
14914         abbrev_table_alloc_abbrev.
14915         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14916         (abbrev_table::lookup_abbrev): Rename from
14917         abbrev_table_lookup_abbrev.
14918         (abbrev_table_read_table): Return abbrev_table_up.
14919         (abbrev_table_free, abbrev_table_free_cleanup)
14920         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14921         (load_partial_dies): Update.
14922
14923 2018-01-17  Tom Tromey  <tom@tromey.com>
14924
14925         * dwarf2read.c (dwarf2_compute_name): Update comment.
14926         (read_func_scope, read_variable): Update.
14927         (new_symbol): Remove.
14928         (new_symbol_full): Rename to new_symbol.
14929
14930 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14931
14932         PR gdb/16577
14933         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14934         a warning instead of throwing an error, set section size to 0 and return
14935         NULL.
14936         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14937
14938 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14939
14940         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14941         std::string.
14942         (linux_ptrace_attach_fail_reason_string): Likewise.
14943         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14944         Likewise.
14945         (linux_ptrace_attach_fail_reason_string): Likewise.
14946         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14947
14948 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14949
14950         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14951
14952 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14953
14954         PR gdb/21559
14955         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14956         checking for fs_base/gs_base fields in struct user_regs_struct.
14957         * configure: Regenerate.
14958
14959 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14960
14961         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14962         function.
14963         (aarch64_linux_init_abi): Install it to gdbarch hook
14964         gcc_target_options.
14965
14966 2018-01-15  Pedro Alves  <palves@redhat.com>
14967
14968         * common/signals-state-save-restore.c
14969         (save_original_signals_state): Fix typos.
14970
14971 2017-01-12  Tom Tromey  <tom@tromey.com>
14972             Sergio Durigan Junior  <sergiodj@redhat.com>
14973
14974         * Makefile.in (install-only): Install gdb-add-index.
14975
14976 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14977
14978         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14979
14980 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14981
14982         * infrun.c (keep_going_pass_signal): Clear step-over info when
14983         insert_breakpoints fails.
14984
14985 2018-01-11  Pedro Alves  <palves@redhat.com>
14986
14987         PR gdb/22583
14988         * infrun.c (resume): Rename to ...
14989         (resume_1): ... this.
14990         (resume): Reimplement as wrapper around resume_1.
14991
14992 2018-01-11  Pedro Alves  <palves@redhat.com>
14993
14994         PR remote/22597
14995         * remote.c (remote_parse_stop_reply): Default to the last-set
14996         general thread instead of to 'magic_null_ptid'.
14997
14998 2018-01-10  Pedro Alves  <palves@redhat.com>
14999
15000         * language.h (language_get_symbol_name_matcher): Rename ...
15001         (get_symbol_name_matcher): ... this.
15002         * language.c (language_get_symbol_name_matcher): Ditto.
15003         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15004         callers adjusted.
15005
15006 2018-01-10  Pedro Alves  <palves@redhat.com>
15007
15008         PR gdb/22670
15009         * dwarf2read.c
15010         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15011         Adjust to use language_get_symbol_name_matcher instead of
15012         language_defn::la_get_symbol_name_matcher.
15013         * language.c (language_get_symbol_name_matcher): If in Ada mode
15014         and the lookup name is a verbatim match, return Ada's matcher.
15015         * language.h (language_get_symbol_name_matcher): Adjust comment.
15016         (ada_lookup_name_info::verbatim_p):: New method.
15017
15018 2018-01-10  Pedro Alves  <palves@redhat.com>
15019
15020         PR gdb/22670
15021         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15022         minsym's language is language_auto or language_cplus, pass down
15023         language_ada instead.
15024         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15025
15026 2018-01-10  Pedro Alves  <palves@redhat.com>
15027
15028         PR gdb/22670
15029         * minsyms.c (linkage_name_str): New function.
15030         (iterate_over_minimal_symbols): Use it.
15031
15032 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15033
15034         * NEWS: Document that 'info proc' now works on FreeBSD.
15035
15036 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15037
15038         * configure.ac: Check for kinfo_getfile in libutil.
15039         * configure: Regenerate.
15040         * config.in: Regenerate.
15041         * fbsd-nat.c: Include "fbsd-tdep.h".
15042         (fbsd_fetch_cmdline): New.
15043         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15044         rather than calling error.
15045         (fbsd_info_proc): New.
15046         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15047         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15048         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15049
15050 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15051
15052         * fbsd-nat.c (struct free_deleter): Remove.
15053         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15054
15055 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15056
15057         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15058         NULL for an empty pathname.
15059
15060 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15061
15062         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15063         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15064         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15065         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15066         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15067         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15068         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15069         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15070         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15071         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15072         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15073         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15074         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15075         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15076         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15077
15078 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15079
15080         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15081         (gnu_xfer_auxv): New function.
15082         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15083         TARGET_OBJECT_AUXV.
15084
15085 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15086             Simon Marchi  <simon.marchi@ericsson.com>
15087
15088         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15089         common/selftest.c.
15090         (COMMON_OBS): Remove selftest.o.
15091         * configure.ac: Append selftest-arch.c and common/selftest.c to
15092         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15093         * configure: Re-generated.
15094         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15095         GDB_SELF_TEST.
15096         (maintenance_info_selftests): Likewise.
15097
15098 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15099
15100         * ada-valprint.c (val_print_packed_array_elements): Use
15101         proper number of elements when printing an array indexed
15102         by an enumeration type.
15103
15104 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15105
15106         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15107         (dw2_get_file_names_reader): Adjust.
15108         (lookup_dwo_signatured_type): Adjust.
15109         (lookup_dwp_signatured_type): Adjust.
15110         (lookup_signatured_type): Adjust.
15111         (create_type_unit_group): Adjust.
15112         (get_type_unit_group): Adjust.
15113         (process_psymtab_comp_unit_reader): Adjust.
15114         (build_type_psymtabs_reader): Adjust.
15115         (scan_partial_symbols): Adjust.
15116         (add_partial_symbol): Adjust.
15117         (add_partial_subprogram): Adjust.
15118         (peek_die_abbrev): Adjust.
15119         (fixup_go_packaging): Adjust.
15120         (process_imported_unit_die): Adjust.
15121         (dwarf2_compute_name): Adjust.
15122         (dwarf2_physname): Adjust.
15123         (read_import_statement): Adjust.
15124         (handle_DW_AT_stmt_list): Adjust.
15125         (read_file_scope): Adjust.
15126         (read_func_scope): Adjust.
15127         (read_lexical_block_scope): Adjust.
15128         (read_call_site_scope): Adjust.
15129         (read_variable): Adjust.
15130         (dwarf2_rnglists_process): Adjust.
15131         (dwarf2_ranges_process): Adjust.
15132         (dwarf2_ranges_read): Adjust.
15133         (dwarf2_get_pc_bounds): Adjust.
15134         (dwarf2_record_block_ranges): Adjust.
15135         (dwarf2_add_field): Adjust.
15136         (dwarf2_add_member_fn): Adjust.
15137         (read_structure_type): Adjust.
15138         (process_structure_scope): Adjust.
15139         (read_enumeration_type): Adjust.
15140         (read_array_type): Adjust.
15141         (mark_common_block_symbol_computed): Adjust.
15142         (read_common_block): Adjust.
15143         (read_namespace_type): Adjust.
15144         (read_namespace): Adjust.
15145         (read_module_type): Adjust.
15146         (read_tag_pointer_type): Adjust.
15147         (read_tag_ptr_to_member_type): Adjust.
15148         (read_tag_string_type): Adjust.
15149         (read_subroutine_type): Adjust.
15150         (read_typedef): Adjust.
15151         (read_base_type): Adjust.
15152         (attr_to_dynamic_prop): Adjust.
15153         (read_subrange_type): Adjust.
15154         (read_unspecified_type): Adjust.
15155         (dwarf2_read_abbrevs): Adjust.
15156         (load_partial_dies): Adjust.
15157         (read_partial_die): Adjust.
15158         (find_partial_die): Adjust.
15159         (guess_partial_die_structure_name): Adjust.
15160         (fixup_partial_die): Adjust.
15161         (read_attribute_value): Adjust.
15162         (read_addr_index): Adjust.
15163         (read_addr_index_from_leb128): Adjust.
15164         (read_str_index): Adjust.
15165         (dwarf2_string_attr): Adjust.
15166         (get_debug_line_section): Adjust.
15167         (dwarf_decode_line_header): Adjust.
15168         (lnp_state_machine::check_line_address): Adjust.
15169         (dwarf_decode_lines_1): Adjust.
15170         (dwarf_decode_lines): Adjust.
15171         (dwarf2_start_symtab): Adjust.
15172         (var_decode_location): Adjust.
15173         (new_symbol_full): Adjust.
15174         (dwarf2_const_value_data): Adjust.
15175         (dwarf2_const_value_attr): Adjust.
15176         (dwarf2_const_value): Adjust.
15177         (die_type): Adjust.
15178         (die_containing_type): Adjust.
15179         (build_error_marker_type): Adjust.
15180         (lookup_die_type): Adjust.
15181         (guess_full_die_structure_name): Adjust.
15182         (anonymous_struct_prefix): Adjust.
15183         (determine_prefix): Adjust.
15184         (dwarf2_name): Adjust.
15185         (follow_die_ref_or_sig): Adjust.
15186         (follow_die_offset): Adjust.
15187         (follow_die_ref): Adjust.
15188         (follow_die_sig_1): Adjust.
15189         (follow_die_sig): Adjust.
15190         (get_signatured_type): Adjust.
15191         (get_DW_AT_signature_type): Adjust.
15192         (decode_locdesc): Adjust.
15193         (dwarf_decode_macros): Adjust.
15194         (cu_debug_loc_section): Adjust.
15195         (fill_in_loclist_baton): Adjust.
15196         (dwarf2_symbol_mark_computed): Adjust.
15197         (init_one_comp_unit): Don't assign
15198         dwarf2_cu::dwarf2_per_objfile.
15199         (set_die_type): Adjust.
15200
15201 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15202
15203         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15204         <dwarf2_per_objfile>: New field.
15205         (dwarf2_per_objfile): Remove global.
15206         (get_dwarf2_per_objfile): New function.
15207         (set_dwarf2_per_objfile): New function.
15208         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15209         dwarf2_per_objfile.
15210         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15211         (read_abbrev_offset): Likewise.
15212         (read_indirect_string): Likewise.
15213         (read_indirect_line_string): Likewise.
15214         (read_indirect_string_at_offset): Likewise.
15215         (read_indirect_string_from_dwz): Likewise.
15216         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15217         dwarf2_per_objfile.
15218         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15219         (create_all_comp_units): Change objfile parameter to
15220         dwarf2_per_objfile.
15221         (create_all_type_units): Likewise.
15222         (process_queue): Add dwarf2_per_objfile parameter.
15223         (read_and_check_comp_unit_head): Likewise.
15224         (lookup_dwo_unit_in_dwp): Likewise.
15225         (get_dwp_file): Likewise.
15226         (process_cu_includes): Likewise.
15227         (struct free_dwo_file_cleanup_data): New struct.
15228         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15229         set_dwarf2_per_objfile.
15230         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15231         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15232         context, adjust calls.
15233         (dw2_instantiate_symtab): Likewise.
15234         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15235         (dw2_get_cu): Likewise.
15236         (create_cu_from_index_list): Change objfile parameter to
15237         dwarf2_per_objfile.
15238         (create_cus_from_index_list): Get dwarf2_per_objfile from
15239         context, adjust calls.
15240         (create_cus_from_index): Likewise.
15241         (create_signatured_type_table_from_index): Change objfile
15242         parameter to dwarf2_per_objfile.
15243         (create_signatured_type_table_from_debug_names): Change objfile
15244         parameter to dwarf2_per_objfile.
15245         (create_addrmap_from_index): Likewise.
15246         (create_addrmap_from_aranges): Likewise.
15247         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15248         (dw2_setup): Remove.
15249         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15250         context.
15251         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15252         get_dwarf2_per_objfile.
15253         (dw2_forget_cached_source_info): Likewise.
15254         (dw2_map_symtabs_matching_filename): Likewise.
15255         (struct dw2_symtab_iterator) <index>: Remove.
15256         <dwarf2_per_objfile>: New field.
15257         (dw2_symtab_iter_init): Replace index parameter with
15258         dwarf2_per_objfile.
15259         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15260         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15261         (dw2_print_stats): Likewise.
15262         (dw2_dump): Likewise.
15263         (dw2_expand_symtabs_for_function): Likewise.
15264         (dw2_expand_all_symtabs): Likewise.
15265         (dw2_expand_symtabs_with_fullname): Likewise.
15266         (dw2_expand_marked_cus): Replace index and objfile parameters
15267         with dwarf2_per_objfile.
15268         (dw_expand_symtabs_matching_file_matcher): Add
15269         dwarf2_per_objfile parameter and adjust calls.
15270         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15271         adjust calls.
15272         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15273         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15274         adjust calls.
15275         (create_cus_from_debug_names_list): Replace objfile parameter
15276         with dwarf2_per_objfile and adjust calls.
15277         (create_cus_from_debug_names): Likewise.
15278         (dwarf2_read_debug_names): Likewise.
15279         (mapped_debug_names::namei_to_name): Adjust call.
15280         (dw2_debug_names_iterator::next): Likewise.
15281         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15282         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15283         (dw2_debug_names_dump): Likewise.
15284         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15285         (dw2_debug_names_expand_symtabs_matching): Likewise.
15286         (dwarf2_initialize_objfile): Likewise.
15287         (dwarf2_build_psymtabs): Likewise.
15288         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15289         this_cu.
15290         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15291         (read_and_check_comp_unit_head): Likewise.
15292         (read_abbrev_offset): Likewise.
15293         (create_debug_type_hash_table): Likewise.
15294         (create_debug_types_hash_table): Likewise.
15295         (create_all_type_units): Replace objfile parameter with
15296         dwarf2_per_objfile.
15297         (add_type_unit): Add dwarf2_per_objfile parameter.
15298         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15299         with dwarf2_per_objfile.
15300         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15301         (lookup_dwp_signatured_type): Likewise.
15302         (lookup_signatured_type): Likewise.
15303         (read_cutu_die_from_dwo): Likewise.
15304         (init_tu_and_read_dwo_dies): Likewise.
15305         (init_cutu_and_read_dies): Likewise.
15306         (init_cutu_and_read_dies_no_follow): Likewise.
15307         (allocate_type_unit_groups_table): Add objfile parameter.
15308         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15309         (get_type_unit_group): Likewise.
15310         (process_psymtab_comp_unit): Update call.
15311         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15312         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15313         (print_tu_stats): Likewise.
15314         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15315         in void* parameter.
15316         (build_type_psymtabs): Change objfile parameter to
15317         dwarf2_per_objfile.
15318         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15319         passed in void* parameter.
15320         (process_skeletonless_type_units): Change objfile parameter to
15321         dwarf2_per_objfile.
15322         (set_partial_user): Likewise.
15323         (dwarf2_build_psymtabs_hard): Likewise.
15324         (read_comp_units_from_section): Likewise.
15325         (create_all_comp_units): Likewise.
15326         (scan_partial_symbols): Update calls.
15327         (add_partial_symbol): Likewise.
15328         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15329         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15330         (process_queue): Add dwarf2_per_objfile parameter.
15331         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15332         (compute_compunit_symtab_includes): Likewise.
15333         (process_cu_includes): Add dwarf2_per_objfile parameter.
15334         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15335         (process_full_type_unit): Likewise.
15336         (process_imported_unit_die): Update call.
15337         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15338         (read_file_scope): Likewise.
15339         (allocate_dwo_file_hash_table): Add objfile parameter.
15340         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15341         (create_cus_hash_table): Likewise.
15342         (create_dwp_hash_table): Likewise.
15343         (create_dwo_unit_in_dwp_v1): Likewise.
15344         (create_dwp_v2_section): Likewise.
15345         (create_dwo_unit_in_dwp_v2): Likewise.
15346         (lookup_dwo_unit_in_dwp): Likewise.
15347         (try_open_dwop_file): Likewise.
15348         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15349         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15350         cleanup to include a reference to dwarf2_per_objfile.
15351         (open_dwp_file): Add dwarf2_per_objfile parameter.
15352         (open_and_init_dwp_file): Likewise.
15353         (get_dwp_file): Likewise.
15354         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15355         (queue_and_load_all_dwo_tus): Update call.
15356         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15357         data.
15358         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15359         (dwarf2_ranges_process): Likewise.
15360         (dwarf2_get_pc_bounds): Likewise.
15361         (mark_common_block_symbol_computed): Likewise.
15362         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15363         (dwarf2_read_abbrevs): Update call.
15364         (read_partial_die): Use dwarf2_per_objfile from cu.
15365         (find_partial_die): Likewise.
15366         (fixup_partial_die): Likewise.
15367         (read_attribute_value): Likewise.
15368         (read_indirect_string_at_offset_from): Add objfile parameter.
15369         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15370         parameter.
15371         (read_indirect_string_from_dwz): Add objfile parameter.
15372         (read_indirect_string): Add objfile parameter.
15373         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15374         (read_addr_index): Use dwarf2_per_objfile from cu.
15375         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15376         call dw2_setup.
15377         (read_str_index): Use dwarf2_per_objfile from cu.
15378         (get_debug_line_section): Likewise.
15379         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15380         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15381         (new_symbol_full): Use dwarf2_per_objfile from cu.
15382         (build_error_marker_type): Likewise.
15383         (lookup_die_type): Likewise.
15384         (determine_prefix): Likewise.
15385         (follow_die_offset): Likewise.
15386         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15387         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15388         (dwarf2_fetch_die_type_sect_off): Likewise.
15389         (dwarf2_get_die_type): Likewise.
15390         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15391         (get_signatured_type): Likewise.
15392         (get_DW_AT_signature_type): Likewise.
15393         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15394         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15395         (cu_debug_loc_section): Likewise.
15396         (fill_in_loclist_baton): Likewise.
15397         (dwarf2_symbol_mark_computed): Likewise.
15398         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15399         dwarf2_per_objfile.
15400         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15401         parameter.
15402         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15403         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15404         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15405         (set_die_type): Use dwarf2_free_objfile from cu.
15406         (get_die_type_at_offset): Likewise.
15407         (dwarf2_per_objfile_free): Don't assign global variable.
15408         (debug_names) <constructor>: Add dwarf2_per_objfile
15409         parameter, update m_debugstrlookup construction.
15410         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15411         parameter.
15412         <m_dwarf2_per_objfile>: New field.
15413         <lookup>: Use m_dwarf2_per_objfile.
15414         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15415         (psyms_seen_size): Likewise.
15416         (write_gdbindex): Replace objfile parameter with
15417         dwarf2_per_objfile.
15418         (write_debug_names): Likewise.
15419         (write_psymtabs_to_index): Likewise.
15420         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15421         calls.
15422
15423 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15424
15425         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15426         <dwarf2_per_objfile>: New field.
15427         (struct dwarf2_per_cu_data) <objfile>: Remove.
15428         <dwarf2_per_objfile>: New field.
15429         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15430         of objfile.
15431         (create_signatured_type_table_from_index): Likewise.
15432         (create_debug_type_hash_table): Likewise.
15433         (fill_in_sig_entry_from_dwo_entry): Likewise.
15434         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15435         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15436         objfile.
15437         (create_partial_symtab): Access objfile through
15438         dwarf2_per_objfile.
15439         (process_psymtab_comp_unit_reader): Likewise.
15440         (read_comp_units_from_section): Likewise.
15441         (scan_partial_symbols): Likewise.
15442         (add_partial_symbol): Likewise.
15443         (add_partial_subprogram): Likewise.
15444         (peek_die_abbrev): Likewise.
15445         (fixup_go_packaging): Likewise.
15446         (process_full_comp_unit): Likewise.
15447         (process_full_type_unit): Likewise.
15448         (process_imported_unit_die): Likewise.
15449         (dwarf2_compute_name): Likewise.
15450         (dwarf2_physname): Likewise.
15451         (read_import_statement): Likewise.
15452         (create_cus_hash_table): Assign dwarf2_physname instead of
15453         objfile.
15454         (read_func_scope): Access objfile through dwarf2_per_objfile.
15455         (read_lexical_block_scope): Likewise.
15456         (read_call_site_scope): Likewise.
15457         (read_variable): Likewise.
15458         (dwarf2_rnglists_process): Likewise.
15459         (dwarf2_ranges_process): Likewise.
15460         (dwarf2_ranges_read): Likewise.
15461         (dwarf2_record_block_ranges): Likewise.
15462         (dwarf2_add_field): Likewise.
15463         (dwarf2_add_member_fn): Likewise.
15464         (read_structure_type): Likewise.
15465         (process_structure_scope): Likewise.
15466         (read_enumeration_type): Likewise.
15467         (read_array_type): Likewise.
15468         (read_common_block): Likewise.
15469         (read_namespace_type): Likewise.
15470         (read_namespace): Likewise.
15471         (read_module_type): Likewise.
15472         (read_tag_pointer_type): Likewise.
15473         (read_tag_ptr_to_member_type): Likewise.
15474         (read_tag_string_type): Likewise.
15475         (read_subroutine_type): Likewise.
15476         (read_typedef): Likewise.
15477         (read_base_type): Likewise.
15478         (attr_to_dynamic_prop): Likewise.
15479         (read_subrange_type): Likewise.
15480         (read_unspecified_type): Likewise.
15481         (load_partial_dies): Likewise.
15482         (read_partial_die): Likewise.
15483         (find_partial_die): Likewise.
15484         (guess_partial_die_structure_name): Likewise.
15485         (fixup_partial_die): Likewise.
15486         (read_attribute_value): Likewise.
15487         (read_addr_index_from_leb128): Likewise.
15488         (dwarf2_read_addr_index): Likewise.
15489         (dwarf2_string_attr): Likewise.
15490         (lnp_state_machine::check_line_address): Likewise.
15491         (dwarf_decode_lines_1): Likewise.
15492         (dwarf_decode_lines): Likewise.
15493         (dwarf2_start_symtab): Likewise.
15494         (var_decode_location): Likewise.
15495         (new_symbol_full): Likewise.
15496         (dwarf2_const_value_data): Likewise.
15497         (dwarf2_const_value_attr): Likewise.
15498         (dwarf2_const_value): Likewise.
15499         (die_type): Likewise.
15500         (die_containing_type): Likewise.
15501         (lookup_die_type): Likewise.
15502         (guess_full_die_structure_name): Likewise.
15503         (anonymous_struct_prefix): Likewise.
15504         (dwarf2_name): Likewise.
15505         (follow_die_ref_or_sig): Likewise.
15506         (follow_die_offset): Likewise.
15507         (follow_die_ref): Likewise.
15508         (dwarf2_fetch_die_loc_sect_off): Likewise.
15509         (dwarf2_fetch_constant_bytes): Likewise.
15510         (dwarf2_fetch_die_type_sect_off): Likewise.
15511         (dwarf2_get_die_type): Likewise.
15512         (follow_die_sig): Likewise.
15513         (decode_locdesc): Likewise.
15514         (dwarf2_per_cu_objfile): Likewise.
15515         (dwarf2_per_cu_text_offset): Likewise.
15516         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15517         objfile.
15518         (set_die_type): Access objfile through
15519         dwarf2_per_objfile.
15520
15521 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15522
15523         * valprint.c (converted_character_d): Remove typedef.
15524         (DEF_VEC_O (converted_character_d)): Remove.
15525         (count_next_character): Use std::vector.
15526         (print_converted_chars_to_obstack): Likewise.
15527         (generic_printstr): Likewise.
15528
15529 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15530
15531         * xml-support.h (struct gdb_xml_value): Add constructor.
15532         <value>: Change type to unique_xmalloc_ptr.
15533         (gdb_xml_value_s): Remove typedef.
15534         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15535         (gdb_xml_element_start_handler): Change parameter type to
15536         std::vector.
15537         (xml_find_attribute): Likewise.
15538         * xml-support.c (xml_find_attribute): Change parameter type to
15539         std::vector and adjust.
15540         (gdb_xml_values_cleanup): Remove.
15541         (gdb_xml_parser::start_element): Adjust to std::vector.
15542         (xinclude_start_include): Change paraeter type to std::vector
15543         and adjust.
15544         * btrace.c (check_xml_btrace_version): Likewise.
15545         (parse_xml_btrace_block): Likewise.
15546         (parse_xml_btrace_pt_config_cpu): Likewise.
15547         (parse_xml_btrace_pt): Likewise.
15548         (parse_xml_btrace_conf_bts): Likewise.
15549         (parse_xml_btrace_conf_pt): Likewise.
15550         * memory-map.c (memory_map_start_memory): Likewise.
15551         (memory_map_start_property): Likewise.
15552         * osdata.c (osdata_start_osdata): Likewise.
15553         (osdata_start_item): Likewise.
15554         (osdata_start_column): Likewise.
15555         * remote.c (start_thread): Likewise.
15556         * solib-aix.c (library_list_start_library): Likewise.
15557         (library_list_start_list): Likewise.
15558         * solib-svr4.c (library_list_start_library): Likewise.
15559         (svr4_library_list_start_list): Likewise.
15560         * solib-target.c (library_list_start_segment): Likewise.
15561         (library_list_start_section): Likewise.
15562         (library_list_start_library): Likewise.
15563         (library_list_start_list): Likewise.
15564         * tracepoint.c (traceframe_info_start_memory): Likewise.
15565         (traceframe_info_start_tvar): Likewise.
15566         * xml-syscall.c (syscall_start_syscall): Likewise.
15567         * xml-tdesc.c (tdesc_start_target): Likewise.
15568         (tdesc_start_feature): Likewise.
15569         (tdesc_start_reg): Likewise.
15570         (tdesc_start_union): Likewise.
15571         (tdesc_start_struct): Likewise.
15572         (tdesc_start_flags): Likewise.
15573         (tdesc_start_enum): Likewise.
15574         (tdesc_start_field): Likewise.
15575         (tdesc_start_enum_value): Likewise.
15576         (tdesc_start_vector): Likewise.
15577
15578 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15579
15580         * extension.h (struct xmethod_worker) <clone>: Remove.
15581         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15582         Remove.
15583         (python_xmethod_worker::clone): Remove.
15584         * valops.c (find_overload_match): Use std::move instead of
15585         clone.
15586
15587 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15588
15589         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15590         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15591         <free_xmethod_worker_data>: Remove.
15592         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15593         <get_xmethod_arg_types>: Remove.
15594         <get_xmethod_result_type>: Remove.
15595         <invoke_xmethod>: Remove.
15596         * extension.c (new_xmethod_worker): Remove.
15597         (clone_xmethod_worker): Remove.
15598         (get_matching_xmethod_workers): Return void, pass std::vector by
15599         pointer.
15600         (get_xmethod_arg_types): Rename to...
15601         (xmethod_worker::get_arg_types): ... this, and adjust.
15602         (get_xmethod_result_type): Rename to...
15603         (xmethod_worker::get_result_type): ... this, and adjust.
15604         (invoke_xmethod): Remove.
15605         (free_xmethod_worker): Remove.
15606         (free_xmethod_worker_vec): Remove.
15607         * extension.h (enum ext_lang_rc): Move here from
15608         extension-priv.h.
15609         (struct xmethod_worker): Add constructor and destructor.
15610         <data>: Remove.
15611         <value>: Remove.
15612         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15613         virtual pure methods.
15614         <get_arg_types, get_result_type>: New methods.
15615         (xmethod_worker_ptr): Remove typedef.
15616         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15617         (xmethod_worker_vec): Remove typedef.
15618         (xmethod_worker_up): New typedef.
15619         (invoke_xmethod): Remove.
15620         (clone_xmethod_worker): Remove.
15621         (free_xmethod_worker): Remove.
15622         (free_xmethod_worker_vec): Remove.
15623         (get_xmethod_arg_types): Remove.
15624         (get_xmethod_result_type): Remove.
15625         * valops.c (find_method_list): Use std::vector, don't use
15626         intermediate vector.
15627         (value_find_oload_method_list): Use std::vector.
15628         (find_overload_match): Use std::vector.
15629         (find_oload_champ): Use std::vector.
15630         * value.c (value_free): Use operator delete.
15631         (value_of_xmethod): Rename to...
15632         (value_from_xmethod): ... this.  Don't assign
15633         xmethod_worker::value, take rvalue-reference.
15634         (result_type_of_xmethod): Adjust.
15635         (call_xmethod): Adjust.
15636         * value.h: Include extension.h.
15637         (struct xmethod_worker): Don't forward-declare.
15638         (value_of_xmethod): Rename to...
15639         (value_from_xmethod): ... this, take rvalue-reference.
15640         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15641         (struct python_xmethod_worker): ... this, add constructor and
15642         destructor.
15643         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15644         (gdbpy_free_xmethod_worker_data): Rename to...
15645         (python_xmethod_worker::~python_xmethod_worker): ... this and
15646         adjust.
15647         (gdbpy_clone_xmethod_worker_data): Rename to...
15648         (python_xmethod_worker::clone): ... this and adjust.
15649         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15650         temporary vector.
15651         (gdbpy_get_xmethod_arg_types): Rename to...
15652         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15653         (gdbpy_get_xmethod_result_type): Rename to...
15654         (python_xmethod_worker::do_get_result_type): ... this and
15655         adjust.
15656         (gdbpy_invoke_xmethod): Rename to...
15657         (python_xmethod_worker::invoke): ... this and adjust.
15658         (new_python_xmethod_worker): Rename to...
15659         (python_xmethod_worker::python_xmethod_worker): ... this and
15660         adjust.
15661         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15662         Remove.
15663         (gdbpy_free_xmethod_worker_data): Remove.
15664         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15665         (gdbpy_get_xmethod_arg_types): Remove.
15666         (gdbpy_get_xmethod_result_type): Remove.
15667         (gdbpy_invoke_xmethod): Remove.
15668         * python/python.c (python_extension_ops): Remove obsolete
15669         callbacks.
15670
15671 2018-01-05  Pedro Alves  <palves@redhat.com>
15672
15673         PR gdb/18653
15674         * common/signals-state-save-restore.c
15675         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15676         find a custom handler preinstalled, instead of internal erroring.
15677         But only warn if !quiet.
15678         * common/signals-state-save-restore.h
15679         (save_original_signals_state): New parameter 'quiet'.
15680         * main.c (captured_main_1): Move save_original_signals_state call
15681         after option handling, and pass QUIET.
15682
15683 2018-01-05  Pedro Alves  <palves@redhat.com>
15684
15685         * spu-tdep.c (spu_catch_start): Pass
15686         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15687
15688 2018-01-05  Pedro Alves  <palves@redhat.com>
15689
15690         PR gdb/22670
15691         * ada-lang.c (literal_symbol_name_matcher): New function.
15692         (ada_get_symbol_name_matcher): Use it for
15693         symbol_name_match_type::SEARCH_NAME.
15694         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15695         it down instead of assuming symbol_name_match_type::FULL.
15696         * block.h (block_lookup_symbol): New parameter 'match_type'.
15697         * c-valprint.c (print_unpacked_pointer): Use
15698         lookup_symbol_search_name instead of lookup_symbol.
15699         * compile/compile-object-load.c (get_out_value_type): Pass down
15700         symbol_name_match_type::SEARCH_NAME.
15701         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15702         symbol_name_match_type::FULL.
15703         * cp-support.c (cp_get_symbol_name_matcher): Handle
15704         symbol_name_match_type::SEARCH_NAME.
15705         * infrun.c (insert_exception_resume_breakpoint): Use
15706         lookup_symbol_search_name.
15707         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15708         * psymtab.c (maintenance_check_psymtabs): Use
15709         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15710         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15711         SYMBOL_SEARCH_NAME.
15712         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15713         if symbol_name_match_type::SEARCH_NAME.
15714         (lookup_symbol_in_language): Pass down
15715         symbol_name_match_type::FULL.
15716         (lookup_symbol_search_name): New.
15717         (lookup_language_this): Pass down
15718         symbol_name_match_type::SEARCH_NAME.
15719         (lookup_symbol_aux, lookup_local_symbol): New parameter
15720         'match_type'.  Pass it down.
15721         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15722         (lookup_symbol_search_name): New declaration.
15723         (lookup_symbol_in_block): New 'match_type' parameter.
15724
15725 2018-01-05  Pedro Alves  <palves@redhat.com>
15726
15727         PR gdb/22670
15728         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15729         ada_lookup_symbol.
15730         (ada_lookup_symbol): Reimplement in terms of
15731         ada_lookup_symbol_list, bits factored out from
15732         ada_lookup_encoded_symbol.
15733
15734 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15735
15736         * ada-exp.y (write_object_renaming): When subscripting an array
15737         using a symbol as the index, pass the block in call to
15738         ada_lookup_encoded_symbol when looking that symbol up.
15739
15740 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15741
15742         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15743         TYPE_INDEX_TYPE.
15744
15745 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15746
15747         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15748         the case where VALUE_LVAL (val0) is not lval_memory.
15749
15750 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15751
15752         * ada-valprint.c (print_optional_low_bound): Handle
15753         character-indexed array printing like boolean-indexed array
15754         printing.
15755
15756 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15757
15758         * NEWS: Create a new section for the next release branch.
15759         Rename the section of the current branch, now that it has
15760         been cut.
15761
15762 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15763
15764         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15765         * version.in: Bump version to 8.1.50.DATE-git.
15766
15767 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15768
15769         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15770         Add field.
15771         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15772         Add field.
15773         (default_exception_support_info) <catch_handlers_sym>: Add field.
15774         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15775         (ada_exception_name_addr_1): Add "catch handlers" handling.
15776         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15777         Update all callers.
15778         (create_excep_cond_exprs) <ex>: Add parameter.
15779         (re_set_exception): Update create_excep_cond_exprs call.
15780         (print_it_exception, print_one_exception, print_mention_exception)
15781         (print_recreate_exception): Add "catch handler" handling.
15782         (allocate_location_catch_handlers, re_set_catch_handlers)
15783         (check_status_catch_handlers, print_it_catch_handlers)
15784         (print_one_catch_handlers, print_mention_catch_handlers)
15785         (print_recreate_catch_handlers): New function.
15786         (catch_handlers_breakpoint_ops): New variable.
15787         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15788         Add parameter.  Add "catch handler" handling.
15789         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15790         Add "catch handler" handling.
15791         (ada_exception_catchpoint_cond_string): Add "catch handler"
15792         handling.
15793         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15794         call.
15795         (catch_ada_handlers_command): New function.
15796         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15797         operations structure.
15798         (_initialize_ada_language): Add "catch handlers" command entry.
15799         * NEWS: Document "catch handlers" feature.
15800
15801 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15802
15803         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15804         account when creating the array type of the slice.
15805         (ada_value_slice): Likewise.
15806
15807 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15808
15809         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15810         New enum value.
15811         (create_array_type_with_stride): Add byte_stride_prop parameter.
15812         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15813         New parameter.  Update all callers in this file.
15814         (array_type_has_dynamic_stride): New function.
15815         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15816         of arrays with dynamic byte strides.
15817         * dwarf2read.c (read_array_type): Add support for dynamic
15818         DW_AT_byte_stride attributes.
15819
15820 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15821
15822         * dwarf2read.c (read_unspecified_type): Treat
15823         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15824
15825 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15826
15827         Update copyright year range in all GDB files.
15828
15829 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15830
15831         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15832         and gdb/testsuite/gdb.base/step-line.c.
15833
15834 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15835
15836         * copyright.py (main): Dump the contents of
15837         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15838         even if BY_HAND is empty.
15839
15840 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15841
15842         * top.c (print_gdb_version): Update Copyright year in version
15843         message.
15844
15845 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15846
15847         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15848
15849 For older changes see ChangeLog-2017.
15850 \f
15851 Local Variables:
15852 mode: change-log
15853 left-margin: 8
15854 fill-column: 74
15855 version-control: never
15856 coding: utf-8
15857 End: