e315f34dc159edfb6f8bd88e649c220f4fcfc628
[external/binutils.git] / gdb / ChangeLog
1 2018-11-21  Pedro Alves  <palves@redhat.com>
2
3         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
4         * common/array-view.h (make_array_view): New.
5         * compile/compile-object-run.c (compile_object_run): Adjust to
6         pass an array_view.
7         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
8         * eval.c (eval_call): Adjust to pass an array_view.
9         (evaluate_subexp_standard): Adjust to pass an array_view.
10         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
11         * guile/scm-value.c (gdbscm_value_call): Likewise.
12         * infcall.c (push_dummy_code): Replace pointer + size parameters
13         with an array_view parameter.
14         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
15         adjust.
16         * infcall.h: Include "common/array-view.h".
17         (call_function_by_hand, call_function_by_hand_dummy): Replace
18         pointer + size parameters with an array_view parameter.
19         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
20         * linux-tdep.c (linux_infcall_mmap): Likewise.
21         * objc-lang.c (lookup_objc_class, lookup_child_selector)
22         (value_nsstring, print_object_command): Likewise.
23         * python/py-value.c (valpy_call): Likewise.
24         * rust-lang.c (rust_evaluate_funcall): Likewise.
25         * spu-tdep.c (flush_ea_cache): Likewise.
26         * valarith.c (value_x_binop, value_x_unop): Likewise.
27         * valops.c (value_allocate_space_in_inferior): Likewise.
28         * unittests/array-view-selftests.c (run_tests): Add
29         gdb::make_array_view test.
30
31 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
32
33         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
34         than a fixed size buffer.
35
36 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
37
38         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
39         and remove insertion of extra spaces in GDB's output.
40         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
41         Layout field into a temporary buffer, and then output it as a
42         string field.
43
44 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
45
46         * NEWS: Document the language choice done by
47         'info [types|functions|variables]|rbreak'.
48
49 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
50
51         * symtab.c (treg_matches_sym_type_name): Use
52         scoped_switch_to_sym_language_if_auto instead of local logic.
53         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
54         to switch to SYM language when language mode is auto.
55
56 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
57
58         * language.h (scoped_switch_to_sym_language_if_auto): New class.
59
60 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
61
62         * symtab.c (search_symbols): Properly check absence of type regexp
63         before entering the loop scanning the minimal symbols.
64
65 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
66
67         * s12z-tdep.c (s12z_extract_return_value): New function.
68         (inv_reg_perm) New array.
69         (s12z_return_value): Populate readbuf if non-null.
70
71 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
72
73         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
74         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
75         to MinGW fixed by Gnulib.
76         (O_NOINHERIT): Define if not defined.
77
78 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
79
80         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
81
82 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
83
84         * infrun.c (displaced_step_inferior_state) <next>: Remove.
85
86 2018-11-19  Tom Tromey  <tom@tromey.com>
87
88         * source.c (get_filename_and_charpos): Return void.
89
90 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
91
92         * skip.c (_initialize_step_skip): Fix "info skip" help.
93
94 2018-11-16  Tom Tromey  <tom@tromey.com>
95
96         PR rust/23625:
97         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
98
99 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
100
101         * infrun.c (displaced_step_inferior_states): Change type to
102         std::forward_list.
103         (get_displaced_stepping_state): Adjust.
104         (displaced_step_in_progress_any_inferior): Adjust.
105         (add_displaced_stepping_state): Adjust.
106         (remove_displaced_stepping_state): Adjust.
107
108 2018-11-18  Tom Tromey  <tom@tromey.com>
109
110         PR build/23814:
111         * target-delegates.c: Rebuild.
112         * ia64-linux-nat.c (class ia64_linux_nat_target)
113         <have_steppable_watchpoint>: Use override.  Return true, not 1.
114         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
115         "self" argument.
116         (ia64_linux_nat_target::low_new_thread): Rename.
117         (class ia64_linux_nat_target) <read_description>: Don't declare.
118         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
119         bool.
120
121 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
122
123         PR gdb/22736:
124         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
125         lang_struct_return code.
126
127 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
128
129         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
130         return_method.
131         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
132         * amd64-tdep.c (amd64_push_arguments): Likewise.
133         (amd64_push_dummy_call): Likewise.
134         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
135         * arc-tdep.c (arc_push_dummy_call): Likewise.
136         * arm-tdep.c (arm_push_dummy_call): Likewise.
137         * avr-tdep.c (avr_push_dummy_call): Likewise.
138         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
139         * cris-tdep.c (cris_push_dummy_call): Likewise.
140         * csky-tdep.c (csky_push_dummy_call): Likewise.
141         * frv-tdep.c (frv_push_dummy_call): Likewise.
142         * gdbarch.c: Regenerate.
143         * gdbarch.h: Regenerate.
144         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
145         return_method.
146         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
147         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
148         (hppa64_push_dummy_call): Likewise.
149         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
150         * i386-tdep.c (i386_push_dummy_call): Likewise.
151         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
152         * infcall.c (call_function_by_hand_dummy): Likewise.
153         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
154         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
155         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
156         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
157         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
158         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
159         * mep-tdep.c (mep_push_dummy_call): Likewise.
160         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
161         (mips_n32n64_push_dummy_call): Likewise.
162         (mips_o32_push_dummy_call): Likewise.
163         (mips_o64_push_dummy_call): Likewise.
164         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
165         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
166         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
167         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
168         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
169         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
170         (ppc64_sysv_abi_push_dummy_call): Likewise.
171         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
172         (ppc64_sysv_abi_push_dummy_call): Likewise.
173         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
174         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
175         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
176         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
177         * rx-tdep.c (rx_push_dummy_call): Likewise.
178         * s390-tdep.c (s390_push_dummy_call): Likewise.
179         * score-tdep.c (score_push_dummy_call): Likewise.
180         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
181         (sh_push_dummy_call_nofpu): Likewise.
182         * sparc-tdep.c (sparc32_store_arguments): Likewise.
183         (sparc32_push_dummy_call): Likewise.
184         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
185         (sparc64_push_dummy_call): Likewise.
186         * spu-tdep.c (spu_push_dummy_call): Likewise.
187         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
188         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
189         * v850-tdep.c (v850_push_dummy_call): Likewise.
190         * vax-tdep.c (vax_push_dummy_call): Likewise.
191         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
192         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
193
194 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
195
196         * gdbarch.sh (enum function_call_return_method): Add enum.
197         * gdbarch.h: Regenerate.
198         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
199
200 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
201
202         * unittests/copy_bitwise-selftests.c: New file.
203         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
204         (selftests::copy_bitwise_tests): Delete, moving this code to
205         unittests/copy_bitwise-selftests.c instead.
206         (_initialize_utils): Do not register copy_bitwise tests.
207         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
208         unittests/copy_bitwise-selftests.c.
209
210 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
211
212         * ada-lang.c (move_bits): Delete. Update all callers to use
213         copy_bitwise instead.
214         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
215         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
216         Move from here to utils.c.
217         (_initialize_dwarf2loc): Remove call to register copy_bitwise
218         selftests.
219         * utils.h (copy_bitwise): Add declaration.
220         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
221         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
222         Moved here from dwarf2loc.c.
223         (_initialize_utils): Register copy_bitwise selftests.
224
225 2018-11-14  Jim Wilson  <jimw@sifive.com>
226
227         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
228         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
229         then increment next_regnum if odd.
230         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
231         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
232         function type.  Pass new arg to riscv_arg_location based on function
233         type.
234         (riscv_return_value): Pass new arg to riscv_arg_location.
235
236         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
237         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
238         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
239
240         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
241         setting len.  New local align, set to max of arg align and xlen,
242         and pass to first riscv_assign_stack_location call.
243
244 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
245
246         * skip.c (complete_skip_number): New function.
247         (_initialize_step_skip): Add completers to some skip commands.
248
249 2018-11-09  Tom Tromey  <tom@tromey.com>
250
251         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
252         (struct remote_g_packet_data): Derive from allocate_on_obstack.
253         <guesses>: Now a std::vector.
254         (remote_g_packet_data_init, register_remote_g_packet_guess):
255         Update.
256         (remote_read_description_p): Update.  Return bool.
257         (remote_target::read_description): Update.
258         (struct remote_g_packet_guess): Add constructor.
259
260 2018-11-09  Tom Tromey  <tom@tromey.com>
261
262         * common/scoped_fd.h (class scoped_fd): Add move constructor and
263         move assignment operator.
264         * psymtab.c (psymtab_to_fullname): Update.
265         * source.h (open_source_file): Return scoped_fd.
266         (find_and_open_source): Likewise.
267         * source.c (open_source_file): Return scoped_fd.
268         (get_filename_and_charpos): Update.
269         (print_source_lines_base): Update.  Use scoped_fd::to_file.
270         (forward_search_command): Likewise.
271         (reverse_search_command): Likewise.
272         (find_and_open_source): Return scoped_fd.
273         * tui/tui-source.c (tui_set_source_content): Update.  Use
274         gdb_file_up.
275
276 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
277
278         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
279         overflow.
280
281 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
282
283         * configure: Regenerate.
284
285 2018-11-09  Tom de Vries  <tdevries@suse.de>
286
287         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
288         unconditionally, to set the language of the symbol.  Manage freeing
289         returned pointer using gdb::unique_xmalloc_ptr.
290
291 2018-11-08  Tom Tromey  <tom@tromey.com>
292
293         * record.c (require_record_target): Upper-case "<TAB>".
294
295 2018-11-08  Tom Tromey  <tom@tromey.com>
296
297         * python/lib/gdb/command/pretty_printers.py
298         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
299
300 2018-11-08  Tom Tromey  <tom@tromey.com>
301
302         PR gdb/23555:
303         PR gdb/23838:
304         * target.h (target_supports_terminal_ours): Return bool.
305         * target.c (target_supports_terminal_ours): Handle case where
306         current_top_target returns nullptr.  Return bool.
307
308 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
309
310         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
311         return the correct count for potential HFAs.
312
313 2018-11-08  Jan Beulich  <jbeulich@suse.com>
314
315         * i387-tdep.c (i387_supply_xsave): Split handling of
316         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
317         (i387_collect_xsave): Likewise.
318
319 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
320
321         * riscv-tdep.c (riscv_insn::decode): Update header comment.
322         (riscv_frame_this_id): Catch errors thrown while building the
323         frame cache, leave the frame id as the default, which is the outer
324         frame id.
325
326 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
327
328         * ada-lang.c (read_atcb): Only set task_info->called_task if
329         task_info->state == Entry_Caller_Sleep.
330         (print_ada_task_info): Do not check task_info->state before
331         checking task_info->called_task.
332         (info_task): Likewise.
333
334 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
335
336         * ada-tasks.c (read_atcb): Clear task_info before computing
337         the value of each of its fields.
338
339 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
340
341         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
342         NULL before dereferencing it.
343
344 2018-11-06  Tom de Vries  <tdevries@suse.de>
345
346         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
347         program headers.
348
349 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
350
351         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
352         so that it applies to uclinux as well.
353
354 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
355
356         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
357         when on AAPCS.
358
359 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
360
361         * riscv-fbsd-nat.c (getregs_supplies): Return true for
362         RISCV_CSR_SSTATUS_REGNUM.
363
364 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
365
366         * source.c (open_source_file): Fix leak by transferring the
367         current s->fullname to the unique_xmalloc_ptr fullname given
368         to find_and_open_source.
369
370 2018-11-04  Tom Tromey  <tom@tromey.com>
371
372         * varobj.c (install_default_visualizer): Update.
373         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
374         Return gdbpy_ref.
375         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
376         (find_pretty_printer_from_progspace)
377         (find_pretty_printer_from_gdb, find_pretty_printer)
378         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
379         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
380         Update.
381
382 2018-11-04  Tom Tromey  <tom@tromey.com>
383
384         * python/python.c (gdbpy_parameter_value): Update.
385         * python/python-internal.h (python_string_to_unicode)
386         (python_string_to_target_python_string)
387         (host_string_to_python_string): Return gdbpy_ref.
388         * python/py-utils.c (python_string_to_unicode)
389         (unicode_to_encoded_python_string)
390         (unicode_to_target_python_string)
391         (python_string_to_target_string)
392         (python_string_to_target_python_string): Return gdbpy_ref.
393         (python_string_to_host_string): Update.
394         (host_string_to_python_string): Return gdbpy_ref.
395         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
396         (stpy_fullname): Update.
397         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
398         Update.
399         * python/py-prettyprint.c (print_string_repr): Update.
400         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
401         (objfpy_get_build_id): Update.
402         * python/py-breakpoint.c (bppy_get_location)
403         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
404         Update.
405
406 2018-11-04  Tom Tromey  <tom@tromey.com>
407
408         * python/python-internal.h (gdb_py_object_from_longest)
409         (gdb_py_object_from_ulongest): Return gdbpy_ref.
410         * python/py-value.c (valpy_int): Update.
411         * python/py-utils.c (gdb_py_object_from_longest): Return
412         gdbpy_ref.
413         (gdb_py_object_from_ulongest): Likewise.
414         * python/py-type.c (typy_get_alignof): Update.
415         * python/py-linetable.c (ltpy_get_all_source_lines)
416         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
417         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
418
419 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
420
421         * ada-lang.c (_initialize_ada_language): Fix typo.
422
423 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
424
425         * language.c (type): Remove.
426         (_initialize_language): Remove assignment to type.
427
428 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
429
430         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
431         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
432         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
433         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
434         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
435         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
436         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
437         and aarch64-ravenscar-thread.o.
438         * NEWS: Add entry documenting Ravenscar tasking support
439         on AArch64 ELF.
440
441 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
442
443         * symtab.c (info_functions_command): Initialize quiet flag.
444         * stack.c (info_args_command): Likewise.
445
446 2018-11-01  Jim Wilson  <jimw@sifive.com>
447
448         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
449         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
450         debugging messages.
451
452 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
453
454         * ada-lang.c (ada_watch_location_expression): New function.
455         (ada_language_defn): Set la_watch_location_expression to
456         ada_watch_location_expression.
457
458 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
459
460         * print-utils.c (int_string): Remove unnecessary trailing spaces.
461
462 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
463
464         * rs6000-tdep.c (skip_prologue): Fix potential negative left
465         shifting.
466
467 2018-11-01  Jerome Guitton  <guitton@adacore.com>
468             Joel Brobecker  <brobecker@adacore.com>
469
470         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
471         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
472         * arm-pikeos-tdep.c: New file.
473         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
474         embedded system.
475         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
476
477 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
478
479         * common/pathstuff.c (get_standard_temp_dir): New.
480         * common/pathstuff.h (get_standard_temp_dir): New.
481         * config.in: Re-generate.
482         * configure: Re-generate.
483         * configure.ac: Don't check for mkdtemp.
484         * gnulib/aclocal-m4-deps.mk: Re-generate.
485         * gnulib/aclocal.m4: Re-generate.
486         * gnulib/config.in: Re-generate.
487         * gnulib/configure: Re-generate.
488         * gnulib/import/Makefile.am: Re-generate.
489         * gnulib/import/Makefile.in: Re-generate.
490         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
491         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
492         * gnulib/import/m4/mkdtemp.m4: New file.
493         * gnulib/import/mkdtemp.c: New file.
494         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
495         Add mkdtemp module.
496         * unittests/mkdir-recursive-selftests.c (test): Use
497         get_standard_temp_dir.
498         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
499         ifdef.
500         * compile/compile.c (get_compile_file_tempdir): Likewise.
501
502 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
503
504         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
505         (SIG_FRAME_LR_OFFSET64): New define.
506         (SIG_FRAME_FP_OFFSET64): New define.
507         (aix_sighandle_frame_cache): New Function.
508         (aix_sighandle_frame_this_id): New Function.
509         (aix_sighandle_frame_prev_register): New Function.
510         (aix_sighandle_frame_sniffer): New Function.
511         (aix_sighandle_frame_unwind): New global variable.
512         (rs6000_aix_init_osabi): Install new frame unwinder.
513
514 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
515
516         PR gdb/23835
517         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
518         already defined.
519
520 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
521
522         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
523
524 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
525
526         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
527         (producer_is_icc): New function.
528         (check_producer): Set producer_is_icc field on dwarf2_cu.
529         (dwarf2_init_integer_type): New function.
530         (read_base_type): Call dwarf2_init_integer_type instead of
531         init_integer_type in all cases.
532         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
533         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
534         LEN is greater than 0.
535
536 2018-10-30  Tom Tromey  <tom@tromey.com>
537
538         * main.c (captured_main_1): Check return value of bfd_init.
539
540 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
541
542         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
543         Adjust comments.
544
545 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
546
547         * procfs.c: Include common/pathstuff.h.
548
549 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
550
551         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
552         Add missing braces.  No functional change.
553
554 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
555
556         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
557         to report a bad option and fix indentation.
558         * demangle.c (demangle_command): Use report_unrecognized_option_error
559         to report a bad option and correctly report the bad option.
560
561 2018-10-27  Tom Tromey  <tom@tromey.com>
562
563         PR cli/23364:
564         * darwin-nat.c (copied_shell): New global.
565         (may_have_sip): Rename from should_disable_startup_with_shell.
566         (copy_shell_to_cache, maybe_cache_shell): New functions.
567         (darwin_nat_target::create_inferior): Update.  Use
568         copied_shell.
569
570 2018-10-27  Tom Tromey  <tom@tromey.com>
571
572         * unittests/scoped_fd-selftests.c (test_to_file): New function.
573         (run_tests): Call test_to_file.
574         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
575         temporary files.
576         * common/scoped_fd.h (scoped_fd::to_file): New method.
577
578 2018-10-27  Tom Tromey  <tom@tromey.com>
579
580         * unittests/scoped_mmap-selftests.c (test_normal): Use
581         gdb_mkostemp_cloexec.
582         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
583         Use gdb_mkostemp_cloexec.
584         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
585         gnulib/config.in, gnulib/configure,
586         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
587         gnulib/import/m4/gnulib-cache.m4,
588         gnulib/import/m4/gnulib-comp.m4: Update.
589         * gnulib/import/m4/mkostemp.m4: New file.
590         * gnulib/import/m4/mkstemp.m4: Remove.
591         * gnulib/import/mkostemp.c: New file.
592         * gnulib/import/mkstemp.m4: Remove.
593         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
594         mkstemp, add mkostemp.  Apply new patch.
595         * gnulib/import/stdlib.in.h: Apply patch.
596         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
597         New file.
598         * dwarf-index-write.c (write_psymtabs_to_index): Use
599         gdb_mkostemp_cloexec.
600         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
601
602 2018-10-27  Tom Tromey  <tom@tromey.com>
603
604         * unittests/mkdir-recursive-selftests.c: New file.
605         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
606         unittests/mkdir-recursive-selftests.c.
607         * dwarf-index-cache.c (mkdir_recursive): Move to
608         common/filestuff.c.
609         (index_cache::store): Check return value of mkdir_recursive.
610         (create_dir_and_check, test_mkdir_recursive): Move to new file.
611         (_initialize_index_cache): Don't register test.
612         * common/filestuff.h (mkdir_recursive): Declare.
613         * common/filestuff.c (mkdir_recursive): Move from
614         dwarf-index-cache.c.  Return bool.
615
616 2018-10-27  Tom Tromey  <tom@tromey.com>
617
618         * dwarf-index-write.c (write_psymtabs_to_index): Move
619         make_temp_filename to common/pathstuff.c.
620         * common/pathstuff.h (make_temp_filename): Declare.
621         * common/pathstuff.c (make_temp_filename): New function, moved
622         from dwarf-index-write.c.
623
624 2018-10-27  Tom Tromey  <tom@tromey.com>
625
626         * procfs.c (procfs_target::create_inferior): Use get_shell.
627         * cli/cli-cmds.c (shell_escape): Use get_shell.
628         * windows-nat.c (windows_nat_target::create_inferior): Use
629         get_shell.
630         * common/pathstuff.c (get_shell): New function.
631         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
632         (fork_inferior): Use get_shell.
633         * common/pathstuff.h (get_shell): Declare.
634
635 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
636
637         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
638
639 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
640
641         * stack.c (print_variable_and_value_data): Add preg and treg.
642         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
643         and update callers.
644         (print_frame_arg_vars): Likewise.
645         (prepare_reg): New function.
646         (info_locals_command): Extract info print args and use them.
647         (info_args_command): Likewise.
648         (_initialize_stack): Modify on-line help.
649         * symtab.c (treg_matches_sym_type_name): New function.
650         (search_symbols): New arg t_regexp.
651         (symtab_symbol_info): New args quiet, regexp, t_regexp.
652         (info_variables_command): Extract info print args and use them.
653         (info_functions_command): Likewise.
654         (info_types_command): Update call to symtab_symbol_info.
655         (_initialize_symtab): Modify on-line help.
656         * symtab.h (treg_matches_sym_type_name): New function.
657         (search_symbols): New t_regexp arg.
658
659 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
660
661         * cli-utils.c (extract_arg_maybe_quoted): New function.
662         (extract_info_print_args): New function.
663         (info_print_args_help): New function.
664         (report_unrecognized_option_error): New function.
665         * cli-utils.h (extract_arg_maybe_quoted): New function.
666         (extract_info_print_args): New function.
667         (info_print_args_help): New function.
668         (report_unrecognized_option_error): New function.
669
670 2018-10-26  Tom Tromey  <tom@tromey.com>
671
672         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
673         (compute_compunit_symtab_includes): Update.
674         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
675         (compunit_symtab_ptr): Likewise.
676
677 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
678
679         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
680         default_print_auxv_entry for specific tag values.
681
682 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
683
684         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
685
686 2018-10-26  Jim Wilson  <jimw@sifive.com>
687
688         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
689         (riscv_linux_sigframe_init): Declare.
690         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
691         (riscv_linux_sigframe): New.
692         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
693         (riscv_linux_sigframe_init): Define.
694         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
695
696         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
697         (riscv_isa_flen): Likewise.  Drop static.
698         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
699         (riscv_isa_flen): Likewise.  Declare.
700
701 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
702             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
703
704         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
705         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
706         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
707         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
708         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
709         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
710         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
711         Define.
712         (struct ppc_linux_features) <htm>: New field.
713         (ppc_linux_no_features): Add initializer for htm field.
714         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
715         new tdescs.
716         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
717         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
718         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
719         Define if not already defined.
720         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
721         and rs6000/powerpc-isa207-htm-vsx64l.
722         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
723         rs6000/powerpc-isa207-htm-vsx64l.xml.
724         * features/rs6000/power-htm-spr.xml: New file.
725         * features/rs6000/power-htm-core.xml: New file.
726         * features/rs6000/power64-htm-core.xml: New file.
727         * features/rs6000/power-htm-fpu.xml: New file.
728         * features/rs6000/power-htm-altivec.xml: New file.
729         * features/rs6000/power-htm-vsx.xml: New file.
730         * features/rs6000/power-htm-ppr.xml: New file.
731         * features/rs6000/power-htm-dscr.xml: New file.
732         * features/rs6000/power-htm-tar.xml: New file.
733         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
734         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
735         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
736         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
737         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
738         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
739         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
740         fetch_regset with HTM regsets.
741         (store_register, store_ppc_registers): Call store_regset with HTM
742         regsets.
743         (ppc_linux_nat_target::read_description): Set htm field in the
744         features struct if needed.
745         * ppc-linux-tdep.c: Include
746         features/rs6000/powerpc-isa207-htm-vsx32l.c and
747         features/rs6000/powerpc-isa207-htm-vsx64l.c.
748         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
749         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
750         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
751         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
752         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
753         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
754         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
755         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
756         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
757         (ppc32_linux_ctarregset): New globals.
758         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
759         (ppc_linux_collect_core_cpgrregset): New function.
760         (ppc_linux_iterate_over_regset_sections): Call back with the htm
761         regsets.
762         (ppc_linux_core_read_description): Check if the tm spr section is
763         present and set htm in the features struct.
764         (_initialize_ppc_linux_tdep): Call
765         initialize_tdesc_powerpc_isa207_htm_vsx32l and
766         initialize_tdesc_powerpc_isa207_htm_vsx64l.
767         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
768         Declare.
769         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
770         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
771         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
772         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
773         New fields.
774         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
775         Likewise.
776         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
777         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
778         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
779         New enum fields.
780         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
781         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
782         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
783         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
784         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
785         <PPC_CTAR_REGNUM>: Likewise.
786         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
787         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
788         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
789         (IS_CEFP_PSEUDOREG): Define.
790         (rs6000_register_name): Hide the upper halves of checkpointed VSX
791         registers.  Return names for the checkpointed DFP, VSX, and EFP
792         pseudo registers.
793         (rs6000_pseudo_register_type): Remove initial assert and raise an
794         internal error in the else clause instead.  Return types for the
795         checkpointed DFP, VSX, and EFP pseudo registers.
796         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
797         checkpointed DFP pseudo registers.
798         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
799         checkpointed VSX pseudo registers.
800         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
801         from efpr_pseudo_register_read and
802         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
803         registers.
804         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
805         Handle checkpointed DFP, VSX, and EFP registers.
806         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
807         (efp_ax_pseudo_register_collect): New functions.
808         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
809         register logic to new functions.  Handle checkpointed DFP, VSX,
810         and EFP pseudo registers.
811         (rs6000_gdbarch_init): Look for and validate the htm features.
812         Include checkpointed DFP, VSX and EFP pseudo-registers.
813         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
814         HTM registers.
815
816 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
817
818         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
819         without altivec or fpu.
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-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
825         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
826         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
827         Define if not already defined.
828         * features/rs6000/power-ebb.xml: New file.
829         * features/rs6000/power-linux-pmu.xml: New file.
830         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
831         features.
832         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
833         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
834         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
835         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
836         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
837         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
838         fetch_regset with ebb and pmu regsets.
839         (store_register, store_ppc_registers): Call store_regset with ebb
840         and pmu regsets.
841         (ppc_linux_nat_target::read_description): Set isa207 field in the
842         features struct if ebb and pmu are avaiable.
843         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
844         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
845         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
846         and pmu regsets.
847         (ppc_linux_core_read_description): Check if the pmu section is
848         present and set isa207 in the features struct.
849         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
850         (ppc32_linux_pmuregset): Declare.
851         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
852         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
853         <ppc_sier_regnum>: New field.
854         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
855         New enum values.
856         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
857         values.
858         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
859         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
860         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
861         ebb and pmu features.
862
863 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
864             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
865
866         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
867         (tdesc_powerpc_isa207_vsx64l): Declare.
868         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
869         (struct ppc_linux_features) <isa207>: New field.
870         (ppc_linux_no_features): Add initializer for isa207 field.
871         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
872         new tdescs.
873         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
874         (NT_PPC_TAR): Define if not already defined.
875         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
876         rs6000/powerpc-isa207-vsx64l.
877         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
878         rs6000/powerpc-isa207-vsx64l.xml.
879         * features/rs6000/power-tar.xml: New file.
880         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
881         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
882         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
883         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
884         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
885         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
886         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
887         fetch_regset with the TAR regset.
888         (store_register, store_ppc_registers): Call store_regset with the
889         TAR regset.
890         (ppc_linux_nat_target::read_description): Set isa207 field in the
891         features struct if needed.
892         * ppc-linux-tdep.c: Include
893         features/rs6000/powerpc-isa207-vsx32l.c and
894         features/rs6000/powerpc-isa207-vsx64l.c.
895         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
896         (ppc_linux_iterate_over_regset_sections): Call back with the tar
897         regset.
898         (ppc_linux_core_read_description): Check if the tar section is
899         present and set isa207 in the features struct.
900         (_initialize_ppc_linux_tdep): Call
901         initialize_tdesc_powerpc_isa207_vsx32l and
902         initialize_tdesc_powerpc_isa207_vsx64l.
903         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
904         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
905         (enum) <PPC_TAR_REGNUM>: New enum value.
906         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
907         feature.
908         (ppc_process_record_op31): Record changes to TAR.
909
910 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
911             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
912
913         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
914         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
915         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
916         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
917         (struct ppc_linux_features) <ppr_dscr>: New field.
918         (ppc_linux_no_features): Add initializer for ppr_dscr field.
919         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
920         new tdescs.
921         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
922         Define if not already defined.
923         * features/Makefile (WHICH): Add
924         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
925         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
926         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
927         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
928         * features/rs6000/power-dscr.xml: New file.
929         * features/rs6000/power-ppr.xml: New file.
930         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
931         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
932         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
933         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
934         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
935         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
936         * ppc-linux-nat.c: Include <sys/uio.h>.
937         (fetch_regset, store_regset, check_regset): New functions.
938         (fetch_register, fetch_ppc_registers): Call fetch_regset with
939         DSCR and PPR regsets.
940         (store_register, store_ppc_registers): Call store_regset with
941         DSCR and PPR regsets.
942         (ppc_linux_get_hwcap2): New function.
943         (ppc_linux_nat_target::read_description): Call
944         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
945         features struct if needed.
946         * ppc-linux-tdep.c: Include
947         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
948         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
949         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
950         (ppc32_linux_dscrregset): New globals.
951         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
952         and dscr regsets.
953         (ppc_linux_core_read_description): Check if the ppr and dscr
954         sections are present and set ppr_dscr in the features struct.
955         (_initialize_ppc_linux_tdep): Call
956         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
957         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
958         * ppc-linux-tdep.h (ppc32_linux_pprregset)
959         (ppc32_linux_dscrregset): Declare.
960         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
961         <ppc_dscr_regnum>: New field.
962         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
963         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
964         and dscr features.
965         (ppc_process_record_op31): Record changes to PPR and DSCR.
966
967 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
968
969         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
970         second initializer line for the have_* variables.  Initialize
971         have_fpu to 0 instead of 1.
972
973 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
974
975         * arch/ppc-linux-common.c (ppc_linux_match_description):
976         Parenthesize tdesc assignements and indent them properly.
977
978 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
979
980         * ppc-linux-nat.c (fetch_register): Change if statement to else
981         if.
982         (store_register): Likewise.
983
984 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
985
986         * rs6000-tdep.c: Remove reggroups.h include.
987         (rs6000_pseudo_register_reggroup_p): Remove.
988         (rs6000_gdbarch_init): Remove call to
989         set_tdesc_pseudo_register_reggroup_p.
990
991 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
992
993         * reggroups.c (default_register_reggroup_p): Return true for
994         decfloat registers and float_reggroup.
995
996 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
997
998         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
999         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1000         ppc_linux_collect_vrregset by regcache_collect_regset.
1001
1002 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1003
1004         * linux-tdep.c (linux_collect_regset_section_cb): Use
1005         std::vector<gdb_byte> instead of char * and malloc for buf.
1006         Remove xfree.
1007
1008 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1009
1010         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1011         symtab_start instead of always using language_unknown.
1012
1013 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1014
1015         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1016         READ_P parameter, catch and ignore register access errors from
1017         either the old or new MISA location.
1018         (riscv_has_feature): Update call to riscv_read_misa_reg.
1019
1020 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1021
1022         * python/py-function.c (convert_values_to_python): Return
1023         gdbpy_ref<>.  Add header comment.
1024         (fnpy_call): Adjust.
1025
1026 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1027
1028         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1029         (cmdpy_completer_handle_brkchars): Adjust.
1030         (cmdpy_completer): Adjust.
1031
1032 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1033
1034         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1035         Pass correct regnum to raw_supply_zeroed.
1036
1037 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1038
1039         * regcache.c (cooked_read_test): Add CSKY to the list of
1040         architectures with a save_reggroup
1041
1042 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1043
1044         PR gdb/23368
1045         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1046         transfer terminal state from old new new inferior.
1047         * terminal.h (swap_terminal_info): New function.
1048         * inflow.c (swap_terminal_info): New function.
1049
1050 2018-10-23  Tom Tromey  <tom@tromey.com>
1051
1052         * record-btrace.c (get_thread_current_frame_id): Rename from
1053         get_thread_current_frame.  Return a frame_id.
1054         (record_btrace_start_replaying): Update.
1055
1056 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1057
1058         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1059         for CSRs.
1060
1061 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1062
1063         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1064         have_nonsteppable_watchpoint attribute to 1.
1065
1066 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1067
1068         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1069         register names.
1070         (struct register_alias): Rename to...
1071         (struct riscv_register_alias): ...this, and update comment.
1072         (riscv_register_aliases): Update type, and alias names.  Remove
1073         CSR names from this list.
1074         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1075         register names.  Add an extra assertion.
1076         (riscv_is_regnum_a_named_csr): New function.
1077         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1078
1079 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1080
1081         * configure.tgt: Add configuration for s12z.
1082         * s12z-tdep.c:  New file.
1083         * NEWS: Mention new target.
1084
1085 2018-10-22  Jim Wilson  <jimw@sifive.com>
1086
1087         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1088         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1089
1090         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1091         (riscv_register_type): Use them.
1092         (riscv_print_one_register_info): Handle union of floats same as float.
1093         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1094         riscv_fpreg_q_type fields.
1095
1096 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1097
1098         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1099         * gdbarch.h: Re-generate.
1100         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1101         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1102         * eval.c (evaluate_subexp_standard): Likewise.
1103         * findvar.c (value_of_register): Likewise.
1104         (value_of_register_lazy): Likewise.
1105         (address_from_register): Likewise.
1106         * frame.c (get_frame_register_bytes): Likewise.
1107         * gdbarch-selftests.c (register_to_value_test): Likewise.
1108         * h8300-tdep.c (h8300_register_type): Likewise.
1109         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1110         (i386_svr4_reg_to_regnum): Likewise.
1111         * infcmd.c (default_print_registers_info): Likewise.
1112         (registers_info): Likewise.
1113         (print_vector_info): Likewise.
1114         (default_print_float_info): Likewise.
1115         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1116         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1117         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1118         (mi_cmd_data_list_changed_registers): Likewise.
1119         (mi_cmd_data_list_register_values): Likewise.
1120         (mi_cmd_data_write_register_values): Likewise.
1121         (mi_cmd_trace_frame_collected): Likewise.
1122         * mips-tdep.c (print_gp_register_row): Likewise.
1123         (mips_print_registers_info): Likewise.
1124         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1125         * regcache.c (init_regcache_descr): Likewise.
1126         (register_size): Likewise.
1127         (register_dump::dump): Likewise.
1128         (cooked_read_test): Likewise.
1129         (cooked_write_test): Likewise.
1130         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1131         (rs6000_gdbarch_init): Likewise.
1132         * stabsread.c (stab_reg_to_regnum): Likewise.
1133         * stack.c (info_frame_command): Likewise.
1134         * target-descriptions.c (tdesc_register_name): Likewise.
1135         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1136         * tui/tui-regs.c (tui_show_register_group): Likewise.
1137         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1138         (user_reg_map_regnum_to_name): Likewise.
1139         (value_of_user_reg): Likewise.
1140         (maintenance_print_user_registers): Likewise.
1141         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1142         (xtensa_register_name): Likewise.
1143         (xtensa_register_type): Likewise.
1144         (xtensa_reg_to_regnum): Likewise.
1145         (xtensa_pseudo_register_read): Likewise.
1146         (xtensa_pseudo_register_write): Likewise.
1147
1148 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1149
1150         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1151         correctly-sized buffer with raw_read.
1152         (amd64_pseudo_register_write): Use correctly-sized buffer for
1153         raw_read/raw_write.
1154
1155 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1156
1157         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1158         in add_prefix_cmd of set print type.
1159
1160 2018-10-19  Tom Tromey  <tom@tromey.com>
1161
1162         PR tui/18388:
1163         * NEWS: Mention tabset deprecation.
1164         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1165         (update_tab_width): New function.
1166         (tui_set_tab_width, tui_show_tab_width): New functions.
1167         (tui_set_tab_width_command): Use update_tab_width.
1168         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1169         Add new "set tui tab-width" command.
1170         * tui/tui-source.c (tui_set_source_content): Update.
1171         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1172         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1173         Don't declare.
1174         (tui_tab_width): Declare.
1175         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1176         (tui_set_default_tab_len): Remove.
1177
1178 2018-10-19  Tom Tromey  <tom@tromey.com>
1179
1180         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1181         (key_is_backspace, tui_getc): Don't declare.
1182         * tui/tui-io.c (key_is_start_sequence): Now static.
1183         (key_is_end_sequence, key_is_backspace): Remove.
1184         (tui_getc): Now static.
1185
1186 2018-10-19  Tom Tromey  <tom@tromey.com>
1187
1188         * symfile.c (reread_symbols): Clear "static_links".
1189
1190 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1191
1192         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1193         define.
1194         (aarch64_linux_sigframe_init): Extra boundary checks.
1195
1196 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1197
1198         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1199         the possibly non-existent tdesc type 'vec128', but the type of raw
1200         register v16 instead.
1201
1202 2018-10-19  Gary Benson <gbenson@redhat.com>
1203
1204         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1205
1206 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1207
1208         PR cli/23785
1209         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1210         NULL.
1211
1212 2018-10-17  Paul Koning  <paul_koning@dell.com>
1213
1214         * charset.c (convert_between_encodings): Fix unsigned overflow.
1215
1216 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1217
1218         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1219         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1220         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1221         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1222         New functions.
1223         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1224         and fbsd_info_proc_mappings_header.
1225         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1226         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1227         New.
1228
1229 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1230
1231         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1232         Solaris Maintainer.
1233
1234 2018-10-15  Tom Tromey  <tom@tromey.com>
1235
1236         * tui/tui.c (strcat_to_buf): Remove casts.
1237         * tui/tui-winsource.c (tui_show_source_line)
1238         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1239         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1240         * tui/tui-windata.c (tui_first_data_item_displayed)
1241         (tui_delete_data_content_windows, tui_erase_data_content)
1242         (tui_display_all_data, tui_display_data_from)
1243         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1244         * tui/tui-win.c (tui_set_win_height)
1245         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1246         casts.
1247         * tui/tui-win.c (tui_resize_all): Remove casts.
1248         (tui_scroll_backward_command, tui_set_focus)
1249         (tui_set_tab_width_command): Likewise.
1250         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1251         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1252         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1253         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1254         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1255         Remove casts.
1256
1257 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1258
1259         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1260         AArch64/ARM maintainer.
1261
1262 2018-10-11  Gary Benson <gbenson@redhat.com>
1263
1264         * interps.h (interp::m_name): Make private and mutable.
1265         * interps.c (interp::~interp): Free m_name.
1266
1267 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1268             Simon Marchi <simark@simark.ca>
1269
1270         * README (`configure' options): Add documentation for new
1271         "--enable-unit-tests" option.
1272         * acinclude.m4: Include "selftest.m4".
1273         * configure: Regenerate.
1274         * configure.ac: Use "GDB_AC_SELFTEST".
1275         * maint.c (maintenance_selftest): Update message informing
1276         that selftests have been disabled.
1277         (maintenance_info_selftests): Likewise.
1278         * selftest.m4: New file.
1279
1280 2018-10-10  Gary Benson <gbenson@redhat.com>
1281
1282         * remote.c (remote_target::remote_send_printf): Add
1283         missing va_end found by Coverity.
1284
1285 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1286
1287         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1288
1289 2018-10-09  Tom Tromey  <tom@tromey.com>
1290
1291         * configure: Rebuild.
1292         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1293         * NEWS: Update --enable-ubsan documentation.
1294
1295 2018-10-09  Gary Benson <gbenson@redhat.com>
1296
1297         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1298         found by Coverity.
1299
1300 2018-10-08  Tom Tromey  <tom@tromey.com>
1301
1302         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1303         variable.
1304         (riscv_fbsd_init_abi): Likewise.
1305
1306 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1307         * valops.c (value_struct_elt_for_reference): Rename local variable
1308         to work around the shadowing a previous local warning.
1309
1310 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1311
1312         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1313         * NEWS: Mention new FreeBSD/riscv native configuration.
1314         * configure.host: Add riscv*-*-freebsd*.
1315         * configure.nat: Likewise.
1316         * riscv-fbsd-nat.c: New file.
1317
1318 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1319
1320         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1321         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1322         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1323         * NEWS: Mention new FreeBSD/riscv target.
1324         * configure.tgt: Add riscv*-*-freebsd*.
1325         * riscv-fbsd-tdep.c: New file.
1326         * riscv-fbsd-tdep.h: New file.
1327
1328 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1329
1330         * regcache.h (struct regcache_map_entry): Note that this type can
1331         be used with traditional frame caches.
1332         * trad-frame.c (trad_frame_set_reg_regmap): New.
1333         * trad-frame.h (trad_frame_set_reg_regmap): New.
1334
1335 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1336
1337         PR c++/16841
1338         * valops.c (get_virtual_base_offset): New function.
1339         (value_struct_elt_for_reference): Use it to get virtual base offset
1340         and add it in calculating class member address.
1341
1342 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1343
1344         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1345         (check_producer): Check if the producer is codewarrior.
1346         (producer_is_codewarrior): New function.
1347         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1348         produced by codewarrior.
1349         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1350
1351 2018-10-06  Tom Tromey  <tom@tromey.com>
1352
1353         PR python/19399:
1354         * python/py-inferior.c: Add "architecture" entry.
1355         (infpy_architecture): New function.
1356
1357 2018-10-06  Tom Tromey  <tom@tromey.com>
1358
1359         PR python/21765:
1360         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1361         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1362         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1363         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1364
1365 2018-10-06  Tom Tromey  <tom@tromey.com>
1366
1367         PR build/17077:
1368         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1369         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1370         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1371         #include.
1372
1373 2018-10-06  Tom Tromey  <tom@tromey.com>
1374
1375         * python/py-breakpoint.c (bppy_get_location): Handle a
1376         bp_breakpoint without a location.
1377
1378 2018-10-06  Tom Tromey  <tom@tromey.com>
1379
1380         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1381         (_RegEx): Reformat help text.
1382         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1383         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1384         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1385         text.
1386         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1387         (EnableXMethod, DisableXMethod): Remove help indentation.
1388         Capitalize meta-syntactic variables.
1389         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1390         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1391         Capitalize meta-syntactic variables.
1392         * python/lib/gdb/command/explore.py (ExploreCommand)
1393         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1394         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1395         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1396         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1397         Remove help indentation.
1398         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1399         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1400         (DisableFrameFilter, SetFrameFilterPriority)
1401         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1402
1403 2018-10-06  Tom Tromey  <tom@tromey.com>
1404
1405         PR tui/28819:
1406         * tui/tui-io.c (gdb_wgetch): New function.
1407         (tui_mld_getc, tui_getc): Use it.
1408
1409 2018-10-05  Tom Tromey  <tom@tromey.com>
1410
1411         * sol-thread.c (sol_thread_target::wait): Rename inner
1412         "save_ptid".
1413
1414 2018-10-04  Tom Tromey  <tom@tromey.com>
1415
1416         * configure: Rebuild.
1417         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1418
1419 2018-10-04  Tom Tromey  <tom@tromey.com>
1420
1421         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1422         declaration of "block".
1423
1424 2018-10-04  Tom Tromey  <tom@tromey.com>
1425
1426         * common/filestuff.c (fdwalk): Remove inner declaration of
1427         "result".
1428
1429 2018-10-04  Tom Tromey  <tom@tromey.com>
1430
1431         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1432         "structs_addr" and hoist declaration.
1433
1434 2018-10-04  Tom Tromey  <tom@tromey.com>
1435
1436         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1437         variable "size".
1438
1439 2018-10-04  Tom Tromey  <tom@tromey.com>
1440
1441         * mdebugread.c (parse_partial_symbols): Use std::string.
1442
1443 2018-10-04  Tom Tromey  <tom@tromey.com>
1444
1445         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1446         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1447         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1448         header.
1449         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1450         more inner scope.
1451         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1452         * varobj.c (varobj_update): Rename inner "newobj",
1453         "type_changed".
1454         * valprint.c (generic_emit_char): Rename inner "buf".
1455         * valops.c (find_overload_match): Rename inner "temp".
1456         (value_struct_elt_for_reference): Declare "v" in more inner
1457         scope.
1458         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1459         * unittests/array-view-selftests.c (run_tests): Rename inner
1460         "vec".
1461         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1462         header.
1463         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1464         "tsv" in more inner scope.
1465         (print_one_static_tracepoint_marker): Rename inner
1466         "tuple_emitter".
1467         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1468         (tic6x_push_dummy_call): Don't redeclare "addr".
1469         * target-float.c: Declare "dto" lower.
1470         * symtab.c (lookup_local_symbol): Rename inner "sym".
1471         (find_pc_sect_line): Rename inner "pc".
1472         * stack.c (print_frame): Don't redeclare "gdbarch".
1473         (return_command): Rename inner "gdbarch".
1474         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1475         "sp".
1476         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1477         header.
1478         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1479         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1480         scope.
1481         * remote.c (remote_target::update_thread_list): Don't redeclare
1482         "tp".
1483         (remote_target::process_initial_stop_replies): Rename inner
1484         "thread".
1485         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1486         (remote_target::wait_as): Don't redeclare "stop_reply".
1487         (remote_target::get_thread_local_address): Rename inner
1488         "result".
1489         (remote_target::get_tib_address): Likewise.
1490
1491         * regcache.c (cooked_read_test): Rename "regnum".
1492         * record-btrace.c (cmd_record_btrace_start): Rename inner
1493         "exception".
1494         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1495         loop header.
1496         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1497         header.
1498         (ppu2spu_sniffer): Rename inner "buf".
1499         * parse.c (operator_check_standard): Rename inner "type",
1500         "objfile".
1501         * p-valprint.c (pascal_val_print): Introduce new scope for
1502         "low_bound", "high_bound".
1503         * p-exp.y (yylex): Declare "i" in loop header.
1504         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1505         Lower declaration of "s".
1506         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1507         header.
1508         (nios2_push_dummy_call): Rename "len".
1509         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1510         "buf".
1511         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1512         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1513         (linux_xfer_osdata_modules): Likewise.
1514         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1515         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1516         (mips_o64_push_dummy_call): Likewise.
1517         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1518         "op".
1519         * mi/mi-main.c (list_available_thread_groups): Rename inner
1520         "tuple_emitter".
1521         (mi_cmd_data_read_memory): Rename inner "opts".
1522         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1523         "tuple_emitter".
1524         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1525         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1526         more inner scope.
1527         (parse_partial_symbols): Rename inner "pst", "p", "name"
1528         * main.c (captured_main_1): Rename inner "i"s.
1529         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1530         "oso2".
1531         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1532         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1533         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1534         (handle_signal_stop): Rename inner "gdbarch".
1535         (handle_command): Declare "signum" in loop header.
1536         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1537         "status".
1538         (examine_prologue): Rename inner "sol" and "sof".
1539         (ia64_extract_return_value): Rename inner "val".  Declare another
1540         "val" in a more inner scope.
1541         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1542         inner scope.
1543         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1544         "except".
1545         * findvar.c (default_read_var_value): Don't redeclare "addr".
1546         * f-exp.y (yylex): Declare "i" in loop header.
1547         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1548         Rename inner "type", "expect_type".
1549         (evaluate_subexp_for_sizeof): Rename inner "pc".
1550         * elfread.c (elf_symfile_read): Rename inner "abfd".
1551         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1552         "bytes_read".
1553         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1554         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1555         (dwarf_decode_line_header): Rename inner "lh".
1556         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1557         "offset".  Declare "i" in loop header.
1558         (disassemble_dwarf_expression): Rename inner "addr_size".
1559         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1560         inner "result".
1561         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1562         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1563         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1564         "inner_list_emitter".
1565         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1566         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1567         declaration in a block.
1568         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1569         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1570         "obstack_final_size".
1571         * cp-support.c (inspect_type): Declare "i" in loop header.
1572         * compile/compile.c (compile_instance::insert_symbol_error):
1573         Rename inner "e".
1574         * common/agent.c (agent_run_command): Remove inner "ret"
1575         declaration.
1576         * coffread.c (coff_symfile_read): Rename inner "name".
1577         (coff_symfile_read): Rename inner "abfd".
1578         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1579         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1580         "high".
1581         * c-exp.y (lex_one_token): Move "len" declaration lower.
1582         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1583         "gdbarch".
1584         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1585         "b".
1586         (watch_command_1): Declare "mark" later.
1587         (clear_command): Don't shadow "a" or "b".
1588         (delete_command): Rename inner "b".
1589         (delete_trace_command): Likewise.
1590         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1591         "op".
1592         (arm_gdbarch_init): Remove inner "e_flags".
1593         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1594         "offset" in inner blocks.
1595
1596 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1597
1598         * dwarf-index-write.c (file_write): Don't write if the vector is
1599         empty.
1600
1601 2018-10-05  Tom de Vries  <tdevries@suse.de>
1602
1603         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1604         PyArg_ParseTuple call.
1605
1606 2018-10-05  Tom de Vries  <tdevries@suse.de>
1607
1608         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1609         PyArg_ParseTuple call.
1610
1611 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1612
1613         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1614         to avoid exceeding 80 characters per line limit.
1615
1616 2018-10-04  Tom Tromey  <tom@tromey.com>
1617
1618         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1619         (reread_symbols): Update.
1620         * complaints.h (clear_complaints): Remove argument.
1621         * complaints.c (enum complaint_series): Remove.
1622         (series): Remove global.
1623         (complaint_internal): Update.
1624         (clear_complaints): Remove argument.
1625
1626 2018-10-04  Tom Tromey  <tom@tromey.com>
1627
1628         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1629         debugging symbols" message if there is a separate debug objfile.
1630
1631 2018-10-04  Tom Tromey  <tom@tromey.com>
1632
1633         PR cli/19551:
1634         * symfile.c (symbol_file_add_with_addrs): Update output.
1635         * psymtab.c (require_partial_symbols): Update output.
1636
1637 2018-10-04  Tom Tromey  <tom@tromey.com>
1638
1639         PR cli/22234:
1640         * complaints.c: Emit \n.
1641
1642 2018-10-04  Tom Tromey  <tom@tromey.com>
1643
1644         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1645         (separate_debug_file_exists, find_separate_debug_file)
1646         (add_symbol_file_command, reread_symbols, allocate_symtab)
1647         (allocate_compunit_symtab): Use filtered printing, not
1648         unfiltered.
1649         * psymtab.c (require_partial_symbols, dump_psymtab)
1650         (allocate_psymtab): Use filtered printing, not unfiltered.
1651
1652 2018-10-04  Tom Tromey  <tom@tromey.com>
1653
1654         * complaints.c (complaint_internal): Correctly check complaint
1655         count.
1656
1657 2018-10-04  Tom Tromey  <tom@tromey.com>
1658
1659         * complaints.h (struct complaints): Remove declaration.
1660         * complaints.c (clear_complaints): Remove an unused variable.
1661
1662 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1663
1664         * MAINTAINERS (Write After Approval): Add self.
1665
1666 2018-10-03  Tom Tromey  <tom@tromey.com>
1667
1668         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1669         "buffer_contents".
1670         * coffread.c (coff_symtab_read): Initialize "newobj".
1671
1672 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1673
1674         * dwarf2read.c (read_func_scope): Remove struct keyword in
1675         range-based for.
1676
1677 2018-10-03  Tom Tromey  <tom@tromey.com>
1678
1679         * README: Mention --enable-ubsan.
1680         * NEWS: Mention --enable-ubsan.
1681         * acinclude.m4: Include sanitize.m4.
1682         * configure: Rebuild.
1683         * configure.ac: Call AM_GDB_UBSAN.
1684         * sanitize.m4: New file.
1685
1686 2018-10-03  Tom Tromey  <tom@tromey.com>
1687
1688         * expression.h (enum exp_opcode): Use uint8_t as base type.
1689         * expprint.c (op_name): Handle invalid opcodes.
1690
1691 2018-10-03  Tom Tromey  <tom@tromey.com>
1692
1693         * parse.c (prefixify_expression): Add assert.
1694         (parse_exp_in_context_1): Throw exception if the expression is
1695         empty.
1696
1697 2018-10-03  Tom Tromey  <tom@tromey.com>
1698
1699         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1700
1701 2018-10-03  Tom Tromey  <tom@tromey.com>
1702
1703         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1704
1705 2018-10-03  Tom Tromey  <tom@tromey.com>
1706
1707         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1708         unsigned.
1709
1710 2018-10-03  Tom Tromey  <tom@tromey.com>
1711
1712         * findvar.c (extract_integer): Do work in an unsigned type.
1713
1714 2018-10-03  Tom Tromey  <tom@tromey.com>
1715
1716         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1717         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1718         base type.
1719         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1720         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1721         type.
1722         * c-lang.h (enum c_string_type_values): Use unsigned as base
1723         type.
1724         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1725
1726 2018-10-03  Tom Tromey  <tom@tromey.com>
1727
1728         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1729         <~dwarf2_frame_state_reg_info>: Update.
1730         <dwarf2_frame_state_reg_info>: Update.
1731         <alloc_regs>: Add assertion.  Update.
1732         <reg>: Now a std::vector.
1733         <num_regs>: Remove.
1734         <swap>: Update.
1735         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1736         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1737
1738 2018-10-03  Tom Tromey  <tom@tromey.com>
1739
1740         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1741
1742 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1743
1744         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1745
1746 2018-10-02  Tom Tromey  <tom@tromey.com>
1747
1748         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1749
1750 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
1751
1752         * NEWS: Mention changed commands.
1753         * ser-uds.c: New file.
1754         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1755         * configure: Regenerate.
1756         * Makefile.in: Add new file.
1757         * serial.c (serial_open): Check if filename is a socket
1758         and lookup the appropriate interface accordingly.
1759
1760 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1761
1762         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1763         define.
1764         (AARCH64_EXTRA_MAGIC): Likewise.
1765         (AARCH64_FPSIMD_MAGIC): Likewise.
1766         (AARCH64_SVE_MAGIC): Likewise.
1767         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1768         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1769         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1770         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1771         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1772         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1773         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1774         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1775         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1776         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1777         (read_aarch64_ctx): Add function.
1778         (aarch64_linux_sigframe_init): Detect FP registers.
1779
1780 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1781
1782         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1783         (AARCH64_D0_REGNUM): Likewise.
1784         (AARCH64_S0_REGNUM): Likewise.
1785         (AARCH64_H0_REGNUM): Likewise.
1786         (AARCH64_B0_REGNUM): Likewise.
1787         (AARCH64_SVE_V0_REGNUM): Likewise.
1788         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1789         (AARCH64_D0_REGNUM): Likewise.
1790         (AARCH64_S0_REGNUM): Likewise.
1791         (AARCH64_H0_REGNUM): Likewise.
1792         (AARCH64_B0_REGNUM): Likewise.
1793         (AARCH64_SVE_V0_REGNUM): Likewise.
1794
1795 2018-10-01  Gary Benson <gbenson@redhat.com>
1796
1797         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1798         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1799         prfpregset_t instead of gdb_prfpregset_t.
1800         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1801         * configure, config.in: Rebuild.
1802
1803 2018-10-01  Gary Benson <gbenson@redhat.com>
1804
1805         * common/gdb_proc_service.h: New file, factored out from...
1806         * gdb_proc_service.h: Moved common code to the above file.
1807         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1808
1809 2018-10-01  Gary Benson <gbenson@redhat.com>
1810
1811         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1812         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1813
1814 2018-10-01  Gary Benson <gbenson@redhat.com>
1815
1816         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1817         (AC_CHECK_HEADERS): Check for linux/elf.h.
1818         * configure, config.in: Rebuild.
1819         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1820         doesn't define elf_fpregset_t.
1821
1822 2018-10-01  Gary Benson <gbenson@redhat.com>
1823
1824         * gdb_proc_service.h: Whitespace change.
1825
1826 2018-10-01  Tom Tromey  <tom@tromey.com>
1827
1828         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1829         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1830         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1831
1832 2018-10-01  Tom Tromey  <tom@tromey.com>
1833
1834         * README: Minor change.
1835
1836 2018-09-30  Pedro Alves  <palves@redhat.com>
1837
1838         * darwin-nat-info.c (darwin_debug_regions_recurse)
1839         (info_mach_exceptions_command): Remove unused local variables.
1840         * darwin-nat.c (darwin_decode_notify_message)
1841         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1842         (darwin_stop_inferior, darwin_setup_exceptions)
1843         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1844         (darwin_nat_target::attach, darwin_nat_target::detach)
1845         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1846         local variables.
1847         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1848         variables.
1849
1850 2018-09-29  Tom Tromey  <tom@tromey.com>
1851
1852         * README: Remove some leftover text.
1853
1854 2018-09-29  Tom Tromey  <tom@tromey.com>
1855
1856         * PROBLEMS: Rewrite.
1857         * README: Update.
1858
1859 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1860
1861         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1862         case with explicit breakpoint kind.
1863         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1864         'additional_info' and related logic.
1865         (riscv_debug_breakpoints): New variable.
1866         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1867         instruction to determine the breakpoint kind.
1868         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1869         flag.  Update description of 'set/show riscv
1870         use-compressed-breakpoints' flag.
1871
1872 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1873
1874         (NEWS): Mention changes to frame related commands.
1875         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1876         (add_prefix_cmd_suppress_notification): New function.
1877         (add_com_suppress_notification): Call
1878         add_cmd_suppress_notification.
1879         * command.h (add_cmd_suppress_notification): Declare.
1880         (add_prefix_cmd_suppress_notification): Declare.
1881         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1882         (parse_frame_specification): Moved from stack.c, with
1883         simplification to handle a single argument.
1884         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1885         switch to the selected frame.  Add a header comment.
1886         * stack.c: Remove 'safe-ctype.h' include.
1887         (find_frame_for_function): Add declaration.
1888         (find_frame_for_address): New function.
1889         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1890         (frame_selection_by_function_completer): New function.
1891         (info_frame_command): Rename to...
1892         (info_frame_command_core): ...this, and update parameter types.
1893         (select_frame_command): Rename to...
1894         (select_frame_command_core): ...this, and update parameter types.
1895         (frame_command): Rename to...
1896         (frame_command_core): ...this, and update parameter types.
1897         (class frame_command_helper): New class to wrap implementations of
1898         frame related sub-commands.
1899         (frame_apply_cmd_list): New static global.
1900         (frame_cmd_list): Make static.
1901         (select_frame_cmd_list): New global for sub-commands.
1902         (info_frame_cmd_list): New global for sub-commands.
1903         (_initialize_stack): Register sub-commands for 'frame',
1904         'select-frame', and 'info frame'.  Update 'frame apply' commands
1905         to use frame_apply_cmd_list.  Move function local static
1906         frame_apply_list to file static frame_apply_cmd_list for
1907         consistency.
1908         * stack.h (select_frame_command): Delete declarationn.
1909         (select_frame_for_mi): Declare new function.
1910
1911 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1912
1913         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1914         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1915         and NOP.
1916
1917 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1918
1919         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1920
1921 2018-09-26  Tom Tromey  <tom@tromey.com>
1922
1923         * valops.c (auto_abandon): Remove dead code.
1924
1925 2018-09-26  Tom Tromey  <tom@tromey.com>
1926
1927         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1928
1929 2018-09-24  Tom Tromey  <tom@tromey.com>
1930
1931         * common/pathstuff.c (get_standard_cache_dir): Make
1932         "xdg_cache_home" and "home" const.
1933         * top.c (init_history): Make "tmpenv" const.
1934         * main.c (get_init_files): Make "homedir" const.
1935
1936 2018-09-23  Tom Tromey  <tom@tromey.com>
1937
1938         PR python/18852:
1939         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1940
1941 2018-09-23  Tom Tromey  <tom@tromey.com>
1942
1943         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1944         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1945         * python/python-internal.h (gdbpy_handle_exception): Declare.
1946         * python/py-utils.c (gdbpy_handle_exception): New function.
1947
1948 2018-09-23  Tom Tromey  <tom@tromey.com>
1949
1950         PR python/17284:
1951         * python/py-type.c (typy_template_argument): Check for negative
1952         argument number.
1953
1954 2018-09-23  Tom Tromey  <tom@tromey.com>
1955
1956         PR python/14062:
1957         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1958
1959 2018-09-23  Tom Tromey  <tom@tromey.com>
1960
1961         PR python/18170:
1962         * python/py-value.c (valpy_int): Allow conversion from pointer
1963         type.
1964
1965 2018-09-23  Tom Tromey  <tom@tromey.com>
1966
1967         PR python/20126:
1968         * python/py-value.c (valpy_int): Respect type sign.
1969
1970 2018-09-23  Tom Tromey  <tom@tromey.com>
1971
1972         PR python/18352;
1973         * python/py-value.c (valpy_float): Allow conversions from int or
1974         char.
1975         (valpy_int, valpy_long): Allow conversions from float.
1976
1977 2018-09-23  Tom Tromey  <tom@tromey.com>
1978
1979         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1980         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1981
1982 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1983
1984         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1985         __sighndlr.
1986         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1987
1988 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1989
1990         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1991         target_terminal::ours().
1992
1993 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1994
1995         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1996         of vl to ULONGEST.
1997
1998 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1999
2000         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2001         redundant condition.
2002
2003 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2004
2005         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2006
2007         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2008         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2009         * sol-thread.c (ps_pdmodel): Don't guard definition.
2010
2011         * procfs.c: Fix formatting.
2012
2013         * procfs.c (sysset_t_alloc): Remove.
2014         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2015         (procfs_debug_inferior): Likewise.
2016         (procfs_set_exec_trap): Likewise.
2017         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2018         (proc_set_traced_sysexit): Likewise.
2019
2020         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2021         (dead_procinfo): Likewise.
2022         (proc_warn): Likewise.
2023         (proc_error): Likewise.
2024         (proc_get_LDT_entry): Likewise.
2025         (do_attach): Likewise.
2026         (procfs_target::pid_to_str): Likewise.
2027         (iterate_over_mappings): Likewise.
2028
2029         * procfs.c (create_procinfo): Fix ARI warning.
2030         (proc_get_status): Likewise.
2031         (proc_stop_process): Likewise.
2032         (proc_run_process): Likewise.
2033         (proc_kill): Likewise.
2034         (proc_get_LDT_entry): Likewise.
2035         (procfs_find_LDT_entry): Likewise.
2036         (proc_update_threads): Likewise.
2037         (proc_iterate_over_threads): Likewise.
2038         (do_attach): Likewise.
2039         (procfs_xfer_memory): Likewise.
2040         (invalidate_cache): Likewise.
2041         (procfs_target::resume): Likewise.
2042         (procfs_init_inferior): Likewise.
2043         (procfs_set_exec_trap): Likewise.
2044         (procfs_target::thread_alive): Likewise.
2045         (procfs_target::pid_to_exec_file): Likewise.
2046         (iterate_over_mappings): Likewise.
2047         (procfs_target::make_corefile_notes): Likewise.
2048         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2049
2050         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2051         (procfs_find_LDT_entry): Likewise.
2052         * sol-thread.c (ps_lgetLDT): Likewise.
2053
2054 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2055
2056         PR tdep/17903
2057         * procfs.c (procfs_target): Declare pid_to_exec_file.
2058         (procfs_target::pid_to_exec_file): New.
2059
2060 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2061
2062         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2063         renaming.
2064         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2065         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2066
2067 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2068
2069         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2070         (supply_fpregset, fill_fpregset): Move ...
2071         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2072         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2073         Remove references to ioctl-based procfs.
2074         Include <sys/reg.h>.
2075         Remove PR_MODEL_NATIVE guards.
2076         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2077         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2078
2079 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2080
2081         PR gdb/20981:
2082         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2083         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2084         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2085
2086 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2087
2088         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2089         (fbsd_print_sockaddr_in6): Likewise.
2090
2091 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2092             Chris January  <chris.january@arm.com>
2093
2094         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2095         (evaluate_subexp_standard): Return a dummy type when
2096         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2097         OP_F77_UNDETERMINED_ARGLIST case.
2098         * expression.h (enum noside): Update comment.
2099
2100 2018-09-19  George Vasick <george.vasick@oracle.com>
2101
2102         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2103
2104 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2105             April Chin <april.chin@oracle.com>
2106             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2107
2108         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2109         uint_t lwpid_t.
2110         (create_procinfo): Print pids in /proc without leading zeros.
2111
2112 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2113
2114         * nios2-tdep.c (nios2_gcc_target_options): New.
2115         (nios2_gdb_arch_init): Install new hook.
2116
2117 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2118
2119         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2120         New file.
2121         * update-gnulib.sh: Apply patch.
2122         * configure: Re-generate.
2123
2124 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2125
2126         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2127         description.  Make "info proc" command descriptions more
2128         consistent.
2129
2130 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2131
2132         * NEWS: Mention 'info proc files' command.
2133
2134 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2135
2136         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2137         descriptors for IP_FILES and IP_ALL.
2138
2139 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2140
2141         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2142         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2143         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2144         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2145         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2146         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2147         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2148         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2149         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2150         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2151         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2152         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2153         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2154         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2155         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2156         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2157         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2158         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2159         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2160         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2161         (struct fbsd_sockaddr_un): New types.
2162         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2163         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2164         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2165         (fbsd_core_info_proc_files): New functions.
2166         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2167         IP_ALL.
2168         * fbsd-tdep.h (fbsd_info_proc_files_header)
2169         (fbsd_info_proc_files_entry): New.
2170
2171 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2172
2173         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2174         * infcmd.c (info_proc_cmd_files): New function.
2175         (_initialize_infcmd): Register 'info proc files' command.
2176
2177 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2178
2179         * gnulib/aclocal-m4-deps.mk: Re-generate.
2180         * gnulib/aclocal.m4: Re-generate.
2181         * gnulib/config.in: Re-generate.
2182         * gnulib/configure: Re-generate.
2183         * gnulib/import/Makefile.am: Re-generate.
2184         * gnulib/import/Makefile.in: Re-generate.
2185         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2186         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2187         * gnulib/import/arpa_inet.in.h: New file.
2188         * gnulib/import/inet_ntop.c: New file.
2189         * gnulib/import/m4/arpa_inet_h.m4: New file.
2190         * gnulib/import/m4/inet_ntop.m4: New file.
2191         * gnulib/import/m4/netinet_in_h.m4: New file.
2192         * gnulib/import/m4/socklen.m4: New file.
2193         * gnulib/import/m4/sockpfaf.m4: New file.
2194         * gnulib/import/m4/stdalign.m4: New file.
2195         * gnulib/import/m4/sys_uio_h.m4: New file.
2196         * gnulib/import/netinet_in.in.h: New file.
2197         * gnulib/import/stdalign.in.h: New file.
2198         * gnulib/import/sys_socket.c: New file.
2199         * gnulib/import/sys_socket.in.h: New file.
2200         * gnulib/import/sys_uio.in.h: New file.
2201         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2202         module.
2203
2204 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2205
2206         * gnulib/aclocal-m4-deps.mk: New file.
2207         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2208         deterministically.
2209
2210 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2211
2212         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2213         KVE_PATH.
2214
2215 2018-09-18  Tom Tromey  <tom@tromey.com>
2216
2217         * compile/compile-object-load.c (struct
2218         link_hash_table_cleanup_data): Add constructor and destructor.
2219         Use DISABLE_COPY_AND_ASSIGN.
2220         (~link_hash_table_cleanup_data): Rename from
2221         link_hash_table_free.  Now a destructor.
2222         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2223
2224 2018-09-18  Tom Tromey  <tom@tromey.com>
2225
2226         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2227         * compile/compile-object-load.c (struct munmap_list): Move to
2228         header file.
2229         (munmap_list::add): Rename from munmap_list_add; rewrite.
2230         (munmap_list::~munmap_list): Rename from munmap_list_free.
2231         (munmap_listp_free_cleanup): Remove.
2232         (compile_object_load): Update.
2233         * compile/compile-object-load.h (struct munmap_list): Move from
2234         compile-object-load.c.  Rewrite.
2235
2236 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2237
2238         * aarch64-tdep.c (pass_in_v): Use register size.
2239         (aarch64_extract_return_value): Likewise.
2240         (aarch64_store_return_value): Likewise.
2241
2242 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2243
2244         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2245         rlim_t.
2246
2247 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2248
2249         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2250         Fix short help line.
2251
2252 2018-09-17  Tom Tromey  <tom@tromey.com>
2253
2254         PR python/20445:
2255         * configure: Rebuild.
2256         * configure.ac: Conditionally use -DNDEBUG for Python.
2257
2258 2018-09-17  Tom Tromey  <tom@tromey.com>
2259
2260         * configure: Rebuild.
2261         * configure.ac: Use gmp as a library dependency when checking for
2262         mpfr.
2263
2264 2018-09-17  Pedro Alves  <palves@redhat.com>
2265
2266         * python/py-inferior.c (find_inferior_object): Delete.
2267
2268 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2269
2270         * compile/compile-cplus-types.c
2271         (compile_cplus_instance::enter_scope): Don't use new_scope after
2272         std::move.
2273
2274 2018-09-17  Tom Tromey  <tom@tromey.com>
2275
2276         * common/pathstuff.c (get_standard_cache_dir): Use
2277         ~/Library/Caches on macOS.
2278         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2279
2280 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2281
2282         PR python/23669
2283         * breakpoint.c (commands_cmd_element): New.
2284         (_initialize_breakpoint): Assign commands_cmd_element.
2285         * breakpoint.h (commands_cmd_element): New.
2286         * cli/cli-script.c (while_cmd_element, if_command,
2287         define_cmd_element): New.
2288         (command_name_equals): Remove.
2289         (process_next_line): Compare commands by pointer, not by name.
2290         (_initialize_cli_script): Assign the various cmd_list_element
2291         variables.
2292         * compile/compile.c (compile_cmd_element): New.
2293         (_initialize_compile): Assign compile_cmd_element.
2294         * compile/compile.h (compile_cmd_element): New.
2295         * guile/guile.c (guile_cmd_element): New.
2296         (install_gdb_commands): Assign guile_cmd_element.
2297         * guile/guile.h (guile_cmd_element): New.
2298         * python/python.c (python_cmd_element): New.
2299         (_initialize_python): Assign python_cmd_element.
2300         * python/python.h (python_cmd_element): New.
2301         * tracepoint.c (while_stepping_cmd_element): New.
2302         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2303         * tracepoint.h (while_stepping_cmd_element): New.
2304
2305 2018-09-17  Tom Tromey  <tom@tromey.com>
2306
2307         * infrun.c (save_infcall_suspend_state): Return
2308         infcall_suspend_state_up.
2309         (save_infcall_control_state): Return infcall_control_state_up.
2310         * inferior.h (save_infcall_suspend_state)
2311         (save_infcall_control_state): Declare later.  Return unique
2312         pointers.
2313
2314 2018-09-17  Tom Tromey  <tom@tromey.com>
2315
2316         * infrun.c (struct stop_context): Declare constructor,
2317         destructor, "changed" method.
2318         (stop_context::stop_context): Rename from save_stop_context.
2319         (stop_context::~stop_context): Rename from
2320         release_stop_context_cleanup.
2321         (normal_stop): Update.
2322         (stop_context::changed): Rename from stop_context_changed.  Return
2323         bool.
2324
2325 2018-09-17  Tom Tromey  <tom@tromey.com>
2326
2327         * inferior.h (struct infcall_suspend_state_deleter): New.
2328         (infcall_suspend_state_up): New typedef.
2329         (struct infcall_control_state_deleter): New.
2330         (infcall_control_state_up): New typedef.
2331         (make_cleanup_restore_infcall_suspend_state)
2332         (make_cleanup_restore_infcall_control_state): Don't declare.
2333         * infcall.c (call_function_by_hand_dummy): Update.
2334         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2335         (make_cleanup_restore_infcall_suspend_state): Remove.
2336         (do_restore_infcall_control_state_cleanup)
2337         (make_cleanup_restore_infcall_control_state): Remove.
2338
2339 2018-09-17  Tom Tromey  <tom@tromey.com>
2340
2341         * gdbthread.h (struct thread_control_state): Add initializer.
2342         (class thread_info) <control>: Remove initializer.
2343         * inferior.h (struct inferior_control_state): Add initializer.
2344         (class inferior) <control>: Remove initializer.
2345         (exit_inferior_1): Update.
2346         * infrun.c (struct infcall_control_state): Add constructors.
2347         (save_infcall_control_state): Use new.
2348         (restore_infcall_control_state, discard_infcall_control_state):
2349         Use delete.
2350
2351 2018-09-17  Tom Tromey  <tom@tromey.com>
2352
2353         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2354         unique_ptr.
2355         <siginfo_data>: Now a unique_xmalloc_ptr.
2356         (save_infcall_suspend_state, restore_infcall_suspend_state)
2357         (discard_infcall_suspend_state)
2358         (get_infcall_suspend_state_regcache): Update.
2359
2360 2018-09-17  Tom Tromey  <tom@tromey.com>
2361
2362         * gdbthread.h (struct thread_suspend_state): Add initializers.
2363         (class thread_info) <suspend>: Remove initializer.
2364         * infrun.c (struct infcall_suspend_state): Add initializers.
2365         (save_infcall_suspend_state): Use new.
2366         (discard_infcall_suspend_state): Use delete.
2367
2368 2018-09-16  Tom Tromey  <tom@tromey.com>
2369
2370         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2371         Remove.
2372         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2373         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2374         (py_varobj_iter_new): Likewise.
2375         (py_varobj_get_iterator): Use gdbpy_ref.
2376
2377 2018-09-16  Tom Tromey  <tom@tromey.com>
2378
2379         * python/py-threadevent.c (py_get_event_thread): Simplify.
2380         * python/py-inferior.c (infpy_thread_from_thread_handle):
2381         Return immediately after calling thread_to_thread_object.  Use
2382         Py_RETURN_NONE.
2383         (thread_to_thread_object): Set the exception on a NULL return.
2384
2385 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2386
2387         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2388
2389 2018-09-16  Tom Tromey  <tom@tromey.com>
2390
2391         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2392         Remove.
2393
2394 2018-09-16  Tom Tromey  <tom@tromey.com>
2395
2396         * python/python-internal.h (thread_to_thread_object): Change
2397         return type.
2398         * python/py-inferior.c (thread_to_thread_object): Return a new
2399         reference.
2400         (infpy_thread_from_thread_handle): Update.
2401         * python/py-infthread.c (gdbpy_selected_thread): Update.
2402         * python/py-stopevent.c (create_stop_event_object): Update.
2403         * python/py-threadevent.c (py_get_event_thread): Return a new
2404         reference.
2405         (py_get_event_thread): Update.
2406         * python/py-event.h (py_get_event_thread): Change return type.
2407         * python/py-continueevent.c (create_continue_event_object):
2408         Update.
2409
2410 2018-09-16  Tom Tromey  <tom@tromey.com>
2411
2412         * python/py-progspace.c (pspy_get_objfiles): Update.
2413         * python/python-internal.h (objfile_to_objfile_object): Change
2414         return type.
2415         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2416         Update.
2417         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2418         Update.
2419         * python/python.c (gdbpy_get_current_objfile): Update.
2420         (gdbpy_objfiles): Update.
2421         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2422         Update.
2423         (objfile_to_objfile_object): Return a new reference.
2424         * python/py-symtab.c (stpy_get_objfile): Update.
2425         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2426         Update.
2427
2428 2018-09-16  Tom Tromey  <tom@tromey.com>
2429
2430         * python/py-inferior.c (infpy_get_progspace): Update.
2431         * python/python-internal.h (pspace_to_pspace_object): Change
2432         return type.
2433         * python/py-newobjfileevent.c
2434         (create_clear_objfiles_event_object): Update.
2435         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2436         Update.
2437         * python/python.c (gdbpy_get_current_progspace): Update.
2438         (gdbpy_progspaces): Update.
2439         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2440         reference.
2441         * python/py-objfile.c (objfpy_get_progspace): Update.
2442         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2443         Update.
2444
2445 2018-09-16  Tom Tromey  <tom@tromey.com>
2446
2447         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2448         (solib_name, block_for_pc, find_pc_line): New functions.
2449         (execute_unwinders): Update.
2450         * python/py-block.c (gdbpy_block_for_pc): Remove.
2451         * python/py-inferior.c (infpy_get_progspace): New function.
2452         (inferior_object_getset) <progspace>: Add.
2453         * python/py-progspace.c (pspy_objfiles): Rewrite.
2454         (pspy_solib_name, pspy_block_for_pc)
2455         (pspy_find_pc_line, pspy_is_valid): New functions.
2456         (progspace_object_methods): Add entries for solib_name,
2457         block_for_pc, find_pc_line, is_valid.
2458         * python/python-internal.h (gdbpy_block_for_pc)
2459         (build_objfiles_list): Don't declare.
2460         * python/python.c: Don't include solib.h.
2461         (gdbpy_solib_name, gdbpy_find_pc_line)
2462         (gdbpy_get_current_progspace, build_objfiles_list)
2463         (gdbpy_objfiles): Remove.
2464         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2465         solib_name, find_pc_line>: Remove entries.
2466
2467 2018-09-16  Tom Tromey  <tom@tromey.com>
2468
2469         * top.c (new_ui_command): Use GNU style for metasyntactic
2470         variables.
2471         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2472         variables.
2473         * maint.c (maintenance_translate_address): Remove "<>" around
2474         text.
2475         * interps.c (interpreter_exec_cmd): Use GNU style for
2476         metasyntactic variables.
2477         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2478         metasyntactic variables.
2479         * tracepoint.c (tfind_range_command): Use GNU style for
2480         metasyntactic variables.
2481         (tfind_outside_command): Likewise.
2482         (_initialize_tracepoint): Likewise.
2483         * remote.c (extended_remote_target::create_inferior): Use GNU
2484         style for metasyntactic variables.
2485         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2486         metasyntactic variables.
2487         (adi_assign_command): Likewise.
2488
2489 2018-09-16  Tom Tromey  <tom@tromey.com>
2490
2491         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2492         metasyntactic variables.  Print message if no disassembler options
2493         are available.
2494
2495 2018-09-15  Tom Tromey  <tom@tromey.com>
2496
2497         * infcmd.c (get_inferior_args): Return const char *.
2498         * inferior.h (get_inferior_args): Return type now const.
2499         * linux-tdep.c (linux_fill_prpsinfo): Update.
2500         * procfs.c (procfs_target::make_corefile_notes): Update.
2501
2502 2018-09-07  Tom Tromey  <tom@tromey.com>
2503
2504         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2505         inside the TRY.
2506
2507 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2508
2509         * nios2-tdep.c (nios2_type_align): New.
2510         (nios2_gdb_arch_init): Install type_align hook.
2511
2512 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2513
2514         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2515         type that is neither object file owned, nor gdbarch owned.
2516         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2517         gdbarch is non-NULL.
2518         (alloc_type_instance): Allocate non-objfile owned types on the
2519         gdbarch obstack.
2520         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2521         using TYPE_ALLOC to ensure memory is allocated on the correct
2522         obstack.
2523         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2524         obstack, or the gdbarch obstack.
2525         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2526
2527 2018-09-14  Tom Tromey  <tom@tromey.com>
2528
2529         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2530         block.
2531
2532 2018-09-14  Tom Tromey  <tom@tromey.com>
2533
2534         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2535
2536 2018-09-13  Tom Tromey  <tom@tromey.com>
2537
2538         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2539         static.
2540
2541 2018-09-13  Tom Tromey  <tom@tromey.com>
2542
2543         * exec.c (try_open_exec_file): Use std::string.
2544
2545 2018-09-13  Tom Tromey  <tom@tromey.com>
2546
2547         * utils.h (gdb_bfd_errmsg): Return std::string.
2548         * exec.c (exec_file_attach): Update.
2549         * compile/compile-object-load.c (compile_object_load): Update.
2550         * utils.c (gdb_bfd_errmsg): Return std::string.
2551
2552 2018-09-13  Tom Tromey  <tom@tromey.com>
2553
2554         * procfs.c (struct procinfo_deleter): New.
2555         (procinfo_up): New typedef.
2556         (do_destroy_procinfo_cleanup): Remove.
2557         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2558
2559 2018-09-13  Tom Tromey  <tom@tromey.com>
2560
2561         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2562
2563 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2564 2018-09-13  Tom Tromey  <tom@tromey.com>
2565
2566         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2567         (pspy_get_objfiles): New function.
2568         (progspace_object_methods): New.
2569         (pspace_object_type): Add tp_methods callback.
2570         * python/python-internal.h (build_objfiles_list): New
2571         declaration.
2572         * python/python.c (build_objfiles_list): New function.
2573         (gdbpy_objfiles): Implement using build_objfiles_list.
2574         * NEWS: Mention the Progspace.objfiles method.
2575
2576 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2577
2578         * python/py-inferior.c (infpy_get_progspace): New function.
2579         (inferior_object_getset): Add progspace property.
2580         * NEWS: Mention the new property.
2581
2582 2018-09-13  Tom Tromey  <tom@tromey.com>
2583
2584         PR rust/23650:
2585         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2586
2587 2018-09-13  Tom Tromey  <tom@tromey.com>
2588
2589         PR rust/23626:
2590         * rust-lang.c (rust_enum_variant): Now static.
2591         (rust_empty_enum_p): New function.
2592         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2593         Handle empty enum.
2594
2595 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2596
2597         * python/py-inferior.c (infpy_repr): New.
2598         (inferior_object_type): Register infpy_repr.
2599         * python/py-objfile.c (objfpy_repr): New.
2600         (objfile_object_type): Register objfpy_repr.
2601
2602 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2603
2604         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2605
2606 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2607
2608         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2609         typo.
2610
2611 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2612
2613         * common/common-utils.c: Don't include '<sys/stat.h>'.
2614         (is_regular_file): Move to...
2615         * common/filestuff.c (is_regular_file): ... here.
2616         * common/common-utils.h (is_regular_file): Move to...
2617         * common/filestuff.h (is_regular_file): ... here.
2618
2619 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2620
2621         * skip.c (debug_skip): New variable.
2622         (skiplist_entry::do_skip_file_p): Add debug output.
2623         (skiplist_entry::do_skip_gfile_p): Likewise.
2624         (skiplist_entry::skip_function_p): Likewise.
2625         (_initialize_step_skip): Create debug command.
2626         * NEWS: Mention set/show debug skip.
2627
2628 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2629
2630         * darwin-nat.c (should_disable_startup_with_shell):
2631         New function.
2632         (darwin_nat_target::create_inferior): Add call.
2633
2634 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2635
2636         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2637         inf_port, msg_state>: Initialize.
2638         (struct darwin_thread_info) <signaled, single_step>: Change
2639         type and initialize.
2640         (struct darwin_thread_info) <event>: Initialize.
2641
2642 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2643
2644         PR gdb/23555
2645         PR gdb/23558
2646         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2647         guesses.
2648
2649 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2650
2651         Revert:
2652         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2653
2654         PR gdb/23555
2655         PR gdb/23558
2656         * gnulib/aclocal.m4: Regenerate.
2657         * gnulib/config.in: Regenerate.
2658         * gnulib/configure: Regenerate.
2659         * gnulib/import/Makefile.am: Update.
2660         * gnulib/import/Makefile.in: Update.
2661         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2662         * gnulib/import/_Noreturn.h: ... this.
2663         * gnulib/import/alloca.in.h: Update.
2664         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2665         * gnulib/import/arg-nonnull.h: ... this.
2666         * gnulib/import/assure.h: Update.
2667         * gnulib/import/at-func.c: Update.
2668         * gnulib/import/basename-lgpl.c: Update.
2669         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2670         * gnulib/import/c++defs.h: ... this.
2671         * gnulib/import/canonicalize-lgpl.c: Update.
2672         * gnulib/import/cdefs.h: Update.
2673         * gnulib/import/chdir-long.c: Update.
2674         * gnulib/import/chdir-long.h: Update.
2675         * gnulib/import/cloexec.c: Update.
2676         * gnulib/import/cloexec.h: Update.
2677         * gnulib/import/close.c: Update.
2678         * gnulib/import/closedir.c: Update.
2679         * gnulib/import/config.charset: Update.
2680         * gnulib/import/dirent-private.h: Update.
2681         * gnulib/import/dirent.in.h: Update.
2682         * gnulib/import/dirfd.c: Update.
2683         * gnulib/import/dirname-lgpl.c: Update.
2684         * gnulib/import/dirname.h: Update.
2685         * gnulib/import/dosname.h: Update.
2686         * gnulib/import/dup-safer-flag.c: Update.
2687         * gnulib/import/dup-safer.c: Update.
2688         * gnulib/import/dup.c: Update.
2689         * gnulib/import/dup2.c: Update.
2690         * gnulib/import/errno.in.h: Update.
2691         * gnulib/import/error.c: Update.
2692         * gnulib/import/error.h: Update.
2693         * gnulib/import/exitfail.c: Update.
2694         * gnulib/import/exitfail.h: Update.
2695         * gnulib/import/extra/update-copyright: Update.
2696         * gnulib/import/fchdir.c: Update.
2697         * gnulib/import/fcntl.c: Update.
2698         * gnulib/import/fcntl.in.h: Update.
2699         * gnulib/import/fd-hook.c: Update.
2700         * gnulib/import/fd-hook.h: Update.
2701         * gnulib/import/fd-safer-flag.c: Update.
2702         * gnulib/import/fd-safer.c: Update.
2703         * gnulib/import/fdopendir.c: Update.
2704         * gnulib/import/filename.h: Update.
2705         * gnulib/import/filenamecat-lgpl.c: Update.
2706         * gnulib/import/filenamecat.h: Update.
2707         * gnulib/import/flexmember.h: Update.
2708         * gnulib/import/float+.h: Update.
2709         * gnulib/import/float.c: Update.
2710         * gnulib/import/float.in.h: Update.
2711         * gnulib/import/fnmatch.c: Update.
2712         * gnulib/import/fnmatch.in.h: Update.
2713         * gnulib/import/fnmatch_loop.c: Update.
2714         * gnulib/import/fpucw.h: Update.
2715         * gnulib/import/frexp.c: Update.
2716         * gnulib/import/frexpl.c: Update.
2717         * gnulib/import/fstat.c: Update.
2718         * gnulib/import/fstatat.c: Update.
2719         * gnulib/import/getcwd-lgpl.c: Update.
2720         * gnulib/import/getcwd.c: Update.
2721         * gnulib/import/getdtablesize.c: Update.
2722         * gnulib/import/getlogin_r.c: Update.
2723         * gnulib/import/getprogname.c: Update.
2724         * gnulib/import/getprogname.h: Update.
2725         * gnulib/import/gettext.h: Update.
2726         * gnulib/import/gettimeofday.c: Update.
2727         * gnulib/import/glob-libc.h: Update.
2728         * gnulib/import/glob.c: Update.
2729         * gnulib/import/glob.in.h: Update.
2730         * gnulib/import/glob_internal.h: Update.
2731         * gnulib/import/glob_pattern_p.c: Update.
2732         * gnulib/import/globfree.c: Update.
2733         * gnulib/import/hard-locale.c: Update.
2734         * gnulib/import/hard-locale.h: Update.
2735         * gnulib/import/intprops.h: Update.
2736         * gnulib/import/inttypes.in.h: Update.
2737         * gnulib/import/isnan.c: Update.
2738         * gnulib/import/isnand-nolibm.h: Update.
2739         * gnulib/import/isnand.c: Update.
2740         * gnulib/import/isnanl-nolibm.h: Update.
2741         * gnulib/import/isnanl.c: Update.
2742         * gnulib/import/itold.c: Update.
2743         * gnulib/import/libc-config.h: Update.
2744         * gnulib/import/limits.in.h: Update.
2745         * gnulib/import/localcharset.c: Update.
2746         * gnulib/import/localcharset.h: Update.
2747         * gnulib/import/localtime-buffer.c: Update.
2748         * gnulib/import/localtime-buffer.h: Update.
2749         * gnulib/import/lstat.c: Update.
2750         * gnulib/import/m4/00gnulib.m4: Update.
2751         * gnulib/import/m4/__inline.m4: Update.
2752         * gnulib/import/m4/absolute-header.m4: Update.
2753         * gnulib/import/m4/alloca.m4: Update.
2754         * gnulib/import/m4/builtin-expect.m4: Update.
2755         * gnulib/import/m4/canonicalize.m4: Update.
2756         * gnulib/import/m4/chdir-long.m4: Update.
2757         * gnulib/import/m4/close.m4: Update.
2758         * gnulib/import/m4/closedir.m4: Update.
2759         * gnulib/import/m4/configmake.m4: Update.
2760         * gnulib/import/m4/d-ino.m4: Update.
2761         * gnulib/import/m4/d-type.m4: Update.
2762         * gnulib/import/m4/dirent_h.m4: Update.
2763         * gnulib/import/m4/dirfd.m4: Update.
2764         * gnulib/import/m4/dirname.m4: Update.
2765         * gnulib/import/m4/double-slash-root.m4: Update.
2766         * gnulib/import/m4/dup.m4: Update.
2767         * gnulib/import/m4/dup2.m4: Update.
2768         * gnulib/import/m4/eealloc.m4: Update.
2769         * gnulib/import/m4/environ.m4: Update.
2770         * gnulib/import/m4/errno_h.m4: Update.
2771         * gnulib/import/m4/error.m4: Update.
2772         * gnulib/import/m4/exponentd.m4: Update.
2773         * gnulib/import/m4/exponentl.m4: Update.
2774         * gnulib/import/m4/extensions.m4: Update.
2775         * gnulib/import/m4/extern-inline.m4: Update.
2776         * gnulib/import/m4/fchdir.m4: Update.
2777         * gnulib/import/m4/fcntl-o.m4: Update.
2778         * gnulib/import/m4/fcntl.m4: Update.
2779         * gnulib/import/m4/fcntl_h.m4: Update.
2780         * gnulib/import/m4/fdopendir.m4: Update.
2781         * gnulib/import/m4/filenamecat.m4: Update.
2782         * gnulib/import/m4/flexmember.m4: Update.
2783         * gnulib/import/m4/float_h.m4: Update.
2784         * gnulib/import/m4/fnmatch.m4: Update.
2785         * gnulib/import/m4/fnmatch_h.m4: Update.
2786         * gnulib/import/m4/fpieee.m4: Update.
2787         * gnulib/import/m4/frexp.m4: Update.
2788         * gnulib/import/m4/frexpl.m4: Update.
2789         * gnulib/import/m4/fstat.m4: Update.
2790         * gnulib/import/m4/fstatat.m4: Update.
2791         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2792         * gnulib/import/m4/getcwd-path-max.m4: Update.
2793         * gnulib/import/m4/getcwd.m4: Update.
2794         * gnulib/import/m4/getdtablesize.m4: Update.
2795         * gnulib/import/m4/getlogin.m4: Update.
2796         * gnulib/import/m4/getlogin_r.m4: Update.
2797         * gnulib/import/m4/getpagesize.m4: Update.
2798         * gnulib/import/m4/getprogname.m4: Update.
2799         * gnulib/import/m4/gettimeofday.m4: Update.
2800         * gnulib/import/m4/glibc21.m4: Update.
2801         * gnulib/import/m4/glob.m4: Update.
2802         * gnulib/import/m4/glob_h.m4: Update.
2803         * gnulib/import/m4/gnulib-cache.m4: Update.
2804         * gnulib/import/m4/gnulib-common.m4: Update.
2805         * gnulib/import/m4/gnulib-comp.m4: Update.
2806         * gnulib/import/m4/gnulib-tool.m4: Update.
2807         * gnulib/import/m4/hard-locale.m4: Update.
2808         * gnulib/import/m4/include_next.m4: Update.
2809         * gnulib/import/m4/inttypes-pri.m4: Update.
2810         * gnulib/import/m4/inttypes.m4: Update.
2811         * gnulib/import/m4/isnand.m4: Update.
2812         * gnulib/import/m4/isnanl.m4: Update.
2813         * gnulib/import/m4/largefile.m4: Update.
2814         * gnulib/import/m4/limits-h.m4: Update.
2815         * gnulib/import/m4/localcharset.m4: Update.
2816         * gnulib/import/m4/locale-fr.m4: Update.
2817         * gnulib/import/m4/locale-ja.m4: Update.
2818         * gnulib/import/m4/locale-zh.m4: Update.
2819         * gnulib/import/m4/localtime-buffer.m4: Update.
2820         * gnulib/import/m4/longlong.m4: Update.
2821         * gnulib/import/m4/lstat.m4: Update.
2822         * gnulib/import/m4/malloc.m4: Update.
2823         * gnulib/import/m4/malloca.m4: Update.
2824         * gnulib/import/m4/math_h.m4: Update.
2825         * gnulib/import/m4/mbrtowc.m4: Update.
2826         * gnulib/import/m4/mbsinit.m4: Update.
2827         * gnulib/import/m4/mbsrtowcs.m4: Update.
2828         * gnulib/import/m4/mbstate_t.m4: Update.
2829         * gnulib/import/m4/memchr.m4: Update.
2830         * gnulib/import/m4/memmem.m4: Update.
2831         * gnulib/import/m4/mempcpy.m4: Update.
2832         * gnulib/import/m4/memrchr.m4: Update.
2833         * gnulib/import/m4/mkdir.m4: Update.
2834         * gnulib/import/m4/mkstemp.m4: Update.
2835         * gnulib/import/m4/mmap-anon.m4: Update.
2836         * gnulib/import/m4/mode_t.m4: Update.
2837         * gnulib/import/m4/msvc-inval.m4: Update.
2838         * gnulib/import/m4/msvc-nothrow.m4: Update.
2839         * gnulib/import/m4/multiarch.m4: Update.
2840         * gnulib/import/m4/nocrash.m4: Update.
2841         * gnulib/import/m4/off_t.m4: Update.
2842         * gnulib/import/m4/onceonly.m4: Update.
2843         * gnulib/import/m4/open-cloexec.m4: Update.
2844         * gnulib/import/m4/open.m4: Update.
2845         * gnulib/import/m4/openat.m4: Update.
2846         * gnulib/import/m4/opendir.m4: Update.
2847         * gnulib/import/m4/pathmax.m4: Update.
2848         * gnulib/import/m4/rawmemchr.m4: Update.
2849         * gnulib/import/m4/readdir.m4: Update.
2850         * gnulib/import/m4/readlink.m4: Update.
2851         * gnulib/import/m4/realloc.m4: Update.
2852         * gnulib/import/m4/rename.m4: Update.
2853         * gnulib/import/m4/rewinddir.m4: Update.
2854         * gnulib/import/m4/rmdir.m4: Update.
2855         * gnulib/import/m4/save-cwd.m4: Update.
2856         * gnulib/import/m4/secure_getenv.m4: Update.
2857         * gnulib/import/m4/setenv.m4: Update.
2858         * gnulib/import/m4/signal_h.m4: Update.
2859         * gnulib/import/m4/ssize_t.m4: Update.
2860         * gnulib/import/m4/stat-time.m4: Update.
2861         * gnulib/import/m4/stat.m4: Update.
2862         * gnulib/import/m4/std-gnu11.m4: Update.
2863         * gnulib/import/m4/stdbool.m4: Update.
2864         * gnulib/import/m4/stddef_h.m4: Update.
2865         * gnulib/import/m4/stdint.m4: Update.
2866         * gnulib/import/m4/stdio_h.m4: Update.
2867         * gnulib/import/m4/stdlib_h.m4: Update.
2868         * gnulib/import/m4/strchrnul.m4: Update.
2869         * gnulib/import/m4/strdup.m4: Update.
2870         * gnulib/import/m4/strerror.m4: Update.
2871         * gnulib/import/m4/string_h.m4: Update.
2872         * gnulib/import/m4/strstr.m4: Update.
2873         * gnulib/import/m4/strtok_r.m4: Update.
2874         * gnulib/import/m4/sys_socket_h.m4: Update.
2875         * gnulib/import/m4/sys_stat_h.m4: Update.
2876         * gnulib/import/m4/sys_time_h.m4: Update.
2877         * gnulib/import/m4/sys_types_h.m4: Update.
2878         * gnulib/import/m4/tempname.m4: Update.
2879         * gnulib/import/m4/time_h.m4: Update.
2880         * gnulib/import/m4/unistd-safer.m4: Update.
2881         * gnulib/import/m4/unistd_h.m4: Update.
2882         * gnulib/import/m4/warn-on-use.m4: Update.
2883         * gnulib/import/m4/wchar_h.m4: Update.
2884         * gnulib/import/m4/wchar_t.m4: Update.
2885         * gnulib/import/m4/wctype_h.m4: Update.
2886         * gnulib/import/m4/wint_t.m4: Update.
2887         * gnulib/import/malloc.c: Update.
2888         * gnulib/import/malloc/scratch_buffer.h: Update.
2889         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2890         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2891         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2892         * gnulib/import/malloca.c: Update.
2893         * gnulib/import/malloca.h: Update.
2894         * gnulib/import/malloca.valgrind: Update.
2895         * gnulib/import/math.in.h: Update.
2896         * gnulib/import/mbrtowc.c: Update.
2897         * gnulib/import/mbsinit.c: Update.
2898         * gnulib/import/mbsrtowcs-impl.h: Update.
2899         * gnulib/import/mbsrtowcs-state.c: Update.
2900         * gnulib/import/mbsrtowcs.c: Update.
2901         * gnulib/import/memchr.c: Update.
2902         * gnulib/import/memmem.c: Update.
2903         * gnulib/import/mempcpy.c: Update.
2904         * gnulib/import/memrchr.c: Update.
2905         * gnulib/import/mkdir.c: Update.
2906         * gnulib/import/mkstemp.c: Update.
2907         * gnulib/import/msvc-inval.c: Update.
2908         * gnulib/import/msvc-inval.h: Update.
2909         * gnulib/import/msvc-nothrow.c: Update.
2910         * gnulib/import/msvc-nothrow.h: Update.
2911         * gnulib/import/open.c: Update.
2912         * gnulib/import/openat-die.c: Update.
2913         * gnulib/import/openat-priv.h: Update.
2914         * gnulib/import/openat-proc.c: Update.
2915         * gnulib/import/openat.c: Update.
2916         * gnulib/import/openat.h: Update.
2917         * gnulib/import/opendir.c: Update.
2918         * gnulib/import/pathmax.h: Update.
2919         * gnulib/import/pipe-safer.c: Update.
2920         * gnulib/import/rawmemchr.c: Update.
2921         * gnulib/import/readdir.c: Update.
2922         * gnulib/import/readlink.c: Update.
2923         * gnulib/import/realloc.c: Update.
2924         * gnulib/import/ref-add.sin: Update.
2925         * gnulib/import/ref-del.sin: Update.
2926         * gnulib/import/rename.c: Update.
2927         * gnulib/import/rewinddir.c: Update.
2928         * gnulib/import/rmdir.c: Update.
2929         * gnulib/import/same-inode.h: Update.
2930         * gnulib/import/save-cwd.c: Update.
2931         * gnulib/import/save-cwd.h: Update.
2932         * gnulib/import/scratch_buffer.h: Update.
2933         * gnulib/import/secure_getenv.c: Update.
2934         * gnulib/import/setenv.c: Update.
2935         * gnulib/import/signal.in.h: Update.
2936         * gnulib/import/stat-time.c: Update.
2937         * gnulib/import/stat-time.h: Update.
2938         * gnulib/import/stat-w32.c: Update.
2939         * gnulib/import/stat-w32.h: Update.
2940         * gnulib/import/stat.c: Update.
2941         * gnulib/import/stdbool.in.h: Update.
2942         * gnulib/import/stddef.in.h: Update.
2943         * gnulib/import/stdint.in.h: Update.
2944         * gnulib/import/stdio.in.h: Update.
2945         * gnulib/import/stdlib.in.h: Update.
2946         * gnulib/import/str-two-way.h: Update.
2947         * gnulib/import/strchrnul.c: Update.
2948         * gnulib/import/strdup.c: Update.
2949         * gnulib/import/streq.h: Update.
2950         * gnulib/import/strerror-override.c: Update.
2951         * gnulib/import/strerror-override.h: Update.
2952         * gnulib/import/strerror.c: Update.
2953         * gnulib/import/string.in.h: Update.
2954         * gnulib/import/stripslash.c: Update.
2955         * gnulib/import/strnlen1.c: Update.
2956         * gnulib/import/strnlen1.h: Update.
2957         * gnulib/import/strstr.c: Update.
2958         * gnulib/import/strtok_r.c: Update.
2959         * gnulib/import/sys_stat.in.h: Update.
2960         * gnulib/import/sys_time.in.h: Update.
2961         * gnulib/import/sys_types.in.h: Update.
2962         * gnulib/import/tempname.c: Update.
2963         * gnulib/import/tempname.h: Update.
2964         * gnulib/import/time.in.h: Update.
2965         * gnulib/import/unistd--.h: Update.
2966         * gnulib/import/unistd-safer.h: Update.
2967         * gnulib/import/unistd.in.h: Update.
2968         * gnulib/import/unsetenv.c: Update.
2969         * gnulib/import/verify.h: Update.
2970         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2971         * gnulib/import/wchar.in.h: Update.
2972         * gnulib/import/wctype.in.h: Update.
2973         * gnulib/import/xalloc-oversized.h: Update.
2974         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2975         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2976
2977 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2978
2979         * record-btrace.c (get_thread_current_frame): Remove
2980         old_inferior_ptid.
2981
2982 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2983
2984         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2985         with check_tag to 1 if and only if the type is tagged and the
2986         component being searched cannot been found in the current
2987         view. Otherwise, always call ada_to_fixed_type with
2988         check_tag to 0.
2989
2990 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2991
2992         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2993         declaration.
2994         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2995         * ada-varobj.c (ada_varobj_get_number_of_children,
2996         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2997
2998 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2999
3000         * ada-valprint.c (ada_value_print): Use type instead of
3001         enclosing type.
3002
3003 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3004
3005         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3006         an array of access to unconstrained array.
3007
3008 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3009
3010         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3011         (ada_check_typedef): Use it.
3012
3013 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3014
3015         * ada-varobj.c (ada_varobj_describe_struct_child)
3016         (ada_varobj_describe_child): Handle union case like struct one.
3017
3018 2018-09-10  Tom Tromey  <tom@tromey.com>
3019
3020         PR python/18380:
3021         * python/python.c (_initialize_python): Make example in "python"
3022         help work in Python 3.
3023
3024 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3025
3026         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3027         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3028         $(EXEEXT) to the script, as it is not a program.
3029
3030 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3031
3032         * python/py-prettyprint.c (pretty_print_one_value): Return
3033         gdbpy_ref<>.
3034         (print_string_repr): Adjust.
3035         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3036         * python/python-internal.h (apply_varobj_pretty_printer): Return
3037         gdbpy_ref<>.
3038         * varobj.c (varobj_value_get_print_value): Adjust.
3039
3040 2018-09-08  Tom Tromey  <tom@tromey.com>
3041
3042         PR python/16047:
3043         * python/py-prettyprint.c (pretty_print_one_value): Check for
3044         to_string method.
3045
3046 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3047
3048         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3049         replace_operator_with_call.
3050
3051 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3052
3053         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3054
3055 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3056
3057         * ada-typeprint.c (print_range): Print the bounds using TYPE
3058         rather than its TYPE_TARGET_TYPE.
3059
3060 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3061
3062         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3063         call to ada_to_fixed_value_create.
3064
3065 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3066
3067         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3068
3069 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3070
3071         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3072         by calls to error.
3073
3074 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3075
3076         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3077         Move update of loop variable "fi".
3078
3079 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3080
3081         * ada-lang.c (value_assign_to_component): In the case of
3082         big-endian targets, extract the bits of the given VAL
3083         using an src_offset of zero if container is not a scalar.
3084
3085 2018-09-06  Simon Ser  <contact@emersion.fr>
3086
3087         PR gdb/23105
3088         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3089         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3090         * fbsd-tdep.c (fbsd_make_note_desc): New.
3091         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3092         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3093         * target.h (enum target_object) Add FreeBSD-specific
3094         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3095
3096 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3097
3098         * compile/compile-c.h (generate_c_for_variable_locations):
3099         Change reference to pointer.
3100         * compile/compile-c-support.c (compile_program) <compute>:
3101         Likewise.
3102         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3103         (generate_c_for_for_one_variable): Likewise
3104         (generate_c_for_variable_locations): Likewise
3105         * compile/compile-c-types.c (compile_c_instance::convert_type):
3106         Likewise
3107         * compile/compile-cplus-symbols.c (convert_one_symbol):
3108         std::move the scope passed to enter_scope.
3109         * compile/compile-cplus-types.c
3110         (compile_cplus_instance::enter_scope): Make parameter
3111         rvalue-reference.
3112         (compile_cplus_instance::new_scope): Change reference to
3113         pointer.
3114         (compile_cplus_instance::convert_type): Likewise
3115         (compile_cplus_convert_typedef): std::move the scope passed to
3116         enter_scope.
3117         (compile_cplus_convert_struct_or_union): Likewise.
3118         (compile_cplus_convert_enum): Likewise.
3119         (compile_cplus_convert_namespace): Likewise.
3120         * compile/compile-cplus.h (compile_cplus_instance)
3121         <enter_scope>: Make parameter rvalue-reference.
3122         * compile/compile-internal.h (compile_instance)
3123         <get_cached_type>: Likewise
3124         * compile/compile-loc2c.c (push): Likewise
3125         (pushf): Likewise
3126         (unary): Likewise
3127         (binary): Likewise
3128         (print_label): Likewise
3129         (pushf_register_address): Likewise
3130         (pushf_register): Likewise
3131         (do_compile_dwarf_expr_to_c): Likewise
3132         (compile_dwarf_expr_to_c): Likewise
3133         (compile_dwarf_bounds_to_c): Likewise
3134         * compile/compile.c (compile_instance::get_cached_type):
3135         Likewise
3136         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3137         (compile_dwarf_bounds_to_c): Likewise
3138         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3139         (dwarf2_compile_property_to_c): Likewise
3140         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3141         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3142         Likewise
3143
3144 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3145
3146         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3147         * tui/tui-data.c (init_content_element): Don't initialize it.
3148
3149 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3150
3151         * tui/tui-data.h (struct tui_win_info)
3152         <detail::opaque>: Remove.
3153         * tui/tui-data.c (init_win_info): Remove assignment.
3154
3155 2018-09-05  Tom Tromey  <tom@tromey.com>
3156
3157         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3158         -Wformat-nonliteral.
3159         * target-float.c (host_float_ops<T>::to_string)
3160         (host_float_ops<T>::from_string): Use
3161         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3162         * configure: Rebuild.
3163
3164 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3165
3166         * printcmd.c (printf_c_string): Use
3167         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3168         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3169
3170 2018-09-05  Tom Tromey  <tom@tromey.com>
3171
3172         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3173
3174 2018-09-05  Tom de Vries  <tdevries@suse.de>
3175
3176         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3177         with resolve_abstract_p == true.
3178         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3179         defaulting to false. Propagate resolve_abstract_p to
3180         dwarf2_fetch_die_loc_sect_off.
3181         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3182         parameter, defaulting to false.
3183         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3184         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3185         parameter.
3186         * dwarf2read.h (struct die_info): Forward-declare.
3187         (die_info_ptr): New typedef.
3188         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3189
3190 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3191
3192         GDB 8.2 released.
3193
3194 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3195             Pedro Alves  <palves@redhat.com>
3196
3197         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3198         "aclocal-m4-deps.mk".  Include file here.
3199         $(srcdir)/aclocal.m4: Add "configure.ac".
3200         * gnulib/aclocal-m4-deps.mk: New file.
3201         * gnulib/update-gnulib.sh: Automatically update
3202         "aclocal-m4-deps.mk".
3203
3204 2018-09-04  Tom Tromey  <tom@tromey.com>
3205
3206         * configure: Rebuild.
3207         * configure.ac: Remove multi-ice code.
3208
3209 2018-09-04  Tom Tromey  <tom@tromey.com>
3210
3211         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3212         (ada-exp.o): Update.
3213
3214 2018-09-04  Tom Tromey  <tom@tromey.com>
3215
3216         * Makefile.in (printcmd.o, target-float.o): Remove.
3217         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3218
3219 2018-09-04  Tom Tromey  <tom@tromey.com>
3220
3221         * gnulib/Makefile.in: Remove obsolete comment.
3222         * Makefile.in: Remove obsolete comment.
3223
3224 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3225
3226         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3227         line with '+'.
3228
3229 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3230
3231         * riscv-tdep.c: Add 'prologue-value.h' include.
3232         (struct riscv_unwind_cache): New struct.
3233         (riscv_debug_unwinder): New global.
3234         (riscv_scan_prologue): Update arguments, capture register details
3235         from prologue scan.
3236         (riscv_skip_prologue): Reformat arguments line, move end of
3237         prologue calculation into riscv_scan_prologue.
3238         (riscv_frame_cache): Update return type, create
3239         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3240         details.
3241         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3242         (riscv_frame_prev_register): Use the trad_frame within the
3243         riscv_unwind_cache.
3244         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3245         flag.
3246
3247 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3248
3249         * trad-frame.h (trad_frame_set_realreg): Declare.
3250         (trad_frame_set_addr): Declare.
3251         * trad-frame.c (trad_frame_set_realreg): Define new function.
3252         (trad_frame_set_addr): Define new function.
3253         (trad_frame_set_reg_realreg): Use new function.
3254         (trad_frame_set_reg_addr): Use new function.
3255
3256 2018-09-01  Keith Seitz  <keiths@redhat.com>
3257
3258         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3259         pulongest instead of "%lld".
3260         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3261         ATTRIBUTE_UNUSED.
3262
3263 2018-08-31  Tom Tromey  <tom@tromey.com>
3264
3265         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3266         variant part type.
3267
3268 2018-08-31  Pedro Alves  <palves@redhat.com>
3269
3270         * gdbarch.h: Regenerate.
3271
3272 2018-08-31  Pedro Alves  <palves@redhat.com>
3273
3274         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3275         * target.h (Hardware watchpoint interfaces): Describe
3276         continuable/steppable/non-steppable watchpoints.
3277         * gdbarch.h, gdbarch.c: Regenerate.
3278
3279 2018-08-31  Pedro Alves  <palves@redhat.com>
3280
3281         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3282         Delete.
3283         * s390-linux-nat.c
3284         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3285         * target.h (target_ops::have_continuable_watchpoint): Delete.
3286         (target_have_continuable_watchpoint): Delete.
3287         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3288         * target-delegates.c: Regenerate.
3289
3290 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3291
3292         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3293         the files present in "gnulib/import/m4/".
3294
3295 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3296
3297         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3298         c.sw, c.swsp, and c.sdsp.
3299
3300 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3301
3302         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3303         (riscv_read_misa_reg): Don't cache value read into inferior data.
3304         (riscv_new_inferior_data): Delete.
3305         (riscv_inferior_data_cleanup): Delete.
3306         (riscv_inferior_data): Delete.
3307         (riscv_invalidate_inferior_data): Delete.
3308         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3309
3310 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3311
3312         * compile/compile-cplus-types.c
3313         (compile_cplus_instance::leave_scope): Take the address of scope
3314         object.
3315         (compile_cplus_instance::convert_qualified_base): Compare quals
3316         to 0.
3317
3318 2018-08-30  Keith Seitz  <keiths@redhat.com>
3319
3320         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3321         Use "%s" and host_address_to_string instead of "%p" in printf.
3322
3323 2018-08-29  Keith Seitz  <keiths@redhat.com>
3324
3325         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3326         and compile-cplus-types.c.
3327         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3328         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3329         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3330         Declare.
3331         * compile/compile-c-support.c: Include compile-cplus.h.
3332         (load_libcompile): Templatize.
3333         (get_compile_context): "New" function.
3334         (c_get_compile_context): Use get_compile_context.
3335         (cplus_get_compile_context): New function.
3336         (cplus_push_user_expression, cplus_pop_user_expression)
3337         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3338         (cplus_compute_program): Define new structs/functions.
3339         * compile/compile-cplus-symmbols.c: New file.
3340         * compile/compile-cplus-types.c: New file.
3341         * compile/compile-cplus.h: New file.
3342         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3343         Declare.
3344         * compile/compile-object-load.c (get_out_value_type): Use
3345         strncmp_iw when comparing symbol names.
3346         (compile_object_load): Add mst_bss and mst_data.
3347         * compile/compile.c (_initialize_compile): Remove
3348         -Wno-implicit-function-declaration from `compile_args'.
3349         * compile/gcc-cp-plugin.h: New file.
3350         * NEWS: Mention C++ compile support and new debug options.
3351
3352 2018-08-29  Keith Seitz  <keiths@redhat.com>
3353
3354         * linespec.c (collect_info::add_symbol): Make virtual.
3355         (struct symbol_searcher_collect_info): New struct.
3356         (symbol_searcher::find_all_symbols): New method.
3357         * symtab.h (class symbol_searcher): New class.
3358
3359 2018-08-29  Keith Seitz  <keiths@redhat.com>
3360
3361         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3362         Change to vector of block_symbol.  Update all users.
3363         (struct collect_info) <symbols>: Likewise.
3364         (collect_info::add_symbol): Take block_symbol as argument.
3365         Update all callers.
3366         (decode_compound_collector) <m_symbols>: Change type to vector
3367         of block_symbol.  Update all users.
3368         (decode_compound_collector::operator ()): Change parameter type
3369         to block_symbol.
3370         (find_method, find_function_symbols, find_linespec_symbols)
3371         (find_label_symbols_in_block, find_label_symbols): Change symbol
3372         vectors to block_symbol vectors.
3373         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3374         block_symbol.
3375
3376 2018-08-29  Keith Seitz  <keiths@redhat.com>
3377
3378         * linespec.c (symbolp): Remove typedef and VEC definitions.
3379         (bound_minimal_symbol_d): Likewise.
3380
3381 2018-08-29  Keith Seitz  <keiths@redhat.com>
3382
3383         * linespec.c (decode_compound_collector::decode_compound_collector):
3384         Remove initialization for `m_symtabs'.
3385         (decode_compound_collector::release_symbols): Change return type
3386         to std::vector.  Update all callers.
3387         (class decode_compound_collector) <m_symbols>: Change type to
3388         std::vector.
3389         (lookup_prefix_sym): Change return type to std::vector.  Update all
3390         callers.
3391         (compare_symbols): Remove.
3392         (std_compare_symbols): Rename to `compare_symbols'.
3393         (find_method): Change `sym_classes' parameter to std::vector.
3394         Update all callers.  Use std::sort to sort sym_classes.
3395         (find_linespec_symbols): Remove cleanup.
3396
3397 2018-08-29  Keith Seitz  <keiths@redhat.com>
3398
3399         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3400         std::vector.  Update all users.
3401         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3402         (struct collect_info) <minimal_symbols>: Likewise.
3403         (compare_msymbols): Return bool.  Change parameters to const
3404         bound_minimal_symbol references.
3405         (find_method, find_function_symbols, find_linespec_symbols): Change
3406         `minsyms' parameter to std::vector.  Update all callers.
3407
3408 2018-08-29  Keith Seitz  <keiths@redhat.com>
3409
3410         * linespec.c (struct linespec) <label_symbols>: Change type to
3411         std::vector.  Update all users.
3412         (find_label_symbols_in_block): Change `result' parameter to
3413         std::vector.  Update all callers.
3414         (find_label_symbols): Return std::vector.  Update all callers.
3415
3416 2018-08-29  Keith Seitz  <keiths@redhat.com>
3417
3418         * linespec.c (struct linespec) <function_symbols>: Change type to
3419         std::vector.  Update all users.
3420         (struct collect_info) <function_symbols>: Likewise.
3421         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3422         (std_compare_symbols): New function.
3423         (find_method, find_function_symbols, find_linespec_symbols)
3424         (find_label_symbols_in_block): Change `symbols' parameter to
3425         std::vector.  Update all callers.
3426         (find_label_symbols): Likewise for `function_symbols' and
3427         `label_funcs_ret'.
3428
3429 2018-08-29  Keith Seitz  <keiths@redhat.com>
3430
3431         * linespec.c (symtab_vector_up): Define.
3432         (struct linespec) <file_symtabs>: Change type to std::vector *.
3433         Update all uses.
3434         (struct collect_info) <file_symtabs>: Likewise.
3435         (collect_symtabs_from_filename): Return symtab_vector_up.
3436         Update all callers.
3437         (decode_objc): Remove cleanup.
3438         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3439         (symtab_collector::release_symtabs): Return symtab_vector_up.
3440         Update all callers.
3441         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3442         Update all users.
3443         (collect_symtabs_from_filename, symtabs_from_filename): Return
3444         symtab_vector_up.  Update all callers.
3445
3446 2018-08-29  Tom Tromey  <tom@tromey.com>
3447
3448         * csky-tdep.c (csky_analyze_prologue): Use
3449         core_addr_to_string_nz.
3450
3451 2018-08-29  Tom Tromey  <tom@tromey.com>
3452
3453         * windows-nat.c (struct xlate_exception) <them>: Change type to
3454         DWORD.
3455         (xlate): Fix formatting.  Remove last entry.
3456         (struct xlate_exception, xlate): Comment out.
3457         (windows_nat_target::resume): Use ranged for.
3458
3459 2018-08-29  Jim Wilson  <jimw@sifive.com>
3460
3461         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3462         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3463         of NT_PRFPREG.
3464         (riscv_linux_nat_target::store_registers): Likewise.
3465
3466 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3467
3468         PR gdb/23555
3469         PR gdb/23558
3470         * gnulib/aclocal.m4: Regenerate.
3471         * gnulib/config.in: Regenerate.
3472         * gnulib/configure: Regenerate.
3473         * gnulib/import/Makefile.am: Update.
3474         * gnulib/import/Makefile.in: Update.
3475         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3476         * gnulib/import/_Noreturn.h: ... this.
3477         * gnulib/import/alloca.in.h: Update.
3478         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3479         * gnulib/import/arg-nonnull.h: ... this.
3480         * gnulib/import/assure.h: Update.
3481         * gnulib/import/at-func.c: Update.
3482         * gnulib/import/basename-lgpl.c: Update.
3483         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3484         * gnulib/import/c++defs.h: ... this.
3485         * gnulib/import/canonicalize-lgpl.c: Update.
3486         * gnulib/import/cdefs.h: Update.
3487         * gnulib/import/chdir-long.c: Update.
3488         * gnulib/import/chdir-long.h: Update.
3489         * gnulib/import/cloexec.c: Update.
3490         * gnulib/import/cloexec.h: Update.
3491         * gnulib/import/close.c: Update.
3492         * gnulib/import/closedir.c: Update.
3493         * gnulib/import/config.charset: Update.
3494         * gnulib/import/dirent-private.h: Update.
3495         * gnulib/import/dirent.in.h: Update.
3496         * gnulib/import/dirfd.c: Update.
3497         * gnulib/import/dirname-lgpl.c: Update.
3498         * gnulib/import/dirname.h: Update.
3499         * gnulib/import/dosname.h: Update.
3500         * gnulib/import/dup-safer-flag.c: Update.
3501         * gnulib/import/dup-safer.c: Update.
3502         * gnulib/import/dup.c: Update.
3503         * gnulib/import/dup2.c: Update.
3504         * gnulib/import/errno.in.h: Update.
3505         * gnulib/import/error.c: Update.
3506         * gnulib/import/error.h: Update.
3507         * gnulib/import/exitfail.c: Update.
3508         * gnulib/import/exitfail.h: Update.
3509         * gnulib/import/extra/update-copyright: Update.
3510         * gnulib/import/fchdir.c: Update.
3511         * gnulib/import/fcntl.c: Update.
3512         * gnulib/import/fcntl.in.h: Update.
3513         * gnulib/import/fd-hook.c: Update.
3514         * gnulib/import/fd-hook.h: Update.
3515         * gnulib/import/fd-safer-flag.c: Update.
3516         * gnulib/import/fd-safer.c: Update.
3517         * gnulib/import/fdopendir.c: Update.
3518         * gnulib/import/filename.h: Update.
3519         * gnulib/import/filenamecat-lgpl.c: Update.
3520         * gnulib/import/filenamecat.h: Update.
3521         * gnulib/import/flexmember.h: Update.
3522         * gnulib/import/float+.h: Update.
3523         * gnulib/import/float.c: Update.
3524         * gnulib/import/float.in.h: Update.
3525         * gnulib/import/fnmatch.c: Update.
3526         * gnulib/import/fnmatch.in.h: Update.
3527         * gnulib/import/fnmatch_loop.c: Update.
3528         * gnulib/import/fpucw.h: Update.
3529         * gnulib/import/frexp.c: Update.
3530         * gnulib/import/frexpl.c: Update.
3531         * gnulib/import/fstat.c: Update.
3532         * gnulib/import/fstatat.c: Update.
3533         * gnulib/import/getcwd-lgpl.c: Update.
3534         * gnulib/import/getcwd.c: Update.
3535         * gnulib/import/getdtablesize.c: Update.
3536         * gnulib/import/getlogin_r.c: Update.
3537         * gnulib/import/getprogname.c: Update.
3538         * gnulib/import/getprogname.h: Update.
3539         * gnulib/import/gettext.h: Update.
3540         * gnulib/import/gettimeofday.c: Update.
3541         * gnulib/import/glob-libc.h: Update.
3542         * gnulib/import/glob.c: Update.
3543         * gnulib/import/glob.in.h: Update.
3544         * gnulib/import/glob_internal.h: Update.
3545         * gnulib/import/glob_pattern_p.c: Update.
3546         * gnulib/import/globfree.c: Update.
3547         * gnulib/import/hard-locale.c: Update.
3548         * gnulib/import/hard-locale.h: Update.
3549         * gnulib/import/intprops.h: Update.
3550         * gnulib/import/inttypes.in.h: Update.
3551         * gnulib/import/isnan.c: Update.
3552         * gnulib/import/isnand-nolibm.h: Update.
3553         * gnulib/import/isnand.c: Update.
3554         * gnulib/import/isnanl-nolibm.h: Update.
3555         * gnulib/import/isnanl.c: Update.
3556         * gnulib/import/itold.c: Update.
3557         * gnulib/import/libc-config.h: Update.
3558         * gnulib/import/limits.in.h: Update.
3559         * gnulib/import/localcharset.c: Update.
3560         * gnulib/import/localcharset.h: Update.
3561         * gnulib/import/localtime-buffer.c: Update.
3562         * gnulib/import/localtime-buffer.h: Update.
3563         * gnulib/import/lstat.c: Update.
3564         * gnulib/import/m4/00gnulib.m4: Update.
3565         * gnulib/import/m4/__inline.m4: Update.
3566         * gnulib/import/m4/absolute-header.m4: Update.
3567         * gnulib/import/m4/alloca.m4: Update.
3568         * gnulib/import/m4/builtin-expect.m4: Update.
3569         * gnulib/import/m4/canonicalize.m4: Update.
3570         * gnulib/import/m4/chdir-long.m4: Update.
3571         * gnulib/import/m4/close.m4: Update.
3572         * gnulib/import/m4/closedir.m4: Update.
3573         * gnulib/import/m4/configmake.m4: Update.
3574         * gnulib/import/m4/d-ino.m4: Update.
3575         * gnulib/import/m4/d-type.m4: Update.
3576         * gnulib/import/m4/dirent_h.m4: Update.
3577         * gnulib/import/m4/dirfd.m4: Update.
3578         * gnulib/import/m4/dirname.m4: Update.
3579         * gnulib/import/m4/double-slash-root.m4: Update.
3580         * gnulib/import/m4/dup.m4: Update.
3581         * gnulib/import/m4/dup2.m4: Update.
3582         * gnulib/import/m4/eealloc.m4: Update.
3583         * gnulib/import/m4/environ.m4: Update.
3584         * gnulib/import/m4/errno_h.m4: Update.
3585         * gnulib/import/m4/error.m4: Update.
3586         * gnulib/import/m4/exponentd.m4: Update.
3587         * gnulib/import/m4/exponentl.m4: Update.
3588         * gnulib/import/m4/extensions.m4: Update.
3589         * gnulib/import/m4/extern-inline.m4: Update.
3590         * gnulib/import/m4/fchdir.m4: Update.
3591         * gnulib/import/m4/fcntl-o.m4: Update.
3592         * gnulib/import/m4/fcntl.m4: Update.
3593         * gnulib/import/m4/fcntl_h.m4: Update.
3594         * gnulib/import/m4/fdopendir.m4: Update.
3595         * gnulib/import/m4/filenamecat.m4: Update.
3596         * gnulib/import/m4/flexmember.m4: Update.
3597         * gnulib/import/m4/float_h.m4: Update.
3598         * gnulib/import/m4/fnmatch.m4: Update.
3599         * gnulib/import/m4/fnmatch_h.m4: Update.
3600         * gnulib/import/m4/fpieee.m4: Update.
3601         * gnulib/import/m4/frexp.m4: Update.
3602         * gnulib/import/m4/frexpl.m4: Update.
3603         * gnulib/import/m4/fstat.m4: Update.
3604         * gnulib/import/m4/fstatat.m4: Update.
3605         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3606         * gnulib/import/m4/getcwd-path-max.m4: Update.
3607         * gnulib/import/m4/getcwd.m4: Update.
3608         * gnulib/import/m4/getdtablesize.m4: Update.
3609         * gnulib/import/m4/getlogin.m4: Update.
3610         * gnulib/import/m4/getlogin_r.m4: Update.
3611         * gnulib/import/m4/getpagesize.m4: Update.
3612         * gnulib/import/m4/getprogname.m4: Update.
3613         * gnulib/import/m4/gettimeofday.m4: Update.
3614         * gnulib/import/m4/glibc21.m4: Update.
3615         * gnulib/import/m4/glob.m4: Update.
3616         * gnulib/import/m4/glob_h.m4: Update.
3617         * gnulib/import/m4/gnulib-cache.m4: Update.
3618         * gnulib/import/m4/gnulib-common.m4: Update.
3619         * gnulib/import/m4/gnulib-comp.m4: Update.
3620         * gnulib/import/m4/gnulib-tool.m4: Update.
3621         * gnulib/import/m4/hard-locale.m4: Update.
3622         * gnulib/import/m4/include_next.m4: Update.
3623         * gnulib/import/m4/inttypes-pri.m4: Update.
3624         * gnulib/import/m4/inttypes.m4: Update.
3625         * gnulib/import/m4/isnand.m4: Update.
3626         * gnulib/import/m4/isnanl.m4: Update.
3627         * gnulib/import/m4/largefile.m4: Update.
3628         * gnulib/import/m4/limits-h.m4: Update.
3629         * gnulib/import/m4/localcharset.m4: Update.
3630         * gnulib/import/m4/locale-fr.m4: Update.
3631         * gnulib/import/m4/locale-ja.m4: Update.
3632         * gnulib/import/m4/locale-zh.m4: Update.
3633         * gnulib/import/m4/localtime-buffer.m4: Update.
3634         * gnulib/import/m4/longlong.m4: Update.
3635         * gnulib/import/m4/lstat.m4: Update.
3636         * gnulib/import/m4/malloc.m4: Update.
3637         * gnulib/import/m4/malloca.m4: Update.
3638         * gnulib/import/m4/math_h.m4: Update.
3639         * gnulib/import/m4/mbrtowc.m4: Update.
3640         * gnulib/import/m4/mbsinit.m4: Update.
3641         * gnulib/import/m4/mbsrtowcs.m4: Update.
3642         * gnulib/import/m4/mbstate_t.m4: Update.
3643         * gnulib/import/m4/memchr.m4: Update.
3644         * gnulib/import/m4/memmem.m4: Update.
3645         * gnulib/import/m4/mempcpy.m4: Update.
3646         * gnulib/import/m4/memrchr.m4: Update.
3647         * gnulib/import/m4/mkdir.m4: Update.
3648         * gnulib/import/m4/mkstemp.m4: Update.
3649         * gnulib/import/m4/mmap-anon.m4: Update.
3650         * gnulib/import/m4/mode_t.m4: Update.
3651         * gnulib/import/m4/msvc-inval.m4: Update.
3652         * gnulib/import/m4/msvc-nothrow.m4: Update.
3653         * gnulib/import/m4/multiarch.m4: Update.
3654         * gnulib/import/m4/nocrash.m4: Update.
3655         * gnulib/import/m4/off_t.m4: Update.
3656         * gnulib/import/m4/onceonly.m4: Update.
3657         * gnulib/import/m4/open-cloexec.m4: Update.
3658         * gnulib/import/m4/open.m4: Update.
3659         * gnulib/import/m4/openat.m4: Update.
3660         * gnulib/import/m4/opendir.m4: Update.
3661         * gnulib/import/m4/pathmax.m4: Update.
3662         * gnulib/import/m4/rawmemchr.m4: Update.
3663         * gnulib/import/m4/readdir.m4: Update.
3664         * gnulib/import/m4/readlink.m4: Update.
3665         * gnulib/import/m4/realloc.m4: Update.
3666         * gnulib/import/m4/rename.m4: Update.
3667         * gnulib/import/m4/rewinddir.m4: Update.
3668         * gnulib/import/m4/rmdir.m4: Update.
3669         * gnulib/import/m4/save-cwd.m4: Update.
3670         * gnulib/import/m4/secure_getenv.m4: Update.
3671         * gnulib/import/m4/setenv.m4: Update.
3672         * gnulib/import/m4/signal_h.m4: Update.
3673         * gnulib/import/m4/ssize_t.m4: Update.
3674         * gnulib/import/m4/stat-time.m4: Update.
3675         * gnulib/import/m4/stat.m4: Update.
3676         * gnulib/import/m4/std-gnu11.m4: Update.
3677         * gnulib/import/m4/stdbool.m4: Update.
3678         * gnulib/import/m4/stddef_h.m4: Update.
3679         * gnulib/import/m4/stdint.m4: Update.
3680         * gnulib/import/m4/stdio_h.m4: Update.
3681         * gnulib/import/m4/stdlib_h.m4: Update.
3682         * gnulib/import/m4/strchrnul.m4: Update.
3683         * gnulib/import/m4/strdup.m4: Update.
3684         * gnulib/import/m4/strerror.m4: Update.
3685         * gnulib/import/m4/string_h.m4: Update.
3686         * gnulib/import/m4/strstr.m4: Update.
3687         * gnulib/import/m4/strtok_r.m4: Update.
3688         * gnulib/import/m4/sys_socket_h.m4: Update.
3689         * gnulib/import/m4/sys_stat_h.m4: Update.
3690         * gnulib/import/m4/sys_time_h.m4: Update.
3691         * gnulib/import/m4/sys_types_h.m4: Update.
3692         * gnulib/import/m4/tempname.m4: Update.
3693         * gnulib/import/m4/time_h.m4: Update.
3694         * gnulib/import/m4/unistd-safer.m4: Update.
3695         * gnulib/import/m4/unistd_h.m4: Update.
3696         * gnulib/import/m4/warn-on-use.m4: Update.
3697         * gnulib/import/m4/wchar_h.m4: Update.
3698         * gnulib/import/m4/wchar_t.m4: Update.
3699         * gnulib/import/m4/wctype_h.m4: Update.
3700         * gnulib/import/m4/wint_t.m4: Update.
3701         * gnulib/import/malloc.c: Update.
3702         * gnulib/import/malloc/scratch_buffer.h: Update.
3703         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3704         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3705         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3706         * gnulib/import/malloca.c: Update.
3707         * gnulib/import/malloca.h: Update.
3708         * gnulib/import/malloca.valgrind: Update.
3709         * gnulib/import/math.in.h: Update.
3710         * gnulib/import/mbrtowc.c: Update.
3711         * gnulib/import/mbsinit.c: Update.
3712         * gnulib/import/mbsrtowcs-impl.h: Update.
3713         * gnulib/import/mbsrtowcs-state.c: Update.
3714         * gnulib/import/mbsrtowcs.c: Update.
3715         * gnulib/import/memchr.c: Update.
3716         * gnulib/import/memmem.c: Update.
3717         * gnulib/import/mempcpy.c: Update.
3718         * gnulib/import/memrchr.c: Update.
3719         * gnulib/import/mkdir.c: Update.
3720         * gnulib/import/mkstemp.c: Update.
3721         * gnulib/import/msvc-inval.c: Update.
3722         * gnulib/import/msvc-inval.h: Update.
3723         * gnulib/import/msvc-nothrow.c: Update.
3724         * gnulib/import/msvc-nothrow.h: Update.
3725         * gnulib/import/open.c: Update.
3726         * gnulib/import/openat-die.c: Update.
3727         * gnulib/import/openat-priv.h: Update.
3728         * gnulib/import/openat-proc.c: Update.
3729         * gnulib/import/openat.c: Update.
3730         * gnulib/import/openat.h: Update.
3731         * gnulib/import/opendir.c: Update.
3732         * gnulib/import/pathmax.h: Update.
3733         * gnulib/import/pipe-safer.c: Update.
3734         * gnulib/import/rawmemchr.c: Update.
3735         * gnulib/import/readdir.c: Update.
3736         * gnulib/import/readlink.c: Update.
3737         * gnulib/import/realloc.c: Update.
3738         * gnulib/import/ref-add.sin: Update.
3739         * gnulib/import/ref-del.sin: Update.
3740         * gnulib/import/rename.c: Update.
3741         * gnulib/import/rewinddir.c: Update.
3742         * gnulib/import/rmdir.c: Update.
3743         * gnulib/import/same-inode.h: Update.
3744         * gnulib/import/save-cwd.c: Update.
3745         * gnulib/import/save-cwd.h: Update.
3746         * gnulib/import/scratch_buffer.h: Update.
3747         * gnulib/import/secure_getenv.c: Update.
3748         * gnulib/import/setenv.c: Update.
3749         * gnulib/import/signal.in.h: Update.
3750         * gnulib/import/stat-time.c: Update.
3751         * gnulib/import/stat-time.h: Update.
3752         * gnulib/import/stat-w32.c: Update.
3753         * gnulib/import/stat-w32.h: Update.
3754         * gnulib/import/stat.c: Update.
3755         * gnulib/import/stdbool.in.h: Update.
3756         * gnulib/import/stddef.in.h: Update.
3757         * gnulib/import/stdint.in.h: Update.
3758         * gnulib/import/stdio.in.h: Update.
3759         * gnulib/import/stdlib.in.h: Update.
3760         * gnulib/import/str-two-way.h: Update.
3761         * gnulib/import/strchrnul.c: Update.
3762         * gnulib/import/strdup.c: Update.
3763         * gnulib/import/streq.h: Update.
3764         * gnulib/import/strerror-override.c: Update.
3765         * gnulib/import/strerror-override.h: Update.
3766         * gnulib/import/strerror.c: Update.
3767         * gnulib/import/string.in.h: Update.
3768         * gnulib/import/stripslash.c: Update.
3769         * gnulib/import/strnlen1.c: Update.
3770         * gnulib/import/strnlen1.h: Update.
3771         * gnulib/import/strstr.c: Update.
3772         * gnulib/import/strtok_r.c: Update.
3773         * gnulib/import/sys_stat.in.h: Update.
3774         * gnulib/import/sys_time.in.h: Update.
3775         * gnulib/import/sys_types.in.h: Update.
3776         * gnulib/import/tempname.c: Update.
3777         * gnulib/import/tempname.h: Update.
3778         * gnulib/import/time.in.h: Update.
3779         * gnulib/import/unistd--.h: Update.
3780         * gnulib/import/unistd-safer.h: Update.
3781         * gnulib/import/unistd.in.h: Update.
3782         * gnulib/import/unsetenv.c: Update.
3783         * gnulib/import/verify.h: Update.
3784         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3785         * gnulib/import/wchar.in.h: Update.
3786         * gnulib/import/wctype.in.h: Update.
3787         * gnulib/import/xalloc-oversized.h: Update.
3788         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3789         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3790
3791 2018-08-16  Gary Benson <gbenson@redhat.com>
3792
3793         PR gdb/13000:
3794         * gdb/main.c (captured_main_1): Exit with nonzero status
3795         in batch mode if the last command to be executed failed.
3796         * NEWS: Mention the above.
3797
3798 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3799
3800         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3801         end of warning message.
3802
3803 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3804
3805         PR gdb/22943:
3806         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3807         (aarch64_extract_return_value): Use
3808         aapcs_is_vfp_call_or_return_candidate.
3809         (aarch64_return_in_memory): Likewise.
3810         (aarch64_store_return_value): Likewise.
3811
3812 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3813
3814         * aarch64-tdep.c
3815         (aapcs_is_vfp_call_or_return_candidate): Make static
3816         (pass_in_v_or_stack): Remove function.
3817         (pass_in_v_vfp_candidate): New function.
3818         (aarch64_push_dummy_call): Check for float register candidates.
3819
3820 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3821
3822         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3823         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3824         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3825
3826 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3827
3828         PR build/23399
3829         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3830         (struct ipa_sym_addresses): Rename to...
3831         (struct ipa_sym_addresses_common): ... this.
3832         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3833
3834 2018-08-28  Tom Tromey  <tom@tromey.com>
3835
3836         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3837         (token_fifo): Now a std::vector.
3838         (yylex, c_parse): Update.
3839         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3840         (token_fifo): Now a std::vector.
3841         (yylex, d_parse): Update.
3842         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3843         (token_fifo): Now a std::vector.
3844         (yylex, go_parse): Update.
3845
3846 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3847
3848         * parser-defs.h (struct type_stack) <elements>: Change type to
3849         std::vector<union type_stack_elt>.
3850         <depth, size>: Remove.
3851         * parse.c (parse_exp_in_context_1): Adjust.
3852         (type_stack_reserve): Remove.
3853         (check_type_stack_depth): Remove.
3854         (insert_into_type_stack): Adjust to std::vector.
3855         (insert_type): Likewise.
3856         (push_type): Likewise.
3857         (push_type_int): Likewise.
3858         (insert_type_address_space): Likewise.
3859         (pop_type): Likewise.
3860         (pop_type_int): Likewise.
3861         (pop_typelist): Likewise.
3862         (pop_type_stack): Likewise.
3863         (append_type_stack): Likewise.
3864         (push_type_stack): Likewise.
3865         (get_type_stack): Likewise.
3866         (type_stack_cleanup): Likewise.
3867         (push_typelist): Likewise.
3868         (follow_types): Likewise.
3869         (_initialize_parse): Likewise.
3870
3871 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3872
3873         * NEWS: Mention csky target.
3874
3875 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3876             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3877             Don Breazeal  <donb@codesourcery.com>
3878
3879         * csky-linux-tdep.c: New file.
3880         * csky-tdep.c: Likewise.
3881         * csky-tdep.h: Likewise.
3882         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3883         csky-tdep.o.
3884         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3885         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3886         * configure.tgt: Add csky support.
3887
3888 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3889
3890         * python/py-framefilter.c (py_print_frame): Print frame architecture
3891         when printing on an MI output.
3892
3893 2018-08-27  Tom Tromey  <tom@tromey.com>
3894
3895         PR build/23087:
3896         * configure: Rebuild.
3897         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3898
3899 2018-08-27  Tom Tromey  <tom@tromey.com>
3900
3901         * aarch64-linux-tdep.c
3902         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3903         casts to int.
3904
3905 2018-08-27  Tom Tromey  <tom@tromey.com>
3906
3907         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3908         unsigned.
3909         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3910         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3911         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3912         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3913         unsigned.
3914
3915 2018-08-27  Tom Tromey  <tom@tromey.com>
3916
3917         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3918         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3919
3920 2018-08-27  Tom Tromey  <tom@tromey.com>
3921
3922         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3923         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3924         ULONGEST_MAX.
3925         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3926         ULONGEST_MAX.
3927         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3928         ULONGEST_MAX.
3929         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3930         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3931         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3932         ULONGEST_MAX.
3933         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3934         (ppc64_linux_sigaction_tramp_frame)
3935         (ppc32_linux_sighandler_tramp_frame)
3936         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3937         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3938         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3939         * mn10300-linux-tdep.c (am33_linux_sigframe)
3940         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3941         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3942         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3943         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3944         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3945         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3946         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3947         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3948         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3949         * microblaze-linux-tdep.c
3950         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3951         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3952         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3953         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3954         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3955         * common/common-types.h (ULONGEST_MAX): New define.
3956         (CORE_ADDR_MAX): Fix formatting.
3957         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3958         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3959         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3960         (arm_linux_rt_sigreturn_tramp_frame)
3961         (arm_eabi_linux_sigreturn_tramp_frame)
3962         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3963         (thumb2_eabi_linux_sigreturn_tramp_frame)
3964         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3965         (arm_linux_restart_syscall_tramp_frame)
3966         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3967         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3968         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3969         ULONGEST_MAX.
3970         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3971
3972 2018-08-27  Tom Tromey  <tom@tromey.com>
3973
3974         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3975         CORE_ADDR_MAX.
3976         * mips-tdep.c (mips_deal_with_atomic_sequence)
3977         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3978         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3979         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3980         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3981         CORE_ADDR_MAX.
3982         * aarch64-tdep.c (aarch64_software_single_step): Use
3983         CORE_ADDR_MAX.
3984
3985 2018-08-27  Tom Tromey  <tom@tromey.com>
3986
3987         * linespec.c (complete_linespec_component): Add cast to "char".
3988         * completer.c (completion_tracker::build_completion_result): Add
3989         cast to "char".
3990
3991 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3992
3993         * solist.h (struct solist, struct target_so_ops): Fix
3994         indentation.
3995
3996 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3997
3998         * ada-tasks.c (ada_task_info_s): Remove typedef.
3999         (DEF_VEC_O(ada_task_info_s)): Remove.
4000         (struct ada_tasks_inferior_data): Initialize fields.
4001         <task_list>: Make an std::vector.
4002         (get_ada_tasks_inferior_data): Allocate with new.
4003         (ada_get_task_number): Adjust.
4004         (get_task_number_from_id): Likewise.
4005         (valid_task_id): Likewise.
4006         (ada_get_task_info_from_ptid): Likewise.
4007         (iterate_over_live_ada_tasks): Likewise.
4008         (add_ada_task): Likewise.
4009         (read_known_tasks): Likewise.
4010         (ada_build_task_list): Likewise.
4011         (print_ada_task_info): Likewise.
4012         (info_task): Likewise.
4013         (task_command_1): Likewise.
4014
4015 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4016
4017         * ada-lang.c (add_angle_brackets): Return std::string.
4018
4019 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4020
4021         * python/py-threadevent.c (py_get_event_thread): Initialize
4022         pythread.
4023
4024 2018-08-24  Pedro Alves  <palves@redhat.com>
4025
4026         * python/py-bpevent.c (create_breakpoint_event_object): Use
4027         copy-initialization.
4028         * python/py-continueevent.c (emit_continue_event): Use
4029         copy-initialization.
4030         * python/py-exitedevent.c (create_exited_event_object): Return a
4031         gdbpy_ref<>.
4032         (emit_exited_event): Use copy-initialization.
4033         * python/py-inferior.c (python_new_inferior)
4034         (python_inferior_deleted, add_thread_object): Use
4035         copy-initialization.
4036         * python/py-infevents.c (create_inferior_call_event_object)
4037         (create_register_changed_event_object)
4038         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4039         (emit_inferior_call_event, emit_memory_changed_event)
4040         (emit_register_changed_event): Use copy-initialization.
4041         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4042         Return a gdbpy_ref<>.
4043         (emit_new_objfile_event): Use copy-initialization.
4044         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4045         (emit_clear_objfiles_event): Use copy-initialization.
4046         * python/py-signalevent.c (create_signal_event_object): Use
4047         copy-initialization.
4048         * python/py-threadevent.c (create_thread_event_object): Use
4049         copy-initialization.
4050
4051 2018-08-24  Pedro Alves  <palves@redhat.com>
4052             Simon Marchi  <simon.marchi@ericsson.com>
4053
4054         PR gdb/23379
4055         * python/py-continueevent.c: Include "gdbthread.h".
4056         (create_continue_event_object): Add intro comment.  Add 'ptid'
4057         parameter.  Use it to find thread to pass to
4058         create_thread_event_object.
4059         (emit_continue_event): Pass PTID down to
4060         create_continue_event_object.
4061         * python/py-event.h (py_get_event_thread): Declare.
4062         (create_thread_event_object): Remove default from 'thread'
4063         parameter.
4064         * python/py-stopevent.c (create_stop_event_object): Use
4065         py_get_event_thread.
4066         * python/py-threadevent.c (get_event_thread): Rename to ...
4067         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4068         and use it to find the thread.
4069         (create_thread_event_object): Assert that THREAD isn't null.
4070         Don't find the event thread here.
4071
4072 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4073
4074         * block.h (blockrange, blockranges): New struct declarations.
4075         (struct block): Add new field named `ranges'.
4076         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4077         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4078         macros for accessing ranges in struct block.
4079         (make_blockranges): New declaration.
4080         block.c (make_blockranges): New function.
4081         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4082         for block.
4083         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4084         * blockframe.c (cache_pc_function_block): New static global.
4085         (clear_pc_function_cache): Clear cache_pc_function_block.
4086         (find_pc_partial_function): Move comment to symtab.h.  Add
4087         support for non-contiguous blocks.
4088         * cli/cli-cmds.c (block.h): Include.
4089         (print_disassembly): Handle printing of non-contiguous blocks.
4090         (disassemble_current_function): Likewise.
4091         (disassemble_command): Likewise.
4092
4093         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4094         BLOCK_START.
4095         * blockframe.c (get_pc_function_start): Likewise.
4096         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4097         (gcc_symbol_address): Likewise.
4098         * compile/compile-object-run.c (compile_object_run): Likewise.
4099         * compile/compile.c (get_expr_block_and_pc): Likewise.
4100         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4101         (func_addr_to_tail_call_list): Likewise.
4102         * findvar.c (default_read_var_value): Likewise.
4103         * inline-frame.c (inline_frame_this_id): Likewise.
4104         (skip-inline_frames): Likewise.
4105         * infcmd.c (until_next_command): Likewise.
4106         * linespec.c (convert_linespec_to_sals): Likewise.
4107         * parse.c (parse_exp_in_context_1): Likewise.
4108         * printcmd.c (build_address_symbolic): likewise.
4109         (info_address_command): Likewise.
4110         symtab.c (find_function_start_sal): Likewise.
4111         (skip_prologue_sal): Likewise.
4112         (find_function_alias_target): Likewise.
4113         (find_gnu_ifunc): Likewise.
4114         * stack.c (find_frame_funname): Likewise.
4115         * symtab.c (fixup_symbol_section): Likewise.
4116         (find_function_start_sal): Likewise.
4117         (skip_prologue_sal): Likewsie.
4118         (find_function_alias_target): Likewise.
4119         (find_gnu_ifunc): Likewise.
4120         * tracepoint.c (info_scope_command): Likewise.
4121         * value.c (value_fn_field): Likewise.
4122
4123         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4124         in place of find_pc_partial_function.
4125         * blockframe.c (find_function_entry_range_from_pc): New function.
4126         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4127         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4128         for each range in a block.
4129
4130
4131 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4132
4133         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4134         incrementation.
4135
4136 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4137
4138         * solib-svr4.c (read_program_headers_from_bfd): Return
4139         gdb::optional<gdb::byte_vector>.
4140         (svr4_exec_displacement): Adjust.
4141
4142 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4143
4144         * solib-svr4.c (read_program_header): Return
4145         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4146         (find_program_interpreter): Return
4147         gdb::optional<gdb::byte_vector>.
4148         (scan_dyntag_auxv): Adjust.
4149         (enable_break): Adjust.
4150         (svr4_exec_displacement): Adjust.
4151
4152 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4153
4154         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4155         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4156
4157 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4158
4159         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4160         string_vprintf.
4161         * guile/scm-utils.c (gdbscm_printf): Likewise.
4162         * serial.c (serial_printf): Likewise.
4163         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4164
4165 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4166
4167         * stack.c (print_frame): Print frame architecture when printing on
4168         an MI output.
4169         * NEWS: Mention new "arch" attribute in frame output.
4170
4171 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4172
4173         * arch/aarch64.h (aarch64_regnum): Update comment.
4174
4175 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4176
4177         * NEWS: Add SVE to 8.2 section.
4178
4179 2018-08-21  Pedro Alves  <palves@redhat.com>
4180
4181         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4182         out from gdbscm_parse_function_args.
4183         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4184         gdbscm_parse_function_args_1.
4185
4186 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4187
4188         PR gdb/17816
4189         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4190         operator.
4191
4192 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4193
4194         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4195
4196 2018-08-19  Michael Spang  <spang@google.com>
4197
4198         PR gdb/11786
4199         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4200         for PT_TLS segments.
4201
4202 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4203
4204         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4205         dwarf_variable_value.
4206         * dwarf2-frame.c (class dwarf_expr_executor):
4207         Add override for dwarf_variable_value.
4208         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4209         (class symbol_needs_eval_context): Likewise.
4210         (indirect_synthetic_pointer): Add forward declaration.
4211         (sect_variable_value): New function.
4212         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4213         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4214         for DW_OP_GNU_variable_value.
4215
4216 2018-08-16  Tom Tromey  <tom@tromey.com>
4217
4218         * top.c (read_command_file): Update.
4219         (command_line_input): Remove "repeat" argument.
4220         * ada-lang.c (get_selections): Update.
4221         * linespec.c (decode_line_2): Update.
4222         * defs.h (command_line_input): Remove argument.
4223         * cli/cli-script.c (read_next_line): Update.
4224         * python/py-gdb-readline.c: Update.
4225
4226 2018-08-17  Tom Tromey  <tom@tromey.com>
4227
4228         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4229         command_line_input.
4230
4231 2018-08-15  Tom Tromey  <tom@tromey.com>
4232
4233         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4234
4235 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4236
4237         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4238         If used, use find_pc_partial_function to find address range
4239         to disassemble.
4240         * mi/mi-main.c (mi_cmd_list_features): Report
4241         "data-disassemble-a-option" feature.
4242         * NEWS: Mention new -data-disassemble option -a.
4243
4244 2018-08-13  Tom Tromey  <tom@tromey.com>
4245
4246         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4247
4248 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4249
4250         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4251         (aarch64_linux_collect_sve_regset): Likewise.
4252         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4253         * regcache.h (regcache_map_entry_size): New function.
4254
4255 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4256
4257         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4258         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4259         (SVE_HEADER_VL_LENGTH): Likewise.
4260         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4261         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4262         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4263         (SVE_HEADER_SIZE_OFFSET): Likewise.
4264         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4265         (SVE_HEADER_VL_OFFSET): Likewise.
4266         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4267         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4268         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4269         (SVE_HEADER_SIZE): Likewise.
4270         (aarch64_linux_core_read_vq): Add function.
4271         (aarch64_linux_core_read_description): Check for SVE section.
4272
4273 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4274
4275         * aarch64-fbsd-tdep.c
4276         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4277         collect_size.
4278         * aarch64-linux-tdep.c
4279         (aarch64_linux_iterate_over_regset_sections): Likewise.
4280         * alpha-linux-tdep.c
4281         (alpha_linux_iterate_over_regset_sections):
4282         * alpha-nbsd-tdep.c
4283         (alphanbsd_iterate_over_regset_sections): Likewise.
4284         * amd64-fbsd-tdep.c
4285         (amd64fbsd_iterate_over_regset_sections): Likewise.
4286         * amd64-linux-tdep.c
4287         (amd64_linux_iterate_over_regset_sections): Likewise.
4288         * arm-bsd-tdep.c
4289         (armbsd_iterate_over_regset_sections): Likewise.
4290         * arm-fbsd-tdep.c
4291         (arm_fbsd_iterate_over_regset_sections): Likewise.
4292         * arm-linux-tdep.c
4293         (arm_linux_iterate_over_regset_sections): Likewise.
4294         * corelow.c (get_core_registers_cb): Likewise.
4295         (core_target::fetch_registers): Likewise.
4296         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4297         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4298         * gdbarch.h (void): Regenerate.
4299         * gdbarch.sh: Add supply_size and collect_size.
4300         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4301         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4302         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4303         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4304         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4305         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4306         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4307         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4308         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4309         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4310         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4311         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4312         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4313         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4314         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4315         Likewise.
4316         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4317         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4318         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4319         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4320         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4321         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4322         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4323         Likewise.
4324         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4325         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4326         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4327         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4328         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4329         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4330         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4331         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4332
4333 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4334
4335         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4336         with string_printf.
4337
4338 2018-08-10  Keith Seitz  <keiths@redhat.com>
4339
4340         * compile/compile-c-support.c (add_code_header, add_code_footer):
4341         Move into policy class.
4342         (c_push_user_expression, pop_user_expression_nop)
4343         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4344         (compile_program): New host class.
4345         (c_compile_program): New typedef.
4346         (c_compute_porgram): Use c_compile_program.
4347
4348 2018-08-10  Keith Seitz  <keiths@redhat.com>
4349
4350         * compile/compile-internal.h (compile_instance::~compile_instance):
4351         Remove calls to htab_delete.
4352         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4353         * compile.c (compile_instance::compile_instance): Initialize
4354         htab unique pointers.
4355         (compile_instance::get_cached_type, compile_instance::insert_type)
4356         (compile_instance::error_symbol_once): Update for unique_ptr.
4357
4358 2018-08-10  Keith Seitz  <keiths@redhat.com>
4359
4360         * compile/compile-c-symbols.c (struct symbol_error)
4361         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4362         (compile_instance::insert_symbol_error)
4363         (compile_instance::error_symbol_once): Move to ...
4364         * compile/compile.c: ... here.
4365
4366 2018-08-10  Keith Seitz  <keiths@redhat.com>
4367
4368         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4369         instead of `new_compile_instance'.
4370         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4371         Update description.
4372         If the symbol error map is not initialized, create it.
4373         (generate_c_for_for_one_symbol): Do not check/initialize
4374         the symbol error map.
4375         * compile/compile-c-types.c (compile_c_instance): Make a class.
4376         Update all callers.
4377         (compile_instance::compile_instance): Initialize the type cache.
4378         (get_cached_type): New function.
4379         (insert_type): Update description.
4380         (compile_c_instance::m_default_cflags): Define.
4381         (convert_type): Update description.  Use get_cached_type.
4382         (delete_instance): Moved to destructor.
4383         (new_compile_instance): Moved to constructor.
4384         * compile/compile-c.h (compile_c_instance): Make class inheriting
4385         from compile_instance.
4386         <base>: Remove field.
4387         <type_map, symbol_err_map>: Move to base class.
4388         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4389         * compile/compile-internal.h (compile_instance): Make class.
4390         <type_map_t, symbol_err_map_t>: Define.
4391         <fe>: Rename to `m_gcc_fe'.
4392         <scope, block, gcc_target_options>: Add `m_' prefix.
4393         <m_type_map, m_symbol_err_map>: New fields, moved from
4394         compile_c_instance.
4395         <destroy>: Remove.
4396         (convert_type, new_compile_instance): Remove.
4397         * compile/compile.c (cleanup_compile_instance): Remove.
4398         (compile_to_object): Use unique_ptr to eliminate cleanups.
4399         (compile_instance::set_print_callback, compile_instance::version)
4400         (compile_instance::set_verbose)
4401         (compile_instance::set_driver_filename)
4402         (compile_instance::set_triplet_regexp)
4403         (compile_instance::set_arguments)
4404         (compile_instance::set_source_file)
4405         (compile_instance::compile): Define.
4406
4407 2018-08-10  Keith Seitz  <keiths@redhat.com>
4408
4409         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4410         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4411         gcc-c-fe.def to define C plugin.
4412         (delete_instance): Delete `c_plugin'.
4413         (new_compile_instance): Initialize `c_plugin'.
4414         * compile/compile-c.h: Include gcc_c_plugin.h.
4415         (struct compile_c_instance) <c_plugin>: New member.
4416         * gcc-c-plugin.h: New file.
4417         Update all callers with API change.
4418
4419 2018-08-10  Keith Seitz  <keiths@redhat.com>
4420
4421         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4422         (HFILES_NO_SRCDIR): ... to here.
4423         Add compile-internal.h and compile-c.h.
4424         * compile/compile-c-support.c: Include compile-c.h.
4425         * compile/compile-c-symbols.c: Include compile-c.h.
4426         (generate_c_for_variable_locations): Update comment.
4427         * compile/compile-c-types.c: Include compile-c.h.
4428         * compile/compile-c.h: New file -- moved C language declarations
4429         from other files here.
4430         * compile/compile-internal.h: Do not include hashtab.h or
4431         common/enum-flags.h.
4432         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4433         (gcc_convert_symbol, gcc_symbol_address)
4434         (generate_c_for_variable_locations, c_get_mode_for_size)
4435         (c_get_range_decl_name): Definitions moved to compile-c.h.
4436         * compile/compile-loc2c.c: Include compile-c.h.
4437
4438 2018-08-10  Keith Seitz  <keiths@redhat.com>
4439
4440         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4441         (c_symbol_substitution_name): ... this.
4442         Update all callers.
4443
4444 2018-08-10  Keith Seitz  <keiths@redhat.com>
4445
4446         * compile/compile-c-support.c (c_compute_program): Use
4447         unique_xmalloc_ptr to eliminate cleanup.
4448         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4449         Return a unique_xmalloc_ptr and eliminate cleanup.
4450         * compile/compile-internal.h (generate_c_for_variable_locations):
4451         Return unique_xmalloc_ptr and update description.
4452
4453 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4454
4455         * corelow.c (core_target::get_core_register_section): Rename
4456         min_size to section_min_size.
4457
4458 2018-08-09  Jim Wilson  <jimw@sifive.com>
4459
4460         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4461         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4462         * NEWS: Mention new GNU/Linux RISC-V target.
4463         * configure.host: Add riscv*-*-linux*.
4464         * configure.nat: Add riscv*.
4465         * configure.tgt: Add riscv*-*-linux*.
4466         * riscv-linux-nat.c: New file.
4467         * riscv-linux-tdep.c: New file.
4468
4469 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4470
4471         * infrun.c (resume): Make static, add forward declaration.
4472         (proceed): Update header comment.
4473         * infrun.h (resume): Delete declaration.
4474
4475 2018-08-09  Tom Tromey  <tom@tromey.com>
4476
4477         * riscv-tdep.h: Minor formatting fixes.
4478
4479 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4480
4481         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4482         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4483         (test_mkdir_recursive): Likewise.
4484         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4485
4486 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4487
4488         * valarith.c (value_subscripted_rvalue): If an array is not in
4489         memory, and we don't know the upper bound, then we can't know that
4490         the requested element exists or not.
4491
4492 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4493
4494         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4495         (target_options_to_string): Add comment.
4496
4497 2018-08-08  Tom Tromey  <tom@tromey.com>
4498
4499         * unittests/scoped_mmap-selftests.c: Check result of "write".
4500
4501 2018-08-08  Jim Wilson  <jimw@sifive.com>
4502
4503         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4504         (decode_register_index_short): New.
4505         (decode_j_type_insn, decode_cj_type_insn): New.
4506         (decode_b_type_insn, decode_cb_type_insn): New.
4507         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4508         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4509         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4510         is_c_sw_insn instead of is_sw_insn.
4511         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4512         (riscv_software_single_step): New.
4513         * riscv-tdep.h (riscv_software_single_step): Declare.
4514
4515         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4516         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4517
4518 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4519
4520         PR gdb/18050:
4521         * target.c (dispose_inferior): Don't dispose of inferiors that are
4522         already killed.
4523
4524 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4525
4526         * remote.c (remote_target::download_tracepoint): Change char* to
4527         const char*.
4528
4529 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4530
4531         * target.h (target_options_to_string): Return an std::string.
4532         * target.c (str_comma_list_concat_elem): Return void, use
4533         std::string.
4534         (do_option): Likewise.
4535         (target_options_to_string): Return an std::string.
4536         * linux-nat.c (linux_nat_target::wait): Adjust.
4537         * target-debug.h (target_debug_print_options): Adjust.
4538
4539 2018-08-07  Tom Tromey  <tom@tromey.com>
4540
4541         * Makefile.in (CPPFLAGS): New variable.
4542         (INTERNAL_CPPFLAGS): Use it.
4543
4544 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4545
4546         * NEWS: Mention the index cache.
4547
4548 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4549
4550         * common/pathstuff.h (get_standard_cache_dir): New.
4551         * common/pathstuff.c (get_standard_cache_dir): New.
4552         * build-id.h (build_id_to_string): New.
4553         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4554         DEBUG_STR_SUFFIX): Move to here.
4555         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4556         DEBUG_STR_SUFFIX): Move from there.
4557         (write_psymtabs_to_index): Make non-static, add basename
4558         parameter.  Write to temporary files, rename when done.
4559         (save_gdb_index_command): Adjust call to
4560         write_psymtabs_to_index.
4561         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4562         field.
4563         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4564         (get_gdb_index_contents_from_cache): New.
4565         (get_gdb_index_contents_from_cache_dwz): New.
4566         (dwarf2_initialize_objfile): Read index from cache.
4567         (dwarf2_build_psymtabs): Save to index.
4568         * dwarf-index-cache.h: New file.
4569         * dwarf-index-cache.c: New file.
4570         * dwarf-index-write.h: New file.
4571
4572 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4573
4574         * gnulib/aclocal.m4: Re-generate.
4575         * gnulib/config.in: Re-generate.
4576         * gnulib/configure: Re-generate.
4577         * gnulib/import/Makefile.am: Re-generate.
4578         * gnulib/import/Makefile.in: Re-generate.
4579         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4580         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4581         * gnulib/import/m4/mkdir.m4: New file.
4582         * gnulib/import/mkdir.c: New file.
4583         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4584         module.
4585
4586 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4587
4588         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4589         * common/scoped_mmap.c: New file.
4590         * common/scoped_mmap.h (destroy): New method.
4591         (~scoped_mmap, reset): Use destroy.
4592         (scoped_mmap): New move constructor.
4593         (mmap_file): New declaration.
4594         * unittests/scoped_mmap-selftests.c (test_normal,
4595         test_invalid_filename, run_tests): New functions.
4596         (_initialize_scoped_mmap_selftests): Register selftest.
4597
4598 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4599
4600         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4601         (read_gdb_index_from_buffer): ... this.  Remove section
4602         parameter, add buffer parameter.
4603         (get_gdb_index_contents_ftype,
4604         get_gdb_index_contents_dwz_ftype): New typedefs.
4605         (dwarf2_read_gdb_index): Add callback parameters to get the
4606         index contents.
4607         (get_gdb_index_contents_from_section): New.
4608         (dwarf2_initialize_objfile): Update call to
4609         dwarf2_read_gdb_index.
4610
4611 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4612
4613         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4614         (gdb_open_cloexec): Likewise.
4615         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4616         (commandline_from_pid): Likewise.
4617         (linux_xfer_osdata_threads): Likewise.
4618         (linux_xfer_osdata_fds): Likewise.
4619         * ada-lang.c (is_package_name): Likewise.
4620         * auxv.c (procfs_xfer_auxv): Likewise.
4621         * breakpoint.c (print_one_breakpoint_location): Use
4622         uiout::field_fmt.
4623         (print_one_catch_solib): Use string_printf.
4624         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4625         (add_pe_forwarded_sym): Likewise.
4626         * dwarf2read.c (create_type_unit_group): Likewise.
4627         (build_error_marker_type): Likewise.
4628         * infcall.c (get_function_name): Likewise.
4629         * valprint.c (print_converted_chars_to_obstack): Likewise.
4630         * xtensa-tdep.c (xtensa_register_type): Likewise.
4631
4632 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4633
4634         * remote.c (remote_target::download_tracepoint): Fix format
4635         string errors.
4636
4637 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4638
4639         * tracefile.c: Include common/byte-vector.h.
4640         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4641         with trace_regblock_size if needed.  Update uses of buf.
4642
4643 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4644
4645         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4646         std::vector<unsigned char>.
4647         * tracepoint.c (collection_list::collection_list): Remove
4648         m_regs_mask initializer from initializer list.  Resize
4649         m_regs_mask using the largest remote register number.
4650         (collection_list::add_remote_register): Remove size check on
4651         m_regs_mask.  Use at to access element.
4652         (collection_list::stringify): Change type of temp_buf to
4653         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4654         stringify the register mask.  Use pack_hex_byte for the register
4655         mask.
4656
4657 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4658
4659         * tracepoint.h (class collection_list) <add_register>: Remove.
4660         <add_remote_register, add_ax_registers, add_local_register>:
4661         Declare.
4662         <add_memrange>: Add scope parameter.
4663         * tracepoint.c (encode_actions_1): Likewise.
4664         (collection_list::add_register): Rename to ...
4665         (collection_list::add_remote_register): ... this.  Update
4666         comment.
4667         (collection_list::add_ax_registers, add_local_register): New
4668         methods.
4669         (collection_list::add_memrange): Add scope parameter.  Call
4670         add_local_register instead of add_register.
4671         (finalize_tracepoint_aexpr): New function.
4672         (collection_list::collect_symbol): Update calls to add_memrange.
4673         Call add_local_register instead of add_register.  Call
4674         add_ax_registers.  Call finalize_tracepoint_aexpr.
4675         (encode_actions_1): Get remote regnos for $reg action.  Call
4676         add_remote_register, add_ax_registers, and add_local_register.
4677         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4678         (validate_actionline): Call finalize_tracepoint_aexpr.
4679
4680 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4681
4682         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4683         Replace array buf with gdb::char_vector buf, of size
4684         get_remote_packet_size ().  Replace references to buf and
4685         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4686         and xsnprintf with snprintf.  Raise errors if the buffer is too
4687         small.
4688
4689 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4690
4691         * remote.c (remote_target::download_tracepoint): Fix the has_more
4692         predicate in the QTDP action list iteration.
4693
4694 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4695
4696         * remote.c (remote_target::download_tracepoint): Fix indentation
4697         in for block.
4698
4699 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4700
4701         * proc-api.c (_initialize_proc_api): Remove c, unused.
4702         * procfs.c (procfs_init_inferior): Remove signals, unused.
4703         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4704         unused.
4705
4706 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4707             Andrew Burgess  <andrew.burgess@embecosm.com>
4708
4709         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4710         'W_STOPCODE (0)' as this could be ambiguous.
4711
4712 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4713
4714         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4715         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4716         "ai_socktype").
4717
4718 2018-08-02  Tom Tromey  <tom@tromey.com>
4719
4720         PR symtab/16842.
4721         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4722         symbols.
4723         (process_structure_scope): Likewise.
4724
4725 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4726
4727         PR gdb/22629:
4728         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4729         kill inferior.
4730
4731 2018-08-02  Tom Tromey  <tom@tromey.com>
4732
4733         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4734         (darwin_suspend_inferior, darwin_resume_inferior)
4735         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4736         (darwin_check_new_threads): Check result of get_darwin_inferior.
4737
4738 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4739
4740         GDB 8.1.1 released.
4741
4742 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4743
4744         * varobj.c (varobj_get_path_expr_parent): Report an error if
4745         parent is a dynamic varobj.
4746
4747 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4748
4749         * gnulib/aclocal.m4: Re-generate.
4750         * gnulib/config.in: Re-generate.
4751         * gnulib/configure: Re-generate.
4752         * gnulib/import/Makefile.in: Re-generate.
4753         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4754         * gnulib/import/m4/onceonly.m4: Re-generate.
4755
4756 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4757
4758         * target-descriptions.c (struct xml_test_tdesc): New.
4759         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4760         (record_xml_tdesc): Update.
4761         (maintenance_check_xml_descriptions): Update.
4762         * target-descriptions.h (record_xml_tdesc): Update comment.
4763
4764 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4765
4766         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4767         checking array bounds are defined.
4768
4769 2018-07-30  Tom Tromey  <tom@tromey.com>
4770
4771         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4772         irreflexivity violation.
4773
4774 2018-07-30  Tom Tromey  <tom@tromey.com>
4775
4776         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4777         * value.c (unpack_long): Remove lint code.
4778         * valops.c (value_ind): Remove lint code.
4779         * valarith.c (value_x_binop, value_x_unop, value_equal)
4780         (value_pos): Remove lint code.
4781
4782 2018-07-28  Tom de Vries  <tdevries@suse.de>
4783
4784         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4785         with undefined upper bound as <optimized out>.
4786
4787 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4788
4789         * gcore.in: Rename variable "name" to "prefix".  Expand
4790         "usage" text.
4791
4792 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4793
4794         * windows-nat.c (windows_nat_target::create_inferior): Update to
4795         call close() in global namespace.
4796
4797 2018-07-26  Tom Tromey  <tom@tromey.com>
4798
4799         * dwarf-index-write.c (add_address_entry): Don't add objfile
4800         offsets.
4801         * dbxread.c (find_stab_function): Rename from
4802         find_stab_function_addr.  Return a bound_minimal_symbol.
4803         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4804         Don't add objfile offsets.
4805         (end_psymtab): Use raw_text_low, raw_text_high,
4806         MSYMBOL_VALUE_RAW_ADDRESS.
4807         (read_ofile_symtab): Update.
4808         (process_one_symbol): Update.
4809         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4810         offsets.
4811         (dw2_relocate): Remove.
4812         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4813         searching addrmap.
4814         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4815         Update.
4816         (process_psymtab_comp_unit_reader, add_partial_symbol)
4817         (add_partial_subprogram, dwarf2_ranges_read): Update.
4818         (load_partial_dies): Update.
4819         (add_address_entry): Don't add objfile offsets.
4820         (dwarf2_build_include_psymtabs): Update.
4821         (create_addrmap_from_aranges): Don't add objfile offsets.
4822         (dw2_find_pc_sect_compunit_symtab): Update.
4823         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4824         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4825         Update.
4826         (parse_partial_symbols): Don't add objfile offsets.  Use
4827         raw_text_low, raw_text_high.  Update.
4828         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4829         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4830         or call 'relocate' quick function.  Clear psymbol_map.
4831         * psympriv.h (struct partial_symbol) <address>: Add section
4832         offset.
4833         <set_unrelocated_address>: Rename from set_address.
4834         <raw_text_low, raw_text_high>: New methods.
4835         <text_low, text_high>: Add objfile parameter.
4836         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4837         set_unrelocated_address.
4838         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4839         (find_pc_psymbol): Update.
4840         (fixup_psymbol_section, relocate_psymtabs): Remove.
4841         (dump_psymtab, psym_functions): Update.
4842         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4843         parameter.
4844         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4845         (start_psymtab_common): Update.
4846         * symfile-debug.c (debug_qf_relocate): Remove.
4847         (debug_sym_quick_functions): Update.
4848         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4849         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4850         Update.
4851
4852 2018-07-26  Tom Tromey  <tromey@redhat.com>
4853
4854         * dbxread.c (end_psymtab): Use text_high_valid and
4855         text_low_valid.
4856         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4857         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4858         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4859         Update comment.
4860         <text_low_valid, text_high_valid>: New fields.
4861         <set_text_low, set_text_high>: Update.
4862         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4863
4864 2018-07-26  Tom Tromey  <tom@tromey.com>
4865
4866         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4867         Update.
4868         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4869         textlow and texthigh fields.
4870         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4871         Update.
4872         * mdebugread.c (parse_lines, parse_partial_symbols)
4873         (psymtab_to_symtab_1): Update.
4874         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4875         Rename fields.  Update comment.  Now private.
4876         <text_low, text_high, set_text_low, set_text_high>: New methods.
4877         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4878         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4879         (start_psymtab_common, maintenance_info_psymtabs)
4880         (maintenance_check_psymtabs): Update.
4881         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4882         texthigh fields.
4883         (scan_xcoff_symtab): Update.
4884
4885 2018-07-26  Tom Tromey  <tromey@redhat.com>
4886
4887         * psympriv.h (struct partial_symbol) <unrelocated_address,
4888         address, set_address>: New methods.
4889         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4890         (fixup_psymbol_section, relocate_psymtabs): Update.
4891         (print_partial_symbols): Add 'objfile' parameter.  Update.
4892         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4893         Update.
4894
4895 2018-07-26  Tom Tromey  <tom@tromey.com>
4896
4897         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4898         (debug_names::write_psymbols): Update.
4899         * psympriv.h (struct partial_symbol): Derive from
4900         general_symbol_info.
4901         <obj_section>: New method.
4902         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4903         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4904         (find_pc_sect_psymbol, fixup_psymbol_section)
4905         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4906         (print_partial_symbols, recursively_search_psymtabs)
4907         (compare_psymbols, psymbol_hash, psymbol_compare)
4908         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4909         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4910
4911 2018-07-26  Tom Tromey  <tromey@redhat.com>
4912
4913         * dbxread.c (end_psymtab): Remove dead code.
4914
4915 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4916
4917         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4918         DWARF unwinders are disabled.
4919         * dwarf2-frame.c: Add dwarf2read.h include.
4920         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4921         disabled.
4922         (dwarf2_frame_unwinders_enabled_p): Define.
4923         (show_dwarf_unwinders_enabled_p): New function.
4924         (_initialize_dwarf2_frame): Register switch to control DWARF
4925         unwinder use.
4926         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4927         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4928         (show_dwarf_cmdlist): Remove static keyword.
4929         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4930         (show_dwarf_cmdlist): Declare.
4931         * NEWS: Document new feature.
4932
4933 2018-07-26  Tom de Vries  <tdevries@suse.de>
4934
4935         PR breakpoints/23366
4936         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4937
4938 2018-07-26  Tom de Vries  <tdevries@suse.de>
4939
4940         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4941         DW_AT_count can't be translated to a dynamic prop.
4942
4943 2018-07-25  Tom de Vries  <tdevries@suse.de>
4944
4945         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4946         try/catch.
4947
4948 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4949
4950         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4951
4952 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4953
4954         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4955
4956 2018-07-24  Keith Seitz  <keiths@redhat.comt
4957
4958         PR symtab/23010
4959         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4960         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4961         instead of add_symbol_to_list.
4962         (read_file_scope): Call prepare_one_comp_unit before reading
4963         any other DIEs.
4964
4965 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4966
4967         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4968
4969 2018-07-24  Tom Tromey  <tom@tromey.com>
4970
4971         * utils.c (malloc, realloc, free): Don't declare.
4972         * configure, config.in: Rebuild.
4973         * configure.ac: Don't check for declarations of free, malloc, or
4974         realloc.
4975
4976 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4977
4978         * aarch64-linux-nat.c
4979         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4980         variable.
4981         * arm-linux-nat.c (fetch_regs): Likewise.
4982         (store_regs): Likewise.
4983         (fetch_vfp_regs): Likewise.
4984         (store_vfp_regs): Likewise.
4985         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4986         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4987         (arm_linux_nat_target::insert_watchpoint): Likewise.
4988         (arm_linux_nat_target::remove_watchpoint): Likewise.
4989         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4990         Likewise.
4991         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4992         Likewise.
4993         * ppc-linux-nat.c (fetch_register): Likewise.
4994         (fetch_all_gp_regs): Likewise.
4995         (fetch_ppc_registers): Likewise.
4996         (store_all_gp_regs): Likewise.
4997         (store_ppc_registers): Likewise.
4998         (hwdebug_insert_point): Likewise.
4999         (can_use_watchpoint_cond_accel): Likewise.
5000         * remote-sim.c (gdb_os_write_stdout): Likewise.
5001
5002 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5003             Tom Tromey  <tom@tromey.com>
5004
5005         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5006         test for it.
5007         * configure: Rebuild.
5008
5009 2018-07-22  Tom Tromey  <tom@tromey.com>
5010
5011         * regformats/regdat.sh: Define xmltarget_${name} inside
5012         #ifndef IN_PROCESS_AGENT.
5013
5014 2018-07-22  Tom Tromey  <tom@tromey.com>
5015
5016         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5017
5018 2018-07-22  Tom Tromey  <tom@tromey.com>
5019
5020         * symfile.c (reread_symbols): Notify iter, not objfile.
5021
5022 2018-07-22  Tom Tromey  <tom@tromey.com>
5023
5024         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5025         Use arch_ops.
5026         (ravenscar_thread_target::prepare_to_store): Likewise.
5027
5028 2018-07-22  Tom Tromey  <tom@tromey.com>
5029
5030         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5031         unused variable.  Call value_fetch_lazy when needed.
5032         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5033         Remove unused variable.  Call value_fetch_lazy when needed.
5034
5035 2018-07-22  Tom Tromey  <tom@tromey.com>
5036
5037         * m32c-tdep.c (mark_dma): Return void.
5038         (make_regs): Remove unused declarations.
5039
5040 2018-07-22  Tom Tromey  <tom@tromey.com>
5041
5042         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5043         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5044         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5045         bkscm_get_valid_block_smob_arg_unsafe for effect.
5046
5047 2018-07-22  Tom Tromey  <tom@tromey.com>
5048
5049         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5050         value_type.
5051
5052 2018-07-22  Tom Tromey  <tom@tromey.com>
5053
5054         * windows-nat.c (saved_context): Conditionally define.
5055         * remote.c (remote_target::remote_btrace_maybe_reopen):
5056         Conditionally declare "warned".
5057         * inflow.c (sigquit_ours): Conditionally define.
5058         (new_tty): Move "tty" declaration inside #if.
5059         * guile/guile.c (guile_datadir): Conditionally define.
5060         * charset.c (set_be_le_names): Move some declarations inside #if.
5061         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5062         #if.
5063         (parse_xml_btrace_conf): Likewise.
5064
5065 2018-07-22  Tom Tromey  <tom@tromey.com>
5066
5067         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5068
5069 2018-07-22  Tom Tromey  <tom@tromey.com>
5070
5071         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5072         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5073         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5074         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5075         * stack.c (frame_apply_level_command): Remove unused variable.
5076         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5077         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5078         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5079         unused variable.
5080         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5081         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5082         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5083         variable.
5084         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5085         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5086         variable.
5087         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5088         Remove unused variable.
5089         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5090         variable.
5091         * common/tdesc.c (print_xml_feature::visit): Remove unused
5092         variable.
5093         * compile/compile-object-load.c (store_regs): Remove unused
5094         variables.
5095         * complaints.c (clear_complaints): Remove unused variable.
5096         * corelow.c (core_target_open): Remove unused variable.
5097         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5098         variable.
5099         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5100         variable.
5101         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5102         variable.
5103         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5104         variable.
5105         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5106         variable.
5107         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5108         variable.
5109         * ia64-tdep.c (examine_prologue): Remove unused variable.
5110         * infcall.c (run_inferior_call): Remove unused variable.
5111         * inferior.c (exit_inferior): Remove unused variable.
5112         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5113         * linespec.c (decode_line_2): Remove unused variable.
5114         * linux-nat.c (super_close): Remove.
5115         * linux-tdep.c (linux_info_proc): Remove unused variable.
5116         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5117         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5118         Remove unused variable.
5119         * parse.c (find_minsym_type_and_address): Remove unused variable.
5120         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5121         variable.
5122         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5123         variable.
5124         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5125         variables.
5126         * record-btrace.c (record_btrace_target::store_registers): Remove
5127         unused variable.
5128         (cmd_show_record_btrace_cpu): Remove unused variable.
5129         * riscv-tdep.c (riscv_register_reggroup_p)
5130         (riscv_push_dummy_call, riscv_return_value): Remove unused
5131         variable.
5132         * rust-exp.y (literal): Remove unused variable.
5133         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5134         unused variable.
5135         <STRUCTOP_ANONYMOUS>: Likewise.
5136         * s390-linux-tdep.c (s390_linux_init_abi_31)
5137         (s390_linux_init_abi_64): Remove unused variable.
5138         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5139         (file_select_thread, net_windows_open, _initialize_ser_windows):
5140         Remove unused variables.
5141         * symtab.c (find_pc_sect_line): Remove unused variable.
5142         * target-memory.c (compute_garbled_blocks): Remove unused
5143         variable.
5144         (target_write_memory_blocks): Remove unused variable.
5145         * target.c (target_stack::unpush): Remove unused variables.
5146         * tracepoint.c (start_tracing, all_tracepoint_actions)
5147         (merge_uploaded_trace_state_variables)
5148         (print_one_static_tracepoint_marker): Remove unused variable.
5149         * unittests/basic_string_view/element_access/char/1.cc (test01):
5150         Remove unused variable.
5151         * windows-nat.c (windows_continue, windows_add_all_dlls)
5152         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5153         Remove unused variables.
5154
5155 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5156
5157         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5158         attr_profile in HAVE_ELF.
5159         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5160         HAVE_ELF.
5161
5162 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5163
5164         * frame.c (frame_register_unwind): Change parameter name.
5165         (frame_unwind_register): Likewise.
5166         (frame_unwind_register_value): Likewise.
5167         (frame_unwind_register_signed): Likewise.
5168         (frame_unwind_register_unsigned): Likewise.
5169         * frame.h (frame_register_unwind): Likewise.
5170         (frame_unwind_register): Likewise.
5171         (frame_unwind_register_value): Likewise.
5172         (frame_unwind_register_signed): Likewise.
5173         (frame_unwind_register_unsigned): Likewise.
5174         (frame_unwind_arch): Likewise.
5175
5176 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5177
5178         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5179         ISA maintenance.
5180
5181 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5182
5183         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5184         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5185         hand.
5186
5187 2018-07-20  Keith Seitz  <keiths@redhat.com>
5188
5189         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5190         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5191         m_compunit_symtab, m_language>: Add "m_" prefix.
5192         Update all uses.
5193         * buildsym.c: Update all uses.
5194
5195 2018-07-20  Tom Tromey  <tom@tromey.com>
5196
5197         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5198         * buildsym.h (record_line_ftype): Remove typedef.
5199
5200 2018-07-20  Tom Tromey  <tom@tromey.com>
5201
5202         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5203         (end_expandable_symtab): Likewise.
5204         (end_symtab_get_static_block): Likewise.
5205         (end_symtab_from_static_block): Likewise.
5206         * buildsym-legacy.c (augment_type_symtab): Remove.
5207         (end_expandable_symtab): Remove.
5208         (end_symtab_get_static_block): Remove.
5209         (end_symtab_from_static_block): Remove.
5210
5211 2018-07-20  Tom Tromey  <tom@tromey.com>
5212
5213         * dwarf2read.c: Include buildsym.h.
5214         (struct dwarf2_cu) <builder>: New method.
5215         (fixup_go_packaging): Update.
5216         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5217         use scoped_free_pendings.
5218         (using_directives): Add "cu" parameter, remove "language".
5219         (read_import_statement, setup_type_unit_groups, )
5220         (read_func_scope, read_lexical_block_scope)
5221         (dwarf2_record_block_ranges, read_namespace): Update.
5222         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5223         (lnp_state_machine::handle_end_sequence): Update.
5224         (class lnp_state_machine) <m_cu>: New member.
5225         <m_record_line_callback>: Remove.
5226         <m_currently_recording_lines>: New member.
5227         (lnp_state_machine::handle_set_file): Update.
5228         (noop_record_line): Remove.
5229         (dwarf_record_line_p): Add cu parameter.
5230         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5231         (lnp_state_machine::record_line)
5232         (lnp_state_machine::lnp_state_machine)
5233         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5234         (dwarf_decode_lines): Update.
5235         (dwarf2_start_subfile): Add cu parameter.
5236         (dwarf2_start_symtab, new_symbol): Update.
5237         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5238         Remove dwarf2_per_objfile parameter.
5239         (dwarf_decode_macros): Update.
5240
5241 2018-07-20  Tom Tromey  <tom@tromey.com>
5242
5243         * stabsread.c (define_symbol): Update.
5244         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5245         * dwarf2read.c (new_symbol): Update.
5246         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5247         * cp-namespace.c: Include buildsym.h.
5248         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5249         * buildsym-legacy.c (get_buildsym_compunit): New function.
5250
5251 2018-07-20  Tom Tromey  <tom@tromey.com>
5252
5253         * xcoffread.c: Include buildsym-legacy.h.
5254         * windows-nat.c: Include buildsym-legacy.h.
5255         * stabsread.c: Include buildsym-legacy.h.
5256         * mdebugread.c: Include buildsym-legacy.h.
5257         * buildsym-legacy.h: New file.
5258         * buildsym-legacy.c: New file, from buildsym.c.
5259         * go32-nat.c: Include buildsym-legacy.h.
5260         * dwarf2read.c: Include buildsym-legacy.h.
5261         * dbxread.c: Include buildsym-legacy.h.
5262         * cp-namespace.c: Include buildsym-legacy.h.
5263         * coffread.c: Include buildsym-legacy.h.
5264         * buildsym.h: Move some contents to buildsym-legacy.h.
5265         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5266         buildsym-legacy.c.
5267         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5268
5269 2018-07-20  Tom Tromey  <tom@tromey.com>
5270
5271         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5272         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5273         (buildsym_compunit::buildsym_compunit)
5274         (buildsym_compunit::~buildsym_compunit)
5275         (buildsym_compunit::get_macro_table): Define.
5276
5277 2018-07-20  Tom Tromey  <tom@tromey.com>
5278
5279         * buildsym.c (reset_symtab_globals): Remove.
5280         (buildsym_compunit::end_symtab_from_static_block): Update.
5281         (buildsym_compunit::augment_type_symtab): Update.
5282         (end_symtab_from_static_block): Call free_buildsym_compunit.
5283         (augment_type_symtab, end_symtab, end_expandable_symtab):
5284         Likewise.
5285
5286 2018-07-20  Tom Tromey  <tom@tromey.com>
5287
5288         * arch-utils.c: Do not include buildsym.h.
5289         * mipsread.c: Do not include buildsym.h.
5290         * machoread.c: Do not include buildsym.h.
5291         * elfread.c: Do not include buildsym.h.
5292
5293 2018-07-20  Tom Tromey  <tom@tromey.com>
5294
5295         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5296         initialization.
5297         (buildsym_compunit): Add new constructor.
5298         (struct buildsym_compunit) <get_last_source_file, finish_block,
5299         record_block_range, start_subfile, patch_subfile_names,
5300         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5301         set_last_source_start_addr, get_last_source_start_addr,
5302         get_local_using_directives, set_local_using_directives,
5303         get_global_using_directives, outermost_context_p,
5304         get_current_context_stack, get_context_stack_depth,
5305         get_current_subfile, get_local_symbols, get_file_symbols,
5306         get_global_symbols, record_debugformat, record_producer,
5307         push_context, pop_context, end_symtab_get_static_block,
5308         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5309         New public methods.
5310         <record_pending_block, finish_block_internal, make_blockvector,
5311         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5312         private methods.
5313         Update all users.
5314
5315 2018-05-22  Tom Tromey  <tom@tromey.com>
5316
5317         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5318         parameter.
5319         (finish_block_internal): Update.
5320
5321 2018-07-20  Tom Tromey  <tom@tromey.com>
5322
5323         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5324         parameter.
5325         (finish_block_internal): Update.
5326
5327 2018-07-20  Tom Tromey  <tom@tromey.com>
5328
5329         * buildsym.h (EXTERN): Don't define or undef.
5330         * buildsym.c (EXTERN): Don't define.
5331
5332 2018-07-20  Tom Tromey  <tom@tromey.com>
5333
5334         * buildsym.c: Remove TODO comment.
5335
5336 2018-07-20  Tom Tromey  <tom@tromey.com>
5337
5338         * coffread.c (coff_symtab_read): Update.
5339         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5340         (xcoff_new_init): Update.
5341         * mipsread.c (mipscoff_new_init): Update.
5342         * mdebugread.c (mdebug_build_psymtabs): Update.
5343         * elfread.c (elf_new_init): Update.
5344         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5345         Update.
5346         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5347         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5348         (stabsect_build_psymtabs): Update.
5349         * buildsym.h (buildsym_init): Don't declare.
5350         * buildsym.c: Update comment.
5351         (prepare_for_building): Remove.
5352         (start_symtab, restart_symtab): Update.
5353         (reset_symtab_globals): Update comment.
5354         (buildsym_init): Remove.
5355
5356 2018-07-20  Tom Tromey  <tom@tromey.com>
5357
5358         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5359         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5360         (read_enum_type, common_block_start, common_block_end)
5361         (cleanup_undefined_types_1, finish_global_stabs): Update.
5362         * mdebugread.c (psymtab_to_symtab_1): Update.
5363         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5364         (read_lexical_block_scope, new_symbol): Update.
5365         * dbxread.c (process_one_symbol): Update.
5366         * coffread.c (coff_symtab_read, process_coff_symbol)
5367         (coff_read_enum_type): Update.
5368         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5369         declare.
5370         (get_local_symbols, get_file_symbols, get_global_symbols): New
5371         functions.
5372         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5373         m_global_symbols.
5374         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5375         (~scoped_free_pendings): Update.
5376         (finish_block, prepare_for_building, reset_symtab_globals)
5377         (end_symtab_get_static_block, end_symtab_with_blockvector)
5378         (augment_type_symtab, push_context): Update.
5379         (get_local_symbols, get_file_symbols, get_global_symbols): New
5380         functions.
5381         (buildsym_init): Update.
5382
5383 2018-07-20  Tom Tromey  <tom@tromey.com>
5384
5385         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5386         (process_full_type_unit): Likewise.
5387         (dwarf2_start_symtab): Set list_in_scope.
5388
5389 2018-07-20  Tom Tromey  <tom@tromey.com>
5390
5391         * dwarf2read.c (process_psymtab_comp_unit_reader)
5392         (build_type_psymtabs_reader): Do not set list_in_scope.
5393
5394 2018-07-20  Tom Tromey  <tom@tromey.com>
5395
5396         * buildsym.c (free_pendings): Remove.
5397         (add_symbol_to_list, scoped_free_pendings)
5398         (finish_block_internal, buildsym_init): Update.
5399
5400 2018-07-20  Tom Tromey  <tom@tromey.com>
5401
5402         * xcoffread.c (read_xcoff_symtab): Update.
5403         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5404         Update.
5405         * dbxread.c (process_one_symbol): Update.
5406         * coffread.c (coff_symtab_read): Update.
5407         * buildsym.h (finish_block): Update.
5408         * buildsym.c (finish_block): Remove "listhead" argument.
5409         (end_symtab_get_static_block): Update.
5410
5411 2018-07-20  Tom Tromey  <tom@tromey.com>
5412
5413         * buildsym.h (class scoped_free_pendings): Remove constructor.
5414         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5415         method.
5416         <m_pending_block_obstack, m_pending_blocks>: New members.
5417         (pending_block_obstack, pending_blocks): Remove.
5418         (scoped_free_pendings::scoped_free_pendings): Default.
5419         (~scoped_free_pendings): Update.
5420         (free_pending_blocks): Remove.
5421         (finish_block_internal, record_pending_block, make_blockvector)
5422         (end_symtab_get_static_block, augment_type_symtab, push_context)
5423         (buildsym_init): Update.
5424
5425 2018-07-20  Tom Tromey  <tom@tromey.com>
5426
5427         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5428         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5429         members.
5430         (pending_addrmap, pending_addrmap_obstack)
5431         (pending_addrmap_interesting): Remove.
5432         (scoped_free_pendings, record_block_range, make_blockvector)
5433         (prepare_for_building, reset_symtab_globals, buildsym_init):
5434         Update.
5435
5436 2018-07-20  Tom Tromey  <tom@tromey.com>
5437
5438         * xcoffread.c (process_linenos): Update.
5439         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5440         * mdebugread.c (psymtab_to_symtab_1): Update.
5441         * dwarf2read.c (setup_type_unit_groups)
5442         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5443         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5444         * dbxread.c (process_one_symbol): Update.
5445         * coffread.c (coff_symtab_read, enter_linenos)
5446         (process_coff_symbol): Update.
5447         * buildsym.h (current_subfile): Don't declare.
5448         (get_current_subfile): Declare.
5449         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5450         member.
5451         (start_subfile, free_buildsym_compunit, push_subfile)
5452         (prepare_for_building, start_symtab): Update.
5453         (get_current_subfile): New function.
5454
5455 2018-07-20  Tom Tromey  <tom@tromey.com>
5456
5457         * coffread.c (coff_symtab_read): Update.
5458         * xcoffread.c (read_xcoff_symtab): Update.
5459         * dwarf2read.c (new_symbol): Update.
5460         (read_func_scope, read_lexical_block_scope): Update.
5461         * dbxread.c (process_one_symbol): Update.
5462         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5463         (outermost_context_p): Remove macro.
5464         (outermost_context_p, get_current_context_stack)
5465         (get_context_stack_depth): Declare.
5466         (pop_context): Return struct context_stack.
5467         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5468         member.
5469         (context_stack_size): Remove.
5470         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5471         (prepare_for_building, end_symtab_get_static_block)
5472         (augment_type_symtab, push_context): Update.
5473         (pop_context): Return struct context_stack.
5474         (outermost_context_p, get_current_context_stack)
5475         (get_context_stack_depth): New functions.
5476         (buildsym_init): Update.
5477
5478 2018-07-20  Tom Tromey  <tom@tromey.com>
5479
5480         * rust-exp.y: Now a pure parser.  Update all rules.
5481         (%union): Move earlier.
5482         (current_parser, work_obstack): Remove globals.
5483         (rust_parser, ~rust_parser): Update.
5484         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5485         lex_character, lex_number, lex_string, lex_identifier,
5486         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5487         convert_name, convert_params_to_expression,
5488         convert_ast_to_expression, ast_basic_type, ast_operation,
5489         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5490         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5491         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5492         ast_array_type, ast_slice_type, ast_reference_type,
5493         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5494         (rust_parse): Update.
5495         (rustyyerror, rustyylex): Add parser parameter.
5496         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5497         (rust_lex_stringish_test, rust_lex_test_sequence)
5498         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5499         (rust_lex_test_push_back, rust_lex_tests): Update.
5500
5501 2018-07-19  Pedro Alves  <palves@redhat.com>
5502
5503         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5504         gdb::unique_xmalloc_ptr.
5505         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5506         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5507         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5508         copy-initialization.
5509         * guile/scm-pretty-print.c (ppscm_print_children): Use
5510         gdb::unique_xmalloc_ptr instead of cleanups.
5511         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5512         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5513         gdb::unique_xmalloc_ptr.
5514         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5515         Adjust to use gdb::unique_xmalloc_ptr.
5516         * guile/scm-utils.c (extract_arg): Adjust.
5517         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5518         gdb::unique_xmalloc_ptr instead of a cleanup.
5519
5520 2018-07-19  Tom Tromey  <tom@tromey.com>
5521
5522         * utils.c (do_value_free_to_mark)
5523         (make_cleanup_value_free_to_mark): Remove.
5524         * utils.h (make_cleanup_value_free_to_mark): Remove.
5525
5526 2018-07-19  Pedro Alves  <palves@redhat.com>
5527
5528         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5529         forwarding reference.
5530
5531 2018-07-18  Pedro Alves  <palves@redhat.com>
5532
5533         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5534         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5535         cleanup.
5536
5537 2018-07-18  Pedro Alves  <palves@redhat.com>
5538
5539         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5540         exceptions.
5541         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5542         (gdbscm_wrap): New.
5543         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5544         directly instead of a cleanup.
5545         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5546         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5547         (vlscm_binop_gdbthrow): New, factored out from ...
5548         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5549         (vlscm_rich_compare): Use gdbscm_wrap.
5550         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5551         instead of a cleanup.
5552         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5553         cleanup.
5554         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5555         Use xfree directly instead of a cleanup.
5556         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5557         Adjust to use gdbscm_wrap and scoped_value_mark.
5558         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5559         (gdbscm_value_address, gdbscm_value_dereference)
5560         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5561         scoped_value_mark.
5562         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5563         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5564         scoped_value_mark.
5565         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5566         gdbscm_wrap and scoped_value_mark.
5567         (gdbscm_value_to_string): Use xfree directly instead of a
5568         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5569         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5570         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5571         scoped_value_mark.
5572         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5573         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5574         scoped_value_mark.
5575         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5576         gdbscm_wrap.
5577
5578 2018-07-18  Tom de Vries  <tdevries@suse.de>
5579
5580         * findvar.c (default_read_var_value): Also resolve dynamic type for
5581         LOC_OPTIMIZED_OUT vars.
5582
5583 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5584
5585         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5586         decoding.
5587
5588 2018-07-17  Tom Tromey  <tom@tromey.com>
5589
5590         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5591         (compute_enum_list, pascm_set_param_value_x)
5592         (gdbscm_parameter_value): Update.
5593         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5594         (gdbscm_scm_to_host_string): Update.
5595         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5596         Update.
5597         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5598         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5599         * guile/scm-string.c (gdbscm_scm_to_string): Return
5600         unique_xmalloc_ptr.
5601         (gdbscm_scm_to_host_string): Likewise.
5602
5603 2018-07-17  Tom Tromey  <tom@tromey.com>
5604
5605         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5606         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5607         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5608         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5609         unique_xmalloc_ptr.
5610
5611 2018-07-17  Tom Tromey  <tom@tromey.com>
5612
5613         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5614         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5615         Update.
5616         * guile/scm-cmd.c (cmdscm_function): Update.
5617         * guile/scm-pretty-print.c
5618         (ppscm_print_exception_unless_memory_error): Update.
5619         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5620         Return unique_xmalloc_ptr.
5621
5622 2018-07-17  Tom Tromey  <tom@tromey.com>
5623
5624         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5625         Use string_printf.
5626
5627 2018-07-17  Jim Wilson  <jimw@sifive.com>
5628
5629         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5630         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5631         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5632         unecessary braces after EF_RISCV_RVC test.  Delete call to
5633         set_gdbarch_decr_pc_after_break.
5634
5635         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5636         RISCV_LAST_FP_REGNUM + 1.
5637         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5638
5639 2018-07-17  Tom Tromey  <tom@tromey.com>
5640
5641         * configure.ac: Remove --disable-gdbcli.
5642         * configure: Rebuild.
5643         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5644         (SUBDIR_CLI_CFLAGS): Remove.
5645         (SFILES): Use SUBDIR_CLI_SRCS.
5646         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5647
5648 2018-07-17  Tom Tromey  <tom@tromey.com>
5649
5650         PR gdb/18624:
5651         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5652
5653 2018-07-16  Jim Wilson  <jimw@sifive.com>
5654
5655         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5656
5657 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5658
5659         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5660         variable.
5661         (libunwind_frame_sniffer): Likewise.
5662         (libunwind_frame_prev_register): Likewise.
5663         (libunwind_sigtramp_frame_sniffer): Likewise.
5664         * ia64-tdep.c (ia64_access_reg): Likewise.
5665         (ia64_access_rse_reg): Likewise.
5666         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5667         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5668
5669 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5670
5671         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5672
5673 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5674
5675         * remote-sim.c (gdbsim_target::close,
5676         gdbsim_target::mourn_inferior): Remove unused variables.
5677
5678 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5679
5680         * ia64-tdep.c (ktab_buf): New global.
5681         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5682         (get_kernel_table): Adjust.
5683
5684 2018-07-16  Tom Tromey  <tom@tromey.com>
5685
5686         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5687         * dwarf2read.c (using_directives, new_symbol): Use
5688         outermost_context_p.
5689         * dbxread.c (process_one_symbol): Use outermost_context_p.
5690         * coffread.c (coff_symtab_read): Use outermost_context_p.
5691
5692 2018-07-16  Tom Tromey  <tom@tromey.com>
5693
5694         * dwarf2read.c (using_directives, read_func_scope)
5695         (read_lexical_block_scope): Update.
5696         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5697         * buildsym.h (local_using_directives, global_using_directives):
5698         Don't declare.
5699         (get_local_using_directives, set_local_using_directives)
5700         (get_global_using_directives): Declare.
5701         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5702         m_global_using_directives>: New members.
5703         (finish_block_internal, prepare_for_building)
5704         (reset_symtab_globals, end_symtab_get_static_block)
5705         (push_context): Update.
5706         (get_local_using_directives, set_local_using_directives)
5707         (get_global_using_directives): New functions.
5708         (buildsym_init): Update.
5709
5710 2018-07-16  Tom Tromey  <tom@tromey.com>
5711
5712         * xcoffread.c (xcoff_initial_scan): Don't call
5713         free_pending_blocks.
5714         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5715         * buildsym.h (class scoped_free_pendings): Add constructor.
5716         (free_pending_blocks): Don't declare.
5717         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5718         (free_pending_blocks): Now static.
5719
5720 2018-07-16  Tom Tromey  <tom@tromey.com>
5721
5722         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5723         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5724         member.
5725         (struct subfile_stack): Remove.
5726         (subfile_stack): Remove.
5727         (push_subfile, pop_subfile, buildsym_init): Update.
5728
5729 2018-07-16  Tom Tromey  <tom@tromey.com>
5730
5731         * buildsym.c (push_subfile): Use gdb_assert.
5732         (pop_subfile): Use gdb_assert.
5733
5734 2018-07-16  Tom Tromey  <tom@tromey.com>
5735
5736         * buildsym.h (merge_symbol_lists): Remove.
5737         * buildsym.c (merge_symbol_lists): Remove.
5738
5739 2018-07-16  Tom Tromey  <tom@tromey.com>
5740
5741         * stabsread.c (scan_file_globals): Update comment.
5742         * stabsread.h (scan_file_globals): Move from buildsym.h.
5743         * buildsym.h (scan_file_globals): Move to stabsread.h.
5744
5745 2018-07-16  Tom Tromey  <tom@tromey.com>
5746
5747         * xcoffread.c (xcoff_new_init): Update.
5748         * mipsread.c (mipscoff_new_init): Update.
5749         * mdebugread.c (mdebug_build_psymtabs): Update.
5750         * elfread.c (elf_new_init): Update.
5751         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5752         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5753         * buildsym.h (buildsym_new_init): Don't declare.
5754         * buildsym.c (buildsym_new_init): Remove.
5755
5756 2018-07-16  Tom Tromey  <tom@tromey.com>
5757
5758         * stabsread.h (within_function): Move from buildsym.h.
5759         * stabsread.c (start_stabs): Clear within_function.
5760         * coffread.c (coff_start_symtab): Clear within_function.
5761         * buildsym.h (within_function): Move to stabsread.h.
5762         * buildsym.c (prepare_for_building): Update.
5763
5764 2018-07-16  Tom Tromey  <tom@tromey.com>
5765
5766         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5767         * dwarf2read.c (dwarf2_start_symtab): Don't set
5768         processing_gcc_compilation.
5769         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5770
5771 2018-07-16  Tom Tromey  <tom@tromey.com>
5772
5773         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5774         (next_symbol_text_func): Move from buildsym.h.
5775         * stabsread.c (hashname): Move from buildsym.c.
5776         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5777         (next_symbol_text_func, hashname): Move to stabsread.h.
5778         * buildsym.c: Don't include bcache.h
5779         (hashname): Move to stasbread.c.
5780
5781 2018-07-16  Tom Tromey  <tom@tromey.com>
5782
5783         * buildsym.h (context_stack_size): Don't declare.
5784         * buildsym.c (context_stack_size): New global.
5785
5786 2018-07-16  Tom Tromey  <tom@tromey.com>
5787
5788         * dbxread.c (processing_acc_compilation): New global.
5789         * buildsym.h (processing_acc_compilation): Don't declare.
5790
5791 2018-07-16  Tom Tromey  <tom@tromey.com>
5792
5793         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5794         * dbxread.c (read_ofile_symtab): Update.
5795         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5796         * buildsym.h (last_source_start_addr): Remove.
5797         (set_last_source_start_addr, get_last_source_start_addr):
5798         Declare.
5799         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5800         parameter.
5801         (struct buildsym_compunit) <m_last_source_start_addr>: New
5802         member.
5803         (prepare_for_building): Remove start_addr parameter.
5804         (start_symtab, restart_symtab, end_symtab_get_static_block)
5805         (end_symtab_with_blockvector): Update.
5806         (set_last_source_start_addr, get_last_source_start_addr): New
5807         functions.
5808
5809 2018-07-16  Tom Tromey  <tom@tromey.com>
5810
5811         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5812         member.
5813         (have_line_numbers): Remove.
5814         (record_line, prepare_for_building, end_symtab_get_static_block)
5815         (augment_type_symtab): Update.
5816
5817 2018-07-16  Tom Tromey  <tom@tromey.com>
5818
5819         * buildsym.c (~buildsym_compunit): Free the macro table.
5820         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5821         methods.
5822         <m_pending_macros>: New member.
5823         (pending_macros): Remove.
5824         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5825         (reset_symtab_globals, end_symtab_get_static_block)
5826         (end_symtab_with_blockvector, augment_type_symtab)
5827         (buildsym_init): Update.
5828
5829 2018-07-16  Tom Tromey  <tom@tromey.com>
5830
5831         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5832         parameter.
5833         (buildsym_compunit::set_last_source_file): New method.
5834         <m_last_source_file>: New member.
5835         (prepare_for_building): Remove "name" parameter.
5836         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5837         (last_source_file): Remove.
5838         (set_last_source_file, get_last_source_file): Update.
5839
5840 2018-07-16  Tom Tromey  <tom@tromey.com>
5841
5842         * buildsym.c (prepare_for_building): Add assert.
5843
5844 2018-07-16  Tom Tromey  <tom@tromey.com>
5845
5846         * buildsym.c (~buildsym_compunit): Update.
5847         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5848         (start_subfile, patch_subfile_names)
5849         (end_symtab_with_blockvector): Update.
5850
5851 2018-07-16  Tom Tromey  <tom@tromey.com>
5852
5853         * buildsym.c (struct buildsym_compunit): Add constructor,
5854         destructor, initializers.
5855         (start_buildsym_compunit): Remove.
5856         (free_buildsym_compunit): Use "delete".
5857         (start_symtab, restart_symtab): Use "new".
5858
5859 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5860
5861         * symfile.c (set_objfile_default_section_offset): Remove struct
5862         keyword.
5863
5864 2018-07-14  Stafford Horne  <shorne@gmail.com>
5865
5866         * (Responsible Maintainers): Add myself as or1k maintainer.
5867
5868 2018-07-13  Tom Tromey  <tom@tromey.com>
5869
5870         * symfile.c (set_objfile_default_section_offset): Use extra braces
5871         around initializer.
5872
5873 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5874
5875         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5876         non-branching basr.
5877
5878 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5879
5880         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5881         unittests/cli-utils-selftests.c
5882         * unittests/cli-utils-selftests.c: New file.
5883
5884 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5885
5886         * NEWS: Mention new commands. Mention change to 'thread apply'.
5887
5888 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5889
5890         * thread.c (thr_try_catch_cmd): New function.
5891         (thread_apply_all_command): Handle qcs flags.
5892         (thread_apply_command): Handle qcs flags.
5893         (taas_command): New function.
5894         (tfaas_command): New function.
5895         (_initialize_thread): Update to setup the new commands 'taas
5896         and 'tfaas'. Change doc string for 'thread apply'.
5897
5898 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5899
5900         * stack.c: (trailing_outermost_frame): New function, mostly
5901         extracted from backtrace_command_1.
5902         (leading_innermost_frame): New function.
5903         (backtrace_command_1): Update to call trailing_outermost_frame.
5904         (frame_apply_command_count): New function.
5905         (frame_apply_level_command): New function.
5906         (frame_apply_all_command): New function.
5907         (frame_apply_command): New function.
5908         (faas_command): New function.
5909         (frame_cmd_list): New variable.
5910         (_initialize_stack): Update to setup the new commands 'frame apply'
5911         and 'faas'.
5912
5913 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5914
5915         * cli-utils.c (number_or_range_parser::get_number): Only handle
5916         numbers or convenience var as numbers.
5917         (parse_flags): New function.
5918         (parse_flags_qcs): New function.
5919         (number_or_range_parser::finished): Ensure parsing end is detected
5920         before end of string.
5921         * cli-utils.h (parse_flags): New function.
5922         (parse_flags_qcs): New function.
5923         (number_or_range_parser): Remove m_finished bool.
5924         (number_or_range_parser::skip_range): Set m_in_range to false.
5925
5926 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5927
5928         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5929         on Windows.
5930
5931 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5932             Jan Kratochvil  <jan.kratochvil@redhat.com>
5933             Paul Fertser  <fercerpav@gmail.com>
5934             Tsutomu Seki  <sekiriki@gmail.com>
5935             Pedro Alves  <palves@redhat.com>
5936
5937         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5938         'unittests/parse-connection-spec-selftests.c'.
5939         (COMMON_SFILES): Add 'common/netstuff.c'.
5940         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5941         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5942         * common/netstuff.c: New file.
5943         * common/netstuff.h: New file.
5944         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5945         (wait_for_connect): Update comment.  New parameter
5946         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5947         Use 'sock' directly instead of 'scb->fd'.
5948         (try_connect): New function, with code from 'net_open'.
5949         (net_open): Rewrite main loop to deal with multiple
5950         sockets/addresses.  Handle IPv6-style hostnames; implement
5951         support for IPv6 connections.
5952         * unittests/parse-connection-spec-selftests.c: New file.
5953
5954 2018-07-11  Pedro Alves  <palves@redhat.com>
5955
5956         PR gdb/23377
5957         * remote.c (remote_target::remote_detach_pid): Call
5958         set_current_process.
5959
5960 2018-07-11  Pedro Alves  <palves@redhat.com>
5961
5962         * h8300-tdep.c (h8300_gdbarch_init): Remove
5963         set_gdbarch_ecoff_reg_to_regnum calls.
5964
5965 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5966
5967         PR c++/23373
5968         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5969         offsets/sizes for static members of a class/struct.
5970
5971 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5972
5973         * target-descriptions.c (tdesc_register_bitsize): Rename.
5974         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5975         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5976         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5977
5978 2018-07-10  Tom Tromey  <tom@tromey.com>
5979
5980         * breakpoint.c (moribund_locations): Now static and a
5981         std::vector.
5982         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5983         (build_bpstat_chain, update_global_location_list)
5984         (breakpoint_retire_moribund): Update.
5985         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5986         VEC.
5987
5988 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5989
5990         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5991         (riscv_register_reggroup_p): Use new function, remove unneeded
5992         parenthesis.
5993         (riscv_push_dummy_call): Extend assert to compare against xlen or
5994         flen based on register type.
5995
5996 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5997
5998         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5999
6000 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6001
6002         * remote.c (show_hardware_watchpoint_limit): New function.
6003         (show_hardware_watchpoint_length_limit): New function.
6004         (show_hardware_breakpoint_limit): New function.
6005         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6006         where appropriate, update help text.
6007
6008 2018-07-09  Tom Tromey  <tom@tromey.com>
6009
6010         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6011         (CLIBS): Don't mention NAT_CLIBS.
6012
6013 2018-07-09  Tom Tromey  <tom@tromey.com>
6014
6015         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6016         (LIBGDB_OBS, clean mostlyclean): Update.
6017         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6018
6019 2018-07-09  Tom Tromey  <tom@tromey.com>
6020
6021         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6022         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6023         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6024
6025 2018-07-09  Tom Tromey  <tom@tromey.com>
6026
6027         * Makefile.in (ALLDEPFILES): Remove exec.c.
6028         (COMMON_OBS): Remove exec.o.
6029         (COMMON_SFILES): Add exec.c.
6030
6031 2018-07-09  Tom Tromey  <tom@tromey.com>
6032
6033         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6034
6035 2018-07-09  Tom Tromey  <tom@tromey.com>
6036
6037         * Makefile.in (clean mostlyclean): Remove stamp-version.
6038         (version.c): Depend on stamp-version.
6039         (stamp-version): New rule, from version.c rule.
6040
6041 2018-07-09  Tom Tromey  <tom@tromey.com>
6042
6043         * Makefile.in (init.c): Depend on stamp-init.
6044         (stamp-init): New rule, from init.c rule.
6045         (clean mostlyclean): Remove stamp-init.
6046
6047 2018-07-09  Tom Tromey  <tom@tromey.com>
6048
6049         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6050         SUBDIR_GCC_COMPILE_SRCS.
6051
6052 2018-07-09  Tom Tromey  <tom@tromey.com>
6053
6054         * Makefile.in (init.c): Remove some unused sed rules.
6055
6056 2018-07-09  Tom Tromey  <tom@tromey.com>
6057
6058         * Makefile.in (TSOBS): Remove.
6059         (INIT_FILES): Update.
6060         (LIBGDB_OBS): Update.
6061         (COMMON_SFILES): Add inflow.c.
6062         (SFILES): Remove inflow.c.
6063
6064 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6065
6066         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6067
6068 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6069
6070         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6071         get_saveloc_name, is_signal_frame_name, step_name,
6072         init_remote_name, create_addr_space_name,
6073         destroy_addr_space_name, search_unwind_table_name,
6074         find_dyn_list_name): Constify.
6075
6076 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6077
6078         * darwin-nat.c (darwin_pthread_kill): New function.
6079         (darwin_resume_thread): Use darwin_pthread_kill.
6080
6081 2018-07-05  Tom de Vries  <tdevries@suse.de>
6082
6083         * macroexp.c (macro_buffer) <operator=>: New member function.
6084
6085 2018-07-04  Tom Tromey  <tom@tromey.com>
6086
6087         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6088
6089 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6090
6091         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6092         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6093         * maint.c: Likewise.
6094         * top.c: Likewise.
6095
6096 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6097
6098         * NEWS: Create a new section for the next release branch.
6099         Rename the section of the current branch, now that it has
6100         been cut.
6101
6102 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6103
6104         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6105         * version.in: Bump version to 8.2.50.DATE-git.
6106
6107 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6108             Pedro Alves  <palves@redhat.com>
6109
6110         * linux-nat.c (linux_init_ptrace): Rename to ...
6111         (linux_init_ptrace_procfs): ... this.  Call
6112         linux_proc_init_warnings.
6113         (linux_nat_target::post_attach)
6114         (linux_nat_target::post_startup_inferior): Adjust.
6115         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6116         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6117
6118 2018-07-04  Tom de Vries  <tdevries@suse.de>
6119
6120         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6121         check ...
6122         (read_comp_unit_head): ... here.
6123
6124 2018-07-03  Tom Tromey  <tom@tromey.com>
6125
6126         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6127         (stop_tracing, tstatus_command)
6128         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6129         (print_one_static_tracepoint_marker): Update.
6130         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6131         std::vector.
6132         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6133         VEC.
6134         (all_tracepoints, static_tracepoints_here): Return std::vector.
6135
6136 2018-07-03  Tom Tromey  <tom@tromey.com>
6137
6138         * common/ptid.c (ptid_equal): Remove.
6139         * common/ptid.h (ptid_equal): Don't declare.
6140         * ada-tasks.c: Update.
6141         * breakpoint.c: Update.
6142         * common/agent.c: Update.
6143         * corelow.c: Update.
6144         * darwin-nat-info.c: Update.
6145         * darwin-nat.c: Update.
6146         * dcache.c: Update.
6147         * dtrace-probe.c: Update.
6148         * dummy-frame.c: Update.
6149         * fbsd-nat.c: Update.
6150         * frame.c: Update.
6151         * gdbthread.h: Update.
6152         * gnu-nat.c: Update.
6153         * go32-nat.c: Update.
6154         * inf-loop.c: Update.
6155         * inf-ptrace.c: Update.
6156         * infcall.c: Update.
6157         * infcmd.c: Update.
6158         * inflow.c: Update.
6159         * infrun.c: Update.
6160         * linux-fork.c: Update.
6161         * linux-nat.c: Update.
6162         * linux-thread-db.c: Update.
6163         * mi/mi-cmd-var.c: Update.
6164         * mi/mi-interp.c: Update.
6165         * mi/mi-main.c: Update.
6166         * nto-procfs.c: Update.
6167         * ppc-linux-tdep.c: Update.
6168         * procfs.c: Update.
6169         * python/py-inferior.c: Update.
6170         * python/py-record-btrace.c: Update.
6171         * python/py-record.c: Update.
6172         * ravenscar-thread.c: Update.
6173         * regcache.c: Update.
6174         * remote-sim.c: Update.
6175         * remote.c: Update.
6176         * sol-thread.c: Update.
6177         * solib.c: Update.
6178         * target.c: Update.
6179         * tui/tui-stack.c: Update.
6180         * varobj.c: Update.
6181         * windows-nat.c: Update.
6182         * windows-tdep.c: Update.
6183
6184 2018-07-03  Tom Tromey  <tom@tromey.com>
6185
6186         * common/ptid.c (ptid_match): Remove.
6187         * common/ptid.h (ptid_match): Don't declare.
6188         * fbsd-nat.c: Update.
6189         * infcmd.c: Update.
6190         * infrun.c: Update.
6191         * linux-nat.c: Update.
6192         * record-btrace.c: Update.
6193         * regcache.c: Update.
6194         * remote.c: Update.
6195
6196 2018-07-03  Tom Tromey  <tom@tromey.com>
6197
6198         * common/ptid.c (ptid_tid_p): Remove.
6199         * common/ptid.h (ptid_tid_p): Don't declare.
6200         * sol-thread.c: Update.
6201
6202 2018-07-03  Tom Tromey  <tom@tromey.com>
6203
6204         * common/ptid.c (ptid_lwp_p): Remove.
6205         * common/ptid.h (ptid_lwp_p): Don't declare.
6206         * fbsd-nat.c: Update.
6207         * linux-nat.c: Update.
6208         * nat/linux-procfs.c: Update.
6209         * nat/x86-linux-dregs.c: Update.
6210         * sol-thread.c: Update.
6211
6212 2018-07-03  Tom Tromey  <tom@tromey.com>
6213
6214         * common/ptid.c (ptid_is_pid): Remove.
6215         * common/ptid.h (ptid_is_pid): Don't declare.
6216         * infrun.c: Update.
6217         * linux-nat.c: Update.
6218         * mi/mi-interp.c: Update.
6219         * remote.c: Update.
6220         * thread.c: Update.
6221
6222 2018-07-03  Tom Tromey  <tom@tromey.com>
6223
6224         * common/ptid.c (ptid_get_tid): Remove.
6225         * common/ptid.h (ptid_get_tid): Don't declare.
6226         * ada-tasks.c: Update.
6227         * aix-thread.c: Update.
6228         * bsd-uthread.c: Update.
6229         * darwin-nat.c: Update.
6230         * fbsd-nat.c: Update.
6231         * i386-darwin-nat.c: Update.
6232         * infrun.c: Update.
6233         * linux-tdep.c: Update.
6234         * nto-procfs.c: Update.
6235         * ppc-ravenscar-thread.c: Update.
6236         * python/py-infthread.c: Update.
6237         * ravenscar-thread.c: Update.
6238         * sol-thread.c: Update.
6239         * sparc-ravenscar-thread.c: Update.
6240         * windows-nat.c: Update.
6241
6242 2018-07-03  Tom Tromey  <tom@tromey.com>
6243
6244         * common/ptid.c (ptid_get_lwp): Remove.
6245         * common/ptid.h (ptid_get_lwp): Don't declare.
6246         * aarch64-linux-nat.c: Update.
6247         * ada-tasks.c: Update.
6248         * aix-thread.c: Update.
6249         * amd64-linux-nat.c: Update.
6250         * arm-linux-nat.c: Update.
6251         * corelow.c: Update.
6252         * fbsd-nat.c: Update.
6253         * fbsd-tdep.c: Update.
6254         * gnu-nat.c: Update.
6255         * i386-cygwin-tdep.c: Update.
6256         * i386-gnu-nat.c: Update.
6257         * i386-linux-nat.c: Update.
6258         * ia64-linux-nat.c: Update.
6259         * inf-ptrace.c: Update.
6260         * infrun.c: Update.
6261         * linux-fork.c: Update.
6262         * linux-nat.c: Update.
6263         * linux-tdep.c: Update.
6264         * linux-thread-db.c: Update.
6265         * mips-linux-nat.c: Update.
6266         * nat/aarch64-linux-hw-point.c: Update.
6267         * nat/aarch64-linux.c: Update.
6268         * nat/linux-btrace.c: Update.
6269         * nat/linux-osdata.c: Update.
6270         * nat/linux-procfs.c: Update.
6271         * nat/x86-linux-dregs.c: Update.
6272         * obsd-nat.c: Update.
6273         * ppc-fbsd-nat.c: Update.
6274         * ppc-linux-nat.c: Update.
6275         * procfs.c: Update.
6276         * python/py-infthread.c: Update.
6277         * ravenscar-thread.c: Update.
6278         * remote.c: Update.
6279         * s390-linux-nat.c: Update.
6280         * sol-thread.c: Update.
6281         * sol2-tdep.c: Update.
6282         * spu-linux-nat.c: Update.
6283         * x86-linux-nat.c: Update.
6284         * xtensa-linux-nat.c: Update.
6285
6286 2018-07-03  Tom Tromey  <tom@tromey.com>
6287
6288         * common/ptid.c (ptid_get_pid): Remove.
6289         * common/ptid.h (ptid_get_pid): Don't declare.
6290         * aarch64-linux-nat.c: Update.
6291         * ada-lang.c: Update.
6292         * aix-thread.c: Update.
6293         * alpha-bsd-nat.c: Update.
6294         * amd64-fbsd-nat.c: Update.
6295         * amd64-linux-nat.c: Update.
6296         * arm-linux-nat.c: Update.
6297         * arm-nbsd-nat.c: Update.
6298         * auxv.c: Update.
6299         * break-catch-syscall.c: Update.
6300         * breakpoint.c: Update.
6301         * bsd-uthread.c: Update.
6302         * corelow.c: Update.
6303         * ctf.c: Update.
6304         * darwin-nat.c: Update.
6305         * fbsd-nat.c: Update.
6306         * fbsd-tdep.c: Update.
6307         * gcore.c: Update.
6308         * gnu-nat.c: Update.
6309         * hppa-nbsd-nat.c: Update.
6310         * hppa-obsd-nat.c: Update.
6311         * i386-fbsd-nat.c: Update.
6312         * ia64-linux-nat.c: Update.
6313         * inf-ptrace.c: Update.
6314         * infcmd.c: Update.
6315         * inferior.c: Update.
6316         * inferior.h: Update.
6317         * inflow.c: Update.
6318         * infrun.c: Update.
6319         * linux-fork.c: Update.
6320         * linux-nat.c: Update.
6321         * linux-tdep.c: Update.
6322         * linux-thread-db.c: Update.
6323         * m68k-bsd-nat.c: Update.
6324         * mi/mi-interp.c: Update.
6325         * mi/mi-main.c: Update.
6326         * mips-linux-nat.c: Update.
6327         * mips-nbsd-nat.c: Update.
6328         * mips64-obsd-nat.c: Update.
6329         * nat/aarch64-linux-hw-point.c: Update.
6330         * nat/aarch64-linux.c: Update.
6331         * nat/linux-btrace.c: Update.
6332         * nat/linux-osdata.c: Update.
6333         * nat/linux-procfs.c: Update.
6334         * nat/x86-linux-dregs.c: Update.
6335         * nto-procfs.c: Update.
6336         * obsd-nat.c: Update.
6337         * ppc-linux-nat.c: Update.
6338         * ppc-nbsd-nat.c: Update.
6339         * ppc-obsd-nat.c: Update.
6340         * proc-service.c: Update.
6341         * procfs.c: Update.
6342         * python/py-inferior.c: Update.
6343         * python/py-infthread.c: Update.
6344         * ravenscar-thread.c: Update.
6345         * record.c: Update.
6346         * remote-sim.c: Update.
6347         * remote.c: Update.
6348         * rs6000-nat.c: Update.
6349         * s390-linux-nat.c: Update.
6350         * sh-nbsd-nat.c: Update.
6351         * sol-thread.c: Update.
6352         * sparc-nat.c: Update.
6353         * sparc64-tdep.c: Update.
6354         * spu-linux-nat.c: Update.
6355         * spu-tdep.c: Update.
6356         * target-debug.h: Update.
6357         * target.c: Update.
6358         * thread.c: Update.
6359         * tid-parse.c: Update.
6360         * tracefile-tfile.c: Update.
6361         * vax-bsd-nat.c: Update.
6362         * windows-nat.c: Update.
6363         * x86-linux-nat.c: Update.
6364         * x86-nat.c: Update.
6365
6366 2018-07-03  Tom Tromey  <tom@tromey.com>
6367
6368         * common/ptid.c (pid_to_ptid): Remove.
6369         * common/ptid.h (pid_to_ptid): Don't declare.
6370         * aix-thread.c: Update.
6371         * arm-linux-nat.c: Update.
6372         * common/ptid.c: Update.
6373         * common/ptid.h: Update.
6374         * corelow.c: Update.
6375         * ctf.c: Update.
6376         * darwin-nat.c: Update.
6377         * fbsd-nat.c: Update.
6378         * fork-child.c: Update.
6379         * gnu-nat.c: Update.
6380         * go32-nat.c: Update.
6381         * inf-ptrace.c: Update.
6382         * infcmd.c: Update.
6383         * inferior.c: Update.
6384         * infrun.c: Update.
6385         * linux-fork.c: Update.
6386         * linux-nat.c: Update.
6387         * nat/aarch64-linux-hw-point.c: Update.
6388         * nat/fork-inferior.c: Update.
6389         * nat/x86-linux-dregs.c: Update.
6390         * nto-procfs.c: Update.
6391         * obsd-nat.c: Update.
6392         * procfs.c: Update.
6393         * progspace.c: Update.
6394         * remote.c: Update.
6395         * rs6000-nat.c: Update.
6396         * s390-linux-nat.c: Update.
6397         * sol-thread.c: Update.
6398         * spu-linux-nat.c: Update.
6399         * target.c: Update.
6400         * top.c: Update.
6401         * tracefile-tfile.c: Update.
6402         * windows-nat.c: Update.
6403
6404 2018-07-03  Tom Tromey  <tom@tromey.com>
6405
6406         * common/ptid.h (ptid_build): Don't declare.
6407         * common/ptid.c (ptid_build): Remove.
6408         * aix-thread.c: Update.
6409         * bsd-kvm.c: Update.
6410         * bsd-uthread.c: Update.
6411         * common/agent.c: Update.
6412         * common/ptid.c: Update.
6413         * common/ptid.h: Update.
6414         * corelow.c: Update.
6415         * darwin-nat.c: Update.
6416         * fbsd-nat.c: Update.
6417         * gnu-nat.c: Update.
6418         * linux-fork.c: Update.
6419         * linux-nat.c: Update.
6420         * linux-thread-db.c: Update.
6421         * nat/linux-osdata.c: Update.
6422         * nat/linux-procfs.c: Update.
6423         * nto-procfs.c: Update.
6424         * obsd-nat.c: Update.
6425         * proc-service.c: Update.
6426         * procfs.c: Update.
6427         * ravenscar-thread.c: Update.
6428         * remote-sim.c: Update.
6429         * remote.c: Update.
6430         * sol-thread.c: Update.
6431         * target.c: Update.
6432         * windows-nat.c: Update.
6433
6434 2018-07-03  Tom Tromey  <tom@tromey.com>
6435
6436         * infrun.c (follow_exec): Use exit_inferior_silent.
6437         * inferior.c (exit_inferior_num_silent): Remove.
6438         * inferior.h (exit_inferior_num_silent): Don't declare.
6439
6440 2018-07-03  Tom Tromey  <tom@tromey.com>
6441
6442         PR cli/23340:
6443         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6444         inferior_ptid on error.
6445
6446 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6447             Simon Marchi  <simon.marchi@polymtl.ca>
6448
6449         PR tdep/8282
6450         * disasm.h (gdb_disassembler): Add
6451         `m_disassembler_options_holder'. member
6452         * disasm.c (get_all_disassembler_options): New function.
6453         (gdb_disassembler::gdb_disassembler): Use it.
6454         (gdb_buffered_insn_length_init_dis): Likewise.
6455         (gdb_buffered_insn_length): Adjust accordingly.
6456         (set_disassembler_options): Handle options with arguments.
6457         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6458         line if showing options with descriptions.
6459         (disassembler_options_completer): Adapt to using the
6460         `disasm_options_and_args_t' structure.
6461         * mips-tdep.c (mips_disassembler_options): New variable.
6462         (mips_disassembler_options_o32): Likewise.
6463         (mips_disassembler_options_n32): Likewise.
6464         (mips_disassembler_options_n64): Likewise.
6465         (gdb_print_insn_mips): Don't set `disassembler_options'.
6466         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6467         functions.
6468         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6469         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6470         `gdbarch_disassembler_options_implicit' and
6471         `gdbarch_valid_disassembler_options'.
6472         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6473         `disasm_options_and_args_t' structure.
6474         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6475         method.
6476         (valid_disassembler_options): Switch from `disasm_options_t' to
6477         the `disasm_options_and_args_t' structure.
6478         * NEWS: Document `set disassembler-options' support for the MIPS
6479         target.
6480         * gdbarch.h: Regenerate.
6481         * gdbarch.c: Regenerate.
6482
6483 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6484
6485         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6486
6487 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6488
6489         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6490         parameter in call to amd64_target_description.
6491         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6492         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6493         (amd64fbsd_init_abi): Likewise.
6494         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6495         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6496         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6497         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6498
6499 2018-06-29  Pedro Alves  <palves@redhat.com>
6500
6501         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6502         "segments" parameter.
6503         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6504         (_initialize_amd64_tdep): Update call to
6505         amd64_create_target_description.
6506         (amd64_target_description): Add "segments" parameter.  Adjust
6507         the implementation to use it.
6508         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6509         call to amd64_create_target_description.
6510         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6511         * gdb/arch/amd64.h (amd64_create_target_description): Add
6512         "segments" register.
6513         * gdb/arch/amd64.c (amd64_create_target_description): Add
6514         "segments" parameter.  Call create_feature_i386_64bit_segments
6515         only if SEGMENTS is true.
6516         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6517         call to amd64_create_target_description.
6518
6519 2018-06-29  Pedro Alves  <palves@redhat.com>
6520
6521         * thread.c (thread_target_id_str): New, factored out from ...
6522         (print_thread_info_1): ... here.  Use it to compute the max
6523         "Target Id" column width.
6524
6525 2018-06-29  Pedro Alves  <palves@redhat.com>
6526
6527         * remote.c (remote_target::extra_thread_info): Delete
6528         'display_buf' and 'n' locals.  from the cache, regardless of
6529         packet mechanims is in use.  Use cache for qThreadExtra and qP
6530         methods too.
6531
6532 2018-06-29  Pedro Alves  <palves@redhat.com>
6533
6534         * blockframe.c (find_pc_sect_containing_function): New function.
6535         * breakpoint.c (print_breakpoint_location): Don't call
6536         find_pc_sect_function.
6537         * linespec.c (create_sals_line_offset): Record the location's
6538         symbol in the sal.
6539         * linespec.c (convert_address_location_to_sals): Fill in sal's
6540         symbol with find_pc_sect_containing_function.
6541         * symtab.c (find_function_start_sal): Rename to ...
6542         (find_function_start_sal_1): ... this.
6543         (find_function_start_sal): Reimplement as wrapper around
6544         find_function_start_sal_1, and use
6545         find_pc_sect_containing_function to fill in the sal's symbol.
6546         (find_function_start_sal(symbol*, bool)): Adjust.
6547         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6548         comments.
6549         (find_pc_sect_containing_function): Declare.
6550
6551 2018-06-29  Pedro Alves  <palves@redhat.com>
6552
6553         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6554         true if the the location has no symbol.
6555
6556 2018-06-28  Tom Tromey  <tom@tromey.com>
6557
6558         * NEWS: Mention --enable-codesign.
6559         * silent-rules.mk (ECHO_SIGN): New variable.
6560         * configure.ac: Add --enable-codesign.
6561         * configure: Rebuild.
6562         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6563         (gdb$(EXEEXT)): Optionally invoke codesign.
6564
6565 2018-06-28  Pedro Alves  <palves@redhat.com>
6566
6567         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6568         comments.
6569         (switch_to_thread_no_regs): Adjust comment.
6570         * infcmd.c (stop_pc): Delete.
6571         (post_create_inferior, info_program_command): Replace references
6572         to stop_pc with references to thread_info->suspend.stop_pc.
6573         * inferior.h (stop_pc): Delete declaration.
6574         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6575         (handle_inferior_event_1, handle_signal_stop)
6576         (process_event_stop_test, keep_going_stepped_thread)
6577         (handle_step_into_function, handle_step_into_function_backward)
6578         (print_stop_location): Replace references to stop_pc with
6579         references to thread_info->suspend.stop_pc.
6580         (struct infcall_suspend_state) <stop_pc>: Delete field.
6581         (save_infcall_suspend_state, restore_infcall_suspend_state):
6582         Remove references to inf_stat->stop_pc.
6583         * linux-fork.c (fork_load_infrun_state): Likewise.
6584         * record-btrace.c (record_btrace_set_replay): Likewise.
6585         * record-full.c (record_full_goto_entry): Likewise.
6586         * remote.c (print_one_stopped_thread): Likewise.
6587         * target.c (target_resume): Extend comment.
6588         * thread.c (set_executing_thread): New.
6589         (set_executing): Use it.
6590         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6591         Remove references to stop_pc.
6592
6593 2018-06-28  Pedro Alves  <palves@redhat.com>
6594
6595         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6596         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6597
6598 2018-06-28  Tom Tromey  <tom@tromey.com>
6599
6600         * coffread.c (coff_symfile_finish): Update.
6601         * xcoffread.c (xcoff_symfile_finish): Update.
6602         * elfread.c (elf_symfile_finish): Update.
6603         * symfile.h (dwarf2_free_objfile): Don't declare.
6604         * dwarf2read.c (_initialize_dwarf2_read): Use
6605         register_objfile_data_with_cleanup.
6606         (dwarf2_free_objfile): Now static.  Change signature.
6607
6608 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6609
6610         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6611         option "-o" to add-symbol-file-load to add an offset to each
6612         section's load address.
6613         * symfile.c (set_objfile_default_section_offset): New function.
6614
6615 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6616
6617         * symfile.c (add_symbol_file_command): Make sure that sections
6618         with the same name are sorted in the same order.
6619
6620 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6621
6622         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6623         require the second argument.  If omitted, load sections at the
6624         addresses specified in the file.
6625
6626 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6627
6628         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6629         (_initialize_symfile): Add option "-o" to symbol-file to add an
6630         offset to each section of the symbol file.
6631
6632 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6633
6634         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6635
6636 2018-06-27  Tom Tromey  <tom@tromey.com>
6637
6638         * stack.c (_initialize_stack): Update "func" help text.
6639
6640 2018-06-27  Tom Tromey  <tom@tromey.com>
6641
6642         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6643         std::vector.
6644         (unwind_infopy_str, pyuw_create_unwind_info)
6645         (unwind_infopy_add_saved_register, pyuw_sniffer)
6646         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6647         Update.
6648         (struct saved_reg): Add constructor.
6649         <value>: Now a gdbpy_ref<>.
6650
6651 2018-06-27  Tom Tromey  <tom@tromey.com>
6652
6653         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6654
6655 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6656
6657         * gdb-gdb.py.in: Format using autopep8.
6658
6659 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6660
6661         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6662         (type_lookup_function): Recognize CORE_ADDR values.
6663
6664 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6665
6666         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6667         print tag_name.
6668
6669 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6670
6671         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6672         <__lt__>: Add.
6673
6674 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6675
6676         * gdb-gdb.py: Move to...
6677         * gdb-gdb.py.in: ... here.
6678         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6679         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6680         dependencies.
6681         (distclean): Remove gdb-gdb.py when cleaning.
6682         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6683         * configure: Re-generate.
6684
6685 2018-06-27  Pedro Alves  <palves@redhat.com>
6686
6687         * proc-service.c (get_ps_regcache): New.
6688         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6689         (ps_lsetfpregs): Use it.
6690
6691 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6692
6693         PR gdb/21695
6694         * dwarf2read.c (lnp_state_machine::check_line_address): Update
6695         declaration.
6696         (dwarf_decode_lines_1): Adjust.
6697
6698 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6699
6700         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6701         override.
6702         <info_proc>: Likewise.
6703
6704 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6705
6706         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6707         to windows_fetch_one_register, and only handle the case of
6708         fetching one register.  Move the code that reloads the context
6709         and iterates over all registers if R is negative to...
6710         (windows_nat_target::fetch_registers): ... here.
6711         (do_windows_store_inferior_registers): Rename to
6712         windows_store_one_register, and only handle the case of storing
6713         one register.  Move the code that handles the case where r is
6714         negative to...
6715         (windows_nat_target::store_registers) ... here.
6716
6717 2018-06-26  Tom Tromey  <tom@tromey.com>
6718
6719         PR rust/22574:
6720         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6721         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6722         Update.
6723         (rust_internal_print_type): Add podata parameter.
6724         (rust_print_type): Update.
6725
6726 2018-06-26  Tom Tromey  <tom@tromey.com>
6727
6728         * typeprint.h (struct print_offset_data) <update, finish,
6729         maybe_print_hole>: New methods.
6730         <indentation>: New constant.
6731         * typeprint.c (print_offset_data::indentation): Define.
6732         (print_offset_data::maybe_print_hole, print_offset_data::update)
6733         (print_offset_data::finish): Move from c-typeprint.c and rename.
6734         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6735         (print_spaces_filtered_with_print_options): Update.
6736         (c_print_type_union_field_offset, maybe_print_hole)
6737         (c_print_type_struct_field_offset): Move to typeprint.c and
6738         rename.
6739         (c_type_print_base_struct_union): Update.
6740
6741 2018-06-25  Pedro Alves  <palves@redhat.com>
6742
6743         * gdbthread.h (thread_info_ref, delete_thread)
6744         (delete_thread_silent, first_thread_of_inferior)
6745         (any_thread_of_inferior, switch_to_thread)
6746         (enable_thread_stack_temporaries)
6747         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6748         (get_last_thread_stack_temporary)
6749         (value_in_thread_stack_temporaries, can_access_registers_thread):
6750         Spell out "struct thread_info" instead of just "thread_info".
6751         * inferior.h (notice_new_inferior): Likewise.
6752
6753 2018-06-25  Pedro Alves  <palves@redhat.com>
6754
6755         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6756         pass thread_info pointer to delete_thread.
6757         (windows_nat_target::detach): Pass inferior pointer to
6758         detach_inferior.
6759         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6760         delete_thread.
6761         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6762         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6763         and pass a thread_info pointer to delete_thread.
6764         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6765         pass thread_info pointer to delete_thread.
6766         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6767         delete_thread_silent call.
6768         * procfs.c (procfs_target::detach): Pass inferior pointer to
6769         detach_inferior.
6770         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6771         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6772         delete_thread_silent call.
6773         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6774         pass thread_info pointer to delete_thread.
6775         (windows_nat_target::detach): Pass inferior pointer to
6776         delete_inferior.
6777
6778 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6779
6780         * regcache.c (readable_regcache::read_part): Fix asserts.
6781         (reg_buffer::raw_collect_part): New function.
6782         (regcache::write_part): Fix asserts.
6783         (reg_buffer::raw_supply_part): New function.
6784         (regcache::transfer_regset_register): New helper function.
6785         (regcache::transfer_regset): Call new functions.
6786         (regcache_supply_regset): Use gdb_byte*.
6787         (regcache::supply_regset): Likewise.
6788         (regcache_collect_regset): Likewise.
6789         (regcache::collect_regset): Likewise.
6790         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6791         (reg_buffer::raw_supply_part): Likewise.
6792         (regcache::transfer_regset_register): Likewise.
6793         (regcache::transfer_regset): Use gdb_byte*.
6794
6795 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6796
6797         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6798
6799 2018-06-21  Pedro Alves  <palves@redhat.com>
6800
6801         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6802         instead of a ptid_t.  All callers adjusted.
6803         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6804         adjusted.
6805         (print_ada_task_info, display_current_task_id, task_command_1):
6806         Adjust.
6807         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6808         inferior_thread.
6809         (breakpoint_kind): Adjust.
6810         (remove_breakpoints_pid): Rename to ...
6811         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6812         pointer.  All callers adjusted.
6813         (bpstat_clear_actions): Use inferior_thread.
6814         (get_bpstat_thread): New.
6815         (bpstat_do_actions): Use it.
6816         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6817         to take a thread_info pointer.  All callers adjusted.
6818         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6819         (breakpoint_re_set_thread): Use inferior_thread.
6820         * breakpoint.h (struct inferior): Forward declare.
6821         (bpstat_stop_status): Update.
6822         (remove_breakpoints_pid): Delete.
6823         (remove_breakpoints_inf): New.
6824         * bsd-uthread.c (bsd_uthread_target::wait)
6825         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6826         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6827         (maint_btrace_packet_history_cmd)
6828         (maint_btrace_clear_packet_history_cmd): Adjust.
6829         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6830         inferior_thread.
6831         * cli/cli-interp.c: Include "inferior.h".
6832         * common/refcounted-object.h (struct
6833         refcounted_object_ref_policy): New.
6834         * compile/compile-object-load.c: Include gdbthread.h.
6835         (store_regs): Use inferior_thread.
6836         * corelow.c (core_target::close): Use current_inferior.
6837         (core_target_open): Adjust to use first_thread_of_inferior and use
6838         the current inferior.
6839         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6840         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6841         <thread>: ... this new field.  All references adjusted.
6842         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6843         Take a thread_info pointer instead of a ptid_t.
6844         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6845         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6846         thread_info pointer instead of a ptid_t.
6847         * elfread.c: Include "inferior.h".
6848         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6849         Use inferior_thread.
6850         * eval.c (evaluate_subexp): Likewise.
6851         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6852         inferior_thread.
6853         * gdb_proc_service.h (struct thread_info): Forward declare.
6854         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6855         <thread>: ... this new field.  All references adjusted.
6856         * gdbarch.h, gdbarch.c: Regenerate.
6857         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6858         'thread' parameter.  All implementations and callers adjusted.
6859         * gdbthread.h (thread_info) <set_running>: New method.
6860         (delete_thread, delete_thread_silent): Take a thread_info pointer
6861         instead of a ptid.
6862         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6863         (first_thread_of_process): Delete, replaced by ...
6864         (first_thread_of_inferior): ... this new function.  All callers
6865         adjusted.
6866         (any_live_thread_of_process): Delete, replaced by ...
6867         (any_live_thread_of_inferior): ... this new function.  All callers
6868         adjusted.
6869         (switch_to_thread, switch_to_no_thread): Declare.
6870         (is_executing): Delete.
6871         (enable_thread_stack_temporaries): Update comment.
6872         <enable_thread_stack_temporaries>: Take a thread_info pointer
6873         instead of a ptid_t.  Incref the thread.
6874         <~enable_thread_stack_temporaries>: Decref the thread.
6875         <m_ptid>: Delete
6876         <m_thr>: New.
6877         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6878         (get_last_thread_stack_temporary)
6879         (value_in_thread_stack_temporaries, can_access_registers_thread):
6880         Take a thread_info pointer instead of a ptid_t.  All callers
6881         adjusted.
6882         * infcall.c (get_call_return_value): Use inferior_thread.
6883         (run_inferior_call): Work with thread pointers instead of ptid_t.
6884         (call_function_by_hand_dummy): Work with thread pointers instead
6885         of ptid_t.  Use thread_info_ref.
6886         * infcmd.c (proceed_thread_callback): Access thread's state
6887         directly.
6888         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6889         access thread's state directly.
6890         (continue_command): Use inferior_thread.
6891         (info_program_command): Use find_thread_ptid and access thread
6892         state directly.
6893         (proceed_after_attach_callback): Use thread state directly.
6894         (notice_new_inferior): Take a thread_info pointer instead of a
6895         ptid_t.  All callers adjusted.
6896         (exit_inferior): Take an inferior pointer instead of a pid.  All
6897         callers adjusted.
6898         (exit_inferior_silent): New.
6899         (detach_inferior): Delete.
6900         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6901         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6902         (detach_inferior_command, kill_inferior_command): Use
6903         find_inferior_id instead of valid_gdb_inferior_id and
6904         gdb_inferior_id_to_pid.
6905         (inferior_command): Use inferior and thread pointers.
6906         * inferior.h (struct thread_info): Forward declare.
6907         (notice_new_inferior): Take a thread_info pointer instead of a
6908         ptid_t.  All callers adjusted.
6909         (detach_inferior): Delete declaration.
6910         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6911         instead of a pid.  All callers adjusted.
6912         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6913         (valid_gdb_inferior_id): Delete.
6914         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6915         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6916         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6917         ...
6918         <inf>: ... this new field.
6919         <step_ptid>: Delete, replaced by ...
6920         <step_thread>: ... this new field.
6921         (get_displaced_stepping_state): Take an inferior pointer instead
6922         of a pid.  All callers adjusted.
6923         (displaced_step_in_progress_any_inferior): Adjust.
6924         (displaced_step_in_progress_thread): Take a thread pointer instead
6925         of a ptid_t.  All callers adjusted.
6926         (displaced_step_in_progress, add_displaced_stepping_state): Take
6927         an inferior pointer instead of a pid.  All callers adjusted.
6928         (get_displaced_step_closure_by_addr): Adjust.
6929         (remove_displaced_stepping_state): Take an inferior pointer
6930         instead of a pid.  All callers adjusted.
6931         (displaced_step_prepare_throw, displaced_step_prepare)
6932         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6933         All callers adjusted.
6934         (start_step_over): Adjust.
6935         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6936         displaced step queue.
6937         (do_target_resume): Adjust.
6938         (fetch_inferior_event): Use inferior_thread.
6939         (context_switch, get_inferior_stop_soon): Take an
6940         execution_control_state pointer instead of a ptid_t.  All callers
6941         adjusted.
6942         (switch_to_thread_cleanup): Delete.
6943         (stop_all_threads): Use scoped_restore_current_thread.
6944         * inline-frame.c: Include "gdbthread.h".
6945         (inline_state) <inline_state>: Take a thread pointer instead of a
6946         ptid_t.  All callers adjusted.
6947         <ptid>: Delete, replaced by ...
6948         <thread>: ... this new field.
6949         (find_inline_frame_state): Take a thread pointer instead of a
6950         ptid_t.  All callers adjusted.
6951         (skip_inline_frames, step_into_inline_frame)
6952         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6953         pointer instead of a ptid_t.  All callers adjusted.
6954         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6955         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6956         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6957         pointers directly.
6958         * linux-nat.c (get_detach_signal): Likewise.
6959         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6960         (thread_db_notice_clone): Adjust.
6961         (thread_db_find_new_threads_silently)
6962         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6963         a thread pointer instead of a ptid_t.  All callers adjusted.
6964         * mi/mi-cmd-var.c: Include "inferior.h".
6965         (mi_cmd_var_update_iter): Update to use thread pointers.
6966         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6967         inferior directly.
6968         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6969         out to ...
6970         (mi_output_running): ... this new function.
6971         (mi_on_resume_1): Adjust to use it.
6972         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6973         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6974         directly.
6975         (interrupt_thread_callback): : Adjust to use thread and inferior
6976         pointers.
6977         * proc-service.c: Include "gdbthread.h".
6978         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6979         * progspace-and-thread.c: Include "inferior.h".
6980         * progspace.c: Include "inferior.h".
6981         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6982         hold a reference to an inferior_object.
6983         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6984         inferior_thread.
6985         * python/py-inferior.c (struct inferior_object): Give the type a
6986         tag name instead of a typedef.
6987         (python_on_normal_stop): No need to check if the current thread is
6988         listed.
6989         (inferior_to_inferior_object): Change return type to
6990         inferior_object.  All callers adjusted.
6991         (find_thread_object): Delete, bits factored out to ...
6992         (thread_to_thread_object): ... this new function.
6993         * python/py-infthread.c (create_thread_object): Use
6994         inferior_to_inferior_object.
6995         (thpy_is_stopped): Use thread pointer directly.
6996         (gdbpy_selected_thread): Use inferior_thread.
6997         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6998         field, replaced with ...
6999         <thread>: ... this new field.  All users adjusted.
7000         (btpy_insn_or_gap_new): Drop const.
7001         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7002         callers adjusted.
7003         * python/py-record.c: Include "gdbthread.h".
7004         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7005         a ptid_t.  All callers adjusted.
7006         (gdbpy_current_recording): Use inferior_thread.
7007         * python/py-record.h (recpy_record_object) <ptid>: Delete
7008         field, replaced with ...
7009         <thread>: ... this new field.  All users adjusted.
7010         (recpy_element_object) <ptid>: Delete
7011         field, replaced with ...
7012         <thread>: ... this new field.  All users adjusted.
7013         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7014         a ptid_t.  All callers adjusted.
7015         * python/py-threadevent.c: Include "gdbthread.h".
7016         (get_event_thread): Use thread_to_thread_object.
7017         * python/python-internal.h (struct inferior_object): Forward
7018         declare.
7019         (find_thread_object, find_inferior_object): Delete declarations.
7020         (thread_to_thread_object, inferior_to_inferior_object): New
7021         declarations.
7022         * record-btrace.c: Include "inferior.h".
7023         (require_btrace_thread): Use inferior_thread.
7024         (record_btrace_frame_sniffer)
7025         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7026         (get_thread_current_frame): Use scoped_restore_current_thread and
7027         switch_to_thread.
7028         (get_thread_current_frame): Use thread pointer directly.
7029         (record_btrace_replay_at_breakpoint): Use thread's inferior
7030         pointer directly.
7031         * record-full.c: Include "inferior.h".
7032         * regcache.c: Include "gdbthread.h".
7033         (get_thread_arch_regcache): Use the inferior's address space
7034         directly.
7035         (get_thread_regcache, registers_changed_thread): New.
7036         * regcache.h (get_thread_regcache(thread_info *thread)): New
7037         overload.
7038         (registers_changed_thread): New.
7039         (remote_target) <remote_detach_1>: Swap order of parameters.
7040         (remote_add_thread): <remote_add_thread>: Return the new thread.
7041         (get_remote_thread_info(ptid_t)): New overload.
7042         (remote_target::remote_notice_new_inferior): Use thread pointers
7043         directly.
7044         (remote_target::process_initial_stop_replies): Use
7045         thread_info::set_running.
7046         (remote_target::remote_detach_1, remote_target::detach)
7047         (extended_remote_target::detach): Adjust.
7048         * stack.c (frame_show_address): Use inferior_thread.
7049         * target-debug.h (target_debug_print_thread_info_pp): New.
7050         * target-delegates.c: Regenerate.
7051         * target.c (default_thread_address_space): Delete.
7052         (memory_xfer_partial_1): Use current_inferior.
7053         (target_detach): Use current_inferior.
7054         (target_thread_address_space): Delete.
7055         (generic_mourn_inferior): Use current_inferior.
7056         * target.h (struct target_ops) <thread_address_space>: Delete.
7057         (target_thread_address_space): Delete.
7058         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7059         pointers directly.
7060         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7061         thread pointer instead of a ptid_t.  Adjust all callers.
7062         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7063         (first_thread_of_process): Delete, replaced by ...
7064         (first_thread_of_inferior): ... this new function.  All callers
7065         adjusted.
7066         (any_thread_of_process): Rename to ...
7067         (any_thread_of_inferior): ... this, and take an inferior pointer.
7068         (any_live_thread_of_process): Rename to ...
7069         (any_live_thread_of_inferior): ... this, and take an inferior
7070         pointer.
7071         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7072         (value_in_thread_stack_temporaries)
7073         (get_last_thread_stack_temporary): Take a thread pointer instead
7074         of a ptid_t.  Adjust all callers.
7075         (thread_info::set_running): New.
7076         (validate_registers_access): Use inferior_thread.
7077         (can_access_registers_ptid): Rename to ...
7078         (can_access_registers_thread): ... this, and take a thread
7079         pointer.
7080         (print_thread_info_1): Adjust to compare thread pointers instead
7081         of ptids.
7082         (switch_to_no_thread, switch_to_thread): Make extern.
7083         (scoped_restore_current_thread::~scoped_restore_current_thread):
7084         Use m_thread pointer directly.
7085         (scoped_restore_current_thread::scoped_restore_current_thread):
7086         Use inferior_thread.
7087         (thread_command): Use thread pointer directly.
7088         (thread_num_make_value_helper): Use inferior_thread.
7089         * top.c (execute_command): Use inferior_thread.
7090         * tui/tui-interp.c: Include "inferior.h".
7091         * varobj.c (varobj_create): Use inferior_thread.
7092         (value_of_root_1): Use find_thread_global_id instead of
7093         global_thread_id_to_ptid.
7094
7095 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7096
7097         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7098         possible.
7099         (regcache::write_part): Likewise.
7100         (readable_regcache::cooked_read_part): Update comment.
7101         (readable_regcache::cooked_write_part): Likewise.
7102         * regcache.h: (readable_regcache::read_part): Likewise.
7103         (regcache::write_part): Likewise.
7104
7105 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7106             Dirk Schubert  <dirk.schubert@arm.com>
7107
7108         * aarch64-linux-nat.c (post_attach): New.
7109         (aarch64_linux_nat_target::post_attach): Override post_attach to
7110         record the number of hardware debug registers.
7111
7112 2018-06-20  Tom Tromey  <tom@tromey.com>
7113
7114         * python/py-param.c (add_setshow_generic): Make parameters const.
7115         (parmpy_init): Update.
7116
7117 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7118
7119         * regcache.h (regcache_cooked_read_ftype): Rename to...
7120         (register_read_ftype): ...this, change type to function_view.
7121         (class reg_buffer) <save>: Remove src parameter.
7122         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7123         parameter non-const in first overload.  Remove src parameter in
7124         second overload.
7125         * regcache.c (do_cooked_read): Remove.
7126         (readonly_detached_regcache::readonly_detached_regcache): Make
7127         parameter non-const, adjust call to other constructor.
7128         (reg_buffer::save): Remove src parameter.
7129         * frame.c (do_frame_register_read): Remove.
7130         (frame_save_as_regcache): Use lambda function.
7131         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7132         parameter to ppu2spu_data *.
7133         (ppu2spu_sniffer): Use lambda function.
7134
7135 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7136
7137         * record-full.c (record_full_target::insert_breakpoint): Remove
7138         "struct" keyword, add const.
7139
7140 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7141
7142         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7143         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7144         * configure.ac: Remove AC_PREREQ, add missing quoting.
7145         * gnulib/configure.ac: Modernize usage of
7146         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7147         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7148         (AUTOMAKE_VERSION): Bump to 1.15.1.
7149         * configure: Re-generate.
7150         * config.in: Re-generate.
7151         * aclocal.m4: Re-generate.
7152         * gnulib/aclocal.m4: Re-generate.
7153         * gnulib/config.in: Re-generate.
7154         * gnulib/configure: Re-generate.
7155         * gnulib/import/Makefile.in: Re-generate.
7156
7157 2018-06-19  Pedro Alves  <palves@redhat.com>
7158
7159         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7160         (lookup_minimal_symbol_by_pc_section): ... here with
7161         gdb_assert_not_reached added.
7162
7163 2018-06-19  Pedro Alves  <palves@redhat.com>
7164
7165         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7166         parameter with a block parameter.  Compare location's block symbol
7167         with the frame's block instead of addresses.
7168         (skip_inline_frames): Pass the current block instead of the
7169         frame's address.  Break out as soon as we determine the frame
7170         should not be skipped.
7171
7172 2018-06-18  Tom Tromey  <tom@tromey.com>
7173
7174         * solib-aix.c (solib_aix_get_section_offsets): Return
7175         unique_xmalloc_ptr.
7176         (solib_aix_solib_create_inferior_hook): Update.
7177
7178 2018-06-18  Tom Tromey  <tom@tromey.com>
7179
7180         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7181
7182 2018-06-18  Tom Tromey  <tom@tromey.com>
7183
7184         * solib-frv.c (frv_relocate_main_executable): Use
7185         unique_xmalloc_ptr.
7186         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7187         unique_xmalloc_ptr.
7188
7189 2018-06-18  Tom Tromey  <tom@tromey.com>
7190
7191         * objfiles.h (inhibit_section_map_updates): Update.
7192         (resume_section_map_updates, resume_section_map_updates_cleanup):
7193         Remove.
7194         * solib-svr4.c (svr4_handle_solib_event): Update.
7195         * objfiles.c (inhibit_section_map_updates): Return
7196         scoped_restore_tmpl<int>.
7197         (resume_section_map_updates, resume_section_map_updates_cleanup):
7198         Remove.
7199
7200 2018-06-18  Tom Tromey  <tom@tromey.com>
7201
7202         * valprint.h (read_string): Update.
7203         * valprint.c (read_string): Change type of "buffer".
7204         (val_print_string): Update.
7205         * python/py-value.c (valpy_string): Update.
7206         * language.h (struct language_defn) <la_get_string>: Change
7207         type of "buffer".
7208         (default_get_string, c_get_string): Update.
7209         * language.c (default_get_string): Change type of "buffer".
7210         * guile/scm-value.c (gdbscm_value_to_string): Update.
7211         * c-lang.c (c_get_string): Change type of "buffer".
7212
7213 2018-06-18  Tom Tromey  <tom@tromey.com>
7214
7215         * ser-mingw.c (struct pipe_state_destroyer): New.
7216         (pipe_state_up): New typedef.
7217         (cleanup_pipe_state): Remove.
7218         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7219
7220 2018-06-18  Tom Tromey  <tom@tromey.com>
7221
7222         * rust-lang.h (rust_yyerror): Don't declare.
7223         * rust-lang.c (rust_language_defn): Update.
7224         * rust-exp.y (yyerror): Now static.
7225         * parse.c (parse_exp_in_context_1): Update.
7226         * p-lang.h (p_yyerror): Don't declare.
7227         * p-lang.c (p_language_defn): Update.
7228         * p-exp.y (yyerror): Now static.
7229         * opencl-lang.c (opencl_language_defn): Update.
7230         * objc-lang.c (objc_language_defn): Update.
7231         * m2-lang.h (m2_yyerror): Don't declare.
7232         * m2-lang.c (m2_language_defn): Update.
7233         * m2-exp.y (yyerror): Now static.
7234         * language.h (struct language_defn) <la_error>: Remove.
7235         * language.c (unk_lang_error): Remove.
7236         (unknown_language_defn, auto_language_defn): Remove.
7237         * go-lang.h (go_yyerror): Don't declare.
7238         * go-lang.c (go_language_defn): Update.
7239         * go-exp.y (yyerror): Now static.
7240         * f-lang.h (f_yyerror): Don't declare.
7241         * f-lang.c (f_language_defn): Update.
7242         * f-exp.y (yyerror): Now static.
7243         * d-lang.h (d_yyerror): Don't declare.
7244         * d-lang.c (d_language_defn): Update.
7245         * d-exp.y (yyerror): Now static.
7246         * c-lang.h (c_yyerror): Don't declare.
7247         * c-lang.c (c_language_defn, cplus_language_defn)
7248         (asm_language_defn, minimal_language_defn): Update.
7249         * c-exp.y (yyerror): Now static.
7250         * ada-lang.h (ada_yyerror): Don't declare.
7251         * ada-lang.c (ada_language_defn): Update.
7252         * ada-exp.y (yyerror): Now static.
7253
7254 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7255
7256         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7257         (store_sveregs_to_thread): Likewise.
7258         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7259         (aarch64_linux_store_inferior_registers): Likewise.
7260         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7261         function.
7262         (aarch64_sve_regs_copy_to_regcache): Likewise.
7263         (aarch64_sve_regs_copy_from_regcache): Likewise.
7264         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7265         declaration.
7266         (aarch64_sve_regs_copy_to_regcache): Likewise.
7267         (aarch64_sve_regs_copy_from_regcache): Likewise.
7268         (sve_context): Structure from Linux headers.
7269         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7270         (SVE_SIG_ZREG_SIZE): Likewise.
7271         (SVE_SIG_PREG_SIZE): Likewise.
7272         (SVE_SIG_FFR_SIZE): Likewise.
7273         (SVE_SIG_REGS_OFFSET): Likewise.
7274         (SVE_SIG_ZREGS_OFFSET): Likewise.
7275         (SVE_SIG_ZREG_OFFSET): Likewise.
7276         (SVE_SIG_ZREGS_SIZE): Likewise.
7277         (SVE_SIG_PREGS_OFFSET): Likewise.
7278         (SVE_SIG_PREG_OFFSET): Likewise.
7279         (SVE_SIG_PREGS_SIZE): Likewise.
7280         (SVE_SIG_FFR_OFFSET): Likewise.
7281         (SVE_SIG_REGS_SIZE): Likewise.
7282         (SVE_SIG_CONTEXT_SIZE): Likewise.
7283         (SVE_PT_REGS_MASK): Likewise.
7284         (SVE_PT_REGS_FPSIMD): Likewise.
7285         (SVE_PT_REGS_SVE): Likewise.
7286         (SVE_PT_VL_INHERIT): Likewise.
7287         (SVE_PT_VL_ONEXEC): Likewise.
7288         (SVE_PT_REGS_OFFSET): Likewise.
7289         (SVE_PT_FPSIMD_OFFSET): Likewise.
7290         (SVE_PT_FPSIMD_SIZE): Likewise.
7291         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7292         (SVE_PT_SVE_PREG_SIZE): Likewise.
7293         (SVE_PT_SVE_FFR_SIZE): Likewise.
7294         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7295         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7296         (__SVE_SIG_TO_PT): Likewise.
7297         (SVE_PT_SVE_OFFSET): Likewise.
7298         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7299         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7300         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7301         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7302         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7303         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7304         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7305         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7306         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7307         (SVE_PT_SVE_SIZE): Likewise.
7308         (SVE_PT_SIZE): Likewise.
7309         (HAS_SVE_STATE): New define.
7310
7311 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7312
7313         * nat/aarch64-sve-linux-sigcontext.h: New file.
7314         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7315         new files.
7316         (SVE_VQ_MIN): Likewise.
7317         (SVE_VQ_MAX): Likewise.
7318         (SVE_VL_MIN): Likewise.
7319         (SVE_VL_MAX): Likewise.
7320         (SVE_NUM_ZREGS): Likewise.
7321         (SVE_NUM_PREGS): Likewise.
7322         (sve_vl_valid): Likewise.
7323         (struct user_sve_header): Likewise.
7324
7325 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7326             Richard Bunt <Richard.Bunt@arm.com>
7327
7328         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7329         was requested by GDB.
7330
7331 2018-06-15  Tom de Vries  <tdevries@suse.de>
7332
7333         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7334
7335 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7336
7337         * gnulib/update-gnulib.sh: Print expected versions of
7338         autoconf/aclocal.
7339
7340 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7341
7342         * arch-utils.c (default_type_align): Use type_length_units.
7343         * gdbtypes.c (type_align): Use type_length_units.
7344
7345 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7346
7347         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7348         of 'define' command.
7349
7350 2018-06-14  Tom de Vries  <tdevries@suse.de>
7351
7352         PR cli/22573
7353         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7354         get_no_prettyformat_print_options.
7355
7356 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7357
7358         * sparc-nat.h: Include target.h.
7359         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7360         <fetch_registers>: Remove this argument in function call.
7361         <store_registers>: Remove this argument in function call, remove
7362         extra semicolon.
7363         <low_forget_process>: Call sparc64_forget_process instead of
7364         sparc_forget_process.
7365
7366 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7367
7368         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7369         (procfs_target::make_corefile_notes): Adjust to new
7370         target_read_alloc return type.
7371
7372 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7373             Stephen Roberts  <stephen.roberts@arm.com>
7374
7375         PR gdb/22882
7376         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7377         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7378         Move should_notify_stop local into more inner scope.
7379
7380 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7381             Stephen Roberts  <stephen.roberts@arm.com>
7382
7383         PR gdb/22882
7384         * infrun.c (resume_1): Add call to mark_async_event_handler.
7385
7386 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7387
7388         * infrun.c (do_target_wait): Change old version of $pc printed.
7389
7390 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7391
7392         * dwarf2read.c (read_index_from_section): Rename to...
7393         (read_gdb_index_from_section): ... this, update all callers.
7394         (dwarf2_read_index): Rename to...
7395         (dwarf2_read_gdb_index): ... this, update all callers.
7396
7397 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7398
7399         * hppa-linux-nat.c
7400         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7401         hppa_linux_nat_target::fetch_registers.
7402
7403 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7404
7405         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7406         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7407         (AARCH64_DWARF_SVE_FFR): Likewise.
7408         (AARCH64_DWARF_SVE_P0): Likewise.
7409         (AARCH64_DWARF_SVE_Z0): Likewise.
7410
7411 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7412
7413         * common/common-regcache.h (raw_compare): New function.
7414         * regcache.c (regcache::raw_compare): Likewise.
7415         * regcache.h (regcache::raw_compare): New declaration.
7416
7417 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7418
7419         * common/common-regcache.h (reg_buffer_common): New structure.
7420         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7421         (reg_buffer::raw_supply): Likewise.
7422         (reg_buffer::raw_supply_integer): Likewise.
7423         (reg_buffer::raw_supply_zeroed): Likewise.
7424         (reg_buffer::raw_collect): Likewise.
7425         (reg_buffer::raw_collect_integer): Likewise.
7426         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7427         (reg_buffer::raw_supply): Likewise.
7428         (reg_buffer::raw_supply_integer): Likewise.
7429         (reg_buffer::raw_supply_zeroed): Likewise.
7430         (reg_buffer::raw_collect): Likewise.
7431         (reg_buffer::raw_collect_integer): Likewise.
7432
7433 2018-06-10  Tom Tromey  <tom@tromey.com>
7434
7435         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7436         (class remote_state) <stop_reply_queue>: Now std::vector.
7437         (remote_state::~remote_state)
7438         (remote_target::stop_reply_queue_length): Update.
7439         (struct queue_iter_param, remove_child_of_pending_fork)
7440         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7441         (check_pending_event_prevents_wildcard_vcont_callback)
7442         (remove_stop_reply_for_inferior)
7443         (remove_stop_reply_of_remote_state)
7444         (remote_notif_remove_once_on_match)
7445         (stop_reply_match_ptid_and_ws)
7446         (remote_kill_child_of_pending_fork): Remove.
7447         (remote_target::remove_new_fork_children)
7448         (remote_target::check_pending_events_prevent_wildcard_vcont)
7449         (remote_target::discard_pending_stop_replies)
7450         (remote_target::discard_pending_stop_replies_in_queue)
7451         (remote_target::remote_notif_remove_queued_reply)
7452         (remote_target::queued_stop_reply)
7453         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7454         (remote_target::wait, remote_target::kill_new_fork_children)
7455         (remote_target::async): Update.
7456
7457 2018-06-10  Tom Tromey  <tom@tromey.com>
7458
7459         * record-full.c (record_full_arch_list_cleanups): Remove.
7460         (record_full_message): Use try/catch.
7461         (record_full_wait_cleanups): Remove.
7462         (record_full_wait_1): Use try/catch.
7463         (record_full_restore): Likewise.
7464
7465 2018-06-10  Tom Tromey  <tom@tromey.com>
7466
7467         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7468         declare VEC.  Add constructor.
7469         <in_target_beneath>: Now bool.
7470         (record_full_breakpoints): Now a std::vector, static.
7471         (record_full_sync_record_breakpoints)
7472         (record_full_init_record_breakpoints)
7473         (record_full_target::insert_breakpoint)
7474         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7475
7476 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7477
7478         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7479         * serial.c (serial_interface_lookup): Remove struct keyword.
7480
7481 2018-06-10  Tom Tromey  <tom@tromey.com>
7482
7483         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7484         method.
7485         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7486         a method.
7487         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7488         method.
7489         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7490         "beneath" as a method.
7491         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7492         Use "beneath" as a method.
7493
7494 2018-06-10  Tom Tromey  <tom@tromey.com>
7495
7496         * tracefile.c (struct trace_file_writer_deleter): New.
7497         <operator()>: Rename from trace_file_writer_xfree.
7498         (trace_file_writer_up): New typedef.
7499         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7500
7501 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7502
7503         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7504         <m_registers, m_register_status>: Change type to
7505         std::unique_ptr.
7506         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7507         XCNEWVEC.
7508
7509 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7510
7511         * common/common-regcache.h (enum register_status): Add
7512         underlying type "signed char".
7513         * regcache.h (reg_buffer) <m_register_status>: Change type to
7514         register_status *.
7515         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7516         register_status instead of signed char.
7517         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7518         (reg_buffer::get_register_status): Remove cast.
7519         (readable_regcache::raw_read): Remove cast.
7520         (readable_regcache::cooked_read): Remove cast.
7521
7522 2018-06-09  Tom Tromey  <tom@tromey.com>
7523
7524         * source.c (reverse_search_command, forward_search_command): Use
7525         scoped_fd.
7526
7527 2018-06-09  Tom Tromey  <tom@tromey.com>
7528
7529         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7530         (serial_ops_list): Now static, std::vector.
7531         (serial_interface_lookup, serial_add_interface): Update.
7532
7533 2018-06-09  Tom Tromey  <tom@tromey.com>
7534
7535         * dwarf2read.c (process_cu_includes): Update.
7536         (process_full_comp_unit): Update.
7537         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7538         std::vector.
7539
7540 2018-06-08  Paul Koning  <paul_koning@dell.com>
7541
7542         PR gdb/23252
7543
7544         * python/python.c (do_start_initialization):
7545         Avoid call to internal Python API.
7546         (init__gdb_module): New function.
7547
7548 2018-06-08  Gary Benson <gbenson@redhat.com>
7549
7550         * linux-thread-db.c (valprint.h): New include.
7551         (struct check_thread_db_info): New structure.
7552         (check_thread_db_on_load, tdb_testinfo): New static globals.
7553         (check_thread_db, check_thread_db_callback): New functions.
7554         (try_thread_db_load_1): Run integrity checks if requested.
7555         (maintenance_check_libthread_db): New function.
7556         (_initialize_thread_db): Register "maint check libthread-db"
7557         and "maint set/show check-libthread-db".
7558         * NEWS: Mention the above new commands.
7559
7560 2018-06-08  Tom Tromey  <tom@tromey.com>
7561
7562         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7563         now a method.
7564
7565 2018-06-08  Tom Tromey  <tom@tromey.com>
7566
7567         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7568
7569 2018-06-08  Tom Tromey  <tom@tromey.com>
7570
7571         * common/btrace-common.h (struct btrace_data): Add constructor,
7572         destructor, move assignment operator.
7573         <empty, clear, fini>: New methods.
7574         <format>: Initialize.
7575         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7576         (btrace_data_empty): Don't declare.
7577         * common/btrace-common.c (btrace_data_init): Remove.
7578         (btrace_data::fini): Rename from btrace_data_fini.
7579         (btrace_data::empty): Rename from btrace_data_empty.
7580         (btrace_data::clear): Rename from btrace_data_clear.  Return
7581         bool.
7582         * btrace.h (make_cleanup_btrace_data): Don't declare.
7583         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7584         (parse_xml_btrace): Update.
7585         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7586         (maint_btrace_clear_packet_history_cmd): Update.
7587
7588 2018-06-07  Pedro Alves  <palves@redhat.com>
7589
7590         * target.h (target_ops) <beneath>: Now a method.  All references
7591         updated.
7592         (class target_stack): New.
7593         * target.c (g_target_stack): New.
7594         (g_current_top_target): Delete.
7595         (current_top_target): Get the top target out of g_target_stack.
7596         (target_stack::push, target_stack::unpush): New.
7597         (push_target, unpush_target): Reimplement.
7598         (target_is_pushed): Reimplement in terms of g_target_stack.
7599         (target_ops::beneath, target_stack::find_beneath): New.
7600
7601 2018-06-07  Pedro Alves  <palves@redhat.com>
7602
7603         * target.h (find_target_beneath): Delete declaration.
7604         * target.c (find_target_beneath): Delete definition.
7605         * aix-thread.c: All callers of find_target_beneath adjusted to
7606         call target_ops::beneath instead.
7607         * bsd-uthread.c: Likewise.
7608         * linux-thread-db.c: Likewise.
7609         * ravenscar-thread.c: Likewise.
7610         * sol-thread.c: Likewise.
7611         * spu-multiarch.c: Likewise.
7612
7613 2018-06-07  Pedro Alves  <palves@redhat.com>
7614
7615         * target.h (target_ops) <beneath>: Now a method.  All references
7616         updated.
7617         (target_ops) <m_beneath>: New.
7618         * target.c (target_ops::beneath): New.
7619         * corelow.c: Adjust all references to target_ops::beneath.
7620         * linux-thread-db.c: Likewise.
7621         * make-target-delegates: Likewise.
7622         * record-btrace.c: Likewise.
7623         * record-full.c: Likewise.
7624         * remote.c: Likewise.
7625         * target.c: Likewise.
7626         * target-delegates.c: Regenerate.
7627
7628 2018-06-07  Pedro Alves  <palves@redhat.com>
7629
7630         * target.h (target_stack): Delete.
7631         (current_top_target): Declare function.
7632         * target.c (target_stack): Delete.
7633         (g_current_top_target): New.
7634         (current_top_target): New function.
7635         * auxv.c: Use current_top_target instead of target_stack
7636         throughout.
7637         * avr-tdep.c: Likewise.
7638         * breakpoint.c: Likewise.
7639         * corefile.c: Likewise.
7640         * elfread.c: Likewise.
7641         * eval.c: Likewise.
7642         * exceptions.c: Likewise.
7643         * frame.c: Likewise.
7644         * gdbarch-selftests.c: Likewise.
7645         * gnu-v3-abi.c: Likewise.
7646         * ia64-tdep.c: Likewise.
7647         * ia64-vms-tdep.c: Likewise.
7648         * infcall.c: Likewise.
7649         * infcmd.c: Likewise.
7650         * infrun.c: Likewise.
7651         * linespec.c: Likewise.
7652         * linux-tdep.c: Likewise.
7653         * minsyms.c: Likewise.
7654         * ppc-linux-nat.c: Likewise.
7655         * ppc-linux-tdep.c: Likewise.
7656         * procfs.c: Likewise.
7657         * regcache.c: Likewise.
7658         * remote.c: Likewise.
7659         * rs6000-tdep.c: Likewise.
7660         * s390-linux-nat.c: Likewise.
7661         * s390-tdep.c: Likewise.
7662         * solib-aix.c: Likewise.
7663         * solib-darwin.c: Likewise.
7664         * solib-dsbt.c: Likewise.
7665         * solib-spu.c: Likewise.
7666         * solib-svr4.c: Likewise.
7667         * solib-target.c: Likewise.
7668         * sparc-tdep.c: Likewise.
7669         * sparc64-tdep.c: Likewise.
7670         * spu-tdep.c: Likewise.
7671         * symfile.c: Likewise.
7672         * symtab.c: Likewise.
7673         * target-descriptions.c: Likewise.
7674         * target-memory.c: Likewise.
7675         * target.c: Likewise.
7676         * target.h: Likewise.
7677         * tracefile-tfile.c: Likewise.
7678         * tracepoint.c: Likewise.
7679         * valops.c: Likewise.
7680         * valprint.c: Likewise.
7681         * value.c: Likewise.
7682         * windows-tdep.c: Likewise.
7683         * mi/mi-main.c: Likewise.
7684
7685 2018-06-07  Tom Tromey  <tom@tromey.com>
7686
7687         * valprint.h (build_address_symbolic): Declare.
7688         * printcmd.c (print_address_symbolic): Update.
7689         (build_address_symbolic): Change "name" and "filename" to
7690         std::string.
7691         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7692         Update.
7693         * defs.h (build_address_symbolic): Remove declaration.
7694
7695 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7696
7697         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7698         (aarch64_vnv_type): Add function.
7699         (aarch64_pseudo_register_name): Add V regs for SVE.
7700         (aarch64_pseudo_register_type): Likewise.
7701         (aarch64_pseudo_register_reggroup_p): Likewise.
7702         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7703         (aarch64_pseudo_read_value): Add V regs for SVE.
7704         (aarch64_pseudo_write_2): Use V0 offset for SVE
7705         (aarch64_pseudo_write): Add V regs for SVE.
7706         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7707
7708 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7709
7710         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7711         (sve_vl_from_vq): Likewise.
7712
7713 2018-06-05  Tom Tromey  <tom@tromey.com>
7714
7715         * cli/cli-cmds.c (show_version): Update.
7716         * top.c (print_gdb_version): Add "interactive" parameter.
7717         Update.
7718         * main.c (captured_main_1): Update.
7719         * top.h (print_gdb_version): Add "interactive" parameter and a
7720         comment.
7721
7722 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7723
7724         * common/enum-flags.h: Add trailing semicolon to example in
7725         comment.
7726
7727 2018-06-05  Tom Tromey  <tom@tromey.com>
7728
7729         PR cli/12326:
7730         * NEWS: Add entry about pager.
7731         * utils.c (pagination_disabled_for_command): New global.
7732         (prompt_for_continue): Allow "c" response to prompt.
7733         (reinitialize_more_filter): Clear
7734         pagination_disabled_for_command.
7735         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7736
7737 2018-06-04  Tom Tromey  <tom@tromey.com>
7738
7739         * ada-lang.h (ada_lookup_symbol_list): Update.
7740         * ada-lang.c (resolve_subexp): Update.
7741         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7742         parameter.
7743         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7744         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7745         results parameter to std::vector.
7746         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7747         Update.
7748         * ada-exp.y (block_lookup): Update.
7749         (select_possible_type_sym): Change type of syms.  Remove nsyms
7750         parameter.
7751         (write_var_or_type, write_name_assoc): Update.
7752
7753 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7754
7755         * windows-nat.c (windows_nat_target::xfer_partial): Return
7756         TARGET_XFER_E_IO if we need to delegate to the target beneath
7757         but BENEATH is NULL.
7758
7759 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7760
7761         * Makefile.in (config.status): Add configure.nat as a
7762         dependency.
7763
7764 2018-06-04  Tom Tromey  <tom@tromey.com>
7765
7766         * cp-name-parser.y (cpname_state): Add method declarations.
7767         (HANDLE_QUAL): Update.
7768         (cpname_state::d_grab, cpname_state::fill_comp)
7769         (cpname_state::make_operator, cpname_state::make_dtor)
7770         (cpname_state::make_builtin_type, cpname_state::make_name)
7771         (cpname_state::d_qualify, cpname_state::d_int_type)
7772         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7773         (%union): Move earlier.
7774
7775 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7776
7777         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7778
7779 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7780
7781         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7782         (aarch64_pseudo_write_1): Likewise.
7783         (aarch64_pseudo_read_value): Use helper.
7784         (aarch64_pseudo_write): Likewise.
7785
7786 2018-06-04  Pedro Alves  <palves@redhat.com>
7787
7788         * darwin-nat.c (darwin_ops): Delete.
7789         (darwin_attach_pid): Use get_native_target.
7790
7791 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7792
7793         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7794         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7795
7796 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7797
7798         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7799         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7800         (aarch64_gdbarch_init): Check for SVE.
7801         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7802
7803 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7804
7805         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7806         * aarch64-tdep.h (aarch64_read_description): Likewise.
7807         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7808         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7809         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7810         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7811         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7812
7813 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7814
7815         * value.c (value_fetch_lazy_bitfield): New.
7816         (value_fetch_lazy_memory): New.
7817         (value_fetch_lazy_register): New.
7818         (value_fetch_lazy): Factor out to smaller functions.
7819
7820 2018-06-01  Tom Tromey  <tom@tromey.com>
7821
7822         * cp-name-parser.y (backslashable, represented): Now const.
7823
7824 2018-06-01  Tom Tromey  <tom@tromey.com>
7825
7826         * cp-name-parser.y: Include parser-defs.h.
7827         (parser_fprintf): Remove declaration.
7828
7829 2018-06-01  Tom Tromey  <tom@tromey.com>
7830
7831         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7832         %parse-param.
7833         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7834         (global_result): Remove globals.
7835         (struct cpname_state): New.
7836         (yyparse): Don't declare.
7837         (yylex, yyerror): Move declarations after %union.
7838         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7839         (make_name): Add state parameter.
7840         Update all callers.
7841         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7842         parameter.
7843         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7844         Update.
7845         (yylex): Add lvalp, state parameters.
7846         (yyerror): Add state parameter.
7847         (cp_demangled_name_to_comp): Update.
7848
7849 2018-06-01  Tom Tromey  <tom@tromey.com>
7850
7851         * cp-name-parser.y (parser_fprintf): Declare.
7852         (GDB_YY_REMAP_PREFIX): Define.
7853         Include yy-remap.h.  Don't redefine yy* identifiers.
7854
7855 2018-06-01  Tom Tromey  <tom@tromey.com>
7856
7857         * python/py-type.c (typy_legacy_template_argument): Update.
7858         * cp-support.h (cp_demangled_name_to_comp): Update.
7859         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7860         parameter to be a "std::string *".
7861         (main): Update.
7862
7863 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7864
7865         * ada-lex.l: Include "diagnostics.h" instead of
7866         "common/diagnostics.h".
7867         * unittests/environ-selftests.c: Likewise.
7868         * common/diagnostics.h: Moved to ../include.
7869
7870 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7871
7872         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7873         to language_mode_manual while calling breakpoint_re_set_one.
7874
7875 2018-06-01  Tom Tromey  <tom@tromey.com>
7876
7877         * valops.c (value_cast_structs, destructor_name_p): Update.
7878         * symtab.c (gdb_mangle_name): Update.
7879         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7880         Update.
7881         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7882         (pascal_object_print_value_fields, pascal_object_print_value):
7883         Update.
7884         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7885         * linespec.c (find_methods): Update.
7886         * gdbtypes.h (type_name_no_tag): Remove.
7887         (type_name_or_error): Rename from type_name_no_tag_or_error.
7888         * gdbtypes.c (type_name_no_tag): Remove.
7889         (type_name_or_error): Rename from type_name_no_tag_or_error.
7890         (lookup_struct_elt_type, check_typedef): Update.
7891         * expprint.c (print_subexp_standard): Update.
7892         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7893         * d-namespace.c (d_lookup_nested_symbol): Update.
7894         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7895         (cp_print_class_member): Update.
7896         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7897         * completer.c (add_struct_fields): Update.
7898         * c-typeprint.c (cp_type_print_derivation_info)
7899         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7900         Update.
7901         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7902         (ada_prefer_type, ada_is_exception_sym): Update.
7903
7904 2018-06-01  Tom Tromey  <tom@tromey.com>
7905
7906         * valops.c (enum_constant_from_type, value_namespace_elt)
7907         (value_maybe_namespace_elt): Update.
7908         * valarith.c (find_size_for_pointer_math): Update.
7909         * target-descriptions.c (make_gdb_type): Update.
7910         * symmisc.c (print_symbol): Update.
7911         * stabsread.c (define_symbol, read_type)
7912         (complain_about_struct_wipeout, add_undefined_type)
7913         (cleanup_undefined_types_1): Update.
7914         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7915         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7916         (rust_internal_print_type, rust_composite_type)
7917         (rust_evaluate_funcall, rust_evaluate_subexp)
7918         (rust_inclusive_range_type_p): Update.
7919         * python/py-type.c (typy_get_tag): Update.
7920         * p-typeprint.c (pascal_type_print_base): Update.
7921         * mdebugread.c (parse_symbol, parse_type): Update.
7922         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7923         Update.
7924         * guile/scm-type.c (gdbscm_type_tag): Update.
7925         * go-lang.c (sixg_string_p): Update.
7926         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7927         Update.
7928         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7929         (TYPE_TAG_NAME): Remove.
7930         * gdbtypes.c (type_name_no_tag): Simplify.
7931         (check_typedef, check_types_equal, recursive_dump_type)
7932         (copy_type_recursive, arch_composite_type): Update.
7933         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7934         in summary mode when needed.
7935         * eval.c (evaluate_funcall): Update.
7936         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7937         (process_structure_scope, read_enumeration_type)
7938         (read_namespace_type, read_module_type, determine_prefix): Update.
7939         * cp-support.c (inspect_type): Update.
7940         * coffread.c (process_coff_symbol, decode_base_type): Update.
7941         * c-varobj.c (c_is_path_expr_parent): Update.
7942         * c-typeprint.c (c_type_print_base_struct_union): Update.
7943         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7944         summary when using C language.
7945         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7946         (gen_maybe_namespace_elt): Update.
7947         * ada-lang.c (ada_type_name): Simplify.
7948         (empty_record, ada_template_to_fixed_record_type_1)
7949         (template_to_static_fixed_type)
7950         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7951
7952 2018-06-01  Tom Tromey  <tom@tromey.com>
7953
7954         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7955         c_print_type.
7956         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7957         (c_print_type): Update.
7958         (c_print_type): New overload.
7959         (c_type_print_varspec_prefix, c_type_print_args)
7960         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7961         (c_type_print_base_struct_union, c_type_print_base_1)
7962         (cp_type_print_method_args): Add "language" parameter.
7963         (c_type_print_base): Update.
7964         * c-lang.h (c_print_type): Add new overload.
7965
7966 2018-06-01  Tom Tromey  <tom@tromey.com>
7967
7968         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7969         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7970
7971 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7972
7973         * aarch64-tdep.c (aarch64_sve_register_names): New const
7974         var.
7975         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7976         (AARCH64_SVE_Z_REGS_NUM): New define.
7977         (AARCH64_SVE_P_REGS_NUM): Likewise.
7978         (AARCH64_SVE_NUM_REGS): Likewise.
7979
7980 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7981
7982         * nat/linux-ptrace.h [__alpha__]
7983         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7984         definitions.
7985
7986 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7987
7988         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7989         the endianness selected.
7990         * NEWS: Document `set endian auto' mode operation update.
7991
7992 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7993
7994         * Makefile.in: Add new header.
7995         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7996         (sve_vl_from_vg): Likewise.
7997         (sve_vq_from_vl): Likewise.
7998         (sve_vl_from_vq): Likewise.
7999         (sve_vq_from_vg): Likewise.
8000         (sve_vg_from_vq): Likewise.
8001         * configure.nat: Add new c file.
8002         * nat/aarch64-sve-linux-ptrace.c: New file.
8003         * nat/aarch64-sve-linux-ptrace.h: New file.
8004
8005 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8006
8007         * aarch64-linux-nat.c (aarch64_linux_read_description):
8008         Add parmeter zero.
8009         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8010         Likewise.
8011         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8012         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8013         (aarch64_gdbarch_init): Add parmeter zero.
8014         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8015         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8016         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8017         parmeter.
8018         * doc/gdb.texinfo: Describe SVE feature
8019         * features/aarch64-sve.c: New file.
8020
8021 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8022
8023         PR gdb/23210
8024         * gdbarch.sh (significant_addr_bit): Default to zero when
8025         not set by target architecture.
8026         * gdbarch.c: Re-generated.
8027         * utils.c (address_significant): Update.
8028
8029 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8030
8031         * stack.c (func_command): Remove trailing newline in call to error.
8032
8033 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8034
8035         * regcache.h (regcache_raw_collect): Remove, update callers to
8036         use regcache::raw_collect.
8037         * regcache.c (regcache_raw_collect): Remove.
8038
8039 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8040
8041         * regcache.h (regcache_raw_supply): Remove, update callers to
8042         use detached_regcache::raw_supply.
8043         * regcache.c (regcache_raw_supply): Remove.
8044
8045 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8046
8047         * regcache.h (regcache_cooked_write_part): Remove, update
8048         callers to use regcache::cooked_write_part.
8049         * regcache.c (regcache_cooked_write_part): Remove.
8050
8051 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8052
8053         * regcache.h (regcache_cooked_read_part): Remove, update callers
8054         to use readable_regcache::cooked_read_part.
8055         * regcache.c (regcache_cooked_read_part): Remove.
8056
8057 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8058
8059         * regcache.h (regcache_cooked_read_value): Remove, update
8060         callers to use readable_regcache::cooked_read_value.
8061         * regcache.c (regcache_cooked_read_value): Remove.
8062
8063 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8064
8065         * regcache.h (regcache_cooked_write): Remove, update callers to
8066         use regcache::cooked_write.
8067         * regcache.c (regcache_cooked_write): Remove.
8068
8069 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8070
8071         * regcache.h (regcache_invalidate): Remove, update callers to
8072         use detached_regcache::invalidate instead.
8073         * regcache.c (regcache_invalidate): Remove.
8074
8075 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8076
8077         * regcache.h (regcache_raw_write_part): Remove, update callers
8078         to use regcache::raw_write_part instead.
8079         * regcache.c (regcache_raw_write_part): Remove.
8080
8081 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8082
8083         * regcache.h (regcache_raw_read_part): Remove, update callers to
8084         use readable_regcache::raw_read_part instead.
8085         * regcache.c (regcache_raw_read_part): Remove.
8086
8087 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8088
8089         * regcache.h (regcache_cooked_read): Remove, update callers to
8090         use readable_regcache::cooked_read instead.
8091         * regcache.c (regcache_cooked_read): Remove.
8092
8093 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8094
8095         * regcache.h (regcache_raw_write): Remove, update callers to use
8096         regcache::raw_write instead.
8097         * regcache.c (regcache_raw_write): Remove.
8098
8099 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8100
8101         * regcache.h (regcache_raw_read): Remove, update callers to use
8102         readable_regcache::raw_read instead.
8103         * regcache.c (regcache_raw_read): Remove.
8104
8105 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8106
8107         * regcache.h (regcache_raw_update): Remove, update callers to
8108         use readable_regcache::raw_update instead.
8109         * regcache.c (regcache_raw_update): Remove.
8110
8111 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8112
8113         * regcache.h (regcache_register_status): Remove, update callers
8114         to use reg_buffer::get_register_status directly instead.
8115         * regcache.c (regcache_register_status): Remove.
8116
8117 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8118
8119         * regcache.h (regcache_get_ptid): Remove, update all callers to
8120         call regcache::ptid instead.
8121         * regcache.c (regcache_get_ptid): Remove.
8122
8123 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8124
8125         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8126
8127 2018-05-30  Pedro Alves  <palves@redhat.com>
8128
8129         * common/common-exceptions.h (exception_rethrow): Use
8130         ATTRIBUTE_NORETURN.
8131
8132 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8133
8134         * breakpoint.c (print_solib_event, check_status_catch_solib):
8135         Remove struct keyword in range-based for loops.
8136         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8137         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8138         Likewise.
8139         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8140         Likewise.
8141         * symfile.c (addr_info_make_relative): Likewise.
8142         * thread.c (value_in_thread_stack_temporaries): Likewise.
8143
8144 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8145
8146         PR gdb/16841
8147         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8148         aggregate type to get its real type before accessing it.
8149
8150 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8151
8152         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8153         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8154         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8155         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8156         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8157         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8158         * printcmd.c (info_address_command): Likewise.
8159
8160 2018-05-29  Tom Tromey  <tom@tromey.com>
8161
8162         * windows-nat.c (handle_exception): Update fall-through comment.
8163
8164 2018-05-29  Tom Tromey  <tom@tromey.com>
8165
8166         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8167         (struct program_space) <added_solibs>: Now a std::vector.
8168         * breakpoint.c (print_solib_event): Update.
8169         (check_status_catch_solib): Update.
8170         * progspace.c (clear_program_space_solib_cache): Update.
8171         * solib.c (update_solib_list): Update.
8172
8173 2018-05-29  Tom Tromey  <tom@tromey.com>
8174
8175         * python/py-type.c (typy_richcompare): Update.
8176         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8177         * gdbtypes.h (types_deeply_equal): Return bool.
8178         (types_equal): Likewise.
8179         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8180         declare VEC.
8181         (check_types_equal): Change worklist to std::vector.  Return
8182         bool.
8183         (struct type_equality_entry): Add constructor.
8184         (compare_maybe_null_strings): Return bool.
8185         (check_types_worklist): Return bool.  Change worklist to
8186         std::vector.
8187         (types_deeply_equal): Use std::vector.
8188         (types_equal): Return bool.
8189         (compare_maybe_null_strings): Simplify.
8190
8191 2018-05-29  Tom Tromey  <tom@tromey.com>
8192
8193         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8194
8195 2018-05-29  Tom Tromey  <tom@tromey.com>
8196
8197         * objc-lang.h: Don't include cp-support.h.
8198         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8199         declare VEC.
8200
8201 2018-05-27  Tom Tromey  <tom@tromey.com>
8202
8203         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8204
8205 2018-05-25  Tom Tromey  <tom@tromey.com>
8206
8207         * value.c (value::location): Initialize.
8208
8209 2018-05-25  Tom Tromey  <tom@tromey.com>
8210
8211         * dbxread.c (init_bincl_list): Remove.
8212         (bincl_list): Now a std::vector.
8213         (bincls_allocated, next_bincl): Remove.
8214         (free_bincl_list, do_free_bincl_list_cleanup)
8215         (make_cleanup_free_bincl_list): Remove.
8216         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8217         unique_xmalloc_ptr.
8218         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8219         (struct header_file_location): Add constructor.
8220         (add_bincl_to_list): Remove.
8221
8222 2018-05-25  Tom Tromey  <tom@tromey.com>
8223
8224         * tui/tui.c (tui_enable): Update.
8225         * mi/mi-interp.c (mi_interp::init): Update.
8226         * interps.h (class interp) <name>: New method.
8227         <m_name>: Rename from name.
8228         (~scoped_restore_interp): Update.
8229         * interps.c (interp::interp): Update.
8230         (interp_add, interp_set, interp_lookup_existing)
8231         (current_interp_named_p): Update.
8232
8233 2018-05-25  Tom Tromey  <tom@tromey.com>
8234
8235         * interps.c (interp_name): Remove.
8236         * mi/mi-interp.c (mi_interp::init): Update.
8237         * interps.h (interp_name): Remove.
8238         (~scoped_restore_interp): Update.
8239         * tui/tui.c (tui_enable): Update.
8240
8241 2018-05-25  Tom Tromey  <tom@tromey.com>
8242
8243         * utils.c (fputs_maybe_filtered): Update.
8244         * linespec.c (decode_line_full): Update.
8245         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8246         (mi_print_breakpoint_for_event, mi_solib_loaded)
8247         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8248         (mi_user_selected_context_changed): Update.
8249         * mi/mi-main.c (mi_execute_command): Update.
8250         * cli/cli-script.c (execute_control_command): Update.
8251         * python/python.c (execute_gdb_command): Update.
8252         * solib.c (info_sharedlibrary_command): Update.
8253         * interps.c (interp_ui_out): Remove.
8254         * interps.h (interp_ui_out): Remove.
8255
8256 2018-05-25  Tom Tromey  <tom@tromey.com>
8257
8258         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8259         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8260         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8261
8262 2018-05-25  Tom Tromey  <tom@tromey.com>
8263
8264         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8265         * interps.c (interp_exec): Use scoped_restore.
8266
8267 2018-05-25  Tom Tromey  <tom@tromey.com>
8268
8269         * remote.c (remote_target::remote_file_get): Use
8270         gdb::byte_vector.
8271         (remote_target::remote_file_put): Likewise.
8272
8273 2018-05-25  Tom Tromey  <tom@tromey.com>
8274
8275         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8276         a std::string.
8277         (get_pe_section_index, add_pe_exported_sym): Update.
8278         (read_pe_exported_syms): Use gdb::def_vector.
8279
8280 2018-05-25  Tom Tromey  <tom@tromey.com>
8281
8282         * frame.c (remove_prev_frame): Remove.
8283         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8284
8285 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8286
8287         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8288         Remove prototypes.
8289         * mips-linux-nat.c (supply_fpregset): Always call
8290         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8291         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8292         `mips_fill_fpregset'.
8293         * mips-linux-tdep.c (mips_supply_fpregset)
8294         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8295         (mips_fill_fpregset_wrapper): Remove functions.
8296         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8297         (mips_linux_fpregset): Remove variable.
8298         (mips_linux_iterate_over_regset_sections): Use
8299         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8300         (mips_linux_o32_sigframe_init): Remove comment.
8301
8302 2018-05-25  Pedro Alves  <palves@redhat.com>
8303
8304         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8305         (struct readahead_cache, struct packet_reg, struct
8306         remote_arch_state, class remote_state): Move higher up in the
8307         file.
8308         (remote_target::m_remote_state): Now an object instead of a pointer.
8309         (remote_target::get_remote_state): Adjust.
8310
8311 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8312
8313         * stack.c (select_and_print_frame): Delete.
8314         (struct function_bounds): Move struct within function.
8315         (func_command): Most content moved into new function
8316         find_frame_for_function, use new function, print result, add
8317         function comment.
8318         (find_frame_for_function): New function, now returns a result.
8319
8320 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8321
8322         * stack.c (iterate_over_block_arg_vars): Fix comment.
8323         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8324
8325 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8326
8327         PR gdb/23203
8328         * frame.c
8329         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8330         Define.
8331         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8332         Define.
8333         * frame.h (class scoped_restore_selected_frame): New class.
8334         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8335         of any exception, use scoped_restore_selected_frame to restore the
8336         frame instead.
8337
8338 2018-05-24  Pedro Alves  <palves@redhat.com>
8339
8340         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8341         override.
8342
8343 2018-05-23  Tom Tromey  <tom@tromey.com>
8344
8345         * complaints.c (struct complaints): Remove.
8346         (symfile_complaint_book): Remove.
8347         (series): New global.
8348         (complaint_internal): Update.
8349         (clear_complaints): Update.
8350
8351 2018-05-23  Tom Tromey  <tom@tromey.com>
8352
8353         * complaints.c (counters): New global.
8354         (struct complain): Remove.
8355         (struct complaints) <root>: Remove.
8356         (complaint_sentinel): Remove.
8357         (symfile_complaint_book): Update.
8358         (find_complaint) Remove.
8359         (complaint_internal, clear_complaints): Update.
8360
8361 2018-05-23  Tom Tromey  <tom@tromey.com>
8362
8363         * complaints.c (struct complain) <file, line>: Remove.
8364         (find_complaint): Remove file, line parameters.
8365         (complaint_internal): Update.
8366
8367 2018-05-23  Tom Tromey  <tom@tromey.com>
8368
8369         * complaints.c (vcomplaint): Remove.
8370         (complaint_internal) Merge in contents of vcomplaint.
8371
8372 2018-05-23  Tom Tromey  <tom@tromey.com>
8373
8374         * complaints.c (struct complaints) <explanation>: Remove.
8375         (symfile_explanations): Remove.
8376         (symfile_complaint_book): Update.
8377         (vcomplaint): Update.
8378         (struct explanation): Remove.
8379
8380 2018-05-23  Tom Tromey  <tom@tromey.com>
8381
8382         * complaints.c (symfile_complaints): Remove.
8383         (complaint_internal): Remove "complaints" parameter.
8384         (clear_complaints, vcomplaint): Remove "c" parameter.
8385         (get_complaints): Remove.
8386         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8387         (dwarf2_debug_line_missing_file_complaint)
8388         (dwarf2_debug_line_missing_end_sequence_complaint)
8389         (dwarf2_complex_location_expr_complaint)
8390         (dwarf2_const_value_length_mismatch_complaint)
8391         (dwarf2_section_buffer_overflow_complaint)
8392         (dwarf2_macro_malformed_definition_complaint)
8393         (dwarf2_invalid_attrib_class_complaint)
8394         (create_addrmap_from_index, dw2_symtab_iter_next)
8395         (dw2_expand_marked_cus)
8396         (dw2_debug_names_iterator::find_vec_in_debug_names)
8397         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8398         (create_debug_type_hash_table, init_cutu_and_read_dies)
8399         (partial_die_parent_scope, add_partial_enumeration)
8400         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8401         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8402         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8403         (create_cus_hash_table, create_dwp_hash_table)
8404         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8405         (dwarf2_rnglists_process, dwarf2_ranges_process)
8406         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8407         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8408         (handle_struct_member_die, process_structure_scope)
8409         (read_array_type, read_common_block, read_module_type)
8410         (read_tag_pointer_type, read_typedef, read_base_type)
8411         (read_subrange_type, load_partial_dies, partial_die_info::read)
8412         (partial_die_info::read, partial_die_info::read)
8413         (partial_die_info::read, read_checked_initial_length_and_offset)
8414         (dwarf2_string_attr, read_formatted_entries)
8415         (dwarf_decode_line_header)
8416         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8417         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8418         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8419         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8420         (get_signatured_type, get_DW_AT_signature_type)
8421         (decode_locdesc, file_file_name, consume_improper_spaces)
8422         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8423         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8424         (dwarf2_symbol_mark_computed, set_die_type)
8425         (read_attribute_value): Update.
8426         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8427         Update.
8428         * dbxread.c (unknown_symtype_complaint)
8429         (lbrac_mismatch_complaint, repeated_header_complaint)
8430         (set_namestring, function_outside_compilation_unit_complaint)
8431         (read_dbx_symtab, process_one_symbol): Update.
8432         * gdbtypes.c (stub_noname_complaint): Update.
8433         * windows-nat.c (handle_unload_dll): Update.
8434         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8435         (decode_base_type): Update.
8436         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8437         (eb_complaint, record_include_begin, record_include_end)
8438         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8439         (process_xcoff_symbol, read_symbol)
8440         (function_outside_compilation_unit_complaint)
8441         (scan_xcoff_symtab): Update.
8442         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8443         * buildsym.c (finish_block_internal, make_blockvector)
8444         (end_symtab_get_static_block, augment_type_symtab): Update.
8445         * dtrace-probe.c (dtrace_process_dof)
8446         (dtrace_static_probe_ops::get_probes): Update.
8447         * complaints.h (struct complaint): Don't declare.
8448         (symfile_complaints): Remove.
8449         (complaint_internal): Remove "complaints" parameter.
8450         (complaint): Likewise.
8451         (clear_complaints): Likewise.
8452         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8453         (reread_symbols): Update.
8454         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8455         (dwarf2_frame_cache, decode_frame_entry): Update.
8456         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8457         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8458         (info_selectors_command): Update.
8459         * macrotab.c (macro_include, check_for_redefinition)
8460         (macro_undef): Update.
8461         * objfiles.c (filter_overlapping_sections): Update.
8462         * stabsread.c (invalid_cpp_abbrev_complaint)
8463         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8464         (define_symbol, error_type, read_type, rs6000_builtin_type)
8465         (stabs_method_name_from_physname, read_member_functions)
8466         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8467         (attach_fields_to_type, complain_about_struct_wipeout)
8468         (read_range_type, read_args, common_block_start)
8469         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8470         Update.
8471         * mdebugread.c (index_complaint, unknown_ext_complaint)
8472         (basic_type_complaint, bad_tag_guess_complaint)
8473         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8474         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8475         (parse_procedure, parse_lines)
8476         (function_outside_compilation_unit_complaint)
8477         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8478         (bad_tag_guess_complaint, reg_value_complaint): Update.
8479         * cp-support.c (demangled_name_complaint): Update.
8480         * macroscope.c (sal_macro_scope): Update.
8481         * dwarf-index-write.c (class debug_names): Update.
8482
8483 2018-05-23  Tom Tromey  <tom@tromey.com>
8484
8485         * complaints.c (clear_complaints): Remove "noisy" parameter.
8486         * complaints.h (clear_complaints): Update.
8487         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8488         (reread_symbols): Update.
8489
8490 2018-05-23  Tom Tromey  <tom@tromey.com>
8491
8492         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8493         SUBSEQUENT_MESSAGE.
8494         (vcomplaint, clear_complaints): Update.
8495         (symfile_explanations): Remove some messages.
8496
8497 2018-05-23  Tom Tromey  <tom@tromey.com>
8498
8499         * complaints.c (internal_complaint): Remove.
8500         * complaints.h (internal_complaint): Remove.
8501
8502 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8503
8504         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8505
8506 2018-05-22  Pedro Alves  <palves@redhat.com>
8507
8508         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8509         (remote_fileio_badfd, remote_fileio_return_errno)
8510         (remote_fileio_return_success, remote_fileio_func_open)
8511         (remote_fileio_func_open, remote_fileio_func_close)
8512         (remote_fileio_func_read, remote_fileio_func_write)
8513         (remote_fileio_func_lseek, remote_fileio_func_rename)
8514         (remote_fileio_func_unlink, remote_fileio_func_stat)
8515         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8516         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8517         remote_target parameter.
8518         (remote_fio_func_map) <func>: Add remote_target parameter.
8519         (do_remote_fileio_request, remote_fileio_request):
8520         * remote-fileio.h (remote_fileio_request):
8521         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8522         remote_target parameter.
8523         (remote_notif_process, handle_notification): Adjust to pass down
8524         the remote.
8525         (remote_notif_state_allocate): Add remote_target parameter.  Save
8526         it.
8527         * remote-notif.h (struct remote_target): Forward declare.
8528         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8529         remote_target parameter.
8530         (struct remote_notif_state) <remote>: New field.
8531         (remote_notif_ack, remote_notif_parse): Add remote_target
8532         parameter.
8533         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8534         remote_target parameter.
8535         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8536         (threads_listing_context, rmt_thread_action, protocol_feature)
8537         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8538         (packet_result, struct threads_listing_context, remote_state):
8539         Move definitions and declarations higher up.
8540         (remote_target) <~remote_target>: Declare.
8541         (remote_download_command_source, remote_file_put, remote_file_get)
8542         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8543         (remote_hostio_pread_vFile, remote_hostio_send_command)
8544         (remote_hostio_set_filesystem, remote_hostio_open)
8545         (remote_hostio_close, remote_hostio_unlink, remote_state)
8546         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8547         (get_memory_write_packet_size, get_memory_read_packet_size)
8548         (append_pending_thread_resumptions, remote_detach_1)
8549         (append_resumption, remote_resume_with_vcont)
8550         (add_current_inferior_and_thread, wait_ns, wait_as)
8551         (process_stop_reply, remote_notice_new_inferior)
8552         (process_initial_stop_replies, remote_add_thread)
8553         (btrace_sync_conf, remote_btrace_maybe_reopen)
8554         (remove_new_fork_children, kill_new_fork_children)
8555         (discard_pending_stop_replies, stop_reply_queue_length)
8556         (check_pending_events_prevent_wildcard_vcont)
8557         (discard_pending_stop_replies_in_queue, stop_reply)
8558         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8559         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8560         (remote_interrupt_as, remote_interrupt_ns)
8561         (remote_get_noisy_reply, remote_query_attached)
8562         (remote_add_inferior, remote_current_thread, get_current_thread)
8563         (set_thread, set_general_thread, set_continue_thread)
8564         (set_general_process, write_ptid)
8565         (remote_unpack_thread_info_response, remote_get_threadinfo)
8566         (parse_threadlist_response, remote_get_threadlist)
8567         (remote_threadlist_iterator, remote_get_threads_with_ql)
8568         (remote_get_threads_with_qxfer)
8569         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8570         (get_offsets, remote_check_symbols, remote_supported_packet)
8571         (remote_query_supported, remote_packet_size)
8572         (remote_serial_quit_handler, remote_detach_pid)
8573         (remote_vcont_probe, remote_resume_with_hc)
8574         (send_interrupt_sequence, interrupt_query)
8575         (remote_notif_get_pending_events, fetch_register_using_p)
8576         (send_g_packet, process_g_packet, fetch_registers_using_g)
8577         (store_register_using_P, store_registers_using_G)
8578         (set_remote_traceframe, check_binary_download)
8579         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8580         (remote_xfer_live_readonly_partial, remote_read_bytes)
8581         (remote_send_printf, remote_flash_write, readchar)
8582         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8583         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8584         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8585         (extended_remote_disable_randomization, extended_remote_run)
8586         (send_environment_packet, extended_remote_environment_support)
8587         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8588         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8589         (packet_command): Now methods of ...
8590         (remote_target): ... this class.
8591         (m_remote_state) <remote_target>: New field.
8592         (struct remote_state) <stop_reply_queue,
8593         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8594         fields.
8595         (remote_state::remote_state): Allocate stop_reply_queue.
8596         (remote_state): Delete global.
8597         (get_remote_state_raw): Delete.
8598         (remote_target::get_remote_state): Allocate m_remote_state on
8599         demand.
8600         (get_current_remote_target): New.
8601         (remote_ops, extended_remote_ops): Delete.
8602         (wait_forever_enabled_p, remote_async_inferior_event_token):
8603         Delete, moved to struct remote_state.
8604         (remote_target::close): Delete self.  Destruction bits split to
8605         ...
8606         (remote_target::~remote_target): ... this.
8607         (show_memory_packet_size): Adjust to use
8608         get_current_remote_target.
8609         (struct protocol_feature) <func>: Add remote_target parameter.
8610         All callers adjusted.
8611         (curr_quit_handler_target): New.
8612         (remote_serial_quit_handler): Reimplement.
8613         (remote_target::open_1): Adjust to use get_current_remote_target.
8614         Heap-allocate remote_target/extended_remote_target instances.
8615         (vcont_builder::vcont_builder): Add remote_target parameter, and
8616         save it in m_remote.  All callers adjusted.
8617         (vcont_builder::m_remote): New field.
8618         (vcont_builder::restart, vcont_builder::flush)
8619         (vcont_builder::push_action): Use it.
8620         (remote_target::commit_resume): Use it.
8621         (struct queue_iter_param) <remote>: New field.
8622         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8623         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8624         (check_pending_event_prevents_wildcard_vcont_callback)
8625         (remote_target::check_pending_events_prevent_wildcard_vcont)
8626         (remote_target::discard_pending_stop_replies)
8627         (remote_target::discard_pending_stop_replies_in_queue)
8628         (remote_target::remote_notif_remove_queued_reply): Fill in
8629         'remote' field.
8630         (remote_notif_get_pending_events): New.
8631         (remote_target::readchar, remote_target::remote_serial_write):
8632         Save/restore curr_quit_handler_target.
8633         (putpkt): New.
8634         (kill_new_fork_children): Fill in 'remote' field.
8635         (packet_command): Use get_current_remote_target, defer to
8636         remote_target method of same name.
8637         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8638         parameter, and save it in m_remote.  All callers adjusted.
8639         (scoped_remote_fd::release): Use m_remote.
8640         (scoped_remote_fd::m_remote): New field.
8641         (remote_file_put, remote_file_get, remote_file_delete): Use
8642         get_current_remote_target, defer to remote_target method of same
8643         name.
8644         (remote_btrace_reset): Add remote_state paremeter.  Update all
8645         callers.
8646         (remote_async_inferior_event_handler). Pass down 'data'.
8647         (remote_new_objfile): Use get_current_remote_target.
8648         (remote_target::vcont_r_supported): New.
8649         (set_range_stepping): Use get_current_remote_target and
8650         remote_target::vcont_r_supported.
8651         (_initialize_remote): Don't allocate 'remote_state' and
8652         'stop_reply_queue' globals.
8653         * remote.h (struct remote_target): Forward declare.
8654         (getpkt, putpkt, remote_notif_get_pending_events): Add
8655         'remote_target' parameter.
8656
8657 2018-05-22  Pedro Alves  <palves@redhat.com>
8658
8659         * remote.c (vcont_builder): Now a class.  Make all data members
8660         private.
8661         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8662         Declare methods.
8663         (vcont_builder_restart): Rename to ...
8664         (vcont_builder::restart): ... this.
8665         (vcont_builder_flush): Rename to ...
8666         (vcont_builder::flush): ... this.
8667         (vcont_builder_push_action): Rename to ...
8668         (vcont_builder::push_action): ... this.
8669         (remote_target::commit_resume): Adjust.
8670
8671 2018-05-22  Pedro Alves  <palves@redhat.com>
8672
8673         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8674         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8675         (get_fixed_memory_packet_size): New.
8676         (get_memory_packet_size): Use it.
8677         (set_memory_packet_size): Don't override the config size with
8678         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8679         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8680         Don't refer to get_memory_packet_size if not connected to a remote
8681         target.  Show "(default)" if configured size is 0.
8682
8683 2018-05-22  Pedro Alves  <palves@redhat.com>
8684
8685         * remote.c (remote_target::mourn_inferior): Move
8686         discard_pending_stop_replies call here from ...
8687         (_initialize_remote): ... here.
8688
8689 2018-05-22  Pedro Alves  <palves@redhat.com>
8690
8691         * remote.c (compare_section_command): Remove set_general_process
8692         call.
8693
8694 2018-05-22  Pedro Alves  <palves@redhat.com>
8695
8696         * remote.c (struct packet_reg, struct remote_arch_state):
8697         Move higher up in the file.
8698         (remote_state) <m_arch_states>: Store remote_arch_state values
8699         instead of remote_arch_state pointers.
8700         (remote_state::get_remote_arch_state): Adjust.
8701
8702 2018-05-22  Pedro Alves  <palves@redhat.com>
8703
8704         * remote.c: Include <unordered_map>.
8705         (remote_state): Now a class.
8706         (remote_state) <get_remote_arch_state>: Declare method.
8707         <get_remote_arch_state>: New field.
8708         (remote_arch_state) <remote_arch_state>: Declare ctor.
8709         <regs>: Now a unique_ptr.
8710         (remote_gdbarch_data_handle): Delete.
8711         (get_remote_arch_state): Delete.
8712         (remote_state::get_remote_arch_state): New.
8713         (get_remote_state): Adjust to call remote_state's
8714         get_remote_arch_state method.
8715         (init_remote_state): Delete, bits factored out to ...
8716         (remote_arch_state::remote_arch_state): ... this new method.
8717         (get_remote_packet_size, get_memory_packet_size)
8718         (process_g_packet, remote_target::fetch_registers)
8719         (remote_target::prepare_to_store, store_registers_using_G)
8720         (remote_target::store_registers, remote_target::get_trace_status):
8721         Adjust to call remote_state's method.
8722         (_initialize_remote): Remove reference to
8723         remote_gdbarch_data_handle.
8724
8725 2018-05-22  Pedro Alves  <palves@redhat.com>
8726
8727         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8728         pread>: New method declarations.
8729         (remote_target::open_1): Adjust.
8730         (readahead_cache_invalidate): Rename to ...
8731         (readahead_cache::invalidate): ... this, and adjust to be a class
8732         method.
8733         (readahead_cache_invalidate_fd): Rename to ...
8734         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8735         class method.
8736         (remote_hostio_pwrite): Adjust.
8737         (remote_hostio_pread_from_cache): Rename to ...
8738         (readahead_cache::pread): ... this, and adjust to be a class
8739         method.
8740         (remote_hostio_close): Adjust.
8741
8742 2018-05-22  Pedro Alves  <palves@redhat.com>
8743
8744         * remote.c (remote_hostio_close_cleanup): Delete.
8745         (class scoped_remote_fd): New.
8746         (remote_file_put, remote_file_get): Use it.
8747
8748 2018-05-22  Pedro Alves  <palves@redhat.com>
8749
8750         (struct vCont_action_support): Use bool and initialize all fields.
8751         (struct readahead_cache): Initialize all fields.
8752         (remote_state): Use bool and initialize all fields.
8753         (remote_state::remote_state, remote_state::~remote_state): New.
8754         (new_remote_state): Delete.
8755         (_initialize_remote): Use new to allocate remote_state.
8756
8757 2018-05-22  Pedro Alves  <palves@redhat.com>
8758             張俊芝  <zjz@zjz.name>
8759
8760         PR gdb/22973
8761         * c-exp.y: Include "c-support.h".
8762         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8763         of tolower.  Use c_ident_is_alpha to scan names.
8764         * c-lang.c: Include "c-support.h".
8765         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8766         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8767         * c-support.h: New file, with bits factored out from ...
8768         * cp-name-parser.y: ... this file.
8769         Include "c-support.h".
8770         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8771         c-support.h and renamed.
8772         (symbol_end, yylex): Adjust.
8773
8774 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8775
8776         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8777         parameter type to CORE_ADDR.
8778         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8779         parameter type in declaration to CORE_ADDR.
8780         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8781         target_auxv_search to get AT_HWCAP and use the result to get the
8782         target description.
8783         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8784         to CORE_ADDR. Remove the cast of the return value to unsigned
8785         long. Fix error predicate of target_auxv_search.
8786         (ppc_linux_nat_target::read_description): Change the type of the
8787         hwcap variable to CORE_ADDR.
8788
8789 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8790
8791         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8792         if the size of fpscr is larger than 32 bits.
8793
8794 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8795
8796         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8797         (ppc32_linux_vsxregmap): New global.
8798         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8799         regcache_supply_regset, and regcache_collect_regset.
8800         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8801         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8802         (fetch_vsx_register, store_vsx_register): Remove.
8803         (fetch_vsx_registers): Add regno parameter. Get regset using
8804         ppc_linux_vsxregset. Use regset to supply registers.
8805         (store_vsx_registers): Add regno parameter. Get regset using
8806         ppc_linux_vsxregset. Use regset to collect registers.
8807         (fetch_register): Call fetch_vsx_registers instead of
8808         fetch_vsx_register.
8809         (store_register): Call store_vsx_registers instead of
8810         store_vsx_register.
8811         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8812         new regno parameter.
8813         (store_ppc_registers): Call store_vsx_registers with -1 for the
8814         new regno parameter.
8815         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8816         (ppc_collect_vsxregset): Remove.
8817
8818 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8819
8820         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8821         offset fields.
8822         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8823         for vector register offset fields.
8824         (ppc64_fbsd_reg_offsets): Likewise.
8825         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8826         to vector register offset fields.
8827         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8828         to vector register offset fields.
8829         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8830         vector register offset fields.
8831         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8832         initializers for vector register offset fields.
8833         (rs6000_aix64_reg_offsets): Likewise.
8834         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8835         (ppc_supply_vrregset): Remove.
8836         (ppc_collect_vrregset): Remove.
8837         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8838         (ppc_linux_vrregset) : New function.
8839         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8840         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8841         (ppc32_linux_vrregset): Remove.
8842         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8843         and use result instead of ppc32_linux_vrregset.
8844         (ppc32_linux_reg_offsets): Remove initializers for vector register
8845         offset fields.
8846         (ppc64_linux_reg_offsets): Likewise.
8847         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8848         * ppc-linux-nat.c: Include regset.h.
8849         (gdb_vrregset_t): Adjust comment to account for little-endian
8850         mode.
8851         (supply_vrregset, fill_vrregset): Remove.
8852         (fetch_altivec_register, store_altivec_register): Remove.
8853         (fetch_altivec_registers): Add regno parameter. Get regset using
8854         ppc_linux_vrregset. Use regset to supply registers.
8855         (store_altivec_registers): Add regno parameter. Get regset using
8856         ppc_linux_vrregset. Use regset to collect registers.
8857         (fetch_register): Call fetch_altivec_registers instead of
8858         fetch_altivec_register.
8859         (store_register): Call store_altivec_registers instead of
8860         store_altivec_register.
8861         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8862         the new regno parameter.
8863         (store_ppc_registers): Call store_altivec_registers with -1 for
8864         the new regno parameter.
8865
8866 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8867
8868         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8869         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8870         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8871         (gdb_vrregset_t): Change array type size to
8872         PPC_LINUX_SIZEOF_VRREGSET.
8873         (gdb_vsxregset_t): Change array type size to
8874         PPC_LINUX_SIZEOF_VSXREGSET.
8875         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8876         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8877         PPC_LINUX_SIZEOF_VSXREGSET.
8878
8879 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8880
8881         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8882         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8883         nat/ppc-linux.c.
8884         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8885         ppc_linux_target_wordsize with tid.
8886         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8887         wordsize with tid.
8888         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8889         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8890         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8891         tid parameter. Remove static specifier.
8892         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8893         (ppc_linux_target_wordsize): New declaration.
8894
8895 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8896
8897         * arch/ppc-linux-common.c: New file.
8898         * arch/ppc-linux-common.h: New file.
8899         * arch/ppc-linux-tdesc.h: New file.
8900         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8901         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8902         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8903         arch/ppc-linux-tdesc.h.
8904         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8905         arch/ppc-linux-tdesc.h.
8906         (ppc_linux_nat_target::read_description): Remove target
8907         description matching code. Fill a ppc_linux_features struct and
8908         call ppc_linux_match_description with it. Move comment about ISA
8909         2.05 to ppc-linux-common.c.
8910         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8911         arch/ppc-linux-tdesc.h.
8912         (ppc_linux_core_read_description): Remove target description
8913         matching code. Fill a ppc_linux_features struct and call
8914         ppc_linux_match_description with it.
8915         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8916         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8917         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8918         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8919         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8920         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8921         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8922         (tdesc_powerpc_e500l): Remove.
8923
8924 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8925
8926         * ada-lang.c (catch_assert_command): Pass empty string instead
8927         of NULL for excep_string argument.
8928
8929 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8930
8931         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8932         the width of the requested register exceeds the width of the
8933         `ptrace' data type.
8934
8935 2018-05-21  Tom Tromey  <tom@tromey.com>
8936
8937         * printcmd.c (output_command): Remove.
8938         (output_command_const): Rename to output_command.
8939         * valprint.h (output_command): Rename from output_command_const.
8940         * tracepoint.c (trace_dump_actions): Call output_command.
8941
8942 2018-05-21  Tom Tromey  <tom@tromey.com>
8943
8944         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8945         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8946         * ada-lang.h (create_ada_exception_catchpoint): Update.
8947         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8948         std::string.
8949         (create_excep_cond_exprs, ~ada_catchpoint)
8950         (should_stop_exception, print_one_exception)
8951         (print_mention_exception, print_recreate_exception): Update.
8952         (ada_get_next_arg): Remove.
8953         (catch_ada_exception_command_split): Use std::string.  Change type
8954         of "excep_string", "cond_string".
8955         (catch_ada_exception_command): Update.
8956         (create_ada_exception_catchpoint): Change type of excep_string.
8957         (ada_exception_sal): Remove excep_string parameter.
8958         (~ada_catchpoint): Remove.
8959
8960 2018-05-21  Tom Tromey  <tom@tromey.com>
8961
8962         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8963         cleanup.
8964
8965 2018-05-21  Tom Tromey  <tom@tromey.com>
8966
8967         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8968         Return unique_xmalloc_ptr.
8969         (print_it_exception): Update.
8970
8971 2018-05-21  Tom Tromey  <tom@tromey.com>
8972
8973         * tracepoint.c (trace_dump_actions): Use std::string.
8974
8975 2018-05-21  Tom Tromey  <tom@tromey.com>
8976
8977         * symfile.c (reread_symbols): Use std::string for original_name.
8978
8979 2018-05-21  Tom Tromey  <tom@tromey.com>
8980
8981         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8982         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8983         constructor.
8984
8985 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8986
8987         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8988         instance to...
8989         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8990         * objfiles.c (get_objfile_bfd_data): Allocate
8991         objfile_per_bfd_storage with obstack_new when allocating on
8992         obstack.
8993
8994 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8995
8996         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8997         OBSTACK_ZALLOC.
8998         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8999         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9000         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9001         (add_pending): Likewise.
9002         (parse_symbol): Likewise.
9003         (parse_partial_symbols): Likewise.
9004         (psymtab_to_symtab_1): Likewise.
9005         (new_psymtab): Likewise.
9006         (elfmdebug_build_psymtabs): Likewise.
9007         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9008         * objfiles.c (get_objfile_bfd_data): Likewise.
9009         (objfile_register_static_link): Likewise.
9010         * psymtab.c (allocate_psymtab): Likewise.
9011         * stabsread.c (read_member_functions): Likewise.
9012         * xcoffread.c (xcoff_end_psymtab): Likewise.
9013
9014 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9015
9016         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9017         compiler supports std::is_trivially_constructible.
9018         * common/poison.h: Include obstack.h.
9019         (IsMallocable): Define to is_trivially_constructible if the
9020         compiler supports it, define to true_type otherwise.
9021         (xobnew): New.
9022         (XOBNEW): Redefine.
9023         (xobnewvec): New.
9024         (XOBNEWVEC): Redefine.
9025         * gdb_obstack.h (obstack_zalloc): New.
9026         (OBSTACK_ZALLOC): Redefine.
9027         (obstack_calloc): New.
9028         (OBSTACK_CALLOC): Redefine.
9029         (obstack_new): New.
9030         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9031         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9032         gdbarch.c.
9033         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9034         obstack_calloc/obstack_zalloc.
9035         (gdbarch_obstack_zalloc): Remove.
9036         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9037
9038 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9039
9040         * stack.c (backtrace_command_1): Remove useless variable int i.
9041
9042 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9043
9044         * stack.c (print_frame_info): Fix comment.
9045
9046 2018-05-18  Tom Tromey  <tom@tromey.com>
9047
9048         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9049         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9050         (~dwarf2_per_objfile): Update
9051         (dwarf2_get_dwz_file): Use new.
9052         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9053         unique_ptr.
9054
9055 2018-05-18  Tom Tromey  <tom@tromey.com>
9056
9057         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9058         unique_ptr.
9059         * dwarf2read.c (struct dwp_file): Add constructor and
9060         initializers.
9061         (open_and_init_dwp_file): Return a unique_ptr.
9062         (dwarf2_per_objfile, create_dwp_hash_table)
9063         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9064         (lookup_dwo_unit_in_dwp): Update.
9065         (open_and_init_dwp_file, get_dwp_file): Update.
9066
9067 2018-05-18  Tom Tromey  <tom@tromey.com>
9068
9069         * dwarf2read.c (dwarf2_per_objfile): Update.
9070         (struct mapped_index): Add initializers.
9071         (dwarf2_read_index): Use new.
9072         (dw2_symtab_iter_init): Update.
9073         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9074         unique_ptr.
9075
9076 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9077
9078         * dwarf2read.c (mapped_index) <total_size>: Remove.
9079
9080 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9081
9082         * unittests/format_pieces-selftests.c (test_format_specifier):
9083         Add ARI comments.
9084
9085 2018-05-18  Tom Tromey  <tom@tromey.com>
9086
9087         * c-typeprint.c (maybe_print_hole): New function.
9088         (c_print_type_struct_field_offset): Update.
9089         (c_type_print_base_struct_union): Call maybe_print_hole.
9090
9091 2018-05-17  Keith Seitz  <keiths@redhat.com>
9092
9093         * breakpoint.c (build_bpstat_chain): New function, moved from
9094         bpstat_stop_status.
9095         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9096         If no stop chain is passed, call build_bpstat_chain to build it.
9097         * breakpoint.h (build_bpstat_chain): Declare.
9098         (bpstat_stop_status): Move documentation here from breakpoint.c.
9099         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9100         build the stop chain and pass it to skip_inline_frames.
9101         Pass this stop chain to bpstat_stop_status.
9102         * inline-frame.c: Include breakpoint.h.
9103         (stopped_by_user_bp_inline_frame): New function.
9104         (skip_inline_frames): Add parameter `stop_chain'.
9105         Move documention to inline-frame.h.
9106         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9107         whether the frame should be elided.
9108         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9109         Add moved documentation and update for new parameter.
9110
9111 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9112
9113         PR cli/14975
9114         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9115         unittests/format_pieces-selftests.c.
9116         * common/format.h (format_piece) <operator==>: New.
9117         (format_pieces) <operator[]>: Remove.
9118         * common/format.c (format_pieces::format_pieces): Handle \e.
9119         * unittests/format_pieces-selftests.c: New.
9120
9121 2018-05-17  Tom Tromey  <tom@tromey.com>
9122
9123         PR symtab/23010:
9124         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9125         (dw2_instantiate_symtab): Add skip_partial parameter.
9126         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9127         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9128         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9129         (dw2_expand_symtabs_matching_one)
9130         (dw2_find_pc_sect_compunit_symtab)
9131         (dw2_debug_names_lookup_symbol)
9132         (dw2_debug_names_expand_symtabs_for_function): Update.
9133         (init_cutu_and_read_dies): Add skip_partial parameter.
9134         (process_psymtab_comp_unit, build_type_psymtabs_1)
9135         (process_skeletonless_type_unit, load_partial_comp_unit)
9136         (psymtab_to_symtab_1): Update.
9137         (load_full_comp_unit): Add skip_partial parameter.
9138         (process_imported_unit_die, dwarf2_read_addr_index)
9139         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9140         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9141         (read_signatured_type): Update.
9142
9143 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9144
9145         * value.c (release_value): Remove unused variable.
9146         (record_latest_value): Likewise.
9147         (access_value_history): Likewise.
9148         (preserve_values): Likewise.
9149
9150 2018-05-17  Tom Tromey  <tom@tromey.com>
9151
9152         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9153         Initialize.
9154
9155 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9156
9157         PR gdb/22286
9158         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9159         Also handle registers whose width is not a multiple of
9160         PTRACE_TYPE_RET.
9161         (linux_nat_trad_target::store_register): Likewise.
9162
9163 2018-05-16  Tom Tromey  <tom@tromey.com>
9164
9165         * gdbcore.h (core_bfd): Redefine.
9166         * corelow.c (core_target::close): Update.
9167         (core_target_open): Update.
9168         * progspace.h (struct program_space) <cbfd>: Now a
9169         gdb_bfd_ref_ptr.
9170
9171 2018-05-16  Tom Tromey  <tom@tromey.com>
9172
9173         PR cli/19551:
9174         * symfile-add-flags.h (enum symfile_add_flags)
9175         <SYMFILE_NOT_FILENAME>: New constant.
9176         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9177         objfile name from BFD.
9178         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9179         * minidebug.c (find_separate_debug_file_in_section): Put
9180         ".gnu_debugdata" into BFD's file name.
9181
9182 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9183
9184         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9185         Remove.
9186
9187 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9188
9189         PR binutils/21446
9190         * aarch64-tdep.c (aarch64_analyze_prologue,
9191         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9192         Indicate not interested in errors.
9193
9194 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9195
9196         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9197         Supply the MIPS_ZERO_REGNUM register.
9198
9199 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9200
9201         * mips-tdep.c (mask_address_var): Make variable static.
9202
9203 2018-05-14  Tom Tromey  <tom@tromey.com>
9204
9205         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9206
9207 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9208
9209         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9210         FXSAVE_ADDR for the mxcsr register.
9211
9212 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9213
9214         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9215
9216 2018-05-11  Pedro Alves  <palves@redhat.com>
9217
9218         * corelow.c (core_target) <core_target>: No longer inline.
9219         Initialize m_core_gdbarch, m_core_vec and build the section table
9220         here.
9221         <~core_target>: New.
9222         <core_gdbarch, get_core_register_section>: New methods.
9223         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9224         factored out from ...
9225         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9226         (core_ops): Delete.
9227         (sniff_core_bfd): Add gdbarch parameter.
9228         (core_close): Delete, merged into ...
9229         (core_target::close): ... here.  Delete self.
9230         (core_close_cleanup): Delete.
9231         (core_target_open): Allocate a core_target on the heap.  Use a
9232         unique_ptr instead of a cleanup.  Bits moved into the core_target
9233         ctor.  Adjust to use core_target methods instead of globals.
9234         (get_core_register_section): Rename to ...
9235         (core_target::get_core_register_section): ... this and adjust.
9236         (struct get_core_registers_cb_data): New.
9237         (get_core_registers_cb): Use it.  Use bool.
9238         (core_target::fetch_registers, core_target::files_info)
9239         (core_target::xfer_partial, core_target::read_description)
9240         (core_target::pid_to, core_target::thread_name): Adjust to
9241         reference class fields instead of globals.
9242         * target.h (struct target_ops_deleter, target_ops_up): New.
9243
9244 2018-05-11  Pedro Alves  <palves@redhat.com>
9245
9246         * corefile.c (core_file_command): Move to corelow.c.
9247         * corelow.c (the_core_target): Delete.
9248         (core_file_command): Moved from corefile.c.  Check exec_bfd
9249         instead of the_core_target.  Use target_detach instead of calling
9250         into the_core_target directly.
9251         (maybe_say_no_core_file_now): New.
9252         (core_target::detach): Use it.
9253         (_initialize_corelow): Remove references to the_core_target.
9254         * gdbcore.h (the_core_target): Delete.
9255
9256 2018-05-11  Tom Tromey  <tromey@redhat.com>
9257             Pedro Alves  <palves@redhat.com>
9258
9259         * corefile.c (core_bfd): Remove.
9260         * gdbcore.h (core_bfd): Now a macro.
9261         * progspace.h (struct program_space) <cbfd>: New field.
9262
9263 2018-05-11  Tom Tromey  <tom@tromey.com>
9264
9265         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9266         gdb::def_vector.
9267
9268 2018-05-10  Tom Tromey  <tom@tromey.com>
9269
9270         * configure: Rebuild.
9271         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9272
9273 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9274
9275         PR server/23158:
9276         * regformats/regdat.sh: Adjust script, following the addition
9277         of the new expedite_regs parameter to init_target_desc.
9278
9279 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9280     
9281         PR gdb/23127
9282         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9283         set_gdbarch_significant_addr_bit.
9284         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9285         set_gdbarch_significant_addr_bit.
9286         * utils.c (address_significant): Update to sign extend addr.
9287
9288 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9289
9290         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9291         (xtensa_linux_init_abi): Limit tdep->num_regs by
9292         tdep->num_nopriv_regs.
9293         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9294         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9295         not initialized.
9296
9297 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9298
9299         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9300
9301 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9302
9303         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9304         (I387_MXCSR_INIT_VAL): New constant.
9305         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9306         buffer if it was supplied by the inferior.
9307         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9308         (i387_xsave_get_clear_bv): New function.
9309         (i387_supply_xsave): Only read x87 control registers from the
9310         xsave buffer if the feature is enabled, and the state will have
9311         been written, otherwise, provide a suitable default.
9312         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9313         including x87 control registers.  Update control registers if they
9314         have changed from the default value, and mark features as enabled
9315         as required.
9316         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9317
9318 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9319
9320         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9321
9322 2018-05-07  Tom Tromey  <tom@tromey.com>
9323
9324         * configure: Rebuild.
9325         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9326
9327 2018-05-07  Tom Tromey  <tom@tromey.com>
9328
9329         PR tdep/20362:
9330         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9331         bit.  Use correct value for VDIV.
9332
9333 2018-05-04  Tom Tromey  <tom@tromey.com>
9334
9335         * configure: Rebuild.
9336         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9337
9338 2018-05-04  Tom Tromey  <tom@tromey.com>
9339
9340         * linux-record.c (record_linux_system_call) <case
9341         RECORD_SYS_RECVFROM>: Add "break".
9342
9343 2018-05-04  Tom Tromey  <tom@tromey.com>
9344
9345         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9346         Add missing "break".
9347         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9348         Add missing "break".
9349
9350 2018-05-04  Tom Tromey  <tom@tromey.com>
9351
9352         * rs6000-tdep.c (ppc_process_record_op4)
9353         (ppc_process_record_op63): Add fall-through comment.
9354
9355 2018-05-04  Tom Tromey  <tom@tromey.com>
9356
9357         * i386-tdep.c (i386_process_record): Add fall-through comment.
9358
9359 2018-05-04  Tom Tromey  <tom@tromey.com>
9360
9361         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9362         comment.
9363
9364 2018-05-04  Tom Tromey  <tom@tromey.com>
9365
9366         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9367         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9368         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9369         comment.
9370         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9371         comment.
9372         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9373         comment.
9374
9375 2018-05-04  Tom Tromey  <tom@tromey.com>
9376
9377         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9378
9379 2018-05-04  Tom Tromey  <tom@tromey.com>
9380
9381         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9382         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9383         * symfile.c (section_is_mapped): Fix fall-through comment.
9384         * stabsread.c (define_symbol, read_member_functions): Fix
9385         fall-through comment.
9386         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9387         comment.
9388         * remote.c (remote_wait_as): Fix fall-through comment.
9389         * p-exp.y (yylex): Fix fall-through comment.
9390         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9391         comment.
9392         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9393         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9394         * jv-exp.y (yylex): Fix fall-through comment.
9395         * go-exp.y (lex_one_token): Fix fall-through comment.
9396         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9397         fall-through comment.
9398         * f-exp.y (yylex): Fix fall-through comment.
9399         * dwarf2read.c (process_die): Fix fall-through comments.
9400         * dbxread.c (process_one_symbol): Fix fall-through comment.
9401         * d-exp.y (lex_one_token): Fix fall-through comment.
9402         * cp-name-parser.y (yylex): Fix fall-through comment.
9403         * coffread.c (coff_symtab_read): Fix fall-through comment.
9404         * c-exp.y (lex_one_token): Fix fall-through comment.
9405         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9406         comment.
9407         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9408         comment.
9409
9410 2018-05-04  Tom Tromey  <tom@tromey.com>
9411
9412         PR python/22730:
9413         * NEWS: Mention gdb.execute change.
9414         * gdbcmd.h (execute_control_command): Don't declare.
9415         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9416         execute_control_commands, execute_control_commands_to_string.
9417         * cli/cli-script.h (execute_control_commands)
9418         (execute_control_commands_to_string): Declare.
9419         (execute_control_command): Add from_tty parameter.
9420         * cli/cli-script.c (execute_control_commands)
9421         (execute_control_commands_to_string): New functions.
9422         (execute_user_command): Use execute_control_commands.
9423         (execute_control_command_1): Add "from_tty" parameter.  Update.
9424         (execute_control_command): Likewise.
9425
9426 2018-05-04  Tom Tromey  <tom@tromey.com>
9427
9428         PR python/22731:
9429         * NEWS: Mention that breakpoint commands are writable.
9430         * python/py-breakpoint.c (bppy_set_commands): New function.
9431         (breakpoint_object_getset) <"commands">: Use it.
9432
9433 2018-05-04  Tom Tromey  <tom@tromey.com>
9434
9435         * tracepoint.c (actions_command): Update.
9436         * mi/mi-cmd-break.c (mi_command_line_array)
9437         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9438         (mi_read_next_line): Remove.
9439         (mi_cmd_break_commands): Update.
9440         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9441         function_view.
9442         * cli/cli-script.c (get_command_line): Update.
9443         (process_next_line): Use function_view.  Constify.
9444         (recurse_read_control_structure, read_command_lines)
9445         (read_command_lines_1): Change argument types to function_view.
9446         (do_define_command, document_command): Update.
9447         * breakpoint.h (check_tracepoint_command): Don't declare.
9448         * breakpoint.c (check_tracepoint_command): Remove.
9449         (commands_command_1, create_tracepoint_from_upload): Update.
9450
9451 2018-05-04  Tom Tromey  <tom@tromey.com>
9452
9453         PR gdb/11750:
9454         * cli/cli-script.h (enum command_control_type) <define_control>:
9455         New constant.
9456         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9457         (build_command_line, execute_control_command_1)
9458         (process_next_line): Likewise.
9459         (do_define_command): New function, extracted from define_command.
9460         (define_command): Use it.
9461
9462 2018-05-04  Tom Tromey  <tom@tromey.com>
9463
9464         * tracepoint.c (actions_command): Update.
9465         * cli/cli-script.h (read_command_lines): Update.
9466         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9467         (MAX_TMPBUF): Remove define.
9468         (define_command): Use string_printf.
9469         (document_command): Likewise.
9470         * breakpoint.c (commands_command_1): Update.
9471
9472 2018-05-04  Tom Tromey  <tom@tromey.com>
9473
9474         * top.c (execute_command): Update.
9475         * cli/cli-script.h (print_command_lines): Now varargs.
9476         * cli/cli-script.c (print_command_lines): Now varargs.
9477         (execute_control_command_1) <case while_control, case if_control>:
9478         Update.
9479
9480 2018-05-04  Tom Tromey  <tom@tromey.com>
9481
9482         * tracepoint.c (all_tracepoint_actions): Rename from
9483         all_tracepoint_actions_and_cleanup.  Change return type.
9484         (actions_command, encode_actions_1, encode_actions)
9485         (trace_dump_actions, tdump_command): Update.
9486         * remote.c (remote_download_command_source): Update.
9487         * python/python.c (gdbpy_eval_from_control_command)
9488         (python_command, python_interactive_command): Update.
9489         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9490         * guile/guile.c (guile_command)
9491         (gdbscm_eval_from_control_command, guile_command): Update.
9492         * compile/compile.c (compile_code_command)
9493         (compile_print_command, compile_to_object): Update.
9494         * cli/cli-script.h (struct command_lines_deleter): New.
9495         (counted_command_line): New typedef.
9496         (struct command_line): Add constructor, destructor.
9497         <body_list>: Remove.
9498         <body_list_0, body_list_1>: New members.
9499         (command_line_up): Remove typedef.
9500         (read_command_lines, read_command_lines_1, get_command_line):
9501         Update.
9502         (copy_command_lines): Don't declare.
9503         * cli/cli-script.c (build_command_line): Use "new".
9504         (get_command_line): Return counted_command_line.
9505         (print_command_lines, execute_user_command)
9506         (execute_control_command_1, while_command, if_command): Update.
9507         (realloc_body_list): Remove.
9508         (process_next_line, recurse_read_control_structure): Update.
9509         (read_command_lines, read_command_lines_1): Return counted_command_line.
9510         (free_command_lines): Use "delete".
9511         (copy_command_lines): Remove.
9512         (define_command, document_command, show_user_1): Update.
9513         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9514         a counted_command_line.
9515         * breakpoint.h (counted_command_line): Remove typedef.
9516         (breakpoint_set_commands): Update.
9517         * breakpoint.c (check_no_tracepoint_commands)
9518         (validate_commands_for_breakpoint): Update.
9519         (breakpoint_set_commands): Change commands to be a
9520         counted_command_line.
9521         (commands_command_1, update_dprintf_command_list)
9522         (create_tracepoint_from_upload): Update.
9523
9524 2018-05-04  Tom Tromey  <tom@tromey.com>
9525
9526         * cli/cli-decode.h (cmd_list_element): New constructor.
9527         (~cmd_list_element): New destructor.
9528         (struct cmd_list_element): Add initializers.
9529         * cli/cli-decode.c (do_add_cmd): Use "new".
9530         (delete_cmd): Use "delete".
9531
9532 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9533             Pedro Alves <palves@redhat.com>
9534
9535         PR breakpoints/19806 and support for PR external/20207.
9536         * NEWS: Mention Aarch64 watchpoint improvements.
9537         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9538         watchpoints and PR external/20207 watchpoints.
9539         * nat/aarch64-linux-hw-point.c
9540         (kernel_supports_any_contiguous_range): New.
9541         (aarch64_watchpoint_offset): New.
9542         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9543         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9544         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9545         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9546         next_addr_orig_p.  Support PR external/20207 watchpoints.
9547         (aarch64_downgrade_regs): New.
9548         (aarch64_dr_state_insert_one_point): New parameters offset and
9549         addr_orig.
9550         (aarch64_dr_state_remove_one_point): Likewise.
9551         (aarch64_handle_breakpoint): Update caller.
9552         (aarch64_handle_aligned_watchpoint): Likewise.
9553         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9554         aligned_offset.
9555         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9556         aarch64_downgrade_regs.
9557         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9558         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9559         (DR_CONTROL_MASK): ... this.
9560         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9561         (unsigned int aarch64_watchpoint_offset): New prototype.
9562         (aarch64_linux_set_debug_regs): Remove const from state.
9563         * utils.c (align_up, align_down): Move to ...
9564         * common/common-utils.c (align_up, align_down): ... here.
9565         * utils.h (align_up, align_down): Move to ...
9566         * common/common-utils.h (align_up, align_down): ... here.
9567
9568 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9569
9570         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9571         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9572         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9573         Re-implement to match the ABI as summarized in GCC's
9574         gcc/config/sparc/sparc.c.  All callers updated.
9575         (sparc32_store_arguments): Remove assertion.
9576
9577 2018-05-04  Tom Tromey  <tom@tromey.com>
9578
9579         * printcmd.c: Don't include tui.h.
9580         (decode_format): Use skip_spaces.
9581
9582 2018-05-04  Tom Tromey  <tom@tromey.com>
9583
9584         PR gdb/22619:
9585         * printcmd.c (last_count): New global.
9586         (x_command): Use saved count when repeating.
9587
9588 2018-05-04  Tom Tromey  <tom@tromey.com>
9589
9590         * nto-procfs.c (do_closedir_cleanup): Remove.
9591         (procfs_pidlist): Use gdb_dir_up.
9592         * procfs.c (do_closedir_cleanup): Remove.
9593         (proc_update_threads): Use gdb_dir_up.
9594         * common/filestuff.h (struct gdb_dir_deleter): New.
9595         (gdb_dir_up): New typedef.
9596
9597 2018-05-04  Tom Tromey  <tom@tromey.com>
9598
9599         * ada-lang.c (print_mention_exception): Use std::string.
9600
9601 2018-05-04  Tom Tromey  <tom@tromey.com>
9602
9603         * ada-lang.c (create_excep_cond_exprs): Update.
9604         (ada_exception_catchpoint_cond_string): Use std::string.
9605
9606 2018-05-04  Tom Tromey  <tom@tromey.com>
9607
9608         * ada-lang.c (xget_renaming_scope): Return std::string.
9609         (old_renaming_is_invisible): Update.
9610
9611 2018-05-04  Tom Tromey  <tom@tromey.com>
9612
9613         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9614         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9615
9616 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9617
9618         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9619
9620 2018-05-04  Tom Tromey  <tom@tromey.com>
9621
9622         * remote.c (remote_query_supported_append): Change type.
9623         (remote_check_symbols): Update.
9624
9625 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9626
9627         PR gdb/11420
9628         * configure.ac: Prepend libpython.
9629         * python/python-config.py: Likewise.
9630         * configure: Regenerate.
9631
9632 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9633
9634         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9635
9636 2018-05-03  Pedro Alves  <palves@redhat.com>
9637
9638         * s390-linux-nat.c
9639         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9640         override.  Write 'true' instead of '1'.
9641         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9642         declaration.
9643
9644 2018-05-02  Pedro Alves  <palves@redhat.com>
9645
9646         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9647         add_inf_child_target.
9648         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9649         add_inf_child_target.
9650         * aix-thread.c (aix_thread_target_info): New.
9651         (aix_thread_target) <shortname, longname, doc>: Delete.
9652         <info>: New.
9653         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9654         add_inf_child_target.
9655         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9656         add_inf_child_target.
9657         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9658         add_inf_child_target.
9659         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9660         add_inf_child_target.
9661         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9662         add_inf_child_target.
9663         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9664         add_inf_child_target.
9665         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9666         add_inf_child_target.
9667         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9668         add_inf_child_target.
9669         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9670         add_inf_child_target.
9671         * bfd-target.c (target_bfd_target_info): New.
9672         (target_bfd) <shortname, longname, doc>: Delete.
9673         <info>: New.
9674         * bsd-kvm.c (bsd_kvm_target_info): New.
9675         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9676         <info>: New.
9677         (bsd_kvm_target::open): Rename to ...
9678         (bsd_kvm_target_open): ... this.  Adjust.
9679         * bsd-uthread.c (bsd_uthread_target_info): New.
9680         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9681         <info>: New.
9682         * corefile.c (core_file_command): Adjust.
9683         * corelow.c (core_target_info): New.
9684         (core_target) <shortname, longname, doc>: Delete.
9685         <info>: New.
9686         (core_target::open): Rename to ...
9687         (core_target_open): ... this.  Adjust.
9688         * ctf.c (ctf_target_info): New.
9689         (ctf_target) <shortname, longname, doc>: Delete.
9690         <info>: New.
9691         (ctf_target::open): Rename to ...
9692         (ctf_target_open): ... this.
9693         (_initialize_ctf): Adjust.
9694         * exec.c (exec_target_info): New.
9695         (exec_target) <shortname, longname, doc>: Delete.
9696         <info>: New.
9697         (exec_target::open): Rename to ...
9698         (exec_target_open): ... this.
9699         * gdbcore.h (core_target_open): Declare.
9700         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9701         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9702         add_inf_child_target.
9703         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9704         add_inf_child_target.
9705         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9706         add_inf_child_target.
9707         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9708         add_inf_child_target.
9709         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9710         add_inf_child_target.
9711         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9712         add_inf_child_target.
9713         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9714         add_inf_child_target.
9715         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9716         add_inf_child_target.
9717         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9718         add_inf_child_target.
9719         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9720         add_inf_child_target.
9721         * inf-child.c (inf_child_target_info): New.
9722         (inf_child_target::info): New.
9723         (inf_child_open_target): Remove 'target' parameter.  Use
9724         get_native_target instead.
9725         (inf_child_target::open): Delete.
9726         (add_inf_child_target): New.
9727         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9728         Delete.
9729         <info>: New.
9730         (add_inf_child_target): Declare.
9731         (inf_child_open_target): Declare.
9732         * linux-thread-db.c (thread_db_target_info): New.
9733         (thread_db_target) <shortname, longname, doc>: Delete.
9734         <info>: New.
9735         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9736         add_inf_child_target.
9737         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9738         add_inf_child_target.
9739         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9740         add_inf_child_target.
9741         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9742         add_inf_child_target.
9743         * make-target-delegates (print_class): Adjust.
9744         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9745         add_inf_child_target.
9746         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9747         add_inf_child_target.
9748         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9749         add_inf_child_target.
9750         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9751         add_inf_child_target.
9752         * nto-procfs.c (nto_native_target_info): New.
9753         (nto_procfs_target_native) <shortname, longname, doc>:
9754         Delete.
9755         <info>: New.
9756         (nto_procfs_target_info): New.
9757         (nto_procfs_target_procfs) <shortname, longname, doc>:
9758         Delete.
9759         <info>: New.
9760         (init_procfs_targets): Adjust.
9761         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9762         add_inf_child_target.
9763         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9764         add_inf_child_target.
9765         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9766         add_inf_child_target.
9767         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9768         add_inf_child_target.
9769         * ravenscar-thread.c (ravenscar_target_info): New.
9770         (ravenscar_thread_target) <shortname, longname, doc>:
9771         Delete.
9772         <info>: New.
9773         * record-btrace.c (record_btrace_target_info):
9774         (record_btrace_target) <shortname, longname, doc>: Delete.
9775         <info>: New.
9776         (record_btrace_target::open): Rename to ...
9777         (record_btrace_target_open): ... this.  Adjust.
9778         * record-full.c (record_longname, record_doc): New.
9779         (record_full_base_target) <shortname, longname, doc>: Delete.
9780         <info>: New.
9781         (record_full_target_info): New.
9782         (record_full_target): <shortname>: Delete.
9783         <info>: New.
9784         (record_full_core_open_1, record_full_open_1): Update comments.
9785         (record_full_base_target::open): Rename to ...
9786         (record_full_open): ... this.
9787         (cmd_record_full_restore): Update.
9788         (_initialize_record_full): Update.
9789         * remote-sim.c (remote_sim_target_info): New.
9790         (gdbsim_target) <shortname, longname, doc>: Delete.
9791         <info>: New.
9792         (gdbsim_target::open): Rename to ...
9793         (gdbsim_target_open): ... this.
9794         (_initialize_remote_sim): Adjust.
9795         * remote.c (remote_doc): New.
9796         (remote_target_info): New.
9797         (remote_target) <shortname, longname, doc>: Delete.
9798         <info>: New.
9799         (extended_remote_target_info): New.
9800         (extended_remote_target) <shortname, longname, doc>: Delete.
9801         <info>: New.
9802         (remote_target::open_1): Make static.  Adjust.
9803         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9804         * s390-linux-nat.c (_initialize_s390_nat): Use
9805         add_inf_child_target.
9806         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9807         add_inf_child_target.
9808         * sol-thread.c (thread_db_target_info): New.
9809         (sol_thread_target) <shortname, longname, doc>: Delete.
9810         <info>: New.
9811         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9812         add_inf_child_target.
9813         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9814         add_inf_child_target.
9815         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9816         add_inf_child_target.
9817         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9818         add_inf_child_target.
9819         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9820         add_inf_child_target.
9821         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9822         add_inf_child_target.
9823         * spu-linux-nat.c (_initialize_spu_nat): Use
9824         add_inf_child_target.
9825         * spu-multiarch.c (spu_multiarch_target_info): New.
9826         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9827         <info>: New.
9828         * target-delegates.c: Regenerate.
9829         * target.c: Include <unordered_map>.
9830         (target_ops_p): Delete.
9831         (DEF_VEC_P(target_ops_p)): Delete.
9832         (target_factories): New.
9833         (test_target_info): New.
9834         (test_target_ops::info): New.
9835         (open_target): Adjust to use target_factories.
9836         (add_target_with_completer): Rename to ...
9837         (add_target): ... this.  Change prototype.  Register target_info
9838         and open callback in target_factories.  Register target_info in
9839         command context instead of target_ops.
9840         (add_target): Delete old implementation.
9841         (add_deprecated_target_alias): Change prototype.  Adjust.
9842         (the_native_target): New.
9843         (set_native_target, get_native_target): New.
9844         (find_default_run_target): Use the_native_target.
9845         (find_attach_target, find_run_target): Simplify.
9846         (target_ops::open): Delete.
9847         (dummy_target_info): New.
9848         (dummy_target::shortname, dummy_target::longname)
9849         (dummy_target::doc): Delete.
9850         (dummy_target::info): New.
9851         (debug_target::shortname, debug_target::longname)
9852         (debug_target::doc): Delete.
9853         (debug_target::info): New.
9854         * target.h (struct target_info): New.
9855         (target_ops::~target_ops): Add comment.
9856         (target_ops::info): New.
9857         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9858         longer virtual.  Implement in terms of target_info.
9859         (set_native_target, get_native_target): Declare.
9860         (target_open_ftype): New.
9861         (add_target, add_target_with_completer)
9862         (add_deprecated_target_alias): Change prototype.
9863         (test_target) <shortname, longname, doc>: Delete.
9864         <info>: New.
9865         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9866         add_inf_child_target.
9867         * tracefile-tfile.c (tfile_target_info): New.
9868         (tfile_target) <shortname, longname, doc>: Delete.
9869         <info>: New.
9870         (tfile_target::open): Rename to ...
9871         (tfile_target_open): ... this.
9872         (_initialize_tracefile_tfile): Adjust.
9873         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9874         add_inf_child_target.
9875         * windows-nat.c (_initialize_windows_nat): Use
9876         add_inf_child_target.
9877         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9878         add_inf_child_target.
9879
9880 2018-05-02  Pedro Alves  <palves@redhat.com>
9881
9882         * linux-nat.h (linux_nat_target) <low_new_thread,
9883         low_delete_thread, low_new_fork, low_forget_process,
9884         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9885         New virtual methods.
9886         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9887         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9888         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9889         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9890         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9891         Delete.
9892         * linux-fork.c (delete_fork): Adjust to call low method.
9893         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9894         (linux_nat_new_fork, linux_nat_forget_process_hook)
9895         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9896         (linux_nat_status_is_event):
9897         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9898         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9899         to call low method.
9900         (sigtrap_is_event): Rename to ...
9901         (linux_nat_target::low_status_is_event): ... this.
9902         (linux_nat_set_status_is_event): Delete.
9903         (save_stop_reason, linux_nat_wait_1)
9904         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9905         low methods.
9906         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9907         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9908         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9909         (linux_nat_set_prepare_to_resume): Delete.
9910         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9911         low virtual methods.
9912         * amd64-linux-nat.c: Likewise.
9913         * arm-linux-nat.c: Likewise.
9914         * i386-linux-nat.c: Likewise.
9915         * ia64-linux-nat.c: Likewise.
9916         * mips-linux-nat.c: Likewise.
9917         * ppc-linux-nat.c: Likewise.
9918         * s390-linux-nat.c: Likewise.
9919         * sparc64-linux-nat.c: Likewise.
9920         * x86-linux-nat.c: Likewise.
9921         * x86-linux-nat.h: Include "nat/x86-linux.h".
9922         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9923         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9924         Override methods.
9925
9926 2018-05-02  Pedro Alves  <palves@redhat.com>
9927
9928         * target.h (target_ops)
9929         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9930         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9931         stopped_by_watchpoint, have_continuable_watchpoint,
9932         stopped_data_address, watchpoint_addr_within_range,
9933         can_accel_watchpoint_condition, can_run, thread_alive,
9934         has_all_memory, has_memory, has_stack, has_registers,
9935         has_execution, can_async_p, is_async_p, supports_non_stop,
9936         always_non_stop_p, can_execute_reverse, supports_multi_process,
9937         supports_enable_disable_tracepoint,
9938         supports_disable_randomization, supports_string_tracing,
9939         supports_evaluation_of_breakpoint_conditions,
9940         can_run_breakpoint_commands, filesystem_is_local,
9941         can_download_tracepoint, get_trace_state_variable_value,
9942         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9943         record_is_replaying, record_will_replay,
9944         augmented_libraries_svr4_read>: Adjust to return bool.
9945         * aarch64-linux-nat.c: All implementations adjusted.
9946         * aix-thread.c: All implementations adjusted.
9947         * arm-linux-nat.c: All implementations adjusted.
9948         * breakpoint.c: All implementations adjusted.
9949         * bsd-kvm.c: All implementations adjusted.
9950         * bsd-uthread.c: All implementations adjusted.
9951         * corelow.c: All implementations adjusted.
9952         * ctf.c: All implementations adjusted.
9953         * darwin-nat.c: All implementations adjusted.
9954         * darwin-nat.h: All implementations adjusted.
9955         * exec.c: All implementations adjusted.
9956         * fbsd-nat.c: All implementations adjusted.
9957         * fbsd-nat.h: All implementations adjusted.
9958         * gnu-nat.c: All implementations adjusted.
9959         * gnu-nat.h: All implementations adjusted.
9960         * go32-nat.c: All implementations adjusted.
9961         * ia64-linux-nat.c: All implementations adjusted.
9962         * inf-child.c: All implementations adjusted.
9963         * inf-child.h: All implementations adjusted.
9964         * inf-ptrace.c: All implementations adjusted.
9965         * inf-ptrace.h: All implementations adjusted.
9966         * linux-nat.c: All implementations adjusted.
9967         * linux-nat.h: All implementations adjusted.
9968         * mips-linux-nat.c: All implementations adjusted.
9969         * nto-procfs.c: All implementations adjusted.
9970         * ppc-linux-nat.c: All implementations adjusted.
9971         * procfs.c: All implementations adjusted.
9972         * ravenscar-thread.c: All implementations adjusted.
9973         * record-btrace.c: All implementations adjusted.
9974         * record-full.c: All implementations adjusted.
9975         * remote-sim.c: All implementations adjusted.
9976         * remote.c: All implementations adjusted.
9977         * s390-linux-nat.c: All implementations adjusted.
9978         * sol-thread.c: All implementations adjusted.
9979         * spu-multiarch.c: All implementations adjusted.
9980         * target-delegates.c: All implementations adjusted.
9981         * target.c: All implementations adjusted.
9982         * target.h: All implementations adjusted.
9983         * tracefile-tfile.c: All implementations adjusted.
9984         * tracefile.c: All implementations adjusted.
9985         * tracefile.h: All implementations adjusted.
9986         * windows-nat.c: All implementations adjusted.
9987         * x86-linux-nat.h: All implementations adjusted.
9988         * x86-nat.h: All implementations adjusted.
9989
9990 2018-05-02  Pedro Alves  <palves@redhat.com>
9991
9992         * make-target-delegates (scan_target_h): Don't trim lines here.
9993         Replace sequences of tabs and/or whitespace with a single
9994         whitespace.
9995         (top level, parsing methods): Trim each line before processing it
9996         here.
9997
9998 2018-05-02  Pedro Alves  <palves@redhat.com>
9999             John Baldwin  <jhb@freebsd.org>
10000
10001         * target.h (enum strata) <debug_stratum>: New.
10002         (struct target_ops) <all delegation methods>: Replace by C++
10003         virtual methods, and drop "to_" prefix.  All references updated
10004         throughout.
10005         <to_shortname, to_longname, to_doc, to_data,
10006         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10007         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10008         virtual methods.  All references updated throughout.
10009         <can_attach, supports_terminal_ours, can_create_inferior,
10010         get_thread_control_capabilities, attach_no_wait>: New
10011         virtual methods.
10012         <insert_breakpoint, remove_breakpoint>: Now
10013         TARGET_DEFAULT_NORETURN methods.
10014         <info_proc>: Now returns bool.
10015         <to_magic>: Delete.
10016         (OPS_MAGIC): Delete.
10017         (current_target): Delete.  All references replaced by references
10018         to ...
10019         (target_stack): ... this.  New.
10020         (target_shortname, target_longname): Adjust.
10021         (target_can_run): Now a function declaration.
10022         (default_child_has_all_memory, default_child_has_memory)
10023         (default_child_has_stack, default_child_has_registers)
10024         (default_child_has_execution): Remove target_ops parameter.
10025         (complete_target_initialization): Delete.
10026         (memory_breakpoint_target): New template class.
10027         (test_target_ops): Refactor as a C++ class with virtual methods.
10028         * make-target-delegates (NAME_PART): Tighten.
10029         (POINTER_PART, CP_SYMBOL): New.
10030         (SIMPLE_RETURN_PART): Reimplement.
10031         (VEC_RETURN_PART): Expect less.
10032         (RETURN_PART, VIRTUAL_PART): New.
10033         (METHOD): Adjust to C++ virtual methods.
10034         (scan_target_h): Remove reference to C99.
10035         (dname): Output "target_ops::" prefix.
10036         (write_function_header): Adjust to output a C++ class method.
10037         (write_declaration): New.
10038         (write_delegator): Adjust to output a C++ class method.
10039         (tdname): Output "dummy_target::" prefix.
10040         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10041         method.
10042         (tdefault_names, debug_names): Delete.
10043         (return_types, tdefaults, styles, argtypes_array): New.
10044         (top level): All methods are delegators.
10045         (print_class): New.
10046         (top level): Print dummy_target and debug_target classes.
10047         * target-delegates.c: Regenerate.
10048         * target-debug.h (target_debug_print_enum_info_proc_what)
10049         (target_debug_print_thread_control_capabilities)
10050         (target_debug_print_thread_info_p): New.
10051         * target.c (dummy_target): Delete.
10052         (the_dummy_target, the_debug_target): New.
10053         (target_stack): Now extern.
10054         (set_targetdebug): Push/unpush debug target.
10055         (default_child_has_all_memory, default_child_has_memory)
10056         (default_child_has_stack, default_child_has_registers)
10057         (default_child_has_execution): Remove target_ops parameter.
10058         (complete_target_initialization): Delete.
10059         (add_target_with_completer): No longer call
10060         complete_target_initialization.
10061         (target_supports_terminal_ours): Use regular delegation.
10062         (update_current_target): Delete.
10063         (push_target): No longer check magic number.  Don't call
10064         update_current_target.
10065         (unpush_target): Don't call update_current_target.
10066         (target_is_pushed): No longer check magic number.
10067         (target_require_runnable): Skip for all stratums over
10068         process_stratum.
10069         (target_ops::info_proc): New.
10070         (target_info_proc): Use find_target_at and
10071         find_default_run_target.
10072         (target_supports_disable_randomization): Use regular delegation.
10073         (target_get_osdata): Use find_target_at.
10074         (target_ops::open, target_ops::close, target_ops::can_attach)
10075         (target_ops::attach, target_ops::can_create_inferior)
10076         (target_ops::create_inferior, target_ops::can_run)
10077         (target_can_run): New.
10078         (default_fileio_target): Use regular delegation.
10079         (target_ops::fileio_open, target_ops::fileio_pwrite)
10080         (target_ops::fileio_pread, target_ops::fileio_fstat)
10081         (target_ops::fileio_close, target_ops::fileio_unlink)
10082         (target_ops::fileio_readlink): New.
10083         (target_fileio_open_1, target_fileio_unlink)
10084         (target_fileio_readlink): Always call the target method.  Handle
10085         FILEIO_ENOSYS.
10086         (return_zero, return_zero_has_execution): Delete.
10087         (init_dummy_target): Delete.
10088         (dummy_target::dummy_target, dummy_target::shortname)
10089         (dummy_target::longname, dummy_target::doc)
10090         (debug_target::debug_target, debug_target::shortname)
10091         (debug_target::longname, debug_target::doc): New.
10092         (target_supports_delete_record): Use regular delegation.
10093         (setup_target_debug): Delete.
10094         (maintenance_print_target_stack): Skip debug_stratum.
10095         (initialize_targets): Instantiate the_dummy_target and
10096         the_debug_target.
10097         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10098         use target_stack.
10099         (target_auxv_search, fprint_target_auxv): Adjust.
10100         (info_auxv_command): Adjust to use target_stack.
10101         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10102         * exceptions.c (print_flush): Handle a NULL target_stack.
10103         * regcache.c (target_ops_no_register): Refactor as class with
10104         virtual methods.
10105
10106         * exec.c (exec_target): New class.
10107         (exec_ops): Now an exec_target.
10108         (exec_open, exec_close_1, exec_get_section_table)
10109         (exec_xfer_partial, exec_files_info, exec_has_memory)
10110         (exec_make_note_section): Refactor as exec_target methods.
10111         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10112         Delete.
10113         (exec_target::find_memory_regions): New.
10114         (_initialize_exec): Don't call init_exec_ops.
10115         * gdbcore.h (exec_file_clear): Delete.
10116
10117         * corefile.c (core_target): Delete.
10118         (core_file_command): Adjust.
10119         * corelow.c (core_target): New class.
10120         (the_core_target): New.
10121         (core_close): Remove target_ops parameter.
10122         (core_close_cleanup): Adjust.
10123         (core_target::close): New.
10124         (core_open, core_detach, get_core_registers, core_files_info)
10125         (core_xfer_partial, core_thread_alive, core_read_description)
10126         (core_pid_to_str, core_thread_name, core_has_memory)
10127         (core_has_stack, core_has_registers, core_info_proc): Rework as
10128         core_target methods.
10129         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10130         (_initialize_corelow): Initialize the_core_target.
10131         * gdbcore.h (core_target): Delete.
10132         (the_core_target): New.
10133
10134         * ctf.c: (ctf_target): New class.
10135         (ctf_ops): Now a ctf_target.
10136         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10137         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10138         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10139         methods.
10140         (init_ctf_ops): Delete.
10141         (_initialize_ctf): Don't call it.
10142         * tracefile-tfile.c (tfile_target): New class.
10143         (tfile_ops): Now a tfile_target.
10144         (tfile_open, tfile_close, tfile_files_info)
10145         (tfile_get_tracepoint_status, tfile_trace_find)
10146         (tfile_fetch_registers, tfile_xfer_partial)
10147         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10148         Refactor as tfile_target methods.
10149         (tfile_xfer_partial_features): Remove target_ops parameter.
10150         (init_tfile_ops): Delete.
10151         (_initialize_tracefile_tfile): Don't call it.
10152         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10153         (tracefile_has_stack, tracefile_has_registers)
10154         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10155         tracefile_target methods.
10156         (init_tracefile_ops): Delete.
10157         (tracefile_target::tracefile_target): New.
10158         * tracefile.h: Include "target.h".
10159         (tracefile_target): New class.
10160         (init_tracefile_ops): Delete.
10161
10162         * spu-multiarch.c (spu_multiarch_target): New class.
10163         (spu_ops): Now a spu_multiarch_target.
10164         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10165         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10166         (spu_search_memory, spu_mourn_inferior): Refactor as
10167         spu_multiarch_target methods.
10168         (init_spu_ops): Delete.
10169         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10170         complete_target_initialization.
10171
10172         * ravenscar-thread.c (ravenscar_thread_target): New class.
10173         (ravenscar_ops): Now a ravenscar_thread_target.
10174         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10175         (ravenscar_thread_alive, ravenscar_pid_to_str)
10176         (ravenscar_fetch_registers, ravenscar_store_registers)
10177         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10178         (ravenscar_stopped_by_hw_breakpoint)
10179         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10180         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10181         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10182         methods.
10183         (init_ravenscar_thread_ops): Delete.
10184         (_initialize_ravenscar): Remove references to
10185         init_ravenscar_thread_ops and complete_target_initialization.
10186
10187         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10188         (bsd_uthread_target): New class.
10189         (bsd_uthread_ops): Now a bsd_uthread_target.
10190         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10191         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10192         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10193         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10194         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10195         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10196         (bsd_uthread_target): Delete function.
10197         (_initialize_bsd_uthread): Remove reference to
10198         complete_target_initialization.
10199
10200         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10201         (target_bfd): ... this new class.
10202         (target_bfd_xfer_partial, target_bfd_get_section_table)
10203         (target_bfd_close): Refactor as target_bfd methods.
10204         (target_bfd::~target_bfd): New.
10205         (target_bfd_reopen): Adjust.
10206         (target_bfd::close): New.
10207
10208         * record-btrace.c (record_btrace_target): New class.
10209         (record_btrace_ops): Now a record_btrace_target.
10210         (record_btrace_open, record_btrace_stop_recording)
10211         (record_btrace_disconnect, record_btrace_close)
10212         (record_btrace_async, record_btrace_info)
10213         (record_btrace_insn_history, record_btrace_insn_history_range)
10214         (record_btrace_insn_history_from, record_btrace_call_history)
10215         (record_btrace_call_history_range)
10216         (record_btrace_call_history_from, record_btrace_record_method)
10217         (record_btrace_is_replaying, record_btrace_will_replay)
10218         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10219         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10220         (record_btrace_store_registers, record_btrace_prepare_to_store)
10221         (record_btrace_to_get_unwinder)
10222         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10223         (record_btrace_commit_resume, record_btrace_wait)
10224         (record_btrace_stop, record_btrace_can_execute_reverse)
10225         (record_btrace_stopped_by_sw_breakpoint)
10226         (record_btrace_supports_stopped_by_sw_breakpoint)
10227         (record_btrace_stopped_by_hw_breakpoint)
10228         (record_btrace_supports_stopped_by_hw_breakpoint)
10229         (record_btrace_update_thread_list, record_btrace_thread_alive)
10230         (record_btrace_goto_begin, record_btrace_goto_end)
10231         (record_btrace_goto, record_btrace_stop_replaying_all)
10232         (record_btrace_execution_direction)
10233         (record_btrace_prepare_to_generate_core)
10234         (record_btrace_done_generating_core): Refactor as
10235         record_btrace_target methods.
10236         (init_record_btrace_ops): Delete.
10237         (_initialize_record_btrace): Remove reference to
10238         init_record_btrace_ops.
10239         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10240         the execution_direction global.
10241         (record_full_base_target, record_full_target)
10242         (record_full_core_target): New classes.
10243         (record_full_ops): Now a record_full_target.
10244         (record_full_core_ops): Now a record_full_core_target.
10245         (record_full_target::detach, record_full_target::disconnect)
10246         (record_full_core_target::disconnect)
10247         (record_full_target::mourn_inferior, record_full_target::kill):
10248         New.
10249         (record_full_open, record_full_close, record_full_async): Refactor
10250         as methods of the record_full_base_target class.
10251         (record_full_resume, record_full_commit_resume): Refactor
10252         as methods of the record_full_target class.
10253         (record_full_wait, record_full_stopped_by_watchpoint)
10254         (record_full_stopped_data_address)
10255         (record_full_stopped_by_sw_breakpoint)
10256         (record_full_supports_stopped_by_sw_breakpoint)
10257         (record_full_stopped_by_hw_breakpoint)
10258         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10259         methods of the record_full_base_target class.
10260         (record_full_store_registers, record_full_xfer_partial)
10261         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10262         Refactor as methods of the record_full_target class.
10263         (record_full_can_execute_reverse, record_full_get_bookmark)
10264         (record_full_goto_bookmark, record_full_execution_direction)
10265         (record_full_record_method, record_full_info, record_full_delete)
10266         (record_full_is_replaying, record_full_will_replay)
10267         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10268         (record_full_stop_replaying): Refactor as methods of the
10269         record_full_base_target class.
10270         (record_full_core_resume, record_full_core_kill)
10271         (record_full_core_fetch_registers)
10272         (record_full_core_prepare_to_store)
10273         (record_full_core_store_registers, record_full_core_xfer_partial)
10274         (record_full_core_insert_breakpoint)
10275         (record_full_core_remove_breakpoint)
10276         (record_full_core_has_execution): Refactor
10277         as methods of the record_full_core_target class.
10278         (record_full_base_target::supports_delete_record): New.
10279         (init_record_full_ops): Delete.
10280         (init_record_full_core_ops): Delete.
10281         (record_full_save): Refactor as method of the
10282         record_full_base_target class.
10283         (_initialize_record_full): Remove references to
10284         init_record_full_ops and init_record_full_core_ops.
10285
10286         * remote.c (remote_target, extended_remote_target): New classes.
10287         (remote_ops): Now a remote_target.
10288         (extended_remote_ops): Now an extended_remote_target.
10289         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10290         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10291         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10292         (remote_pass_signals, remote_set_syscall_catchpoint)
10293         (remote_program_signals, )
10294         (remote_thread_always_alive): Remove target_ops parameter.
10295         (remote_thread_alive, remote_thread_name)
10296         (remote_update_thread_list, remote_threads_extra_info)
10297         (remote_static_tracepoint_marker_at)
10298         (remote_static_tracepoint_markers_by_strid)
10299         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10300         (remote_open): Refactor as methods of remote_target.
10301         (extended_remote_open, extended_remote_detach)
10302         (extended_remote_attach, extended_remote_post_attach):
10303         (extended_remote_supports_disable_randomization)
10304         (extended_remote_create_inferior): : Refactor as method of
10305         extended_remote_target.
10306         (remote_set_permissions, remote_open_1, remote_detach)
10307         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10308         (remote_resume, remote_commit_resume, remote_stop)
10309         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10310         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10311         (remote_prepare_to_store, remote_store_registers)
10312         (remote_flash_erase, remote_flash_done, remote_files_info)
10313         (remote_kill, remote_mourn, remote_insert_breakpoint)
10314         (remote_remove_breakpoint, remote_insert_watchpoint)
10315         (remote_watchpoint_addr_within_range)
10316         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10317         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10318         (remote_supports_stopped_by_sw_breakpoint)
10319         (remote_stopped_by_hw_breakpoint)
10320         (remote_supports_stopped_by_hw_breakpoint)
10321         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10322         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10323         (remote_verify_memory): Refactor as methods of remote_target.
10324         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10325         parameter.
10326         (remote_xfer_partial, remote_get_memory_xfer_limit)
10327         (remote_search_memory, remote_rcmd, remote_memory_map)
10328         (remote_pid_to_str, remote_get_thread_local_address)
10329         (remote_get_tib_address, remote_read_description): Refactor as
10330         methods of remote_target.
10331         (remote_target::fileio_open, remote_target::fileio_pwrite)
10332         (remote_target::fileio_pread, remote_target::fileio_close): New.
10333         (remote_hostio_readlink, remote_hostio_fstat)
10334         (remote_filesystem_is_local, remote_can_execute_reverse)
10335         (remote_supports_non_stop, remote_supports_disable_randomization)
10336         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10337         (remote_supports_enable_disable_tracepoint)
10338         (remote_supports_string_tracing)
10339         (remote_can_run_breakpoint_commands, remote_trace_init)
10340         (remote_download_tracepoint, remote_can_download_tracepoint)
10341         (remote_download_trace_state_variable, remote_enable_tracepoint)
10342         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10343         (remote_trace_start, remote_get_trace_status)
10344         (remote_get_tracepoint_status, remote_trace_stop)
10345         (remote_trace_find, remote_get_trace_state_variable_value)
10346         (remote_save_trace_data, remote_get_raw_trace_data)
10347         (remote_set_disconnected_tracing, remote_core_of_thread)
10348         (remote_set_circular_trace_buffer, remote_traceframe_info)
10349         (remote_get_min_fast_tracepoint_insn_len)
10350         (remote_set_trace_buffer_size, remote_set_trace_notes)
10351         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10352         (remote_disable_btrace, remote_teardown_btrace)
10353         (remote_read_btrace, remote_btrace_conf)
10354         (remote_augmented_libraries_svr4_read, remote_load)
10355         (remote_pid_to_exec_file, remote_can_do_single_step)
10356         (remote_execution_direction, remote_thread_handle_to_thread_info):
10357         Refactor as methods of remote_target.
10358         (init_remote_ops, init_extended_remote_ops): Delete.
10359         (remote_can_async_p, remote_is_async_p, remote_async)
10360         (remote_thread_events, remote_upload_tracepoints)
10361         (remote_upload_trace_state_variables): Refactor as methods of
10362         remote_target.
10363         (_initialize_remote): Remove references to init_remote_ops and
10364         init_extended_remote_ops.
10365
10366         * remote-sim.c (gdbsim_target): New class.
10367         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10368         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10369         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10370         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10371         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10372         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10373         Refactor as methods of gdbsim_target.
10374         (gdbsim_ops): Now a gdbsim_target.
10375         (init_gdbsim_ops): Delete.
10376         (gdbsim_cntrl_c): Adjust.
10377         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10378
10379         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10380         (the_amd64_linux_nat_target): New.
10381         (amd64_linux_fetch_inferior_registers)
10382         (amd64_linux_store_inferior_registers): Refactor as methods of
10383         amd64_linux_nat_target.
10384         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10385         * i386-linux-nat.c: Don't include "linux-nat.h".
10386         (i386_linux_nat_target): New class.
10387         (the_i386_linux_nat_target): New.
10388         (i386_linux_fetch_inferior_registers)
10389         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10390         as methods of i386_linux_nat_target.
10391         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10392         * inf-child.c (inf_child_ops): Delete.
10393         (inf_child_fetch_inferior_registers)
10394         (inf_child_store_inferior_registers): Delete.
10395         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10396         methods of inf_child_target.
10397         (inf_child_target::supports_terminal_ours)
10398         (inf_child_target::terminal_init)
10399         (inf_child_target::terminal_inferior)
10400         (inf_child_target::terminal_ours_for_output)
10401         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10402         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10403         New.
10404         (inf_child_open, inf_child_disconnect, inf_child_close)
10405         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10406         (inf_child_post_startup_inferior, inf_child_can_run)
10407         (inf_child_pid_to_exec_file): Refactor as methods of
10408         inf_child_target.
10409         (inf_child_follow_fork): Delete.
10410         (inf_child_target::can_create_inferior)
10411         (inf_child_target::can_attach): New.
10412         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10413         (inf_child_target::has_stack, inf_child_target::has_registers)
10414         (inf_child_target::has_execution): New.
10415         (inf_child_fileio_open, inf_child_fileio_pwrite)
10416         (inf_child_fileio_pread, inf_child_fileio_fstat)
10417         (inf_child_fileio_close, inf_child_fileio_unlink)
10418         (inf_child_fileio_readlink, inf_child_use_agent)
10419         (inf_child_can_use_agent): Refactor as methods of
10420         inf_child_target.
10421         (return_zero, inf_child_target): Delete.
10422         (inf_child_target::inf_child_target): New.
10423         * inf-child.h: Include "target.h".
10424         (inf_child_target): Delete function prototype.
10425         (inf_child_target): New class.
10426         (inf_child_open_target, inf_child_mourn_inferior)
10427         (inf_child_maybe_unpush_target): Delete.
10428         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10429         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10430         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10431         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10432         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10433         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10434         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10435         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10436         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10437         methods of inf_ptrace_target.
10438         (inf_ptrace_target): Delete function.
10439         * inf-ptrace.h: Include "inf-child.h".
10440         (inf_ptrace_target): Delete function declaration.
10441         (inf_ptrace_target): New class.
10442         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10443         * linux-nat.c (linux_target): New.
10444         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10445         (linux_nat_target::~linux_nat_target): New.
10446         (linux_child_post_attach, linux_child_post_startup_inferior)
10447         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10448         (linux_child_remove_fork_catchpoint)
10449         (linux_child_insert_vfork_catchpoint)
10450         (linux_child_remove_vfork_catchpoint)
10451         (linux_child_insert_exec_catchpoint)
10452         (linux_child_remove_exec_catchpoint)
10453         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10454         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10455         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10456         (linux_nat_stopped_data_address)
10457         (linux_nat_stopped_by_sw_breakpoint)
10458         (linux_nat_supports_stopped_by_sw_breakpoint)
10459         (linux_nat_stopped_by_hw_breakpoint)
10460         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10461         (linux_nat_kill, linux_nat_mourn_inferior)
10462         (linux_nat_xfer_partial, linux_nat_thread_alive)
10463         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10464         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10465         (linux_child_static_tracepoint_markers_by_strid)
10466         (linux_nat_is_async_p, linux_nat_can_async_p)
10467         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10468         (linux_nat_supports_multi_process)
10469         (linux_nat_supports_disable_randomization, linux_nat_async)
10470         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10471         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10472         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10473         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10474         methods of linux_nat_target.
10475         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10476         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10477         parameter.
10478         (check_stopped_by_watchpoint): Adjust.
10479         (linux_xfer_partial): Delete.
10480         (linux_target_install_ops, linux_target, linux_nat_add_target):
10481         Delete.
10482         (linux_nat_target::linux_nat_target): New.
10483         * linux-nat.h: Include "inf-ptrace.h".
10484         (linux_nat_target): New.
10485         (linux_target, linux_target_install_ops, linux_nat_add_target):
10486         Delete function declarations.
10487         (linux_target): Declare global.
10488         * linux-thread-db.c (thread_db_target): New.
10489         (thread_db_target::thread_db_target): New.
10490         (thread_db_ops): Delete.
10491         (the_thread_db_target): New.
10492         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10493         (thread_db_update_thread_list, thread_db_pid_to_str)
10494         (thread_db_extra_thread_info)
10495         (thread_db_thread_handle_to_thread_info)
10496         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10497         (thread_db_resume): Refactor as methods of thread_db_target.
10498         (init_thread_db_ops): Delete.
10499         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10500         * x86-linux-nat.c: Don't include "linux-nat.h".
10501         (super_post_startup_inferior): Delete.
10502         (x86_linux_nat_target::~x86_linux_nat_target): New.
10503         (x86_linux_child_post_startup_inferior)
10504         (x86_linux_read_description, x86_linux_enable_btrace)
10505         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10506         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10507         methods of x86_linux_nat_target.
10508         (x86_linux_create_target): Delete.  Bits folded ...
10509         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10510         pointer.
10511         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10512         (x86_linux_nat_target): New class.
10513         (x86_linux_create_target): Delete.
10514         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10515         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10516         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10517         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10518         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10519         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10520         make extern.
10521         (x86_use_watchpoints): Delete.
10522         * x86-nat.h: Include "breakpoint.h" and "target.h".
10523         (x86_use_watchpoints): Delete.
10524         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10525         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10526         (x86_insert_watchpoint, x86_remove_watchpoint)
10527         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10528         (x86_stopped_by_hw_breakpoint): New declarations.
10529         (x86_nat_target): New template class.
10530
10531         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10532         (the_ppc_linux_nat_target): New.
10533         (ppc_linux_fetch_inferior_registers)
10534         (ppc_linux_can_use_hw_breakpoint)
10535         (ppc_linux_region_ok_for_hw_watchpoint)
10536         (ppc_linux_ranged_break_num_registers)
10537         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10538         (ppc_linux_insert_mask_watchpoint)
10539         (ppc_linux_remove_mask_watchpoint)
10540         (ppc_linux_can_accel_watchpoint_condition)
10541         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10542         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10543         (ppc_linux_watchpoint_addr_within_range)
10544         (ppc_linux_masked_watch_num_registers)
10545         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10546         (ppc_linux_read_description): Refactor as methods of
10547         ppc_linux_nat_target.
10548         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10549
10550         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10551         (procfs_target): New class.
10552         (the_procfs_target): New.
10553         (procfs_target): Delete function.
10554         (procfs_auxv_parse, procfs_attach, procfs_detach)
10555         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10556         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10557         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10558         (procfs_create_inferior, procfs_update_thread_list)
10559         (procfs_thread_alive, procfs_pid_to_str)
10560         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10561         (procfs_stopped_data_address, procfs_insert_watchpoint)
10562         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10563         (proc_find_memory_regions, procfs_info_proc)
10564         (procfs_make_note_section): Refactor as methods of procfs_target.
10565         (_initialize_procfs): Adjust.
10566         * sol-thread.c (sol_thread_target): New class.
10567         (sol_thread_ops): Now a sol_thread_target.
10568         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10569         (sol_thread_fetch_registers, sol_thread_store_registers)
10570         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10571         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10572         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10573         (init_sol_thread_ops): Delete.
10574         (_initialize_sol_thread): Adjust.  Remove references to
10575         init_sol_thread_ops and complete_target_initialization.
10576
10577         * windows-nat.c (windows_nat_target): New class.
10578         (windows_fetch_inferior_registers)
10579         (windows_store_inferior_registers, windows_resume, windows_wait)
10580         (windows_attach, windows_detach, windows_pid_to_exec_file)
10581         (windows_files_info, windows_create_inferior)
10582         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10583         (windows_close, windows_pid_to_str, windows_xfer_partial)
10584         (windows_get_tib_address, windows_get_ada_task_ptid)
10585         (windows_thread_name, windows_thread_alive): Refactor as
10586         windows_nat_target methods.
10587         (do_initial_windows_stuff): Adjust.
10588         (windows_target): Delete function.
10589         (_initialize_windows_nat): Adjust.
10590
10591         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10592         (darwin_mourn_inferior, darwin_kill_inferior)
10593         (darwin_create_inferior, darwin_attach, darwin_detach)
10594         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10595         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10596         (darwin_supports_multi_process): Refactor as darwin_nat_target
10597         methods.
10598         (darwin_resume_to, darwin_files_info): Delete.
10599         (_initialize_darwin_inferior): Rename to ...
10600         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10601         * darwin-nat.h: Include "inf-child.h".
10602         (darwin_nat_target): New class.
10603         (darwin_complete_target): Delete.
10604         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10605         (darwin_target): New.
10606         (i386_darwin_fetch_inferior_registers)
10607         (i386_darwin_store_inferior_registers): Refactor as methods of
10608         darwin_nat_target.
10609         (darwin_complete_target): Delete, with ...
10610         (_initialize_i386_darwin_nat): ... bits factored out here.
10611
10612         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10613         (the_alpha_linux_nat_target): New.
10614         (alpha_linux_register_u_offset): Refactor as
10615         alpha_linux_nat_target method.
10616         (_initialize_alpha_linux_nat): Adjust.
10617         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10618         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10619         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10620         methods of linux_nat_trad_target.
10621         (linux_trad_target): Delete.
10622         * linux-nat-trad.h (linux_trad_target): Delete function.
10623         (linux_nat_trad_target): New class.
10624         * mips-linux-nat.c (mips_linux_nat_target): New class.
10625         (super_fetch_registers, super_store_registers, super_close):
10626         Delete.
10627         (the_mips_linux_nat_target): New.
10628         (mips64_linux_regsets_fetch_registers)
10629         (mips64_linux_regsets_store_registers)
10630         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10631         (mips_linux_register_u_offset, mips_linux_read_description)
10632         (mips_linux_can_use_hw_breakpoint)
10633         (mips_linux_stopped_by_watchpoint)
10634         (mips_linux_stopped_data_address)
10635         (mips_linux_region_ok_for_hw_watchpoint)
10636         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10637         (mips_linux_close): Refactor as methods of mips_linux_nat.
10638         (_initialize_mips_linux_nat): Adjust to C++ification.
10639
10640         * aix-thread.c (aix_thread_target): New class.
10641         (aix_thread_ops): Now an aix_thread_target.
10642         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10643         (aix_thread_fetch_registers, aix_thread_store_registers)
10644         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10645         (aix_thread_thread_alive, aix_thread_pid_to_str)
10646         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10647         Refactor as methods of aix_thread_target.
10648         (init_aix_thread_ops): Delete.
10649         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10650         and complete_target_initialization.
10651         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10652         (rs6000_nat_target): New class.
10653         (the_rs6000_nat_target): New.
10654         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10655         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10656         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10657         (super_create_inferior): Delete.
10658         (_initialize_rs6000_nat): Adjust to C++ification.
10659
10660         * arm-linux-nat.c (arm_linux_nat_target): New class.
10661         (the_arm_linux_nat_target): New.
10662         (arm_linux_fetch_inferior_registers)
10663         (arm_linux_store_inferior_registers, arm_linux_read_description)
10664         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10665         (arm_linux_remove_hw_breakpoint)
10666         (arm_linux_region_ok_for_hw_watchpoint)
10667         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10668         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10669         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10670         arm_linux_nat_target.
10671         (_initialize_arm_linux_nat): Adjust to C++ification.
10672
10673         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10674         (the_aarch64_linux_nat_target): New.
10675         (aarch64_linux_fetch_inferior_registers)
10676         (aarch64_linux_store_inferior_registers)
10677         (aarch64_linux_child_post_startup_inferior)
10678         (aarch64_linux_read_description)
10679         (aarch64_linux_can_use_hw_breakpoint)
10680         (aarch64_linux_insert_hw_breakpoint)
10681         (aarch64_linux_remove_hw_breakpoint)
10682         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10683         (aarch64_linux_region_ok_for_hw_watchpoint)
10684         (aarch64_linux_stopped_data_address)
10685         (aarch64_linux_stopped_by_watchpoint)
10686         (aarch64_linux_watchpoint_addr_within_range)
10687         (aarch64_linux_can_do_single_step): Refactor as methods of
10688         aarch64_linux_nat_target.
10689         (super_post_startup_inferior): Delete.
10690         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10691
10692         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10693         (the_hppa_linux_nat_target): New.
10694         (hppa_linux_fetch_inferior_registers)
10695         (hppa_linux_store_inferior_registers): Refactor as methods of
10696         hppa_linux_nat_target.
10697         (_initialize_hppa_linux_nat): Adjust to C++ification.
10698
10699         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10700         (the_ia64_linux_nat_target): New.
10701         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10702         (ia64_linux_stopped_data_address)
10703         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10704         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10705         ia64_linux_nat_target methods.
10706         (super_xfer_partial): Delete.
10707         (_initialize_ia64_linux_nat): Adjust to C++ification.
10708
10709         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10710         (the_m32r_linux_nat_target): New.
10711         (m32r_linux_fetch_inferior_registers)
10712         (m32r_linux_store_inferior_registers): Refactor as
10713         m32r_linux_nat_target methods.
10714         (_initialize_m32r_linux_nat): Adjust to C++ification.
10715
10716         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10717         (the_m68k_linux_nat_target): New.
10718         (m68k_linux_fetch_inferior_registers)
10719         (m68k_linux_store_inferior_registers): Refactor as
10720         m68k_linux_nat_target methods.
10721         (_initialize_m68k_linux_nat): Adjust to C++ification.
10722
10723         * s390-linux-nat.c (s390_linux_nat_target): New class.
10724         (the_s390_linux_nat_target): New.
10725         (s390_linux_fetch_inferior_registers)
10726         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10727         (s390_insert_watchpoint, s390_remove_watchpoint)
10728         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10729         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10730         (s390_auxv_parse, s390_read_description): Refactor as methods of
10731         s390_linux_nat_target.
10732         (_initialize_s390_nat): Adjust to C++ification.
10733
10734         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10735         (the_sparc_linux_nat_target): New.
10736         (_initialize_sparc_linux_nat): Adjust to C++ification.
10737         * sparc-nat.c (sparc_fetch_inferior_registers)
10738         (sparc_store_inferior_registers): Remove target_ops parameter.
10739         * sparc-nat.h (sparc_fetch_inferior_registers)
10740         (sparc_store_inferior_registers): Remove target_ops parameter.
10741         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10742         (the_sparc64_linux_nat_target): New.
10743         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10744
10745         * spu-linux-nat.c (spu_linux_nat_target): New class.
10746         (the_spu_linux_nat_target): New.
10747         (spu_child_post_startup_inferior, spu_child_post_attach)
10748         (spu_child_wait, spu_fetch_inferior_registers)
10749         (spu_store_inferior_registers, spu_xfer_partial)
10750         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10751         methods.
10752         (_initialize_spu_nat): Adjust to C++ification.
10753
10754         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10755         (the_tilegx_linux_nat_target): New.
10756         (fetch_inferior_registers, store_inferior_registers):
10757         Refactor as methods.
10758         (_initialize_tile_linux_nat): Adjust to C++ification.
10759
10760         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10761         (the_xtensa_linux_nat_target): New.
10762         (xtensa_linux_fetch_inferior_registers)
10763         (xtensa_linux_store_inferior_registers): Refactor as
10764         xtensa_linux_nat_target methods.
10765         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10766
10767         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10768         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10769         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10770         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10771         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10772         (fbsd_stopped_by_sw_breakpoint)
10773         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10774         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10775         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10776         (fbsd_post_startup_inferior, fbsd_post_attach)
10777         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10778         (fbsd_set_syscall_catchpoint)
10779         (super_xfer_partial, super_resume, super_wait)
10780         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10781         (fbsd_handle_debug_trap): Remove target_ops parameter.
10782         (fbsd_nat_add_target): Delete.
10783         * fbsd-nat.h: Include "inf-ptrace.h".
10784         (fbsd_nat_add_target): Delete.
10785         (USE_SIGTRAP_SIGINFO): Define.
10786         (fbsd_nat_target): New class.
10787
10788         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10789         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10790         (amd64bsd_target): Delete.
10791         * amd64-bsd-nat.h: New file.
10792         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10793         "x86-bsd-nat.h".
10794         (amd64_fbsd_nat_target): New class.
10795         (the_amd64_fbsd_nat_target): New.
10796         (amd64fbsd_read_description): Refactor as method of
10797         amd64_fbsd_nat_target.
10798         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10799         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10800         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10801         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10802         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10803         (i386bsd_target): Delete.
10804         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10805         (i386bsd_fetch_inferior_registers)
10806         (i386bsd_store_inferior_registers): Declare.
10807         (i386_bsd_nat_target): New class.
10808         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10809         (the_i386_fbsd_nat_target): New.
10810         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10811         i386_fbsd_nat_target methods.
10812         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10813         (_initialize_i386fbsd_nat): Adjust to C++ification.
10814         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10815         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10816         (_initialize_x86_bsd_nat): Adjust to C++ification.
10817         * x86-bsd-nat.h: Include "x86-nat.h".
10818         (x86bsd_target): Delete declaration.
10819         (x86bsd_nat_target): New class.
10820
10821         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10822         (the_aarch64_fbsd_nat_target): New.
10823         (aarch64_fbsd_fetch_inferior_registers)
10824         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10825         aarch64_fbsd_nat_target.
10826         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10827         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10828         (the_alpha_bsd_nat_target): New.
10829         (alphabsd_fetch_inferior_registers)
10830         (alphabsd_store_inferior_registers): Refactor as
10831         alpha_bsd_nat_target methods.
10832         (_initialize_alphabsd_nat): Refactor as methods of
10833         alpha_bsd_nat_target.
10834         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10835         (the_amd64_nbsd_nat_target): New.
10836         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10837         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10838         (the_amd64_obsd_nat_target): New.
10839         (_initialize_amd64obsd_nat): Adjust to C++ification.
10840         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10841         (the_arm_fbsd_nat_target): New.
10842         (arm_fbsd_fetch_inferior_registers)
10843         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10844         (_initialize_arm_fbsd_nat): Refactor as methods of
10845         arm_fbsd_nat_target.
10846         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10847         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10848         (the_arm_netbsd_nat_target): New.
10849         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10850         arm_netbsd_nat_target.
10851         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10852         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10853         (the_hppa_nbsd_nat_target): New.
10854         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10855         hppa_nbsd_nat_target methods.
10856         (_initialize_hppanbsd_nat): Adjust to C++ification.
10857         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10858         (the_hppa_obsd_nat_target): New.
10859         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10860         methods of hppa_obsd_nat_target.
10861         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10862         add_target.
10863         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10864         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10865         add_target.
10866         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10867         (_initialize_i386obsd_nat): Use add_target.
10868         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10869         (the_m68k_bsd_nat_target): New.
10870         (m68kbsd_fetch_inferior_registers)
10871         (m68kbsd_store_inferior_registers): Refactor as methods of
10872         m68k_bsd_nat_target.
10873         (_initialize_m68kbsd_nat): Adjust to C++ification.
10874         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10875         (the_mips_fbsd_nat_target): New.
10876         (mips_fbsd_fetch_inferior_registers)
10877         (mips_fbsd_store_inferior_registers): Refactor as methods of
10878         mips_fbsd_nat_target.
10879         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10880         add_target.
10881         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10882         (the_mips_nbsd_nat_target): New.
10883         (mipsnbsd_fetch_inferior_registers)
10884         (mipsnbsd_store_inferior_registers): Refactor as methods of
10885         mips_nbsd_nat_target.
10886         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10887         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10888         (the_mips64_obsd_nat_target): New.
10889         (mips64obsd_fetch_inferior_registers)
10890         (mips64obsd_store_inferior_registers): Refactor as methods of
10891         mips64_obsd_nat_target.
10892         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10893         add_target.
10894         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10895         nbsd_nat_target.
10896         * nbsd-nat.h: Include "inf-ptrace.h".
10897         (nbsd_nat_target): New class.
10898         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10899         (obsd_wait): Refactor as methods of obsd_nat_target.
10900         (obsd_add_target): Delete.
10901         * obsd-nat.h: Include "inf-ptrace.h".
10902         (obsd_nat_target): New class.
10903         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10904         (the_ppc_fbsd_nat_target): New.
10905         (ppcfbsd_fetch_inferior_registers)
10906         (ppcfbsd_store_inferior_registers): Refactor as methods of
10907         ppc_fbsd_nat_target.
10908         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10909         add_target.
10910         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10911         (the_ppc_nbsd_nat_target): New.
10912         (ppcnbsd_fetch_inferior_registers)
10913         (ppcnbsd_store_inferior_registers): Refactor as methods of
10914         ppc_nbsd_nat_target.
10915         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10916         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10917         (the_ppc_obsd_nat_target): New.
10918         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10919         methods of ppc_obsd_nat_target.
10920         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10921         add_target.
10922         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10923         (the_sh_nbsd_nat_target): New.
10924         (shnbsd_fetch_inferior_registers)
10925         (shnbsd_store_inferior_registers): Refactor as methods of
10926         sh_nbsd_nat_target.
10927         (_initialize_shnbsd_nat): Adjust to C++ification.
10928         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10929         (inf_ptrace_xfer_partial): Delete.
10930         (sparc_xfer_partial, sparc_target): Delete.
10931         * sparc-nat.h (sparc_fetch_inferior_registers)
10932         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10933         (sparc_target): Delete function declaration.
10934         (sparc_target): New template class.
10935         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10936         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10937         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10938         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10939         add_target.
10940         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10941         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10942         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10943         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10944         add_target.
10945         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10946         (the_vax_bsd_nat_target): New.
10947         (vaxbsd_fetch_inferior_registers)
10948         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10949         methods.
10950         (_initialize_vaxbsd_nat): Adjust to C++ification.
10951
10952         * bsd-kvm.c (bsd_kvm_target): New class.
10953         (bsd_kvm_ops): Now a bsd_kvm_target.
10954         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10955         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10956         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10957         bsd_kvm_target.
10958         (bsd_kvm_return_one): Delete.
10959         (bsd_kvm_add_target): Adjust to C++ification.
10960
10961         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10962         (nto_procfs_target_procfs): New classes.
10963         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10964         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10965         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10966         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10967         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10968         (procfs_remove_hw_breakpoint, procfs_resume)
10969         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10970         (procfs_kill_inferior, procfs_store_registers)
10971         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10972         as methods of nto_procfs_target.
10973         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10974         (nto_native_ops): Delete.
10975         (procfs_open, procfs_native_open): Delete.
10976         (nto_native_ops): Now an nto_procfs_target_native.
10977         (init_procfs_targets): Adjust to C++ification.
10978         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10979         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10980         Refactor as methods of nto_procfs_target.
10981
10982         * go32-nat.c (go32_nat_target): New class.
10983         (the_go32_nat_target): New.
10984         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10985         (go32_store_registers, go32_xfer_partial, go32_files_info)
10986         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10987         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10988         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10989         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10990         (go32_target): Delete.
10991         (_initialize_go32_nat): Adjust to C++ification.
10992
10993         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10994         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10995         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10996         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10997         gnu_nat_target.
10998         (gnu_target): Delete.
10999         * gnu-nat.h (gnu_target): Delete.
11000         (gnu_nat_target): New class.
11001         * i386-gnu-nat.c (gnu_base_target): New.
11002         (i386_gnu_nat_target): New class.
11003         (the_i386_gnu_nat_target): New.
11004         (_initialize_i386gnu_nat): Adjust to C++ification.
11005
11006 2018-05-02  Pedro Alves  <palves@redhat.com>
11007
11008         * bfd-target.c (target_bfd_xclose): Rename to ...
11009         (target_bfd_close): ... this.
11010         (target_bfd_reopen): Adjust.
11011         * target.c (target_close): Remove references to to_xclose.
11012         * target.h (target_ops::to_xclose): Delete.
11013         (target_ops::to_close): Update comments.
11014
11015 2018-05-02  Pedro Alves  <palves@redhat.com>
11016
11017         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11018         "linux-nat.h".
11019         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11020         * inf-ptrace.c (inf_ptrace_register_u_offset)
11021         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11022         (inf_ptrace_store_register, inf_ptrace_store_registers)
11023         (inf_ptrace_trad_target): Move to ...
11024         * linux-nat-trad.c: ... this new file.
11025         * linux-nat-trad.h: New file.
11026         * linux-nat.c (linux_target_install_ops): Make extern.
11027         (linux_trad_target): Delete.
11028         * linux-nat.h (linux_trad_target): Delete declaration.
11029         (linux_target_install_ops): Declare.
11030         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11031         "linux-nat.h".
11032
11033 2018-05-02  Pedro Alves  <palves@redhat.com>
11034
11035         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11036         procfs_target/add_target here.
11037         * procfs.c (procfs_target): Make static.
11038         (_initialize_procfs): Call add_target here.
11039         * procfs.h (struct target_ops): Remove forward declaration.
11040         (procfs_target): Remove declaration.
11041         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11042
11043 2018-05-02  Pedro Alves  <palves@redhat.com>
11044
11045         * procfs.c (procfs_stopped_by_watchpoint)
11046         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11047         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11048         Forward declare.
11049         (procfs_use_watchpoints): Delete, move contents...
11050         (procfs_target): ... here.
11051         * procfs.h (procfs_use_watchpoints): Delete declaration.
11052         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11053         procfs_use_watchpoints.
11054         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11055         procfs_use_watchpoints.
11056
11057 2018-05-02  Tom Tromey  <tom@tromey.com>
11058
11059         PR python/20084:
11060         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11061         and var_zuinteger_unlimited.
11062         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11063         and PARAM_ZUINTEGER_UNLIMITED.
11064         (set_parameter_value): Handle var_zuinteger and
11065         var_zuinteger_unlimited.
11066         (add_setshow_generic): Likewise.
11067         (parmpy_init): Likewise.
11068
11069 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11070
11071         PR rust/23124
11072         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11073         pointer is not null before dereferencing it.
11074
11075 2018-04-30  Tom Tromey  <tom@tromey.com>
11076
11077         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11078         is_mi_like_p.
11079
11080 2018-04-30  Tom Tromey  <tom@tromey.com>
11081
11082         * breakpoint.c (mention): Remove use of is_mi_like_p.
11083         (print_mention_ranged_breakpoint): Likewise.
11084         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11085         of is_mi_like_p.
11086
11087 2018-04-30  Tom Tromey  <tom@tromey.com>
11088
11089         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11090
11091 2018-04-30  Tom Tromey  <tom@tromey.com>
11092
11093         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11094         (info_spu_event_command): Remove some uses of is_mi_like_p.
11095
11096 2018-04-30  Tom Tromey  <tom@tromey.com>
11097
11098         * python/py-framefilter.c (py_print_single_arg)
11099         (enumerate_locals, py_print_args, py_print_frame): Remove some
11100         uses of is_mi_like_p.
11101
11102 2018-04-30  Tom Tromey  <tom@tromey.com>
11103
11104         * ui-out.c: Update.
11105         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11106         * ui-out.h (ui_out::is_mi_like_p): Now const.
11107         (ui_out::do_is_mi_like_p): Now const.
11108         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11109
11110 2018-04-30  Tom Tromey  <tom@tromey.com>
11111
11112         * varobj.c (varobj_set_visualizer): Use new_reference.
11113         * python/python.c (gdbpy_decode_line): Use new_reference.
11114         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11115         new_reference.
11116
11117 2018-04-30  Tom Tromey  <tom@tromey.com>
11118
11119         * varobj.c (install_new_value): Use new_reference.
11120         * value.h (value_incref): Return void.  Swap intro comment with
11121         value_decref.
11122         * value.c (set_value_parent): Use new_reference.
11123         (value_incref): Return void.  Update intro comment.
11124         (release_value): Use new_reference.
11125         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11126
11127 2018-04-30  Tom Tromey  <tom@tromey.com>
11128
11129         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11130         * gdb_bfd.h (new_bfd_ref): Remove.
11131         (gdb_bfd_open): Update comment.
11132         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11133         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11134         (gdb_bfd_fdopenr): Use new_reference.
11135         * exec.c (exec_file_attach): Use new_reference.
11136
11137 2018-04-30  Tom Tromey  <tom@tromey.com>
11138
11139         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11140         method.
11141
11142 2018-04-30  Tom Tromey  <tom@tromey.com>
11143
11144         * jit.c (jit_read_code_entry): Use type_align.
11145         * i386-tdep.c (i386_gdbarch_init): Don't call
11146         set_gdbarch_long_long_align_bit.
11147         * gdbarch.sh: Remove long_long_align_bit.
11148         * gdbarch.c, gdbarch.h: Rebuild.
11149         * arc-tdep.c (arc_type_align): New function.
11150         (arc_gdbarch_init): Use arc_type_align.  Don't call
11151         set_gdbarch_long_long_align_bit.
11152
11153 2018-04-30  Tom Tromey  <tom@tromey.com>
11154
11155         * rust-lang.c (rust_type_alignment): Remove.
11156         (rust_composite_type): Use type_align.
11157
11158 2018-04-30  Tom Tromey  <tom@tromey.com>
11159
11160         * NEWS: Mention Type.align.
11161         * python/py-type.c (typy_get_alignof): New function.
11162         (type_object_getset): Add "alignof".
11163
11164 2018-04-30  Tom Tromey  <tom@tromey.com>
11165
11166         PR exp/17095:
11167         * NEWS: Update.
11168         * std-operator.def (UNOP_ALIGNOF): New operator.
11169         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11170         New.
11171         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11172         * c-lang.c (c_op_print_tab): Add alignof.
11173         * c-exp.y (ALIGNOF): New token.
11174         (exp): Add "ALIGNOF" production.
11175         (ident_tokens): Add _Alignof and alignof.
11176
11177 2018-04-30  Tom Tromey  <tom@tromey.com>
11178
11179         * i386-tdep.c (i386_type_align): New function.
11180         (i386_gdbarch_init): Update.
11181         * gdbarch.sh (type_align): New method.
11182         * gdbarch.c, gdbarch.h: Rebuild.
11183         * arch-utils.h (default_type_align): Declare.
11184         * arch-utils.c (default_type_align): New function.
11185         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11186         (struct type) <align_log2>: New field.
11187         <instance_flags>: Now a bitfield.
11188         (TYPE_RAW_ALIGN): New macro.
11189         (type_align, type_raw_align, set_type_align): Declare.
11190         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11191         functions.
11192         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11193         (get_alignment, maybe_set_alignment): New functions.
11194         (read_structure_type, read_enumeration_type, read_array_type)
11195         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11196         (read_subrange_type, read_base_type): Set type alignment.
11197
11198 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11199
11200         * dwarf2read.c (read_index_from_section): Use bool.
11201
11202 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11203
11204         PR gdb/22950
11205         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11206         with #ifdef.
11207
11208 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11209
11210         PR build/22873
11211         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11212         last step, and do it atomically.
11213
11214 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11215
11216         * compile/compile-c-types.c (convert_int, convert_float):
11217         Update for C FE v1.
11218
11219 2018-04-27  Tom Tromey  <tom@tromey.com>
11220
11221         PR rust/22545:
11222         * rust-lang.c (rust_inclusive_range_type_p): New function.
11223         (rust_range): Handle inclusive ranges.
11224         (rust_compute_range): Likewise.
11225         * rust-exp.y (struct rust_op) <inclusive>: New field.
11226         (DOTDOTEQ): New constant.
11227         (range_expr): Add "..=" productions.
11228         (operator_tokens): Add "..=" token.
11229         (ast_range): Add "inclusive" parameter.
11230         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11231         ranges.
11232         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11233         bounds values.
11234         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11235         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11236         Update comments.
11237         * expprint.c (print_subexp_standard): Handle new bounds values.
11238         (dump_subexp_body_standard): Likewise.
11239
11240 2018-04-27  Tom Tromey  <tom@tromey.com>
11241
11242         * configure: Rebuild.
11243         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11244         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11245         "OVERRIDE".
11246         (class symbol_needs_eval_context): Likewise.
11247         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11248         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11249         "virtual".
11250         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11251         "override".
11252         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11253         * aarch64-tdep.c (instruction_reader::read): Use "override".
11254         (instruction_reader_test::read): Likewise.
11255         * arm-tdep.c (instruction_reader::read): Use "override".
11256         (instruction_reader_thumb::read): Likewise.
11257
11258 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11259
11260         PR remote/9665
11261         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11262         instead of remote_send.
11263         (remote_send): Remove.
11264
11265 2018-04-26  Pedro Alves  <palves@redhat.com>
11266
11267         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11268         find_function_start_sal instead of find_pc_line.
11269
11270 2018-04-26  Pedro Alves  <palves@redhat.com>
11271
11272         * breakpoint.c (set_breakpoint_location_function): Handle
11273         mst_data_gnu_ifunc.
11274         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11275         * elfread.c (elf_symtab_read): Give data symbols with
11276         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11277         (elf_rel_plt_read): Update comment.
11278         * linespec.c (convert_linespec_to_sals): Handle
11279         mst_data_gnu_ifunc.
11280         (minsym_found): Handle mst_data_gnu_ifunc.
11281         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11282         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11283         * parse.c (find_minsym_type_and_address): Handle
11284         mst_data_gnu_ifunc.
11285         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11286         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11287         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11288         comment.
11289         <mst_data_gnu_ifunc>: New enumerator.
11290
11291 2018-04-26  Pedro Alves  <palves@redhat.com>
11292
11293         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11294         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11295         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11296         Handle it.
11297         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11298         (lookup_minimal_symbol_by_pc): Adjust.
11299         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11300         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11301         * minsyms.h (lookup_msym_prefer): New enum.
11302         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11303         parameter by a lookup_msym_prefer parameter.
11304
11305 2018-04-26  Pedro Alves  <palves@redhat.com>
11306
11307         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11308         ends in "@plt" instead of looking at the symbol's section.
11309
11310 2018-04-26  Pedro Alves  <palves@redhat.com>
11311
11312         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11313         all references.
11314         (find_pc_partial_function_gnu_ifunc): Rename to ...
11315         (find_pc_partial_function): ... this, and remove references to
11316         'is_gnu_ifunc_p'.
11317         (find_pc_partial_function): Delete old implementation.
11318         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11319
11320 2018-04-26  Pedro Alves  <palves@redhat.com>
11321
11322         * linespec.c (struct bound_minimal_symbol_search_key): New.
11323         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11324         skip first line if we found a GNU ifunc minimal symbol by name.
11325         (compare_msymbols): Change parameters to work with a destructured
11326         lhs minsym.
11327         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11328         functions.
11329
11330 2018-04-26  Pedro Alves  <palves@redhat.com>
11331
11332         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11333         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11334         address/name.
11335         (add_location_to_breakpoint): Store the minsym and the objfile in
11336         the breakpoint location.
11337         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11338         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11339         Record the minsym in the sal.
11340         * symtab.h (symtab_and_line) <msymbol>: New field.
11341
11342 2018-04-26  Pedro Alves  <palves@redhat.com>
11343
11344         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11345         unless we actually resolved the ifunc.
11346
11347 2018-04-26  Pedro Alves  <palves@redhat.com>
11348
11349         * c-exp.y (variable production): Prefer ifunc minsyms over
11350         regular function symbols.
11351         * symtab.c (find_gnu_ifunc): New function.
11352         * minsyms.h (lookup_msym_prefer): New enum.
11353         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11354         parameter by a lookup_msym_prefer parameter.
11355         * symtab.h (find_gnu_ifunc): New declaration.
11356
11357 2018-04-26  Pedro Alves  <palves@redhat.com>
11358
11359         * blockframe.c (find_gnu_ifunc_target_type): New function.
11360         (find_function_type): New.
11361         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11362         return a value with a memory address.
11363         (eval_call): For calls to GNU ifunc functions, try to find the
11364         type of the target function from the type that the resolver
11365         returns.
11366         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11367         symbols.
11368         * infcall.c (find_function_return_type): Delete.
11369         (find_function_addr): Add 'function_type' parameter.  For calls to
11370         GNU ifunc functions, try to find the type of the target function
11371         from the type that the resolver returns, and return it via
11372         FUNCTION_TYPE.
11373         (call_function_by_hand_dummy): Adjust to use the function type
11374         returned by find_function_addr.
11375         (find_function_addr): Add 'function_type' parameter and move
11376         description here.
11377         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11378         declarations.
11379
11380 2018-04-26  Pedro Alves  <palves@redhat.com>
11381
11382         * c-exp.y (variable production): Skip finding an alias for ifunc
11383         symbols.
11384
11385 2018-04-26  Pedro Alves  <palves@redhat.com>
11386
11387         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11388
11389 2018-04-25  Pedro Alves  <palves@redhat.com>
11390
11391         * infcmd.c (kill_command): Print the pid as string, not the whole
11392         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11393         message.
11394         * remote.c (remote_detach_1): Print the pid as string, not the
11395         whole thread's ptid.
11396
11397 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11398             Sergio Durigan Junior  <sergiodj@redhat.com>
11399             Pedro Alves  <palves@redhat.com>
11400
11401         * infcmd.c (kill_command): Print message when inferior has
11402         been killed.
11403         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11404         '1'.
11405         (add_inferior): Improve message printed when
11406         'print_inferior_events' is on.
11407         (exit_inferior): Remove message printed when
11408         'print_inferior_events' is on.
11409         (detach_inferior): Improve message printed when
11410         'print_inferior_events' is on.
11411         (initialize_inferiors): Use 'add_inferior_silent' to set
11412         'current_inferior_'.
11413         * inferior.h (print_inferior_events): Declare here as
11414         'extern'.
11415         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11416         '[Detaching...]' messages when 'print_inferior_events' is on.
11417         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11418         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11419         'Detaching after fork from child...', replace it by '... from
11420         parent...'.
11421         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11422         prefix/suffix when printing 'Detaching...' messages.  Print
11423         them when 'print_inferior_events' is on.
11424         * remote.c (remote_detach_1): Print message when detaching
11425         from inferior and '!is_fork_parent'.
11426
11427 2018-04-24  Tom Tromey  <tom@tromey.com>
11428
11429         * cli-out.h: Reindent.
11430
11431 2018-04-24  Tom Tromey  <tom@tromey.com>
11432
11433         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11434         (cli_ui_out::do_field_string): Use fputs_filtered.
11435         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11436
11437 2018-04-23  Tom Tromey  <tom@tromey.com>
11438
11439         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11440         gdb::unique_xmalloc_ptr.
11441
11442 2018-04-23  Tom Tromey  <tom@tromey.com>
11443
11444         * configure: Rebuild.
11445
11446 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11447
11448         PR gdb/23095
11449         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11450         prepare_for_testing.  Set normal_bp to r_debug_state if target
11451         is bsd.
11452
11453 2018-04-21  Pedro Alves  <palves@redhat.com>
11454             Rajendra SY  <rajendra.sy@gmail.com>
11455
11456         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11457         * remote.c (extended_remote_attach): In all-stop mode, mark the
11458         thread as executing.
11459
11460 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11461
11462         * thread.c (thread_apply_all_command): Fix comment.
11463         (thread_command): Fix comment.
11464
11465 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11466
11467         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11468         parameter.
11469         * features/aarch64-core.c (create_feature_aarch64_core):
11470         Regenerate.
11471         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11472         Likewise.
11473         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11474         Likewise.
11475         * features/i386/32bit-avx512.c
11476         (create_feature_i386_32bit_avx512): Likewise.
11477         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11478         Likewise.
11479         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11480         Likewise.
11481         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11482         Likewise.
11483         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11484         Likewise.
11485         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11486         Likewise.
11487         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11488         Likewise.
11489         * features/i386/64bit-avx512.c
11490         (create_feature_i386_64bit_avx512): Likewise.
11491         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11492         Likewise.
11493         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11494         Likewise.
11495         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11496         Likewise.
11497         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11498         Likewise.
11499         * features/i386/64bit-segments.c
11500         (create_feature_i386_64bit_segments): Likewise.
11501         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11502         Likewise.
11503         * features/i386/x32-core.c
11504         (create_feature_i386_x32_core): Likewise.
11505         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11506         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11507         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11508         * target-descriptions.c: In generated code, don't pass xml
11509         filename.
11510
11511 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11512
11513         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11514         (print_xml_feature::visit_post): Likewise.
11515         (print_xml_feature::visit): Likewise.
11516         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11517         (print_xml_feature): Add new class.
11518         * regformats/regdat.sh: Null xmltarget on feature targets.
11519         * target-descriptions.c (struct target_desc): Add xmltarget.
11520         (maintenance_check_tdesc_xml_convert): Add unittest function.
11521         (tdesc_get_features_xml): Add function to get xml.
11522         (maintenance_check_xml_descriptions): Test xml generation.
11523         * xml-tdesc.c (string_read_description_xml): Add function.
11524         * xml-tdesc.h (string_read_description_xml): Add declaration.
11525
11526 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11527
11528         * features/Makefile: Add feature marker to targets with new style
11529         target descriptions.
11530         * regformats/aarch64.dat: Regenerate.
11531         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11532         * regformats/i386/amd64-avx-linux.dat: Likewise.
11533         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11534         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11535         * regformats/i386/amd64-linux.dat: Likewise.
11536         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11537         * regformats/i386/amd64.dat: Likewise.
11538         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11539         * regformats/i386/i386-avx-linux.dat: Likewise.
11540         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11541         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11542         * regformats/i386/i386-linux.dat: Likewise.
11543         * regformats/i386/i386-mmx-linux.dat: Likewise.
11544         * regformats/i386/i386-mpx-linux.dat: Likewise.
11545         * regformats/i386/i386.dat: Likewise.
11546         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11547         * regformats/i386/x32-avx-linux.dat: Likewise.
11548         * regformats/i386/x32-linux.dat: Likewise.
11549         * regformats/tic6x-c62x-linux.dat: Likewise.
11550         * regformats/tic6x-c64x-linux.dat: Likewise.
11551         * regformats/tic6x-c64xp-linux.dat: Likewise.
11552         * regformats/regdat.sh: Parse feature marker.
11553
11554 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11555
11556         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11557         (tdesc_osabi_name): Likewise.
11558         * target-descriptions.c (tdesc_architecture_name): Add new
11559         function.
11560         (tdesc_osabi_name): Likewise.
11561
11562 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11563
11564         * common/tdesc.c (tdesc_predefined_type): Move to here.
11565         (tdesc_named_type): Likewise.
11566         (tdesc_create_vector): Likewise.
11567         (tdesc_create_struct): Likewise.
11568         (tdesc_set_struct_size): Likewise.
11569         (tdesc_create_union): Likewise.
11570         (tdesc_create_flags): Likewise.
11571         (tdesc_create_enum): Likewise.
11572         (tdesc_add_field): Likewise.
11573         (tdesc_add_typed_bitfield): Likewise.
11574         (tdesc_add_bitfield): Likewise.
11575         (tdesc_add_flag): Likewise.
11576         (tdesc_add_enum_value): Likewise.
11577         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11578         (struct tdesc_type_vector): Likewise.
11579         (struct tdesc_type_field): Likewise.
11580         (struct tdesc_type_with_fields): Likewise.
11581         (tdesc_create_enum): Add declaration.
11582         (tdesc_add_typed_bitfield): Likewise.
11583         (tdesc_add_enum_value): Likewise.
11584         * target-descriptions.c (tdesc_type_field): Move from here.
11585         (tdesc_type_builtin): Likewise.
11586         (tdesc_type_vector): Likewise.
11587         (tdesc_type_with_fields): Likewise.
11588         (tdesc_predefined_types): Likewise.
11589         (tdesc_named_type): Likewise.
11590         (tdesc_create_vector): Likewise.
11591         (tdesc_create_struct): Likewise.
11592         (tdesc_set_struct_size): Likewise.
11593         (tdesc_create_union): Likewise.
11594         (tdesc_create_flags): Likewise.
11595         (tdesc_create_enum): Likewise.
11596         (tdesc_add_field): Likewise.
11597         (tdesc_add_typed_bitfield): Likewise.
11598         (tdesc_add_bitfield): Likewise.
11599         (tdesc_add_flag): Likewise.
11600         (tdesc_add_enum_value): Likewise.
11601         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11602         (tdesc_add_typed_bitfield): Likewise.
11603         (tdesc_add_enum_value): Likewise.
11604
11605 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11606
11607         * common/tdesc.c (tdesc_feature::accept): Move to here.
11608         (tdesc_feature::operator==): Likewise.
11609         (tdesc_create_reg): Likewise.
11610         * common/tdesc.h (tdesc_type_kind): Likewise.
11611         (struct tdesc_type): Likewise.
11612         (struct tdesc_feature): Likewise.
11613         * regformats/regdat.sh: Create a feature.
11614         * target-descriptions.c (tdesc_type_kind): Move from here.
11615         (tdesc_type): Likewise.
11616         (tdesc_type_up): Likewise.
11617         (tdesc_feature): Likewise.
11618         (tdesc_create_reg): Likewise.
11619
11620 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11621
11622         * Makefile.in: Add arch/tdesc.c
11623         * common/tdesc.c: New file.
11624         * common/tdesc.h (tdesc_element_visitor): Move to here.
11625         (tdesc_element): Likewise.
11626         (tdesc_reg): Likewise.
11627         (tdesc_reg_up): Likewise.
11628         * regformats/regdef.h (reg): Add offset to constructors.
11629         * target-descriptions.c (tdesc_element_visitor): Move from here.
11630         (tdesc_element): Likewise.
11631         (tdesc_reg): Likewise.
11632         (tdesc_reg_up): Likewise.
11633
11634 2018-04-17  Tom Tromey  <tom@tromey.com>
11635
11636         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11637         discriminant field.
11638
11639 2018-04-17  Tom Tromey  <tom@tromey.com>
11640
11641         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11642
11643 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11644
11645         * symtab.c (print_symbol_info): Skip printing filename and line
11646         number when `last' is NULL.
11647         (symtab_symbol_info): Use empty string instead of NULL for first
11648         invocation of print_symbol_info.
11649         (rbreak_command): Pass NULL to `last' parameter of
11650         print_symbol_info.
11651
11652 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11653
11654         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11655         instead of nullptr.
11656
11657 2018-04-16  Pedro Alves  <palves@redhat.com>
11658
11659         * MAINTAINERS (sh): Remove.
11660         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11661         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11662         (ALLDEPFILES): Remove sh64-tdep.c.
11663         * NEWS: Mentions that support for SH-5/SH64 is removed.
11664         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11665         (sh*-*-openbsd*): Ditto.
11666         (sh64-*-elf*): Remove.
11667         (sh*): Remove.
11668         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11669         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11670         * sh-tdep.c: No longer include "sh64-tdep.h".
11671         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11672         * sh64-tdep.c, sh64-tdep.h: Remove files.
11673
11674 2018-04-16  Pedro Alves  <palves@redhat.com>
11675
11676         * MAINTAINERS: Remove m88k.
11677         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11678         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11679         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11680         * NEWS: Mention that support for m88k was removed.
11681         * configure.host (m88*-*-*): Remove support.
11682         * configure.nat (m88k-*-*): Remove support.
11683         * configure.tgt (m88*-*-openbsd*): Remove.
11684         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11685
11686 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11687
11688         * configure.tgt (x86_tobjs): New variable.
11689         (amd64_tobjs, i386_tobjs): Use it.
11690
11691 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11692
11693         * symtab.c (print_symbol_info): Precede the symbol definition by
11694         the line number when available.
11695         * NEWS: Advertise this enhancement.
11696
11697 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11698
11699         * NEWS (New options): announce set/show record btrace cpu.
11700         * btrace.c: Include record-btrace.h.
11701         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11702         the vendor is unknown.
11703         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11704         Maybe overwrite the btrace configuration's cpu.
11705         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11706         (btrace_fetch): Add cpu parameter.  Update callers.
11707         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11708         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11709         errata workarounds if the vendor is unknown.
11710         * python/py-record-btrace.c: Include record-btrace.h.
11711         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11712         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11713         * record-btrace.c (record_btrace_cpu_state_kind): New.
11714         (record_btrace_cpu): New.
11715         (set_record_btrace_cpu_cmdlist): New.
11716         (record_btrace_get_cpu): New.
11717         (require_btrace_thread, record_btrace_info)
11718         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11719         (cmd_set_record_btrace_cpu_none): New.
11720         (cmd_set_record_btrace_cpu_auto): New.
11721         (cmd_set_record_btrace_cpu): New.
11722         (cmd_show_record_btrace_cpu): New.
11723         (_initialize_record_btrace): Initialize set/show record btrace cpu
11724         commands.
11725         * record-btrace.h (record_btrace_get_cpu): New.
11726
11727 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11728
11729         * record.c (set_record_command): Fix typo in message.
11730
11731 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11732
11733         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11734
11735 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11736
11737         * infrun.c (process_event_stop_test): Call
11738         gdbarch_in_indirect_branch_thunk.
11739         * gdbarch.sh (in_indirect_branch_thunk): New.
11740         * gdbarch.c: Regenerated.
11741         * gdbarch.h: Regenerated.
11742         * x86-tdep.h: New.
11743         * x86-tdep.c: New.
11744         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11745         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11746         (ALLDEPFILES): Add x86-tdep.c.
11747         * arch-utils.h (default_in_indirect_branch_thunk): New.
11748         * arch-utils.c (default_in_indirect_branch_thunk): New.
11749         * i386-tdep: Include x86-tdep.h.
11750         (i386_in_indirect_branch_thunk): New.
11751         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11752         function.
11753         * amd64-tdep: Include x86-tdep.h.
11754         (amd64_in_indirect_branch_thunk): New.
11755         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11756
11757 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11758
11759         PR gdb/23053
11760         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11761         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11762         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11763         regression.
11764
11765 2018-04-12  Tom Tromey  <tom@tromey.com>
11766
11767         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11768         (rust_evaluate_subexp): Likewise.
11769
11770 2018-04-12  Pedro Alves  <palves@redhat.com>
11771
11772         * procfs.c (procfs_detach): Make forward declaration's prototype
11773         match definition's protototype.
11774         (proc_get_LDT_entry): Remove stale do_cleanups call.
11775
11776 2018-04-12  Pedro Alves  <palves@redhat.com>
11777
11778         * target.h (target_ops::to_has_exited): Delete.
11779         (target_has_exited): Delete.
11780         * target-delegates.c: Regenerate.
11781
11782 2018-04-11  Pedro Alves  <palves@redhat.com>
11783
11784         * target.c (fileio_fh_t::t): Add comment.
11785         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11786         (target_fileio_close): Handle a NULL target.
11787         (invalidate_fileio_fh): New.
11788         (target_close): Call it.
11789         * remote.c (remote_hostio_send_command): No longer check whether
11790         remote_desc is open.
11791
11792 2018-04-11  Pedro Alves  <palves@redhat.com>
11793
11794         * target.c (fileio_fh_t): Make it a named struct instead of a
11795         typedef.
11796         (fileio_fh_t::is_closed): New method.
11797         (DEF_VEC_O (fileio_fh_t)): Remove.
11798         (fileio_fhandles): Now a std::vector.
11799         (is_closed_fileio_fh): Delete.
11800         (acquire_fileio_fd): Adjust.  Rename parameters.
11801         (release_fileio_fd): Adjust.
11802         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11803         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11804         (target_fileio_close): Adjust.
11805
11806 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11807
11808         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11809         index.
11810
11811 2018-04-10  Pedro Alves  <palves@redhat.com>
11812
11813         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11814         (scoped_finish_thread_state): New class.
11815         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11816         cleanup.
11817         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11818         (fetch_inferior_event, normal_stop): Likewise.
11819         * thread.c (finish_thread_state_cleanup): Delete.
11820
11821 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11822             Pedro Alves  <palves@redhat.com>
11823
11824         * value.c: Include "selftest.h" and "common/array-view.h".
11825         (struct range) <operator ==>: New.
11826         (test_ranges_contain): New.
11827         (check_ranges_vector): New.
11828         (test_insert_into_bit_range_vector): New.
11829         (_initialize_values): Register selftests.
11830         * common/array-view.h (operator==, operator!=): New.
11831
11832 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11833
11834         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11835         an iterator.
11836         * inline-frame.c: Include <algorithm>.
11837         (struct inline_state): Add constructor.
11838         (inline_state_s): Remove.
11839         (DEF_VEC_O(inline_state_s)): Remove.
11840         (inline_states): Change type to std::vector.
11841         (find_inline_frame_state): Adjust to std::vector.
11842         (allocate_inline_frame_state): Remove.
11843         (clear_inline_frame_state): Adjust to std::vector.
11844         (skip_inline_frames): Adjust to std::vector.
11845
11846 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11847
11848         * tracepoint.h (struct trace_state_variable): Add constructor.
11849         <name>: Change type to std::string.
11850         * tracepoint.c (tsv_s): Remove.
11851         (DEF_VEC_O(tsv_s)): Remove.
11852         (tvariables): Change to std::vector.
11853         (create_trace_state_variable): Adjust to std::vector.
11854         (find_trace_state_variable): Likewise.
11855         (find_trace_state_variable_by_number): Likewise.
11856         (delete_trace_state_variable): Likewise.
11857         (trace_variable_command): Adjust to std::string.
11858         (delete_trace_variable_command): Likewise.
11859         (tvariables_info_1): Adjust to std::vector.
11860         (save_trace_state_variables): Likewise.
11861         (start_tracing): Likewise.
11862         (merge_uploaded_trace_state_variables): Adjust to std::vector
11863         and std::string.
11864         * target.h (struct target_ops)
11865         <to_download_trace_state_variable>: Pass reference to
11866         trace_state_variable.
11867         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11868         * target-delegates.c: Re-generate.
11869         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11870         (mi_tsv_deleted): Likewise.
11871         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11872         * remote.c (remote_download_trace_state_variable): Change
11873         pointer to reference and adjust.
11874         * make-target-delegates (parse_argtypes): Handle references.
11875         (write_function_header): Likewise.
11876         (munge_type): Likewise.
11877
11878 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11879
11880         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11881         string_view-selftests.c.
11882         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11883         testsuite.
11884         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11885         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11886         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11887         * unittests/basic_string_view/element_access/char/1.cc:
11888         Likewise.
11889         * unittests/basic_string_view/element_access/char/empty.cc:
11890         Likewise.
11891         * unittests/basic_string_view/element_access/char/front_back.cc:
11892         Likewise.
11893         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11894         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11895         Likewise.
11896         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11897         Likewise.
11898         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11899         Likewise.
11900         * unittests/basic_string_view/operations/compare/char/1.cc:
11901         Likewise.
11902         * unittests/basic_string_view/operations/compare/char/13650.cc:
11903         Likewise.
11904         * unittests/basic_string_view/operations/copy/char/1.cc:
11905         Likewise.
11906         * unittests/basic_string_view/operations/data/char/1.cc:
11907         Likewise.
11908         * unittests/basic_string_view/operations/find/char/1.cc:
11909         Likewise.
11910         * unittests/basic_string_view/operations/find/char/2.cc:
11911         Likewise.
11912         * unittests/basic_string_view/operations/find/char/3.cc:
11913         Likewise.
11914         * unittests/basic_string_view/operations/find/char/4.cc:
11915         Likewise.
11916         * unittests/basic_string_view/operations/rfind/char/1.cc:
11917         Likewise.
11918         * unittests/basic_string_view/operations/rfind/char/2.cc:
11919         Likewise.
11920         * unittests/basic_string_view/operations/rfind/char/3.cc:
11921         Likewise.
11922         * unittests/basic_string_view/operations/substr/char/1.cc:
11923         Likewise.
11924         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11925         * unittests/string_view-selftests.c: New file.
11926
11927 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11928
11929         * unittests/basic_string_view/capacity/1.cc: New file.
11930         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11931         * unittests/basic_string_view/cons/char/1.cc: New file.
11932         * unittests/basic_string_view/cons/char/2.cc: New file.
11933         * unittests/basic_string_view/cons/char/3.cc: New file.
11934         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11935         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11936         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11937         * unittests/basic_string_view/element_access/char/1.cc: New file.
11938         * unittests/basic_string_view/element_access/char/2.cc: New file.
11939         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11940         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11941         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11942         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11943         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11944         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11945         * unittests/basic_string_view/include.cc: New file.
11946         * unittests/basic_string_view/inserters/char/1.cc: New file.
11947         * unittests/basic_string_view/inserters/char/2.cc: New file.
11948         * unittests/basic_string_view/inserters/char/3.cc: New file.
11949         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11950         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11951         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11952         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11953         * unittests/basic_string_view/literals/types.cc: New file.
11954         * unittests/basic_string_view/literals/values.cc: New file.
11955         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11956         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11957         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11958         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11959         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11960         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11961         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11962         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11963         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11964         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11965         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11966         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11967         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11968         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11969         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11970         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11971         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11972         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11973         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11974         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11975         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11976         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11977         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11978         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11979         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11980         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11981         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11982         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11983         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11984         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11985         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11986         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11987         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11988         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11989         * unittests/basic_string_view/operators/char/2.cc: New file.
11990         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11991         * unittests/basic_string_view/range_access/char/1.cc: New file.
11992         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11993         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11994         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11995         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11996         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11997         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11998         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11999         * unittests/basic_string_view/typedefs.cc: New file.
12000         * unittests/basic_string_view/types/1.cc: New file.
12001
12002 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12003
12004         * common/gdb_string_view.h: Remove libstdc++ implementation
12005         details, adjust to gdb reality.
12006         * common/gdb_string_view.tcc: Likewise.
12007         * cli/cli-script.c (struct string_view): Remove.
12008         (user_args) <m_args>: Change element type to gdb::string_view.
12009         (user_args::insert_args): Adjust.
12010
12011 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12012
12013         * common/gdb_string_view.h: New file.
12014         * common/gdb_string_view.tcc: New file.
12015
12016 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12017
12018         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12019         * configure: Re-generate.
12020
12021 2018-04-09  Pedro Alves  <palves@redhat.com>
12022
12023         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12024         (set_target_gdbarch): Call
12025         gdb::observers::architecture_changed.notify instead of
12026         observer_notify_architecture_changed.
12027
12028 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12029
12030         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12031         (do_restore_current_traceframe_cleanup): Remove.
12032         (restore_current_traceframe_cleanup_dtor): Remove.
12033         (make_cleanup_restore_current_traceframe): Remove.
12034         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12035         New.
12036         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12037         * infrun.c (fetch_inferior_event): Use
12038         scoped_restore_current_traceframe.
12039
12040 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12041
12042         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12043         Remove.
12044         <n_allocated_type_units>: Remove.
12045         <all_type_units>: Change to std::vector.
12046         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12047         to std::vector change.
12048         (dwarf2_per_objfile::get_cutu): Likewise.
12049         (dwarf2_per_objfile::get_tu): Likewise.
12050         (create_signatured_type_table_from_index): Likewise.
12051         (create_signatured_type_table_from_debug_names): Likewise.
12052         (dw2_symtab_iter_next): Likewise.
12053         (dw2_print_stats): Likewise.
12054         (dw2_expand_all_symtabs): Likewise.
12055         (dw2_expand_marked_cus): Likewise.
12056         (dw2_debug_names_iterator::next): Likewise.
12057         (dwarf2_initialize_objfile): Likewise.
12058         (add_signatured_type_cu_to_table): Likewise.
12059         (create_all_type_units): Likewise.
12060         (add_type_unit): Likewise.
12061         (struct tu_abbrev_offset): Add constructor.
12062         (build_type_psymtabs_1): Adjust to std::vector change.
12063         (print_tu_stats): Likewise.
12064         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12065         (write_debug_names): Likewise.
12066
12067 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12068
12069         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12070         Make an std::vector.
12071         <n_comp_units>: Remove.
12072         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12073         to std::vector change.
12074         (dwarf2_per_objfile::get_cutu): Likewise.
12075         (dwarf2_per_objfile::get_cu): Likewise.
12076         (create_cus_from_index): Likewise.
12077         (create_addrmap_from_index): Likewise.
12078         (create_addrmap_from_aranges): Likewise.
12079         (dwarf2_read_index): Likewise.
12080         (dw2_find_last_source_symtab): Likewise.
12081         (dw2_map_symtabs_matching_filename): Likewise.
12082         (dw2_symtab_iter_next): Likewise.
12083         (dw2_print_stats): Likewise.
12084         (dw2_expand_all_symtabs): Likewise.
12085         (dw2_expand_symtabs_with_fullname): Likewise.
12086         (dw2_expand_marked_cus): Likewise.
12087         (dw2_map_symbol_filenames): Likewise.
12088         (create_cus_from_debug_names): Likewise.
12089         (dwarf2_read_debug_names): Likewise.
12090         (dw2_debug_names_iterator::next): Likewise.
12091         (dwarf2_initialize_objfile): Likewise.
12092         (set_partial_user): Likewise.
12093         (dwarf2_build_psymtabs_hard): Likewise.
12094         (read_comp_units_from_section): Remove arguments, adjust to
12095         std::vector change.
12096         (create_all_comp_units): Adjust to std::vector and
12097         read_comp_units_from_section changes.
12098         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12099         change.
12100         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12101         (psyms_seen_size): Likewise.
12102         (write_gdbindex): Likewise.
12103         (write_debug_names): Likewise.
12104
12105 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12106
12107         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12108         with dwarf2_per_objfile.
12109         (create_cus_from_index): Likewise.
12110         (create_signatured_type_table_from_index): Likewise.
12111         (dwarf2_read_index): Likewise.
12112         (dwarf2_initialize_objfile): Likewise.
12113         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12114         per_cu rather than get_dwarf2_per_objfile.
12115
12116 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12117
12118         * dwarf2read.h (struct signatured_type): Forward declare.
12119         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12120         New methods.
12121         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12122         (dw2_get_cutu): ...this.
12123         (dwarf2_per_objfile::get_cu): Rename from...
12124         (dw2_get_cu): ...this.
12125         (dwarf2_per_objfile::get_tu): New.
12126         (create_addrmap_from_index): Adjust.
12127         (create_addrmap_from_aranges): Adjust.
12128         (dw2_find_last_source_symtab): Adjust.
12129         (dw2_map_symtabs_matching_filename): Adjust.
12130         (dw2_symtab_iter_next): Adjust.
12131         (dw2_print_stats): Adjust.
12132         (dw2_expand_all_symtabs): Adjust.
12133         (dw2_expand_symtabs_with_fullname): Adjust.
12134         (dw2_expand_marked_cus): Adjust.
12135         (dw_expand_symtabs_matching_file_matcher): Adjust.
12136         (dw2_map_symbol_filenames): Adjust.
12137         (dw2_debug_names_iterator::next): Adjust.
12138         (dwarf2_initialize_objfile): Adjust.
12139         (set_partial_user): Adjust.
12140         (dwarf2_build_psymtabs_hard): Adjust.
12141
12142 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12143
12144         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12145         Remove unused variables.
12146         (dw2_map_symtabs_matching_filename): Likewise.
12147         (dwarf2_record_block_ranges): Likewise.
12148         (dwarf2_read_addr_index): Likewise.
12149         (follow_die_offset): Likewise.
12150
12151 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12152
12153         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12154         to symbol_file_add_main.
12155
12156 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12157
12158         PR mi/22299
12159         * mi/mi-console.c (do_fputc_async_safe): New.
12160         (mi_console_file::write_async_safe): New.
12161         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12162         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12163         New.
12164         * ui-file.c (ui_file::putstrn): Adjust call to
12165         fputstrn_unfiltered.
12166         * utils.c (printchar): Replace do_fputs and do_fprintf
12167         parameters by do_fputc.
12168         (fputstr_filtered): Adjust call to printchar.
12169         (fputstr_unfiltered): Likewise.
12170         (fputstrn_filtered): Likewise.
12171         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12172         printchar.
12173         * utils.h (do_fputc_ftype): New typedef.
12174         (fputstrn_unfiltered): Add do_fputc parameter.
12175
12176 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12177
12178         * regformats/i386/i386-avx.dat: Remove.
12179
12180 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12181
12182         PR gdb/22979
12183         * amd64-tdep.c (amd64_none_init_abi): New function.
12184         (amd64_x32_none_init_abi): New function.
12185         (_initialize_amd64_tdep): Register handlers for x86-64 and
12186         x64_32 with GDB_OSABI_NONE.
12187         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12188         GDB_OSABI_NONE osabi.
12189
12190 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12191
12192         PR gdb/22980
12193         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12194         GDB_OSABI_NONE.
12195         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12196         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12197
12198 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12199
12200         * common/byte-vector.h (char_vector): New type.
12201         * target.h (target_read_alloc): Return
12202         gdb::optional<byte_vector>.
12203         (target_read_stralloc): Return gdb::optional<char_vector>.
12204         (target_get_osdata): Return gdb::optional<char_vector>.
12205         * target.c (target_read_alloc_1): Templatize.  Replacement
12206         manual memory management with vector.
12207         (target_read_alloc): Change return type, adjust.
12208         (target_read_stralloc): Change return type, adjust.
12209         (target_get_osdata): Change return type, adjust.
12210         * auxv.c (struct auxv_info) <length>: Remove.
12211         <data>: Change type to gdb::optional<byte_vector>.
12212         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12213         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12214         (target_auxv_search): Adjust.
12215         (fprint_target_auxv): Adjust.
12216         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12217         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12218         (linux_make_corefile_notes): Adjust.
12219         * osdata.c (get_osdata): Adjust.
12220         * remote.c (remote_get_threads_with_qxfer): Adjust.
12221         (remote_memory_map): Adjust.
12222         (remote_traceframe_info): Adjust.
12223         (btrace_read_config): Adjust.
12224         (remote_read_btrace): Adjust.
12225         (remote_pid_to_exec_file): Adjust.
12226         * solib-aix.c (solib_aix_get_library_list): Adjust.
12227         * solib-dsbt.c (decode_loadmap): Don't free buf.
12228         (dsbt_get_initial_loadmaps): Adjust.
12229         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12230         * solib-target.c (solib_target_current_sos): Adjust.
12231         * tracepoint.c (sdata_make_value): Adjust.
12232         * xml-support.c (xinclude_start_include): Adjust.
12233         (xml_fetch_content_from_file): Adjust.
12234         * xml-support.h (xml_fetch_another): Change return type.
12235         (xml_fetch_content_from_file): Change return type.
12236         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12237         * xml-tdesc.c (file_read_description_xml): Adjust.
12238         (fetch_available_features_from_target): Change return type.
12239         (target_fetch_description_xml): Adjust.
12240         (target_read_description_xml): Adjust.
12241
12242 2018-04-06  Tom Tromey  <tom@tromey.com>
12243
12244         * value.c (~value): Update.
12245         (struct value) <contents>: Now unique_xmalloc_ptr.
12246         (value_contents_bits_eq, allocate_value_contents)
12247         (value_contents_raw, value_contents_all_raw)
12248         (value_contents_for_printing, value_contents_for_printing_const)
12249         (set_value_enclosing_type): Update.
12250
12251 2018-04-06  Tom Tromey  <tom@tromey.com>
12252
12253         * value.c (range_s): Remove typedef, VEC.
12254         (struct range): Add operator<.
12255         (range_lessthan): Remove.
12256         (ranges_contain): Change type.
12257         (~value): Update.
12258         (struct value) <unavailable, optimized_out>: Now std::vector.
12259         (value_entirely_available)
12260         (value_entirely_covered_by_range_vector)
12261         (value_entirely_unavailable, value_entirely_optimized_out):
12262         Update.
12263         (insert_into_bit_range_vector): Change argument type.
12264         (find_first_range_overlap): Likewise.
12265         (struct ranges_and_idx, value_contents_bits_eq)
12266         (require_not_optimized_out, require_available): Update.
12267         (ranges_copy_adjusted): Change argument types.
12268         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12269
12270 2018-04-06  Tom Tromey  <tom@tromey.com>
12271
12272         * value.c (~value): Update.
12273         (struct value) <parent>: Now a value_ref_ptr.
12274         (value_parent, set_value_parent, value_address, value_copy):
12275         Update.
12276
12277 2018-04-06  Tom Tromey  <tom@tromey.com>
12278
12279         * value.c (struct value): Add constructor, destructor, and member
12280         initializers.
12281         (allocate_value_lazy, value_decref): Update.
12282
12283 2018-04-06  Tom Tromey  <tom@tromey.com>
12284
12285         * value.c (struct value) <released, next>: Remove.
12286         (all_values): Now a std::vector.
12287         (allocate_value_lazy): Update.
12288         (value_next): Remove.
12289         (value_mark, value_free_to_mark, release_value)
12290         (value_release_to_mark): Update.
12291
12292 2018-04-06  Tom Tromey  <tom@tromey.com>
12293
12294         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12295         (free_value_chain): Remove.
12296         * value.c (free_value_chain): Remove.
12297         (value_release_to_mark): Return a std::vector.
12298         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12299         std::vector.
12300         (check_condition): Update.
12301         * eval.c (fetch_subexp_value): Change "val_chain" to a
12302         std::vector.
12303         * breakpoint.c (update_watchpoint): Update.
12304         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12305
12306 2018-04-06  Tom Tromey  <tom@tromey.com>
12307
12308         * value.h (free_all_values): Remove.
12309         * value.c (free_all_values): Remove.
12310
12311 2018-04-06  Tom Tromey  <tom@tromey.com>
12312
12313         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12314         (value_history_chain, value_history_count): Remove.
12315         (value_history): New global.
12316         (record_latest_value, access_value_history, show_values)
12317         (preserve_values): Update.
12318
12319 2018-04-06  Tom Tromey  <tom@tromey.com>
12320
12321         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12322         * varobj.c (varobj_set_display_format, varobj_set_value)
12323         (install_default_visualizer, construct_visualizer)
12324         (install_new_value, ~varobj, varobj_get_value_type)
12325         (my_value_of_variable, varobj_editable_p): Update.
12326         * c-varobj.c (c_describe_child, c_value_of_variable)
12327         (cplus_number_of_children, cplus_describe_child): Update.
12328         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12329         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12330         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12331
12332 2018-04-06  Tom Tromey  <tom@tromey.com>
12333
12334         * printcmd.c (last_examine_address): Change type to
12335         value_ref_ptr.
12336         (do_examine, x_command): Update.
12337
12338 2018-04-06  Tom Tromey  <tom@tromey.com>
12339
12340         * value.c (release_value): Update.
12341         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12342         (struct bpstats) <val>: Now a value_ref_ptr.
12343         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12344         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12345         (~watchpoint, print_it_watchpoint, watch_command_1)
12346         (invalidate_bp_value_on_memory_change): Update.
12347
12348 2018-04-06  Tom Tromey  <tom@tromey.com>
12349
12350         * varobj.c (varobj_clear_saved_item)
12351         (update_dynamic_varobj_children, install_new_value, ~varobj):
12352         Update.
12353         * value.h (value_incref): Move declaration earlier.
12354         (value_decref): Rename from value_free.
12355         (struct value_ref_policy): New.
12356         (value_ref_ptr): New typedef.
12357         (struct value_deleter): Remove.
12358         (gdb_value_up): Remove typedef.
12359         (release_value): Change return type.
12360         (release_value_or_incref): Remove.
12361         * value.c (set_value_parent): Update.
12362         (value_incref): Change return type.
12363         (value_decref): Rename from value_free.
12364         (value_free_to_mark, free_all_values, free_value_chain): Update.
12365         (release_value): Return value_ref_ptr.
12366         (release_value_or_incref): Remove.
12367         (record_latest_value, set_internalvar, clear_internalvar):
12368         Update.
12369         * stack.c (info_frame_command): Don't call value_free.
12370         * python/py-value.c (valpy_dealloc, valpy_new)
12371         (value_to_value_object): Update.
12372         * printcmd.c (do_examine): Update.
12373         * opencl-lang.c (lval_func_free_closure): Update.
12374         * mi/mi-main.c (register_changed_p): Don't call value_free.
12375         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12376         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12377         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12378         value_free.
12379         * guile/scm-value.c (vlscm_free_value_smob)
12380         (vlscm_scm_from_value): Update.
12381         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12382         (frame_unwind_register_unsigned, get_frame_register_bytes)
12383         (put_frame_register_bytes): Don't call value_free.
12384         * findvar.c (address_from_register): Don't call value_free.
12385         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12386         * dwarf2loc.c (entry_data_value_free_closure)
12387         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12388         (dwarf2_evaluate_loc_desc_full): Update.
12389         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12390         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12391         (~watchpoint, watch_command_1)
12392         (invalidate_bp_value_on_memory_change): Update.
12393         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12394
12395 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12396
12397         PR gdb/23022
12398         * warning.m4: Add -Wno-error=deprecated-register.
12399         * configure: Re-generate.
12400
12401 2018-04-05  Tom Tromey  <tom@tromey.com>
12402
12403         * linespec.h: Remove include of "vec.h".
12404
12405 2018-04-05  Tom Tromey  <tom@tromey.com>
12406
12407         * linespec.c (typep): Remove typedef.
12408         (find_methods, find_superclass_methods): Take a std::vector.
12409         (find_method): Use std::vector.
12410
12411 2018-04-05  Tom Tromey  <tom@tromey.com>
12412
12413         * utils.c (compare_strings): Remove.
12414         * utils.h (compare_strings): Remove.
12415         * objc-lang.h (find_imps): Update.
12416         * objc-lang.c (find_methods): Take a std::vector.
12417         (uniquify_strings, find_imps): Likewise.
12418         * linespec.c (find_methods): Take a std::vector.
12419         (decode_objc): Use std::vector.
12420         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12421         a std::vector.
12422         (find_method, find_function_symbols): Use std::vector.
12423
12424 2018-04-05  Tom Tromey  <tom@tromey.com>
12425
12426         * completer.c (completion_tracker::completion_tracker): Remove
12427         cast.
12428         (completion_tracker::discard_completions): Likewise.
12429         * breakpoint.c (ambiguous_names_p): Remove cast.
12430         * ada-lang.c (_initialize_ada_language): Remove cast.
12431         * utils.h (streq): Update.
12432         (streq_hash): Add new declaration.
12433         * utils.c (streq): Return bool.
12434         (streq_hash): New function.
12435
12436 2018-04-05  Tom Tromey  <tom@tromey.com>
12437
12438         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12439         Remove a string copy.
12440
12441 2018-04-05  Tom Tromey  <tom@tromey.com>
12442
12443         * linespec.c (filter_results): Use std::vector.
12444         (decode_line_2, decode_line_full): Update.
12445
12446 2018-04-05  Tom Tromey  <tom@tromey.com>
12447
12448         * linespec.c (canonical_to_fullform): Return std::string.
12449         (filter_results): Update.
12450         (struct decode_line_2_item): Add constructor.
12451         <fullform, displayform>: Now std::string.
12452         (decode_line_2_compare_items): Now a std::sort comparator.
12453         (decode_line_2): Update.
12454
12455 2018-04-05  Tom Tromey  <tom@tromey.com>
12456
12457         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12458         (unexpected_linespec_error): Update.
12459         (linespec_parse_basic, parse_linespec): Update.
12460
12461 2018-04-05  Tom Tromey  <tom@tromey.com>
12462
12463         * linespec.c (linespec_parse_basic): Reindent.
12464
12465 2018-04-05  Tom Tromey  <tom@tromey.com>
12466
12467         * minsyms.h (iterate_over_minimal_symbols): Update.
12468         * minsyms.c (iterate_over_minimal_symbols): Take a
12469         gdb::function_view.
12470         * linespec.c (struct collect_minsyms): Remove.
12471         (compare_msyms): Now a std::sort comparator.
12472         (add_minsym): Add parameters.
12473         (search_minsyms_for_name): Update.  Use std::vector.
12474
12475 2018-04-03  Tom Tromey  <tom@tromey.com>
12476
12477         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12478         gdb::byte_vector.
12479
12480 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12481
12482         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12483
12484 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12485
12486         PR gdb/16959
12487         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12488         printing static type.
12489
12490 2018-04-01  Tom Tromey  <tom@tromey.com>
12491
12492         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12493         (rs6000_xfer_shared_libraries): Update.
12494
12495 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12496
12497         * common/gdb_vecs.h (char_ptr): Remove.
12498         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12499
12500 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12501
12502         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12503         with std::vector.
12504         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12505
12506 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12507
12508         * tracepoint.h (struct uploaded_tp): Initialize fields.
12509         <actions, step_actions, cmd_strings>: Change type to
12510         std::vector<char *>.
12511         * tracepoint.c (get_uploaded_tp): Allocate with new.
12512         (free_uploaded_tps): Free with delete.
12513         (parse_tracepoint_definition): Adjust to std::vector change.
12514         * breakpoint.c (read_uploaded_action): Likewise.
12515         (create_tracepoint_from_upload): Likewise.
12516         * ctf.c (ctf_write_uploaded_tp): Likewise.
12517         (SET_ARRAY_FIELD): Likewise.
12518         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12519
12520 2018-03-30  Tom Tromey  <tom@tromey.com>
12521
12522         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12523         std::unique_ptr.
12524         (svr4_keep_data_in_core): Update.
12525         (svr4_read_so_list): Update.
12526
12527 2018-03-30  Tom Tromey  <tom@tromey.com>
12528
12529         * windows-nat.c (handle_output_debug_string, handle_exception):
12530         Update.
12531         * target.h (target_read_string): Update.
12532         * target.c (target_read_string): Change "string" to
12533         unique_xmalloc_ptr.
12534         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12535         Update.
12536         * solib-frv.c (frv_current_sos): Update.
12537         * solib-dsbt.c (dsbt_current_sos): Update.
12538         * solib-darwin.c (darwin_current_sos): Update.
12539         * linux-thread-db.c (inferior_has_bug): Update.
12540         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12541         Update.  Remove alloca.
12542         * ada-lang.c (ada_main_name): Update.
12543
12544 2018-03-30  Tom Tromey  <tom@tromey.com>
12545
12546         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12547         (struct dwo_file_deleter): New.
12548         (dwo_file_up): New typedef.
12549         (open_and_init_dwo_file): Use dwo_file_up.
12550         (free_dwo_file_cleanup): Remove.
12551
12552 2018-03-30  Tom Tromey  <tom@tromey.com>
12553
12554         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12555         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12556
12557 2018-03-30  Tom Tromey  <tom@tromey.com>
12558
12559         * dwarf2read.c (class free_cached_comp_units): New class.
12560         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12561         (free_cached_comp_units): Remove function.
12562
12563 2018-03-30  Tom Tromey  <tom@tromey.com>
12564
12565         * utils.h (make_cleanup_unpush_target): Remove.
12566         * inf-ptrace.c (struct target_unpusher): New.
12567         (target_unpush_up) New typedef.
12568         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12569         target_unpush_up.
12570         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12571
12572 2018-03-27  Tom Tromey  <tom@tromey.com>
12573
12574         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12575
12576 2018-03-27  Pedro Alves  <palves@redhat.com>
12577             Tom Tromey  <tom@tromey.com>
12578
12579         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12580         destructor.  Now a class.
12581         (gdb_readline_wrapper_cleanup): Remove function.
12582         (gdb_readline_wrapper): Remove cleanups.
12583
12584 2018-03-27  Tom Tromey  <tom@tromey.com>
12585
12586         * typeprint.h (struct type_print_options) <local_typedefs,
12587         global_typedefs>: Remove "struct" keyword.
12588         (class typedef_hash_table): New class.
12589         (recursively_update_typedef_hash, add_template_parameters)
12590         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12591         (find_typedef_in_hash): Don't declare.
12592         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12593         (typedef_hash_table::recursively_update): Rename from
12594         recursively_update_typedef_hash.  Now a member.
12595         (typedef_hash_table::add_template_parameters): Rename from
12596         add_template_parameters.  Now a member.
12597         (typedef_hash_table::typedef_hash_table): Now a constructor;
12598         rename from create_typedef_hash.
12599         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12600         rename from free_typedef_hash.
12601         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12602         (do_free_global_table): Remove.
12603         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12604         from copy_type_recursive.
12605         (create_global_typedef_table): Remove.
12606         (typedef_hash_table::find_global_typedef): Now a member of
12607         typedef_hash_table.
12608         (typedef_hash_table::find_typedef): Rename from
12609         find_typedef_in_hash; now a member.
12610         (whatis_exp): Update.
12611         * extension.h (struct ext_lang_type_printers): Add constructor and
12612         destructor.
12613         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12614         declare.
12615         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12616         Now a constructor; rename from start_ext_lang_type_printers.
12617         (ext_lang_type_printers): Now a destructor; rename from
12618         free_ext_lang_type_printers.
12619         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12620         Update.
12621         (c_type_print_base_struct_union): Update.  Remove cleanups.
12622
12623 2018-03-27  Tom Tromey  <tom@tromey.com>
12624
12625         * dwarf-index-write.c: Include <cmath>.
12626
12627 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12628
12629         * NEWS: Add entry describing new "set|show varsize-limit" command.
12630         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12631         command.
12632         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12633         "set variable".
12634
12635 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12636
12637         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12638         dwarf-index-write.c
12639         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12640         * dwarf-index-common.c: New file.
12641         * dwarf-index-common.h: New file.
12642         * dwarf-index-write.c: New file.
12643         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12644         (struct dwarf2_section_info): Move from here.
12645         (dwarf2_section_info_def): Likewise.
12646         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12647         (offset_type): Likewise.
12648         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12649         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12650         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12651         (byte_swap): Likewise.
12652         (MAYBE_SWAP): Likewise.
12653         (dwarf2_per_cu_ptr): Likewise.
12654         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12655         (struct tu_stats): Likewise.
12656         (struct dwarf2_per_objfile): Likewise.
12657         (struct dwarf2_per_cu_data): Likewise.
12658         (struct signatured_type): Likewise.
12659         (sig_type_ptr): Likewise.
12660         (DEF_VEC_P (sig_type_ptr)): Likewise.
12661         (INDEX4_SUFFIX): Likewise.
12662         (INDEX5_SUFFIX): Likewise.
12663         (DEBUG_STR_SUFFIX): Likewise.
12664         (dwarf2_read_section): Make non-static.
12665         (mapped_index_string_hash): Move from here.
12666         (dwarf5_djb_hash): Likewise.
12667         (file_write): Likewise.
12668         (class data_buf): Likewise.
12669         (struct symtab_index_entry): Likewise.
12670         (struct mapped_symtab): Likewise.
12671         (find_slot): Likewise.
12672         (hash_expand): Likewise.
12673         (add_index_entry): Likewise.
12674         (uniquify_cu_indices): Likewise.
12675         (class c_str_view): Likewise.
12676         (class c_str_view_hasher): Likewise.
12677         (class vector_hasher): Likewise.
12678         (write_hash_table): Likewise.
12679         (psym_index_map): Likewise.
12680         (struct addrmap_index_data): Likewise.
12681         (add_address_entry): Likewise.
12682         (add_address_entry_worker): Likewise.
12683         (write_address_map): Likewise.
12684         (symbol_kind): Likewise.
12685         (write_psymbols): Likewise.
12686         (struct signatured_type_index_data): Likewise.
12687         (write_one_signatured_type): Likewise.
12688         (recursively_count_psymbols): Likewise.
12689         (recursively_write_psymbols): Likewise.
12690         (class debug_names): Likewise.
12691         (check_dwarf64_offsets): Likewise.
12692         (psyms_seen_size): Likewise.
12693         (write_gdbindex): Likewise.
12694         (write_debug_names): Likewise.
12695         (assert_file_size): Likewise.
12696         (write_psymtabs_to_index): Likewise.
12697         (save_gdb_index_command): Likewise.
12698         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12699         command.
12700         * dwarf2read.h: New file.
12701
12702 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12703
12704         PR gdb/22670
12705         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12706         symbol name if the CU's language stores symbol names in linkage
12707         format.
12708         * language.h (struct language_defn)
12709         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12710         all instances of this struct.
12711
12712 2018-03-26  Tom Tromey  <tom@tromey.com>
12713
12714         * stack.c (backtrace_command_1): Remove verbose code.
12715
12716 2018-03-26  Tom Tromey  <tom@tromey.com>
12717
12718         * python/py-framefilter.c (py_print_type): Don't catch
12719         exceptions.  Return void.
12720         (py_print_value): Likewise.
12721         (py_print_single_arg): Likewise.
12722         (enumerate_args): Don't catch exceptions.
12723         (py_print_args): Likewise.
12724         (py_print_frame): Likewise.
12725         (gdbpy_apply_frame_filter): Catch exceptions here.
12726
12727 2018-03-26  Tom Tromey  <tom@tromey.com>
12728
12729         * stack.c (_initialize_stack): Remove trailing newlines from help
12730         text.  Add "Usage" line to "backtrace" help.
12731
12732 2018-03-26  Tom Tromey  <tom@tromey.com>
12733
12734         PR python/16486:
12735         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12736
12737 2018-03-26  Tom Tromey  <tom@tromey.com>
12738
12739         * python/py-framefilter.c (py_print_single_arg): Return
12740         EXT_LANG_BT_ERROR from catch.
12741
12742 2018-03-26  Tom Tromey  <tom@tromey.com>
12743
12744         PR backtrace/15584:
12745         * stack.c (backtrace_command_1): Move some code into no-filters
12746         "if".
12747
12748 2018-03-26  Tom Tromey  <tom@tromey.com>
12749
12750         * python/py-framefilter.c (throw_quit_or_print_exception): New
12751         function.
12752         (gdbpy_apply_frame_filter): Use it.
12753
12754 2018-03-26  Tom Tromey  <tom@tromey.com>
12755
12756         PR cli/17716:
12757         * python/py-framefilter.c (py_print_type, py_print_value)
12758         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12759         RETURN_MASK_ERROR.
12760
12761 2018-03-26  Tom Tromey  <tom@tromey.com>
12762
12763         * python/py-framefilter.c (enumerate_args): Use
12764         gdb::unique_xmalloc_ptr.
12765
12766 2018-03-26  Tom Tromey  <tom@tromey.com>
12767
12768         * python/py-framefilter.c (py_print_frame): Return
12769         EXT_LANG_BT_OK.
12770         (gdbpy_apply_frame_filter): Update comment.
12771         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12772         Remove.
12773         <EXT_LANG_BT_NO_FILTERS>: Change value.
12774
12775 2018-03-26  Tom Tromey  <tom@tromey.com>
12776
12777         PR backtrace/15582:
12778         * stack.c (backtrace_command): Parse "hide" argument.
12779         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12780         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12781         constant.
12782
12783 2018-03-26  Tom Tromey  <tom@tromey.com>
12784
12785         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12786         add "flags".
12787         (backtrace_command): Remove "fulltrace", add "flags".
12788
12789 2018-03-26  Tom Tromey  <tom@tromey.com>
12790
12791         * stack.c (backtrace_command): Rewrite command line parsing.
12792
12793 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12794
12795         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12796
12797 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12798
12799         * filename-seen-cache.h: Add include guard.
12800
12801 2018-03-26  Keith Seitz  <keiths@redhat.com>
12802
12803         * symfile.c (place_section): Remove "struct" from section_addr_info
12804         in comment.
12805         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12806         "struct" keyword from section_addr_info.
12807
12808 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12809
12810         * regformats/regdef.h (reg): Add constructors.
12811
12812 2018-03-25  Pedro Alves  <palves@redhat.com>
12813
12814         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12815         if then/else bodies in var_func_name extraction.
12816
12817 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12818
12819         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12820         lookup_minimal_symbol() to find symbol entry.
12821         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12822
12823 2018-03-23  Keith Seitz  <keiths@redhat.com>
12824
12825         PR c++/22968
12826         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12827         nested type definitions for C++, too.
12828
12829 2018-03-23  Tom Tromey  <tom@tromey.com>
12830
12831         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12832         a typedef.
12833         (macho_register_oso): Remove.
12834         (macho_symtab_read): Take a std::vector.
12835         (oso_el_compare_name): Now a std::sort comparator.
12836         (macho_symfile_read_all_oso): Take a std::vector.
12837         (macho_symfile_read): Use std::vector.  Remove cleanups.
12838
12839 2018-03-22  Tom Tromey  <tom@tromey.com>
12840
12841         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12842         (record_full_goto_bookmark): Use std::string.
12843
12844 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12845
12846         PR tdep/18295
12847         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12848         a single mask.
12849
12850 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12851
12852         * rs6000-tdep.c (store_insn_p): New function.
12853         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12854         and cr_reg to their unshifted values. Use store_insn_p to
12855         match LR saves using either R1 or fdata->alloca_reg. Use
12856         store_insn_p to match CR saves. Set alloca_reg_offset
12857         when alloca_reg and framep are set. Remove lr_reg shift
12858         when assigning to fdata->lr_register.
12859
12860 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12861
12862         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12863         command line args instead of emitting a warning.
12864
12865 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12866
12867         * tracepoint.h (struct static_tracepoint_marker): Initialize
12868         fields, define default constructor, move constructor and move
12869         assignment, disable the rest.
12870         <str_id, extra>: Make std::string.
12871         (release_static_tracepoint_marker): Remove.
12872         (free_current_marker): Remove.
12873         * tracepoint.c (free_current_marker): Remove.
12874         (parse_static_tracepoint_marker_definition): Adjust to
12875         std::string, use new hex2str overload.
12876         (release_static_tracepoint_marker): Remove.
12877         (print_one_static_tracepoint_marker): Get marker by reference
12878         and adjust to std::string.
12879         (info_static_tracepoint_markers_command): Adjust to std::vector
12880         changes
12881         * target.h (static_tracepoint_marker_p): Remove typedef.
12882         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12883         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12884         bool.
12885         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12886         * target-debug.h
12887         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12888         (target_debug_print_std_vector_static_tracepoint_marker): New.
12889         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12890         to...
12891         (target_debug_print_static_tracepoint_marker_p): ... this.
12892         * target-delegates.c: Re-generate.
12893         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12894         Make std::string.
12895         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12896         (decode_static_tracepoint_spec): Adjust to std::vector.
12897         (tracepoint_print_one_detail): Adjust to std::string.
12898         (strace_marker_decode_location): Adjust to std::string.
12899         (update_static_tracepoint): Adjust to std::string, remove call
12900         to release_static_tracepoint_marker.
12901         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12902         Adjust to std::vector.
12903         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12904         (remote_static_tracepoint_markers_by_strid): Adjust to
12905         std::vector.
12906         * common/rsp-low.h (hex2str): New overload with explicit count
12907         of bytes.
12908         * common/rsp-low.c (hex2str): New overload with explicit count
12909         of bytes.
12910         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12911         (_initialize_rsp_low_selftests): Add test_hex2str test.
12912         * unittests/tracepoint-selftests.c
12913         (test_parse_static_tracepoint_marker_definition): Adjust to
12914         std::string.
12915
12916 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12917
12918         * tracepoint.c (parse_static_tracepoint_marker_definition):
12919         Consider case where the definition is followed by more
12920         definitions.
12921         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12922         tracepoint-selftests.c.
12923         * unittests/tracepoint-selftests.c: New.
12924
12925 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12926
12927         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12928         Carvalho.
12929
12930 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12931
12932         * symtab.c (find_pc_sect_line): fixed indentation.
12933
12934 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12935
12936         * symtab.c (find_pc_sect_line): now uses binary search.
12937
12938 2018-03-19  Tom Tromey  <tom@tromey.com>
12939
12940         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12941         "IDENT" production.
12942
12943 2018-03-19  Pedro Alves  <palves@redhat.com>
12944             Tom Tromey  <tom@tromey.com>
12945
12946         * unittests/observable-selftests.c: New file.
12947         * common/observable.h: New file.
12948         * observable.h: New file.
12949         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12950         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12951         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12952         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12953         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12954         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12955         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12956         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12957         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12958         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12959         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12960         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12961         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12962         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12963         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12964         tui/tui-interp.c, valops.c: Update all users.
12965         * tui/tui-hooks.c (tui_bp_created_observer)
12966         (tui_bp_deleted_observer, tui_bp_modified_observer)
12967         (tui_inferior_exit_observer, tui_before_prompt_observer)
12968         (tui_normal_stop_observer, tui_register_changed_observer):
12969         Remove.
12970         (tui_observers_token): New global.
12971         (attach_or_detach, tui_attach_detach_observers): New functions.
12972         (tui_install_hooks, tui_remove_hooks): Use
12973         tui_attach_detach_observers.
12974         * record-btrace.c (record_btrace_thread_observer): Remove.
12975         (record_btrace_thread_observer_token): New global.
12976         * observer.sh: Remove.
12977         * observer.c: Rename to observable.c.
12978         * observable.c (namespace gdb_observers): Define new objects.
12979         (observer_debug): Move into gdb_observers namespace.
12980         (struct observer, struct observer_list, xalloc_observer_list_node)
12981         (xfree_observer_list_node, generic_observer_attach)
12982         (generic_observer_detach, generic_observer_notify): Remove.
12983         (_initialize_observer): Update.
12984         Don't include observer.inc.
12985         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12986         (clean mostlyclean): Likewise.
12987         (observer.h, observer.inc): Remove targets.
12988         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12989         (COMMON_SFILES): Use observable.c, not observer.c.
12990         * .gitignore: Remove observer.h.
12991
12992 2018-03-18  Tom Tromey  <tom@tromey.com>
12993
12994         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12995         gdb::def_vector.
12996         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12997
12998 2018-03-17  Tom Tromey  <tom@tromey.com>
12999
13000         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13001
13002 2018-03-17  Tom Tromey  <tom@tromey.com>
13003
13004         * target.c (class scoped_target_fd): New.
13005         (target_fileio_close_cleanup): Remove.
13006         (target_fileio_read_alloc_1): Use scoped_target_fd.
13007
13008 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13009
13010         * silent-rules.mk: New.
13011         * Makefile.in: Include silent-rules.mk
13012         (srcdir, VPATH, top_srcdir): Move up.
13013         (COMPILE): Add ECHO_CXX.
13014         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13015         (init.c): Add ECHO_INIT_C.
13016         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13017         (version.c): Add ECHO_GEN.
13018         (printcmd.o): Add ECHO_CXX.
13019         (target-float.o): Add ECHO_CXX.
13020         (ada-exp.o): Add ECHO_CXX.
13021         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13022         (insight$(EXEEXT)): Add ECHO_CXXLD.
13023         * gnulib/configure.ac: Add AM_SILENT_RULES.
13024         * gnulib/aclocal.m4: Re-generate.
13025         * gnulib/configure: Re-generate.
13026         * gnulib/import/Makefile.in: Re-generate.
13027
13028 2018-03-16  Tom Tromey  <tom@tromey.com>
13029
13030         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13031         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13032         * utils.c (do_free_section_addr_info)
13033         (make_cleanup_free_section_addr_info): Remove.
13034         * symfile.h (struct other_sections): Add constructor.
13035         (struct section_addr_info): Remove.
13036         (section_addr_info): New typedef.
13037         (struct sym_fns) <sym_offsets>: Change type of parameter.
13038         (build_section_addr_info_from_objfile)
13039         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13040         (default_symfile_offsets, symbol_file_add)
13041         (symbol_file_add_from_bfd)
13042         (build_section_addr_info_from_section_table): Update.
13043         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13044         * symfile.c (alloc_section_addr_info): Remove.
13045         (build_section_addr_info_from_section_table): Change return type.
13046         Update.
13047         (build_section_addr_info_from_bfd)
13048         (build_section_addr_info_from_objfile): Likewise.
13049         (free_section_addr_info): Remove.
13050         (relative_addr_info_to_section_offsets): Change type of "addrs".
13051         (addrs_section_compar): Now a std::sort comparator.
13052         (addrs_section_sort): Change return type.
13053         (addr_info_make_relative): Change type of "addrs".  Update.
13054         (default_symfile_offsets, syms_from_objfile_1)
13055         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13056         (symbol_file_add_separate): Update.
13057         (symbol_file_add): Change type of "addrs".  Update.
13058         (add_symbol_file_command): Update.  Remove cleanups.
13059         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13060         cleanups.
13061         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13062         * solib.c (solib_read_symbols): Update.
13063         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13064         * machoread.c (macho_symfile_offsets): Update.
13065         * jit.c (jit_bfd_try_read_symtab): Update.
13066
13067 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13068
13069         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13070         unittests/utils-selftests.c.
13071         * unittests/utils-selftests.c: New file.
13072
13073 2018-03-14  Tom Tromey  <tom@tromey.com>
13074
13075         PR cli/14977:
13076         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13077         for NULL.
13078
13079 2018-03-14  Tom Tromey  <tom@tromey.com>
13080
13081         PR cli/19918:
13082         * printcmd.c (printf_pointer): Allow "-" in format.
13083
13084 2018-03-14  Tom Tromey  <tom@tromey.com>
13085
13086         * printcmd.c (_initialize_printcmd): Add usage to printf.
13087
13088 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13089
13090         * MAINTAINERS: Update my email address.
13091
13092 2018-03-13  Tom Tromey  <tom@tromey.com>
13093
13094         * machoread.c (macho_check_dsym): Change filenamep to a
13095         std::string*.
13096         (macho_symfile_read): Update.
13097         * symfile.c (load_command): Use std::string.
13098
13099 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13100
13101         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13102         to error message string.
13103         (riscv_register_name): Use xsnprintf instead of sprintf.
13104         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13105         internal_error.
13106         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13107         error.
13108         (riscv_push_dummy_call): Likewise.
13109
13110 2018-03-12  Tom Tromey  <tom@tromey.com>
13111
13112         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13113         Use gdb::byte_vector.
13114         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13115
13116 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13117
13118         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13119         parameter type to readable_regcache.
13120         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13121         the declaration.
13122
13123 2018-03-11  Tom Tromey  <tom@tromey.com>
13124
13125         * dwarf2read.c (struct nextfield): Add initializers.
13126         (struct nextfnfield): Remove.
13127         (struct fnfieldlist): Add initializers.  Remove "length" and
13128         "head", use std::vector.
13129         (struct decl_field_list): Remove.
13130         (struct field_info): Add initializers.
13131         <fields, baseclasses>: Now std::vector.
13132         <nbaseclasses, nfnfields, typedef_field_list_count,
13133         nested_types_list_count>: Remove.
13134         (dwarf2_add_field, dwarf2_add_type_defn)
13135         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13136         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13137         (process_structure_scope): Update.
13138
13139 2018-03-11  Tom Tromey  <tom@tromey.com>
13140
13141         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13142         for use by std::sort.
13143         (build_type_psymtabs_1): Use std::vector.
13144
13145 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13146
13147         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13148         and LIBMPFR in the printed configuration.
13149
13150 2018-03-08  Tom Tromey  <tom@tromey.com>
13151
13152         * source.c (get_filename_and_charpos): Use scoped_fd.
13153         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13154         (procfs_pidlist): Likewise.
13155         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13156         (iterate_over_mappings): Likewise.
13157
13158 2018-03-08  Tom Tromey  <tom@tromey.com>
13159
13160         * infcall.c (struct call_return_meta_info)
13161         <stack_temporaries_enabled>: Remove.
13162         (get_call_return_value, call_function_by_hand_dummy): Update.
13163         * thread.c (disable_thread_stack_temporaries): Remove.
13164         (enable_thread_stack_temporaries): Remove.
13165         (thread_stack_temporaries_enabled_p): Return bool.
13166         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13167         (get_last_thread_stack_temporary): Update.
13168         * eval.c (evaluate_subexp): Update.
13169         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13170         class, not a function.
13171         (value_ptr, value_vec): Remove typedefs.
13172         (class thread_info) <stack_temporaries_enabled>: Now bool.
13173         <stack_temporaries>: Now a std::vector.
13174         (thread_stack_temporaries_enabled_p)
13175         (value_in_thread_stack_temporaries): Return bool.
13176
13177 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13178
13179         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13180         (getpkt_or_notif_sane_1): Likewise.
13181
13182 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13183
13184         * build-id.c (build_id_to_debug_bfd): Use std::string.
13185
13186 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13187
13188         * build-id.c (find_separate_debug_file_by_buildid): Return
13189         std::string.
13190         * build-id.h (find_separate_debug_file_by_buildid): Return
13191         std::string.
13192         * coffread.c (coff_symfile_read): Adjust to std::string.
13193         * elfread.c (elf_symfile_read): Adjust to std::string.
13194         * symfile.c (separate_debug_file_exists): Change parameter to
13195         std::string.
13196         (find_separate_debug_file): Return std::string.
13197         (find_separate_debug_file_by_debuglink): Return std::string.
13198         * symfile.h (find_separate_debug_file_by_debuglink): Return
13199         std::string.
13200
13201 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13202
13203         * common/xml-utils.c (xml_escape_text): Move code to...
13204         (xml_escape_text_append): ... this new function.
13205         * common/xml-utils.h (xml_escape_text_append): New declaration.
13206         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13207         New function.
13208         (_initialize_xml_utils): register test_xml_escape_text_append as
13209         a selftest.
13210
13211 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13212
13213         * defs.h: Remove MAX_REGISTER_SIZE.
13214         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13215         asserts.
13216         * python/py-unwind.c (pyuw_sniffer): Likewise.
13217
13218 2018-03-07  Tom Tromey  <tom@tromey.com>
13219
13220         * linux-tdep.c (linux_info_proc): Update.
13221         * target.h (struct target_ops) <to_fileio_readlink>: Return
13222         optional<string>.
13223         (target_fileio_readlink): Return optional<string>.
13224         * remote.c (remote_hostio_readlink): Return optional<string>.
13225         * inf-child.c (inf_child_fileio_readlink): Return
13226         optional<string>.
13227         * target.c (target_fileio_readlink): Return optional<string>.
13228
13229 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13230
13231         * regcache.c (cooked_read_test): Add riscv to the list of
13232         architectures that have a save_reggroup.
13233
13234 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13235
13236         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13237         value is not a dynamic class object.
13238
13239 2018-03-06  Tom Tromey  <tom@tromey.com>
13240
13241         * rust-exp.y: Formatting fixes.
13242
13243 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13244
13245         * riscv-tdep.c (riscv_register_name): Remove target description
13246         support.
13247         (riscv_gdbarch_init): Remove target description check.
13248
13249 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13250
13251         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13252         comment.
13253         * riscv-tdep.h: Likewise.
13254
13255 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13256
13257         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13258         (riscv_pseudo_register_write): Delete.
13259         (riscv_gdbarch_init): Remove all use of pseudo registers.
13260
13261 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13262
13263         * record-btrace.c (btrace_print_lines): Replace cleanup
13264         parameter with RAII equivalents.
13265         (btrace_insn_history): Replace cleanup with RAII equivalents.
13266         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13267         make_cleanup_ui_out_tuple_begin_end): Remove.
13268         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13269         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13270         make_cleanup_ui_out_list_begin_end): Remove.
13271
13272 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13273
13274         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13275         parameter types to std::vector.  Use bool.
13276         (record_btrace_wait): Replace VEC(tp_t) with
13277         std::vector<thread_info *>.
13278         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13279
13280 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13281
13282         * record-btrace.c (record_btrace_disable_callback): Remove.
13283         (struct scoped_btrace_disable): New.
13284         (record_btrace_open): Use scoped_btrace_disable.
13285
13286 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13287
13288         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13289         reading values from registers.
13290
13291 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13292
13293         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13294         where appropriate.
13295
13296 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13297
13298         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13299         change parameter type.  Use GDB's print functions, and use
13300         core_addr_to_string where appropriate.
13301         (riscv_push_dummy_call): Use core_addr_to_string where
13302         appropriate, update call to riscv_print_arg_location, and reindent
13303         a few lines.
13304         (riscv_return_value): Update call to riscv_print_arg_location.
13305
13306 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13307             Tim Newsome <tim@sifive.com>
13308             Albert Ou <a0u@eecs.berkeley.edu>
13309             Darius Rad <darius@bluespec.com>
13310
13311         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13312         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13313         (ALLDEPFILES): Add riscv-tdep.c
13314         * configure.tgt: Add riscv support.
13315         * riscv-tdep.c: New file.
13316         * riscv-tdep.h: New file.
13317         * NEWS: Mention new target.
13318         * MAINTAINERS: Add entry for riscv.
13319
13320 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13321
13322         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13323         fields within aggregates.
13324
13325 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13326
13327         * record-btrace.c (btrace_print_lines): Change type of flags to
13328         gdb_disassembly_flags.
13329
13330 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13331
13332         * fbsd-nat.c: Include "inf-ptrace.h".
13333         (USE_SIGTRAP_SIGINFO): Conditionally define.
13334         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13335         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13336         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13337         function.
13338         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13339         Likewise.
13340         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13341         Likewise.
13342         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13343         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13344         "supports_stopped_by_hw_breakpoint" target methods.
13345
13346 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13347
13348         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13349         * fbsd-nat.c (debug_fbsd_nat): New variable.
13350         (show_fbsd_nat_debug): New function.
13351         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13352         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13353
13354 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13355
13356         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13357         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13358         prototype.
13359         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13360         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13361         method.
13362
13363 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13364
13365         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13366         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13367
13368 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13369
13370         * charset.c (struct charset_vector): New.
13371         (charsets): Change type to charset_vector.
13372         (find_charset_names): Adjust.
13373         (add_one): Adjust.
13374         (_initialize_charset): Adjust.
13375
13376 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13377
13378         * progspace.h (struct program_space) <deleted_solibs>: Change
13379         type to std::vector<std::string>.
13380         * progspace.c (clear_program_space_solib_cache): Adjust.
13381         * breakpoint.c (print_solib_event): Adjust.
13382         (check_status_catch_solib): Adjust.
13383         * solib.c (update_solib_list): Adjust.
13384         * ui-out.h (class ui_out) <field_string>: New overload.
13385         * ui-out.c (ui_out::field_string): New overload.
13386
13387 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13388
13389         * progspace.h (struct program_space): Add constructor and
13390         destructor, initialize fields.
13391         (add_program_space): Remove.
13392         * progspace.c (add_program_space): Rename to...
13393         (program_space::program_space): ... this.
13394         (release_program_space): Rename to...
13395         (program_space::~program_space): ... this.
13396         (delete_program_space): Use delete to delete program_space.
13397         (initialize_progspace): Use new to allocate program_space.
13398         * inferior.c (add_inferior_with_spaces): Likewise.
13399         (clone_inferior_command): Likewise.
13400         * infrun.c (follow_fork_inferior): Likewise.
13401         (handle_vfork_child_exec_or_exit): Likewise.
13402
13403 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13404
13405         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13406         (delim_string_to_char_ptr_vec): Return std::vector of
13407         gdb::unique_xmalloc_ptr.
13408         (dirnames_to_char_ptr_vec_append): Take std::vector of
13409         gdb::unique_xmalloc_ptr.
13410         (dirnames_to_char_ptr_vec): Return std::vector of
13411         gdb::unique_xmalloc_ptr.
13412         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13413         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13414         (delim_string_to_char_ptr_vec): Return an std::vector of
13415         gdb::unique_xmalloc_ptr, adjust the code.
13416         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13417         gdb::unique_xmalloc_ptr, adjust the code.
13418         (dirnames_to_char_ptr_vec): Return an std::vector of
13419         gdb::unique_xmalloc_ptr, adjust the code.
13420         * auto-load.c (auto_load_safe_path_vec): Change type to
13421         std::vector of gdb::unique_xmalloc_ptr.
13422         (auto_load_expand_dir_vars): Return an std::vector of
13423         gdb::unique_xmalloc_ptr, adjust the code.
13424         (auto_load_safe_path_vec_update): Adjust.
13425         (filename_is_in_auto_load_safe_path_vec): Adjust.
13426         (auto_load_objfile_script_1): Adjust.
13427         * build-id.c (build_id_to_debug_bfd): Adjust.
13428         * linux-thread-db.c (thread_db_load_search): Adjust.
13429         * source.c (add_path): Adjust.
13430         (openp): Adjust.
13431         * symfile.c (find_separate_debug_file): Adjust.
13432         * utils.c (do_free_char_ptr_vec): Remove.
13433         (make_cleanup_free_char_ptr_vec): Remove.
13434
13435 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13436
13437         PR gdb/22907
13438         * common/pathstuff.c: Conditionally include "<windows.h>".
13439
13440 2018-03-01  Georg Sauthoff  <mail@georg.so>
13441
13442         PR gdb/22888
13443         * gcore.in: Quote variables and switch interpreter to bash.
13444
13445 2018-03-01  Tom Tromey  <tom@tromey.com>
13446
13447         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13448         assertion.  Add assertion for discriminant_index.
13449         (quirk_rust_enum): Use correct base type name in univariant case.
13450
13451 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13452
13453         * record.c (get_call_history_modifiers): Return a
13454         record_print_flags.
13455         (cmd_record_call_history): Adjust.
13456         * record-btrace.c (record_btrace_call_history): Adjust.
13457         (record_btrace_call_history_range): Adjust.
13458         (record_btrace_call_history_from): Adjust.
13459         * target-debug.h (target_debug_print_record_print_flags): New.
13460         * target-delegates.c: Re-generate.
13461         * target.c (target_call_history): Change flags type.
13462         (target_call_history_from): Likewise.
13463         (target_call_history_range): Likewise.
13464         * target.h (struct target_ops) <target_call_history>: Likewise.
13465         (target_call_history_from): Likewise.
13466         (target_call_history_range): Likewise.
13467
13468 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13469             Simon Marchi  <simon.marchi@polymtl.ca>
13470
13471         * common/common-utils.c: Include "sys/stat.h".
13472         (is_regular_file): Move here from "source.c"; change return
13473         type to "bool".
13474         * common/common-utils.h (is_regular_file): New prototype.
13475         * common/pathstuff.c (contains_dir_separator): New function.
13476         * common/pathstuff.h (contains_dir_separator): New prototype.
13477         * source.c: Don't include "sys/stat.h".
13478         (is_regular_file): Move to "common/common-utils.c".
13479
13480 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13481
13482         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13483         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13484         * auto-load.c: Include "common/pathstuff.h".
13485         * common/common-def.h (current_directory): Move here.
13486         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13487         function.
13488         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13489         prototype.
13490         * common/pathstuff.c: New file.
13491         * common/pathstuff.h: New file.
13492         * compile/compile.c: Include "common/pathstuff.h".
13493         * defs.h (current_directory): Move to "common/common-defs.h".
13494         * dwarf2read.c: Include "common/pathstuff.h".
13495         * exec.c: Likewise.
13496         * guile/scm-safe-call.c: Likewise.
13497         * linux-thread-db.c: Likewise.
13498         * main.c: Likewise.
13499         * nto-tdep.c: Likewise.
13500         * objfiles.c: Likewise.
13501         * source.c: Likewise.
13502         * symtab.c: Likewise.
13503         * utils.c: Include "common/pathstuff.h".
13504         (gdb_realpath): Move to "common/pathstuff.c".
13505         (gdb_realpath_keepfile): Likewise.
13506         (gdb_abspath): Likewise.
13507         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13508         (gdb_realpath_keepfile): Likewise.
13509         (gdb_abspath): Likewise.
13510
13511 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13512
13513         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13514         wildcard process pid for super_resume for kernels with a
13515         specific bug.
13516
13517 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13518
13519         * compile/compile.c (get_args): Add additional comments
13520         explaining function.
13521
13522 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13523             Tom Tromey  <tom@tromey.com>
13524
13525         * target.h (memory_write_request_s): Remove typedef.  Don't define
13526         VEC.
13527         (target_write_memory_blocks): Change argument to std::vector.
13528         (struct memory_write_request): Add constructor.
13529         * target-memory.c (compare_block_starting_address): Return bool.
13530         Change argument types.
13531         (claim_memory): Change arguments to use std::vector.
13532         (split_regular_and_flash_blocks, blocks_to_erase)
13533         (compute_garbled_blocks): Likewise.
13534         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13535         (target_write_memory_blocks): Change argument to std::vector.
13536         * symfile.c (struct load_section_data): Add constructor and
13537         destructor.  Use std::vector for "requests".
13538         (struct load_progress_data): Add initializers.
13539         (load_section_callback): Update.  Use "new".
13540         (clear_memory_write_data): Remove.
13541         (generic_load): Update.
13542
13543 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13544
13545         * arch/aarch64.h: Use common/tdesc.h.
13546
13547 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13548
13549         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13550         architecture with a 64-bit ABI.
13551
13552 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13553
13554         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13555         ahead of target description loading.
13556
13557 2018-02-26  Tom Tromey  <tom@tromey.com>
13558
13559         * stack.c (backtrace_command_1): Update.
13560         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13561         of "flags".
13562         * python/py-framefilter.c (py_print_frame)
13563         (gdbpy_apply_frame_filter): Change type of "flags".
13564         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13565         of "flags".
13566         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13567         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13568         * extension.h (enum frame_filter_flag): Rename from
13569         frame_filter_flags.
13570         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13571         (apply_ext_lang_frame_filter): Change type of "flags".
13572         * extension.c (apply_ext_lang_frame_filter): Change type of
13573         "flags".
13574         * extension-priv.h (struct extension_language_ops)
13575         <apply_frame_filter>: Change type of "flags".
13576
13577 2018-02-26  Tom Tromey  <tom@tromey.com>
13578
13579         PR python/16497:
13580         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13581         off-by-one in py_end computation.
13582         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13583         PRINT_MORE_FRAMES.
13584         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13585         constant.
13586
13587 2018-02-26  Tom Tromey  <tom@tromey.com>
13588
13589         * dwarf2read.c (struct variant_field): New.
13590         (struct nextfield) <variant>: New field.
13591         (dwarf2_add_field): Handle DW_TAG_variant_part.
13592         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13593         discriminated union.
13594         (read_structure_type): Handle DW_TAG_variant_part.
13595         (handle_struct_member_die): New function, extracted from
13596         process_structure_scope.  Handle DW_TAG_variant.
13597         (process_structure_scope): Handle discriminated unions.  Call
13598         handle_struct_member_die.
13599
13600 2018-02-26  Tom Tromey  <tom@tromey.com>
13601
13602         * rust-lang.h (rust_last_path_segment): Declare.
13603         * rust-lang.c (rust_last_path_segment): Now public.  Change
13604         contract.
13605         (struct disr_info): Remove.
13606         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13607         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13608         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13609         (rust_enum_p, rust_enum_variant): New function.
13610         (rust_underscore_fields): Remove "offset" parameter.
13611         (rust_print_enum): New function.
13612         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13613         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13614         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13615         enums.
13616         (rust_internal_print_type): New function, from rust_print_type.
13617         Remove enum code.
13618         (rust_print_type): Call rust_internal_print_type.
13619         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13620         Update enum handling.
13621         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13622         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13623         (rust_union_quirks): New functions.
13624         (process_full_comp_unit, process_full_type_unit): Call
13625         rust_union_quirks.
13626         (process_structure_scope): Update rust_unions if necessary.
13627
13628 2018-02-26  Tom Tromey  <tom@tromey.com>
13629
13630         * value.h (value_union_variant): Declare.
13631         * valops.c (value_union_variant): New function.
13632         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13633         (struct discriminant_info): New.
13634         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13635         enumerator.
13636         (struct main_type) <flag_discriminated_union>: New field.
13637
13638 2018-02-26  Tom Tromey  <tom@tromey.com>
13639
13640         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13641         unittests/unpack-selftests.c.
13642         * unittests/unpack-selftests.c: New file.
13643         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13644
13645 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13646
13647         * dwarf2read.c (struct partial_die_info) <read>: New method.
13648         (read_partial_die): Remove the declaration.
13649         (load_partial_dies): Update.
13650         (partial_die_info::partial_die_info):
13651         (read_partial_die): Change it to partial_die_info::read.
13652
13653 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13654
13655         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13656         (fixup_partial_die): Remove declaration.
13657         (scan_partial_symbols): Update.
13658         (partial_die_parent_scope): Likewise.
13659         (partial_die_full_name): Likewise.
13660         (fixup_partial_die): Change it to partial_die_info::fixup.
13661
13662 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13663
13664         * dwarf2read.c (read_partial_die): Update the declaration.
13665         (load_partial_dies): Caller update.
13666         (read_partial_die): Remove one argument abbrev_len.
13667
13668 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13669
13670         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13671         assignment operator.
13672         (load_partial_dies): Use ctor and copy ctor.
13673         (read_partial_die): Update.
13674         (dwarf2_cu::find_partial_die): Use ctor.
13675
13676 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13677
13678         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13679         (find_partial_die_in_comp_unit): Change it to
13680         dwarf2_cu::find_partial_die.
13681         (find_partial_die): Update.
13682
13683 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13684
13685         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13686         is NULL.
13687
13688 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13689
13690         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13691
13692 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13693
13694         * arch/amd64.h: Use common/tdesc.h.
13695         * arch/i386.c: Likewise.
13696         * arch/i386.h: Likewise.
13697         * arch/tic6x.c: Likewise.
13698         * arch/tdesc.h: Move file from here...
13699         * common/tdesc.h: ...to here.
13700         * features/aarch64-core.c: Regenerate.
13701         * features/aarch64-fpu.c: Regenerate.
13702         * features/i386/32bit-avx.c: Regenerate.
13703         * features/i386/32bit-avx512.c: Regenerate.
13704         * features/i386/32bit-core.c: Regenerate.
13705         * features/i386/32bit-linux.c: Regenerate.
13706         * features/i386/32bit-mpx.c: Regenerate.
13707         * features/i386/32bit-pkeys.c: Regenerate.
13708         * features/i386/32bit-sse.c: Regenerate.
13709         * features/i386/64bit-avx.c: Regenerate.
13710         * features/i386/64bit-avx512.c: Regenerate.
13711         * features/i386/64bit-core.c: Regenerate.
13712         * features/i386/64bit-linux.c: Regenerate.
13713         * features/i386/64bit-mpx.c: Regenerate.
13714         * features/i386/64bit-pkeys.c: Regenerate.
13715         * features/i386/64bit-segments.c: Regenerate.
13716         * features/i386/64bit-sse.c: Regenerate.
13717         * features/i386/x32-core.c: Regenerate.
13718         * features/tic6x-c6xp.c: Regenerate.
13719         * features/tic6x-core.c: Regenerate.
13720         * features/tic6x-gp.c: Regenerate.
13721         * target-descriptions.c: Use common/tdesc.h.
13722         * target-descriptions.h: Likewise.
13723
13724 2018-02-24  Tom Tromey  <tom@tromey.com>
13725
13726         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13727         (try_thread_db_load_from_dir, thread_db_load_search): Use
13728         std::string.
13729         (info_auto_load_libthread_db_compare): Return bool.  Change
13730         argument types.
13731         (info_auto_load_libthread_db): Use std::vector, std::string.
13732         Remove cleanups.
13733
13734 2018-02-24  Tom Tromey  <tom@tromey.com>
13735
13736         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13737         std::string.
13738         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13739         std::string*.
13740         * gdbarch.c: Rebuild.
13741         * gdbarch.h: Rebuild.
13742         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13743         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13744         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13745         std::string*.
13746
13747 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13748
13749         * gdbtypes.h (sect_offset): Change type to uint64_t.
13750         (sect_offset_str): New function.
13751         * dwarf2read.c (create_addrmap_from_aranges): Use
13752         sect_offset_str.
13753         (error_check_comp_unit_head): Likewise.
13754         (create_debug_type_hash_table): Likewise.
13755         (read_cutu_die_from_dwo): Likewise.
13756         (init_cutu_and_read_dies): Likewise.
13757         (init_cutu_and_read_dies_no_follow): Likewise.
13758         (process_psymtab_comp_unit_reader): Likewise.
13759         (partial_die_parent_scope): Likewise.
13760         (peek_die_abbrev): Likewise.
13761         (process_queue): Likewise.
13762         (dwarf2_physname): Likewise.
13763         (read_namespace_alias): Likewise.
13764         (read_import_statement): Likewise.
13765         (create_dwo_cu_reader): Likewise.
13766         (create_cus_hash_table): Likewise.
13767         (lookup_dwo_cutu): Likewise.
13768         (inherit_abstract_dies): Likewise.
13769         (read_func_scope): Likewise.
13770         (read_call_site_scope): Likewise.
13771         (dwarf2_add_member_fn): Likewise.
13772         (read_common_block): Likewise.
13773         (read_module_type): Likewise.
13774         (read_typedef): Likewise.
13775         (read_subrange_type): Likewise.
13776         (load_partial_dies): Likewise.
13777         (read_partial_die): Likewise.
13778         (find_partial_die): Likewise.
13779         (read_str_index): Likewise.
13780         (dwarf2_string_attr): Likewise.
13781         (build_error_marker_type): Likewise.
13782         (lookup_die_type): Likewise.
13783         (dump_die_shallow): Likewise.
13784         (follow_die_ref): Likewise.
13785         (dwarf2_fetch_die_loc_sect_off): Likewise.
13786         (dwarf2_fetch_constant_bytes): Likewise.
13787         (follow_die_sig): Likewise.
13788         (get_signatured_type): Likewise.
13789         (get_DW_AT_signature_type): Likewise.
13790         (dwarf2_find_containing_comp_unit): Likewise.
13791         (set_die_type): Likewise.
13792
13793 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13794
13795         * arch/aarch64.c: Include "common-defs.h".
13796         * arch/amd64.c: Likewise.
13797         * arch/i386.c: Likewise.
13798
13799 2018-02-21  Tom Tromey  <tom@tromey.com>
13800
13801         * value.h: (extract_field_op): Update.
13802         * eval.c (extract_field_op): Return a const char *.
13803         * expression.h (parse_expression_for_completion): Update.
13804         * completer.c (complete_expression): Update.
13805         (add_struct_fields): Make fieldname const.
13806         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13807         (mark_completion_tag, parse_exp_in_context_1): Update.
13808         (parse_expression_for_completion): Change "name" to
13809         unique_xmalloc_ptr*.
13810
13811 2018-02-21  Tom Tromey  <tom@tromey.com>
13812
13813         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13814
13815 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13816
13817         * avr-tdep.c (avr_read_pc): Change parameter type to
13818         readable_regcache.
13819         * gdbarch.sh (read_pc): Likewise.
13820         * gdbarch.c: Re-generated.
13821         * gdbarch.h: Re-generated.
13822         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13823         readable_regcache.
13824         * ia64-tdep.c (ia64_read_pc): Likewise.
13825         * mips-tdep.c (mips_read_pc): Likewise.
13826         * spu-tdep.c (spu_read_pc): Likewise.
13827
13828 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13829
13830         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13831         * regcache-dump.c: New file.
13832         * regcache.c: Move register_dump to regcache-dump.c.
13833         (maintenance_print_registers): Likewise.
13834         (maintenance_print_raw_registers): Likewise.
13835         (maintenance_print_cooked_registers): Likewise.
13836         (maintenance_print_register_groups): Likewise.
13837         (maintenance_print_remote_registers): Likewise.
13838         (_initialize_regcache): Likewise.
13839         * regcache.h (register_dump): Moved from regcache.c.
13840
13841 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13842
13843         * regcache.c (regcache::regcache): Update.
13844         (regcache::invalidate): Move it to detached_regcache::invalidate.
13845         (get_thread_arch_aspace_regcache): Update.
13846         (regcache::raw_update): Update.
13847         (regcache::cooked_read): Remove some code.
13848         (regcache::cooked_read_value): Likewise.
13849         (regcache::raw_write): Remove assert on m_readonly_p.
13850         (regcache::raw_supply_integer): Move it to
13851         detached_regcache::raw_supply_integer.
13852         (regcache::raw_supply_zeroed): Likewise.
13853         * regcache.h (detached_regcache) <raw_supply_integer>: New
13854         declaration.
13855         <raw_supply_zeroed, invalidate>: Likewise.
13856         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13857         <invalidate>: Likewise.
13858         <m_readonly_p>: Removed.
13859
13860 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13861
13862         * infcmd.c (get_return_value): Let stop_regs point to
13863         get_current_regcache.
13864         * regcache.c (regcache::regcache): Remove.
13865         (register_dump_reg_buffer): New class.
13866         (regcache_print): Adjust.
13867         * regcache.h (regcache): Remove constructors.
13868
13869 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13870
13871         * regcache.c (class register_dump): New class.
13872         (register_dump_regcache, register_dump_none): New class.
13873         (register_dump_remote, register_dump_groups): New class.
13874         (regcache_print): Update.
13875         * regcache.h (regcache_dump_what): Move it to regcache.c.
13876         (regcache) <dump>: Remove.
13877
13878 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13879
13880         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13881          reg_buffer_rw *.
13882         (jit_unwind_reg_set_impl): Call raw_supply.
13883         (jit_frame_sniffer): Use reg_buffer_rw.
13884         * record-full.c (record_full_core_regbuf): Change its type.
13885         (record_full_core_open_1): Use reg_buffer_rw.
13886         (record_full_close): Likewise.
13887         (record_full_core_fetch_registers): Use regcache->raw_supply.
13888         (record_full_core_store_registers): Likewise.
13889         * regcache.c (regcache::get_register_status): Move it to
13890         reg_buffer.
13891         (regcache_raw_set_cached_value): Remove.
13892         (regcache::raw_set_cached_value): Remove.
13893         (regcache::raw_write): Call raw_supply.
13894         (regcache::raw_supply): Move it to reg_buffer_rw.
13895         * regcache.h (regcache_raw_set_cached_value): Remove.
13896         (reg_buffer_rw): New class.
13897
13898 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13899
13900         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13901         readonly_detached_regcache.
13902         (dummy_frame_prev_register): Use regcache->cooked_read.
13903         * frame.c (frame_save_as_regcache): Change return type.
13904         (frame_pop): Update.
13905         * frame.h (frame_save_as_regcache): Update declaration.
13906         * inferior.h (get_infcall_suspend_state_regcache): Update
13907         declaration.
13908         * infrun.c (infcall_suspend_state) <registers>: use
13909         readonly_detached_regcache.
13910         (save_infcall_suspend_state): Don't use regcache_dup.
13911         (get_infcall_suspend_state_regcache): Change return type.
13912         * linux-fork.c (struct fork_info) <savedregs>: Change to
13913         readonly_detached_regcache.
13914         <pc>: New field.
13915         (fork_save_infrun_state): Don't use regcache_dup.
13916         (info_checkpoints_command): Adjust.
13917         * mi/mi-main.c (register_changed_p): Update declaration.
13918         (mi_cmd_data_list_changed_registers): Use
13919         readonly_detached_regcache.
13920         (register_changed_p): Change parameter type to
13921         readonly_detached_regcache.
13922         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13923         readonly_detached_regcache.
13924         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13925         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13926         New.
13927         (regcache::save): Move it to reg_buffer.
13928         (regcache::restore): Change parameter type.
13929         (regcache_dup): Remove.
13930         * regcache.h (reg_buffer) <save>: New method.
13931         (readonly_detached_regcache): New class.
13932         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13933         readonly_detached_regcache.
13934         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13935
13936 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13937
13938         * frame.c (frame_save_as_regcache): Use regcache method save.
13939         (frame_pop): Use regcache method restore.
13940         * infrun.c (restore_infcall_suspend_state): Likewise.
13941         * linux-fork.c (fork_load_infrun_state): Likewise.
13942         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13943         save.
13944         * regcache.c (regcache_save): Remove.
13945         (regcache::restore): More asserts.
13946         (regcache_cpy): Remove.
13947         * regcache.h (regcache_save): Remove the declaration.
13948         (regcache::restore): Move from private to public.
13949         Remove the friend declaration of regcache_cpy.
13950         (regcache_cpy): Remove declaration.
13951
13952 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13953
13954         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13955         parameter type to 'readable_regcache *'.
13956         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13957         * arm-tdep.c (arm_neon_quad_read): Likewise.
13958         (arm_pseudo_read): Likewise.
13959         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13960         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13961         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13962         * gdbarch.c: Re-generated.
13963         * gdbarch.h: Re-generated.
13964         * gdbarch.sh (pseudo_register_read): Change parameter type to
13965         'readable_regcache *'.
13966         (pseudo_register_read_value): Likewise.
13967         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13968         (h8300_pseudo_register_read): Likewise.
13969         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13970         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13971         (i386_pseudo_register_read_into_value): Likewise.
13972         (i386_pseudo_register_read_value): Likewise.
13973         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13974         declaration.
13975         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13976         * m32c-tdep.c (m32c_raw_read): Likewise.
13977         (m32c_read_flg): Likewise.
13978         (m32c_banked_register): Likewise.
13979         (m32c_banked_read): Likewise.
13980         (m32c_sb_read): Likewise.
13981         (m32c_part_read): Likewise.
13982         (m32c_cat_read): Likewise.
13983         (m32c_r3r2r1r0_read): Likewise.
13984         (m32c_pseudo_register_read): Likewise.
13985         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13986         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13987         (mep_pseudo_cr64_read): Likewise.
13988         (mep_pseudo_register_read): Likewise.
13989         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13990         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13991         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13992         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13993         (regcache::cooked_read): Likewise.
13994         (regcache::cooked_read_value): Likewise.
13995         (regcache_cooked_read_signed):
13996         (regcache::cooked_read): Likewise.
13997         * regcache.h (readable_regcache): New class.
13998         (regcache): Inherit readable_regcache.  Move some methods to
13999         readable_regcache.
14000         * rl78-tdep.c (rl78_pseudo_register_read): Change
14001         parameter type to 'readable_regcache *'.
14002         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14003         (e500_pseudo_register_read): Change parameter type to
14004         'readable_regcache *'.
14005         (dfp_pseudo_register_read): Likewise.
14006         (vsx_pseudo_register_read): Likewise.
14007         (efpr_pseudo_register_read): Likewise.
14008         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14009         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14010         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14011         (sh64_pseudo_register_read): Likewise.
14012         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14013         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14014         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14015         (spu_pseudo_register_read): Likewise.
14016         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14017         (xtensa_pseudo_register_read): Likewise.
14018
14019 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14020
14021         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14022         (regcache::arch): Move it to reg_buffer::arch.
14023         (regcache::register_buffer): Likewise.
14024         (regcache::assert_regnum): Likewise.
14025         (regcache::num_raw_registers): Likewise.
14026         * regcache.h (reg_buffer): New class.
14027         (regcache): Inherit reg_buffer.
14028
14029 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14030
14031         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14032         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14033
14034 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14035
14036         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14037
14038 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14039
14040         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14041         (SFILES): Remove common/*.c files.
14042         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14043         * common/common.host: Add common reference.
14044         * configure.ac: Likewise.
14045         * configure: Regenerate.
14046
14047 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14048
14049         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14050         (block_initialize_namespace): Use new.
14051         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14052         (dwarf2_free_objfile): Use delete.
14053         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14054         (copy_type_recursive): Use new.
14055         * gdb_obstack.h (allocate_on_obstack): New.
14056
14057 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14058
14059         PR gdb/22849
14060         * inferior.c (exit_inferior_1): Reset inf->control.
14061
14062 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14063
14064         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14065         declaration.
14066
14067 2018-02-14  Pedro Alves  <palves@redhat.com>
14068
14069         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14070         frame_cleanup_after_sniffer on exception.
14071
14072 2018-02-14  Tom Tromey  <tom@tromey.com>
14073
14074         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14075         const.
14076         (solib_bfd_open): Make pathname const.
14077         * solib.c (solib_bfd_open): Make pathname const.
14078         * solib-spu.c (spu_bfd_fopen): Make name const.
14079         (spu_bfd_open): Make pathname const.
14080         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14081         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14082
14083 2018-02-14  Tom Tromey  <tom@tromey.com>
14084
14085         * symfile.c (symfile_bfd_open): Update.
14086         * source.h (openp, source_full_path_of, find_and_open_source):
14087         Change argument type to unique_xmalloc_ptr.
14088         * source.c (openp): Take a unique_xmalloc_ptr.
14089         (source_full_path_of, find_and_open_source): Likewise.
14090         (open_source_file, symtab_to_fullname): Update.
14091         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14092         unique_xmalloc_ptr.
14093         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14094         (exec_file_find): Update.
14095         * psymtab.c (psymtab_to_fullname): Update.
14096         * nto-tdep.h (nto_find_and_open_solib): Update.
14097         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14098         unique_xmalloc_ptr.
14099         * exec.c (exec_file_attach): Update.
14100         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14101         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14102
14103 2018-02-14  Tom Tromey  <tom@tromey.com>
14104
14105         * solib.c: Include source.h.
14106         * nto-tdep.c: Include source.h.
14107         * mi/mi-cmd-env.c: Include source.h.
14108         * infcmd.c: Include source.h.
14109         * exec.c: Include source.h.
14110         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14111         (add_path, directory_switch, source_path, init_source_path): Move
14112         declarations...
14113         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14114         (add_path, directory_switch, source_path, init_source_path):
14115         ...here.
14116
14117 2018-02-14  Tom Tromey  <tom@tromey.com>
14118
14119         * solist.h (exec_file_find, solib_find): Return
14120         unique_xmalloc_ptr.
14121         (solib_bfd_fopen): Take a const char *.
14122         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14123         (exec_file_find, solib_find): Likewise.
14124         (solib_bfd_fopen): Do not take ownership of "pathname".
14125         (solib_bfd_open): Use unique_xmalloc_ptr.
14126         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14127         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14128         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14129         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14130
14131 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14132
14133         * ada-lang.c (name_match_type_from_name): Remove reference to
14134         ada_name_for_lookup in function's documentation.
14135         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14136
14137 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14138
14139         * defs.h (enum openp_flags): New enum.
14140         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14141         Move to enum openp_flags.
14142         (openp_flags): New enum flags.
14143         (openp): Change parameter type to openp_flags.
14144         * source.c (openp): Change parameter type to openp_flags.
14145         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14146         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14147
14148 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14149
14150         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14151         per-command.
14152
14153 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14154
14155         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14156         into...
14157         (class dwarf2_queue_guard): ...the destructor of this new class.
14158         (dw2_do_instantiate_symtab): Create instance of the new class
14159         dwarf2_queue_guard, remove cleanup.
14160
14161 2018-02-09  Tom Tromey  <tom@tromey.com>
14162
14163         * source.c (find_source_lines): Don't reference past the end of
14164         the vector.
14165
14166 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14167
14168         * remote.c (remote_btrace_maybe_reopen): Change error message.
14169         * btrace.c (btrace_enable): Likewise.
14170         (parse_xml_btrace): Likewise.
14171         (parse_xml_btrace_conf): Likewise.
14172
14173 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14174
14175         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14176         (linux_enable_pt, linux_enable_bts): Call
14177         diagnose_perf_event_open_fail.
14178
14179 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14180
14181         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14182         Remove parameter and change return type.  Update callers.  Move it.
14183         (linux_enable_bts, linux_enable_pt): Improve error message.
14184         (linux_enable_pt): Remove zero buffer size check.
14185         (linux_enable_btrace): Improve error messages.  Remove NULL return
14186         check.
14187
14188 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14189
14190         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14191         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14192         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14193         (linux_supports_pt, linux_supports_btrace): Remove.
14194         (linux_enable_bts): Call cpu_supports_bts.
14195         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14196         * remote.c (remote_supports_btrace): Remove.
14197         (init_remote_ops): Remove remote_supports_btrace.
14198         * target-delegates.c: Regenerated.
14199         * target.c (target_supports_btrace): Remove.
14200         * target.h (target_ops) <to_supports_btrace>: Remove
14201         (target_supports_btrace): Remove.
14202         * x86-linux-nat.c (x86_linux_create_target): Remove
14203         linux_supports_btrace.
14204
14205 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14206
14207         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14208         btrace failed.
14209         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14210         exception and use message in own exception.
14211
14212 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14213
14214         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14215         (perf_event_pt_event_type): Use gdb_file_up.
14216         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14217         scoped_fd, and scoped_mmap.
14218
14219 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14220
14221         * common/scoped_mmap.h: New.
14222         * unittests/scoped_mmap-selftest.c: New.
14223         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14224         unittests/scoped_mmap-selftest.c.
14225
14226 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14227
14228         * common/scoped_fd.h: New.
14229         * unittests/scoped_fd-selftest.c: New.
14230         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14231         unittests/scoped_fd-selftest.c.
14232
14233 2018-02-09  Tom Tromey  <tom@tromey.com>
14234
14235         * auto-load.c (auto_load_section_scripts): Use
14236         gdb::unique_xmalloc_ptr.
14237
14238 2018-02-09  Tom Tromey  <tom@tromey.com>
14239
14240         * auto-load.c (execute_script_contents): Use std::string.
14241
14242 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14243
14244         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14245         Python function, rather than a new command.
14246
14247 2018-02-08  Tom Tromey  <tom@tromey.com>
14248
14249         * solib.c (solib_find_1): Use std::string.
14250         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14251
14252 2018-02-08  Tom Tromey  <tom@tromey.com>
14253
14254         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14255
14256 2018-02-08  Tom Tromey  <tom@tromey.com>
14257
14258         * source.c (find_source_lines): Use gdb::def_vector.
14259
14260 2018-02-08  Tom Tromey  <tom@tromey.com>
14261
14262         * macrocmd.c (struct temporary_macro_definition): New.
14263         (macro_define_command): Use temporary_macro_definition.  Remove
14264         cleanups.
14265         (free_macro_definition_ptr): Remove.
14266
14267 2018-02-08  Tom Tromey  <tom@tromey.com>
14268
14269         * macroexp.c (maybe_expand): Use std::string.
14270
14271 2018-02-08  Tom Tromey  <tom@tromey.com>
14272
14273         * macroexp.c (struct macro_buffer): Add initializers for some
14274         members.
14275         (init_buffer, init_shared_buffer, free_buffer)
14276         (free_buffer_return_text): Remove.
14277         (macro_buffer): New constructors.
14278         (~macro_buffer): New destructor.
14279         (macro_buffer::set_shared): New method.
14280         (macro_buffer::resize_buffer, macro_buffer::appendc)
14281         (macro_buffer::appendmem): Now methods, not free functions.
14282         (set_token, append_tokens_without_splicing, stringify)
14283         (macro_stringify): Update.
14284         (gather_arguments): Change return type.  Remove argc_p argument,
14285         add args_ptr argument.  Use std::vector.
14286         (substitute_args): Remove argc argument.  Accept std::vector.
14287         (expand): Update.  Use std::vector.
14288         (scan, macro_expand, macro_expand_next): Update.
14289
14290 2018-02-08  Tom Tromey  <tom@tromey.com>
14291
14292         * symtab.c (default_collect_symbol_completion_matches_break_on):
14293         Use unique_xmalloc_ptr.
14294         * macroscope.h: (sal_macro_scope, user_macro_scope)
14295         (default_macro_scope): Return unique_xmalloc_ptr.
14296         * macroscope.c (sal_macro_scope, user_macro_scope)
14297         (default_macro_scope): Return unique_xmalloc_ptr.
14298         * macroexp.h (macro_expand, macro_expand_once): Return
14299         unique_xmalloc_ptr.
14300         * macroexp.c (macro_expand, macro_expand_once): Return
14301         unique_xmalloc_ptr.
14302         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14303         (info_macro_command, info_macros_command): Use
14304         unique_xmalloc_ptr.
14305         * compile/compile-c-support.c (write_macro_definitions): Use
14306         unique_xmalloc_ptr.
14307         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14308
14309 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14310
14311         * value.c (value_static_field): Assign field type instead of
14312         containing type when returning an optimized out value.
14313
14314 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14315
14316         * ft32-tdep.c (ft32_read_pc): Remove.
14317         (ft32_write_pc): Remove.
14318         (ft32_gdbarch_init): Update.
14319         * m32r-tdep.c (m32r_read_pc): Remove.
14320         (m32r_gdbarch_init): Update.
14321         * mep-tdep.c (mep_read_pc): Remove.
14322         (mep_gdbarch_init): Update.
14323         * microblaze-tdep.c (microblaze_write_pc): Remove.
14324         (microblaze_gdbarch_init): Update.
14325         * mn10300-tdep.c (mn10300_read_pc): Remove.
14326         (mn10300_write_pc): Remove.
14327         (mn10300_gdbarch_init): Update.
14328         * moxie-tdep.c (moxie_read_pc): Remove.
14329         (moxie_write_pc): Remove.
14330         (moxie_gdbarch_init): Update.
14331
14332 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14333
14334         * expprint.c (print_subexp_standard): Handle
14335         OP_F77_UNDETERMINED_ARGLIST.
14336         (dump_subexp_body_standard): Likewise.
14337
14338 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14339
14340         * target-descriptions.c (tdesc_element_visitor) Add empty
14341         implementations.
14342         (tdesc_type): Move make_gdb_type from here.
14343         (tdesc_type_builtin): Likewise.
14344         (tdesc_type_vector): Likewise.
14345         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14346         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14347         (make_gdb_type_union): Likewise.
14348         (make_gdb_type_flags): Likewise.
14349         (make_gdb_type_enum): Likewise.
14350         (make_gdb_type): New function.
14351         (tdesc_register_type): Use static make_gdb_type.
14352
14353 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14354
14355         * infcmd.c (default_print_one_register_info): Align natural-format
14356         column values consistently one under another.
14357         (pad_to_column): New function.
14358
14359 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14360
14361         * dwarf2read.c (dwarf2_physname): Move commment.
14362
14363 2018-02-01  Leszek Swirski  <leszeks@google.com>
14364
14365         * varobj.c (varobj_formatted_print_options): Allow recursive
14366         pretty printing if pretty printing is enabled.
14367
14368 2018-02-01  Leszek Swirski  <leszeks@google.com>
14369
14370         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14371         names after a structop as a filename.
14372
14373 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14374
14375         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14376         (arm_record_coproc_data_proc): Likewise.
14377
14378 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14379
14380         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14381
14382 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14383
14384         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14385         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14386
14387 2018-01-31  Pedro Alves  <palves@redhat.com>
14388
14389         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14390         * inflow.c (child_terminal_save_inferior): Wrap reference to
14391         tcgetpgrp in HAVE_TERMIOS_H.
14392         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14393         _WIN32.
14394         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14395         always iterate over all inferiors.
14396         (gdbsim_cntrl_c): Adjust.
14397         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14398
14399 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14400
14401         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14402         index type is objfile-owned if the element type is as well.
14403
14404 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14405
14406         GDB 8.1 released.
14407
14408 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14409
14410         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14411         "features/s390x-linux64.c".
14412         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14413         s390_linux32 and s390x_linux64.
14414         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14415         default tdesc.
14416         * s390-tdep.c: Include "features/s390-linux32.c" and
14417         "features/s390x-linux64.c".
14418         (s390_tdesc_valid): Add check for tdesc_has_registers.
14419         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14420         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14421         tdesc_s390x_linux64.
14422         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14423         tdesc_s390x_linux64 to...
14424         * s390-tdep.h: ...here.
14425
14426 2018-01-30  Pedro Alves  <palves@redhat.com>
14427
14428         PR gdb/13211
14429         * config.in, configure: Regenerate.
14430         * configure.ac: Check for getpgid.
14431         * go32-nat.c (go32_pass_ctrlc): New.
14432         (go32_target): Install it.
14433         * inf-child.c (inf_child_target): Install
14434         child_terminal_save_inferior, child_pass_ctrlc and
14435         child_interrupt.
14436         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14437         (inf_ptrace_target): No longer install it.
14438         * infcmd.c (interrupt_target_1): Adjust.
14439         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14440         (child_interrupt): Declare.
14441         (inferior::terminal_state): New.
14442         * inflow.c (struct terminal_info): Update comments.
14443         (inferior_process_group): Delete.
14444         (terminal_is_ours): Delete.
14445         (gdb_tty_state): New.
14446         (child_terminal_init): Adjust.
14447         (is_gdb_terminal, sharing_input_terminal_1)
14448         (sharing_input_terminal): New functions.
14449         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14450         Set the process's actual process group in the foreground if
14451         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14452         mark terminal as the inferior's if not sharing GDB's terminal.
14453         Don't check attach_flag.
14454         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14455         pass down a target_terminal_state.
14456         (child_terminal_save_inferior): New, factored out from ...
14457         (child_terminal_ours_1): ... this.  Handle
14458         target_terminal_state::is_ours_for_output.
14459         (child_interrupt, child_pass_ctrlc): New.
14460         (inflow_inferior_exit): Clear the inferior's terminal_state.
14461         (copy_terminal_info): Copy the inferior's terminal state.
14462         (_initialize_inflow): Remove reference to terminal_is_ours.
14463         * inflow.h (inferior_process_group): Delete.
14464         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14465         * procfs.c (procfs_target): Don't install procfs_interrupt.
14466         (procfs_interrupt): Delete.
14467         * remote.c (remote_serial_quit_handler): Adjust.
14468         (remote_interrupt): Remove ptid parameter.  Adjust.
14469         * target-delegates.c: Regenerate.
14470         * target.c: Include "terminal.h".
14471         (target_terminal::terminal_state): Rename to ...
14472         (target_terminal::m_terminal_state): ... this.
14473         (target_terminal::init): Adjust.
14474         (target_terminal::inferior): Adjust to per-inferior
14475         terminal_state.
14476         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14477         (target_terminal::ours, target_terminal::ours_for_output): Use
14478         target_terminal_is_ours_kind.
14479         (target_interrupt): Remove ptid parameter.  Adjust.
14480         (default_target_pass_ctrlc): Adjust.
14481         * target.h (target_ops::to_terminal_save_inferior): New field.
14482         (target_ops::to_interrupt): Remove ptid_t parameter.
14483         (target_interrupt): Remove ptid_t parameter.  Update comment.
14484         (target_pass_ctrlc): Update comment.
14485         * target/target.h (target_terminal_state): New scoped enum,
14486         factored out of ...
14487         (target_terminal::terminal_state): ... here.
14488         (target_terminal::inferior): Update comments.
14489         (target_terminal::restore_inferior): New.
14490         (target_terminal::is_inferior, target_terminal::is_ours)
14491         (target_terminal::is_ours_for_output): Adjust.
14492         (target_terminal::scoped_restore_terminal_state): Adjust to
14493         rename, and call restore_inferior() instead of inferior().
14494         (target_terminal::scoped_restore_terminal_state::m_state): Change
14495         type.
14496         (target_terminal::terminal_state): Rename to ...
14497         (target_terminal::m_terminal_state): ... this and change type.
14498
14499 2018-01-30  Pedro Alves  <palves@redhat.com>
14500
14501         * linux-nat.c (wait_for_signal): New function.
14502         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14503         directly.
14504         (async_terminal_is_ours)
14505         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14506         (linux_nat_add_target): Don't override
14507         to_terminal_inferior/to_terminal_ours.
14508
14509 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14510
14511         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14512
14513 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14514
14515         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14516         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14517         dwarf2_per_objfile_free here.
14518         (dwarf2_per_objfile_free): Remove.
14519         (_initialize_dwarf2_read): Don't register
14520         dwarf2_per_objfile_free as a registry cleanup.
14521
14522 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14523
14524         Avoid compilation errors in MinGW native builds
14525
14526         The error is triggered by including python-internal.h, and the
14527         error message is:
14528
14529              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14530                       from build-gnulib/import/math.h:27,
14531                       from d:/usr/Python26/include/pyport.h:235,
14532                       from d:/usr/Python26/include/Python.h:58,
14533                       from python/python-internal.h:94,
14534                       from python/py-arch.c:24:
14535              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14536         using ::hypot;
14537                 ^~~~~
14538
14539         This happens because Python headers define 'hypot' to expand t
14540         '_hypot' in the Windows builds.
14541         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14542         'hypoth'.  This avoids a compilation error.
14543
14544 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14545
14546         * MAINTAINERS (Write After Approval): Fix ordering.
14547
14548 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14549
14550         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14551
14552 2018-01-26  Alan Modra  <amodra@gmail.com>
14553
14554         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14555         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14556         Remove nop.  Make const.  Comment.
14557         (powerpc32_plt_stub_so_2): New.
14558         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14559         Correct count.  Update uses.
14560         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14561         Move common code reading PLT entry word.  Correct
14562         powerpc32_plt_stub PLT address calculation.
14563         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14564         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14565         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14566         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14567         (ppc64_standard_linkage8): Likewise.
14568         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14569         Correct insns description.
14570         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14571
14572 2018-01-24  Pedro Alves  <palves@redhat.com>
14573
14574         GCC PR libstdc++/83906
14575         * gdbtypes.c (operator==(const dynamic_prop &,
14576         const dynamic_prop &)): New.
14577         (operator==(const range_bounds &, const range_bounds &)): New.
14578         (check_types_equal): Use them instead of memcmp.
14579         * gdbtypes.h (operator==(const dynamic_prop &,
14580         const dynamic_prop &)): Declare.
14581         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14582         (operator==(const range_bounds &, const range_bounds &)): Declare.
14583         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14584
14585 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14586
14587         * s390-linux-tdep.c (s390_record_address_mask)
14588         (s390_record_calc_disp_common, s390_record_calc_disp)
14589         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14590         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14591         (s390_process_record): Move to s390-tdep.c.
14592         (s390_linux_init_abi_any): Adjust.
14593         * s390-tdep.c (s390_record_address_mask)
14594         (s390_record_calc_disp_common, s390_record_calc_disp)
14595         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14596         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14597         (s390_process_record): Moved from s390-linux-tdep.c
14598         (s390_gdbarch_init): Adjust.
14599
14600 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14601
14602         * s390-linux-nat.c (s390-tdep.h): New include.
14603         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14604         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14605         (ALLDEPFILES): Add s390-tdep.c.
14606         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14607         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14608         * s390-tdep.h: ...this.  New file.
14609         * s390-linux-tdep.c (s390-tdep.h): New include.
14610         (_initialize_s390_tdep): Rename to...
14611         (_initialize_s390_linux_tdep): ...this and adjust.
14612         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14613         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14614         s390-tdep.h.
14615         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14616         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14617         (s390_is_partial_instruction, s390_software_single_step)
14618         (is_non_branch_ril, s390_displaced_step_copy_insn)
14619         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14620         (s390_prologue_data, s390_addr, s390_store, s390_load)
14621         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14622         (s390_register_call_saved, s390_guess_tracepoint_registers)
14623         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14624         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14625         (s390_pseudo_register_name, s390_pseudo_register_type)
14626         (s390_pseudo_register_read, s390_pseudo_register_write)
14627         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14628         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14629         (s390_addr_bits_remove, s390_address_class_type_flags)
14630         (s390_address_class_type_flags_to_name)
14631         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14632         (s390_function_arg_float, s390_function_arg_vector)
14633         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14634         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14635         (s390_frame_align, s390_register_return_value, s390_return_value)
14636         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14637         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14638         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14639         (s390_trad_frame_prev_register, s390_unwind_cache)
14640         (s390_prologue_frame_unwind_cache)
14641         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14642         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14643         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14644         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14645         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14646         (s390_frame_base_address, s390_local_base_address)
14647         (s390_frame_base, s390_gcc_target_options)
14648         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14649         (s390_validate_reg_range, s390_tdesc_valid)
14650         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14651         * s390-tdep.c: ...this.  New file.
14652
14653 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14654
14655         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14656         (s390_process_record, s390_gdbarch_tdep_alloc)
14657         (s390_linux_init_abi_any): Use/set new hook.
14658
14659 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14660
14661         * s390-linux-tdep.c (osabi.h): New include.
14662         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14663         (s390_linux_init_abi_any): New functions.
14664         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14665
14666 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14667
14668         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14669         tdesc_has_registers check
14670
14671 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14672
14673         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14674         (s390_validate_reg_range): New macro.
14675         (s390_gdbarch_init): Adjust.
14676
14677 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14678
14679         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14680         (s390_gdbarch_tdep_alloc): Adjust.
14681         (s390_gdbarch_init): Adjust.
14682
14683 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14684
14685         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14686         <have_tdb>: Change type to bool.
14687         (s390_gdbarch_tdep_alloc): Adjust.
14688         (s390_gdbarch_init): Adjust.
14689
14690 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14691
14692         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14693         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14694         (s390_gdbarch_tdep_alloc): New function.
14695         (s390_gdbarch_init): Allocate tdep at start and use its fields
14696         instead of separate variables.
14697
14698 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14699
14700         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14701         when looking for cached gdbarch and add comment for remaining.
14702
14703 2018-01-22  Pedro Alves  <palves@redhat.com>
14704             Sergio Durigan Junior  <sergiodj@redhat.com>
14705
14706         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14707         case.
14708
14709 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14710
14711         * MAINTAINERS: Update my company e-mail address.
14712
14713 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14714
14715         * regcache.c (cooked_write_test): New function.
14716         (_initialize_regcache): Register the test.
14717
14718 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14719
14720         * ia64-tdep.c (ia64_pseudo_register_read): Call
14721         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14722         * m32c-tdep.c (m32c_cat_read): Likewise.
14723         (m32c_r3r2r1r0_read): Likewise.
14724         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14725         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14726
14727 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14728
14729         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14730         method raw_read instead of regcache_raw_read.
14731         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14732         * arm-tdep.c (arm_neon_quad_read): Likewise.
14733         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14734         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14735         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14736         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14737         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14738         (i386_pseudo_register_read_into_value): Likewise.
14739         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14740         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14741         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14742         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14743         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14744         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14745         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14746         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14747         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14748
14749 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14750
14751         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14752         * configure.tgt: Remove target mt.
14753         * mt-tdep.c: Remove.
14754         * regcache.c (cooked_read_test): Remove the check for mt.
14755
14756 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14757
14758         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14759         instead of gdbarch_pseudo_register_read_value.
14760
14761 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14762
14763         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14764         language is Ada.
14765
14766 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14767
14768         * linespec.c (create_sals_line_offset): Remove code that preserved
14769         the symtab_and_line's line number.
14770
14771 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14772
14773         * varobj.c (varobj_create): Don't set valid_block when creating a
14774         floating varobj.
14775
14776 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14777
14778         * varobj.c (varobj_create): Remove out of date comment.
14779
14780 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14781
14782         PR mi/20395
14783         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14784         updating innermost block.
14785         * parse.c (innermost_block_tracker::update): Take extra type
14786         parameter, and check types match before updating innermost block.
14787         (write_dollar_variable): Update innermost block for registers.
14788         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14789         (innermost_block_tracker::innermost_block_tracker): Initialise
14790         m_types member.
14791         (innermost_block_tracker::reset): Take type parameter.
14792         (innermost_block_tracker::update): Take type parameter, and pass
14793         type through as needed.
14794         (innermost_block_tracker::m_types): New member.
14795         * varobj.c (varobj_create): Pass type when reseting innermost
14796         block.
14797
14798 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14799
14800         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14801         * ada-lang.c (resolve_subexp): Likewise.
14802         * breakpoint.c (set_breakpoint_condition) Likewise.
14803         (watch_command_1) Likewise.
14804         * c-exp.y (variable): Likewise.
14805         * d-exp.y (PrimaryExpression): Likewise.
14806         * f-exp.y (variable): Likewise.
14807         * go-exp.y (variable): Likewise.
14808         * m2-exp.y (variable): Likewise.
14809         * objfiles.c (objfile::~objfile): Likewise.
14810         * p-exp.y (variable): Likewise.
14811         * parse.c (innermost_block): Change type.
14812         * parser-defs.h (class innermost_block_tracker): New.
14813         (innermost_block): Change to innermost_block_tracker.
14814         * printcmd.c (display_command): Switch to innermost_block API.
14815         (do_one_display): Likewise.
14816         * rust-exp.y (do_one_display): Likewise.
14817         * symfile.c (clear_symtab_users): Likewise.
14818         * varobj.c (varobj_create): Switch to innermost_block API, replace
14819         use of innermost_block with block stored on varobj object.
14820
14821 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14822
14823         * expression.h (innermost_block): Remove declaration.
14824         * varobj.c: Add 'parser-defs.h' include.
14825
14826 2018-01-19  Tom Tromey  <tom@tromey.com>
14827
14828         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14829         symbols in the static and global blocks.
14830
14831 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14832
14833         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14834         gdb_ptrace.h, and move including gdb_wait.h ...
14835         * nat/linux-ptrace.h: ... to here.
14836
14837 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14838
14839         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14840         inf_ptrace_detach_success.
14841         (inf_ptrace_detach_success): Add inferior parameter, use it
14842         instead of inferior_ptid, pass it to detach_inferior.
14843         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14844         parameter.
14845         * inferior.c (detach_inferior): Add overload that takes an
14846         inferior object.
14847         * inferior.h (detach_inferior): Likewise.
14848         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14849         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14850         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14851
14852 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14853
14854         * target.h (struct target_ops) <to_detach>: Add inferior
14855         parameter.
14856         (target_detach): Likewise.
14857         * target.c (dispose_inferior): Pass inferior down.
14858         (target_detach): Pass inferior down.  Assert that it is equal to
14859         the current inferior.
14860         * aix-thread.c (aix_thread_detach): Pass inferior down.
14861         * corefile.c (core_file_command): Pass current_inferior() down.
14862         * corelow.c (core_detach): Add inferior parameter.
14863         * darwin-nat.c (darwin_detach): Likewise.
14864         * gnu-nat.c (gnu_detach): Likewise.
14865         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14866         * infcmd.c (detach_command): Pass current_inferior() down to
14867         target_detach.
14868         * infrun.c (follow_fork_inferior): Pass parent_inf to
14869         target_detach.
14870         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14871         target_detach.
14872         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14873         * linux-thread-db.c (thread_db_detach): Likewise.
14874         * nto-procfs.c (procfs_detach): Likewise.
14875         * procfs.c (procfs_detach): Likewise.
14876         * record.c (record_detach): Likewise.
14877         * record.h (struct inferior): Forward-declare.
14878         (record_detach): Add inferior parameter.
14879         * remote-sim.c (gdbsim_detach): Likewise.
14880         * remote.c (remote_detach_1): Likewise.
14881         (remote_detach): Likewise.
14882         (extended_remote_detach): Likewise.
14883         * sol-thread.c (sol_thread_detach): Likewise.
14884         * target-debug.h (target_debug_print_inferior_p): New macro.
14885         * target-delegates.c: Re-generate.
14886         * top.c (kill_or_detach): Pass inferior down to target_detach.
14887         * windows-nat.c (windows_detach): Add inferior parameter.
14888
14889 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14890
14891         * target.h (struct target_ops) <to_detach>: Remove args
14892         parameter.
14893         (target_detach): Likewise.
14894         * target.c (dispose_inferior): Adjust.
14895         (target_detach): Remove args parameter, adjust.
14896         * aix-thread.c (aix_thread_detach): Adjust.
14897         * corefile.c (core_file_command): Adjust.
14898         * corelow.c (core_detach): Adjust.
14899         * darwin-nat.c (darwin_detach): Adjust.
14900         * gnu-nat.c (gnu_detach): Adjust.
14901         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14902         * infcmd.c (detach_command): Adjust
14903         * infrun.c (follow_fork_inferior): Adjust.
14904         (handle_vfork_child_exec_or_exit): Adjust.
14905         * linux-fork.c (linux_fork_detach): Remove args parameter.
14906         * linux-fork.h (linux_fork_detach): Likewise.
14907         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14908         * linux-thread-db.c (thread_db_detach): Likewise.
14909         * nto-procfs.c (procfs_detach): Likewise.
14910         * procfs.c (procfs_detach): Likewise.
14911         (do_detach): Remove signo parameter.
14912         * record.c (record_detach): Remove args parameter.
14913         * record.h (record_detach): Likewise.
14914         * remote-sim.c (gdbsim_detach): Likewise.
14915         * remote.c (remote_detach_1): Likewise.
14916         (remote_detach): Likewise.
14917         (extended_remote_detach): Likewise.
14918         * sol-thread.c (sol_thread_detach): Likewise.
14919         * target-delegates.c: Re-generate.
14920         * top.c (struct qt_args) <args>: Remove field.
14921         (kill_or_detach): Don't pass args.
14922         (quit_force): Don't set args.
14923         * windows-nat.c (windows_detach): Remove args parameter.
14924
14925 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14926
14927         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14928         (arm_linux_init_abi): Install it.
14929
14930 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14931
14932         * osabi.c (gdb_osabi_names): Extend the regexp for
14933         arm-linux-gnueabihf.
14934
14935 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14936
14937         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14938         m_abbrevs.
14939         (abbrev_table::add_abbrev): Update.
14940         (abbrev_table::lookup_abbrev): Update.
14941
14942 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14943
14944         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14945
14946 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14947
14948         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14949         to "std::string".
14950
14951 2018-01-17  Tom Tromey  <tom@tromey.com>
14952
14953         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14954
14955 2018-01-17  Tom Tromey  <tom@tromey.com>
14956
14957         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14958         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14959         (create_array_type_with_stride): Update.
14960         * dwarf2read.c (set_die_type): Update.
14961
14962 2018-01-17  Tom Tromey  <tom@tromey.com>
14963
14964         * dwarf2read.c (delayed_method_info): Remove typedef.
14965         (dwarf2_cu::method_info): Now a std::vector.
14966         (add_to_method_list): Update.
14967         (free_delayed_list): Remove.
14968         (compute_delayed_physnames): Update.
14969         (process_full_comp_unit, process_full_type_unit): Clear the method
14970         list.  Remove cleanups.
14971         (psymtab_include_file_name): Add name_holder parameter.  Use
14972         unique_xmalloc_ptr.
14973         (dwarf_decode_lines): Update.
14974
14975 2018-01-17  Tom Tromey  <tom@tromey.com>
14976             Simon Marchi  <simon.marchi@ericsson.com>
14977
14978         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14979         (dwarf2_per_objfile::free_cached_comp_units)
14980         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14981         (init_cutu_and_read_dies_no_follow): Update.
14982         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14983         (dwarf2_cu::~dwarf2_cu): New.
14984         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14985         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14986
14987 2018-01-17  Tom Tromey  <tom@tromey.com>
14988             Simon Marchi  <simon.marchi@ericsson.com>
14989
14990         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14991         (struct die_reader_specs) <abbrev_table>: New member.
14992         (struct abbrev_table): Add constructor.
14993         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14994         <abbrev_obstack>: Now an auto_obstack.
14995         (abbrev_table_up): New typedef.
14996         (init_cu_die_reader): Add abbrev_table parameter.
14997         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14998         Add result_dwo_abbrev_table.
14999         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15000         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15001         Update.
15002         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15003         parameter.
15004         (skip_children): Update.
15005         (abbrev_table::alloc_abbrev): Rename from
15006         abbrev_table_alloc_abbrev.
15007         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15008         (abbrev_table::lookup_abbrev): Rename from
15009         abbrev_table_lookup_abbrev.
15010         (abbrev_table_read_table): Return abbrev_table_up.
15011         (abbrev_table_free, abbrev_table_free_cleanup)
15012         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15013         (load_partial_dies): Update.
15014
15015 2018-01-17  Tom Tromey  <tom@tromey.com>
15016
15017         * dwarf2read.c (dwarf2_compute_name): Update comment.
15018         (read_func_scope, read_variable): Update.
15019         (new_symbol): Remove.
15020         (new_symbol_full): Rename to new_symbol.
15021
15022 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15023
15024         PR gdb/16577
15025         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15026         a warning instead of throwing an error, set section size to 0 and return
15027         NULL.
15028         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15029
15030 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15031
15032         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15033         std::string.
15034         (linux_ptrace_attach_fail_reason_string): Likewise.
15035         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15036         Likewise.
15037         (linux_ptrace_attach_fail_reason_string): Likewise.
15038         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15039
15040 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15041
15042         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15043
15044 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15045
15046         PR gdb/21559
15047         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15048         checking for fs_base/gs_base fields in struct user_regs_struct.
15049         * configure: Regenerate.
15050
15051 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15052
15053         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15054         function.
15055         (aarch64_linux_init_abi): Install it to gdbarch hook
15056         gcc_target_options.
15057
15058 2018-01-15  Pedro Alves  <palves@redhat.com>
15059
15060         * common/signals-state-save-restore.c
15061         (save_original_signals_state): Fix typos.
15062
15063 2017-01-12  Tom Tromey  <tom@tromey.com>
15064             Sergio Durigan Junior  <sergiodj@redhat.com>
15065
15066         * Makefile.in (install-only): Install gdb-add-index.
15067
15068 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15069
15070         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15071
15072 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15073
15074         * infrun.c (keep_going_pass_signal): Clear step-over info when
15075         insert_breakpoints fails.
15076
15077 2018-01-11  Pedro Alves  <palves@redhat.com>
15078
15079         PR gdb/22583
15080         * infrun.c (resume): Rename to ...
15081         (resume_1): ... this.
15082         (resume): Reimplement as wrapper around resume_1.
15083
15084 2018-01-11  Pedro Alves  <palves@redhat.com>
15085
15086         PR remote/22597
15087         * remote.c (remote_parse_stop_reply): Default to the last-set
15088         general thread instead of to 'magic_null_ptid'.
15089
15090 2018-01-10  Pedro Alves  <palves@redhat.com>
15091
15092         * language.h (language_get_symbol_name_matcher): Rename ...
15093         (get_symbol_name_matcher): ... this.
15094         * language.c (language_get_symbol_name_matcher): Ditto.
15095         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15096         callers adjusted.
15097
15098 2018-01-10  Pedro Alves  <palves@redhat.com>
15099
15100         PR gdb/22670
15101         * dwarf2read.c
15102         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15103         Adjust to use language_get_symbol_name_matcher instead of
15104         language_defn::la_get_symbol_name_matcher.
15105         * language.c (language_get_symbol_name_matcher): If in Ada mode
15106         and the lookup name is a verbatim match, return Ada's matcher.
15107         * language.h (language_get_symbol_name_matcher): Adjust comment.
15108         (ada_lookup_name_info::verbatim_p):: New method.
15109
15110 2018-01-10  Pedro Alves  <palves@redhat.com>
15111
15112         PR gdb/22670
15113         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15114         minsym's language is language_auto or language_cplus, pass down
15115         language_ada instead.
15116         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15117
15118 2018-01-10  Pedro Alves  <palves@redhat.com>
15119
15120         PR gdb/22670
15121         * minsyms.c (linkage_name_str): New function.
15122         (iterate_over_minimal_symbols): Use it.
15123
15124 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15125
15126         * NEWS: Document that 'info proc' now works on FreeBSD.
15127
15128 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15129
15130         * configure.ac: Check for kinfo_getfile in libutil.
15131         * configure: Regenerate.
15132         * config.in: Regenerate.
15133         * fbsd-nat.c: Include "fbsd-tdep.h".
15134         (fbsd_fetch_cmdline): New.
15135         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15136         rather than calling error.
15137         (fbsd_info_proc): New.
15138         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15139         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15140         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15141
15142 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15143
15144         * fbsd-nat.c (struct free_deleter): Remove.
15145         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15146
15147 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15148
15149         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15150         NULL for an empty pathname.
15151
15152 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15153
15154         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15155         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15156         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15157         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15158         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15159         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15160         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15161         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15162         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15163         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15164         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15165         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15166         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15167         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15168         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15169
15170 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15171
15172         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15173         (gnu_xfer_auxv): New function.
15174         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15175         TARGET_OBJECT_AUXV.
15176
15177 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15178             Simon Marchi  <simon.marchi@ericsson.com>
15179
15180         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15181         common/selftest.c.
15182         (COMMON_OBS): Remove selftest.o.
15183         * configure.ac: Append selftest-arch.c and common/selftest.c to
15184         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15185         * configure: Re-generated.
15186         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15187         GDB_SELF_TEST.
15188         (maintenance_info_selftests): Likewise.
15189
15190 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15191
15192         * ada-valprint.c (val_print_packed_array_elements): Use
15193         proper number of elements when printing an array indexed
15194         by an enumeration type.
15195
15196 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15197
15198         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15199         (dw2_get_file_names_reader): Adjust.
15200         (lookup_dwo_signatured_type): Adjust.
15201         (lookup_dwp_signatured_type): Adjust.
15202         (lookup_signatured_type): Adjust.
15203         (create_type_unit_group): Adjust.
15204         (get_type_unit_group): Adjust.
15205         (process_psymtab_comp_unit_reader): Adjust.
15206         (build_type_psymtabs_reader): Adjust.
15207         (scan_partial_symbols): Adjust.
15208         (add_partial_symbol): Adjust.
15209         (add_partial_subprogram): Adjust.
15210         (peek_die_abbrev): Adjust.
15211         (fixup_go_packaging): Adjust.
15212         (process_imported_unit_die): Adjust.
15213         (dwarf2_compute_name): Adjust.
15214         (dwarf2_physname): Adjust.
15215         (read_import_statement): Adjust.
15216         (handle_DW_AT_stmt_list): Adjust.
15217         (read_file_scope): Adjust.
15218         (read_func_scope): Adjust.
15219         (read_lexical_block_scope): Adjust.
15220         (read_call_site_scope): Adjust.
15221         (read_variable): Adjust.
15222         (dwarf2_rnglists_process): Adjust.
15223         (dwarf2_ranges_process): Adjust.
15224         (dwarf2_ranges_read): Adjust.
15225         (dwarf2_get_pc_bounds): Adjust.
15226         (dwarf2_record_block_ranges): Adjust.
15227         (dwarf2_add_field): Adjust.
15228         (dwarf2_add_member_fn): Adjust.
15229         (read_structure_type): Adjust.
15230         (process_structure_scope): Adjust.
15231         (read_enumeration_type): Adjust.
15232         (read_array_type): Adjust.
15233         (mark_common_block_symbol_computed): Adjust.
15234         (read_common_block): Adjust.
15235         (read_namespace_type): Adjust.
15236         (read_namespace): Adjust.
15237         (read_module_type): Adjust.
15238         (read_tag_pointer_type): Adjust.
15239         (read_tag_ptr_to_member_type): Adjust.
15240         (read_tag_string_type): Adjust.
15241         (read_subroutine_type): Adjust.
15242         (read_typedef): Adjust.
15243         (read_base_type): Adjust.
15244         (attr_to_dynamic_prop): Adjust.
15245         (read_subrange_type): Adjust.
15246         (read_unspecified_type): Adjust.
15247         (dwarf2_read_abbrevs): Adjust.
15248         (load_partial_dies): Adjust.
15249         (read_partial_die): Adjust.
15250         (find_partial_die): Adjust.
15251         (guess_partial_die_structure_name): Adjust.
15252         (fixup_partial_die): Adjust.
15253         (read_attribute_value): Adjust.
15254         (read_addr_index): Adjust.
15255         (read_addr_index_from_leb128): Adjust.
15256         (read_str_index): Adjust.
15257         (dwarf2_string_attr): Adjust.
15258         (get_debug_line_section): Adjust.
15259         (dwarf_decode_line_header): Adjust.
15260         (lnp_state_machine::check_line_address): Adjust.
15261         (dwarf_decode_lines_1): Adjust.
15262         (dwarf_decode_lines): Adjust.
15263         (dwarf2_start_symtab): Adjust.
15264         (var_decode_location): Adjust.
15265         (new_symbol_full): Adjust.
15266         (dwarf2_const_value_data): Adjust.
15267         (dwarf2_const_value_attr): Adjust.
15268         (dwarf2_const_value): Adjust.
15269         (die_type): Adjust.
15270         (die_containing_type): Adjust.
15271         (build_error_marker_type): Adjust.
15272         (lookup_die_type): Adjust.
15273         (guess_full_die_structure_name): Adjust.
15274         (anonymous_struct_prefix): Adjust.
15275         (determine_prefix): Adjust.
15276         (dwarf2_name): Adjust.
15277         (follow_die_ref_or_sig): Adjust.
15278         (follow_die_offset): Adjust.
15279         (follow_die_ref): Adjust.
15280         (follow_die_sig_1): Adjust.
15281         (follow_die_sig): Adjust.
15282         (get_signatured_type): Adjust.
15283         (get_DW_AT_signature_type): Adjust.
15284         (decode_locdesc): Adjust.
15285         (dwarf_decode_macros): Adjust.
15286         (cu_debug_loc_section): Adjust.
15287         (fill_in_loclist_baton): Adjust.
15288         (dwarf2_symbol_mark_computed): Adjust.
15289         (init_one_comp_unit): Don't assign
15290         dwarf2_cu::dwarf2_per_objfile.
15291         (set_die_type): Adjust.
15292
15293 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15294
15295         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15296         <dwarf2_per_objfile>: New field.
15297         (dwarf2_per_objfile): Remove global.
15298         (get_dwarf2_per_objfile): New function.
15299         (set_dwarf2_per_objfile): New function.
15300         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15301         dwarf2_per_objfile.
15302         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15303         (read_abbrev_offset): Likewise.
15304         (read_indirect_string): Likewise.
15305         (read_indirect_line_string): Likewise.
15306         (read_indirect_string_at_offset): Likewise.
15307         (read_indirect_string_from_dwz): Likewise.
15308         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15309         dwarf2_per_objfile.
15310         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15311         (create_all_comp_units): Change objfile parameter to
15312         dwarf2_per_objfile.
15313         (create_all_type_units): Likewise.
15314         (process_queue): Add dwarf2_per_objfile parameter.
15315         (read_and_check_comp_unit_head): Likewise.
15316         (lookup_dwo_unit_in_dwp): Likewise.
15317         (get_dwp_file): Likewise.
15318         (process_cu_includes): Likewise.
15319         (struct free_dwo_file_cleanup_data): New struct.
15320         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15321         set_dwarf2_per_objfile.
15322         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15323         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15324         context, adjust calls.
15325         (dw2_instantiate_symtab): Likewise.
15326         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15327         (dw2_get_cu): Likewise.
15328         (create_cu_from_index_list): Change objfile parameter to
15329         dwarf2_per_objfile.
15330         (create_cus_from_index_list): Get dwarf2_per_objfile from
15331         context, adjust calls.
15332         (create_cus_from_index): Likewise.
15333         (create_signatured_type_table_from_index): Change objfile
15334         parameter to dwarf2_per_objfile.
15335         (create_signatured_type_table_from_debug_names): Change objfile
15336         parameter to dwarf2_per_objfile.
15337         (create_addrmap_from_index): Likewise.
15338         (create_addrmap_from_aranges): Likewise.
15339         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15340         (dw2_setup): Remove.
15341         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15342         context.
15343         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15344         get_dwarf2_per_objfile.
15345         (dw2_forget_cached_source_info): Likewise.
15346         (dw2_map_symtabs_matching_filename): Likewise.
15347         (struct dw2_symtab_iterator) <index>: Remove.
15348         <dwarf2_per_objfile>: New field.
15349         (dw2_symtab_iter_init): Replace index parameter with
15350         dwarf2_per_objfile.
15351         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15352         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15353         (dw2_print_stats): Likewise.
15354         (dw2_dump): Likewise.
15355         (dw2_expand_symtabs_for_function): Likewise.
15356         (dw2_expand_all_symtabs): Likewise.
15357         (dw2_expand_symtabs_with_fullname): Likewise.
15358         (dw2_expand_marked_cus): Replace index and objfile parameters
15359         with dwarf2_per_objfile.
15360         (dw_expand_symtabs_matching_file_matcher): Add
15361         dwarf2_per_objfile parameter and adjust calls.
15362         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15363         adjust calls.
15364         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15365         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15366         adjust calls.
15367         (create_cus_from_debug_names_list): Replace objfile parameter
15368         with dwarf2_per_objfile and adjust calls.
15369         (create_cus_from_debug_names): Likewise.
15370         (dwarf2_read_debug_names): Likewise.
15371         (mapped_debug_names::namei_to_name): Adjust call.
15372         (dw2_debug_names_iterator::next): Likewise.
15373         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15374         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15375         (dw2_debug_names_dump): Likewise.
15376         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15377         (dw2_debug_names_expand_symtabs_matching): Likewise.
15378         (dwarf2_initialize_objfile): Likewise.
15379         (dwarf2_build_psymtabs): Likewise.
15380         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15381         this_cu.
15382         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15383         (read_and_check_comp_unit_head): Likewise.
15384         (read_abbrev_offset): Likewise.
15385         (create_debug_type_hash_table): Likewise.
15386         (create_debug_types_hash_table): Likewise.
15387         (create_all_type_units): Replace objfile parameter with
15388         dwarf2_per_objfile.
15389         (add_type_unit): Add dwarf2_per_objfile parameter.
15390         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15391         with dwarf2_per_objfile.
15392         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15393         (lookup_dwp_signatured_type): Likewise.
15394         (lookup_signatured_type): Likewise.
15395         (read_cutu_die_from_dwo): Likewise.
15396         (init_tu_and_read_dwo_dies): Likewise.
15397         (init_cutu_and_read_dies): Likewise.
15398         (init_cutu_and_read_dies_no_follow): Likewise.
15399         (allocate_type_unit_groups_table): Add objfile parameter.
15400         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15401         (get_type_unit_group): Likewise.
15402         (process_psymtab_comp_unit): Update call.
15403         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15404         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15405         (print_tu_stats): Likewise.
15406         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15407         in void* parameter.
15408         (build_type_psymtabs): Change objfile parameter to
15409         dwarf2_per_objfile.
15410         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15411         passed in void* parameter.
15412         (process_skeletonless_type_units): Change objfile parameter to
15413         dwarf2_per_objfile.
15414         (set_partial_user): Likewise.
15415         (dwarf2_build_psymtabs_hard): Likewise.
15416         (read_comp_units_from_section): Likewise.
15417         (create_all_comp_units): Likewise.
15418         (scan_partial_symbols): Update calls.
15419         (add_partial_symbol): Likewise.
15420         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15421         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15422         (process_queue): Add dwarf2_per_objfile parameter.
15423         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15424         (compute_compunit_symtab_includes): Likewise.
15425         (process_cu_includes): Add dwarf2_per_objfile parameter.
15426         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15427         (process_full_type_unit): Likewise.
15428         (process_imported_unit_die): Update call.
15429         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15430         (read_file_scope): Likewise.
15431         (allocate_dwo_file_hash_table): Add objfile parameter.
15432         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15433         (create_cus_hash_table): Likewise.
15434         (create_dwp_hash_table): Likewise.
15435         (create_dwo_unit_in_dwp_v1): Likewise.
15436         (create_dwp_v2_section): Likewise.
15437         (create_dwo_unit_in_dwp_v2): Likewise.
15438         (lookup_dwo_unit_in_dwp): Likewise.
15439         (try_open_dwop_file): Likewise.
15440         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15441         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15442         cleanup to include a reference to dwarf2_per_objfile.
15443         (open_dwp_file): Add dwarf2_per_objfile parameter.
15444         (open_and_init_dwp_file): Likewise.
15445         (get_dwp_file): Likewise.
15446         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15447         (queue_and_load_all_dwo_tus): Update call.
15448         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15449         data.
15450         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15451         (dwarf2_ranges_process): Likewise.
15452         (dwarf2_get_pc_bounds): Likewise.
15453         (mark_common_block_symbol_computed): Likewise.
15454         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15455         (dwarf2_read_abbrevs): Update call.
15456         (read_partial_die): Use dwarf2_per_objfile from cu.
15457         (find_partial_die): Likewise.
15458         (fixup_partial_die): Likewise.
15459         (read_attribute_value): Likewise.
15460         (read_indirect_string_at_offset_from): Add objfile parameter.
15461         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15462         parameter.
15463         (read_indirect_string_from_dwz): Add objfile parameter.
15464         (read_indirect_string): Add objfile parameter.
15465         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15466         (read_addr_index): Use dwarf2_per_objfile from cu.
15467         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15468         call dw2_setup.
15469         (read_str_index): Use dwarf2_per_objfile from cu.
15470         (get_debug_line_section): Likewise.
15471         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15472         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15473         (new_symbol_full): Use dwarf2_per_objfile from cu.
15474         (build_error_marker_type): Likewise.
15475         (lookup_die_type): Likewise.
15476         (determine_prefix): Likewise.
15477         (follow_die_offset): Likewise.
15478         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15479         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15480         (dwarf2_fetch_die_type_sect_off): Likewise.
15481         (dwarf2_get_die_type): Likewise.
15482         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15483         (get_signatured_type): Likewise.
15484         (get_DW_AT_signature_type): Likewise.
15485         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15486         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15487         (cu_debug_loc_section): Likewise.
15488         (fill_in_loclist_baton): Likewise.
15489         (dwarf2_symbol_mark_computed): Likewise.
15490         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15491         dwarf2_per_objfile.
15492         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15493         parameter.
15494         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15495         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15496         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15497         (set_die_type): Use dwarf2_free_objfile from cu.
15498         (get_die_type_at_offset): Likewise.
15499         (dwarf2_per_objfile_free): Don't assign global variable.
15500         (debug_names) <constructor>: Add dwarf2_per_objfile
15501         parameter, update m_debugstrlookup construction.
15502         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15503         parameter.
15504         <m_dwarf2_per_objfile>: New field.
15505         <lookup>: Use m_dwarf2_per_objfile.
15506         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15507         (psyms_seen_size): Likewise.
15508         (write_gdbindex): Replace objfile parameter with
15509         dwarf2_per_objfile.
15510         (write_debug_names): Likewise.
15511         (write_psymtabs_to_index): Likewise.
15512         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15513         calls.
15514
15515 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15516
15517         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15518         <dwarf2_per_objfile>: New field.
15519         (struct dwarf2_per_cu_data) <objfile>: Remove.
15520         <dwarf2_per_objfile>: New field.
15521         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15522         of objfile.
15523         (create_signatured_type_table_from_index): Likewise.
15524         (create_debug_type_hash_table): Likewise.
15525         (fill_in_sig_entry_from_dwo_entry): Likewise.
15526         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15527         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15528         objfile.
15529         (create_partial_symtab): Access objfile through
15530         dwarf2_per_objfile.
15531         (process_psymtab_comp_unit_reader): Likewise.
15532         (read_comp_units_from_section): Likewise.
15533         (scan_partial_symbols): Likewise.
15534         (add_partial_symbol): Likewise.
15535         (add_partial_subprogram): Likewise.
15536         (peek_die_abbrev): Likewise.
15537         (fixup_go_packaging): Likewise.
15538         (process_full_comp_unit): Likewise.
15539         (process_full_type_unit): Likewise.
15540         (process_imported_unit_die): Likewise.
15541         (dwarf2_compute_name): Likewise.
15542         (dwarf2_physname): Likewise.
15543         (read_import_statement): Likewise.
15544         (create_cus_hash_table): Assign dwarf2_physname instead of
15545         objfile.
15546         (read_func_scope): Access objfile through dwarf2_per_objfile.
15547         (read_lexical_block_scope): Likewise.
15548         (read_call_site_scope): Likewise.
15549         (read_variable): Likewise.
15550         (dwarf2_rnglists_process): Likewise.
15551         (dwarf2_ranges_process): Likewise.
15552         (dwarf2_ranges_read): Likewise.
15553         (dwarf2_record_block_ranges): Likewise.
15554         (dwarf2_add_field): Likewise.
15555         (dwarf2_add_member_fn): Likewise.
15556         (read_structure_type): Likewise.
15557         (process_structure_scope): Likewise.
15558         (read_enumeration_type): Likewise.
15559         (read_array_type): Likewise.
15560         (read_common_block): Likewise.
15561         (read_namespace_type): Likewise.
15562         (read_namespace): Likewise.
15563         (read_module_type): Likewise.
15564         (read_tag_pointer_type): Likewise.
15565         (read_tag_ptr_to_member_type): Likewise.
15566         (read_tag_string_type): Likewise.
15567         (read_subroutine_type): Likewise.
15568         (read_typedef): Likewise.
15569         (read_base_type): Likewise.
15570         (attr_to_dynamic_prop): Likewise.
15571         (read_subrange_type): Likewise.
15572         (read_unspecified_type): Likewise.
15573         (load_partial_dies): Likewise.
15574         (read_partial_die): Likewise.
15575         (find_partial_die): Likewise.
15576         (guess_partial_die_structure_name): Likewise.
15577         (fixup_partial_die): Likewise.
15578         (read_attribute_value): Likewise.
15579         (read_addr_index_from_leb128): Likewise.
15580         (dwarf2_read_addr_index): Likewise.
15581         (dwarf2_string_attr): Likewise.
15582         (lnp_state_machine::check_line_address): Likewise.
15583         (dwarf_decode_lines_1): Likewise.
15584         (dwarf_decode_lines): Likewise.
15585         (dwarf2_start_symtab): Likewise.
15586         (var_decode_location): Likewise.
15587         (new_symbol_full): Likewise.
15588         (dwarf2_const_value_data): Likewise.
15589         (dwarf2_const_value_attr): Likewise.
15590         (dwarf2_const_value): Likewise.
15591         (die_type): Likewise.
15592         (die_containing_type): Likewise.
15593         (lookup_die_type): Likewise.
15594         (guess_full_die_structure_name): Likewise.
15595         (anonymous_struct_prefix): Likewise.
15596         (dwarf2_name): Likewise.
15597         (follow_die_ref_or_sig): Likewise.
15598         (follow_die_offset): Likewise.
15599         (follow_die_ref): Likewise.
15600         (dwarf2_fetch_die_loc_sect_off): Likewise.
15601         (dwarf2_fetch_constant_bytes): Likewise.
15602         (dwarf2_fetch_die_type_sect_off): Likewise.
15603         (dwarf2_get_die_type): Likewise.
15604         (follow_die_sig): Likewise.
15605         (decode_locdesc): Likewise.
15606         (dwarf2_per_cu_objfile): Likewise.
15607         (dwarf2_per_cu_text_offset): Likewise.
15608         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15609         objfile.
15610         (set_die_type): Access objfile through
15611         dwarf2_per_objfile.
15612
15613 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15614
15615         * valprint.c (converted_character_d): Remove typedef.
15616         (DEF_VEC_O (converted_character_d)): Remove.
15617         (count_next_character): Use std::vector.
15618         (print_converted_chars_to_obstack): Likewise.
15619         (generic_printstr): Likewise.
15620
15621 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15622
15623         * xml-support.h (struct gdb_xml_value): Add constructor.
15624         <value>: Change type to unique_xmalloc_ptr.
15625         (gdb_xml_value_s): Remove typedef.
15626         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15627         (gdb_xml_element_start_handler): Change parameter type to
15628         std::vector.
15629         (xml_find_attribute): Likewise.
15630         * xml-support.c (xml_find_attribute): Change parameter type to
15631         std::vector and adjust.
15632         (gdb_xml_values_cleanup): Remove.
15633         (gdb_xml_parser::start_element): Adjust to std::vector.
15634         (xinclude_start_include): Change paraeter type to std::vector
15635         and adjust.
15636         * btrace.c (check_xml_btrace_version): Likewise.
15637         (parse_xml_btrace_block): Likewise.
15638         (parse_xml_btrace_pt_config_cpu): Likewise.
15639         (parse_xml_btrace_pt): Likewise.
15640         (parse_xml_btrace_conf_bts): Likewise.
15641         (parse_xml_btrace_conf_pt): Likewise.
15642         * memory-map.c (memory_map_start_memory): Likewise.
15643         (memory_map_start_property): Likewise.
15644         * osdata.c (osdata_start_osdata): Likewise.
15645         (osdata_start_item): Likewise.
15646         (osdata_start_column): Likewise.
15647         * remote.c (start_thread): Likewise.
15648         * solib-aix.c (library_list_start_library): Likewise.
15649         (library_list_start_list): Likewise.
15650         * solib-svr4.c (library_list_start_library): Likewise.
15651         (svr4_library_list_start_list): Likewise.
15652         * solib-target.c (library_list_start_segment): Likewise.
15653         (library_list_start_section): Likewise.
15654         (library_list_start_library): Likewise.
15655         (library_list_start_list): Likewise.
15656         * tracepoint.c (traceframe_info_start_memory): Likewise.
15657         (traceframe_info_start_tvar): Likewise.
15658         * xml-syscall.c (syscall_start_syscall): Likewise.
15659         * xml-tdesc.c (tdesc_start_target): Likewise.
15660         (tdesc_start_feature): Likewise.
15661         (tdesc_start_reg): Likewise.
15662         (tdesc_start_union): Likewise.
15663         (tdesc_start_struct): Likewise.
15664         (tdesc_start_flags): Likewise.
15665         (tdesc_start_enum): Likewise.
15666         (tdesc_start_field): Likewise.
15667         (tdesc_start_enum_value): Likewise.
15668         (tdesc_start_vector): Likewise.
15669
15670 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15671
15672         * extension.h (struct xmethod_worker) <clone>: Remove.
15673         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15674         Remove.
15675         (python_xmethod_worker::clone): Remove.
15676         * valops.c (find_overload_match): Use std::move instead of
15677         clone.
15678
15679 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15680
15681         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15682         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15683         <free_xmethod_worker_data>: Remove.
15684         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15685         <get_xmethod_arg_types>: Remove.
15686         <get_xmethod_result_type>: Remove.
15687         <invoke_xmethod>: Remove.
15688         * extension.c (new_xmethod_worker): Remove.
15689         (clone_xmethod_worker): Remove.
15690         (get_matching_xmethod_workers): Return void, pass std::vector by
15691         pointer.
15692         (get_xmethod_arg_types): Rename to...
15693         (xmethod_worker::get_arg_types): ... this, and adjust.
15694         (get_xmethod_result_type): Rename to...
15695         (xmethod_worker::get_result_type): ... this, and adjust.
15696         (invoke_xmethod): Remove.
15697         (free_xmethod_worker): Remove.
15698         (free_xmethod_worker_vec): Remove.
15699         * extension.h (enum ext_lang_rc): Move here from
15700         extension-priv.h.
15701         (struct xmethod_worker): Add constructor and destructor.
15702         <data>: Remove.
15703         <value>: Remove.
15704         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15705         virtual pure methods.
15706         <get_arg_types, get_result_type>: New methods.
15707         (xmethod_worker_ptr): Remove typedef.
15708         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15709         (xmethod_worker_vec): Remove typedef.
15710         (xmethod_worker_up): New typedef.
15711         (invoke_xmethod): Remove.
15712         (clone_xmethod_worker): Remove.
15713         (free_xmethod_worker): Remove.
15714         (free_xmethod_worker_vec): Remove.
15715         (get_xmethod_arg_types): Remove.
15716         (get_xmethod_result_type): Remove.
15717         * valops.c (find_method_list): Use std::vector, don't use
15718         intermediate vector.
15719         (value_find_oload_method_list): Use std::vector.
15720         (find_overload_match): Use std::vector.
15721         (find_oload_champ): Use std::vector.
15722         * value.c (value_free): Use operator delete.
15723         (value_of_xmethod): Rename to...
15724         (value_from_xmethod): ... this.  Don't assign
15725         xmethod_worker::value, take rvalue-reference.
15726         (result_type_of_xmethod): Adjust.
15727         (call_xmethod): Adjust.
15728         * value.h: Include extension.h.
15729         (struct xmethod_worker): Don't forward-declare.
15730         (value_of_xmethod): Rename to...
15731         (value_from_xmethod): ... this, take rvalue-reference.
15732         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15733         (struct python_xmethod_worker): ... this, add constructor and
15734         destructor.
15735         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15736         (gdbpy_free_xmethod_worker_data): Rename to...
15737         (python_xmethod_worker::~python_xmethod_worker): ... this and
15738         adjust.
15739         (gdbpy_clone_xmethod_worker_data): Rename to...
15740         (python_xmethod_worker::clone): ... this and adjust.
15741         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15742         temporary vector.
15743         (gdbpy_get_xmethod_arg_types): Rename to...
15744         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15745         (gdbpy_get_xmethod_result_type): Rename to...
15746         (python_xmethod_worker::do_get_result_type): ... this and
15747         adjust.
15748         (gdbpy_invoke_xmethod): Rename to...
15749         (python_xmethod_worker::invoke): ... this and adjust.
15750         (new_python_xmethod_worker): Rename to...
15751         (python_xmethod_worker::python_xmethod_worker): ... this and
15752         adjust.
15753         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15754         Remove.
15755         (gdbpy_free_xmethod_worker_data): Remove.
15756         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15757         (gdbpy_get_xmethod_arg_types): Remove.
15758         (gdbpy_get_xmethod_result_type): Remove.
15759         (gdbpy_invoke_xmethod): Remove.
15760         * python/python.c (python_extension_ops): Remove obsolete
15761         callbacks.
15762
15763 2018-01-05  Pedro Alves  <palves@redhat.com>
15764
15765         PR gdb/18653
15766         * common/signals-state-save-restore.c
15767         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15768         find a custom handler preinstalled, instead of internal erroring.
15769         But only warn if !quiet.
15770         * common/signals-state-save-restore.h
15771         (save_original_signals_state): New parameter 'quiet'.
15772         * main.c (captured_main_1): Move save_original_signals_state call
15773         after option handling, and pass QUIET.
15774
15775 2018-01-05  Pedro Alves  <palves@redhat.com>
15776
15777         * spu-tdep.c (spu_catch_start): Pass
15778         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15779
15780 2018-01-05  Pedro Alves  <palves@redhat.com>
15781
15782         PR gdb/22670
15783         * ada-lang.c (literal_symbol_name_matcher): New function.
15784         (ada_get_symbol_name_matcher): Use it for
15785         symbol_name_match_type::SEARCH_NAME.
15786         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15787         it down instead of assuming symbol_name_match_type::FULL.
15788         * block.h (block_lookup_symbol): New parameter 'match_type'.
15789         * c-valprint.c (print_unpacked_pointer): Use
15790         lookup_symbol_search_name instead of lookup_symbol.
15791         * compile/compile-object-load.c (get_out_value_type): Pass down
15792         symbol_name_match_type::SEARCH_NAME.
15793         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15794         symbol_name_match_type::FULL.
15795         * cp-support.c (cp_get_symbol_name_matcher): Handle
15796         symbol_name_match_type::SEARCH_NAME.
15797         * infrun.c (insert_exception_resume_breakpoint): Use
15798         lookup_symbol_search_name.
15799         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15800         * psymtab.c (maintenance_check_psymtabs): Use
15801         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15802         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15803         SYMBOL_SEARCH_NAME.
15804         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15805         if symbol_name_match_type::SEARCH_NAME.
15806         (lookup_symbol_in_language): Pass down
15807         symbol_name_match_type::FULL.
15808         (lookup_symbol_search_name): New.
15809         (lookup_language_this): Pass down
15810         symbol_name_match_type::SEARCH_NAME.
15811         (lookup_symbol_aux, lookup_local_symbol): New parameter
15812         'match_type'.  Pass it down.
15813         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15814         (lookup_symbol_search_name): New declaration.
15815         (lookup_symbol_in_block): New 'match_type' parameter.
15816
15817 2018-01-05  Pedro Alves  <palves@redhat.com>
15818
15819         PR gdb/22670
15820         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15821         ada_lookup_symbol.
15822         (ada_lookup_symbol): Reimplement in terms of
15823         ada_lookup_symbol_list, bits factored out from
15824         ada_lookup_encoded_symbol.
15825
15826 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15827
15828         * ada-exp.y (write_object_renaming): When subscripting an array
15829         using a symbol as the index, pass the block in call to
15830         ada_lookup_encoded_symbol when looking that symbol up.
15831
15832 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15833
15834         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15835         TYPE_INDEX_TYPE.
15836
15837 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15838
15839         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15840         the case where VALUE_LVAL (val0) is not lval_memory.
15841
15842 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15843
15844         * ada-valprint.c (print_optional_low_bound): Handle
15845         character-indexed array printing like boolean-indexed array
15846         printing.
15847
15848 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15849
15850         * NEWS: Create a new section for the next release branch.
15851         Rename the section of the current branch, now that it has
15852         been cut.
15853
15854 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15855
15856         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15857         * version.in: Bump version to 8.1.50.DATE-git.
15858
15859 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15860
15861         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15862         Add field.
15863         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15864         Add field.
15865         (default_exception_support_info) <catch_handlers_sym>: Add field.
15866         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15867         (ada_exception_name_addr_1): Add "catch handlers" handling.
15868         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15869         Update all callers.
15870         (create_excep_cond_exprs) <ex>: Add parameter.
15871         (re_set_exception): Update create_excep_cond_exprs call.
15872         (print_it_exception, print_one_exception, print_mention_exception)
15873         (print_recreate_exception): Add "catch handler" handling.
15874         (allocate_location_catch_handlers, re_set_catch_handlers)
15875         (check_status_catch_handlers, print_it_catch_handlers)
15876         (print_one_catch_handlers, print_mention_catch_handlers)
15877         (print_recreate_catch_handlers): New function.
15878         (catch_handlers_breakpoint_ops): New variable.
15879         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15880         Add parameter.  Add "catch handler" handling.
15881         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15882         Add "catch handler" handling.
15883         (ada_exception_catchpoint_cond_string): Add "catch handler"
15884         handling.
15885         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15886         call.
15887         (catch_ada_handlers_command): New function.
15888         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15889         operations structure.
15890         (_initialize_ada_language): Add "catch handlers" command entry.
15891         * NEWS: Document "catch handlers" feature.
15892
15893 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15894
15895         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15896         account when creating the array type of the slice.
15897         (ada_value_slice): Likewise.
15898
15899 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15900
15901         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15902         New enum value.
15903         (create_array_type_with_stride): Add byte_stride_prop parameter.
15904         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15905         New parameter.  Update all callers in this file.
15906         (array_type_has_dynamic_stride): New function.
15907         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15908         of arrays with dynamic byte strides.
15909         * dwarf2read.c (read_array_type): Add support for dynamic
15910         DW_AT_byte_stride attributes.
15911
15912 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15913
15914         * dwarf2read.c (read_unspecified_type): Treat
15915         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15916
15917 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15918
15919         Update copyright year range in all GDB files.
15920
15921 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15922
15923         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15924         and gdb/testsuite/gdb.base/step-line.c.
15925
15926 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15927
15928         * copyright.py (main): Dump the contents of
15929         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15930         even if BY_HAND is empty.
15931
15932 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15933
15934         * top.c (print_gdb_version): Update Copyright year in version
15935         message.
15936
15937 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15938
15939         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15940
15941 For older changes see ChangeLog-2017.
15942 \f
15943 Local Variables:
15944 mode: change-log
15945 left-margin: 8
15946 fill-column: 74
15947 version-control: never
15948 coding: utf-8
15949 End: