ff9eed7dee4de1bd75e6878885e5c8d04c6639d0
[external/binutils.git] / gdb / ChangeLog
1 2018-11-21  Pedro Alves  <palves@redhat.com>
2
3         * valops.c (find_method_list): Replace pointer and length
4         parameters with an gdb::array_view.  Adjust.
5         (value_find_oload_method_list): Likewise.
6         (find_overload_match): Use gdb::array_view for methods list.
7         Adjust to find_oload_champ interface change.
8         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
9         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
10
11 2018-11-21  Pedro Alves  <palves@redhat.com>
12
13         * gdbtypes.c (compare_badness): Change type of parameters to const
14         reference.  Adjust to badness_vector being a std::vector now.
15         (rank_function): Adjust to badness_vector being a std::vector now.
16         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
17         (LENGTH_MATCH): Delete.
18         (compare_badness): Change type of parameters to const reference.
19         (rank_function): Return a badness_vector by value now.
20         (find_overload_match): Adjust to badness_vector being a
21         std::vector now.  Remove cleanups.
22         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
23         badness_vector pointer.
24         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
25         a badness_vector pointer.  Adjust to badness_vector being a
26         std::vector now.  Remove cleanups.
27         (find_oload_champ): 'oload_champ_bv' parameter now
28         a badness_vector pointer.  Adjust to badness_vector being a
29         std::vector now.  Remove cleanups.
30
31 2018-11-21  Pedro Alves  <palves@redhat.com>
32
33         * cp-support.c (sym_return_val_size, sym_return_val_index)
34         (sym_return_val): Delete.
35         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
36         add to the vector.
37         (make_symbol_overload_list): Adjust to return a std::vector
38         instead of maintaining a global open coded vector.
39         (make_symbol_overload_list_block): Add std::vector parameter.
40         (make_symbol_overload_list_block): Rename to ...
41         (add_symbol_overload_list_block): ... this and add std::vector
42         parameter.
43         (make_symbol_overload_list_namespace): Rename to ...
44         (add_symbol_overload_list_namespace): ... this and add std::vector
45         parameter.
46         (make_symbol_overload_list_adl_namespace): Rename to ...
47         (add_symbol_overload_list_adl_namespace): ... this and add
48         std::vector parameter.
49         (make_symbol_overload_list_adl): Delete.
50         (add_symbol_overload_list_adl): New.
51         (make_symbol_overload_list_using): Rename to ...
52         (add_symbol_overload_list_using): ... this and add std::vector
53         parameter.
54         (make_symbol_overload_list_qualified): Rename to ...
55         (add_symbol_overload_list_qualified): ... this and add std::vector
56         parameter.
57         * cp-support.h: Include "common/array-view.h" and <vector>.
58         (make_symbol_overload_list): Change return type to std::vector.
59         (make_symbol_overload_list_adl): Delete declaration.
60         (add_symbol_overload_list_adl): New declaration.
61         * valops.c (find_overload_match): Local 'oload_syms' now a
62         std::vector.
63         (find_oload_champ_namespace): 'oload_syms' parameter now a
64         std::vector pointer.
65         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
66         std::vector pointer.  Adjust to new make_symbol_overload_list
67         interface.
68
69 2018-11-21  Pedro Alves  <palves@redhat.com>
70
71         * common/array-view.h (array_view::splice(size_type, size_t)): New.
72         (array_view::splice(size_type)): New.
73         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
74         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
75         std::vector.
76         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
77         * extension.h: Include "common/array-view.h".
78         (xmethod_worker::invoke): Adjust to use gdb::array_view.
79         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
80         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
81         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
82         (xmethod_worker::do_get_result_type): Adjust to use
83         gdb::array_view.
84         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
85         * gdbtypes.h: Include "common/array-view.h".
86         (rank_function): Adjust to use gdb::array_view.
87         * python/py-xmethods.c (python_xmethod_worker::invoke)
88         (python_xmethod_worker::do_get_arg_types)
89         (python_xmethod_worker::do_get_result_type)
90         (python_xmethod_worker::invoke): Adjust to new interfaces.
91         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
92         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
93         * valops.c (find_overload_match, find_oload_champ_namespace)
94         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
95         gdb:array_view and the new xmethod_worker interfaces.
96         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
97         gdb::array_view.
98         * value.h (find_overload_match, result_type_of_xmethod)
99         (call_xmethod): Adjust to use gdb::array_view.
100         * unittests/array-view-selftests.c: Add slicing tests.
101
102 2018-11-21  Pedro Alves  <palves@redhat.com>
103
104         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
105         * common/array-view.h (make_array_view): New.
106         * compile/compile-object-run.c (compile_object_run): Adjust to
107         pass an array_view.
108         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
109         * eval.c (eval_call): Adjust to pass an array_view.
110         (evaluate_subexp_standard): Adjust to pass an array_view.
111         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
112         * guile/scm-value.c (gdbscm_value_call): Likewise.
113         * infcall.c (push_dummy_code): Replace pointer + size parameters
114         with an array_view parameter.
115         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
116         adjust.
117         * infcall.h: Include "common/array-view.h".
118         (call_function_by_hand, call_function_by_hand_dummy): Replace
119         pointer + size parameters with an array_view parameter.
120         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
121         * linux-tdep.c (linux_infcall_mmap): Likewise.
122         * objc-lang.c (lookup_objc_class, lookup_child_selector)
123         (value_nsstring, print_object_command): Likewise.
124         * python/py-value.c (valpy_call): Likewise.
125         * rust-lang.c (rust_evaluate_funcall): Likewise.
126         * spu-tdep.c (flush_ea_cache): Likewise.
127         * valarith.c (value_x_binop, value_x_unop): Likewise.
128         * valops.c (value_allocate_space_in_inferior): Likewise.
129         * unittests/array-view-selftests.c (run_tests): Add
130         gdb::make_array_view test.
131
132 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
133
134         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
135         than a fixed size buffer.
136
137 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
138
139         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
140         and remove insertion of extra spaces in GDB's output.
141         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
142         Layout field into a temporary buffer, and then output it as a
143         string field.
144
145 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
146
147         * NEWS: Document the language choice done by
148         'info [types|functions|variables]|rbreak'.
149
150 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
151
152         * symtab.c (treg_matches_sym_type_name): Use
153         scoped_switch_to_sym_language_if_auto instead of local logic.
154         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
155         to switch to SYM language when language mode is auto.
156
157 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
158
159         * language.h (scoped_switch_to_sym_language_if_auto): New class.
160
161 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
162
163         * symtab.c (search_symbols): Properly check absence of type regexp
164         before entering the loop scanning the minimal symbols.
165
166 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
167
168         * s12z-tdep.c (s12z_extract_return_value): New function.
169         (inv_reg_perm) New array.
170         (s12z_return_value): Populate readbuf if non-null.
171
172 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
173
174         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
175         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
176         to MinGW fixed by Gnulib.
177         (O_NOINHERIT): Define if not defined.
178
179 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
180
181         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
182
183 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
184
185         * infrun.c (displaced_step_inferior_state) <next>: Remove.
186
187 2018-11-19  Tom Tromey  <tom@tromey.com>
188
189         * source.c (get_filename_and_charpos): Return void.
190
191 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
192
193         * skip.c (_initialize_step_skip): Fix "info skip" help.
194
195 2018-11-16  Tom Tromey  <tom@tromey.com>
196
197         PR rust/23625:
198         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
199
200 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
201
202         * infrun.c (displaced_step_inferior_states): Change type to
203         std::forward_list.
204         (get_displaced_stepping_state): Adjust.
205         (displaced_step_in_progress_any_inferior): Adjust.
206         (add_displaced_stepping_state): Adjust.
207         (remove_displaced_stepping_state): Adjust.
208
209 2018-11-18  Tom Tromey  <tom@tromey.com>
210
211         PR build/23814:
212         * target-delegates.c: Rebuild.
213         * ia64-linux-nat.c (class ia64_linux_nat_target)
214         <have_steppable_watchpoint>: Use override.  Return true, not 1.
215         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
216         "self" argument.
217         (ia64_linux_nat_target::low_new_thread): Rename.
218         (class ia64_linux_nat_target) <read_description>: Don't declare.
219         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
220         bool.
221
222 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
223
224         PR gdb/22736:
225         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
226         lang_struct_return code.
227
228 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
229
230         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
231         return_method.
232         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
233         * amd64-tdep.c (amd64_push_arguments): Likewise.
234         (amd64_push_dummy_call): Likewise.
235         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
236         * arc-tdep.c (arc_push_dummy_call): Likewise.
237         * arm-tdep.c (arm_push_dummy_call): Likewise.
238         * avr-tdep.c (avr_push_dummy_call): Likewise.
239         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
240         * cris-tdep.c (cris_push_dummy_call): Likewise.
241         * csky-tdep.c (csky_push_dummy_call): Likewise.
242         * frv-tdep.c (frv_push_dummy_call): Likewise.
243         * gdbarch.c: Regenerate.
244         * gdbarch.h: Regenerate.
245         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
246         return_method.
247         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
248         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
249         (hppa64_push_dummy_call): Likewise.
250         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
251         * i386-tdep.c (i386_push_dummy_call): Likewise.
252         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
253         * infcall.c (call_function_by_hand_dummy): Likewise.
254         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
255         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
256         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
257         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
258         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
259         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
260         * mep-tdep.c (mep_push_dummy_call): Likewise.
261         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
262         (mips_n32n64_push_dummy_call): Likewise.
263         (mips_o32_push_dummy_call): Likewise.
264         (mips_o64_push_dummy_call): Likewise.
265         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
266         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
267         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
268         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
269         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
270         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
271         (ppc64_sysv_abi_push_dummy_call): Likewise.
272         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
273         (ppc64_sysv_abi_push_dummy_call): Likewise.
274         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
275         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
276         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
277         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
278         * rx-tdep.c (rx_push_dummy_call): Likewise.
279         * s390-tdep.c (s390_push_dummy_call): Likewise.
280         * score-tdep.c (score_push_dummy_call): Likewise.
281         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
282         (sh_push_dummy_call_nofpu): Likewise.
283         * sparc-tdep.c (sparc32_store_arguments): Likewise.
284         (sparc32_push_dummy_call): Likewise.
285         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
286         (sparc64_push_dummy_call): Likewise.
287         * spu-tdep.c (spu_push_dummy_call): Likewise.
288         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
289         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
290         * v850-tdep.c (v850_push_dummy_call): Likewise.
291         * vax-tdep.c (vax_push_dummy_call): Likewise.
292         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
293         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
294
295 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
296
297         * gdbarch.sh (enum function_call_return_method): Add enum.
298         * gdbarch.h: Regenerate.
299         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
300
301 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
302
303         * unittests/copy_bitwise-selftests.c: New file.
304         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
305         (selftests::copy_bitwise_tests): Delete, moving this code to
306         unittests/copy_bitwise-selftests.c instead.
307         (_initialize_utils): Do not register copy_bitwise tests.
308         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
309         unittests/copy_bitwise-selftests.c.
310
311 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
312
313         * ada-lang.c (move_bits): Delete. Update all callers to use
314         copy_bitwise instead.
315         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
316         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
317         Move from here to utils.c.
318         (_initialize_dwarf2loc): Remove call to register copy_bitwise
319         selftests.
320         * utils.h (copy_bitwise): Add declaration.
321         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
322         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
323         Moved here from dwarf2loc.c.
324         (_initialize_utils): Register copy_bitwise selftests.
325
326 2018-11-14  Jim Wilson  <jimw@sifive.com>
327
328         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
329         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
330         then increment next_regnum if odd.
331         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
332         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
333         function type.  Pass new arg to riscv_arg_location based on function
334         type.
335         (riscv_return_value): Pass new arg to riscv_arg_location.
336
337         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
338         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
339         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
340
341         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
342         setting len.  New local align, set to max of arg align and xlen,
343         and pass to first riscv_assign_stack_location call.
344
345 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
346
347         * skip.c (complete_skip_number): New function.
348         (_initialize_step_skip): Add completers to some skip commands.
349
350 2018-11-09  Tom Tromey  <tom@tromey.com>
351
352         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
353         (struct remote_g_packet_data): Derive from allocate_on_obstack.
354         <guesses>: Now a std::vector.
355         (remote_g_packet_data_init, register_remote_g_packet_guess):
356         Update.
357         (remote_read_description_p): Update.  Return bool.
358         (remote_target::read_description): Update.
359         (struct remote_g_packet_guess): Add constructor.
360
361 2018-11-09  Tom Tromey  <tom@tromey.com>
362
363         * common/scoped_fd.h (class scoped_fd): Add move constructor and
364         move assignment operator.
365         * psymtab.c (psymtab_to_fullname): Update.
366         * source.h (open_source_file): Return scoped_fd.
367         (find_and_open_source): Likewise.
368         * source.c (open_source_file): Return scoped_fd.
369         (get_filename_and_charpos): Update.
370         (print_source_lines_base): Update.  Use scoped_fd::to_file.
371         (forward_search_command): Likewise.
372         (reverse_search_command): Likewise.
373         (find_and_open_source): Return scoped_fd.
374         * tui/tui-source.c (tui_set_source_content): Update.  Use
375         gdb_file_up.
376
377 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
378
379         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
380         overflow.
381
382 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
383
384         * configure: Regenerate.
385
386 2018-11-09  Tom de Vries  <tdevries@suse.de>
387
388         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
389         unconditionally, to set the language of the symbol.  Manage freeing
390         returned pointer using gdb::unique_xmalloc_ptr.
391
392 2018-11-08  Tom Tromey  <tom@tromey.com>
393
394         * record.c (require_record_target): Upper-case "<TAB>".
395
396 2018-11-08  Tom Tromey  <tom@tromey.com>
397
398         * python/lib/gdb/command/pretty_printers.py
399         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
400
401 2018-11-08  Tom Tromey  <tom@tromey.com>
402
403         PR gdb/23555:
404         PR gdb/23838:
405         * target.h (target_supports_terminal_ours): Return bool.
406         * target.c (target_supports_terminal_ours): Handle case where
407         current_top_target returns nullptr.  Return bool.
408
409 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
410
411         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
412         return the correct count for potential HFAs.
413
414 2018-11-08  Jan Beulich  <jbeulich@suse.com>
415
416         * i387-tdep.c (i387_supply_xsave): Split handling of
417         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
418         (i387_collect_xsave): Likewise.
419
420 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
421
422         * riscv-tdep.c (riscv_insn::decode): Update header comment.
423         (riscv_frame_this_id): Catch errors thrown while building the
424         frame cache, leave the frame id as the default, which is the outer
425         frame id.
426
427 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
428
429         * ada-lang.c (read_atcb): Only set task_info->called_task if
430         task_info->state == Entry_Caller_Sleep.
431         (print_ada_task_info): Do not check task_info->state before
432         checking task_info->called_task.
433         (info_task): Likewise.
434
435 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
436
437         * ada-tasks.c (read_atcb): Clear task_info before computing
438         the value of each of its fields.
439
440 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
441
442         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
443         NULL before dereferencing it.
444
445 2018-11-06  Tom de Vries  <tdevries@suse.de>
446
447         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
448         program headers.
449
450 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
451
452         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
453         so that it applies to uclinux as well.
454
455 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
456
457         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
458         when on AAPCS.
459
460 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
461
462         * riscv-fbsd-nat.c (getregs_supplies): Return true for
463         RISCV_CSR_SSTATUS_REGNUM.
464
465 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
466
467         * source.c (open_source_file): Fix leak by transferring the
468         current s->fullname to the unique_xmalloc_ptr fullname given
469         to find_and_open_source.
470
471 2018-11-04  Tom Tromey  <tom@tromey.com>
472
473         * varobj.c (install_default_visualizer): Update.
474         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
475         Return gdbpy_ref.
476         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
477         (find_pretty_printer_from_progspace)
478         (find_pretty_printer_from_gdb, find_pretty_printer)
479         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
480         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
481         Update.
482
483 2018-11-04  Tom Tromey  <tom@tromey.com>
484
485         * python/python.c (gdbpy_parameter_value): Update.
486         * python/python-internal.h (python_string_to_unicode)
487         (python_string_to_target_python_string)
488         (host_string_to_python_string): Return gdbpy_ref.
489         * python/py-utils.c (python_string_to_unicode)
490         (unicode_to_encoded_python_string)
491         (unicode_to_target_python_string)
492         (python_string_to_target_string)
493         (python_string_to_target_python_string): Return gdbpy_ref.
494         (python_string_to_host_string): Update.
495         (host_string_to_python_string): Return gdbpy_ref.
496         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
497         (stpy_fullname): Update.
498         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
499         Update.
500         * python/py-prettyprint.c (print_string_repr): Update.
501         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
502         (objfpy_get_build_id): Update.
503         * python/py-breakpoint.c (bppy_get_location)
504         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
505         Update.
506
507 2018-11-04  Tom Tromey  <tom@tromey.com>
508
509         * python/python-internal.h (gdb_py_object_from_longest)
510         (gdb_py_object_from_ulongest): Return gdbpy_ref.
511         * python/py-value.c (valpy_int): Update.
512         * python/py-utils.c (gdb_py_object_from_longest): Return
513         gdbpy_ref.
514         (gdb_py_object_from_ulongest): Likewise.
515         * python/py-type.c (typy_get_alignof): Update.
516         * python/py-linetable.c (ltpy_get_all_source_lines)
517         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
518         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
519
520 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
521
522         * ada-lang.c (_initialize_ada_language): Fix typo.
523
524 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
525
526         * language.c (type): Remove.
527         (_initialize_language): Remove assignment to type.
528
529 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
530
531         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
532         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
533         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
534         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
535         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
536         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
537         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
538         and aarch64-ravenscar-thread.o.
539         * NEWS: Add entry documenting Ravenscar tasking support
540         on AArch64 ELF.
541
542 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
543
544         * symtab.c (info_functions_command): Initialize quiet flag.
545         * stack.c (info_args_command): Likewise.
546
547 2018-11-01  Jim Wilson  <jimw@sifive.com>
548
549         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
550         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
551         debugging messages.
552
553 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
554
555         * ada-lang.c (ada_watch_location_expression): New function.
556         (ada_language_defn): Set la_watch_location_expression to
557         ada_watch_location_expression.
558
559 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
560
561         * print-utils.c (int_string): Remove unnecessary trailing spaces.
562
563 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
564
565         * rs6000-tdep.c (skip_prologue): Fix potential negative left
566         shifting.
567
568 2018-11-01  Jerome Guitton  <guitton@adacore.com>
569             Joel Brobecker  <brobecker@adacore.com>
570
571         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
572         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
573         * arm-pikeos-tdep.c: New file.
574         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
575         embedded system.
576         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
577
578 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
579
580         * common/pathstuff.c (get_standard_temp_dir): New.
581         * common/pathstuff.h (get_standard_temp_dir): New.
582         * config.in: Re-generate.
583         * configure: Re-generate.
584         * configure.ac: Don't check for mkdtemp.
585         * gnulib/aclocal-m4-deps.mk: Re-generate.
586         * gnulib/aclocal.m4: Re-generate.
587         * gnulib/config.in: Re-generate.
588         * gnulib/configure: Re-generate.
589         * gnulib/import/Makefile.am: Re-generate.
590         * gnulib/import/Makefile.in: Re-generate.
591         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
592         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
593         * gnulib/import/m4/mkdtemp.m4: New file.
594         * gnulib/import/mkdtemp.c: New file.
595         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
596         Add mkdtemp module.
597         * unittests/mkdir-recursive-selftests.c (test): Use
598         get_standard_temp_dir.
599         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
600         ifdef.
601         * compile/compile.c (get_compile_file_tempdir): Likewise.
602
603 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
604
605         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
606         (SIG_FRAME_LR_OFFSET64): New define.
607         (SIG_FRAME_FP_OFFSET64): New define.
608         (aix_sighandle_frame_cache): New Function.
609         (aix_sighandle_frame_this_id): New Function.
610         (aix_sighandle_frame_prev_register): New Function.
611         (aix_sighandle_frame_sniffer): New Function.
612         (aix_sighandle_frame_unwind): New global variable.
613         (rs6000_aix_init_osabi): Install new frame unwinder.
614
615 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
616
617         PR gdb/23835
618         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
619         already defined.
620
621 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
622
623         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
624
625 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
626
627         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
628         (producer_is_icc): New function.
629         (check_producer): Set producer_is_icc field on dwarf2_cu.
630         (dwarf2_init_integer_type): New function.
631         (read_base_type): Call dwarf2_init_integer_type instead of
632         init_integer_type in all cases.
633         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
634         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
635         LEN is greater than 0.
636
637 2018-10-30  Tom Tromey  <tom@tromey.com>
638
639         * main.c (captured_main_1): Check return value of bfd_init.
640
641 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
642
643         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
644         Adjust comments.
645
646 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
647
648         * procfs.c: Include common/pathstuff.h.
649
650 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
651
652         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
653         Add missing braces.  No functional change.
654
655 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
656
657         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
658         to report a bad option and fix indentation.
659         * demangle.c (demangle_command): Use report_unrecognized_option_error
660         to report a bad option and correctly report the bad option.
661
662 2018-10-27  Tom Tromey  <tom@tromey.com>
663
664         PR cli/23364:
665         * darwin-nat.c (copied_shell): New global.
666         (may_have_sip): Rename from should_disable_startup_with_shell.
667         (copy_shell_to_cache, maybe_cache_shell): New functions.
668         (darwin_nat_target::create_inferior): Update.  Use
669         copied_shell.
670
671 2018-10-27  Tom Tromey  <tom@tromey.com>
672
673         * unittests/scoped_fd-selftests.c (test_to_file): New function.
674         (run_tests): Call test_to_file.
675         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
676         temporary files.
677         * common/scoped_fd.h (scoped_fd::to_file): New method.
678
679 2018-10-27  Tom Tromey  <tom@tromey.com>
680
681         * unittests/scoped_mmap-selftests.c (test_normal): Use
682         gdb_mkostemp_cloexec.
683         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
684         Use gdb_mkostemp_cloexec.
685         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
686         gnulib/config.in, gnulib/configure,
687         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
688         gnulib/import/m4/gnulib-cache.m4,
689         gnulib/import/m4/gnulib-comp.m4: Update.
690         * gnulib/import/m4/mkostemp.m4: New file.
691         * gnulib/import/m4/mkstemp.m4: Remove.
692         * gnulib/import/mkostemp.c: New file.
693         * gnulib/import/mkstemp.m4: Remove.
694         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
695         mkstemp, add mkostemp.  Apply new patch.
696         * gnulib/import/stdlib.in.h: Apply patch.
697         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
698         New file.
699         * dwarf-index-write.c (write_psymtabs_to_index): Use
700         gdb_mkostemp_cloexec.
701         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
702
703 2018-10-27  Tom Tromey  <tom@tromey.com>
704
705         * unittests/mkdir-recursive-selftests.c: New file.
706         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
707         unittests/mkdir-recursive-selftests.c.
708         * dwarf-index-cache.c (mkdir_recursive): Move to
709         common/filestuff.c.
710         (index_cache::store): Check return value of mkdir_recursive.
711         (create_dir_and_check, test_mkdir_recursive): Move to new file.
712         (_initialize_index_cache): Don't register test.
713         * common/filestuff.h (mkdir_recursive): Declare.
714         * common/filestuff.c (mkdir_recursive): Move from
715         dwarf-index-cache.c.  Return bool.
716
717 2018-10-27  Tom Tromey  <tom@tromey.com>
718
719         * dwarf-index-write.c (write_psymtabs_to_index): Move
720         make_temp_filename to common/pathstuff.c.
721         * common/pathstuff.h (make_temp_filename): Declare.
722         * common/pathstuff.c (make_temp_filename): New function, moved
723         from dwarf-index-write.c.
724
725 2018-10-27  Tom Tromey  <tom@tromey.com>
726
727         * procfs.c (procfs_target::create_inferior): Use get_shell.
728         * cli/cli-cmds.c (shell_escape): Use get_shell.
729         * windows-nat.c (windows_nat_target::create_inferior): Use
730         get_shell.
731         * common/pathstuff.c (get_shell): New function.
732         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
733         (fork_inferior): Use get_shell.
734         * common/pathstuff.h (get_shell): Declare.
735
736 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
737
738         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
739
740 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
741
742         * stack.c (print_variable_and_value_data): Add preg and treg.
743         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
744         and update callers.
745         (print_frame_arg_vars): Likewise.
746         (prepare_reg): New function.
747         (info_locals_command): Extract info print args and use them.
748         (info_args_command): Likewise.
749         (_initialize_stack): Modify on-line help.
750         * symtab.c (treg_matches_sym_type_name): New function.
751         (search_symbols): New arg t_regexp.
752         (symtab_symbol_info): New args quiet, regexp, t_regexp.
753         (info_variables_command): Extract info print args and use them.
754         (info_functions_command): Likewise.
755         (info_types_command): Update call to symtab_symbol_info.
756         (_initialize_symtab): Modify on-line help.
757         * symtab.h (treg_matches_sym_type_name): New function.
758         (search_symbols): New t_regexp arg.
759
760 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
761
762         * cli-utils.c (extract_arg_maybe_quoted): New function.
763         (extract_info_print_args): New function.
764         (info_print_args_help): New function.
765         (report_unrecognized_option_error): New function.
766         * cli-utils.h (extract_arg_maybe_quoted): New function.
767         (extract_info_print_args): New function.
768         (info_print_args_help): New function.
769         (report_unrecognized_option_error): New function.
770
771 2018-10-26  Tom Tromey  <tom@tromey.com>
772
773         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
774         (compute_compunit_symtab_includes): Update.
775         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
776         (compunit_symtab_ptr): Likewise.
777
778 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
779
780         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
781         default_print_auxv_entry for specific tag values.
782
783 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
784
785         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
786
787 2018-10-26  Jim Wilson  <jimw@sifive.com>
788
789         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
790         (riscv_linux_sigframe_init): Declare.
791         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
792         (riscv_linux_sigframe): New.
793         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
794         (riscv_linux_sigframe_init): Define.
795         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
796
797         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
798         (riscv_isa_flen): Likewise.  Drop static.
799         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
800         (riscv_isa_flen): Likewise.  Declare.
801
802 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
803             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
804
805         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
806         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
807         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
808         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
809         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
810         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
811         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
812         Define.
813         (struct ppc_linux_features) <htm>: New field.
814         (ppc_linux_no_features): Add initializer for htm field.
815         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
816         new tdescs.
817         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
818         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
819         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
820         Define if not already defined.
821         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
822         and rs6000/powerpc-isa207-htm-vsx64l.
823         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
824         rs6000/powerpc-isa207-htm-vsx64l.xml.
825         * features/rs6000/power-htm-spr.xml: New file.
826         * features/rs6000/power-htm-core.xml: New file.
827         * features/rs6000/power64-htm-core.xml: New file.
828         * features/rs6000/power-htm-fpu.xml: New file.
829         * features/rs6000/power-htm-altivec.xml: New file.
830         * features/rs6000/power-htm-vsx.xml: New file.
831         * features/rs6000/power-htm-ppr.xml: New file.
832         * features/rs6000/power-htm-dscr.xml: New file.
833         * features/rs6000/power-htm-tar.xml: New file.
834         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
835         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
836         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
837         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
838         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
839         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
840         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
841         fetch_regset with HTM regsets.
842         (store_register, store_ppc_registers): Call store_regset with HTM
843         regsets.
844         (ppc_linux_nat_target::read_description): Set htm field in the
845         features struct if needed.
846         * ppc-linux-tdep.c: Include
847         features/rs6000/powerpc-isa207-htm-vsx32l.c and
848         features/rs6000/powerpc-isa207-htm-vsx64l.c.
849         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
850         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
851         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
852         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
853         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
854         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
855         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
856         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
857         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
858         (ppc32_linux_ctarregset): New globals.
859         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
860         (ppc_linux_collect_core_cpgrregset): New function.
861         (ppc_linux_iterate_over_regset_sections): Call back with the htm
862         regsets.
863         (ppc_linux_core_read_description): Check if the tm spr section is
864         present and set htm in the features struct.
865         (_initialize_ppc_linux_tdep): Call
866         initialize_tdesc_powerpc_isa207_htm_vsx32l and
867         initialize_tdesc_powerpc_isa207_htm_vsx64l.
868         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
869         Declare.
870         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
871         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
872         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
873         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
874         New fields.
875         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
876         Likewise.
877         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
878         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
879         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
880         New enum fields.
881         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
882         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
883         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
884         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
885         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
886         <PPC_CTAR_REGNUM>: Likewise.
887         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
888         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
889         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
890         (IS_CEFP_PSEUDOREG): Define.
891         (rs6000_register_name): Hide the upper halves of checkpointed VSX
892         registers.  Return names for the checkpointed DFP, VSX, and EFP
893         pseudo registers.
894         (rs6000_pseudo_register_type): Remove initial assert and raise an
895         internal error in the else clause instead.  Return types for the
896         checkpointed DFP, VSX, and EFP pseudo registers.
897         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
898         checkpointed DFP pseudo registers.
899         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
900         checkpointed VSX pseudo registers.
901         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
902         from efpr_pseudo_register_read and
903         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
904         registers.
905         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
906         Handle checkpointed DFP, VSX, and EFP registers.
907         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
908         (efp_ax_pseudo_register_collect): New functions.
909         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
910         register logic to new functions.  Handle checkpointed DFP, VSX,
911         and EFP pseudo registers.
912         (rs6000_gdbarch_init): Look for and validate the htm features.
913         Include checkpointed DFP, VSX and EFP pseudo-registers.
914         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
915         HTM registers.
916
917 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
918
919         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
920         without altivec or fpu.
921
922 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
923             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
924
925         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
926         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
927         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
928         Define if not already defined.
929         * features/rs6000/power-ebb.xml: New file.
930         * features/rs6000/power-linux-pmu.xml: New file.
931         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
932         features.
933         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
934         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
935         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
936         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
937         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
938         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
939         fetch_regset with ebb and pmu regsets.
940         (store_register, store_ppc_registers): Call store_regset with ebb
941         and pmu regsets.
942         (ppc_linux_nat_target::read_description): Set isa207 field in the
943         features struct if ebb and pmu are avaiable.
944         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
945         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
946         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
947         and pmu regsets.
948         (ppc_linux_core_read_description): Check if the pmu section is
949         present and set isa207 in the features struct.
950         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
951         (ppc32_linux_pmuregset): Declare.
952         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
953         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
954         <ppc_sier_regnum>: New field.
955         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
956         New enum values.
957         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
958         values.
959         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
960         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
961         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
962         ebb and pmu features.
963
964 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
965             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
966
967         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
968         (tdesc_powerpc_isa207_vsx64l): Declare.
969         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
970         (struct ppc_linux_features) <isa207>: New field.
971         (ppc_linux_no_features): Add initializer for isa207 field.
972         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
973         new tdescs.
974         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
975         (NT_PPC_TAR): Define if not already defined.
976         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
977         rs6000/powerpc-isa207-vsx64l.
978         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
979         rs6000/powerpc-isa207-vsx64l.xml.
980         * features/rs6000/power-tar.xml: New file.
981         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
982         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
983         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
984         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
985         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
986         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
987         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
988         fetch_regset with the TAR regset.
989         (store_register, store_ppc_registers): Call store_regset with the
990         TAR regset.
991         (ppc_linux_nat_target::read_description): Set isa207 field in the
992         features struct if needed.
993         * ppc-linux-tdep.c: Include
994         features/rs6000/powerpc-isa207-vsx32l.c and
995         features/rs6000/powerpc-isa207-vsx64l.c.
996         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
997         (ppc_linux_iterate_over_regset_sections): Call back with the tar
998         regset.
999         (ppc_linux_core_read_description): Check if the tar section is
1000         present and set isa207 in the features struct.
1001         (_initialize_ppc_linux_tdep): Call
1002         initialize_tdesc_powerpc_isa207_vsx32l and
1003         initialize_tdesc_powerpc_isa207_vsx64l.
1004         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1005         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1006         (enum) <PPC_TAR_REGNUM>: New enum value.
1007         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1008         feature.
1009         (ppc_process_record_op31): Record changes to TAR.
1010
1011 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1012             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1013
1014         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1015         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1016         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1017         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1018         (struct ppc_linux_features) <ppr_dscr>: New field.
1019         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1020         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1021         new tdescs.
1022         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1023         Define if not already defined.
1024         * features/Makefile (WHICH): Add
1025         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1026         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1027         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1028         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1029         * features/rs6000/power-dscr.xml: New file.
1030         * features/rs6000/power-ppr.xml: New file.
1031         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1032         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1033         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1034         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1035         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1036         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1037         * ppc-linux-nat.c: Include <sys/uio.h>.
1038         (fetch_regset, store_regset, check_regset): New functions.
1039         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1040         DSCR and PPR regsets.
1041         (store_register, store_ppc_registers): Call store_regset with
1042         DSCR and PPR regsets.
1043         (ppc_linux_get_hwcap2): New function.
1044         (ppc_linux_nat_target::read_description): Call
1045         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1046         features struct if needed.
1047         * ppc-linux-tdep.c: Include
1048         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1049         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1050         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1051         (ppc32_linux_dscrregset): New globals.
1052         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1053         and dscr regsets.
1054         (ppc_linux_core_read_description): Check if the ppr and dscr
1055         sections are present and set ppr_dscr in the features struct.
1056         (_initialize_ppc_linux_tdep): Call
1057         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1058         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1059         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1060         (ppc32_linux_dscrregset): Declare.
1061         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1062         <ppc_dscr_regnum>: New field.
1063         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1064         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1065         and dscr features.
1066         (ppc_process_record_op31): Record changes to PPR and DSCR.
1067
1068 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1069
1070         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1071         second initializer line for the have_* variables.  Initialize
1072         have_fpu to 0 instead of 1.
1073
1074 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1075
1076         * arch/ppc-linux-common.c (ppc_linux_match_description):
1077         Parenthesize tdesc assignements and indent them properly.
1078
1079 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1080
1081         * ppc-linux-nat.c (fetch_register): Change if statement to else
1082         if.
1083         (store_register): Likewise.
1084
1085 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1086
1087         * rs6000-tdep.c: Remove reggroups.h include.
1088         (rs6000_pseudo_register_reggroup_p): Remove.
1089         (rs6000_gdbarch_init): Remove call to
1090         set_tdesc_pseudo_register_reggroup_p.
1091
1092 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1093
1094         * reggroups.c (default_register_reggroup_p): Return true for
1095         decfloat registers and float_reggroup.
1096
1097 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1098
1099         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1100         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1101         ppc_linux_collect_vrregset by regcache_collect_regset.
1102
1103 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1104
1105         * linux-tdep.c (linux_collect_regset_section_cb): Use
1106         std::vector<gdb_byte> instead of char * and malloc for buf.
1107         Remove xfree.
1108
1109 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1110
1111         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1112         symtab_start instead of always using language_unknown.
1113
1114 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1115
1116         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1117         READ_P parameter, catch and ignore register access errors from
1118         either the old or new MISA location.
1119         (riscv_has_feature): Update call to riscv_read_misa_reg.
1120
1121 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1122
1123         * python/py-function.c (convert_values_to_python): Return
1124         gdbpy_ref<>.  Add header comment.
1125         (fnpy_call): Adjust.
1126
1127 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1128
1129         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1130         (cmdpy_completer_handle_brkchars): Adjust.
1131         (cmdpy_completer): Adjust.
1132
1133 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1134
1135         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1136         Pass correct regnum to raw_supply_zeroed.
1137
1138 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1139
1140         * regcache.c (cooked_read_test): Add CSKY to the list of
1141         architectures with a save_reggroup
1142
1143 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1144
1145         PR gdb/23368
1146         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1147         transfer terminal state from old new new inferior.
1148         * terminal.h (swap_terminal_info): New function.
1149         * inflow.c (swap_terminal_info): New function.
1150
1151 2018-10-23  Tom Tromey  <tom@tromey.com>
1152
1153         * record-btrace.c (get_thread_current_frame_id): Rename from
1154         get_thread_current_frame.  Return a frame_id.
1155         (record_btrace_start_replaying): Update.
1156
1157 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1158
1159         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1160         for CSRs.
1161
1162 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1163
1164         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1165         have_nonsteppable_watchpoint attribute to 1.
1166
1167 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1168
1169         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1170         register names.
1171         (struct register_alias): Rename to...
1172         (struct riscv_register_alias): ...this, and update comment.
1173         (riscv_register_aliases): Update type, and alias names.  Remove
1174         CSR names from this list.
1175         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1176         register names.  Add an extra assertion.
1177         (riscv_is_regnum_a_named_csr): New function.
1178         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1179
1180 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1181
1182         * configure.tgt: Add configuration for s12z.
1183         * s12z-tdep.c:  New file.
1184         * NEWS: Mention new target.
1185
1186 2018-10-22  Jim Wilson  <jimw@sifive.com>
1187
1188         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1189         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1190
1191         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1192         (riscv_register_type): Use them.
1193         (riscv_print_one_register_info): Handle union of floats same as float.
1194         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1195         riscv_fpreg_q_type fields.
1196
1197 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1198
1199         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1200         * gdbarch.h: Re-generate.
1201         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1202         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1203         * eval.c (evaluate_subexp_standard): Likewise.
1204         * findvar.c (value_of_register): Likewise.
1205         (value_of_register_lazy): Likewise.
1206         (address_from_register): Likewise.
1207         * frame.c (get_frame_register_bytes): Likewise.
1208         * gdbarch-selftests.c (register_to_value_test): Likewise.
1209         * h8300-tdep.c (h8300_register_type): Likewise.
1210         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1211         (i386_svr4_reg_to_regnum): Likewise.
1212         * infcmd.c (default_print_registers_info): Likewise.
1213         (registers_info): Likewise.
1214         (print_vector_info): Likewise.
1215         (default_print_float_info): Likewise.
1216         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1217         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1218         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1219         (mi_cmd_data_list_changed_registers): Likewise.
1220         (mi_cmd_data_list_register_values): Likewise.
1221         (mi_cmd_data_write_register_values): Likewise.
1222         (mi_cmd_trace_frame_collected): Likewise.
1223         * mips-tdep.c (print_gp_register_row): Likewise.
1224         (mips_print_registers_info): Likewise.
1225         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1226         * regcache.c (init_regcache_descr): Likewise.
1227         (register_size): Likewise.
1228         (register_dump::dump): Likewise.
1229         (cooked_read_test): Likewise.
1230         (cooked_write_test): Likewise.
1231         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1232         (rs6000_gdbarch_init): Likewise.
1233         * stabsread.c (stab_reg_to_regnum): Likewise.
1234         * stack.c (info_frame_command): Likewise.
1235         * target-descriptions.c (tdesc_register_name): Likewise.
1236         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1237         * tui/tui-regs.c (tui_show_register_group): Likewise.
1238         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1239         (user_reg_map_regnum_to_name): Likewise.
1240         (value_of_user_reg): Likewise.
1241         (maintenance_print_user_registers): Likewise.
1242         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1243         (xtensa_register_name): Likewise.
1244         (xtensa_register_type): Likewise.
1245         (xtensa_reg_to_regnum): Likewise.
1246         (xtensa_pseudo_register_read): Likewise.
1247         (xtensa_pseudo_register_write): Likewise.
1248
1249 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1250
1251         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1252         correctly-sized buffer with raw_read.
1253         (amd64_pseudo_register_write): Use correctly-sized buffer for
1254         raw_read/raw_write.
1255
1256 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1257
1258         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1259         in add_prefix_cmd of set print type.
1260
1261 2018-10-19  Tom Tromey  <tom@tromey.com>
1262
1263         PR tui/18388:
1264         * NEWS: Mention tabset deprecation.
1265         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1266         (update_tab_width): New function.
1267         (tui_set_tab_width, tui_show_tab_width): New functions.
1268         (tui_set_tab_width_command): Use update_tab_width.
1269         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1270         Add new "set tui tab-width" command.
1271         * tui/tui-source.c (tui_set_source_content): Update.
1272         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1273         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1274         Don't declare.
1275         (tui_tab_width): Declare.
1276         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1277         (tui_set_default_tab_len): Remove.
1278
1279 2018-10-19  Tom Tromey  <tom@tromey.com>
1280
1281         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1282         (key_is_backspace, tui_getc): Don't declare.
1283         * tui/tui-io.c (key_is_start_sequence): Now static.
1284         (key_is_end_sequence, key_is_backspace): Remove.
1285         (tui_getc): Now static.
1286
1287 2018-10-19  Tom Tromey  <tom@tromey.com>
1288
1289         * symfile.c (reread_symbols): Clear "static_links".
1290
1291 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1292
1293         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1294         define.
1295         (aarch64_linux_sigframe_init): Extra boundary checks.
1296
1297 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1298
1299         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1300         the possibly non-existent tdesc type 'vec128', but the type of raw
1301         register v16 instead.
1302
1303 2018-10-19  Gary Benson <gbenson@redhat.com>
1304
1305         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1306
1307 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1308
1309         PR cli/23785
1310         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1311         NULL.
1312
1313 2018-10-17  Paul Koning  <paul_koning@dell.com>
1314
1315         * charset.c (convert_between_encodings): Fix unsigned overflow.
1316
1317 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1318
1319         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1320         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1321         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1322         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1323         New functions.
1324         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1325         and fbsd_info_proc_mappings_header.
1326         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1327         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1328         New.
1329
1330 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1331
1332         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1333         Solaris Maintainer.
1334
1335 2018-10-15  Tom Tromey  <tom@tromey.com>
1336
1337         * tui/tui.c (strcat_to_buf): Remove casts.
1338         * tui/tui-winsource.c (tui_show_source_line)
1339         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1340         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1341         * tui/tui-windata.c (tui_first_data_item_displayed)
1342         (tui_delete_data_content_windows, tui_erase_data_content)
1343         (tui_display_all_data, tui_display_data_from)
1344         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1345         * tui/tui-win.c (tui_set_win_height)
1346         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1347         casts.
1348         * tui/tui-win.c (tui_resize_all): Remove casts.
1349         (tui_scroll_backward_command, tui_set_focus)
1350         (tui_set_tab_width_command): Likewise.
1351         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1352         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1353         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1354         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1355         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1356         Remove casts.
1357
1358 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1359
1360         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1361         AArch64/ARM maintainer.
1362
1363 2018-10-11  Gary Benson <gbenson@redhat.com>
1364
1365         * interps.h (interp::m_name): Make private and mutable.
1366         * interps.c (interp::~interp): Free m_name.
1367
1368 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1369             Simon Marchi <simark@simark.ca>
1370
1371         * README (`configure' options): Add documentation for new
1372         "--enable-unit-tests" option.
1373         * acinclude.m4: Include "selftest.m4".
1374         * configure: Regenerate.
1375         * configure.ac: Use "GDB_AC_SELFTEST".
1376         * maint.c (maintenance_selftest): Update message informing
1377         that selftests have been disabled.
1378         (maintenance_info_selftests): Likewise.
1379         * selftest.m4: New file.
1380
1381 2018-10-10  Gary Benson <gbenson@redhat.com>
1382
1383         * remote.c (remote_target::remote_send_printf): Add
1384         missing va_end found by Coverity.
1385
1386 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1387
1388         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1389
1390 2018-10-09  Tom Tromey  <tom@tromey.com>
1391
1392         * configure: Rebuild.
1393         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1394         * NEWS: Update --enable-ubsan documentation.
1395
1396 2018-10-09  Gary Benson <gbenson@redhat.com>
1397
1398         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1399         found by Coverity.
1400
1401 2018-10-08  Tom Tromey  <tom@tromey.com>
1402
1403         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1404         variable.
1405         (riscv_fbsd_init_abi): Likewise.
1406
1407 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1408         * valops.c (value_struct_elt_for_reference): Rename local variable
1409         to work around the shadowing a previous local warning.
1410
1411 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1412
1413         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1414         * NEWS: Mention new FreeBSD/riscv native configuration.
1415         * configure.host: Add riscv*-*-freebsd*.
1416         * configure.nat: Likewise.
1417         * riscv-fbsd-nat.c: New file.
1418
1419 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1420
1421         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1422         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1423         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1424         * NEWS: Mention new FreeBSD/riscv target.
1425         * configure.tgt: Add riscv*-*-freebsd*.
1426         * riscv-fbsd-tdep.c: New file.
1427         * riscv-fbsd-tdep.h: New file.
1428
1429 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1430
1431         * regcache.h (struct regcache_map_entry): Note that this type can
1432         be used with traditional frame caches.
1433         * trad-frame.c (trad_frame_set_reg_regmap): New.
1434         * trad-frame.h (trad_frame_set_reg_regmap): New.
1435
1436 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1437
1438         PR c++/16841
1439         * valops.c (get_virtual_base_offset): New function.
1440         (value_struct_elt_for_reference): Use it to get virtual base offset
1441         and add it in calculating class member address.
1442
1443 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1444
1445         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1446         (check_producer): Check if the producer is codewarrior.
1447         (producer_is_codewarrior): New function.
1448         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1449         produced by codewarrior.
1450         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1451
1452 2018-10-06  Tom Tromey  <tom@tromey.com>
1453
1454         PR python/19399:
1455         * python/py-inferior.c: Add "architecture" entry.
1456         (infpy_architecture): New function.
1457
1458 2018-10-06  Tom Tromey  <tom@tromey.com>
1459
1460         PR python/21765:
1461         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1462         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1463         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1464         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1465
1466 2018-10-06  Tom Tromey  <tom@tromey.com>
1467
1468         PR build/17077:
1469         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1470         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1471         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1472         #include.
1473
1474 2018-10-06  Tom Tromey  <tom@tromey.com>
1475
1476         * python/py-breakpoint.c (bppy_get_location): Handle a
1477         bp_breakpoint without a location.
1478
1479 2018-10-06  Tom Tromey  <tom@tromey.com>
1480
1481         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1482         (_RegEx): Reformat help text.
1483         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1484         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1485         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1486         text.
1487         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1488         (EnableXMethod, DisableXMethod): Remove help indentation.
1489         Capitalize meta-syntactic variables.
1490         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1491         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1492         Capitalize meta-syntactic variables.
1493         * python/lib/gdb/command/explore.py (ExploreCommand)
1494         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1495         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1496         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1497         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1498         Remove help indentation.
1499         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1500         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1501         (DisableFrameFilter, SetFrameFilterPriority)
1502         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1503
1504 2018-10-06  Tom Tromey  <tom@tromey.com>
1505
1506         PR tui/28819:
1507         * tui/tui-io.c (gdb_wgetch): New function.
1508         (tui_mld_getc, tui_getc): Use it.
1509
1510 2018-10-05  Tom Tromey  <tom@tromey.com>
1511
1512         * sol-thread.c (sol_thread_target::wait): Rename inner
1513         "save_ptid".
1514
1515 2018-10-04  Tom Tromey  <tom@tromey.com>
1516
1517         * configure: Rebuild.
1518         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1519
1520 2018-10-04  Tom Tromey  <tom@tromey.com>
1521
1522         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1523         declaration of "block".
1524
1525 2018-10-04  Tom Tromey  <tom@tromey.com>
1526
1527         * common/filestuff.c (fdwalk): Remove inner declaration of
1528         "result".
1529
1530 2018-10-04  Tom Tromey  <tom@tromey.com>
1531
1532         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1533         "structs_addr" and hoist declaration.
1534
1535 2018-10-04  Tom Tromey  <tom@tromey.com>
1536
1537         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1538         variable "size".
1539
1540 2018-10-04  Tom Tromey  <tom@tromey.com>
1541
1542         * mdebugread.c (parse_partial_symbols): Use std::string.
1543
1544 2018-10-04  Tom Tromey  <tom@tromey.com>
1545
1546         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1547         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1548         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1549         header.
1550         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1551         more inner scope.
1552         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1553         * varobj.c (varobj_update): Rename inner "newobj",
1554         "type_changed".
1555         * valprint.c (generic_emit_char): Rename inner "buf".
1556         * valops.c (find_overload_match): Rename inner "temp".
1557         (value_struct_elt_for_reference): Declare "v" in more inner
1558         scope.
1559         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1560         * unittests/array-view-selftests.c (run_tests): Rename inner
1561         "vec".
1562         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1563         header.
1564         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1565         "tsv" in more inner scope.
1566         (print_one_static_tracepoint_marker): Rename inner
1567         "tuple_emitter".
1568         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1569         (tic6x_push_dummy_call): Don't redeclare "addr".
1570         * target-float.c: Declare "dto" lower.
1571         * symtab.c (lookup_local_symbol): Rename inner "sym".
1572         (find_pc_sect_line): Rename inner "pc".
1573         * stack.c (print_frame): Don't redeclare "gdbarch".
1574         (return_command): Rename inner "gdbarch".
1575         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1576         "sp".
1577         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1578         header.
1579         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1580         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1581         scope.
1582         * remote.c (remote_target::update_thread_list): Don't redeclare
1583         "tp".
1584         (remote_target::process_initial_stop_replies): Rename inner
1585         "thread".
1586         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1587         (remote_target::wait_as): Don't redeclare "stop_reply".
1588         (remote_target::get_thread_local_address): Rename inner
1589         "result".
1590         (remote_target::get_tib_address): Likewise.
1591
1592         * regcache.c (cooked_read_test): Rename "regnum".
1593         * record-btrace.c (cmd_record_btrace_start): Rename inner
1594         "exception".
1595         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1596         loop header.
1597         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1598         header.
1599         (ppu2spu_sniffer): Rename inner "buf".
1600         * parse.c (operator_check_standard): Rename inner "type",
1601         "objfile".
1602         * p-valprint.c (pascal_val_print): Introduce new scope for
1603         "low_bound", "high_bound".
1604         * p-exp.y (yylex): Declare "i" in loop header.
1605         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1606         Lower declaration of "s".
1607         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1608         header.
1609         (nios2_push_dummy_call): Rename "len".
1610         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1611         "buf".
1612         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1613         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1614         (linux_xfer_osdata_modules): Likewise.
1615         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1616         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1617         (mips_o64_push_dummy_call): Likewise.
1618         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1619         "op".
1620         * mi/mi-main.c (list_available_thread_groups): Rename inner
1621         "tuple_emitter".
1622         (mi_cmd_data_read_memory): Rename inner "opts".
1623         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1624         "tuple_emitter".
1625         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1626         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1627         more inner scope.
1628         (parse_partial_symbols): Rename inner "pst", "p", "name"
1629         * main.c (captured_main_1): Rename inner "i"s.
1630         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1631         "oso2".
1632         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1633         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1634         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1635         (handle_signal_stop): Rename inner "gdbarch".
1636         (handle_command): Declare "signum" in loop header.
1637         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1638         "status".
1639         (examine_prologue): Rename inner "sol" and "sof".
1640         (ia64_extract_return_value): Rename inner "val".  Declare another
1641         "val" in a more inner scope.
1642         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1643         inner scope.
1644         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1645         "except".
1646         * findvar.c (default_read_var_value): Don't redeclare "addr".
1647         * f-exp.y (yylex): Declare "i" in loop header.
1648         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1649         Rename inner "type", "expect_type".
1650         (evaluate_subexp_for_sizeof): Rename inner "pc".
1651         * elfread.c (elf_symfile_read): Rename inner "abfd".
1652         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1653         "bytes_read".
1654         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1655         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1656         (dwarf_decode_line_header): Rename inner "lh".
1657         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1658         "offset".  Declare "i" in loop header.
1659         (disassemble_dwarf_expression): Rename inner "addr_size".
1660         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1661         inner "result".
1662         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1663         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1664         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1665         "inner_list_emitter".
1666         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1667         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1668         declaration in a block.
1669         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1670         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1671         "obstack_final_size".
1672         * cp-support.c (inspect_type): Declare "i" in loop header.
1673         * compile/compile.c (compile_instance::insert_symbol_error):
1674         Rename inner "e".
1675         * common/agent.c (agent_run_command): Remove inner "ret"
1676         declaration.
1677         * coffread.c (coff_symfile_read): Rename inner "name".
1678         (coff_symfile_read): Rename inner "abfd".
1679         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1680         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1681         "high".
1682         * c-exp.y (lex_one_token): Move "len" declaration lower.
1683         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1684         "gdbarch".
1685         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1686         "b".
1687         (watch_command_1): Declare "mark" later.
1688         (clear_command): Don't shadow "a" or "b".
1689         (delete_command): Rename inner "b".
1690         (delete_trace_command): Likewise.
1691         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1692         "op".
1693         (arm_gdbarch_init): Remove inner "e_flags".
1694         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1695         "offset" in inner blocks.
1696
1697 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1698
1699         * dwarf-index-write.c (file_write): Don't write if the vector is
1700         empty.
1701
1702 2018-10-05  Tom de Vries  <tdevries@suse.de>
1703
1704         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1705         PyArg_ParseTuple call.
1706
1707 2018-10-05  Tom de Vries  <tdevries@suse.de>
1708
1709         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1710         PyArg_ParseTuple call.
1711
1712 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1713
1714         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1715         to avoid exceeding 80 characters per line limit.
1716
1717 2018-10-04  Tom Tromey  <tom@tromey.com>
1718
1719         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1720         (reread_symbols): Update.
1721         * complaints.h (clear_complaints): Remove argument.
1722         * complaints.c (enum complaint_series): Remove.
1723         (series): Remove global.
1724         (complaint_internal): Update.
1725         (clear_complaints): Remove argument.
1726
1727 2018-10-04  Tom Tromey  <tom@tromey.com>
1728
1729         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1730         debugging symbols" message if there is a separate debug objfile.
1731
1732 2018-10-04  Tom Tromey  <tom@tromey.com>
1733
1734         PR cli/19551:
1735         * symfile.c (symbol_file_add_with_addrs): Update output.
1736         * psymtab.c (require_partial_symbols): Update output.
1737
1738 2018-10-04  Tom Tromey  <tom@tromey.com>
1739
1740         PR cli/22234:
1741         * complaints.c: Emit \n.
1742
1743 2018-10-04  Tom Tromey  <tom@tromey.com>
1744
1745         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1746         (separate_debug_file_exists, find_separate_debug_file)
1747         (add_symbol_file_command, reread_symbols, allocate_symtab)
1748         (allocate_compunit_symtab): Use filtered printing, not
1749         unfiltered.
1750         * psymtab.c (require_partial_symbols, dump_psymtab)
1751         (allocate_psymtab): Use filtered printing, not unfiltered.
1752
1753 2018-10-04  Tom Tromey  <tom@tromey.com>
1754
1755         * complaints.c (complaint_internal): Correctly check complaint
1756         count.
1757
1758 2018-10-04  Tom Tromey  <tom@tromey.com>
1759
1760         * complaints.h (struct complaints): Remove declaration.
1761         * complaints.c (clear_complaints): Remove an unused variable.
1762
1763 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1764
1765         * MAINTAINERS (Write After Approval): Add self.
1766
1767 2018-10-03  Tom Tromey  <tom@tromey.com>
1768
1769         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1770         "buffer_contents".
1771         * coffread.c (coff_symtab_read): Initialize "newobj".
1772
1773 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1774
1775         * dwarf2read.c (read_func_scope): Remove struct keyword in
1776         range-based for.
1777
1778 2018-10-03  Tom Tromey  <tom@tromey.com>
1779
1780         * README: Mention --enable-ubsan.
1781         * NEWS: Mention --enable-ubsan.
1782         * acinclude.m4: Include sanitize.m4.
1783         * configure: Rebuild.
1784         * configure.ac: Call AM_GDB_UBSAN.
1785         * sanitize.m4: New file.
1786
1787 2018-10-03  Tom Tromey  <tom@tromey.com>
1788
1789         * expression.h (enum exp_opcode): Use uint8_t as base type.
1790         * expprint.c (op_name): Handle invalid opcodes.
1791
1792 2018-10-03  Tom Tromey  <tom@tromey.com>
1793
1794         * parse.c (prefixify_expression): Add assert.
1795         (parse_exp_in_context_1): Throw exception if the expression is
1796         empty.
1797
1798 2018-10-03  Tom Tromey  <tom@tromey.com>
1799
1800         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1801
1802 2018-10-03  Tom Tromey  <tom@tromey.com>
1803
1804         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1805
1806 2018-10-03  Tom Tromey  <tom@tromey.com>
1807
1808         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1809         unsigned.
1810
1811 2018-10-03  Tom Tromey  <tom@tromey.com>
1812
1813         * findvar.c (extract_integer): Do work in an unsigned type.
1814
1815 2018-10-03  Tom Tromey  <tom@tromey.com>
1816
1817         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1818         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1819         base type.
1820         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1821         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1822         type.
1823         * c-lang.h (enum c_string_type_values): Use unsigned as base
1824         type.
1825         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1826
1827 2018-10-03  Tom Tromey  <tom@tromey.com>
1828
1829         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1830         <~dwarf2_frame_state_reg_info>: Update.
1831         <dwarf2_frame_state_reg_info>: Update.
1832         <alloc_regs>: Add assertion.  Update.
1833         <reg>: Now a std::vector.
1834         <num_regs>: Remove.
1835         <swap>: Update.
1836         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1837         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1838
1839 2018-10-03  Tom Tromey  <tom@tromey.com>
1840
1841         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1842
1843 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1844
1845         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1846
1847 2018-10-02  Tom Tromey  <tom@tromey.com>
1848
1849         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1850
1851 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
1852
1853         * NEWS: Mention changed commands.
1854         * ser-uds.c: New file.
1855         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1856         * configure: Regenerate.
1857         * Makefile.in: Add new file.
1858         * serial.c (serial_open): Check if filename is a socket
1859         and lookup the appropriate interface accordingly.
1860
1861 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1862
1863         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1864         define.
1865         (AARCH64_EXTRA_MAGIC): Likewise.
1866         (AARCH64_FPSIMD_MAGIC): Likewise.
1867         (AARCH64_SVE_MAGIC): Likewise.
1868         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1869         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1870         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1871         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1872         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1873         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1874         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1875         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1876         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1877         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1878         (read_aarch64_ctx): Add function.
1879         (aarch64_linux_sigframe_init): Detect FP registers.
1880
1881 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1882
1883         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1884         (AARCH64_D0_REGNUM): Likewise.
1885         (AARCH64_S0_REGNUM): Likewise.
1886         (AARCH64_H0_REGNUM): Likewise.
1887         (AARCH64_B0_REGNUM): Likewise.
1888         (AARCH64_SVE_V0_REGNUM): Likewise.
1889         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1890         (AARCH64_D0_REGNUM): Likewise.
1891         (AARCH64_S0_REGNUM): Likewise.
1892         (AARCH64_H0_REGNUM): Likewise.
1893         (AARCH64_B0_REGNUM): Likewise.
1894         (AARCH64_SVE_V0_REGNUM): Likewise.
1895
1896 2018-10-01  Gary Benson <gbenson@redhat.com>
1897
1898         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1899         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1900         prfpregset_t instead of gdb_prfpregset_t.
1901         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1902         * configure, config.in: Rebuild.
1903
1904 2018-10-01  Gary Benson <gbenson@redhat.com>
1905
1906         * common/gdb_proc_service.h: New file, factored out from...
1907         * gdb_proc_service.h: Moved common code to the above file.
1908         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1909
1910 2018-10-01  Gary Benson <gbenson@redhat.com>
1911
1912         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1913         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1914
1915 2018-10-01  Gary Benson <gbenson@redhat.com>
1916
1917         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1918         (AC_CHECK_HEADERS): Check for linux/elf.h.
1919         * configure, config.in: Rebuild.
1920         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1921         doesn't define elf_fpregset_t.
1922
1923 2018-10-01  Gary Benson <gbenson@redhat.com>
1924
1925         * gdb_proc_service.h: Whitespace change.
1926
1927 2018-10-01  Tom Tromey  <tom@tromey.com>
1928
1929         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1930         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1931         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1932
1933 2018-10-01  Tom Tromey  <tom@tromey.com>
1934
1935         * README: Minor change.
1936
1937 2018-09-30  Pedro Alves  <palves@redhat.com>
1938
1939         * darwin-nat-info.c (darwin_debug_regions_recurse)
1940         (info_mach_exceptions_command): Remove unused local variables.
1941         * darwin-nat.c (darwin_decode_notify_message)
1942         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1943         (darwin_stop_inferior, darwin_setup_exceptions)
1944         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1945         (darwin_nat_target::attach, darwin_nat_target::detach)
1946         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1947         local variables.
1948         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1949         variables.
1950
1951 2018-09-29  Tom Tromey  <tom@tromey.com>
1952
1953         * README: Remove some leftover text.
1954
1955 2018-09-29  Tom Tromey  <tom@tromey.com>
1956
1957         * PROBLEMS: Rewrite.
1958         * README: Update.
1959
1960 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1961
1962         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1963         case with explicit breakpoint kind.
1964         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1965         'additional_info' and related logic.
1966         (riscv_debug_breakpoints): New variable.
1967         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1968         instruction to determine the breakpoint kind.
1969         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1970         flag.  Update description of 'set/show riscv
1971         use-compressed-breakpoints' flag.
1972
1973 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1974
1975         (NEWS): Mention changes to frame related commands.
1976         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1977         (add_prefix_cmd_suppress_notification): New function.
1978         (add_com_suppress_notification): Call
1979         add_cmd_suppress_notification.
1980         * command.h (add_cmd_suppress_notification): Declare.
1981         (add_prefix_cmd_suppress_notification): Declare.
1982         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1983         (parse_frame_specification): Moved from stack.c, with
1984         simplification to handle a single argument.
1985         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1986         switch to the selected frame.  Add a header comment.
1987         * stack.c: Remove 'safe-ctype.h' include.
1988         (find_frame_for_function): Add declaration.
1989         (find_frame_for_address): New function.
1990         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1991         (frame_selection_by_function_completer): New function.
1992         (info_frame_command): Rename to...
1993         (info_frame_command_core): ...this, and update parameter types.
1994         (select_frame_command): Rename to...
1995         (select_frame_command_core): ...this, and update parameter types.
1996         (frame_command): Rename to...
1997         (frame_command_core): ...this, and update parameter types.
1998         (class frame_command_helper): New class to wrap implementations of
1999         frame related sub-commands.
2000         (frame_apply_cmd_list): New static global.
2001         (frame_cmd_list): Make static.
2002         (select_frame_cmd_list): New global for sub-commands.
2003         (info_frame_cmd_list): New global for sub-commands.
2004         (_initialize_stack): Register sub-commands for 'frame',
2005         'select-frame', and 'info frame'.  Update 'frame apply' commands
2006         to use frame_apply_cmd_list.  Move function local static
2007         frame_apply_list to file static frame_apply_cmd_list for
2008         consistency.
2009         * stack.h (select_frame_command): Delete declarationn.
2010         (select_frame_for_mi): Declare new function.
2011
2012 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2013
2014         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2015         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2016         and NOP.
2017
2018 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2019
2020         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2021
2022 2018-09-26  Tom Tromey  <tom@tromey.com>
2023
2024         * valops.c (auto_abandon): Remove dead code.
2025
2026 2018-09-26  Tom Tromey  <tom@tromey.com>
2027
2028         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2029
2030 2018-09-24  Tom Tromey  <tom@tromey.com>
2031
2032         * common/pathstuff.c (get_standard_cache_dir): Make
2033         "xdg_cache_home" and "home" const.
2034         * top.c (init_history): Make "tmpenv" const.
2035         * main.c (get_init_files): Make "homedir" const.
2036
2037 2018-09-23  Tom Tromey  <tom@tromey.com>
2038
2039         PR python/18852:
2040         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2041
2042 2018-09-23  Tom Tromey  <tom@tromey.com>
2043
2044         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2045         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2046         * python/python-internal.h (gdbpy_handle_exception): Declare.
2047         * python/py-utils.c (gdbpy_handle_exception): New function.
2048
2049 2018-09-23  Tom Tromey  <tom@tromey.com>
2050
2051         PR python/17284:
2052         * python/py-type.c (typy_template_argument): Check for negative
2053         argument number.
2054
2055 2018-09-23  Tom Tromey  <tom@tromey.com>
2056
2057         PR python/14062:
2058         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2059
2060 2018-09-23  Tom Tromey  <tom@tromey.com>
2061
2062         PR python/18170:
2063         * python/py-value.c (valpy_int): Allow conversion from pointer
2064         type.
2065
2066 2018-09-23  Tom Tromey  <tom@tromey.com>
2067
2068         PR python/20126:
2069         * python/py-value.c (valpy_int): Respect type sign.
2070
2071 2018-09-23  Tom Tromey  <tom@tromey.com>
2072
2073         PR python/18352;
2074         * python/py-value.c (valpy_float): Allow conversions from int or
2075         char.
2076         (valpy_int, valpy_long): Allow conversions from float.
2077
2078 2018-09-23  Tom Tromey  <tom@tromey.com>
2079
2080         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2081         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2082
2083 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2084
2085         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2086         __sighndlr.
2087         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2088
2089 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2090
2091         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2092         target_terminal::ours().
2093
2094 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2095
2096         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2097         of vl to ULONGEST.
2098
2099 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2100
2101         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2102         redundant condition.
2103
2104 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2105
2106         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2107
2108         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2109         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2110         * sol-thread.c (ps_pdmodel): Don't guard definition.
2111
2112         * procfs.c: Fix formatting.
2113
2114         * procfs.c (sysset_t_alloc): Remove.
2115         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2116         (procfs_debug_inferior): Likewise.
2117         (procfs_set_exec_trap): Likewise.
2118         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2119         (proc_set_traced_sysexit): Likewise.
2120
2121         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2122         (dead_procinfo): Likewise.
2123         (proc_warn): Likewise.
2124         (proc_error): Likewise.
2125         (proc_get_LDT_entry): Likewise.
2126         (do_attach): Likewise.
2127         (procfs_target::pid_to_str): Likewise.
2128         (iterate_over_mappings): Likewise.
2129
2130         * procfs.c (create_procinfo): Fix ARI warning.
2131         (proc_get_status): Likewise.
2132         (proc_stop_process): Likewise.
2133         (proc_run_process): Likewise.
2134         (proc_kill): Likewise.
2135         (proc_get_LDT_entry): Likewise.
2136         (procfs_find_LDT_entry): Likewise.
2137         (proc_update_threads): Likewise.
2138         (proc_iterate_over_threads): Likewise.
2139         (do_attach): Likewise.
2140         (procfs_xfer_memory): Likewise.
2141         (invalidate_cache): Likewise.
2142         (procfs_target::resume): Likewise.
2143         (procfs_init_inferior): Likewise.
2144         (procfs_set_exec_trap): Likewise.
2145         (procfs_target::thread_alive): Likewise.
2146         (procfs_target::pid_to_exec_file): Likewise.
2147         (iterate_over_mappings): Likewise.
2148         (procfs_target::make_corefile_notes): Likewise.
2149         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2150
2151         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2152         (procfs_find_LDT_entry): Likewise.
2153         * sol-thread.c (ps_lgetLDT): Likewise.
2154
2155 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2156
2157         PR tdep/17903
2158         * procfs.c (procfs_target): Declare pid_to_exec_file.
2159         (procfs_target::pid_to_exec_file): New.
2160
2161 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2162
2163         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2164         renaming.
2165         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2166         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2167
2168 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2169
2170         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2171         (supply_fpregset, fill_fpregset): Move ...
2172         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2173         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2174         Remove references to ioctl-based procfs.
2175         Include <sys/reg.h>.
2176         Remove PR_MODEL_NATIVE guards.
2177         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2178         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2179
2180 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2181
2182         PR gdb/20981:
2183         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2184         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2185         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2186
2187 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2188
2189         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2190         (fbsd_print_sockaddr_in6): Likewise.
2191
2192 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2193             Chris January  <chris.january@arm.com>
2194
2195         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2196         (evaluate_subexp_standard): Return a dummy type when
2197         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2198         OP_F77_UNDETERMINED_ARGLIST case.
2199         * expression.h (enum noside): Update comment.
2200
2201 2018-09-19  George Vasick <george.vasick@oracle.com>
2202
2203         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2204
2205 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2206             April Chin <april.chin@oracle.com>
2207             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2208
2209         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2210         uint_t lwpid_t.
2211         (create_procinfo): Print pids in /proc without leading zeros.
2212
2213 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2214
2215         * nios2-tdep.c (nios2_gcc_target_options): New.
2216         (nios2_gdb_arch_init): Install new hook.
2217
2218 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2219
2220         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2221         New file.
2222         * update-gnulib.sh: Apply patch.
2223         * configure: Re-generate.
2224
2225 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2226
2227         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2228         description.  Make "info proc" command descriptions more
2229         consistent.
2230
2231 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2232
2233         * NEWS: Mention 'info proc files' command.
2234
2235 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2236
2237         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2238         descriptors for IP_FILES and IP_ALL.
2239
2240 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2241
2242         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2243         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2244         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2245         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2246         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2247         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2248         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2249         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2250         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2251         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2252         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2253         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2254         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2255         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2256         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2257         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2258         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2259         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2260         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2261         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2262         (struct fbsd_sockaddr_un): New types.
2263         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2264         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2265         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2266         (fbsd_core_info_proc_files): New functions.
2267         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2268         IP_ALL.
2269         * fbsd-tdep.h (fbsd_info_proc_files_header)
2270         (fbsd_info_proc_files_entry): New.
2271
2272 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2273
2274         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2275         * infcmd.c (info_proc_cmd_files): New function.
2276         (_initialize_infcmd): Register 'info proc files' command.
2277
2278 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2279
2280         * gnulib/aclocal-m4-deps.mk: Re-generate.
2281         * gnulib/aclocal.m4: Re-generate.
2282         * gnulib/config.in: Re-generate.
2283         * gnulib/configure: Re-generate.
2284         * gnulib/import/Makefile.am: Re-generate.
2285         * gnulib/import/Makefile.in: Re-generate.
2286         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2287         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2288         * gnulib/import/arpa_inet.in.h: New file.
2289         * gnulib/import/inet_ntop.c: New file.
2290         * gnulib/import/m4/arpa_inet_h.m4: New file.
2291         * gnulib/import/m4/inet_ntop.m4: New file.
2292         * gnulib/import/m4/netinet_in_h.m4: New file.
2293         * gnulib/import/m4/socklen.m4: New file.
2294         * gnulib/import/m4/sockpfaf.m4: New file.
2295         * gnulib/import/m4/stdalign.m4: New file.
2296         * gnulib/import/m4/sys_uio_h.m4: New file.
2297         * gnulib/import/netinet_in.in.h: New file.
2298         * gnulib/import/stdalign.in.h: New file.
2299         * gnulib/import/sys_socket.c: New file.
2300         * gnulib/import/sys_socket.in.h: New file.
2301         * gnulib/import/sys_uio.in.h: New file.
2302         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2303         module.
2304
2305 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2306
2307         * gnulib/aclocal-m4-deps.mk: New file.
2308         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2309         deterministically.
2310
2311 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2312
2313         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2314         KVE_PATH.
2315
2316 2018-09-18  Tom Tromey  <tom@tromey.com>
2317
2318         * compile/compile-object-load.c (struct
2319         link_hash_table_cleanup_data): Add constructor and destructor.
2320         Use DISABLE_COPY_AND_ASSIGN.
2321         (~link_hash_table_cleanup_data): Rename from
2322         link_hash_table_free.  Now a destructor.
2323         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2324
2325 2018-09-18  Tom Tromey  <tom@tromey.com>
2326
2327         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2328         * compile/compile-object-load.c (struct munmap_list): Move to
2329         header file.
2330         (munmap_list::add): Rename from munmap_list_add; rewrite.
2331         (munmap_list::~munmap_list): Rename from munmap_list_free.
2332         (munmap_listp_free_cleanup): Remove.
2333         (compile_object_load): Update.
2334         * compile/compile-object-load.h (struct munmap_list): Move from
2335         compile-object-load.c.  Rewrite.
2336
2337 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2338
2339         * aarch64-tdep.c (pass_in_v): Use register size.
2340         (aarch64_extract_return_value): Likewise.
2341         (aarch64_store_return_value): Likewise.
2342
2343 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2344
2345         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2346         rlim_t.
2347
2348 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2349
2350         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2351         Fix short help line.
2352
2353 2018-09-17  Tom Tromey  <tom@tromey.com>
2354
2355         PR python/20445:
2356         * configure: Rebuild.
2357         * configure.ac: Conditionally use -DNDEBUG for Python.
2358
2359 2018-09-17  Tom Tromey  <tom@tromey.com>
2360
2361         * configure: Rebuild.
2362         * configure.ac: Use gmp as a library dependency when checking for
2363         mpfr.
2364
2365 2018-09-17  Pedro Alves  <palves@redhat.com>
2366
2367         * python/py-inferior.c (find_inferior_object): Delete.
2368
2369 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2370
2371         * compile/compile-cplus-types.c
2372         (compile_cplus_instance::enter_scope): Don't use new_scope after
2373         std::move.
2374
2375 2018-09-17  Tom Tromey  <tom@tromey.com>
2376
2377         * common/pathstuff.c (get_standard_cache_dir): Use
2378         ~/Library/Caches on macOS.
2379         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2380
2381 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2382
2383         PR python/23669
2384         * breakpoint.c (commands_cmd_element): New.
2385         (_initialize_breakpoint): Assign commands_cmd_element.
2386         * breakpoint.h (commands_cmd_element): New.
2387         * cli/cli-script.c (while_cmd_element, if_command,
2388         define_cmd_element): New.
2389         (command_name_equals): Remove.
2390         (process_next_line): Compare commands by pointer, not by name.
2391         (_initialize_cli_script): Assign the various cmd_list_element
2392         variables.
2393         * compile/compile.c (compile_cmd_element): New.
2394         (_initialize_compile): Assign compile_cmd_element.
2395         * compile/compile.h (compile_cmd_element): New.
2396         * guile/guile.c (guile_cmd_element): New.
2397         (install_gdb_commands): Assign guile_cmd_element.
2398         * guile/guile.h (guile_cmd_element): New.
2399         * python/python.c (python_cmd_element): New.
2400         (_initialize_python): Assign python_cmd_element.
2401         * python/python.h (python_cmd_element): New.
2402         * tracepoint.c (while_stepping_cmd_element): New.
2403         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2404         * tracepoint.h (while_stepping_cmd_element): New.
2405
2406 2018-09-17  Tom Tromey  <tom@tromey.com>
2407
2408         * infrun.c (save_infcall_suspend_state): Return
2409         infcall_suspend_state_up.
2410         (save_infcall_control_state): Return infcall_control_state_up.
2411         * inferior.h (save_infcall_suspend_state)
2412         (save_infcall_control_state): Declare later.  Return unique
2413         pointers.
2414
2415 2018-09-17  Tom Tromey  <tom@tromey.com>
2416
2417         * infrun.c (struct stop_context): Declare constructor,
2418         destructor, "changed" method.
2419         (stop_context::stop_context): Rename from save_stop_context.
2420         (stop_context::~stop_context): Rename from
2421         release_stop_context_cleanup.
2422         (normal_stop): Update.
2423         (stop_context::changed): Rename from stop_context_changed.  Return
2424         bool.
2425
2426 2018-09-17  Tom Tromey  <tom@tromey.com>
2427
2428         * inferior.h (struct infcall_suspend_state_deleter): New.
2429         (infcall_suspend_state_up): New typedef.
2430         (struct infcall_control_state_deleter): New.
2431         (infcall_control_state_up): New typedef.
2432         (make_cleanup_restore_infcall_suspend_state)
2433         (make_cleanup_restore_infcall_control_state): Don't declare.
2434         * infcall.c (call_function_by_hand_dummy): Update.
2435         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2436         (make_cleanup_restore_infcall_suspend_state): Remove.
2437         (do_restore_infcall_control_state_cleanup)
2438         (make_cleanup_restore_infcall_control_state): Remove.
2439
2440 2018-09-17  Tom Tromey  <tom@tromey.com>
2441
2442         * gdbthread.h (struct thread_control_state): Add initializer.
2443         (class thread_info) <control>: Remove initializer.
2444         * inferior.h (struct inferior_control_state): Add initializer.
2445         (class inferior) <control>: Remove initializer.
2446         (exit_inferior_1): Update.
2447         * infrun.c (struct infcall_control_state): Add constructors.
2448         (save_infcall_control_state): Use new.
2449         (restore_infcall_control_state, discard_infcall_control_state):
2450         Use delete.
2451
2452 2018-09-17  Tom Tromey  <tom@tromey.com>
2453
2454         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2455         unique_ptr.
2456         <siginfo_data>: Now a unique_xmalloc_ptr.
2457         (save_infcall_suspend_state, restore_infcall_suspend_state)
2458         (discard_infcall_suspend_state)
2459         (get_infcall_suspend_state_regcache): Update.
2460
2461 2018-09-17  Tom Tromey  <tom@tromey.com>
2462
2463         * gdbthread.h (struct thread_suspend_state): Add initializers.
2464         (class thread_info) <suspend>: Remove initializer.
2465         * infrun.c (struct infcall_suspend_state): Add initializers.
2466         (save_infcall_suspend_state): Use new.
2467         (discard_infcall_suspend_state): Use delete.
2468
2469 2018-09-16  Tom Tromey  <tom@tromey.com>
2470
2471         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2472         Remove.
2473         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2474         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2475         (py_varobj_iter_new): Likewise.
2476         (py_varobj_get_iterator): Use gdbpy_ref.
2477
2478 2018-09-16  Tom Tromey  <tom@tromey.com>
2479
2480         * python/py-threadevent.c (py_get_event_thread): Simplify.
2481         * python/py-inferior.c (infpy_thread_from_thread_handle):
2482         Return immediately after calling thread_to_thread_object.  Use
2483         Py_RETURN_NONE.
2484         (thread_to_thread_object): Set the exception on a NULL return.
2485
2486 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2487
2488         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2489
2490 2018-09-16  Tom Tromey  <tom@tromey.com>
2491
2492         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2493         Remove.
2494
2495 2018-09-16  Tom Tromey  <tom@tromey.com>
2496
2497         * python/python-internal.h (thread_to_thread_object): Change
2498         return type.
2499         * python/py-inferior.c (thread_to_thread_object): Return a new
2500         reference.
2501         (infpy_thread_from_thread_handle): Update.
2502         * python/py-infthread.c (gdbpy_selected_thread): Update.
2503         * python/py-stopevent.c (create_stop_event_object): Update.
2504         * python/py-threadevent.c (py_get_event_thread): Return a new
2505         reference.
2506         (py_get_event_thread): Update.
2507         * python/py-event.h (py_get_event_thread): Change return type.
2508         * python/py-continueevent.c (create_continue_event_object):
2509         Update.
2510
2511 2018-09-16  Tom Tromey  <tom@tromey.com>
2512
2513         * python/py-progspace.c (pspy_get_objfiles): Update.
2514         * python/python-internal.h (objfile_to_objfile_object): Change
2515         return type.
2516         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2517         Update.
2518         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2519         Update.
2520         * python/python.c (gdbpy_get_current_objfile): Update.
2521         (gdbpy_objfiles): Update.
2522         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2523         Update.
2524         (objfile_to_objfile_object): Return a new reference.
2525         * python/py-symtab.c (stpy_get_objfile): Update.
2526         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2527         Update.
2528
2529 2018-09-16  Tom Tromey  <tom@tromey.com>
2530
2531         * python/py-inferior.c (infpy_get_progspace): Update.
2532         * python/python-internal.h (pspace_to_pspace_object): Change
2533         return type.
2534         * python/py-newobjfileevent.c
2535         (create_clear_objfiles_event_object): Update.
2536         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2537         Update.
2538         * python/python.c (gdbpy_get_current_progspace): Update.
2539         (gdbpy_progspaces): Update.
2540         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2541         reference.
2542         * python/py-objfile.c (objfpy_get_progspace): Update.
2543         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2544         Update.
2545
2546 2018-09-16  Tom Tromey  <tom@tromey.com>
2547
2548         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2549         (solib_name, block_for_pc, find_pc_line): New functions.
2550         (execute_unwinders): Update.
2551         * python/py-block.c (gdbpy_block_for_pc): Remove.
2552         * python/py-inferior.c (infpy_get_progspace): New function.
2553         (inferior_object_getset) <progspace>: Add.
2554         * python/py-progspace.c (pspy_objfiles): Rewrite.
2555         (pspy_solib_name, pspy_block_for_pc)
2556         (pspy_find_pc_line, pspy_is_valid): New functions.
2557         (progspace_object_methods): Add entries for solib_name,
2558         block_for_pc, find_pc_line, is_valid.
2559         * python/python-internal.h (gdbpy_block_for_pc)
2560         (build_objfiles_list): Don't declare.
2561         * python/python.c: Don't include solib.h.
2562         (gdbpy_solib_name, gdbpy_find_pc_line)
2563         (gdbpy_get_current_progspace, build_objfiles_list)
2564         (gdbpy_objfiles): Remove.
2565         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2566         solib_name, find_pc_line>: Remove entries.
2567
2568 2018-09-16  Tom Tromey  <tom@tromey.com>
2569
2570         * top.c (new_ui_command): Use GNU style for metasyntactic
2571         variables.
2572         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2573         variables.
2574         * maint.c (maintenance_translate_address): Remove "<>" around
2575         text.
2576         * interps.c (interpreter_exec_cmd): Use GNU style for
2577         metasyntactic variables.
2578         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2579         metasyntactic variables.
2580         * tracepoint.c (tfind_range_command): Use GNU style for
2581         metasyntactic variables.
2582         (tfind_outside_command): Likewise.
2583         (_initialize_tracepoint): Likewise.
2584         * remote.c (extended_remote_target::create_inferior): Use GNU
2585         style for metasyntactic variables.
2586         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2587         metasyntactic variables.
2588         (adi_assign_command): Likewise.
2589
2590 2018-09-16  Tom Tromey  <tom@tromey.com>
2591
2592         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2593         metasyntactic variables.  Print message if no disassembler options
2594         are available.
2595
2596 2018-09-15  Tom Tromey  <tom@tromey.com>
2597
2598         * infcmd.c (get_inferior_args): Return const char *.
2599         * inferior.h (get_inferior_args): Return type now const.
2600         * linux-tdep.c (linux_fill_prpsinfo): Update.
2601         * procfs.c (procfs_target::make_corefile_notes): Update.
2602
2603 2018-09-07  Tom Tromey  <tom@tromey.com>
2604
2605         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2606         inside the TRY.
2607
2608 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2609
2610         * nios2-tdep.c (nios2_type_align): New.
2611         (nios2_gdb_arch_init): Install type_align hook.
2612
2613 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2614
2615         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2616         type that is neither object file owned, nor gdbarch owned.
2617         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2618         gdbarch is non-NULL.
2619         (alloc_type_instance): Allocate non-objfile owned types on the
2620         gdbarch obstack.
2621         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2622         using TYPE_ALLOC to ensure memory is allocated on the correct
2623         obstack.
2624         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2625         obstack, or the gdbarch obstack.
2626         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2627
2628 2018-09-14  Tom Tromey  <tom@tromey.com>
2629
2630         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2631         block.
2632
2633 2018-09-14  Tom Tromey  <tom@tromey.com>
2634
2635         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2636
2637 2018-09-13  Tom Tromey  <tom@tromey.com>
2638
2639         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2640         static.
2641
2642 2018-09-13  Tom Tromey  <tom@tromey.com>
2643
2644         * exec.c (try_open_exec_file): Use std::string.
2645
2646 2018-09-13  Tom Tromey  <tom@tromey.com>
2647
2648         * utils.h (gdb_bfd_errmsg): Return std::string.
2649         * exec.c (exec_file_attach): Update.
2650         * compile/compile-object-load.c (compile_object_load): Update.
2651         * utils.c (gdb_bfd_errmsg): Return std::string.
2652
2653 2018-09-13  Tom Tromey  <tom@tromey.com>
2654
2655         * procfs.c (struct procinfo_deleter): New.
2656         (procinfo_up): New typedef.
2657         (do_destroy_procinfo_cleanup): Remove.
2658         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2659
2660 2018-09-13  Tom Tromey  <tom@tromey.com>
2661
2662         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2663
2664 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2665 2018-09-13  Tom Tromey  <tom@tromey.com>
2666
2667         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2668         (pspy_get_objfiles): New function.
2669         (progspace_object_methods): New.
2670         (pspace_object_type): Add tp_methods callback.
2671         * python/python-internal.h (build_objfiles_list): New
2672         declaration.
2673         * python/python.c (build_objfiles_list): New function.
2674         (gdbpy_objfiles): Implement using build_objfiles_list.
2675         * NEWS: Mention the Progspace.objfiles method.
2676
2677 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2678
2679         * python/py-inferior.c (infpy_get_progspace): New function.
2680         (inferior_object_getset): Add progspace property.
2681         * NEWS: Mention the new property.
2682
2683 2018-09-13  Tom Tromey  <tom@tromey.com>
2684
2685         PR rust/23650:
2686         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2687
2688 2018-09-13  Tom Tromey  <tom@tromey.com>
2689
2690         PR rust/23626:
2691         * rust-lang.c (rust_enum_variant): Now static.
2692         (rust_empty_enum_p): New function.
2693         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2694         Handle empty enum.
2695
2696 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2697
2698         * python/py-inferior.c (infpy_repr): New.
2699         (inferior_object_type): Register infpy_repr.
2700         * python/py-objfile.c (objfpy_repr): New.
2701         (objfile_object_type): Register objfpy_repr.
2702
2703 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2704
2705         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2706
2707 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2708
2709         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2710         typo.
2711
2712 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2713
2714         * common/common-utils.c: Don't include '<sys/stat.h>'.
2715         (is_regular_file): Move to...
2716         * common/filestuff.c (is_regular_file): ... here.
2717         * common/common-utils.h (is_regular_file): Move to...
2718         * common/filestuff.h (is_regular_file): ... here.
2719
2720 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2721
2722         * skip.c (debug_skip): New variable.
2723         (skiplist_entry::do_skip_file_p): Add debug output.
2724         (skiplist_entry::do_skip_gfile_p): Likewise.
2725         (skiplist_entry::skip_function_p): Likewise.
2726         (_initialize_step_skip): Create debug command.
2727         * NEWS: Mention set/show debug skip.
2728
2729 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2730
2731         * darwin-nat.c (should_disable_startup_with_shell):
2732         New function.
2733         (darwin_nat_target::create_inferior): Add call.
2734
2735 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2736
2737         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2738         inf_port, msg_state>: Initialize.
2739         (struct darwin_thread_info) <signaled, single_step>: Change
2740         type and initialize.
2741         (struct darwin_thread_info) <event>: Initialize.
2742
2743 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2744
2745         PR gdb/23555
2746         PR gdb/23558
2747         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2748         guesses.
2749
2750 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2751
2752         Revert:
2753         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2754
2755         PR gdb/23555
2756         PR gdb/23558
2757         * gnulib/aclocal.m4: Regenerate.
2758         * gnulib/config.in: Regenerate.
2759         * gnulib/configure: Regenerate.
2760         * gnulib/import/Makefile.am: Update.
2761         * gnulib/import/Makefile.in: Update.
2762         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2763         * gnulib/import/_Noreturn.h: ... this.
2764         * gnulib/import/alloca.in.h: Update.
2765         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2766         * gnulib/import/arg-nonnull.h: ... this.
2767         * gnulib/import/assure.h: Update.
2768         * gnulib/import/at-func.c: Update.
2769         * gnulib/import/basename-lgpl.c: Update.
2770         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2771         * gnulib/import/c++defs.h: ... this.
2772         * gnulib/import/canonicalize-lgpl.c: Update.
2773         * gnulib/import/cdefs.h: Update.
2774         * gnulib/import/chdir-long.c: Update.
2775         * gnulib/import/chdir-long.h: Update.
2776         * gnulib/import/cloexec.c: Update.
2777         * gnulib/import/cloexec.h: Update.
2778         * gnulib/import/close.c: Update.
2779         * gnulib/import/closedir.c: Update.
2780         * gnulib/import/config.charset: Update.
2781         * gnulib/import/dirent-private.h: Update.
2782         * gnulib/import/dirent.in.h: Update.
2783         * gnulib/import/dirfd.c: Update.
2784         * gnulib/import/dirname-lgpl.c: Update.
2785         * gnulib/import/dirname.h: Update.
2786         * gnulib/import/dosname.h: Update.
2787         * gnulib/import/dup-safer-flag.c: Update.
2788         * gnulib/import/dup-safer.c: Update.
2789         * gnulib/import/dup.c: Update.
2790         * gnulib/import/dup2.c: Update.
2791         * gnulib/import/errno.in.h: Update.
2792         * gnulib/import/error.c: Update.
2793         * gnulib/import/error.h: Update.
2794         * gnulib/import/exitfail.c: Update.
2795         * gnulib/import/exitfail.h: Update.
2796         * gnulib/import/extra/update-copyright: Update.
2797         * gnulib/import/fchdir.c: Update.
2798         * gnulib/import/fcntl.c: Update.
2799         * gnulib/import/fcntl.in.h: Update.
2800         * gnulib/import/fd-hook.c: Update.
2801         * gnulib/import/fd-hook.h: Update.
2802         * gnulib/import/fd-safer-flag.c: Update.
2803         * gnulib/import/fd-safer.c: Update.
2804         * gnulib/import/fdopendir.c: Update.
2805         * gnulib/import/filename.h: Update.
2806         * gnulib/import/filenamecat-lgpl.c: Update.
2807         * gnulib/import/filenamecat.h: Update.
2808         * gnulib/import/flexmember.h: Update.
2809         * gnulib/import/float+.h: Update.
2810         * gnulib/import/float.c: Update.
2811         * gnulib/import/float.in.h: Update.
2812         * gnulib/import/fnmatch.c: Update.
2813         * gnulib/import/fnmatch.in.h: Update.
2814         * gnulib/import/fnmatch_loop.c: Update.
2815         * gnulib/import/fpucw.h: Update.
2816         * gnulib/import/frexp.c: Update.
2817         * gnulib/import/frexpl.c: Update.
2818         * gnulib/import/fstat.c: Update.
2819         * gnulib/import/fstatat.c: Update.
2820         * gnulib/import/getcwd-lgpl.c: Update.
2821         * gnulib/import/getcwd.c: Update.
2822         * gnulib/import/getdtablesize.c: Update.
2823         * gnulib/import/getlogin_r.c: Update.
2824         * gnulib/import/getprogname.c: Update.
2825         * gnulib/import/getprogname.h: Update.
2826         * gnulib/import/gettext.h: Update.
2827         * gnulib/import/gettimeofday.c: Update.
2828         * gnulib/import/glob-libc.h: Update.
2829         * gnulib/import/glob.c: Update.
2830         * gnulib/import/glob.in.h: Update.
2831         * gnulib/import/glob_internal.h: Update.
2832         * gnulib/import/glob_pattern_p.c: Update.
2833         * gnulib/import/globfree.c: Update.
2834         * gnulib/import/hard-locale.c: Update.
2835         * gnulib/import/hard-locale.h: Update.
2836         * gnulib/import/intprops.h: Update.
2837         * gnulib/import/inttypes.in.h: Update.
2838         * gnulib/import/isnan.c: Update.
2839         * gnulib/import/isnand-nolibm.h: Update.
2840         * gnulib/import/isnand.c: Update.
2841         * gnulib/import/isnanl-nolibm.h: Update.
2842         * gnulib/import/isnanl.c: Update.
2843         * gnulib/import/itold.c: Update.
2844         * gnulib/import/libc-config.h: Update.
2845         * gnulib/import/limits.in.h: Update.
2846         * gnulib/import/localcharset.c: Update.
2847         * gnulib/import/localcharset.h: Update.
2848         * gnulib/import/localtime-buffer.c: Update.
2849         * gnulib/import/localtime-buffer.h: Update.
2850         * gnulib/import/lstat.c: Update.
2851         * gnulib/import/m4/00gnulib.m4: Update.
2852         * gnulib/import/m4/__inline.m4: Update.
2853         * gnulib/import/m4/absolute-header.m4: Update.
2854         * gnulib/import/m4/alloca.m4: Update.
2855         * gnulib/import/m4/builtin-expect.m4: Update.
2856         * gnulib/import/m4/canonicalize.m4: Update.
2857         * gnulib/import/m4/chdir-long.m4: Update.
2858         * gnulib/import/m4/close.m4: Update.
2859         * gnulib/import/m4/closedir.m4: Update.
2860         * gnulib/import/m4/configmake.m4: Update.
2861         * gnulib/import/m4/d-ino.m4: Update.
2862         * gnulib/import/m4/d-type.m4: Update.
2863         * gnulib/import/m4/dirent_h.m4: Update.
2864         * gnulib/import/m4/dirfd.m4: Update.
2865         * gnulib/import/m4/dirname.m4: Update.
2866         * gnulib/import/m4/double-slash-root.m4: Update.
2867         * gnulib/import/m4/dup.m4: Update.
2868         * gnulib/import/m4/dup2.m4: Update.
2869         * gnulib/import/m4/eealloc.m4: Update.
2870         * gnulib/import/m4/environ.m4: Update.
2871         * gnulib/import/m4/errno_h.m4: Update.
2872         * gnulib/import/m4/error.m4: Update.
2873         * gnulib/import/m4/exponentd.m4: Update.
2874         * gnulib/import/m4/exponentl.m4: Update.
2875         * gnulib/import/m4/extensions.m4: Update.
2876         * gnulib/import/m4/extern-inline.m4: Update.
2877         * gnulib/import/m4/fchdir.m4: Update.
2878         * gnulib/import/m4/fcntl-o.m4: Update.
2879         * gnulib/import/m4/fcntl.m4: Update.
2880         * gnulib/import/m4/fcntl_h.m4: Update.
2881         * gnulib/import/m4/fdopendir.m4: Update.
2882         * gnulib/import/m4/filenamecat.m4: Update.
2883         * gnulib/import/m4/flexmember.m4: Update.
2884         * gnulib/import/m4/float_h.m4: Update.
2885         * gnulib/import/m4/fnmatch.m4: Update.
2886         * gnulib/import/m4/fnmatch_h.m4: Update.
2887         * gnulib/import/m4/fpieee.m4: Update.
2888         * gnulib/import/m4/frexp.m4: Update.
2889         * gnulib/import/m4/frexpl.m4: Update.
2890         * gnulib/import/m4/fstat.m4: Update.
2891         * gnulib/import/m4/fstatat.m4: Update.
2892         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2893         * gnulib/import/m4/getcwd-path-max.m4: Update.
2894         * gnulib/import/m4/getcwd.m4: Update.
2895         * gnulib/import/m4/getdtablesize.m4: Update.
2896         * gnulib/import/m4/getlogin.m4: Update.
2897         * gnulib/import/m4/getlogin_r.m4: Update.
2898         * gnulib/import/m4/getpagesize.m4: Update.
2899         * gnulib/import/m4/getprogname.m4: Update.
2900         * gnulib/import/m4/gettimeofday.m4: Update.
2901         * gnulib/import/m4/glibc21.m4: Update.
2902         * gnulib/import/m4/glob.m4: Update.
2903         * gnulib/import/m4/glob_h.m4: Update.
2904         * gnulib/import/m4/gnulib-cache.m4: Update.
2905         * gnulib/import/m4/gnulib-common.m4: Update.
2906         * gnulib/import/m4/gnulib-comp.m4: Update.
2907         * gnulib/import/m4/gnulib-tool.m4: Update.
2908         * gnulib/import/m4/hard-locale.m4: Update.
2909         * gnulib/import/m4/include_next.m4: Update.
2910         * gnulib/import/m4/inttypes-pri.m4: Update.
2911         * gnulib/import/m4/inttypes.m4: Update.
2912         * gnulib/import/m4/isnand.m4: Update.
2913         * gnulib/import/m4/isnanl.m4: Update.
2914         * gnulib/import/m4/largefile.m4: Update.
2915         * gnulib/import/m4/limits-h.m4: Update.
2916         * gnulib/import/m4/localcharset.m4: Update.
2917         * gnulib/import/m4/locale-fr.m4: Update.
2918         * gnulib/import/m4/locale-ja.m4: Update.
2919         * gnulib/import/m4/locale-zh.m4: Update.
2920         * gnulib/import/m4/localtime-buffer.m4: Update.
2921         * gnulib/import/m4/longlong.m4: Update.
2922         * gnulib/import/m4/lstat.m4: Update.
2923         * gnulib/import/m4/malloc.m4: Update.
2924         * gnulib/import/m4/malloca.m4: Update.
2925         * gnulib/import/m4/math_h.m4: Update.
2926         * gnulib/import/m4/mbrtowc.m4: Update.
2927         * gnulib/import/m4/mbsinit.m4: Update.
2928         * gnulib/import/m4/mbsrtowcs.m4: Update.
2929         * gnulib/import/m4/mbstate_t.m4: Update.
2930         * gnulib/import/m4/memchr.m4: Update.
2931         * gnulib/import/m4/memmem.m4: Update.
2932         * gnulib/import/m4/mempcpy.m4: Update.
2933         * gnulib/import/m4/memrchr.m4: Update.
2934         * gnulib/import/m4/mkdir.m4: Update.
2935         * gnulib/import/m4/mkstemp.m4: Update.
2936         * gnulib/import/m4/mmap-anon.m4: Update.
2937         * gnulib/import/m4/mode_t.m4: Update.
2938         * gnulib/import/m4/msvc-inval.m4: Update.
2939         * gnulib/import/m4/msvc-nothrow.m4: Update.
2940         * gnulib/import/m4/multiarch.m4: Update.
2941         * gnulib/import/m4/nocrash.m4: Update.
2942         * gnulib/import/m4/off_t.m4: Update.
2943         * gnulib/import/m4/onceonly.m4: Update.
2944         * gnulib/import/m4/open-cloexec.m4: Update.
2945         * gnulib/import/m4/open.m4: Update.
2946         * gnulib/import/m4/openat.m4: Update.
2947         * gnulib/import/m4/opendir.m4: Update.
2948         * gnulib/import/m4/pathmax.m4: Update.
2949         * gnulib/import/m4/rawmemchr.m4: Update.
2950         * gnulib/import/m4/readdir.m4: Update.
2951         * gnulib/import/m4/readlink.m4: Update.
2952         * gnulib/import/m4/realloc.m4: Update.
2953         * gnulib/import/m4/rename.m4: Update.
2954         * gnulib/import/m4/rewinddir.m4: Update.
2955         * gnulib/import/m4/rmdir.m4: Update.
2956         * gnulib/import/m4/save-cwd.m4: Update.
2957         * gnulib/import/m4/secure_getenv.m4: Update.
2958         * gnulib/import/m4/setenv.m4: Update.
2959         * gnulib/import/m4/signal_h.m4: Update.
2960         * gnulib/import/m4/ssize_t.m4: Update.
2961         * gnulib/import/m4/stat-time.m4: Update.
2962         * gnulib/import/m4/stat.m4: Update.
2963         * gnulib/import/m4/std-gnu11.m4: Update.
2964         * gnulib/import/m4/stdbool.m4: Update.
2965         * gnulib/import/m4/stddef_h.m4: Update.
2966         * gnulib/import/m4/stdint.m4: Update.
2967         * gnulib/import/m4/stdio_h.m4: Update.
2968         * gnulib/import/m4/stdlib_h.m4: Update.
2969         * gnulib/import/m4/strchrnul.m4: Update.
2970         * gnulib/import/m4/strdup.m4: Update.
2971         * gnulib/import/m4/strerror.m4: Update.
2972         * gnulib/import/m4/string_h.m4: Update.
2973         * gnulib/import/m4/strstr.m4: Update.
2974         * gnulib/import/m4/strtok_r.m4: Update.
2975         * gnulib/import/m4/sys_socket_h.m4: Update.
2976         * gnulib/import/m4/sys_stat_h.m4: Update.
2977         * gnulib/import/m4/sys_time_h.m4: Update.
2978         * gnulib/import/m4/sys_types_h.m4: Update.
2979         * gnulib/import/m4/tempname.m4: Update.
2980         * gnulib/import/m4/time_h.m4: Update.
2981         * gnulib/import/m4/unistd-safer.m4: Update.
2982         * gnulib/import/m4/unistd_h.m4: Update.
2983         * gnulib/import/m4/warn-on-use.m4: Update.
2984         * gnulib/import/m4/wchar_h.m4: Update.
2985         * gnulib/import/m4/wchar_t.m4: Update.
2986         * gnulib/import/m4/wctype_h.m4: Update.
2987         * gnulib/import/m4/wint_t.m4: Update.
2988         * gnulib/import/malloc.c: Update.
2989         * gnulib/import/malloc/scratch_buffer.h: Update.
2990         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2991         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2992         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2993         * gnulib/import/malloca.c: Update.
2994         * gnulib/import/malloca.h: Update.
2995         * gnulib/import/malloca.valgrind: Update.
2996         * gnulib/import/math.in.h: Update.
2997         * gnulib/import/mbrtowc.c: Update.
2998         * gnulib/import/mbsinit.c: Update.
2999         * gnulib/import/mbsrtowcs-impl.h: Update.
3000         * gnulib/import/mbsrtowcs-state.c: Update.
3001         * gnulib/import/mbsrtowcs.c: Update.
3002         * gnulib/import/memchr.c: Update.
3003         * gnulib/import/memmem.c: Update.
3004         * gnulib/import/mempcpy.c: Update.
3005         * gnulib/import/memrchr.c: Update.
3006         * gnulib/import/mkdir.c: Update.
3007         * gnulib/import/mkstemp.c: Update.
3008         * gnulib/import/msvc-inval.c: Update.
3009         * gnulib/import/msvc-inval.h: Update.
3010         * gnulib/import/msvc-nothrow.c: Update.
3011         * gnulib/import/msvc-nothrow.h: Update.
3012         * gnulib/import/open.c: Update.
3013         * gnulib/import/openat-die.c: Update.
3014         * gnulib/import/openat-priv.h: Update.
3015         * gnulib/import/openat-proc.c: Update.
3016         * gnulib/import/openat.c: Update.
3017         * gnulib/import/openat.h: Update.
3018         * gnulib/import/opendir.c: Update.
3019         * gnulib/import/pathmax.h: Update.
3020         * gnulib/import/pipe-safer.c: Update.
3021         * gnulib/import/rawmemchr.c: Update.
3022         * gnulib/import/readdir.c: Update.
3023         * gnulib/import/readlink.c: Update.
3024         * gnulib/import/realloc.c: Update.
3025         * gnulib/import/ref-add.sin: Update.
3026         * gnulib/import/ref-del.sin: Update.
3027         * gnulib/import/rename.c: Update.
3028         * gnulib/import/rewinddir.c: Update.
3029         * gnulib/import/rmdir.c: Update.
3030         * gnulib/import/same-inode.h: Update.
3031         * gnulib/import/save-cwd.c: Update.
3032         * gnulib/import/save-cwd.h: Update.
3033         * gnulib/import/scratch_buffer.h: Update.
3034         * gnulib/import/secure_getenv.c: Update.
3035         * gnulib/import/setenv.c: Update.
3036         * gnulib/import/signal.in.h: Update.
3037         * gnulib/import/stat-time.c: Update.
3038         * gnulib/import/stat-time.h: Update.
3039         * gnulib/import/stat-w32.c: Update.
3040         * gnulib/import/stat-w32.h: Update.
3041         * gnulib/import/stat.c: Update.
3042         * gnulib/import/stdbool.in.h: Update.
3043         * gnulib/import/stddef.in.h: Update.
3044         * gnulib/import/stdint.in.h: Update.
3045         * gnulib/import/stdio.in.h: Update.
3046         * gnulib/import/stdlib.in.h: Update.
3047         * gnulib/import/str-two-way.h: Update.
3048         * gnulib/import/strchrnul.c: Update.
3049         * gnulib/import/strdup.c: Update.
3050         * gnulib/import/streq.h: Update.
3051         * gnulib/import/strerror-override.c: Update.
3052         * gnulib/import/strerror-override.h: Update.
3053         * gnulib/import/strerror.c: Update.
3054         * gnulib/import/string.in.h: Update.
3055         * gnulib/import/stripslash.c: Update.
3056         * gnulib/import/strnlen1.c: Update.
3057         * gnulib/import/strnlen1.h: Update.
3058         * gnulib/import/strstr.c: Update.
3059         * gnulib/import/strtok_r.c: Update.
3060         * gnulib/import/sys_stat.in.h: Update.
3061         * gnulib/import/sys_time.in.h: Update.
3062         * gnulib/import/sys_types.in.h: Update.
3063         * gnulib/import/tempname.c: Update.
3064         * gnulib/import/tempname.h: Update.
3065         * gnulib/import/time.in.h: Update.
3066         * gnulib/import/unistd--.h: Update.
3067         * gnulib/import/unistd-safer.h: Update.
3068         * gnulib/import/unistd.in.h: Update.
3069         * gnulib/import/unsetenv.c: Update.
3070         * gnulib/import/verify.h: Update.
3071         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3072         * gnulib/import/wchar.in.h: Update.
3073         * gnulib/import/wctype.in.h: Update.
3074         * gnulib/import/xalloc-oversized.h: Update.
3075         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3076         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3077
3078 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3079
3080         * record-btrace.c (get_thread_current_frame): Remove
3081         old_inferior_ptid.
3082
3083 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3084
3085         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3086         with check_tag to 1 if and only if the type is tagged and the
3087         component being searched cannot been found in the current
3088         view. Otherwise, always call ada_to_fixed_type with
3089         check_tag to 0.
3090
3091 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3092
3093         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3094         declaration.
3095         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3096         * ada-varobj.c (ada_varobj_get_number_of_children,
3097         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3098
3099 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3100
3101         * ada-valprint.c (ada_value_print): Use type instead of
3102         enclosing type.
3103
3104 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3105
3106         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3107         an array of access to unconstrained array.
3108
3109 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3110
3111         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3112         (ada_check_typedef): Use it.
3113
3114 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3115
3116         * ada-varobj.c (ada_varobj_describe_struct_child)
3117         (ada_varobj_describe_child): Handle union case like struct one.
3118
3119 2018-09-10  Tom Tromey  <tom@tromey.com>
3120
3121         PR python/18380:
3122         * python/python.c (_initialize_python): Make example in "python"
3123         help work in Python 3.
3124
3125 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3126
3127         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3128         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3129         $(EXEEXT) to the script, as it is not a program.
3130
3131 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3132
3133         * python/py-prettyprint.c (pretty_print_one_value): Return
3134         gdbpy_ref<>.
3135         (print_string_repr): Adjust.
3136         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3137         * python/python-internal.h (apply_varobj_pretty_printer): Return
3138         gdbpy_ref<>.
3139         * varobj.c (varobj_value_get_print_value): Adjust.
3140
3141 2018-09-08  Tom Tromey  <tom@tromey.com>
3142
3143         PR python/16047:
3144         * python/py-prettyprint.c (pretty_print_one_value): Check for
3145         to_string method.
3146
3147 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3148
3149         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3150         replace_operator_with_call.
3151
3152 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3153
3154         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3155
3156 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3157
3158         * ada-typeprint.c (print_range): Print the bounds using TYPE
3159         rather than its TYPE_TARGET_TYPE.
3160
3161 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3162
3163         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3164         call to ada_to_fixed_value_create.
3165
3166 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3167
3168         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3169
3170 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3171
3172         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3173         by calls to error.
3174
3175 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3176
3177         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3178         Move update of loop variable "fi".
3179
3180 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3181
3182         * ada-lang.c (value_assign_to_component): In the case of
3183         big-endian targets, extract the bits of the given VAL
3184         using an src_offset of zero if container is not a scalar.
3185
3186 2018-09-06  Simon Ser  <contact@emersion.fr>
3187
3188         PR gdb/23105
3189         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3190         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3191         * fbsd-tdep.c (fbsd_make_note_desc): New.
3192         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3193         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3194         * target.h (enum target_object) Add FreeBSD-specific
3195         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3196
3197 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3198
3199         * compile/compile-c.h (generate_c_for_variable_locations):
3200         Change reference to pointer.
3201         * compile/compile-c-support.c (compile_program) <compute>:
3202         Likewise.
3203         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3204         (generate_c_for_for_one_variable): Likewise
3205         (generate_c_for_variable_locations): Likewise
3206         * compile/compile-c-types.c (compile_c_instance::convert_type):
3207         Likewise
3208         * compile/compile-cplus-symbols.c (convert_one_symbol):
3209         std::move the scope passed to enter_scope.
3210         * compile/compile-cplus-types.c
3211         (compile_cplus_instance::enter_scope): Make parameter
3212         rvalue-reference.
3213         (compile_cplus_instance::new_scope): Change reference to
3214         pointer.
3215         (compile_cplus_instance::convert_type): Likewise
3216         (compile_cplus_convert_typedef): std::move the scope passed to
3217         enter_scope.
3218         (compile_cplus_convert_struct_or_union): Likewise.
3219         (compile_cplus_convert_enum): Likewise.
3220         (compile_cplus_convert_namespace): Likewise.
3221         * compile/compile-cplus.h (compile_cplus_instance)
3222         <enter_scope>: Make parameter rvalue-reference.
3223         * compile/compile-internal.h (compile_instance)
3224         <get_cached_type>: Likewise
3225         * compile/compile-loc2c.c (push): Likewise
3226         (pushf): Likewise
3227         (unary): Likewise
3228         (binary): Likewise
3229         (print_label): Likewise
3230         (pushf_register_address): Likewise
3231         (pushf_register): Likewise
3232         (do_compile_dwarf_expr_to_c): Likewise
3233         (compile_dwarf_expr_to_c): Likewise
3234         (compile_dwarf_bounds_to_c): Likewise
3235         * compile/compile.c (compile_instance::get_cached_type):
3236         Likewise
3237         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3238         (compile_dwarf_bounds_to_c): Likewise
3239         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3240         (dwarf2_compile_property_to_c): Likewise
3241         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3242         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3243         Likewise
3244
3245 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3246
3247         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3248         * tui/tui-data.c (init_content_element): Don't initialize it.
3249
3250 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3251
3252         * tui/tui-data.h (struct tui_win_info)
3253         <detail::opaque>: Remove.
3254         * tui/tui-data.c (init_win_info): Remove assignment.
3255
3256 2018-09-05  Tom Tromey  <tom@tromey.com>
3257
3258         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3259         -Wformat-nonliteral.
3260         * target-float.c (host_float_ops<T>::to_string)
3261         (host_float_ops<T>::from_string): Use
3262         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3263         * configure: Rebuild.
3264
3265 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3266
3267         * printcmd.c (printf_c_string): Use
3268         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3269         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3270
3271 2018-09-05  Tom Tromey  <tom@tromey.com>
3272
3273         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3274
3275 2018-09-05  Tom de Vries  <tdevries@suse.de>
3276
3277         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3278         with resolve_abstract_p == true.
3279         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3280         defaulting to false. Propagate resolve_abstract_p to
3281         dwarf2_fetch_die_loc_sect_off.
3282         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3283         parameter, defaulting to false.
3284         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3285         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3286         parameter.
3287         * dwarf2read.h (struct die_info): Forward-declare.
3288         (die_info_ptr): New typedef.
3289         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3290
3291 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3292
3293         GDB 8.2 released.
3294
3295 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3296             Pedro Alves  <palves@redhat.com>
3297
3298         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3299         "aclocal-m4-deps.mk".  Include file here.
3300         $(srcdir)/aclocal.m4: Add "configure.ac".
3301         * gnulib/aclocal-m4-deps.mk: New file.
3302         * gnulib/update-gnulib.sh: Automatically update
3303         "aclocal-m4-deps.mk".
3304
3305 2018-09-04  Tom Tromey  <tom@tromey.com>
3306
3307         * configure: Rebuild.
3308         * configure.ac: Remove multi-ice code.
3309
3310 2018-09-04  Tom Tromey  <tom@tromey.com>
3311
3312         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3313         (ada-exp.o): Update.
3314
3315 2018-09-04  Tom Tromey  <tom@tromey.com>
3316
3317         * Makefile.in (printcmd.o, target-float.o): Remove.
3318         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3319
3320 2018-09-04  Tom Tromey  <tom@tromey.com>
3321
3322         * gnulib/Makefile.in: Remove obsolete comment.
3323         * Makefile.in: Remove obsolete comment.
3324
3325 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3326
3327         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3328         line with '+'.
3329
3330 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3331
3332         * riscv-tdep.c: Add 'prologue-value.h' include.
3333         (struct riscv_unwind_cache): New struct.
3334         (riscv_debug_unwinder): New global.
3335         (riscv_scan_prologue): Update arguments, capture register details
3336         from prologue scan.
3337         (riscv_skip_prologue): Reformat arguments line, move end of
3338         prologue calculation into riscv_scan_prologue.
3339         (riscv_frame_cache): Update return type, create
3340         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3341         details.
3342         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3343         (riscv_frame_prev_register): Use the trad_frame within the
3344         riscv_unwind_cache.
3345         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3346         flag.
3347
3348 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3349
3350         * trad-frame.h (trad_frame_set_realreg): Declare.
3351         (trad_frame_set_addr): Declare.
3352         * trad-frame.c (trad_frame_set_realreg): Define new function.
3353         (trad_frame_set_addr): Define new function.
3354         (trad_frame_set_reg_realreg): Use new function.
3355         (trad_frame_set_reg_addr): Use new function.
3356
3357 2018-09-01  Keith Seitz  <keiths@redhat.com>
3358
3359         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3360         pulongest instead of "%lld".
3361         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3362         ATTRIBUTE_UNUSED.
3363
3364 2018-08-31  Tom Tromey  <tom@tromey.com>
3365
3366         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3367         variant part type.
3368
3369 2018-08-31  Pedro Alves  <palves@redhat.com>
3370
3371         * gdbarch.h: Regenerate.
3372
3373 2018-08-31  Pedro Alves  <palves@redhat.com>
3374
3375         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3376         * target.h (Hardware watchpoint interfaces): Describe
3377         continuable/steppable/non-steppable watchpoints.
3378         * gdbarch.h, gdbarch.c: Regenerate.
3379
3380 2018-08-31  Pedro Alves  <palves@redhat.com>
3381
3382         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3383         Delete.
3384         * s390-linux-nat.c
3385         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3386         * target.h (target_ops::have_continuable_watchpoint): Delete.
3387         (target_have_continuable_watchpoint): Delete.
3388         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3389         * target-delegates.c: Regenerate.
3390
3391 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3392
3393         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3394         the files present in "gnulib/import/m4/".
3395
3396 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3397
3398         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3399         c.sw, c.swsp, and c.sdsp.
3400
3401 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3402
3403         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3404         (riscv_read_misa_reg): Don't cache value read into inferior data.
3405         (riscv_new_inferior_data): Delete.
3406         (riscv_inferior_data_cleanup): Delete.
3407         (riscv_inferior_data): Delete.
3408         (riscv_invalidate_inferior_data): Delete.
3409         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3410
3411 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3412
3413         * compile/compile-cplus-types.c
3414         (compile_cplus_instance::leave_scope): Take the address of scope
3415         object.
3416         (compile_cplus_instance::convert_qualified_base): Compare quals
3417         to 0.
3418
3419 2018-08-30  Keith Seitz  <keiths@redhat.com>
3420
3421         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3422         Use "%s" and host_address_to_string instead of "%p" in printf.
3423
3424 2018-08-29  Keith Seitz  <keiths@redhat.com>
3425
3426         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3427         and compile-cplus-types.c.
3428         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3429         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3430         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3431         Declare.
3432         * compile/compile-c-support.c: Include compile-cplus.h.
3433         (load_libcompile): Templatize.
3434         (get_compile_context): "New" function.
3435         (c_get_compile_context): Use get_compile_context.
3436         (cplus_get_compile_context): New function.
3437         (cplus_push_user_expression, cplus_pop_user_expression)
3438         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3439         (cplus_compute_program): Define new structs/functions.
3440         * compile/compile-cplus-symmbols.c: New file.
3441         * compile/compile-cplus-types.c: New file.
3442         * compile/compile-cplus.h: New file.
3443         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3444         Declare.
3445         * compile/compile-object-load.c (get_out_value_type): Use
3446         strncmp_iw when comparing symbol names.
3447         (compile_object_load): Add mst_bss and mst_data.
3448         * compile/compile.c (_initialize_compile): Remove
3449         -Wno-implicit-function-declaration from `compile_args'.
3450         * compile/gcc-cp-plugin.h: New file.
3451         * NEWS: Mention C++ compile support and new debug options.
3452
3453 2018-08-29  Keith Seitz  <keiths@redhat.com>
3454
3455         * linespec.c (collect_info::add_symbol): Make virtual.
3456         (struct symbol_searcher_collect_info): New struct.
3457         (symbol_searcher::find_all_symbols): New method.
3458         * symtab.h (class symbol_searcher): New class.
3459
3460 2018-08-29  Keith Seitz  <keiths@redhat.com>
3461
3462         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3463         Change to vector of block_symbol.  Update all users.
3464         (struct collect_info) <symbols>: Likewise.
3465         (collect_info::add_symbol): Take block_symbol as argument.
3466         Update all callers.
3467         (decode_compound_collector) <m_symbols>: Change type to vector
3468         of block_symbol.  Update all users.
3469         (decode_compound_collector::operator ()): Change parameter type
3470         to block_symbol.
3471         (find_method, find_function_symbols, find_linespec_symbols)
3472         (find_label_symbols_in_block, find_label_symbols): Change symbol
3473         vectors to block_symbol vectors.
3474         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3475         block_symbol.
3476
3477 2018-08-29  Keith Seitz  <keiths@redhat.com>
3478
3479         * linespec.c (symbolp): Remove typedef and VEC definitions.
3480         (bound_minimal_symbol_d): Likewise.
3481
3482 2018-08-29  Keith Seitz  <keiths@redhat.com>
3483
3484         * linespec.c (decode_compound_collector::decode_compound_collector):
3485         Remove initialization for `m_symtabs'.
3486         (decode_compound_collector::release_symbols): Change return type
3487         to std::vector.  Update all callers.
3488         (class decode_compound_collector) <m_symbols>: Change type to
3489         std::vector.
3490         (lookup_prefix_sym): Change return type to std::vector.  Update all
3491         callers.
3492         (compare_symbols): Remove.
3493         (std_compare_symbols): Rename to `compare_symbols'.
3494         (find_method): Change `sym_classes' parameter to std::vector.
3495         Update all callers.  Use std::sort to sort sym_classes.
3496         (find_linespec_symbols): Remove cleanup.
3497
3498 2018-08-29  Keith Seitz  <keiths@redhat.com>
3499
3500         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3501         std::vector.  Update all users.
3502         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3503         (struct collect_info) <minimal_symbols>: Likewise.
3504         (compare_msymbols): Return bool.  Change parameters to const
3505         bound_minimal_symbol references.
3506         (find_method, find_function_symbols, find_linespec_symbols): Change
3507         `minsyms' parameter to std::vector.  Update all callers.
3508
3509 2018-08-29  Keith Seitz  <keiths@redhat.com>
3510
3511         * linespec.c (struct linespec) <label_symbols>: Change type to
3512         std::vector.  Update all users.
3513         (find_label_symbols_in_block): Change `result' parameter to
3514         std::vector.  Update all callers.
3515         (find_label_symbols): Return std::vector.  Update all callers.
3516
3517 2018-08-29  Keith Seitz  <keiths@redhat.com>
3518
3519         * linespec.c (struct linespec) <function_symbols>: Change type to
3520         std::vector.  Update all users.
3521         (struct collect_info) <function_symbols>: Likewise.
3522         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3523         (std_compare_symbols): New function.
3524         (find_method, find_function_symbols, find_linespec_symbols)
3525         (find_label_symbols_in_block): Change `symbols' parameter to
3526         std::vector.  Update all callers.
3527         (find_label_symbols): Likewise for `function_symbols' and
3528         `label_funcs_ret'.
3529
3530 2018-08-29  Keith Seitz  <keiths@redhat.com>
3531
3532         * linespec.c (symtab_vector_up): Define.
3533         (struct linespec) <file_symtabs>: Change type to std::vector *.
3534         Update all uses.
3535         (struct collect_info) <file_symtabs>: Likewise.
3536         (collect_symtabs_from_filename): Return symtab_vector_up.
3537         Update all callers.
3538         (decode_objc): Remove cleanup.
3539         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3540         (symtab_collector::release_symtabs): Return symtab_vector_up.
3541         Update all callers.
3542         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3543         Update all users.
3544         (collect_symtabs_from_filename, symtabs_from_filename): Return
3545         symtab_vector_up.  Update all callers.
3546
3547 2018-08-29  Tom Tromey  <tom@tromey.com>
3548
3549         * csky-tdep.c (csky_analyze_prologue): Use
3550         core_addr_to_string_nz.
3551
3552 2018-08-29  Tom Tromey  <tom@tromey.com>
3553
3554         * windows-nat.c (struct xlate_exception) <them>: Change type to
3555         DWORD.
3556         (xlate): Fix formatting.  Remove last entry.
3557         (struct xlate_exception, xlate): Comment out.
3558         (windows_nat_target::resume): Use ranged for.
3559
3560 2018-08-29  Jim Wilson  <jimw@sifive.com>
3561
3562         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3563         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3564         of NT_PRFPREG.
3565         (riscv_linux_nat_target::store_registers): Likewise.
3566
3567 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3568
3569         PR gdb/23555
3570         PR gdb/23558
3571         * gnulib/aclocal.m4: Regenerate.
3572         * gnulib/config.in: Regenerate.
3573         * gnulib/configure: Regenerate.
3574         * gnulib/import/Makefile.am: Update.
3575         * gnulib/import/Makefile.in: Update.
3576         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3577         * gnulib/import/_Noreturn.h: ... this.
3578         * gnulib/import/alloca.in.h: Update.
3579         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3580         * gnulib/import/arg-nonnull.h: ... this.
3581         * gnulib/import/assure.h: Update.
3582         * gnulib/import/at-func.c: Update.
3583         * gnulib/import/basename-lgpl.c: Update.
3584         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3585         * gnulib/import/c++defs.h: ... this.
3586         * gnulib/import/canonicalize-lgpl.c: Update.
3587         * gnulib/import/cdefs.h: Update.
3588         * gnulib/import/chdir-long.c: Update.
3589         * gnulib/import/chdir-long.h: Update.
3590         * gnulib/import/cloexec.c: Update.
3591         * gnulib/import/cloexec.h: Update.
3592         * gnulib/import/close.c: Update.
3593         * gnulib/import/closedir.c: Update.
3594         * gnulib/import/config.charset: Update.
3595         * gnulib/import/dirent-private.h: Update.
3596         * gnulib/import/dirent.in.h: Update.
3597         * gnulib/import/dirfd.c: Update.
3598         * gnulib/import/dirname-lgpl.c: Update.
3599         * gnulib/import/dirname.h: Update.
3600         * gnulib/import/dosname.h: Update.
3601         * gnulib/import/dup-safer-flag.c: Update.
3602         * gnulib/import/dup-safer.c: Update.
3603         * gnulib/import/dup.c: Update.
3604         * gnulib/import/dup2.c: Update.
3605         * gnulib/import/errno.in.h: Update.
3606         * gnulib/import/error.c: Update.
3607         * gnulib/import/error.h: Update.
3608         * gnulib/import/exitfail.c: Update.
3609         * gnulib/import/exitfail.h: Update.
3610         * gnulib/import/extra/update-copyright: Update.
3611         * gnulib/import/fchdir.c: Update.
3612         * gnulib/import/fcntl.c: Update.
3613         * gnulib/import/fcntl.in.h: Update.
3614         * gnulib/import/fd-hook.c: Update.
3615         * gnulib/import/fd-hook.h: Update.
3616         * gnulib/import/fd-safer-flag.c: Update.
3617         * gnulib/import/fd-safer.c: Update.
3618         * gnulib/import/fdopendir.c: Update.
3619         * gnulib/import/filename.h: Update.
3620         * gnulib/import/filenamecat-lgpl.c: Update.
3621         * gnulib/import/filenamecat.h: Update.
3622         * gnulib/import/flexmember.h: Update.
3623         * gnulib/import/float+.h: Update.
3624         * gnulib/import/float.c: Update.
3625         * gnulib/import/float.in.h: Update.
3626         * gnulib/import/fnmatch.c: Update.
3627         * gnulib/import/fnmatch.in.h: Update.
3628         * gnulib/import/fnmatch_loop.c: Update.
3629         * gnulib/import/fpucw.h: Update.
3630         * gnulib/import/frexp.c: Update.
3631         * gnulib/import/frexpl.c: Update.
3632         * gnulib/import/fstat.c: Update.
3633         * gnulib/import/fstatat.c: Update.
3634         * gnulib/import/getcwd-lgpl.c: Update.
3635         * gnulib/import/getcwd.c: Update.
3636         * gnulib/import/getdtablesize.c: Update.
3637         * gnulib/import/getlogin_r.c: Update.
3638         * gnulib/import/getprogname.c: Update.
3639         * gnulib/import/getprogname.h: Update.
3640         * gnulib/import/gettext.h: Update.
3641         * gnulib/import/gettimeofday.c: Update.
3642         * gnulib/import/glob-libc.h: Update.
3643         * gnulib/import/glob.c: Update.
3644         * gnulib/import/glob.in.h: Update.
3645         * gnulib/import/glob_internal.h: Update.
3646         * gnulib/import/glob_pattern_p.c: Update.
3647         * gnulib/import/globfree.c: Update.
3648         * gnulib/import/hard-locale.c: Update.
3649         * gnulib/import/hard-locale.h: Update.
3650         * gnulib/import/intprops.h: Update.
3651         * gnulib/import/inttypes.in.h: Update.
3652         * gnulib/import/isnan.c: Update.
3653         * gnulib/import/isnand-nolibm.h: Update.
3654         * gnulib/import/isnand.c: Update.
3655         * gnulib/import/isnanl-nolibm.h: Update.
3656         * gnulib/import/isnanl.c: Update.
3657         * gnulib/import/itold.c: Update.
3658         * gnulib/import/libc-config.h: Update.
3659         * gnulib/import/limits.in.h: Update.
3660         * gnulib/import/localcharset.c: Update.
3661         * gnulib/import/localcharset.h: Update.
3662         * gnulib/import/localtime-buffer.c: Update.
3663         * gnulib/import/localtime-buffer.h: Update.
3664         * gnulib/import/lstat.c: Update.
3665         * gnulib/import/m4/00gnulib.m4: Update.
3666         * gnulib/import/m4/__inline.m4: Update.
3667         * gnulib/import/m4/absolute-header.m4: Update.
3668         * gnulib/import/m4/alloca.m4: Update.
3669         * gnulib/import/m4/builtin-expect.m4: Update.
3670         * gnulib/import/m4/canonicalize.m4: Update.
3671         * gnulib/import/m4/chdir-long.m4: Update.
3672         * gnulib/import/m4/close.m4: Update.
3673         * gnulib/import/m4/closedir.m4: Update.
3674         * gnulib/import/m4/configmake.m4: Update.
3675         * gnulib/import/m4/d-ino.m4: Update.
3676         * gnulib/import/m4/d-type.m4: Update.
3677         * gnulib/import/m4/dirent_h.m4: Update.
3678         * gnulib/import/m4/dirfd.m4: Update.
3679         * gnulib/import/m4/dirname.m4: Update.
3680         * gnulib/import/m4/double-slash-root.m4: Update.
3681         * gnulib/import/m4/dup.m4: Update.
3682         * gnulib/import/m4/dup2.m4: Update.
3683         * gnulib/import/m4/eealloc.m4: Update.
3684         * gnulib/import/m4/environ.m4: Update.
3685         * gnulib/import/m4/errno_h.m4: Update.
3686         * gnulib/import/m4/error.m4: Update.
3687         * gnulib/import/m4/exponentd.m4: Update.
3688         * gnulib/import/m4/exponentl.m4: Update.
3689         * gnulib/import/m4/extensions.m4: Update.
3690         * gnulib/import/m4/extern-inline.m4: Update.
3691         * gnulib/import/m4/fchdir.m4: Update.
3692         * gnulib/import/m4/fcntl-o.m4: Update.
3693         * gnulib/import/m4/fcntl.m4: Update.
3694         * gnulib/import/m4/fcntl_h.m4: Update.
3695         * gnulib/import/m4/fdopendir.m4: Update.
3696         * gnulib/import/m4/filenamecat.m4: Update.
3697         * gnulib/import/m4/flexmember.m4: Update.
3698         * gnulib/import/m4/float_h.m4: Update.
3699         * gnulib/import/m4/fnmatch.m4: Update.
3700         * gnulib/import/m4/fnmatch_h.m4: Update.
3701         * gnulib/import/m4/fpieee.m4: Update.
3702         * gnulib/import/m4/frexp.m4: Update.
3703         * gnulib/import/m4/frexpl.m4: Update.
3704         * gnulib/import/m4/fstat.m4: Update.
3705         * gnulib/import/m4/fstatat.m4: Update.
3706         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3707         * gnulib/import/m4/getcwd-path-max.m4: Update.
3708         * gnulib/import/m4/getcwd.m4: Update.
3709         * gnulib/import/m4/getdtablesize.m4: Update.
3710         * gnulib/import/m4/getlogin.m4: Update.
3711         * gnulib/import/m4/getlogin_r.m4: Update.
3712         * gnulib/import/m4/getpagesize.m4: Update.
3713         * gnulib/import/m4/getprogname.m4: Update.
3714         * gnulib/import/m4/gettimeofday.m4: Update.
3715         * gnulib/import/m4/glibc21.m4: Update.
3716         * gnulib/import/m4/glob.m4: Update.
3717         * gnulib/import/m4/glob_h.m4: Update.
3718         * gnulib/import/m4/gnulib-cache.m4: Update.
3719         * gnulib/import/m4/gnulib-common.m4: Update.
3720         * gnulib/import/m4/gnulib-comp.m4: Update.
3721         * gnulib/import/m4/gnulib-tool.m4: Update.
3722         * gnulib/import/m4/hard-locale.m4: Update.
3723         * gnulib/import/m4/include_next.m4: Update.
3724         * gnulib/import/m4/inttypes-pri.m4: Update.
3725         * gnulib/import/m4/inttypes.m4: Update.
3726         * gnulib/import/m4/isnand.m4: Update.
3727         * gnulib/import/m4/isnanl.m4: Update.
3728         * gnulib/import/m4/largefile.m4: Update.
3729         * gnulib/import/m4/limits-h.m4: Update.
3730         * gnulib/import/m4/localcharset.m4: Update.
3731         * gnulib/import/m4/locale-fr.m4: Update.
3732         * gnulib/import/m4/locale-ja.m4: Update.
3733         * gnulib/import/m4/locale-zh.m4: Update.
3734         * gnulib/import/m4/localtime-buffer.m4: Update.
3735         * gnulib/import/m4/longlong.m4: Update.
3736         * gnulib/import/m4/lstat.m4: Update.
3737         * gnulib/import/m4/malloc.m4: Update.
3738         * gnulib/import/m4/malloca.m4: Update.
3739         * gnulib/import/m4/math_h.m4: Update.
3740         * gnulib/import/m4/mbrtowc.m4: Update.
3741         * gnulib/import/m4/mbsinit.m4: Update.
3742         * gnulib/import/m4/mbsrtowcs.m4: Update.
3743         * gnulib/import/m4/mbstate_t.m4: Update.
3744         * gnulib/import/m4/memchr.m4: Update.
3745         * gnulib/import/m4/memmem.m4: Update.
3746         * gnulib/import/m4/mempcpy.m4: Update.
3747         * gnulib/import/m4/memrchr.m4: Update.
3748         * gnulib/import/m4/mkdir.m4: Update.
3749         * gnulib/import/m4/mkstemp.m4: Update.
3750         * gnulib/import/m4/mmap-anon.m4: Update.
3751         * gnulib/import/m4/mode_t.m4: Update.
3752         * gnulib/import/m4/msvc-inval.m4: Update.
3753         * gnulib/import/m4/msvc-nothrow.m4: Update.
3754         * gnulib/import/m4/multiarch.m4: Update.
3755         * gnulib/import/m4/nocrash.m4: Update.
3756         * gnulib/import/m4/off_t.m4: Update.
3757         * gnulib/import/m4/onceonly.m4: Update.
3758         * gnulib/import/m4/open-cloexec.m4: Update.
3759         * gnulib/import/m4/open.m4: Update.
3760         * gnulib/import/m4/openat.m4: Update.
3761         * gnulib/import/m4/opendir.m4: Update.
3762         * gnulib/import/m4/pathmax.m4: Update.
3763         * gnulib/import/m4/rawmemchr.m4: Update.
3764         * gnulib/import/m4/readdir.m4: Update.
3765         * gnulib/import/m4/readlink.m4: Update.
3766         * gnulib/import/m4/realloc.m4: Update.
3767         * gnulib/import/m4/rename.m4: Update.
3768         * gnulib/import/m4/rewinddir.m4: Update.
3769         * gnulib/import/m4/rmdir.m4: Update.
3770         * gnulib/import/m4/save-cwd.m4: Update.
3771         * gnulib/import/m4/secure_getenv.m4: Update.
3772         * gnulib/import/m4/setenv.m4: Update.
3773         * gnulib/import/m4/signal_h.m4: Update.
3774         * gnulib/import/m4/ssize_t.m4: Update.
3775         * gnulib/import/m4/stat-time.m4: Update.
3776         * gnulib/import/m4/stat.m4: Update.
3777         * gnulib/import/m4/std-gnu11.m4: Update.
3778         * gnulib/import/m4/stdbool.m4: Update.
3779         * gnulib/import/m4/stddef_h.m4: Update.
3780         * gnulib/import/m4/stdint.m4: Update.
3781         * gnulib/import/m4/stdio_h.m4: Update.
3782         * gnulib/import/m4/stdlib_h.m4: Update.
3783         * gnulib/import/m4/strchrnul.m4: Update.
3784         * gnulib/import/m4/strdup.m4: Update.
3785         * gnulib/import/m4/strerror.m4: Update.
3786         * gnulib/import/m4/string_h.m4: Update.
3787         * gnulib/import/m4/strstr.m4: Update.
3788         * gnulib/import/m4/strtok_r.m4: Update.
3789         * gnulib/import/m4/sys_socket_h.m4: Update.
3790         * gnulib/import/m4/sys_stat_h.m4: Update.
3791         * gnulib/import/m4/sys_time_h.m4: Update.
3792         * gnulib/import/m4/sys_types_h.m4: Update.
3793         * gnulib/import/m4/tempname.m4: Update.
3794         * gnulib/import/m4/time_h.m4: Update.
3795         * gnulib/import/m4/unistd-safer.m4: Update.
3796         * gnulib/import/m4/unistd_h.m4: Update.
3797         * gnulib/import/m4/warn-on-use.m4: Update.
3798         * gnulib/import/m4/wchar_h.m4: Update.
3799         * gnulib/import/m4/wchar_t.m4: Update.
3800         * gnulib/import/m4/wctype_h.m4: Update.
3801         * gnulib/import/m4/wint_t.m4: Update.
3802         * gnulib/import/malloc.c: Update.
3803         * gnulib/import/malloc/scratch_buffer.h: Update.
3804         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3805         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3806         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3807         * gnulib/import/malloca.c: Update.
3808         * gnulib/import/malloca.h: Update.
3809         * gnulib/import/malloca.valgrind: Update.
3810         * gnulib/import/math.in.h: Update.
3811         * gnulib/import/mbrtowc.c: Update.
3812         * gnulib/import/mbsinit.c: Update.
3813         * gnulib/import/mbsrtowcs-impl.h: Update.
3814         * gnulib/import/mbsrtowcs-state.c: Update.
3815         * gnulib/import/mbsrtowcs.c: Update.
3816         * gnulib/import/memchr.c: Update.
3817         * gnulib/import/memmem.c: Update.
3818         * gnulib/import/mempcpy.c: Update.
3819         * gnulib/import/memrchr.c: Update.
3820         * gnulib/import/mkdir.c: Update.
3821         * gnulib/import/mkstemp.c: Update.
3822         * gnulib/import/msvc-inval.c: Update.
3823         * gnulib/import/msvc-inval.h: Update.
3824         * gnulib/import/msvc-nothrow.c: Update.
3825         * gnulib/import/msvc-nothrow.h: Update.
3826         * gnulib/import/open.c: Update.
3827         * gnulib/import/openat-die.c: Update.
3828         * gnulib/import/openat-priv.h: Update.
3829         * gnulib/import/openat-proc.c: Update.
3830         * gnulib/import/openat.c: Update.
3831         * gnulib/import/openat.h: Update.
3832         * gnulib/import/opendir.c: Update.
3833         * gnulib/import/pathmax.h: Update.
3834         * gnulib/import/pipe-safer.c: Update.
3835         * gnulib/import/rawmemchr.c: Update.
3836         * gnulib/import/readdir.c: Update.
3837         * gnulib/import/readlink.c: Update.
3838         * gnulib/import/realloc.c: Update.
3839         * gnulib/import/ref-add.sin: Update.
3840         * gnulib/import/ref-del.sin: Update.
3841         * gnulib/import/rename.c: Update.
3842         * gnulib/import/rewinddir.c: Update.
3843         * gnulib/import/rmdir.c: Update.
3844         * gnulib/import/same-inode.h: Update.
3845         * gnulib/import/save-cwd.c: Update.
3846         * gnulib/import/save-cwd.h: Update.
3847         * gnulib/import/scratch_buffer.h: Update.
3848         * gnulib/import/secure_getenv.c: Update.
3849         * gnulib/import/setenv.c: Update.
3850         * gnulib/import/signal.in.h: Update.
3851         * gnulib/import/stat-time.c: Update.
3852         * gnulib/import/stat-time.h: Update.
3853         * gnulib/import/stat-w32.c: Update.
3854         * gnulib/import/stat-w32.h: Update.
3855         * gnulib/import/stat.c: Update.
3856         * gnulib/import/stdbool.in.h: Update.
3857         * gnulib/import/stddef.in.h: Update.
3858         * gnulib/import/stdint.in.h: Update.
3859         * gnulib/import/stdio.in.h: Update.
3860         * gnulib/import/stdlib.in.h: Update.
3861         * gnulib/import/str-two-way.h: Update.
3862         * gnulib/import/strchrnul.c: Update.
3863         * gnulib/import/strdup.c: Update.
3864         * gnulib/import/streq.h: Update.
3865         * gnulib/import/strerror-override.c: Update.
3866         * gnulib/import/strerror-override.h: Update.
3867         * gnulib/import/strerror.c: Update.
3868         * gnulib/import/string.in.h: Update.
3869         * gnulib/import/stripslash.c: Update.
3870         * gnulib/import/strnlen1.c: Update.
3871         * gnulib/import/strnlen1.h: Update.
3872         * gnulib/import/strstr.c: Update.
3873         * gnulib/import/strtok_r.c: Update.
3874         * gnulib/import/sys_stat.in.h: Update.
3875         * gnulib/import/sys_time.in.h: Update.
3876         * gnulib/import/sys_types.in.h: Update.
3877         * gnulib/import/tempname.c: Update.
3878         * gnulib/import/tempname.h: Update.
3879         * gnulib/import/time.in.h: Update.
3880         * gnulib/import/unistd--.h: Update.
3881         * gnulib/import/unistd-safer.h: Update.
3882         * gnulib/import/unistd.in.h: Update.
3883         * gnulib/import/unsetenv.c: Update.
3884         * gnulib/import/verify.h: Update.
3885         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3886         * gnulib/import/wchar.in.h: Update.
3887         * gnulib/import/wctype.in.h: Update.
3888         * gnulib/import/xalloc-oversized.h: Update.
3889         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3890         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3891
3892 2018-08-16  Gary Benson <gbenson@redhat.com>
3893
3894         PR gdb/13000:
3895         * gdb/main.c (captured_main_1): Exit with nonzero status
3896         in batch mode if the last command to be executed failed.
3897         * NEWS: Mention the above.
3898
3899 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3900
3901         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3902         end of warning message.
3903
3904 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3905
3906         PR gdb/22943:
3907         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3908         (aarch64_extract_return_value): Use
3909         aapcs_is_vfp_call_or_return_candidate.
3910         (aarch64_return_in_memory): Likewise.
3911         (aarch64_store_return_value): Likewise.
3912
3913 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3914
3915         * aarch64-tdep.c
3916         (aapcs_is_vfp_call_or_return_candidate): Make static
3917         (pass_in_v_or_stack): Remove function.
3918         (pass_in_v_vfp_candidate): New function.
3919         (aarch64_push_dummy_call): Check for float register candidates.
3920
3921 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3922
3923         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3924         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3925         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3926
3927 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3928
3929         PR build/23399
3930         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3931         (struct ipa_sym_addresses): Rename to...
3932         (struct ipa_sym_addresses_common): ... this.
3933         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3934
3935 2018-08-28  Tom Tromey  <tom@tromey.com>
3936
3937         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3938         (token_fifo): Now a std::vector.
3939         (yylex, c_parse): Update.
3940         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3941         (token_fifo): Now a std::vector.
3942         (yylex, d_parse): Update.
3943         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3944         (token_fifo): Now a std::vector.
3945         (yylex, go_parse): Update.
3946
3947 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3948
3949         * parser-defs.h (struct type_stack) <elements>: Change type to
3950         std::vector<union type_stack_elt>.
3951         <depth, size>: Remove.
3952         * parse.c (parse_exp_in_context_1): Adjust.
3953         (type_stack_reserve): Remove.
3954         (check_type_stack_depth): Remove.
3955         (insert_into_type_stack): Adjust to std::vector.
3956         (insert_type): Likewise.
3957         (push_type): Likewise.
3958         (push_type_int): Likewise.
3959         (insert_type_address_space): Likewise.
3960         (pop_type): Likewise.
3961         (pop_type_int): Likewise.
3962         (pop_typelist): Likewise.
3963         (pop_type_stack): Likewise.
3964         (append_type_stack): Likewise.
3965         (push_type_stack): Likewise.
3966         (get_type_stack): Likewise.
3967         (type_stack_cleanup): Likewise.
3968         (push_typelist): Likewise.
3969         (follow_types): Likewise.
3970         (_initialize_parse): Likewise.
3971
3972 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3973
3974         * NEWS: Mention csky target.
3975
3976 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3977             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3978             Don Breazeal  <donb@codesourcery.com>
3979
3980         * csky-linux-tdep.c: New file.
3981         * csky-tdep.c: Likewise.
3982         * csky-tdep.h: Likewise.
3983         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3984         csky-tdep.o.
3985         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3986         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3987         * configure.tgt: Add csky support.
3988
3989 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3990
3991         * python/py-framefilter.c (py_print_frame): Print frame architecture
3992         when printing on an MI output.
3993
3994 2018-08-27  Tom Tromey  <tom@tromey.com>
3995
3996         PR build/23087:
3997         * configure: Rebuild.
3998         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3999
4000 2018-08-27  Tom Tromey  <tom@tromey.com>
4001
4002         * aarch64-linux-tdep.c
4003         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4004         casts to int.
4005
4006 2018-08-27  Tom Tromey  <tom@tromey.com>
4007
4008         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4009         unsigned.
4010         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4011         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4012         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4013         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4014         unsigned.
4015
4016 2018-08-27  Tom Tromey  <tom@tromey.com>
4017
4018         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4019         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4020
4021 2018-08-27  Tom Tromey  <tom@tromey.com>
4022
4023         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4024         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4025         ULONGEST_MAX.
4026         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4027         ULONGEST_MAX.
4028         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4029         ULONGEST_MAX.
4030         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4031         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4032         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4033         ULONGEST_MAX.
4034         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4035         (ppc64_linux_sigaction_tramp_frame)
4036         (ppc32_linux_sighandler_tramp_frame)
4037         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4038         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4039         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4040         * mn10300-linux-tdep.c (am33_linux_sigframe)
4041         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4042         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4043         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4044         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4045         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4046         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4047         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4048         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4049         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4050         * microblaze-linux-tdep.c
4051         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4052         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4053         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4054         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4055         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4056         * common/common-types.h (ULONGEST_MAX): New define.
4057         (CORE_ADDR_MAX): Fix formatting.
4058         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4059         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4060         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4061         (arm_linux_rt_sigreturn_tramp_frame)
4062         (arm_eabi_linux_sigreturn_tramp_frame)
4063         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4064         (thumb2_eabi_linux_sigreturn_tramp_frame)
4065         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4066         (arm_linux_restart_syscall_tramp_frame)
4067         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4068         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4069         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4070         ULONGEST_MAX.
4071         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4072
4073 2018-08-27  Tom Tromey  <tom@tromey.com>
4074
4075         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4076         CORE_ADDR_MAX.
4077         * mips-tdep.c (mips_deal_with_atomic_sequence)
4078         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4079         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4080         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4081         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4082         CORE_ADDR_MAX.
4083         * aarch64-tdep.c (aarch64_software_single_step): Use
4084         CORE_ADDR_MAX.
4085
4086 2018-08-27  Tom Tromey  <tom@tromey.com>
4087
4088         * linespec.c (complete_linespec_component): Add cast to "char".
4089         * completer.c (completion_tracker::build_completion_result): Add
4090         cast to "char".
4091
4092 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4093
4094         * solist.h (struct solist, struct target_so_ops): Fix
4095         indentation.
4096
4097 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4098
4099         * ada-tasks.c (ada_task_info_s): Remove typedef.
4100         (DEF_VEC_O(ada_task_info_s)): Remove.
4101         (struct ada_tasks_inferior_data): Initialize fields.
4102         <task_list>: Make an std::vector.
4103         (get_ada_tasks_inferior_data): Allocate with new.
4104         (ada_get_task_number): Adjust.
4105         (get_task_number_from_id): Likewise.
4106         (valid_task_id): Likewise.
4107         (ada_get_task_info_from_ptid): Likewise.
4108         (iterate_over_live_ada_tasks): Likewise.
4109         (add_ada_task): Likewise.
4110         (read_known_tasks): Likewise.
4111         (ada_build_task_list): Likewise.
4112         (print_ada_task_info): Likewise.
4113         (info_task): Likewise.
4114         (task_command_1): Likewise.
4115
4116 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4117
4118         * ada-lang.c (add_angle_brackets): Return std::string.
4119
4120 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4121
4122         * python/py-threadevent.c (py_get_event_thread): Initialize
4123         pythread.
4124
4125 2018-08-24  Pedro Alves  <palves@redhat.com>
4126
4127         * python/py-bpevent.c (create_breakpoint_event_object): Use
4128         copy-initialization.
4129         * python/py-continueevent.c (emit_continue_event): Use
4130         copy-initialization.
4131         * python/py-exitedevent.c (create_exited_event_object): Return a
4132         gdbpy_ref<>.
4133         (emit_exited_event): Use copy-initialization.
4134         * python/py-inferior.c (python_new_inferior)
4135         (python_inferior_deleted, add_thread_object): Use
4136         copy-initialization.
4137         * python/py-infevents.c (create_inferior_call_event_object)
4138         (create_register_changed_event_object)
4139         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4140         (emit_inferior_call_event, emit_memory_changed_event)
4141         (emit_register_changed_event): Use copy-initialization.
4142         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4143         Return a gdbpy_ref<>.
4144         (emit_new_objfile_event): Use copy-initialization.
4145         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4146         (emit_clear_objfiles_event): Use copy-initialization.
4147         * python/py-signalevent.c (create_signal_event_object): Use
4148         copy-initialization.
4149         * python/py-threadevent.c (create_thread_event_object): Use
4150         copy-initialization.
4151
4152 2018-08-24  Pedro Alves  <palves@redhat.com>
4153             Simon Marchi  <simon.marchi@ericsson.com>
4154
4155         PR gdb/23379
4156         * python/py-continueevent.c: Include "gdbthread.h".
4157         (create_continue_event_object): Add intro comment.  Add 'ptid'
4158         parameter.  Use it to find thread to pass to
4159         create_thread_event_object.
4160         (emit_continue_event): Pass PTID down to
4161         create_continue_event_object.
4162         * python/py-event.h (py_get_event_thread): Declare.
4163         (create_thread_event_object): Remove default from 'thread'
4164         parameter.
4165         * python/py-stopevent.c (create_stop_event_object): Use
4166         py_get_event_thread.
4167         * python/py-threadevent.c (get_event_thread): Rename to ...
4168         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4169         and use it to find the thread.
4170         (create_thread_event_object): Assert that THREAD isn't null.
4171         Don't find the event thread here.
4172
4173 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4174
4175         * block.h (blockrange, blockranges): New struct declarations.
4176         (struct block): Add new field named `ranges'.
4177         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4178         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4179         macros for accessing ranges in struct block.
4180         (make_blockranges): New declaration.
4181         block.c (make_blockranges): New function.
4182         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4183         for block.
4184         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4185         * blockframe.c (cache_pc_function_block): New static global.
4186         (clear_pc_function_cache): Clear cache_pc_function_block.
4187         (find_pc_partial_function): Move comment to symtab.h.  Add
4188         support for non-contiguous blocks.
4189         * cli/cli-cmds.c (block.h): Include.
4190         (print_disassembly): Handle printing of non-contiguous blocks.
4191         (disassemble_current_function): Likewise.
4192         (disassemble_command): Likewise.
4193
4194         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4195         BLOCK_START.
4196         * blockframe.c (get_pc_function_start): Likewise.
4197         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4198         (gcc_symbol_address): Likewise.
4199         * compile/compile-object-run.c (compile_object_run): Likewise.
4200         * compile/compile.c (get_expr_block_and_pc): Likewise.
4201         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4202         (func_addr_to_tail_call_list): Likewise.
4203         * findvar.c (default_read_var_value): Likewise.
4204         * inline-frame.c (inline_frame_this_id): Likewise.
4205         (skip-inline_frames): Likewise.
4206         * infcmd.c (until_next_command): Likewise.
4207         * linespec.c (convert_linespec_to_sals): Likewise.
4208         * parse.c (parse_exp_in_context_1): Likewise.
4209         * printcmd.c (build_address_symbolic): likewise.
4210         (info_address_command): Likewise.
4211         symtab.c (find_function_start_sal): Likewise.
4212         (skip_prologue_sal): Likewise.
4213         (find_function_alias_target): Likewise.
4214         (find_gnu_ifunc): Likewise.
4215         * stack.c (find_frame_funname): Likewise.
4216         * symtab.c (fixup_symbol_section): Likewise.
4217         (find_function_start_sal): Likewise.
4218         (skip_prologue_sal): Likewsie.
4219         (find_function_alias_target): Likewise.
4220         (find_gnu_ifunc): Likewise.
4221         * tracepoint.c (info_scope_command): Likewise.
4222         * value.c (value_fn_field): Likewise.
4223
4224         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4225         in place of find_pc_partial_function.
4226         * blockframe.c (find_function_entry_range_from_pc): New function.
4227         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4228         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4229         for each range in a block.
4230
4231
4232 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4233
4234         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4235         incrementation.
4236
4237 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4238
4239         * solib-svr4.c (read_program_headers_from_bfd): Return
4240         gdb::optional<gdb::byte_vector>.
4241         (svr4_exec_displacement): Adjust.
4242
4243 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4244
4245         * solib-svr4.c (read_program_header): Return
4246         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4247         (find_program_interpreter): Return
4248         gdb::optional<gdb::byte_vector>.
4249         (scan_dyntag_auxv): Adjust.
4250         (enable_break): Adjust.
4251         (svr4_exec_displacement): Adjust.
4252
4253 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4254
4255         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4256         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4257
4258 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4259
4260         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4261         string_vprintf.
4262         * guile/scm-utils.c (gdbscm_printf): Likewise.
4263         * serial.c (serial_printf): Likewise.
4264         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4265
4266 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4267
4268         * stack.c (print_frame): Print frame architecture when printing on
4269         an MI output.
4270         * NEWS: Mention new "arch" attribute in frame output.
4271
4272 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4273
4274         * arch/aarch64.h (aarch64_regnum): Update comment.
4275
4276 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4277
4278         * NEWS: Add SVE to 8.2 section.
4279
4280 2018-08-21  Pedro Alves  <palves@redhat.com>
4281
4282         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4283         out from gdbscm_parse_function_args.
4284         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4285         gdbscm_parse_function_args_1.
4286
4287 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4288
4289         PR gdb/17816
4290         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4291         operator.
4292
4293 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4294
4295         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4296
4297 2018-08-19  Michael Spang  <spang@google.com>
4298
4299         PR gdb/11786
4300         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4301         for PT_TLS segments.
4302
4303 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4304
4305         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4306         dwarf_variable_value.
4307         * dwarf2-frame.c (class dwarf_expr_executor):
4308         Add override for dwarf_variable_value.
4309         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4310         (class symbol_needs_eval_context): Likewise.
4311         (indirect_synthetic_pointer): Add forward declaration.
4312         (sect_variable_value): New function.
4313         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4314         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4315         for DW_OP_GNU_variable_value.
4316
4317 2018-08-16  Tom Tromey  <tom@tromey.com>
4318
4319         * top.c (read_command_file): Update.
4320         (command_line_input): Remove "repeat" argument.
4321         * ada-lang.c (get_selections): Update.
4322         * linespec.c (decode_line_2): Update.
4323         * defs.h (command_line_input): Remove argument.
4324         * cli/cli-script.c (read_next_line): Update.
4325         * python/py-gdb-readline.c: Update.
4326
4327 2018-08-17  Tom Tromey  <tom@tromey.com>
4328
4329         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4330         command_line_input.
4331
4332 2018-08-15  Tom Tromey  <tom@tromey.com>
4333
4334         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4335
4336 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4337
4338         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4339         If used, use find_pc_partial_function to find address range
4340         to disassemble.
4341         * mi/mi-main.c (mi_cmd_list_features): Report
4342         "data-disassemble-a-option" feature.
4343         * NEWS: Mention new -data-disassemble option -a.
4344
4345 2018-08-13  Tom Tromey  <tom@tromey.com>
4346
4347         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4348
4349 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4350
4351         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4352         (aarch64_linux_collect_sve_regset): Likewise.
4353         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4354         * regcache.h (regcache_map_entry_size): New function.
4355
4356 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4357
4358         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4359         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4360         (SVE_HEADER_VL_LENGTH): Likewise.
4361         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4362         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4363         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4364         (SVE_HEADER_SIZE_OFFSET): Likewise.
4365         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4366         (SVE_HEADER_VL_OFFSET): Likewise.
4367         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4368         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4369         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4370         (SVE_HEADER_SIZE): Likewise.
4371         (aarch64_linux_core_read_vq): Add function.
4372         (aarch64_linux_core_read_description): Check for SVE section.
4373
4374 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4375
4376         * aarch64-fbsd-tdep.c
4377         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4378         collect_size.
4379         * aarch64-linux-tdep.c
4380         (aarch64_linux_iterate_over_regset_sections): Likewise.
4381         * alpha-linux-tdep.c
4382         (alpha_linux_iterate_over_regset_sections):
4383         * alpha-nbsd-tdep.c
4384         (alphanbsd_iterate_over_regset_sections): Likewise.
4385         * amd64-fbsd-tdep.c
4386         (amd64fbsd_iterate_over_regset_sections): Likewise.
4387         * amd64-linux-tdep.c
4388         (amd64_linux_iterate_over_regset_sections): Likewise.
4389         * arm-bsd-tdep.c
4390         (armbsd_iterate_over_regset_sections): Likewise.
4391         * arm-fbsd-tdep.c
4392         (arm_fbsd_iterate_over_regset_sections): Likewise.
4393         * arm-linux-tdep.c
4394         (arm_linux_iterate_over_regset_sections): Likewise.
4395         * corelow.c (get_core_registers_cb): Likewise.
4396         (core_target::fetch_registers): Likewise.
4397         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4398         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4399         * gdbarch.h (void): Regenerate.
4400         * gdbarch.sh: Add supply_size and collect_size.
4401         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4402         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4403         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4404         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4405         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4406         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4407         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4408         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4409         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4410         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4411         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4412         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4413         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4414         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4415         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4416         Likewise.
4417         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4418         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4419         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4420         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4421         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4422         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4423         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4424         Likewise.
4425         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4426         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4427         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4428         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4429         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4430         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4431         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4432         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4433
4434 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4435
4436         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4437         with string_printf.
4438
4439 2018-08-10  Keith Seitz  <keiths@redhat.com>
4440
4441         * compile/compile-c-support.c (add_code_header, add_code_footer):
4442         Move into policy class.
4443         (c_push_user_expression, pop_user_expression_nop)
4444         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4445         (compile_program): New host class.
4446         (c_compile_program): New typedef.
4447         (c_compute_porgram): Use c_compile_program.
4448
4449 2018-08-10  Keith Seitz  <keiths@redhat.com>
4450
4451         * compile/compile-internal.h (compile_instance::~compile_instance):
4452         Remove calls to htab_delete.
4453         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4454         * compile.c (compile_instance::compile_instance): Initialize
4455         htab unique pointers.
4456         (compile_instance::get_cached_type, compile_instance::insert_type)
4457         (compile_instance::error_symbol_once): Update for unique_ptr.
4458
4459 2018-08-10  Keith Seitz  <keiths@redhat.com>
4460
4461         * compile/compile-c-symbols.c (struct symbol_error)
4462         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4463         (compile_instance::insert_symbol_error)
4464         (compile_instance::error_symbol_once): Move to ...
4465         * compile/compile.c: ... here.
4466
4467 2018-08-10  Keith Seitz  <keiths@redhat.com>
4468
4469         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4470         instead of `new_compile_instance'.
4471         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4472         Update description.
4473         If the symbol error map is not initialized, create it.
4474         (generate_c_for_for_one_symbol): Do not check/initialize
4475         the symbol error map.
4476         * compile/compile-c-types.c (compile_c_instance): Make a class.
4477         Update all callers.
4478         (compile_instance::compile_instance): Initialize the type cache.
4479         (get_cached_type): New function.
4480         (insert_type): Update description.
4481         (compile_c_instance::m_default_cflags): Define.
4482         (convert_type): Update description.  Use get_cached_type.
4483         (delete_instance): Moved to destructor.
4484         (new_compile_instance): Moved to constructor.
4485         * compile/compile-c.h (compile_c_instance): Make class inheriting
4486         from compile_instance.
4487         <base>: Remove field.
4488         <type_map, symbol_err_map>: Move to base class.
4489         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4490         * compile/compile-internal.h (compile_instance): Make class.
4491         <type_map_t, symbol_err_map_t>: Define.
4492         <fe>: Rename to `m_gcc_fe'.
4493         <scope, block, gcc_target_options>: Add `m_' prefix.
4494         <m_type_map, m_symbol_err_map>: New fields, moved from
4495         compile_c_instance.
4496         <destroy>: Remove.
4497         (convert_type, new_compile_instance): Remove.
4498         * compile/compile.c (cleanup_compile_instance): Remove.
4499         (compile_to_object): Use unique_ptr to eliminate cleanups.
4500         (compile_instance::set_print_callback, compile_instance::version)
4501         (compile_instance::set_verbose)
4502         (compile_instance::set_driver_filename)
4503         (compile_instance::set_triplet_regexp)
4504         (compile_instance::set_arguments)
4505         (compile_instance::set_source_file)
4506         (compile_instance::compile): Define.
4507
4508 2018-08-10  Keith Seitz  <keiths@redhat.com>
4509
4510         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4511         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4512         gcc-c-fe.def to define C plugin.
4513         (delete_instance): Delete `c_plugin'.
4514         (new_compile_instance): Initialize `c_plugin'.
4515         * compile/compile-c.h: Include gcc_c_plugin.h.
4516         (struct compile_c_instance) <c_plugin>: New member.
4517         * gcc-c-plugin.h: New file.
4518         Update all callers with API change.
4519
4520 2018-08-10  Keith Seitz  <keiths@redhat.com>
4521
4522         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4523         (HFILES_NO_SRCDIR): ... to here.
4524         Add compile-internal.h and compile-c.h.
4525         * compile/compile-c-support.c: Include compile-c.h.
4526         * compile/compile-c-symbols.c: Include compile-c.h.
4527         (generate_c_for_variable_locations): Update comment.
4528         * compile/compile-c-types.c: Include compile-c.h.
4529         * compile/compile-c.h: New file -- moved C language declarations
4530         from other files here.
4531         * compile/compile-internal.h: Do not include hashtab.h or
4532         common/enum-flags.h.
4533         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4534         (gcc_convert_symbol, gcc_symbol_address)
4535         (generate_c_for_variable_locations, c_get_mode_for_size)
4536         (c_get_range_decl_name): Definitions moved to compile-c.h.
4537         * compile/compile-loc2c.c: Include compile-c.h.
4538
4539 2018-08-10  Keith Seitz  <keiths@redhat.com>
4540
4541         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4542         (c_symbol_substitution_name): ... this.
4543         Update all callers.
4544
4545 2018-08-10  Keith Seitz  <keiths@redhat.com>
4546
4547         * compile/compile-c-support.c (c_compute_program): Use
4548         unique_xmalloc_ptr to eliminate cleanup.
4549         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4550         Return a unique_xmalloc_ptr and eliminate cleanup.
4551         * compile/compile-internal.h (generate_c_for_variable_locations):
4552         Return unique_xmalloc_ptr and update description.
4553
4554 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4555
4556         * corelow.c (core_target::get_core_register_section): Rename
4557         min_size to section_min_size.
4558
4559 2018-08-09  Jim Wilson  <jimw@sifive.com>
4560
4561         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4562         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4563         * NEWS: Mention new GNU/Linux RISC-V target.
4564         * configure.host: Add riscv*-*-linux*.
4565         * configure.nat: Add riscv*.
4566         * configure.tgt: Add riscv*-*-linux*.
4567         * riscv-linux-nat.c: New file.
4568         * riscv-linux-tdep.c: New file.
4569
4570 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4571
4572         * infrun.c (resume): Make static, add forward declaration.
4573         (proceed): Update header comment.
4574         * infrun.h (resume): Delete declaration.
4575
4576 2018-08-09  Tom Tromey  <tom@tromey.com>
4577
4578         * riscv-tdep.h: Minor formatting fixes.
4579
4580 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4581
4582         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4583         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4584         (test_mkdir_recursive): Likewise.
4585         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4586
4587 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4588
4589         * valarith.c (value_subscripted_rvalue): If an array is not in
4590         memory, and we don't know the upper bound, then we can't know that
4591         the requested element exists or not.
4592
4593 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4594
4595         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4596         (target_options_to_string): Add comment.
4597
4598 2018-08-08  Tom Tromey  <tom@tromey.com>
4599
4600         * unittests/scoped_mmap-selftests.c: Check result of "write".
4601
4602 2018-08-08  Jim Wilson  <jimw@sifive.com>
4603
4604         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4605         (decode_register_index_short): New.
4606         (decode_j_type_insn, decode_cj_type_insn): New.
4607         (decode_b_type_insn, decode_cb_type_insn): New.
4608         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4609         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4610         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4611         is_c_sw_insn instead of is_sw_insn.
4612         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4613         (riscv_software_single_step): New.
4614         * riscv-tdep.h (riscv_software_single_step): Declare.
4615
4616         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4617         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4618
4619 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4620
4621         PR gdb/18050:
4622         * target.c (dispose_inferior): Don't dispose of inferiors that are
4623         already killed.
4624
4625 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4626
4627         * remote.c (remote_target::download_tracepoint): Change char* to
4628         const char*.
4629
4630 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4631
4632         * target.h (target_options_to_string): Return an std::string.
4633         * target.c (str_comma_list_concat_elem): Return void, use
4634         std::string.
4635         (do_option): Likewise.
4636         (target_options_to_string): Return an std::string.
4637         * linux-nat.c (linux_nat_target::wait): Adjust.
4638         * target-debug.h (target_debug_print_options): Adjust.
4639
4640 2018-08-07  Tom Tromey  <tom@tromey.com>
4641
4642         * Makefile.in (CPPFLAGS): New variable.
4643         (INTERNAL_CPPFLAGS): Use it.
4644
4645 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4646
4647         * NEWS: Mention the index cache.
4648
4649 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4650
4651         * common/pathstuff.h (get_standard_cache_dir): New.
4652         * common/pathstuff.c (get_standard_cache_dir): New.
4653         * build-id.h (build_id_to_string): New.
4654         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4655         DEBUG_STR_SUFFIX): Move to here.
4656         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4657         DEBUG_STR_SUFFIX): Move from there.
4658         (write_psymtabs_to_index): Make non-static, add basename
4659         parameter.  Write to temporary files, rename when done.
4660         (save_gdb_index_command): Adjust call to
4661         write_psymtabs_to_index.
4662         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4663         field.
4664         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4665         (get_gdb_index_contents_from_cache): New.
4666         (get_gdb_index_contents_from_cache_dwz): New.
4667         (dwarf2_initialize_objfile): Read index from cache.
4668         (dwarf2_build_psymtabs): Save to index.
4669         * dwarf-index-cache.h: New file.
4670         * dwarf-index-cache.c: New file.
4671         * dwarf-index-write.h: New file.
4672
4673 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4674
4675         * gnulib/aclocal.m4: Re-generate.
4676         * gnulib/config.in: Re-generate.
4677         * gnulib/configure: Re-generate.
4678         * gnulib/import/Makefile.am: Re-generate.
4679         * gnulib/import/Makefile.in: Re-generate.
4680         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4681         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4682         * gnulib/import/m4/mkdir.m4: New file.
4683         * gnulib/import/mkdir.c: New file.
4684         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4685         module.
4686
4687 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4688
4689         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4690         * common/scoped_mmap.c: New file.
4691         * common/scoped_mmap.h (destroy): New method.
4692         (~scoped_mmap, reset): Use destroy.
4693         (scoped_mmap): New move constructor.
4694         (mmap_file): New declaration.
4695         * unittests/scoped_mmap-selftests.c (test_normal,
4696         test_invalid_filename, run_tests): New functions.
4697         (_initialize_scoped_mmap_selftests): Register selftest.
4698
4699 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4700
4701         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4702         (read_gdb_index_from_buffer): ... this.  Remove section
4703         parameter, add buffer parameter.
4704         (get_gdb_index_contents_ftype,
4705         get_gdb_index_contents_dwz_ftype): New typedefs.
4706         (dwarf2_read_gdb_index): Add callback parameters to get the
4707         index contents.
4708         (get_gdb_index_contents_from_section): New.
4709         (dwarf2_initialize_objfile): Update call to
4710         dwarf2_read_gdb_index.
4711
4712 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4713
4714         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4715         (gdb_open_cloexec): Likewise.
4716         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4717         (commandline_from_pid): Likewise.
4718         (linux_xfer_osdata_threads): Likewise.
4719         (linux_xfer_osdata_fds): Likewise.
4720         * ada-lang.c (is_package_name): Likewise.
4721         * auxv.c (procfs_xfer_auxv): Likewise.
4722         * breakpoint.c (print_one_breakpoint_location): Use
4723         uiout::field_fmt.
4724         (print_one_catch_solib): Use string_printf.
4725         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4726         (add_pe_forwarded_sym): Likewise.
4727         * dwarf2read.c (create_type_unit_group): Likewise.
4728         (build_error_marker_type): Likewise.
4729         * infcall.c (get_function_name): Likewise.
4730         * valprint.c (print_converted_chars_to_obstack): Likewise.
4731         * xtensa-tdep.c (xtensa_register_type): Likewise.
4732
4733 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4734
4735         * remote.c (remote_target::download_tracepoint): Fix format
4736         string errors.
4737
4738 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4739
4740         * tracefile.c: Include common/byte-vector.h.
4741         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4742         with trace_regblock_size if needed.  Update uses of buf.
4743
4744 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4745
4746         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4747         std::vector<unsigned char>.
4748         * tracepoint.c (collection_list::collection_list): Remove
4749         m_regs_mask initializer from initializer list.  Resize
4750         m_regs_mask using the largest remote register number.
4751         (collection_list::add_remote_register): Remove size check on
4752         m_regs_mask.  Use at to access element.
4753         (collection_list::stringify): Change type of temp_buf to
4754         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4755         stringify the register mask.  Use pack_hex_byte for the register
4756         mask.
4757
4758 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4759
4760         * tracepoint.h (class collection_list) <add_register>: Remove.
4761         <add_remote_register, add_ax_registers, add_local_register>:
4762         Declare.
4763         <add_memrange>: Add scope parameter.
4764         * tracepoint.c (encode_actions_1): Likewise.
4765         (collection_list::add_register): Rename to ...
4766         (collection_list::add_remote_register): ... this.  Update
4767         comment.
4768         (collection_list::add_ax_registers, add_local_register): New
4769         methods.
4770         (collection_list::add_memrange): Add scope parameter.  Call
4771         add_local_register instead of add_register.
4772         (finalize_tracepoint_aexpr): New function.
4773         (collection_list::collect_symbol): Update calls to add_memrange.
4774         Call add_local_register instead of add_register.  Call
4775         add_ax_registers.  Call finalize_tracepoint_aexpr.
4776         (encode_actions_1): Get remote regnos for $reg action.  Call
4777         add_remote_register, add_ax_registers, and add_local_register.
4778         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4779         (validate_actionline): Call finalize_tracepoint_aexpr.
4780
4781 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4782
4783         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4784         Replace array buf with gdb::char_vector buf, of size
4785         get_remote_packet_size ().  Replace references to buf and
4786         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4787         and xsnprintf with snprintf.  Raise errors if the buffer is too
4788         small.
4789
4790 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4791
4792         * remote.c (remote_target::download_tracepoint): Fix the has_more
4793         predicate in the QTDP action list iteration.
4794
4795 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4796
4797         * remote.c (remote_target::download_tracepoint): Fix indentation
4798         in for block.
4799
4800 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4801
4802         * proc-api.c (_initialize_proc_api): Remove c, unused.
4803         * procfs.c (procfs_init_inferior): Remove signals, unused.
4804         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4805         unused.
4806
4807 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4808             Andrew Burgess  <andrew.burgess@embecosm.com>
4809
4810         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4811         'W_STOPCODE (0)' as this could be ambiguous.
4812
4813 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4814
4815         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4816         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4817         "ai_socktype").
4818
4819 2018-08-02  Tom Tromey  <tom@tromey.com>
4820
4821         PR symtab/16842.
4822         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4823         symbols.
4824         (process_structure_scope): Likewise.
4825
4826 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4827
4828         PR gdb/22629:
4829         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4830         kill inferior.
4831
4832 2018-08-02  Tom Tromey  <tom@tromey.com>
4833
4834         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4835         (darwin_suspend_inferior, darwin_resume_inferior)
4836         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4837         (darwin_check_new_threads): Check result of get_darwin_inferior.
4838
4839 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4840
4841         GDB 8.1.1 released.
4842
4843 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4844
4845         * varobj.c (varobj_get_path_expr_parent): Report an error if
4846         parent is a dynamic varobj.
4847
4848 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4849
4850         * gnulib/aclocal.m4: Re-generate.
4851         * gnulib/config.in: Re-generate.
4852         * gnulib/configure: Re-generate.
4853         * gnulib/import/Makefile.in: Re-generate.
4854         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4855         * gnulib/import/m4/onceonly.m4: Re-generate.
4856
4857 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4858
4859         * target-descriptions.c (struct xml_test_tdesc): New.
4860         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4861         (record_xml_tdesc): Update.
4862         (maintenance_check_xml_descriptions): Update.
4863         * target-descriptions.h (record_xml_tdesc): Update comment.
4864
4865 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4866
4867         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4868         checking array bounds are defined.
4869
4870 2018-07-30  Tom Tromey  <tom@tromey.com>
4871
4872         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4873         irreflexivity violation.
4874
4875 2018-07-30  Tom Tromey  <tom@tromey.com>
4876
4877         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4878         * value.c (unpack_long): Remove lint code.
4879         * valops.c (value_ind): Remove lint code.
4880         * valarith.c (value_x_binop, value_x_unop, value_equal)
4881         (value_pos): Remove lint code.
4882
4883 2018-07-28  Tom de Vries  <tdevries@suse.de>
4884
4885         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4886         with undefined upper bound as <optimized out>.
4887
4888 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4889
4890         * gcore.in: Rename variable "name" to "prefix".  Expand
4891         "usage" text.
4892
4893 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4894
4895         * windows-nat.c (windows_nat_target::create_inferior): Update to
4896         call close() in global namespace.
4897
4898 2018-07-26  Tom Tromey  <tom@tromey.com>
4899
4900         * dwarf-index-write.c (add_address_entry): Don't add objfile
4901         offsets.
4902         * dbxread.c (find_stab_function): Rename from
4903         find_stab_function_addr.  Return a bound_minimal_symbol.
4904         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4905         Don't add objfile offsets.
4906         (end_psymtab): Use raw_text_low, raw_text_high,
4907         MSYMBOL_VALUE_RAW_ADDRESS.
4908         (read_ofile_symtab): Update.
4909         (process_one_symbol): Update.
4910         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4911         offsets.
4912         (dw2_relocate): Remove.
4913         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4914         searching addrmap.
4915         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4916         Update.
4917         (process_psymtab_comp_unit_reader, add_partial_symbol)
4918         (add_partial_subprogram, dwarf2_ranges_read): Update.
4919         (load_partial_dies): Update.
4920         (add_address_entry): Don't add objfile offsets.
4921         (dwarf2_build_include_psymtabs): Update.
4922         (create_addrmap_from_aranges): Don't add objfile offsets.
4923         (dw2_find_pc_sect_compunit_symtab): Update.
4924         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4925         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4926         Update.
4927         (parse_partial_symbols): Don't add objfile offsets.  Use
4928         raw_text_low, raw_text_high.  Update.
4929         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4930         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4931         or call 'relocate' quick function.  Clear psymbol_map.
4932         * psympriv.h (struct partial_symbol) <address>: Add section
4933         offset.
4934         <set_unrelocated_address>: Rename from set_address.
4935         <raw_text_low, raw_text_high>: New methods.
4936         <text_low, text_high>: Add objfile parameter.
4937         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4938         set_unrelocated_address.
4939         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4940         (find_pc_psymbol): Update.
4941         (fixup_psymbol_section, relocate_psymtabs): Remove.
4942         (dump_psymtab, psym_functions): Update.
4943         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4944         parameter.
4945         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4946         (start_psymtab_common): Update.
4947         * symfile-debug.c (debug_qf_relocate): Remove.
4948         (debug_sym_quick_functions): Update.
4949         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4950         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4951         Update.
4952
4953 2018-07-26  Tom Tromey  <tromey@redhat.com>
4954
4955         * dbxread.c (end_psymtab): Use text_high_valid and
4956         text_low_valid.
4957         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4958         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4959         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4960         Update comment.
4961         <text_low_valid, text_high_valid>: New fields.
4962         <set_text_low, set_text_high>: Update.
4963         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4964
4965 2018-07-26  Tom Tromey  <tom@tromey.com>
4966
4967         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4968         Update.
4969         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4970         textlow and texthigh fields.
4971         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4972         Update.
4973         * mdebugread.c (parse_lines, parse_partial_symbols)
4974         (psymtab_to_symtab_1): Update.
4975         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4976         Rename fields.  Update comment.  Now private.
4977         <text_low, text_high, set_text_low, set_text_high>: New methods.
4978         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4979         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4980         (start_psymtab_common, maintenance_info_psymtabs)
4981         (maintenance_check_psymtabs): Update.
4982         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4983         texthigh fields.
4984         (scan_xcoff_symtab): Update.
4985
4986 2018-07-26  Tom Tromey  <tromey@redhat.com>
4987
4988         * psympriv.h (struct partial_symbol) <unrelocated_address,
4989         address, set_address>: New methods.
4990         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4991         (fixup_psymbol_section, relocate_psymtabs): Update.
4992         (print_partial_symbols): Add 'objfile' parameter.  Update.
4993         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4994         Update.
4995
4996 2018-07-26  Tom Tromey  <tom@tromey.com>
4997
4998         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4999         (debug_names::write_psymbols): Update.
5000         * psympriv.h (struct partial_symbol): Derive from
5001         general_symbol_info.
5002         <obj_section>: New method.
5003         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5004         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5005         (find_pc_sect_psymbol, fixup_psymbol_section)
5006         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5007         (print_partial_symbols, recursively_search_psymtabs)
5008         (compare_psymbols, psymbol_hash, psymbol_compare)
5009         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5010         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5011
5012 2018-07-26  Tom Tromey  <tromey@redhat.com>
5013
5014         * dbxread.c (end_psymtab): Remove dead code.
5015
5016 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5017
5018         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5019         DWARF unwinders are disabled.
5020         * dwarf2-frame.c: Add dwarf2read.h include.
5021         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5022         disabled.
5023         (dwarf2_frame_unwinders_enabled_p): Define.
5024         (show_dwarf_unwinders_enabled_p): New function.
5025         (_initialize_dwarf2_frame): Register switch to control DWARF
5026         unwinder use.
5027         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5028         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5029         (show_dwarf_cmdlist): Remove static keyword.
5030         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5031         (show_dwarf_cmdlist): Declare.
5032         * NEWS: Document new feature.
5033
5034 2018-07-26  Tom de Vries  <tdevries@suse.de>
5035
5036         PR breakpoints/23366
5037         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5038
5039 2018-07-26  Tom de Vries  <tdevries@suse.de>
5040
5041         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5042         DW_AT_count can't be translated to a dynamic prop.
5043
5044 2018-07-25  Tom de Vries  <tdevries@suse.de>
5045
5046         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5047         try/catch.
5048
5049 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5050
5051         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5052
5053 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5054
5055         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5056
5057 2018-07-24  Keith Seitz  <keiths@redhat.comt
5058
5059         PR symtab/23010
5060         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5061         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5062         instead of add_symbol_to_list.
5063         (read_file_scope): Call prepare_one_comp_unit before reading
5064         any other DIEs.
5065
5066 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5067
5068         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5069
5070 2018-07-24  Tom Tromey  <tom@tromey.com>
5071
5072         * utils.c (malloc, realloc, free): Don't declare.
5073         * configure, config.in: Rebuild.
5074         * configure.ac: Don't check for declarations of free, malloc, or
5075         realloc.
5076
5077 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5078
5079         * aarch64-linux-nat.c
5080         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5081         variable.
5082         * arm-linux-nat.c (fetch_regs): Likewise.
5083         (store_regs): Likewise.
5084         (fetch_vfp_regs): Likewise.
5085         (store_vfp_regs): Likewise.
5086         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5087         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5088         (arm_linux_nat_target::insert_watchpoint): Likewise.
5089         (arm_linux_nat_target::remove_watchpoint): Likewise.
5090         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5091         Likewise.
5092         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5093         Likewise.
5094         * ppc-linux-nat.c (fetch_register): Likewise.
5095         (fetch_all_gp_regs): Likewise.
5096         (fetch_ppc_registers): Likewise.
5097         (store_all_gp_regs): Likewise.
5098         (store_ppc_registers): Likewise.
5099         (hwdebug_insert_point): Likewise.
5100         (can_use_watchpoint_cond_accel): Likewise.
5101         * remote-sim.c (gdb_os_write_stdout): Likewise.
5102
5103 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5104             Tom Tromey  <tom@tromey.com>
5105
5106         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5107         test for it.
5108         * configure: Rebuild.
5109
5110 2018-07-22  Tom Tromey  <tom@tromey.com>
5111
5112         * regformats/regdat.sh: Define xmltarget_${name} inside
5113         #ifndef IN_PROCESS_AGENT.
5114
5115 2018-07-22  Tom Tromey  <tom@tromey.com>
5116
5117         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5118
5119 2018-07-22  Tom Tromey  <tom@tromey.com>
5120
5121         * symfile.c (reread_symbols): Notify iter, not objfile.
5122
5123 2018-07-22  Tom Tromey  <tom@tromey.com>
5124
5125         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5126         Use arch_ops.
5127         (ravenscar_thread_target::prepare_to_store): Likewise.
5128
5129 2018-07-22  Tom Tromey  <tom@tromey.com>
5130
5131         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5132         unused variable.  Call value_fetch_lazy when needed.
5133         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5134         Remove unused variable.  Call value_fetch_lazy when needed.
5135
5136 2018-07-22  Tom Tromey  <tom@tromey.com>
5137
5138         * m32c-tdep.c (mark_dma): Return void.
5139         (make_regs): Remove unused declarations.
5140
5141 2018-07-22  Tom Tromey  <tom@tromey.com>
5142
5143         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5144         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5145         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5146         bkscm_get_valid_block_smob_arg_unsafe for effect.
5147
5148 2018-07-22  Tom Tromey  <tom@tromey.com>
5149
5150         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5151         value_type.
5152
5153 2018-07-22  Tom Tromey  <tom@tromey.com>
5154
5155         * windows-nat.c (saved_context): Conditionally define.
5156         * remote.c (remote_target::remote_btrace_maybe_reopen):
5157         Conditionally declare "warned".
5158         * inflow.c (sigquit_ours): Conditionally define.
5159         (new_tty): Move "tty" declaration inside #if.
5160         * guile/guile.c (guile_datadir): Conditionally define.
5161         * charset.c (set_be_le_names): Move some declarations inside #if.
5162         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5163         #if.
5164         (parse_xml_btrace_conf): Likewise.
5165
5166 2018-07-22  Tom Tromey  <tom@tromey.com>
5167
5168         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5169
5170 2018-07-22  Tom Tromey  <tom@tromey.com>
5171
5172         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5173         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5174         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5175         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5176         * stack.c (frame_apply_level_command): Remove unused variable.
5177         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5178         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5179         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5180         unused variable.
5181         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5182         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5183         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5184         variable.
5185         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5186         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5187         variable.
5188         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5189         Remove unused variable.
5190         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5191         variable.
5192         * common/tdesc.c (print_xml_feature::visit): Remove unused
5193         variable.
5194         * compile/compile-object-load.c (store_regs): Remove unused
5195         variables.
5196         * complaints.c (clear_complaints): Remove unused variable.
5197         * corelow.c (core_target_open): Remove unused variable.
5198         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5199         variable.
5200         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5201         variable.
5202         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5203         variable.
5204         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5205         variable.
5206         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5207         variable.
5208         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5209         variable.
5210         * ia64-tdep.c (examine_prologue): Remove unused variable.
5211         * infcall.c (run_inferior_call): Remove unused variable.
5212         * inferior.c (exit_inferior): Remove unused variable.
5213         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5214         * linespec.c (decode_line_2): Remove unused variable.
5215         * linux-nat.c (super_close): Remove.
5216         * linux-tdep.c (linux_info_proc): Remove unused variable.
5217         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5218         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5219         Remove unused variable.
5220         * parse.c (find_minsym_type_and_address): Remove unused variable.
5221         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5222         variable.
5223         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5224         variable.
5225         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5226         variables.
5227         * record-btrace.c (record_btrace_target::store_registers): Remove
5228         unused variable.
5229         (cmd_show_record_btrace_cpu): Remove unused variable.
5230         * riscv-tdep.c (riscv_register_reggroup_p)
5231         (riscv_push_dummy_call, riscv_return_value): Remove unused
5232         variable.
5233         * rust-exp.y (literal): Remove unused variable.
5234         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5235         unused variable.
5236         <STRUCTOP_ANONYMOUS>: Likewise.
5237         * s390-linux-tdep.c (s390_linux_init_abi_31)
5238         (s390_linux_init_abi_64): Remove unused variable.
5239         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5240         (file_select_thread, net_windows_open, _initialize_ser_windows):
5241         Remove unused variables.
5242         * symtab.c (find_pc_sect_line): Remove unused variable.
5243         * target-memory.c (compute_garbled_blocks): Remove unused
5244         variable.
5245         (target_write_memory_blocks): Remove unused variable.
5246         * target.c (target_stack::unpush): Remove unused variables.
5247         * tracepoint.c (start_tracing, all_tracepoint_actions)
5248         (merge_uploaded_trace_state_variables)
5249         (print_one_static_tracepoint_marker): Remove unused variable.
5250         * unittests/basic_string_view/element_access/char/1.cc (test01):
5251         Remove unused variable.
5252         * windows-nat.c (windows_continue, windows_add_all_dlls)
5253         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5254         Remove unused variables.
5255
5256 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5257
5258         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5259         attr_profile in HAVE_ELF.
5260         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5261         HAVE_ELF.
5262
5263 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5264
5265         * frame.c (frame_register_unwind): Change parameter name.
5266         (frame_unwind_register): Likewise.
5267         (frame_unwind_register_value): Likewise.
5268         (frame_unwind_register_signed): Likewise.
5269         (frame_unwind_register_unsigned): Likewise.
5270         * frame.h (frame_register_unwind): Likewise.
5271         (frame_unwind_register): Likewise.
5272         (frame_unwind_register_value): Likewise.
5273         (frame_unwind_register_signed): Likewise.
5274         (frame_unwind_register_unsigned): Likewise.
5275         (frame_unwind_arch): Likewise.
5276
5277 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5278
5279         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5280         ISA maintenance.
5281
5282 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5283
5284         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5285         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5286         hand.
5287
5288 2018-07-20  Keith Seitz  <keiths@redhat.com>
5289
5290         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5291         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5292         m_compunit_symtab, m_language>: Add "m_" prefix.
5293         Update all uses.
5294         * buildsym.c: Update all uses.
5295
5296 2018-07-20  Tom Tromey  <tom@tromey.com>
5297
5298         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5299         * buildsym.h (record_line_ftype): Remove typedef.
5300
5301 2018-07-20  Tom Tromey  <tom@tromey.com>
5302
5303         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5304         (end_expandable_symtab): Likewise.
5305         (end_symtab_get_static_block): Likewise.
5306         (end_symtab_from_static_block): Likewise.
5307         * buildsym-legacy.c (augment_type_symtab): Remove.
5308         (end_expandable_symtab): Remove.
5309         (end_symtab_get_static_block): Remove.
5310         (end_symtab_from_static_block): Remove.
5311
5312 2018-07-20  Tom Tromey  <tom@tromey.com>
5313
5314         * dwarf2read.c: Include buildsym.h.
5315         (struct dwarf2_cu) <builder>: New method.
5316         (fixup_go_packaging): Update.
5317         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5318         use scoped_free_pendings.
5319         (using_directives): Add "cu" parameter, remove "language".
5320         (read_import_statement, setup_type_unit_groups, )
5321         (read_func_scope, read_lexical_block_scope)
5322         (dwarf2_record_block_ranges, read_namespace): Update.
5323         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5324         (lnp_state_machine::handle_end_sequence): Update.
5325         (class lnp_state_machine) <m_cu>: New member.
5326         <m_record_line_callback>: Remove.
5327         <m_currently_recording_lines>: New member.
5328         (lnp_state_machine::handle_set_file): Update.
5329         (noop_record_line): Remove.
5330         (dwarf_record_line_p): Add cu parameter.
5331         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5332         (lnp_state_machine::record_line)
5333         (lnp_state_machine::lnp_state_machine)
5334         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5335         (dwarf_decode_lines): Update.
5336         (dwarf2_start_subfile): Add cu parameter.
5337         (dwarf2_start_symtab, new_symbol): Update.
5338         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5339         Remove dwarf2_per_objfile parameter.
5340         (dwarf_decode_macros): Update.
5341
5342 2018-07-20  Tom Tromey  <tom@tromey.com>
5343
5344         * stabsread.c (define_symbol): Update.
5345         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5346         * dwarf2read.c (new_symbol): Update.
5347         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5348         * cp-namespace.c: Include buildsym.h.
5349         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5350         * buildsym-legacy.c (get_buildsym_compunit): New function.
5351
5352 2018-07-20  Tom Tromey  <tom@tromey.com>
5353
5354         * xcoffread.c: Include buildsym-legacy.h.
5355         * windows-nat.c: Include buildsym-legacy.h.
5356         * stabsread.c: Include buildsym-legacy.h.
5357         * mdebugread.c: Include buildsym-legacy.h.
5358         * buildsym-legacy.h: New file.
5359         * buildsym-legacy.c: New file, from buildsym.c.
5360         * go32-nat.c: Include buildsym-legacy.h.
5361         * dwarf2read.c: Include buildsym-legacy.h.
5362         * dbxread.c: Include buildsym-legacy.h.
5363         * cp-namespace.c: Include buildsym-legacy.h.
5364         * coffread.c: Include buildsym-legacy.h.
5365         * buildsym.h: Move some contents to buildsym-legacy.h.
5366         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5367         buildsym-legacy.c.
5368         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5369
5370 2018-07-20  Tom Tromey  <tom@tromey.com>
5371
5372         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5373         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5374         (buildsym_compunit::buildsym_compunit)
5375         (buildsym_compunit::~buildsym_compunit)
5376         (buildsym_compunit::get_macro_table): Define.
5377
5378 2018-07-20  Tom Tromey  <tom@tromey.com>
5379
5380         * buildsym.c (reset_symtab_globals): Remove.
5381         (buildsym_compunit::end_symtab_from_static_block): Update.
5382         (buildsym_compunit::augment_type_symtab): Update.
5383         (end_symtab_from_static_block): Call free_buildsym_compunit.
5384         (augment_type_symtab, end_symtab, end_expandable_symtab):
5385         Likewise.
5386
5387 2018-07-20  Tom Tromey  <tom@tromey.com>
5388
5389         * arch-utils.c: Do not include buildsym.h.
5390         * mipsread.c: Do not include buildsym.h.
5391         * machoread.c: Do not include buildsym.h.
5392         * elfread.c: Do not include buildsym.h.
5393
5394 2018-07-20  Tom Tromey  <tom@tromey.com>
5395
5396         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5397         initialization.
5398         (buildsym_compunit): Add new constructor.
5399         (struct buildsym_compunit) <get_last_source_file, finish_block,
5400         record_block_range, start_subfile, patch_subfile_names,
5401         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5402         set_last_source_start_addr, get_last_source_start_addr,
5403         get_local_using_directives, set_local_using_directives,
5404         get_global_using_directives, outermost_context_p,
5405         get_current_context_stack, get_context_stack_depth,
5406         get_current_subfile, get_local_symbols, get_file_symbols,
5407         get_global_symbols, record_debugformat, record_producer,
5408         push_context, pop_context, end_symtab_get_static_block,
5409         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5410         New public methods.
5411         <record_pending_block, finish_block_internal, make_blockvector,
5412         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5413         private methods.
5414         Update all users.
5415
5416 2018-05-22  Tom Tromey  <tom@tromey.com>
5417
5418         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5419         parameter.
5420         (finish_block_internal): Update.
5421
5422 2018-07-20  Tom Tromey  <tom@tromey.com>
5423
5424         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5425         parameter.
5426         (finish_block_internal): Update.
5427
5428 2018-07-20  Tom Tromey  <tom@tromey.com>
5429
5430         * buildsym.h (EXTERN): Don't define or undef.
5431         * buildsym.c (EXTERN): Don't define.
5432
5433 2018-07-20  Tom Tromey  <tom@tromey.com>
5434
5435         * buildsym.c: Remove TODO comment.
5436
5437 2018-07-20  Tom Tromey  <tom@tromey.com>
5438
5439         * coffread.c (coff_symtab_read): Update.
5440         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5441         (xcoff_new_init): Update.
5442         * mipsread.c (mipscoff_new_init): Update.
5443         * mdebugread.c (mdebug_build_psymtabs): Update.
5444         * elfread.c (elf_new_init): Update.
5445         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5446         Update.
5447         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5448         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5449         (stabsect_build_psymtabs): Update.
5450         * buildsym.h (buildsym_init): Don't declare.
5451         * buildsym.c: Update comment.
5452         (prepare_for_building): Remove.
5453         (start_symtab, restart_symtab): Update.
5454         (reset_symtab_globals): Update comment.
5455         (buildsym_init): Remove.
5456
5457 2018-07-20  Tom Tromey  <tom@tromey.com>
5458
5459         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5460         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5461         (read_enum_type, common_block_start, common_block_end)
5462         (cleanup_undefined_types_1, finish_global_stabs): Update.
5463         * mdebugread.c (psymtab_to_symtab_1): Update.
5464         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5465         (read_lexical_block_scope, new_symbol): Update.
5466         * dbxread.c (process_one_symbol): Update.
5467         * coffread.c (coff_symtab_read, process_coff_symbol)
5468         (coff_read_enum_type): Update.
5469         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5470         declare.
5471         (get_local_symbols, get_file_symbols, get_global_symbols): New
5472         functions.
5473         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5474         m_global_symbols.
5475         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5476         (~scoped_free_pendings): Update.
5477         (finish_block, prepare_for_building, reset_symtab_globals)
5478         (end_symtab_get_static_block, end_symtab_with_blockvector)
5479         (augment_type_symtab, push_context): Update.
5480         (get_local_symbols, get_file_symbols, get_global_symbols): New
5481         functions.
5482         (buildsym_init): Update.
5483
5484 2018-07-20  Tom Tromey  <tom@tromey.com>
5485
5486         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5487         (process_full_type_unit): Likewise.
5488         (dwarf2_start_symtab): Set list_in_scope.
5489
5490 2018-07-20  Tom Tromey  <tom@tromey.com>
5491
5492         * dwarf2read.c (process_psymtab_comp_unit_reader)
5493         (build_type_psymtabs_reader): Do not set list_in_scope.
5494
5495 2018-07-20  Tom Tromey  <tom@tromey.com>
5496
5497         * buildsym.c (free_pendings): Remove.
5498         (add_symbol_to_list, scoped_free_pendings)
5499         (finish_block_internal, buildsym_init): Update.
5500
5501 2018-07-20  Tom Tromey  <tom@tromey.com>
5502
5503         * xcoffread.c (read_xcoff_symtab): Update.
5504         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5505         Update.
5506         * dbxread.c (process_one_symbol): Update.
5507         * coffread.c (coff_symtab_read): Update.
5508         * buildsym.h (finish_block): Update.
5509         * buildsym.c (finish_block): Remove "listhead" argument.
5510         (end_symtab_get_static_block): Update.
5511
5512 2018-07-20  Tom Tromey  <tom@tromey.com>
5513
5514         * buildsym.h (class scoped_free_pendings): Remove constructor.
5515         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5516         method.
5517         <m_pending_block_obstack, m_pending_blocks>: New members.
5518         (pending_block_obstack, pending_blocks): Remove.
5519         (scoped_free_pendings::scoped_free_pendings): Default.
5520         (~scoped_free_pendings): Update.
5521         (free_pending_blocks): Remove.
5522         (finish_block_internal, record_pending_block, make_blockvector)
5523         (end_symtab_get_static_block, augment_type_symtab, push_context)
5524         (buildsym_init): Update.
5525
5526 2018-07-20  Tom Tromey  <tom@tromey.com>
5527
5528         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5529         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5530         members.
5531         (pending_addrmap, pending_addrmap_obstack)
5532         (pending_addrmap_interesting): Remove.
5533         (scoped_free_pendings, record_block_range, make_blockvector)
5534         (prepare_for_building, reset_symtab_globals, buildsym_init):
5535         Update.
5536
5537 2018-07-20  Tom Tromey  <tom@tromey.com>
5538
5539         * xcoffread.c (process_linenos): Update.
5540         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5541         * mdebugread.c (psymtab_to_symtab_1): Update.
5542         * dwarf2read.c (setup_type_unit_groups)
5543         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5544         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5545         * dbxread.c (process_one_symbol): Update.
5546         * coffread.c (coff_symtab_read, enter_linenos)
5547         (process_coff_symbol): Update.
5548         * buildsym.h (current_subfile): Don't declare.
5549         (get_current_subfile): Declare.
5550         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5551         member.
5552         (start_subfile, free_buildsym_compunit, push_subfile)
5553         (prepare_for_building, start_symtab): Update.
5554         (get_current_subfile): New function.
5555
5556 2018-07-20  Tom Tromey  <tom@tromey.com>
5557
5558         * coffread.c (coff_symtab_read): Update.
5559         * xcoffread.c (read_xcoff_symtab): Update.
5560         * dwarf2read.c (new_symbol): Update.
5561         (read_func_scope, read_lexical_block_scope): Update.
5562         * dbxread.c (process_one_symbol): Update.
5563         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5564         (outermost_context_p): Remove macro.
5565         (outermost_context_p, get_current_context_stack)
5566         (get_context_stack_depth): Declare.
5567         (pop_context): Return struct context_stack.
5568         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5569         member.
5570         (context_stack_size): Remove.
5571         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5572         (prepare_for_building, end_symtab_get_static_block)
5573         (augment_type_symtab, push_context): Update.
5574         (pop_context): Return struct context_stack.
5575         (outermost_context_p, get_current_context_stack)
5576         (get_context_stack_depth): New functions.
5577         (buildsym_init): Update.
5578
5579 2018-07-20  Tom Tromey  <tom@tromey.com>
5580
5581         * rust-exp.y: Now a pure parser.  Update all rules.
5582         (%union): Move earlier.
5583         (current_parser, work_obstack): Remove globals.
5584         (rust_parser, ~rust_parser): Update.
5585         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5586         lex_character, lex_number, lex_string, lex_identifier,
5587         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5588         convert_name, convert_params_to_expression,
5589         convert_ast_to_expression, ast_basic_type, ast_operation,
5590         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5591         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5592         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5593         ast_array_type, ast_slice_type, ast_reference_type,
5594         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5595         (rust_parse): Update.
5596         (rustyyerror, rustyylex): Add parser parameter.
5597         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5598         (rust_lex_stringish_test, rust_lex_test_sequence)
5599         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5600         (rust_lex_test_push_back, rust_lex_tests): Update.
5601
5602 2018-07-19  Pedro Alves  <palves@redhat.com>
5603
5604         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5605         gdb::unique_xmalloc_ptr.
5606         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5607         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5608         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5609         copy-initialization.
5610         * guile/scm-pretty-print.c (ppscm_print_children): Use
5611         gdb::unique_xmalloc_ptr instead of cleanups.
5612         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5613         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5614         gdb::unique_xmalloc_ptr.
5615         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5616         Adjust to use gdb::unique_xmalloc_ptr.
5617         * guile/scm-utils.c (extract_arg): Adjust.
5618         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5619         gdb::unique_xmalloc_ptr instead of a cleanup.
5620
5621 2018-07-19  Tom Tromey  <tom@tromey.com>
5622
5623         * utils.c (do_value_free_to_mark)
5624         (make_cleanup_value_free_to_mark): Remove.
5625         * utils.h (make_cleanup_value_free_to_mark): Remove.
5626
5627 2018-07-19  Pedro Alves  <palves@redhat.com>
5628
5629         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5630         forwarding reference.
5631
5632 2018-07-18  Pedro Alves  <palves@redhat.com>
5633
5634         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5635         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5636         cleanup.
5637
5638 2018-07-18  Pedro Alves  <palves@redhat.com>
5639
5640         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5641         exceptions.
5642         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5643         (gdbscm_wrap): New.
5644         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5645         directly instead of a cleanup.
5646         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5647         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5648         (vlscm_binop_gdbthrow): New, factored out from ...
5649         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5650         (vlscm_rich_compare): Use gdbscm_wrap.
5651         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5652         instead of a cleanup.
5653         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5654         cleanup.
5655         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5656         Use xfree directly instead of a cleanup.
5657         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5658         Adjust to use gdbscm_wrap and scoped_value_mark.
5659         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5660         (gdbscm_value_address, gdbscm_value_dereference)
5661         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5662         scoped_value_mark.
5663         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5664         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5665         scoped_value_mark.
5666         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5667         gdbscm_wrap and scoped_value_mark.
5668         (gdbscm_value_to_string): Use xfree directly instead of a
5669         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5670         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5671         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5672         scoped_value_mark.
5673         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5674         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5675         scoped_value_mark.
5676         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5677         gdbscm_wrap.
5678
5679 2018-07-18  Tom de Vries  <tdevries@suse.de>
5680
5681         * findvar.c (default_read_var_value): Also resolve dynamic type for
5682         LOC_OPTIMIZED_OUT vars.
5683
5684 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5685
5686         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5687         decoding.
5688
5689 2018-07-17  Tom Tromey  <tom@tromey.com>
5690
5691         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5692         (compute_enum_list, pascm_set_param_value_x)
5693         (gdbscm_parameter_value): Update.
5694         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5695         (gdbscm_scm_to_host_string): Update.
5696         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5697         Update.
5698         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5699         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5700         * guile/scm-string.c (gdbscm_scm_to_string): Return
5701         unique_xmalloc_ptr.
5702         (gdbscm_scm_to_host_string): Likewise.
5703
5704 2018-07-17  Tom Tromey  <tom@tromey.com>
5705
5706         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5707         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5708         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5709         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5710         unique_xmalloc_ptr.
5711
5712 2018-07-17  Tom Tromey  <tom@tromey.com>
5713
5714         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5715         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5716         Update.
5717         * guile/scm-cmd.c (cmdscm_function): Update.
5718         * guile/scm-pretty-print.c
5719         (ppscm_print_exception_unless_memory_error): Update.
5720         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5721         Return unique_xmalloc_ptr.
5722
5723 2018-07-17  Tom Tromey  <tom@tromey.com>
5724
5725         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5726         Use string_printf.
5727
5728 2018-07-17  Jim Wilson  <jimw@sifive.com>
5729
5730         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5731         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5732         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5733         unecessary braces after EF_RISCV_RVC test.  Delete call to
5734         set_gdbarch_decr_pc_after_break.
5735
5736         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5737         RISCV_LAST_FP_REGNUM + 1.
5738         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5739
5740 2018-07-17  Tom Tromey  <tom@tromey.com>
5741
5742         * configure.ac: Remove --disable-gdbcli.
5743         * configure: Rebuild.
5744         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5745         (SUBDIR_CLI_CFLAGS): Remove.
5746         (SFILES): Use SUBDIR_CLI_SRCS.
5747         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5748
5749 2018-07-17  Tom Tromey  <tom@tromey.com>
5750
5751         PR gdb/18624:
5752         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5753
5754 2018-07-16  Jim Wilson  <jimw@sifive.com>
5755
5756         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5757
5758 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5759
5760         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5761         variable.
5762         (libunwind_frame_sniffer): Likewise.
5763         (libunwind_frame_prev_register): Likewise.
5764         (libunwind_sigtramp_frame_sniffer): Likewise.
5765         * ia64-tdep.c (ia64_access_reg): Likewise.
5766         (ia64_access_rse_reg): Likewise.
5767         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5768         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5769
5770 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5771
5772         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5773
5774 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5775
5776         * remote-sim.c (gdbsim_target::close,
5777         gdbsim_target::mourn_inferior): Remove unused variables.
5778
5779 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5780
5781         * ia64-tdep.c (ktab_buf): New global.
5782         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5783         (get_kernel_table): Adjust.
5784
5785 2018-07-16  Tom Tromey  <tom@tromey.com>
5786
5787         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5788         * dwarf2read.c (using_directives, new_symbol): Use
5789         outermost_context_p.
5790         * dbxread.c (process_one_symbol): Use outermost_context_p.
5791         * coffread.c (coff_symtab_read): Use outermost_context_p.
5792
5793 2018-07-16  Tom Tromey  <tom@tromey.com>
5794
5795         * dwarf2read.c (using_directives, read_func_scope)
5796         (read_lexical_block_scope): Update.
5797         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5798         * buildsym.h (local_using_directives, global_using_directives):
5799         Don't declare.
5800         (get_local_using_directives, set_local_using_directives)
5801         (get_global_using_directives): Declare.
5802         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5803         m_global_using_directives>: New members.
5804         (finish_block_internal, prepare_for_building)
5805         (reset_symtab_globals, end_symtab_get_static_block)
5806         (push_context): Update.
5807         (get_local_using_directives, set_local_using_directives)
5808         (get_global_using_directives): New functions.
5809         (buildsym_init): Update.
5810
5811 2018-07-16  Tom Tromey  <tom@tromey.com>
5812
5813         * xcoffread.c (xcoff_initial_scan): Don't call
5814         free_pending_blocks.
5815         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5816         * buildsym.h (class scoped_free_pendings): Add constructor.
5817         (free_pending_blocks): Don't declare.
5818         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5819         (free_pending_blocks): Now static.
5820
5821 2018-07-16  Tom Tromey  <tom@tromey.com>
5822
5823         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5824         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5825         member.
5826         (struct subfile_stack): Remove.
5827         (subfile_stack): Remove.
5828         (push_subfile, pop_subfile, buildsym_init): Update.
5829
5830 2018-07-16  Tom Tromey  <tom@tromey.com>
5831
5832         * buildsym.c (push_subfile): Use gdb_assert.
5833         (pop_subfile): Use gdb_assert.
5834
5835 2018-07-16  Tom Tromey  <tom@tromey.com>
5836
5837         * buildsym.h (merge_symbol_lists): Remove.
5838         * buildsym.c (merge_symbol_lists): Remove.
5839
5840 2018-07-16  Tom Tromey  <tom@tromey.com>
5841
5842         * stabsread.c (scan_file_globals): Update comment.
5843         * stabsread.h (scan_file_globals): Move from buildsym.h.
5844         * buildsym.h (scan_file_globals): Move to stabsread.h.
5845
5846 2018-07-16  Tom Tromey  <tom@tromey.com>
5847
5848         * xcoffread.c (xcoff_new_init): Update.
5849         * mipsread.c (mipscoff_new_init): Update.
5850         * mdebugread.c (mdebug_build_psymtabs): Update.
5851         * elfread.c (elf_new_init): Update.
5852         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5853         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5854         * buildsym.h (buildsym_new_init): Don't declare.
5855         * buildsym.c (buildsym_new_init): Remove.
5856
5857 2018-07-16  Tom Tromey  <tom@tromey.com>
5858
5859         * stabsread.h (within_function): Move from buildsym.h.
5860         * stabsread.c (start_stabs): Clear within_function.
5861         * coffread.c (coff_start_symtab): Clear within_function.
5862         * buildsym.h (within_function): Move to stabsread.h.
5863         * buildsym.c (prepare_for_building): Update.
5864
5865 2018-07-16  Tom Tromey  <tom@tromey.com>
5866
5867         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5868         * dwarf2read.c (dwarf2_start_symtab): Don't set
5869         processing_gcc_compilation.
5870         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5871
5872 2018-07-16  Tom Tromey  <tom@tromey.com>
5873
5874         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5875         (next_symbol_text_func): Move from buildsym.h.
5876         * stabsread.c (hashname): Move from buildsym.c.
5877         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5878         (next_symbol_text_func, hashname): Move to stabsread.h.
5879         * buildsym.c: Don't include bcache.h
5880         (hashname): Move to stasbread.c.
5881
5882 2018-07-16  Tom Tromey  <tom@tromey.com>
5883
5884         * buildsym.h (context_stack_size): Don't declare.
5885         * buildsym.c (context_stack_size): New global.
5886
5887 2018-07-16  Tom Tromey  <tom@tromey.com>
5888
5889         * dbxread.c (processing_acc_compilation): New global.
5890         * buildsym.h (processing_acc_compilation): Don't declare.
5891
5892 2018-07-16  Tom Tromey  <tom@tromey.com>
5893
5894         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5895         * dbxread.c (read_ofile_symtab): Update.
5896         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5897         * buildsym.h (last_source_start_addr): Remove.
5898         (set_last_source_start_addr, get_last_source_start_addr):
5899         Declare.
5900         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5901         parameter.
5902         (struct buildsym_compunit) <m_last_source_start_addr>: New
5903         member.
5904         (prepare_for_building): Remove start_addr parameter.
5905         (start_symtab, restart_symtab, end_symtab_get_static_block)
5906         (end_symtab_with_blockvector): Update.
5907         (set_last_source_start_addr, get_last_source_start_addr): New
5908         functions.
5909
5910 2018-07-16  Tom Tromey  <tom@tromey.com>
5911
5912         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5913         member.
5914         (have_line_numbers): Remove.
5915         (record_line, prepare_for_building, end_symtab_get_static_block)
5916         (augment_type_symtab): Update.
5917
5918 2018-07-16  Tom Tromey  <tom@tromey.com>
5919
5920         * buildsym.c (~buildsym_compunit): Free the macro table.
5921         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5922         methods.
5923         <m_pending_macros>: New member.
5924         (pending_macros): Remove.
5925         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5926         (reset_symtab_globals, end_symtab_get_static_block)
5927         (end_symtab_with_blockvector, augment_type_symtab)
5928         (buildsym_init): Update.
5929
5930 2018-07-16  Tom Tromey  <tom@tromey.com>
5931
5932         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5933         parameter.
5934         (buildsym_compunit::set_last_source_file): New method.
5935         <m_last_source_file>: New member.
5936         (prepare_for_building): Remove "name" parameter.
5937         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5938         (last_source_file): Remove.
5939         (set_last_source_file, get_last_source_file): Update.
5940
5941 2018-07-16  Tom Tromey  <tom@tromey.com>
5942
5943         * buildsym.c (prepare_for_building): Add assert.
5944
5945 2018-07-16  Tom Tromey  <tom@tromey.com>
5946
5947         * buildsym.c (~buildsym_compunit): Update.
5948         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5949         (start_subfile, patch_subfile_names)
5950         (end_symtab_with_blockvector): Update.
5951
5952 2018-07-16  Tom Tromey  <tom@tromey.com>
5953
5954         * buildsym.c (struct buildsym_compunit): Add constructor,
5955         destructor, initializers.
5956         (start_buildsym_compunit): Remove.
5957         (free_buildsym_compunit): Use "delete".
5958         (start_symtab, restart_symtab): Use "new".
5959
5960 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5961
5962         * symfile.c (set_objfile_default_section_offset): Remove struct
5963         keyword.
5964
5965 2018-07-14  Stafford Horne  <shorne@gmail.com>
5966
5967         * (Responsible Maintainers): Add myself as or1k maintainer.
5968
5969 2018-07-13  Tom Tromey  <tom@tromey.com>
5970
5971         * symfile.c (set_objfile_default_section_offset): Use extra braces
5972         around initializer.
5973
5974 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5975
5976         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5977         non-branching basr.
5978
5979 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5980
5981         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5982         unittests/cli-utils-selftests.c
5983         * unittests/cli-utils-selftests.c: New file.
5984
5985 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5986
5987         * NEWS: Mention new commands. Mention change to 'thread apply'.
5988
5989 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5990
5991         * thread.c (thr_try_catch_cmd): New function.
5992         (thread_apply_all_command): Handle qcs flags.
5993         (thread_apply_command): Handle qcs flags.
5994         (taas_command): New function.
5995         (tfaas_command): New function.
5996         (_initialize_thread): Update to setup the new commands 'taas
5997         and 'tfaas'. Change doc string for 'thread apply'.
5998
5999 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6000
6001         * stack.c: (trailing_outermost_frame): New function, mostly
6002         extracted from backtrace_command_1.
6003         (leading_innermost_frame): New function.
6004         (backtrace_command_1): Update to call trailing_outermost_frame.
6005         (frame_apply_command_count): New function.
6006         (frame_apply_level_command): New function.
6007         (frame_apply_all_command): New function.
6008         (frame_apply_command): New function.
6009         (faas_command): New function.
6010         (frame_cmd_list): New variable.
6011         (_initialize_stack): Update to setup the new commands 'frame apply'
6012         and 'faas'.
6013
6014 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6015
6016         * cli-utils.c (number_or_range_parser::get_number): Only handle
6017         numbers or convenience var as numbers.
6018         (parse_flags): New function.
6019         (parse_flags_qcs): New function.
6020         (number_or_range_parser::finished): Ensure parsing end is detected
6021         before end of string.
6022         * cli-utils.h (parse_flags): New function.
6023         (parse_flags_qcs): New function.
6024         (number_or_range_parser): Remove m_finished bool.
6025         (number_or_range_parser::skip_range): Set m_in_range to false.
6026
6027 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6028
6029         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6030         on Windows.
6031
6032 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6033             Jan Kratochvil  <jan.kratochvil@redhat.com>
6034             Paul Fertser  <fercerpav@gmail.com>
6035             Tsutomu Seki  <sekiriki@gmail.com>
6036             Pedro Alves  <palves@redhat.com>
6037
6038         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6039         'unittests/parse-connection-spec-selftests.c'.
6040         (COMMON_SFILES): Add 'common/netstuff.c'.
6041         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6042         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6043         * common/netstuff.c: New file.
6044         * common/netstuff.h: New file.
6045         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6046         (wait_for_connect): Update comment.  New parameter
6047         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6048         Use 'sock' directly instead of 'scb->fd'.
6049         (try_connect): New function, with code from 'net_open'.
6050         (net_open): Rewrite main loop to deal with multiple
6051         sockets/addresses.  Handle IPv6-style hostnames; implement
6052         support for IPv6 connections.
6053         * unittests/parse-connection-spec-selftests.c: New file.
6054
6055 2018-07-11  Pedro Alves  <palves@redhat.com>
6056
6057         PR gdb/23377
6058         * remote.c (remote_target::remote_detach_pid): Call
6059         set_current_process.
6060
6061 2018-07-11  Pedro Alves  <palves@redhat.com>
6062
6063         * h8300-tdep.c (h8300_gdbarch_init): Remove
6064         set_gdbarch_ecoff_reg_to_regnum calls.
6065
6066 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6067
6068         PR c++/23373
6069         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6070         offsets/sizes for static members of a class/struct.
6071
6072 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6073
6074         * target-descriptions.c (tdesc_register_bitsize): Rename.
6075         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6076         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6077         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6078
6079 2018-07-10  Tom Tromey  <tom@tromey.com>
6080
6081         * breakpoint.c (moribund_locations): Now static and a
6082         std::vector.
6083         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6084         (build_bpstat_chain, update_global_location_list)
6085         (breakpoint_retire_moribund): Update.
6086         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6087         VEC.
6088
6089 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6090
6091         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6092         (riscv_register_reggroup_p): Use new function, remove unneeded
6093         parenthesis.
6094         (riscv_push_dummy_call): Extend assert to compare against xlen or
6095         flen based on register type.
6096
6097 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6098
6099         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6100
6101 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6102
6103         * remote.c (show_hardware_watchpoint_limit): New function.
6104         (show_hardware_watchpoint_length_limit): New function.
6105         (show_hardware_breakpoint_limit): New function.
6106         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6107         where appropriate, update help text.
6108
6109 2018-07-09  Tom Tromey  <tom@tromey.com>
6110
6111         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6112         (CLIBS): Don't mention NAT_CLIBS.
6113
6114 2018-07-09  Tom Tromey  <tom@tromey.com>
6115
6116         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6117         (LIBGDB_OBS, clean mostlyclean): Update.
6118         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6119
6120 2018-07-09  Tom Tromey  <tom@tromey.com>
6121
6122         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6123         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6124         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6125
6126 2018-07-09  Tom Tromey  <tom@tromey.com>
6127
6128         * Makefile.in (ALLDEPFILES): Remove exec.c.
6129         (COMMON_OBS): Remove exec.o.
6130         (COMMON_SFILES): Add exec.c.
6131
6132 2018-07-09  Tom Tromey  <tom@tromey.com>
6133
6134         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6135
6136 2018-07-09  Tom Tromey  <tom@tromey.com>
6137
6138         * Makefile.in (clean mostlyclean): Remove stamp-version.
6139         (version.c): Depend on stamp-version.
6140         (stamp-version): New rule, from version.c rule.
6141
6142 2018-07-09  Tom Tromey  <tom@tromey.com>
6143
6144         * Makefile.in (init.c): Depend on stamp-init.
6145         (stamp-init): New rule, from init.c rule.
6146         (clean mostlyclean): Remove stamp-init.
6147
6148 2018-07-09  Tom Tromey  <tom@tromey.com>
6149
6150         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6151         SUBDIR_GCC_COMPILE_SRCS.
6152
6153 2018-07-09  Tom Tromey  <tom@tromey.com>
6154
6155         * Makefile.in (init.c): Remove some unused sed rules.
6156
6157 2018-07-09  Tom Tromey  <tom@tromey.com>
6158
6159         * Makefile.in (TSOBS): Remove.
6160         (INIT_FILES): Update.
6161         (LIBGDB_OBS): Update.
6162         (COMMON_SFILES): Add inflow.c.
6163         (SFILES): Remove inflow.c.
6164
6165 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6166
6167         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6168
6169 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6170
6171         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6172         get_saveloc_name, is_signal_frame_name, step_name,
6173         init_remote_name, create_addr_space_name,
6174         destroy_addr_space_name, search_unwind_table_name,
6175         find_dyn_list_name): Constify.
6176
6177 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6178
6179         * darwin-nat.c (darwin_pthread_kill): New function.
6180         (darwin_resume_thread): Use darwin_pthread_kill.
6181
6182 2018-07-05  Tom de Vries  <tdevries@suse.de>
6183
6184         * macroexp.c (macro_buffer) <operator=>: New member function.
6185
6186 2018-07-04  Tom Tromey  <tom@tromey.com>
6187
6188         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6189
6190 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6191
6192         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6193         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6194         * maint.c: Likewise.
6195         * top.c: Likewise.
6196
6197 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6198
6199         * NEWS: Create a new section for the next release branch.
6200         Rename the section of the current branch, now that it has
6201         been cut.
6202
6203 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6204
6205         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6206         * version.in: Bump version to 8.2.50.DATE-git.
6207
6208 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6209             Pedro Alves  <palves@redhat.com>
6210
6211         * linux-nat.c (linux_init_ptrace): Rename to ...
6212         (linux_init_ptrace_procfs): ... this.  Call
6213         linux_proc_init_warnings.
6214         (linux_nat_target::post_attach)
6215         (linux_nat_target::post_startup_inferior): Adjust.
6216         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6217         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6218
6219 2018-07-04  Tom de Vries  <tdevries@suse.de>
6220
6221         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6222         check ...
6223         (read_comp_unit_head): ... here.
6224
6225 2018-07-03  Tom Tromey  <tom@tromey.com>
6226
6227         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6228         (stop_tracing, tstatus_command)
6229         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6230         (print_one_static_tracepoint_marker): Update.
6231         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6232         std::vector.
6233         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6234         VEC.
6235         (all_tracepoints, static_tracepoints_here): Return std::vector.
6236
6237 2018-07-03  Tom Tromey  <tom@tromey.com>
6238
6239         * common/ptid.c (ptid_equal): Remove.
6240         * common/ptid.h (ptid_equal): Don't declare.
6241         * ada-tasks.c: Update.
6242         * breakpoint.c: Update.
6243         * common/agent.c: Update.
6244         * corelow.c: Update.
6245         * darwin-nat-info.c: Update.
6246         * darwin-nat.c: Update.
6247         * dcache.c: Update.
6248         * dtrace-probe.c: Update.
6249         * dummy-frame.c: Update.
6250         * fbsd-nat.c: Update.
6251         * frame.c: Update.
6252         * gdbthread.h: Update.
6253         * gnu-nat.c: Update.
6254         * go32-nat.c: Update.
6255         * inf-loop.c: Update.
6256         * inf-ptrace.c: Update.
6257         * infcall.c: Update.
6258         * infcmd.c: Update.
6259         * inflow.c: Update.
6260         * infrun.c: Update.
6261         * linux-fork.c: Update.
6262         * linux-nat.c: Update.
6263         * linux-thread-db.c: Update.
6264         * mi/mi-cmd-var.c: Update.
6265         * mi/mi-interp.c: Update.
6266         * mi/mi-main.c: Update.
6267         * nto-procfs.c: Update.
6268         * ppc-linux-tdep.c: Update.
6269         * procfs.c: Update.
6270         * python/py-inferior.c: Update.
6271         * python/py-record-btrace.c: Update.
6272         * python/py-record.c: Update.
6273         * ravenscar-thread.c: Update.
6274         * regcache.c: Update.
6275         * remote-sim.c: Update.
6276         * remote.c: Update.
6277         * sol-thread.c: Update.
6278         * solib.c: Update.
6279         * target.c: Update.
6280         * tui/tui-stack.c: Update.
6281         * varobj.c: Update.
6282         * windows-nat.c: Update.
6283         * windows-tdep.c: Update.
6284
6285 2018-07-03  Tom Tromey  <tom@tromey.com>
6286
6287         * common/ptid.c (ptid_match): Remove.
6288         * common/ptid.h (ptid_match): Don't declare.
6289         * fbsd-nat.c: Update.
6290         * infcmd.c: Update.
6291         * infrun.c: Update.
6292         * linux-nat.c: Update.
6293         * record-btrace.c: Update.
6294         * regcache.c: Update.
6295         * remote.c: Update.
6296
6297 2018-07-03  Tom Tromey  <tom@tromey.com>
6298
6299         * common/ptid.c (ptid_tid_p): Remove.
6300         * common/ptid.h (ptid_tid_p): Don't declare.
6301         * sol-thread.c: Update.
6302
6303 2018-07-03  Tom Tromey  <tom@tromey.com>
6304
6305         * common/ptid.c (ptid_lwp_p): Remove.
6306         * common/ptid.h (ptid_lwp_p): Don't declare.
6307         * fbsd-nat.c: Update.
6308         * linux-nat.c: Update.
6309         * nat/linux-procfs.c: Update.
6310         * nat/x86-linux-dregs.c: Update.
6311         * sol-thread.c: Update.
6312
6313 2018-07-03  Tom Tromey  <tom@tromey.com>
6314
6315         * common/ptid.c (ptid_is_pid): Remove.
6316         * common/ptid.h (ptid_is_pid): Don't declare.
6317         * infrun.c: Update.
6318         * linux-nat.c: Update.
6319         * mi/mi-interp.c: Update.
6320         * remote.c: Update.
6321         * thread.c: Update.
6322
6323 2018-07-03  Tom Tromey  <tom@tromey.com>
6324
6325         * common/ptid.c (ptid_get_tid): Remove.
6326         * common/ptid.h (ptid_get_tid): Don't declare.
6327         * ada-tasks.c: Update.
6328         * aix-thread.c: Update.
6329         * bsd-uthread.c: Update.
6330         * darwin-nat.c: Update.
6331         * fbsd-nat.c: Update.
6332         * i386-darwin-nat.c: Update.
6333         * infrun.c: Update.
6334         * linux-tdep.c: Update.
6335         * nto-procfs.c: Update.
6336         * ppc-ravenscar-thread.c: Update.
6337         * python/py-infthread.c: Update.
6338         * ravenscar-thread.c: Update.
6339         * sol-thread.c: Update.
6340         * sparc-ravenscar-thread.c: Update.
6341         * windows-nat.c: Update.
6342
6343 2018-07-03  Tom Tromey  <tom@tromey.com>
6344
6345         * common/ptid.c (ptid_get_lwp): Remove.
6346         * common/ptid.h (ptid_get_lwp): Don't declare.
6347         * aarch64-linux-nat.c: Update.
6348         * ada-tasks.c: Update.
6349         * aix-thread.c: Update.
6350         * amd64-linux-nat.c: Update.
6351         * arm-linux-nat.c: Update.
6352         * corelow.c: Update.
6353         * fbsd-nat.c: Update.
6354         * fbsd-tdep.c: Update.
6355         * gnu-nat.c: Update.
6356         * i386-cygwin-tdep.c: Update.
6357         * i386-gnu-nat.c: Update.
6358         * i386-linux-nat.c: Update.
6359         * ia64-linux-nat.c: Update.
6360         * inf-ptrace.c: Update.
6361         * infrun.c: Update.
6362         * linux-fork.c: Update.
6363         * linux-nat.c: Update.
6364         * linux-tdep.c: Update.
6365         * linux-thread-db.c: Update.
6366         * mips-linux-nat.c: Update.
6367         * nat/aarch64-linux-hw-point.c: Update.
6368         * nat/aarch64-linux.c: Update.
6369         * nat/linux-btrace.c: Update.
6370         * nat/linux-osdata.c: Update.
6371         * nat/linux-procfs.c: Update.
6372         * nat/x86-linux-dregs.c: Update.
6373         * obsd-nat.c: Update.
6374         * ppc-fbsd-nat.c: Update.
6375         * ppc-linux-nat.c: Update.
6376         * procfs.c: Update.
6377         * python/py-infthread.c: Update.
6378         * ravenscar-thread.c: Update.
6379         * remote.c: Update.
6380         * s390-linux-nat.c: Update.
6381         * sol-thread.c: Update.
6382         * sol2-tdep.c: Update.
6383         * spu-linux-nat.c: Update.
6384         * x86-linux-nat.c: Update.
6385         * xtensa-linux-nat.c: Update.
6386
6387 2018-07-03  Tom Tromey  <tom@tromey.com>
6388
6389         * common/ptid.c (ptid_get_pid): Remove.
6390         * common/ptid.h (ptid_get_pid): Don't declare.
6391         * aarch64-linux-nat.c: Update.
6392         * ada-lang.c: Update.
6393         * aix-thread.c: Update.
6394         * alpha-bsd-nat.c: Update.
6395         * amd64-fbsd-nat.c: Update.
6396         * amd64-linux-nat.c: Update.
6397         * arm-linux-nat.c: Update.
6398         * arm-nbsd-nat.c: Update.
6399         * auxv.c: Update.
6400         * break-catch-syscall.c: Update.
6401         * breakpoint.c: Update.
6402         * bsd-uthread.c: Update.
6403         * corelow.c: Update.
6404         * ctf.c: Update.
6405         * darwin-nat.c: Update.
6406         * fbsd-nat.c: Update.
6407         * fbsd-tdep.c: Update.
6408         * gcore.c: Update.
6409         * gnu-nat.c: Update.
6410         * hppa-nbsd-nat.c: Update.
6411         * hppa-obsd-nat.c: Update.
6412         * i386-fbsd-nat.c: Update.
6413         * ia64-linux-nat.c: Update.
6414         * inf-ptrace.c: Update.
6415         * infcmd.c: Update.
6416         * inferior.c: Update.
6417         * inferior.h: Update.
6418         * inflow.c: Update.
6419         * infrun.c: Update.
6420         * linux-fork.c: Update.
6421         * linux-nat.c: Update.
6422         * linux-tdep.c: Update.
6423         * linux-thread-db.c: Update.
6424         * m68k-bsd-nat.c: Update.
6425         * mi/mi-interp.c: Update.
6426         * mi/mi-main.c: Update.
6427         * mips-linux-nat.c: Update.
6428         * mips-nbsd-nat.c: Update.
6429         * mips64-obsd-nat.c: Update.
6430         * nat/aarch64-linux-hw-point.c: Update.
6431         * nat/aarch64-linux.c: Update.
6432         * nat/linux-btrace.c: Update.
6433         * nat/linux-osdata.c: Update.
6434         * nat/linux-procfs.c: Update.
6435         * nat/x86-linux-dregs.c: Update.
6436         * nto-procfs.c: Update.
6437         * obsd-nat.c: Update.
6438         * ppc-linux-nat.c: Update.
6439         * ppc-nbsd-nat.c: Update.
6440         * ppc-obsd-nat.c: Update.
6441         * proc-service.c: Update.
6442         * procfs.c: Update.
6443         * python/py-inferior.c: Update.
6444         * python/py-infthread.c: Update.
6445         * ravenscar-thread.c: Update.
6446         * record.c: Update.
6447         * remote-sim.c: Update.
6448         * remote.c: Update.
6449         * rs6000-nat.c: Update.
6450         * s390-linux-nat.c: Update.
6451         * sh-nbsd-nat.c: Update.
6452         * sol-thread.c: Update.
6453         * sparc-nat.c: Update.
6454         * sparc64-tdep.c: Update.
6455         * spu-linux-nat.c: Update.
6456         * spu-tdep.c: Update.
6457         * target-debug.h: Update.
6458         * target.c: Update.
6459         * thread.c: Update.
6460         * tid-parse.c: Update.
6461         * tracefile-tfile.c: Update.
6462         * vax-bsd-nat.c: Update.
6463         * windows-nat.c: Update.
6464         * x86-linux-nat.c: Update.
6465         * x86-nat.c: Update.
6466
6467 2018-07-03  Tom Tromey  <tom@tromey.com>
6468
6469         * common/ptid.c (pid_to_ptid): Remove.
6470         * common/ptid.h (pid_to_ptid): Don't declare.
6471         * aix-thread.c: Update.
6472         * arm-linux-nat.c: Update.
6473         * common/ptid.c: Update.
6474         * common/ptid.h: Update.
6475         * corelow.c: Update.
6476         * ctf.c: Update.
6477         * darwin-nat.c: Update.
6478         * fbsd-nat.c: Update.
6479         * fork-child.c: Update.
6480         * gnu-nat.c: Update.
6481         * go32-nat.c: Update.
6482         * inf-ptrace.c: Update.
6483         * infcmd.c: Update.
6484         * inferior.c: Update.
6485         * infrun.c: Update.
6486         * linux-fork.c: Update.
6487         * linux-nat.c: Update.
6488         * nat/aarch64-linux-hw-point.c: Update.
6489         * nat/fork-inferior.c: Update.
6490         * nat/x86-linux-dregs.c: Update.
6491         * nto-procfs.c: Update.
6492         * obsd-nat.c: Update.
6493         * procfs.c: Update.
6494         * progspace.c: Update.
6495         * remote.c: Update.
6496         * rs6000-nat.c: Update.
6497         * s390-linux-nat.c: Update.
6498         * sol-thread.c: Update.
6499         * spu-linux-nat.c: Update.
6500         * target.c: Update.
6501         * top.c: Update.
6502         * tracefile-tfile.c: Update.
6503         * windows-nat.c: Update.
6504
6505 2018-07-03  Tom Tromey  <tom@tromey.com>
6506
6507         * common/ptid.h (ptid_build): Don't declare.
6508         * common/ptid.c (ptid_build): Remove.
6509         * aix-thread.c: Update.
6510         * bsd-kvm.c: Update.
6511         * bsd-uthread.c: Update.
6512         * common/agent.c: Update.
6513         * common/ptid.c: Update.
6514         * common/ptid.h: Update.
6515         * corelow.c: Update.
6516         * darwin-nat.c: Update.
6517         * fbsd-nat.c: Update.
6518         * gnu-nat.c: Update.
6519         * linux-fork.c: Update.
6520         * linux-nat.c: Update.
6521         * linux-thread-db.c: Update.
6522         * nat/linux-osdata.c: Update.
6523         * nat/linux-procfs.c: Update.
6524         * nto-procfs.c: Update.
6525         * obsd-nat.c: Update.
6526         * proc-service.c: Update.
6527         * procfs.c: Update.
6528         * ravenscar-thread.c: Update.
6529         * remote-sim.c: Update.
6530         * remote.c: Update.
6531         * sol-thread.c: Update.
6532         * target.c: Update.
6533         * windows-nat.c: Update.
6534
6535 2018-07-03  Tom Tromey  <tom@tromey.com>
6536
6537         * infrun.c (follow_exec): Use exit_inferior_silent.
6538         * inferior.c (exit_inferior_num_silent): Remove.
6539         * inferior.h (exit_inferior_num_silent): Don't declare.
6540
6541 2018-07-03  Tom Tromey  <tom@tromey.com>
6542
6543         PR cli/23340:
6544         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6545         inferior_ptid on error.
6546
6547 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6548             Simon Marchi  <simon.marchi@polymtl.ca>
6549
6550         PR tdep/8282
6551         * disasm.h (gdb_disassembler): Add
6552         `m_disassembler_options_holder'. member
6553         * disasm.c (get_all_disassembler_options): New function.
6554         (gdb_disassembler::gdb_disassembler): Use it.
6555         (gdb_buffered_insn_length_init_dis): Likewise.
6556         (gdb_buffered_insn_length): Adjust accordingly.
6557         (set_disassembler_options): Handle options with arguments.
6558         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6559         line if showing options with descriptions.
6560         (disassembler_options_completer): Adapt to using the
6561         `disasm_options_and_args_t' structure.
6562         * mips-tdep.c (mips_disassembler_options): New variable.
6563         (mips_disassembler_options_o32): Likewise.
6564         (mips_disassembler_options_n32): Likewise.
6565         (mips_disassembler_options_n64): Likewise.
6566         (gdb_print_insn_mips): Don't set `disassembler_options'.
6567         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6568         functions.
6569         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6570         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6571         `gdbarch_disassembler_options_implicit' and
6572         `gdbarch_valid_disassembler_options'.
6573         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6574         `disasm_options_and_args_t' structure.
6575         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6576         method.
6577         (valid_disassembler_options): Switch from `disasm_options_t' to
6578         the `disasm_options_and_args_t' structure.
6579         * NEWS: Document `set disassembler-options' support for the MIPS
6580         target.
6581         * gdbarch.h: Regenerate.
6582         * gdbarch.c: Regenerate.
6583
6584 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6585
6586         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6587
6588 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6589
6590         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6591         parameter in call to amd64_target_description.
6592         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6593         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6594         (amd64fbsd_init_abi): Likewise.
6595         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6596         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6597         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6598         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6599
6600 2018-06-29  Pedro Alves  <palves@redhat.com>
6601
6602         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6603         "segments" parameter.
6604         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6605         (_initialize_amd64_tdep): Update call to
6606         amd64_create_target_description.
6607         (amd64_target_description): Add "segments" parameter.  Adjust
6608         the implementation to use it.
6609         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6610         call to amd64_create_target_description.
6611         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6612         * gdb/arch/amd64.h (amd64_create_target_description): Add
6613         "segments" register.
6614         * gdb/arch/amd64.c (amd64_create_target_description): Add
6615         "segments" parameter.  Call create_feature_i386_64bit_segments
6616         only if SEGMENTS is true.
6617         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6618         call to amd64_create_target_description.
6619
6620 2018-06-29  Pedro Alves  <palves@redhat.com>
6621
6622         * thread.c (thread_target_id_str): New, factored out from ...
6623         (print_thread_info_1): ... here.  Use it to compute the max
6624         "Target Id" column width.
6625
6626 2018-06-29  Pedro Alves  <palves@redhat.com>
6627
6628         * remote.c (remote_target::extra_thread_info): Delete
6629         'display_buf' and 'n' locals.  from the cache, regardless of
6630         packet mechanims is in use.  Use cache for qThreadExtra and qP
6631         methods too.
6632
6633 2018-06-29  Pedro Alves  <palves@redhat.com>
6634
6635         * blockframe.c (find_pc_sect_containing_function): New function.
6636         * breakpoint.c (print_breakpoint_location): Don't call
6637         find_pc_sect_function.
6638         * linespec.c (create_sals_line_offset): Record the location's
6639         symbol in the sal.
6640         * linespec.c (convert_address_location_to_sals): Fill in sal's
6641         symbol with find_pc_sect_containing_function.
6642         * symtab.c (find_function_start_sal): Rename to ...
6643         (find_function_start_sal_1): ... this.
6644         (find_function_start_sal): Reimplement as wrapper around
6645         find_function_start_sal_1, and use
6646         find_pc_sect_containing_function to fill in the sal's symbol.
6647         (find_function_start_sal(symbol*, bool)): Adjust.
6648         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6649         comments.
6650         (find_pc_sect_containing_function): Declare.
6651
6652 2018-06-29  Pedro Alves  <palves@redhat.com>
6653
6654         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6655         true if the the location has no symbol.
6656
6657 2018-06-28  Tom Tromey  <tom@tromey.com>
6658
6659         * NEWS: Mention --enable-codesign.
6660         * silent-rules.mk (ECHO_SIGN): New variable.
6661         * configure.ac: Add --enable-codesign.
6662         * configure: Rebuild.
6663         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6664         (gdb$(EXEEXT)): Optionally invoke codesign.
6665
6666 2018-06-28  Pedro Alves  <palves@redhat.com>
6667
6668         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6669         comments.
6670         (switch_to_thread_no_regs): Adjust comment.
6671         * infcmd.c (stop_pc): Delete.
6672         (post_create_inferior, info_program_command): Replace references
6673         to stop_pc with references to thread_info->suspend.stop_pc.
6674         * inferior.h (stop_pc): Delete declaration.
6675         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6676         (handle_inferior_event_1, handle_signal_stop)
6677         (process_event_stop_test, keep_going_stepped_thread)
6678         (handle_step_into_function, handle_step_into_function_backward)
6679         (print_stop_location): Replace references to stop_pc with
6680         references to thread_info->suspend.stop_pc.
6681         (struct infcall_suspend_state) <stop_pc>: Delete field.
6682         (save_infcall_suspend_state, restore_infcall_suspend_state):
6683         Remove references to inf_stat->stop_pc.
6684         * linux-fork.c (fork_load_infrun_state): Likewise.
6685         * record-btrace.c (record_btrace_set_replay): Likewise.
6686         * record-full.c (record_full_goto_entry): Likewise.
6687         * remote.c (print_one_stopped_thread): Likewise.
6688         * target.c (target_resume): Extend comment.
6689         * thread.c (set_executing_thread): New.
6690         (set_executing): Use it.
6691         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6692         Remove references to stop_pc.
6693
6694 2018-06-28  Pedro Alves  <palves@redhat.com>
6695
6696         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6697         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6698
6699 2018-06-28  Tom Tromey  <tom@tromey.com>
6700
6701         * coffread.c (coff_symfile_finish): Update.
6702         * xcoffread.c (xcoff_symfile_finish): Update.
6703         * elfread.c (elf_symfile_finish): Update.
6704         * symfile.h (dwarf2_free_objfile): Don't declare.
6705         * dwarf2read.c (_initialize_dwarf2_read): Use
6706         register_objfile_data_with_cleanup.
6707         (dwarf2_free_objfile): Now static.  Change signature.
6708
6709 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6710
6711         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6712         option "-o" to add-symbol-file-load to add an offset to each
6713         section's load address.
6714         * symfile.c (set_objfile_default_section_offset): New function.
6715
6716 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6717
6718         * symfile.c (add_symbol_file_command): Make sure that sections
6719         with the same name are sorted in the same order.
6720
6721 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6722
6723         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6724         require the second argument.  If omitted, load sections at the
6725         addresses specified in the file.
6726
6727 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6728
6729         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6730         (_initialize_symfile): Add option "-o" to symbol-file to add an
6731         offset to each section of the symbol file.
6732
6733 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6734
6735         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6736
6737 2018-06-27  Tom Tromey  <tom@tromey.com>
6738
6739         * stack.c (_initialize_stack): Update "func" help text.
6740
6741 2018-06-27  Tom Tromey  <tom@tromey.com>
6742
6743         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6744         std::vector.
6745         (unwind_infopy_str, pyuw_create_unwind_info)
6746         (unwind_infopy_add_saved_register, pyuw_sniffer)
6747         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6748         Update.
6749         (struct saved_reg): Add constructor.
6750         <value>: Now a gdbpy_ref<>.
6751
6752 2018-06-27  Tom Tromey  <tom@tromey.com>
6753
6754         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6755
6756 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6757
6758         * gdb-gdb.py.in: Format using autopep8.
6759
6760 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6761
6762         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6763         (type_lookup_function): Recognize CORE_ADDR values.
6764
6765 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6766
6767         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6768         print tag_name.
6769
6770 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6771
6772         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6773         <__lt__>: Add.
6774
6775 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6776
6777         * gdb-gdb.py: Move to...
6778         * gdb-gdb.py.in: ... here.
6779         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6780         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6781         dependencies.
6782         (distclean): Remove gdb-gdb.py when cleaning.
6783         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6784         * configure: Re-generate.
6785
6786 2018-06-27  Pedro Alves  <palves@redhat.com>
6787
6788         * proc-service.c (get_ps_regcache): New.
6789         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6790         (ps_lsetfpregs): Use it.
6791
6792 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6793
6794         PR gdb/21695
6795         * dwarf2read.c (lnp_state_machine::check_line_address): Update
6796         declaration.
6797         (dwarf_decode_lines_1): Adjust.
6798
6799 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6800
6801         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6802         override.
6803         <info_proc>: Likewise.
6804
6805 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6806
6807         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6808         to windows_fetch_one_register, and only handle the case of
6809         fetching one register.  Move the code that reloads the context
6810         and iterates over all registers if R is negative to...
6811         (windows_nat_target::fetch_registers): ... here.
6812         (do_windows_store_inferior_registers): Rename to
6813         windows_store_one_register, and only handle the case of storing
6814         one register.  Move the code that handles the case where r is
6815         negative to...
6816         (windows_nat_target::store_registers) ... here.
6817
6818 2018-06-26  Tom Tromey  <tom@tromey.com>
6819
6820         PR rust/22574:
6821         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6822         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6823         Update.
6824         (rust_internal_print_type): Add podata parameter.
6825         (rust_print_type): Update.
6826
6827 2018-06-26  Tom Tromey  <tom@tromey.com>
6828
6829         * typeprint.h (struct print_offset_data) <update, finish,
6830         maybe_print_hole>: New methods.
6831         <indentation>: New constant.
6832         * typeprint.c (print_offset_data::indentation): Define.
6833         (print_offset_data::maybe_print_hole, print_offset_data::update)
6834         (print_offset_data::finish): Move from c-typeprint.c and rename.
6835         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6836         (print_spaces_filtered_with_print_options): Update.
6837         (c_print_type_union_field_offset, maybe_print_hole)
6838         (c_print_type_struct_field_offset): Move to typeprint.c and
6839         rename.
6840         (c_type_print_base_struct_union): Update.
6841
6842 2018-06-25  Pedro Alves  <palves@redhat.com>
6843
6844         * gdbthread.h (thread_info_ref, delete_thread)
6845         (delete_thread_silent, first_thread_of_inferior)
6846         (any_thread_of_inferior, switch_to_thread)
6847         (enable_thread_stack_temporaries)
6848         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6849         (get_last_thread_stack_temporary)
6850         (value_in_thread_stack_temporaries, can_access_registers_thread):
6851         Spell out "struct thread_info" instead of just "thread_info".
6852         * inferior.h (notice_new_inferior): Likewise.
6853
6854 2018-06-25  Pedro Alves  <palves@redhat.com>
6855
6856         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6857         pass thread_info pointer to delete_thread.
6858         (windows_nat_target::detach): Pass inferior pointer to
6859         detach_inferior.
6860         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6861         delete_thread.
6862         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6863         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6864         and pass a thread_info pointer to delete_thread.
6865         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6866         pass thread_info pointer to delete_thread.
6867         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6868         delete_thread_silent call.
6869         * procfs.c (procfs_target::detach): Pass inferior pointer to
6870         detach_inferior.
6871         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6872         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6873         delete_thread_silent call.
6874         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6875         pass thread_info pointer to delete_thread.
6876         (windows_nat_target::detach): Pass inferior pointer to
6877         delete_inferior.
6878
6879 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6880
6881         * regcache.c (readable_regcache::read_part): Fix asserts.
6882         (reg_buffer::raw_collect_part): New function.
6883         (regcache::write_part): Fix asserts.
6884         (reg_buffer::raw_supply_part): New function.
6885         (regcache::transfer_regset_register): New helper function.
6886         (regcache::transfer_regset): Call new functions.
6887         (regcache_supply_regset): Use gdb_byte*.
6888         (regcache::supply_regset): Likewise.
6889         (regcache_collect_regset): Likewise.
6890         (regcache::collect_regset): Likewise.
6891         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6892         (reg_buffer::raw_supply_part): Likewise.
6893         (regcache::transfer_regset_register): Likewise.
6894         (regcache::transfer_regset): Use gdb_byte*.
6895
6896 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6897
6898         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6899
6900 2018-06-21  Pedro Alves  <palves@redhat.com>
6901
6902         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6903         instead of a ptid_t.  All callers adjusted.
6904         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6905         adjusted.
6906         (print_ada_task_info, display_current_task_id, task_command_1):
6907         Adjust.
6908         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6909         inferior_thread.
6910         (breakpoint_kind): Adjust.
6911         (remove_breakpoints_pid): Rename to ...
6912         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6913         pointer.  All callers adjusted.
6914         (bpstat_clear_actions): Use inferior_thread.
6915         (get_bpstat_thread): New.
6916         (bpstat_do_actions): Use it.
6917         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6918         to take a thread_info pointer.  All callers adjusted.
6919         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6920         (breakpoint_re_set_thread): Use inferior_thread.
6921         * breakpoint.h (struct inferior): Forward declare.
6922         (bpstat_stop_status): Update.
6923         (remove_breakpoints_pid): Delete.
6924         (remove_breakpoints_inf): New.
6925         * bsd-uthread.c (bsd_uthread_target::wait)
6926         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6927         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6928         (maint_btrace_packet_history_cmd)
6929         (maint_btrace_clear_packet_history_cmd): Adjust.
6930         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6931         inferior_thread.
6932         * cli/cli-interp.c: Include "inferior.h".
6933         * common/refcounted-object.h (struct
6934         refcounted_object_ref_policy): New.
6935         * compile/compile-object-load.c: Include gdbthread.h.
6936         (store_regs): Use inferior_thread.
6937         * corelow.c (core_target::close): Use current_inferior.
6938         (core_target_open): Adjust to use first_thread_of_inferior and use
6939         the current inferior.
6940         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6941         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6942         <thread>: ... this new field.  All references adjusted.
6943         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6944         Take a thread_info pointer instead of a ptid_t.
6945         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6946         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6947         thread_info pointer instead of a ptid_t.
6948         * elfread.c: Include "inferior.h".
6949         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6950         Use inferior_thread.
6951         * eval.c (evaluate_subexp): Likewise.
6952         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6953         inferior_thread.
6954         * gdb_proc_service.h (struct thread_info): Forward declare.
6955         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6956         <thread>: ... this new field.  All references adjusted.
6957         * gdbarch.h, gdbarch.c: Regenerate.
6958         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6959         'thread' parameter.  All implementations and callers adjusted.
6960         * gdbthread.h (thread_info) <set_running>: New method.
6961         (delete_thread, delete_thread_silent): Take a thread_info pointer
6962         instead of a ptid.
6963         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6964         (first_thread_of_process): Delete, replaced by ...
6965         (first_thread_of_inferior): ... this new function.  All callers
6966         adjusted.
6967         (any_live_thread_of_process): Delete, replaced by ...
6968         (any_live_thread_of_inferior): ... this new function.  All callers
6969         adjusted.
6970         (switch_to_thread, switch_to_no_thread): Declare.
6971         (is_executing): Delete.
6972         (enable_thread_stack_temporaries): Update comment.
6973         <enable_thread_stack_temporaries>: Take a thread_info pointer
6974         instead of a ptid_t.  Incref the thread.
6975         <~enable_thread_stack_temporaries>: Decref the thread.
6976         <m_ptid>: Delete
6977         <m_thr>: New.
6978         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6979         (get_last_thread_stack_temporary)
6980         (value_in_thread_stack_temporaries, can_access_registers_thread):
6981         Take a thread_info pointer instead of a ptid_t.  All callers
6982         adjusted.
6983         * infcall.c (get_call_return_value): Use inferior_thread.
6984         (run_inferior_call): Work with thread pointers instead of ptid_t.
6985         (call_function_by_hand_dummy): Work with thread pointers instead
6986         of ptid_t.  Use thread_info_ref.
6987         * infcmd.c (proceed_thread_callback): Access thread's state
6988         directly.
6989         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6990         access thread's state directly.
6991         (continue_command): Use inferior_thread.
6992         (info_program_command): Use find_thread_ptid and access thread
6993         state directly.
6994         (proceed_after_attach_callback): Use thread state directly.
6995         (notice_new_inferior): Take a thread_info pointer instead of a
6996         ptid_t.  All callers adjusted.
6997         (exit_inferior): Take an inferior pointer instead of a pid.  All
6998         callers adjusted.
6999         (exit_inferior_silent): New.
7000         (detach_inferior): Delete.
7001         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7002         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7003         (detach_inferior_command, kill_inferior_command): Use
7004         find_inferior_id instead of valid_gdb_inferior_id and
7005         gdb_inferior_id_to_pid.
7006         (inferior_command): Use inferior and thread pointers.
7007         * inferior.h (struct thread_info): Forward declare.
7008         (notice_new_inferior): Take a thread_info pointer instead of a
7009         ptid_t.  All callers adjusted.
7010         (detach_inferior): Delete declaration.
7011         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7012         instead of a pid.  All callers adjusted.
7013         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7014         (valid_gdb_inferior_id): Delete.
7015         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7016         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7017         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7018         ...
7019         <inf>: ... this new field.
7020         <step_ptid>: Delete, replaced by ...
7021         <step_thread>: ... this new field.
7022         (get_displaced_stepping_state): Take an inferior pointer instead
7023         of a pid.  All callers adjusted.
7024         (displaced_step_in_progress_any_inferior): Adjust.
7025         (displaced_step_in_progress_thread): Take a thread pointer instead
7026         of a ptid_t.  All callers adjusted.
7027         (displaced_step_in_progress, add_displaced_stepping_state): Take
7028         an inferior pointer instead of a pid.  All callers adjusted.
7029         (get_displaced_step_closure_by_addr): Adjust.
7030         (remove_displaced_stepping_state): Take an inferior pointer
7031         instead of a pid.  All callers adjusted.
7032         (displaced_step_prepare_throw, displaced_step_prepare)
7033         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7034         All callers adjusted.
7035         (start_step_over): Adjust.
7036         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7037         displaced step queue.
7038         (do_target_resume): Adjust.
7039         (fetch_inferior_event): Use inferior_thread.
7040         (context_switch, get_inferior_stop_soon): Take an
7041         execution_control_state pointer instead of a ptid_t.  All callers
7042         adjusted.
7043         (switch_to_thread_cleanup): Delete.
7044         (stop_all_threads): Use scoped_restore_current_thread.
7045         * inline-frame.c: Include "gdbthread.h".
7046         (inline_state) <inline_state>: Take a thread pointer instead of a
7047         ptid_t.  All callers adjusted.
7048         <ptid>: Delete, replaced by ...
7049         <thread>: ... this new field.
7050         (find_inline_frame_state): Take a thread pointer instead of a
7051         ptid_t.  All callers adjusted.
7052         (skip_inline_frames, step_into_inline_frame)
7053         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7054         pointer instead of a ptid_t.  All callers adjusted.
7055         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7056         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7057         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7058         pointers directly.
7059         * linux-nat.c (get_detach_signal): Likewise.
7060         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7061         (thread_db_notice_clone): Adjust.
7062         (thread_db_find_new_threads_silently)
7063         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7064         a thread pointer instead of a ptid_t.  All callers adjusted.
7065         * mi/mi-cmd-var.c: Include "inferior.h".
7066         (mi_cmd_var_update_iter): Update to use thread pointers.
7067         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7068         inferior directly.
7069         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7070         out to ...
7071         (mi_output_running): ... this new function.
7072         (mi_on_resume_1): Adjust to use it.
7073         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7074         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7075         directly.
7076         (interrupt_thread_callback): : Adjust to use thread and inferior
7077         pointers.
7078         * proc-service.c: Include "gdbthread.h".
7079         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7080         * progspace-and-thread.c: Include "inferior.h".
7081         * progspace.c: Include "inferior.h".
7082         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7083         hold a reference to an inferior_object.
7084         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7085         inferior_thread.
7086         * python/py-inferior.c (struct inferior_object): Give the type a
7087         tag name instead of a typedef.
7088         (python_on_normal_stop): No need to check if the current thread is
7089         listed.
7090         (inferior_to_inferior_object): Change return type to
7091         inferior_object.  All callers adjusted.
7092         (find_thread_object): Delete, bits factored out to ...
7093         (thread_to_thread_object): ... this new function.
7094         * python/py-infthread.c (create_thread_object): Use
7095         inferior_to_inferior_object.
7096         (thpy_is_stopped): Use thread pointer directly.
7097         (gdbpy_selected_thread): Use inferior_thread.
7098         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7099         field, replaced with ...
7100         <thread>: ... this new field.  All users adjusted.
7101         (btpy_insn_or_gap_new): Drop const.
7102         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7103         callers adjusted.
7104         * python/py-record.c: Include "gdbthread.h".
7105         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7106         a ptid_t.  All callers adjusted.
7107         (gdbpy_current_recording): Use inferior_thread.
7108         * python/py-record.h (recpy_record_object) <ptid>: Delete
7109         field, replaced with ...
7110         <thread>: ... this new field.  All users adjusted.
7111         (recpy_element_object) <ptid>: Delete
7112         field, replaced with ...
7113         <thread>: ... this new field.  All users adjusted.
7114         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7115         a ptid_t.  All callers adjusted.
7116         * python/py-threadevent.c: Include "gdbthread.h".
7117         (get_event_thread): Use thread_to_thread_object.
7118         * python/python-internal.h (struct inferior_object): Forward
7119         declare.
7120         (find_thread_object, find_inferior_object): Delete declarations.
7121         (thread_to_thread_object, inferior_to_inferior_object): New
7122         declarations.
7123         * record-btrace.c: Include "inferior.h".
7124         (require_btrace_thread): Use inferior_thread.
7125         (record_btrace_frame_sniffer)
7126         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7127         (get_thread_current_frame): Use scoped_restore_current_thread and
7128         switch_to_thread.
7129         (get_thread_current_frame): Use thread pointer directly.
7130         (record_btrace_replay_at_breakpoint): Use thread's inferior
7131         pointer directly.
7132         * record-full.c: Include "inferior.h".
7133         * regcache.c: Include "gdbthread.h".
7134         (get_thread_arch_regcache): Use the inferior's address space
7135         directly.
7136         (get_thread_regcache, registers_changed_thread): New.
7137         * regcache.h (get_thread_regcache(thread_info *thread)): New
7138         overload.
7139         (registers_changed_thread): New.
7140         (remote_target) <remote_detach_1>: Swap order of parameters.
7141         (remote_add_thread): <remote_add_thread>: Return the new thread.
7142         (get_remote_thread_info(ptid_t)): New overload.
7143         (remote_target::remote_notice_new_inferior): Use thread pointers
7144         directly.
7145         (remote_target::process_initial_stop_replies): Use
7146         thread_info::set_running.
7147         (remote_target::remote_detach_1, remote_target::detach)
7148         (extended_remote_target::detach): Adjust.
7149         * stack.c (frame_show_address): Use inferior_thread.
7150         * target-debug.h (target_debug_print_thread_info_pp): New.
7151         * target-delegates.c: Regenerate.
7152         * target.c (default_thread_address_space): Delete.
7153         (memory_xfer_partial_1): Use current_inferior.
7154         (target_detach): Use current_inferior.
7155         (target_thread_address_space): Delete.
7156         (generic_mourn_inferior): Use current_inferior.
7157         * target.h (struct target_ops) <thread_address_space>: Delete.
7158         (target_thread_address_space): Delete.
7159         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7160         pointers directly.
7161         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7162         thread pointer instead of a ptid_t.  Adjust all callers.
7163         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7164         (first_thread_of_process): Delete, replaced by ...
7165         (first_thread_of_inferior): ... this new function.  All callers
7166         adjusted.
7167         (any_thread_of_process): Rename to ...
7168         (any_thread_of_inferior): ... this, and take an inferior pointer.
7169         (any_live_thread_of_process): Rename to ...
7170         (any_live_thread_of_inferior): ... this, and take an inferior
7171         pointer.
7172         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7173         (value_in_thread_stack_temporaries)
7174         (get_last_thread_stack_temporary): Take a thread pointer instead
7175         of a ptid_t.  Adjust all callers.
7176         (thread_info::set_running): New.
7177         (validate_registers_access): Use inferior_thread.
7178         (can_access_registers_ptid): Rename to ...
7179         (can_access_registers_thread): ... this, and take a thread
7180         pointer.
7181         (print_thread_info_1): Adjust to compare thread pointers instead
7182         of ptids.
7183         (switch_to_no_thread, switch_to_thread): Make extern.
7184         (scoped_restore_current_thread::~scoped_restore_current_thread):
7185         Use m_thread pointer directly.
7186         (scoped_restore_current_thread::scoped_restore_current_thread):
7187         Use inferior_thread.
7188         (thread_command): Use thread pointer directly.
7189         (thread_num_make_value_helper): Use inferior_thread.
7190         * top.c (execute_command): Use inferior_thread.
7191         * tui/tui-interp.c: Include "inferior.h".
7192         * varobj.c (varobj_create): Use inferior_thread.
7193         (value_of_root_1): Use find_thread_global_id instead of
7194         global_thread_id_to_ptid.
7195
7196 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7197
7198         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7199         possible.
7200         (regcache::write_part): Likewise.
7201         (readable_regcache::cooked_read_part): Update comment.
7202         (readable_regcache::cooked_write_part): Likewise.
7203         * regcache.h: (readable_regcache::read_part): Likewise.
7204         (regcache::write_part): Likewise.
7205
7206 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7207             Dirk Schubert  <dirk.schubert@arm.com>
7208
7209         * aarch64-linux-nat.c (post_attach): New.
7210         (aarch64_linux_nat_target::post_attach): Override post_attach to
7211         record the number of hardware debug registers.
7212
7213 2018-06-20  Tom Tromey  <tom@tromey.com>
7214
7215         * python/py-param.c (add_setshow_generic): Make parameters const.
7216         (parmpy_init): Update.
7217
7218 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7219
7220         * regcache.h (regcache_cooked_read_ftype): Rename to...
7221         (register_read_ftype): ...this, change type to function_view.
7222         (class reg_buffer) <save>: Remove src parameter.
7223         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7224         parameter non-const in first overload.  Remove src parameter in
7225         second overload.
7226         * regcache.c (do_cooked_read): Remove.
7227         (readonly_detached_regcache::readonly_detached_regcache): Make
7228         parameter non-const, adjust call to other constructor.
7229         (reg_buffer::save): Remove src parameter.
7230         * frame.c (do_frame_register_read): Remove.
7231         (frame_save_as_regcache): Use lambda function.
7232         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7233         parameter to ppu2spu_data *.
7234         (ppu2spu_sniffer): Use lambda function.
7235
7236 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7237
7238         * record-full.c (record_full_target::insert_breakpoint): Remove
7239         "struct" keyword, add const.
7240
7241 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7242
7243         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7244         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7245         * configure.ac: Remove AC_PREREQ, add missing quoting.
7246         * gnulib/configure.ac: Modernize usage of
7247         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7248         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7249         (AUTOMAKE_VERSION): Bump to 1.15.1.
7250         * configure: Re-generate.
7251         * config.in: Re-generate.
7252         * aclocal.m4: Re-generate.
7253         * gnulib/aclocal.m4: Re-generate.
7254         * gnulib/config.in: Re-generate.
7255         * gnulib/configure: Re-generate.
7256         * gnulib/import/Makefile.in: Re-generate.
7257
7258 2018-06-19  Pedro Alves  <palves@redhat.com>
7259
7260         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7261         (lookup_minimal_symbol_by_pc_section): ... here with
7262         gdb_assert_not_reached added.
7263
7264 2018-06-19  Pedro Alves  <palves@redhat.com>
7265
7266         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7267         parameter with a block parameter.  Compare location's block symbol
7268         with the frame's block instead of addresses.
7269         (skip_inline_frames): Pass the current block instead of the
7270         frame's address.  Break out as soon as we determine the frame
7271         should not be skipped.
7272
7273 2018-06-18  Tom Tromey  <tom@tromey.com>
7274
7275         * solib-aix.c (solib_aix_get_section_offsets): Return
7276         unique_xmalloc_ptr.
7277         (solib_aix_solib_create_inferior_hook): Update.
7278
7279 2018-06-18  Tom Tromey  <tom@tromey.com>
7280
7281         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7282
7283 2018-06-18  Tom Tromey  <tom@tromey.com>
7284
7285         * solib-frv.c (frv_relocate_main_executable): Use
7286         unique_xmalloc_ptr.
7287         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7288         unique_xmalloc_ptr.
7289
7290 2018-06-18  Tom Tromey  <tom@tromey.com>
7291
7292         * objfiles.h (inhibit_section_map_updates): Update.
7293         (resume_section_map_updates, resume_section_map_updates_cleanup):
7294         Remove.
7295         * solib-svr4.c (svr4_handle_solib_event): Update.
7296         * objfiles.c (inhibit_section_map_updates): Return
7297         scoped_restore_tmpl<int>.
7298         (resume_section_map_updates, resume_section_map_updates_cleanup):
7299         Remove.
7300
7301 2018-06-18  Tom Tromey  <tom@tromey.com>
7302
7303         * valprint.h (read_string): Update.
7304         * valprint.c (read_string): Change type of "buffer".
7305         (val_print_string): Update.
7306         * python/py-value.c (valpy_string): Update.
7307         * language.h (struct language_defn) <la_get_string>: Change
7308         type of "buffer".
7309         (default_get_string, c_get_string): Update.
7310         * language.c (default_get_string): Change type of "buffer".
7311         * guile/scm-value.c (gdbscm_value_to_string): Update.
7312         * c-lang.c (c_get_string): Change type of "buffer".
7313
7314 2018-06-18  Tom Tromey  <tom@tromey.com>
7315
7316         * ser-mingw.c (struct pipe_state_destroyer): New.
7317         (pipe_state_up): New typedef.
7318         (cleanup_pipe_state): Remove.
7319         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7320
7321 2018-06-18  Tom Tromey  <tom@tromey.com>
7322
7323         * rust-lang.h (rust_yyerror): Don't declare.
7324         * rust-lang.c (rust_language_defn): Update.
7325         * rust-exp.y (yyerror): Now static.
7326         * parse.c (parse_exp_in_context_1): Update.
7327         * p-lang.h (p_yyerror): Don't declare.
7328         * p-lang.c (p_language_defn): Update.
7329         * p-exp.y (yyerror): Now static.
7330         * opencl-lang.c (opencl_language_defn): Update.
7331         * objc-lang.c (objc_language_defn): Update.
7332         * m2-lang.h (m2_yyerror): Don't declare.
7333         * m2-lang.c (m2_language_defn): Update.
7334         * m2-exp.y (yyerror): Now static.
7335         * language.h (struct language_defn) <la_error>: Remove.
7336         * language.c (unk_lang_error): Remove.
7337         (unknown_language_defn, auto_language_defn): Remove.
7338         * go-lang.h (go_yyerror): Don't declare.
7339         * go-lang.c (go_language_defn): Update.
7340         * go-exp.y (yyerror): Now static.
7341         * f-lang.h (f_yyerror): Don't declare.
7342         * f-lang.c (f_language_defn): Update.
7343         * f-exp.y (yyerror): Now static.
7344         * d-lang.h (d_yyerror): Don't declare.
7345         * d-lang.c (d_language_defn): Update.
7346         * d-exp.y (yyerror): Now static.
7347         * c-lang.h (c_yyerror): Don't declare.
7348         * c-lang.c (c_language_defn, cplus_language_defn)
7349         (asm_language_defn, minimal_language_defn): Update.
7350         * c-exp.y (yyerror): Now static.
7351         * ada-lang.h (ada_yyerror): Don't declare.
7352         * ada-lang.c (ada_language_defn): Update.
7353         * ada-exp.y (yyerror): Now static.
7354
7355 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7356
7357         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7358         (store_sveregs_to_thread): Likewise.
7359         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7360         (aarch64_linux_store_inferior_registers): Likewise.
7361         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7362         function.
7363         (aarch64_sve_regs_copy_to_regcache): Likewise.
7364         (aarch64_sve_regs_copy_from_regcache): Likewise.
7365         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7366         declaration.
7367         (aarch64_sve_regs_copy_to_regcache): Likewise.
7368         (aarch64_sve_regs_copy_from_regcache): Likewise.
7369         (sve_context): Structure from Linux headers.
7370         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7371         (SVE_SIG_ZREG_SIZE): Likewise.
7372         (SVE_SIG_PREG_SIZE): Likewise.
7373         (SVE_SIG_FFR_SIZE): Likewise.
7374         (SVE_SIG_REGS_OFFSET): Likewise.
7375         (SVE_SIG_ZREGS_OFFSET): Likewise.
7376         (SVE_SIG_ZREG_OFFSET): Likewise.
7377         (SVE_SIG_ZREGS_SIZE): Likewise.
7378         (SVE_SIG_PREGS_OFFSET): Likewise.
7379         (SVE_SIG_PREG_OFFSET): Likewise.
7380         (SVE_SIG_PREGS_SIZE): Likewise.
7381         (SVE_SIG_FFR_OFFSET): Likewise.
7382         (SVE_SIG_REGS_SIZE): Likewise.
7383         (SVE_SIG_CONTEXT_SIZE): Likewise.
7384         (SVE_PT_REGS_MASK): Likewise.
7385         (SVE_PT_REGS_FPSIMD): Likewise.
7386         (SVE_PT_REGS_SVE): Likewise.
7387         (SVE_PT_VL_INHERIT): Likewise.
7388         (SVE_PT_VL_ONEXEC): Likewise.
7389         (SVE_PT_REGS_OFFSET): Likewise.
7390         (SVE_PT_FPSIMD_OFFSET): Likewise.
7391         (SVE_PT_FPSIMD_SIZE): Likewise.
7392         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7393         (SVE_PT_SVE_PREG_SIZE): Likewise.
7394         (SVE_PT_SVE_FFR_SIZE): Likewise.
7395         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7396         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7397         (__SVE_SIG_TO_PT): Likewise.
7398         (SVE_PT_SVE_OFFSET): Likewise.
7399         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7400         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7401         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7402         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7403         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7404         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7405         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7406         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7407         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7408         (SVE_PT_SVE_SIZE): Likewise.
7409         (SVE_PT_SIZE): Likewise.
7410         (HAS_SVE_STATE): New define.
7411
7412 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7413
7414         * nat/aarch64-sve-linux-sigcontext.h: New file.
7415         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7416         new files.
7417         (SVE_VQ_MIN): Likewise.
7418         (SVE_VQ_MAX): Likewise.
7419         (SVE_VL_MIN): Likewise.
7420         (SVE_VL_MAX): Likewise.
7421         (SVE_NUM_ZREGS): Likewise.
7422         (SVE_NUM_PREGS): Likewise.
7423         (sve_vl_valid): Likewise.
7424         (struct user_sve_header): Likewise.
7425
7426 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7427             Richard Bunt <Richard.Bunt@arm.com>
7428
7429         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7430         was requested by GDB.
7431
7432 2018-06-15  Tom de Vries  <tdevries@suse.de>
7433
7434         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7435
7436 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7437
7438         * gnulib/update-gnulib.sh: Print expected versions of
7439         autoconf/aclocal.
7440
7441 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7442
7443         * arch-utils.c (default_type_align): Use type_length_units.
7444         * gdbtypes.c (type_align): Use type_length_units.
7445
7446 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7447
7448         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7449         of 'define' command.
7450
7451 2018-06-14  Tom de Vries  <tdevries@suse.de>
7452
7453         PR cli/22573
7454         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7455         get_no_prettyformat_print_options.
7456
7457 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7458
7459         * sparc-nat.h: Include target.h.
7460         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7461         <fetch_registers>: Remove this argument in function call.
7462         <store_registers>: Remove this argument in function call, remove
7463         extra semicolon.
7464         <low_forget_process>: Call sparc64_forget_process instead of
7465         sparc_forget_process.
7466
7467 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7468
7469         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7470         (procfs_target::make_corefile_notes): Adjust to new
7471         target_read_alloc return type.
7472
7473 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7474             Stephen Roberts  <stephen.roberts@arm.com>
7475
7476         PR gdb/22882
7477         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7478         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7479         Move should_notify_stop local into more inner scope.
7480
7481 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7482             Stephen Roberts  <stephen.roberts@arm.com>
7483
7484         PR gdb/22882
7485         * infrun.c (resume_1): Add call to mark_async_event_handler.
7486
7487 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7488
7489         * infrun.c (do_target_wait): Change old version of $pc printed.
7490
7491 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7492
7493         * dwarf2read.c (read_index_from_section): Rename to...
7494         (read_gdb_index_from_section): ... this, update all callers.
7495         (dwarf2_read_index): Rename to...
7496         (dwarf2_read_gdb_index): ... this, update all callers.
7497
7498 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7499
7500         * hppa-linux-nat.c
7501         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7502         hppa_linux_nat_target::fetch_registers.
7503
7504 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7505
7506         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7507         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7508         (AARCH64_DWARF_SVE_FFR): Likewise.
7509         (AARCH64_DWARF_SVE_P0): Likewise.
7510         (AARCH64_DWARF_SVE_Z0): Likewise.
7511
7512 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7513
7514         * common/common-regcache.h (raw_compare): New function.
7515         * regcache.c (regcache::raw_compare): Likewise.
7516         * regcache.h (regcache::raw_compare): New declaration.
7517
7518 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7519
7520         * common/common-regcache.h (reg_buffer_common): New structure.
7521         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7522         (reg_buffer::raw_supply): Likewise.
7523         (reg_buffer::raw_supply_integer): Likewise.
7524         (reg_buffer::raw_supply_zeroed): Likewise.
7525         (reg_buffer::raw_collect): Likewise.
7526         (reg_buffer::raw_collect_integer): Likewise.
7527         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7528         (reg_buffer::raw_supply): Likewise.
7529         (reg_buffer::raw_supply_integer): Likewise.
7530         (reg_buffer::raw_supply_zeroed): Likewise.
7531         (reg_buffer::raw_collect): Likewise.
7532         (reg_buffer::raw_collect_integer): Likewise.
7533
7534 2018-06-10  Tom Tromey  <tom@tromey.com>
7535
7536         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7537         (class remote_state) <stop_reply_queue>: Now std::vector.
7538         (remote_state::~remote_state)
7539         (remote_target::stop_reply_queue_length): Update.
7540         (struct queue_iter_param, remove_child_of_pending_fork)
7541         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7542         (check_pending_event_prevents_wildcard_vcont_callback)
7543         (remove_stop_reply_for_inferior)
7544         (remove_stop_reply_of_remote_state)
7545         (remote_notif_remove_once_on_match)
7546         (stop_reply_match_ptid_and_ws)
7547         (remote_kill_child_of_pending_fork): Remove.
7548         (remote_target::remove_new_fork_children)
7549         (remote_target::check_pending_events_prevent_wildcard_vcont)
7550         (remote_target::discard_pending_stop_replies)
7551         (remote_target::discard_pending_stop_replies_in_queue)
7552         (remote_target::remote_notif_remove_queued_reply)
7553         (remote_target::queued_stop_reply)
7554         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7555         (remote_target::wait, remote_target::kill_new_fork_children)
7556         (remote_target::async): Update.
7557
7558 2018-06-10  Tom Tromey  <tom@tromey.com>
7559
7560         * record-full.c (record_full_arch_list_cleanups): Remove.
7561         (record_full_message): Use try/catch.
7562         (record_full_wait_cleanups): Remove.
7563         (record_full_wait_1): Use try/catch.
7564         (record_full_restore): Likewise.
7565
7566 2018-06-10  Tom Tromey  <tom@tromey.com>
7567
7568         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7569         declare VEC.  Add constructor.
7570         <in_target_beneath>: Now bool.
7571         (record_full_breakpoints): Now a std::vector, static.
7572         (record_full_sync_record_breakpoints)
7573         (record_full_init_record_breakpoints)
7574         (record_full_target::insert_breakpoint)
7575         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7576
7577 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7578
7579         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7580         * serial.c (serial_interface_lookup): Remove struct keyword.
7581
7582 2018-06-10  Tom Tromey  <tom@tromey.com>
7583
7584         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7585         method.
7586         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7587         a method.
7588         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7589         method.
7590         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7591         "beneath" as a method.
7592         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7593         Use "beneath" as a method.
7594
7595 2018-06-10  Tom Tromey  <tom@tromey.com>
7596
7597         * tracefile.c (struct trace_file_writer_deleter): New.
7598         <operator()>: Rename from trace_file_writer_xfree.
7599         (trace_file_writer_up): New typedef.
7600         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7601
7602 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7603
7604         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7605         <m_registers, m_register_status>: Change type to
7606         std::unique_ptr.
7607         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7608         XCNEWVEC.
7609
7610 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7611
7612         * common/common-regcache.h (enum register_status): Add
7613         underlying type "signed char".
7614         * regcache.h (reg_buffer) <m_register_status>: Change type to
7615         register_status *.
7616         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7617         register_status instead of signed char.
7618         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7619         (reg_buffer::get_register_status): Remove cast.
7620         (readable_regcache::raw_read): Remove cast.
7621         (readable_regcache::cooked_read): Remove cast.
7622
7623 2018-06-09  Tom Tromey  <tom@tromey.com>
7624
7625         * source.c (reverse_search_command, forward_search_command): Use
7626         scoped_fd.
7627
7628 2018-06-09  Tom Tromey  <tom@tromey.com>
7629
7630         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7631         (serial_ops_list): Now static, std::vector.
7632         (serial_interface_lookup, serial_add_interface): Update.
7633
7634 2018-06-09  Tom Tromey  <tom@tromey.com>
7635
7636         * dwarf2read.c (process_cu_includes): Update.
7637         (process_full_comp_unit): Update.
7638         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7639         std::vector.
7640
7641 2018-06-08  Paul Koning  <paul_koning@dell.com>
7642
7643         PR gdb/23252
7644
7645         * python/python.c (do_start_initialization):
7646         Avoid call to internal Python API.
7647         (init__gdb_module): New function.
7648
7649 2018-06-08  Gary Benson <gbenson@redhat.com>
7650
7651         * linux-thread-db.c (valprint.h): New include.
7652         (struct check_thread_db_info): New structure.
7653         (check_thread_db_on_load, tdb_testinfo): New static globals.
7654         (check_thread_db, check_thread_db_callback): New functions.
7655         (try_thread_db_load_1): Run integrity checks if requested.
7656         (maintenance_check_libthread_db): New function.
7657         (_initialize_thread_db): Register "maint check libthread-db"
7658         and "maint set/show check-libthread-db".
7659         * NEWS: Mention the above new commands.
7660
7661 2018-06-08  Tom Tromey  <tom@tromey.com>
7662
7663         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7664         now a method.
7665
7666 2018-06-08  Tom Tromey  <tom@tromey.com>
7667
7668         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7669
7670 2018-06-08  Tom Tromey  <tom@tromey.com>
7671
7672         * common/btrace-common.h (struct btrace_data): Add constructor,
7673         destructor, move assignment operator.
7674         <empty, clear, fini>: New methods.
7675         <format>: Initialize.
7676         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7677         (btrace_data_empty): Don't declare.
7678         * common/btrace-common.c (btrace_data_init): Remove.
7679         (btrace_data::fini): Rename from btrace_data_fini.
7680         (btrace_data::empty): Rename from btrace_data_empty.
7681         (btrace_data::clear): Rename from btrace_data_clear.  Return
7682         bool.
7683         * btrace.h (make_cleanup_btrace_data): Don't declare.
7684         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7685         (parse_xml_btrace): Update.
7686         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7687         (maint_btrace_clear_packet_history_cmd): Update.
7688
7689 2018-06-07  Pedro Alves  <palves@redhat.com>
7690
7691         * target.h (target_ops) <beneath>: Now a method.  All references
7692         updated.
7693         (class target_stack): New.
7694         * target.c (g_target_stack): New.
7695         (g_current_top_target): Delete.
7696         (current_top_target): Get the top target out of g_target_stack.
7697         (target_stack::push, target_stack::unpush): New.
7698         (push_target, unpush_target): Reimplement.
7699         (target_is_pushed): Reimplement in terms of g_target_stack.
7700         (target_ops::beneath, target_stack::find_beneath): New.
7701
7702 2018-06-07  Pedro Alves  <palves@redhat.com>
7703
7704         * target.h (find_target_beneath): Delete declaration.
7705         * target.c (find_target_beneath): Delete definition.
7706         * aix-thread.c: All callers of find_target_beneath adjusted to
7707         call target_ops::beneath instead.
7708         * bsd-uthread.c: Likewise.
7709         * linux-thread-db.c: Likewise.
7710         * ravenscar-thread.c: Likewise.
7711         * sol-thread.c: Likewise.
7712         * spu-multiarch.c: Likewise.
7713
7714 2018-06-07  Pedro Alves  <palves@redhat.com>
7715
7716         * target.h (target_ops) <beneath>: Now a method.  All references
7717         updated.
7718         (target_ops) <m_beneath>: New.
7719         * target.c (target_ops::beneath): New.
7720         * corelow.c: Adjust all references to target_ops::beneath.
7721         * linux-thread-db.c: Likewise.
7722         * make-target-delegates: Likewise.
7723         * record-btrace.c: Likewise.
7724         * record-full.c: Likewise.
7725         * remote.c: Likewise.
7726         * target.c: Likewise.
7727         * target-delegates.c: Regenerate.
7728
7729 2018-06-07  Pedro Alves  <palves@redhat.com>
7730
7731         * target.h (target_stack): Delete.
7732         (current_top_target): Declare function.
7733         * target.c (target_stack): Delete.
7734         (g_current_top_target): New.
7735         (current_top_target): New function.
7736         * auxv.c: Use current_top_target instead of target_stack
7737         throughout.
7738         * avr-tdep.c: Likewise.
7739         * breakpoint.c: Likewise.
7740         * corefile.c: Likewise.
7741         * elfread.c: Likewise.
7742         * eval.c: Likewise.
7743         * exceptions.c: Likewise.
7744         * frame.c: Likewise.
7745         * gdbarch-selftests.c: Likewise.
7746         * gnu-v3-abi.c: Likewise.
7747         * ia64-tdep.c: Likewise.
7748         * ia64-vms-tdep.c: Likewise.
7749         * infcall.c: Likewise.
7750         * infcmd.c: Likewise.
7751         * infrun.c: Likewise.
7752         * linespec.c: Likewise.
7753         * linux-tdep.c: Likewise.
7754         * minsyms.c: Likewise.
7755         * ppc-linux-nat.c: Likewise.
7756         * ppc-linux-tdep.c: Likewise.
7757         * procfs.c: Likewise.
7758         * regcache.c: Likewise.
7759         * remote.c: Likewise.
7760         * rs6000-tdep.c: Likewise.
7761         * s390-linux-nat.c: Likewise.
7762         * s390-tdep.c: Likewise.
7763         * solib-aix.c: Likewise.
7764         * solib-darwin.c: Likewise.
7765         * solib-dsbt.c: Likewise.
7766         * solib-spu.c: Likewise.
7767         * solib-svr4.c: Likewise.
7768         * solib-target.c: Likewise.
7769         * sparc-tdep.c: Likewise.
7770         * sparc64-tdep.c: Likewise.
7771         * spu-tdep.c: Likewise.
7772         * symfile.c: Likewise.
7773         * symtab.c: Likewise.
7774         * target-descriptions.c: Likewise.
7775         * target-memory.c: Likewise.
7776         * target.c: Likewise.
7777         * target.h: Likewise.
7778         * tracefile-tfile.c: Likewise.
7779         * tracepoint.c: Likewise.
7780         * valops.c: Likewise.
7781         * valprint.c: Likewise.
7782         * value.c: Likewise.
7783         * windows-tdep.c: Likewise.
7784         * mi/mi-main.c: Likewise.
7785
7786 2018-06-07  Tom Tromey  <tom@tromey.com>
7787
7788         * valprint.h (build_address_symbolic): Declare.
7789         * printcmd.c (print_address_symbolic): Update.
7790         (build_address_symbolic): Change "name" and "filename" to
7791         std::string.
7792         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7793         Update.
7794         * defs.h (build_address_symbolic): Remove declaration.
7795
7796 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7797
7798         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7799         (aarch64_vnv_type): Add function.
7800         (aarch64_pseudo_register_name): Add V regs for SVE.
7801         (aarch64_pseudo_register_type): Likewise.
7802         (aarch64_pseudo_register_reggroup_p): Likewise.
7803         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7804         (aarch64_pseudo_read_value): Add V regs for SVE.
7805         (aarch64_pseudo_write_2): Use V0 offset for SVE
7806         (aarch64_pseudo_write): Add V regs for SVE.
7807         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7808
7809 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7810
7811         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7812         (sve_vl_from_vq): Likewise.
7813
7814 2018-06-05  Tom Tromey  <tom@tromey.com>
7815
7816         * cli/cli-cmds.c (show_version): Update.
7817         * top.c (print_gdb_version): Add "interactive" parameter.
7818         Update.
7819         * main.c (captured_main_1): Update.
7820         * top.h (print_gdb_version): Add "interactive" parameter and a
7821         comment.
7822
7823 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7824
7825         * common/enum-flags.h: Add trailing semicolon to example in
7826         comment.
7827
7828 2018-06-05  Tom Tromey  <tom@tromey.com>
7829
7830         PR cli/12326:
7831         * NEWS: Add entry about pager.
7832         * utils.c (pagination_disabled_for_command): New global.
7833         (prompt_for_continue): Allow "c" response to prompt.
7834         (reinitialize_more_filter): Clear
7835         pagination_disabled_for_command.
7836         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7837
7838 2018-06-04  Tom Tromey  <tom@tromey.com>
7839
7840         * ada-lang.h (ada_lookup_symbol_list): Update.
7841         * ada-lang.c (resolve_subexp): Update.
7842         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7843         parameter.
7844         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7845         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7846         results parameter to std::vector.
7847         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7848         Update.
7849         * ada-exp.y (block_lookup): Update.
7850         (select_possible_type_sym): Change type of syms.  Remove nsyms
7851         parameter.
7852         (write_var_or_type, write_name_assoc): Update.
7853
7854 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7855
7856         * windows-nat.c (windows_nat_target::xfer_partial): Return
7857         TARGET_XFER_E_IO if we need to delegate to the target beneath
7858         but BENEATH is NULL.
7859
7860 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7861
7862         * Makefile.in (config.status): Add configure.nat as a
7863         dependency.
7864
7865 2018-06-04  Tom Tromey  <tom@tromey.com>
7866
7867         * cp-name-parser.y (cpname_state): Add method declarations.
7868         (HANDLE_QUAL): Update.
7869         (cpname_state::d_grab, cpname_state::fill_comp)
7870         (cpname_state::make_operator, cpname_state::make_dtor)
7871         (cpname_state::make_builtin_type, cpname_state::make_name)
7872         (cpname_state::d_qualify, cpname_state::d_int_type)
7873         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7874         (%union): Move earlier.
7875
7876 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7877
7878         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7879
7880 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7881
7882         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7883         (aarch64_pseudo_write_1): Likewise.
7884         (aarch64_pseudo_read_value): Use helper.
7885         (aarch64_pseudo_write): Likewise.
7886
7887 2018-06-04  Pedro Alves  <palves@redhat.com>
7888
7889         * darwin-nat.c (darwin_ops): Delete.
7890         (darwin_attach_pid): Use get_native_target.
7891
7892 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7893
7894         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7895         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7896
7897 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7898
7899         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7900         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7901         (aarch64_gdbarch_init): Check for SVE.
7902         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7903
7904 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7905
7906         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7907         * aarch64-tdep.h (aarch64_read_description): Likewise.
7908         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7909         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7910         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7911         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7912         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7913
7914 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7915
7916         * value.c (value_fetch_lazy_bitfield): New.
7917         (value_fetch_lazy_memory): New.
7918         (value_fetch_lazy_register): New.
7919         (value_fetch_lazy): Factor out to smaller functions.
7920
7921 2018-06-01  Tom Tromey  <tom@tromey.com>
7922
7923         * cp-name-parser.y (backslashable, represented): Now const.
7924
7925 2018-06-01  Tom Tromey  <tom@tromey.com>
7926
7927         * cp-name-parser.y: Include parser-defs.h.
7928         (parser_fprintf): Remove declaration.
7929
7930 2018-06-01  Tom Tromey  <tom@tromey.com>
7931
7932         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7933         %parse-param.
7934         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7935         (global_result): Remove globals.
7936         (struct cpname_state): New.
7937         (yyparse): Don't declare.
7938         (yylex, yyerror): Move declarations after %union.
7939         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7940         (make_name): Add state parameter.
7941         Update all callers.
7942         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7943         parameter.
7944         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7945         Update.
7946         (yylex): Add lvalp, state parameters.
7947         (yyerror): Add state parameter.
7948         (cp_demangled_name_to_comp): Update.
7949
7950 2018-06-01  Tom Tromey  <tom@tromey.com>
7951
7952         * cp-name-parser.y (parser_fprintf): Declare.
7953         (GDB_YY_REMAP_PREFIX): Define.
7954         Include yy-remap.h.  Don't redefine yy* identifiers.
7955
7956 2018-06-01  Tom Tromey  <tom@tromey.com>
7957
7958         * python/py-type.c (typy_legacy_template_argument): Update.
7959         * cp-support.h (cp_demangled_name_to_comp): Update.
7960         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7961         parameter to be a "std::string *".
7962         (main): Update.
7963
7964 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7965
7966         * ada-lex.l: Include "diagnostics.h" instead of
7967         "common/diagnostics.h".
7968         * unittests/environ-selftests.c: Likewise.
7969         * common/diagnostics.h: Moved to ../include.
7970
7971 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7972
7973         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7974         to language_mode_manual while calling breakpoint_re_set_one.
7975
7976 2018-06-01  Tom Tromey  <tom@tromey.com>
7977
7978         * valops.c (value_cast_structs, destructor_name_p): Update.
7979         * symtab.c (gdb_mangle_name): Update.
7980         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7981         Update.
7982         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7983         (pascal_object_print_value_fields, pascal_object_print_value):
7984         Update.
7985         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7986         * linespec.c (find_methods): Update.
7987         * gdbtypes.h (type_name_no_tag): Remove.
7988         (type_name_or_error): Rename from type_name_no_tag_or_error.
7989         * gdbtypes.c (type_name_no_tag): Remove.
7990         (type_name_or_error): Rename from type_name_no_tag_or_error.
7991         (lookup_struct_elt_type, check_typedef): Update.
7992         * expprint.c (print_subexp_standard): Update.
7993         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7994         * d-namespace.c (d_lookup_nested_symbol): Update.
7995         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7996         (cp_print_class_member): Update.
7997         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7998         * completer.c (add_struct_fields): Update.
7999         * c-typeprint.c (cp_type_print_derivation_info)
8000         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8001         Update.
8002         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8003         (ada_prefer_type, ada_is_exception_sym): Update.
8004
8005 2018-06-01  Tom Tromey  <tom@tromey.com>
8006
8007         * valops.c (enum_constant_from_type, value_namespace_elt)
8008         (value_maybe_namespace_elt): Update.
8009         * valarith.c (find_size_for_pointer_math): Update.
8010         * target-descriptions.c (make_gdb_type): Update.
8011         * symmisc.c (print_symbol): Update.
8012         * stabsread.c (define_symbol, read_type)
8013         (complain_about_struct_wipeout, add_undefined_type)
8014         (cleanup_undefined_types_1): Update.
8015         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8016         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8017         (rust_internal_print_type, rust_composite_type)
8018         (rust_evaluate_funcall, rust_evaluate_subexp)
8019         (rust_inclusive_range_type_p): Update.
8020         * python/py-type.c (typy_get_tag): Update.
8021         * p-typeprint.c (pascal_type_print_base): Update.
8022         * mdebugread.c (parse_symbol, parse_type): Update.
8023         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8024         Update.
8025         * guile/scm-type.c (gdbscm_type_tag): Update.
8026         * go-lang.c (sixg_string_p): Update.
8027         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8028         Update.
8029         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8030         (TYPE_TAG_NAME): Remove.
8031         * gdbtypes.c (type_name_no_tag): Simplify.
8032         (check_typedef, check_types_equal, recursive_dump_type)
8033         (copy_type_recursive, arch_composite_type): Update.
8034         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8035         in summary mode when needed.
8036         * eval.c (evaluate_funcall): Update.
8037         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8038         (process_structure_scope, read_enumeration_type)
8039         (read_namespace_type, read_module_type, determine_prefix): Update.
8040         * cp-support.c (inspect_type): Update.
8041         * coffread.c (process_coff_symbol, decode_base_type): Update.
8042         * c-varobj.c (c_is_path_expr_parent): Update.
8043         * c-typeprint.c (c_type_print_base_struct_union): Update.
8044         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8045         summary when using C language.
8046         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8047         (gen_maybe_namespace_elt): Update.
8048         * ada-lang.c (ada_type_name): Simplify.
8049         (empty_record, ada_template_to_fixed_record_type_1)
8050         (template_to_static_fixed_type)
8051         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8052
8053 2018-06-01  Tom Tromey  <tom@tromey.com>
8054
8055         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8056         c_print_type.
8057         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8058         (c_print_type): Update.
8059         (c_print_type): New overload.
8060         (c_type_print_varspec_prefix, c_type_print_args)
8061         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8062         (c_type_print_base_struct_union, c_type_print_base_1)
8063         (cp_type_print_method_args): Add "language" parameter.
8064         (c_type_print_base): Update.
8065         * c-lang.h (c_print_type): Add new overload.
8066
8067 2018-06-01  Tom Tromey  <tom@tromey.com>
8068
8069         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8070         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8071
8072 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8073
8074         * aarch64-tdep.c (aarch64_sve_register_names): New const
8075         var.
8076         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8077         (AARCH64_SVE_Z_REGS_NUM): New define.
8078         (AARCH64_SVE_P_REGS_NUM): Likewise.
8079         (AARCH64_SVE_NUM_REGS): Likewise.
8080
8081 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8082
8083         * nat/linux-ptrace.h [__alpha__]
8084         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8085         definitions.
8086
8087 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8088
8089         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8090         the endianness selected.
8091         * NEWS: Document `set endian auto' mode operation update.
8092
8093 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8094
8095         * Makefile.in: Add new header.
8096         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8097         (sve_vl_from_vg): Likewise.
8098         (sve_vq_from_vl): Likewise.
8099         (sve_vl_from_vq): Likewise.
8100         (sve_vq_from_vg): Likewise.
8101         (sve_vg_from_vq): Likewise.
8102         * configure.nat: Add new c file.
8103         * nat/aarch64-sve-linux-ptrace.c: New file.
8104         * nat/aarch64-sve-linux-ptrace.h: New file.
8105
8106 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8107
8108         * aarch64-linux-nat.c (aarch64_linux_read_description):
8109         Add parmeter zero.
8110         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8111         Likewise.
8112         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8113         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8114         (aarch64_gdbarch_init): Add parmeter zero.
8115         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8116         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8117         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8118         parmeter.
8119         * doc/gdb.texinfo: Describe SVE feature
8120         * features/aarch64-sve.c: New file.
8121
8122 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8123
8124         PR gdb/23210
8125         * gdbarch.sh (significant_addr_bit): Default to zero when
8126         not set by target architecture.
8127         * gdbarch.c: Re-generated.
8128         * utils.c (address_significant): Update.
8129
8130 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8131
8132         * stack.c (func_command): Remove trailing newline in call to error.
8133
8134 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8135
8136         * regcache.h (regcache_raw_collect): Remove, update callers to
8137         use regcache::raw_collect.
8138         * regcache.c (regcache_raw_collect): Remove.
8139
8140 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8141
8142         * regcache.h (regcache_raw_supply): Remove, update callers to
8143         use detached_regcache::raw_supply.
8144         * regcache.c (regcache_raw_supply): Remove.
8145
8146 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8147
8148         * regcache.h (regcache_cooked_write_part): Remove, update
8149         callers to use regcache::cooked_write_part.
8150         * regcache.c (regcache_cooked_write_part): Remove.
8151
8152 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8153
8154         * regcache.h (regcache_cooked_read_part): Remove, update callers
8155         to use readable_regcache::cooked_read_part.
8156         * regcache.c (regcache_cooked_read_part): Remove.
8157
8158 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8159
8160         * regcache.h (regcache_cooked_read_value): Remove, update
8161         callers to use readable_regcache::cooked_read_value.
8162         * regcache.c (regcache_cooked_read_value): Remove.
8163
8164 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8165
8166         * regcache.h (regcache_cooked_write): Remove, update callers to
8167         use regcache::cooked_write.
8168         * regcache.c (regcache_cooked_write): Remove.
8169
8170 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8171
8172         * regcache.h (regcache_invalidate): Remove, update callers to
8173         use detached_regcache::invalidate instead.
8174         * regcache.c (regcache_invalidate): Remove.
8175
8176 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8177
8178         * regcache.h (regcache_raw_write_part): Remove, update callers
8179         to use regcache::raw_write_part instead.
8180         * regcache.c (regcache_raw_write_part): Remove.
8181
8182 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8183
8184         * regcache.h (regcache_raw_read_part): Remove, update callers to
8185         use readable_regcache::raw_read_part instead.
8186         * regcache.c (regcache_raw_read_part): Remove.
8187
8188 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8189
8190         * regcache.h (regcache_cooked_read): Remove, update callers to
8191         use readable_regcache::cooked_read instead.
8192         * regcache.c (regcache_cooked_read): Remove.
8193
8194 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8195
8196         * regcache.h (regcache_raw_write): Remove, update callers to use
8197         regcache::raw_write instead.
8198         * regcache.c (regcache_raw_write): Remove.
8199
8200 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8201
8202         * regcache.h (regcache_raw_read): Remove, update callers to use
8203         readable_regcache::raw_read instead.
8204         * regcache.c (regcache_raw_read): Remove.
8205
8206 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8207
8208         * regcache.h (regcache_raw_update): Remove, update callers to
8209         use readable_regcache::raw_update instead.
8210         * regcache.c (regcache_raw_update): Remove.
8211
8212 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8213
8214         * regcache.h (regcache_register_status): Remove, update callers
8215         to use reg_buffer::get_register_status directly instead.
8216         * regcache.c (regcache_register_status): Remove.
8217
8218 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8219
8220         * regcache.h (regcache_get_ptid): Remove, update all callers to
8221         call regcache::ptid instead.
8222         * regcache.c (regcache_get_ptid): Remove.
8223
8224 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8225
8226         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8227
8228 2018-05-30  Pedro Alves  <palves@redhat.com>
8229
8230         * common/common-exceptions.h (exception_rethrow): Use
8231         ATTRIBUTE_NORETURN.
8232
8233 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8234
8235         * breakpoint.c (print_solib_event, check_status_catch_solib):
8236         Remove struct keyword in range-based for loops.
8237         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8238         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8239         Likewise.
8240         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8241         Likewise.
8242         * symfile.c (addr_info_make_relative): Likewise.
8243         * thread.c (value_in_thread_stack_temporaries): Likewise.
8244
8245 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8246
8247         PR gdb/16841
8248         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8249         aggregate type to get its real type before accessing it.
8250
8251 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8252
8253         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8254         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8255         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8256         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8257         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8258         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8259         * printcmd.c (info_address_command): Likewise.
8260
8261 2018-05-29  Tom Tromey  <tom@tromey.com>
8262
8263         * windows-nat.c (handle_exception): Update fall-through comment.
8264
8265 2018-05-29  Tom Tromey  <tom@tromey.com>
8266
8267         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8268         (struct program_space) <added_solibs>: Now a std::vector.
8269         * breakpoint.c (print_solib_event): Update.
8270         (check_status_catch_solib): Update.
8271         * progspace.c (clear_program_space_solib_cache): Update.
8272         * solib.c (update_solib_list): Update.
8273
8274 2018-05-29  Tom Tromey  <tom@tromey.com>
8275
8276         * python/py-type.c (typy_richcompare): Update.
8277         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8278         * gdbtypes.h (types_deeply_equal): Return bool.
8279         (types_equal): Likewise.
8280         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8281         declare VEC.
8282         (check_types_equal): Change worklist to std::vector.  Return
8283         bool.
8284         (struct type_equality_entry): Add constructor.
8285         (compare_maybe_null_strings): Return bool.
8286         (check_types_worklist): Return bool.  Change worklist to
8287         std::vector.
8288         (types_deeply_equal): Use std::vector.
8289         (types_equal): Return bool.
8290         (compare_maybe_null_strings): Simplify.
8291
8292 2018-05-29  Tom Tromey  <tom@tromey.com>
8293
8294         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8295
8296 2018-05-29  Tom Tromey  <tom@tromey.com>
8297
8298         * objc-lang.h: Don't include cp-support.h.
8299         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8300         declare VEC.
8301
8302 2018-05-27  Tom Tromey  <tom@tromey.com>
8303
8304         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8305
8306 2018-05-25  Tom Tromey  <tom@tromey.com>
8307
8308         * value.c (value::location): Initialize.
8309
8310 2018-05-25  Tom Tromey  <tom@tromey.com>
8311
8312         * dbxread.c (init_bincl_list): Remove.
8313         (bincl_list): Now a std::vector.
8314         (bincls_allocated, next_bincl): Remove.
8315         (free_bincl_list, do_free_bincl_list_cleanup)
8316         (make_cleanup_free_bincl_list): Remove.
8317         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8318         unique_xmalloc_ptr.
8319         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8320         (struct header_file_location): Add constructor.
8321         (add_bincl_to_list): Remove.
8322
8323 2018-05-25  Tom Tromey  <tom@tromey.com>
8324
8325         * tui/tui.c (tui_enable): Update.
8326         * mi/mi-interp.c (mi_interp::init): Update.
8327         * interps.h (class interp) <name>: New method.
8328         <m_name>: Rename from name.
8329         (~scoped_restore_interp): Update.
8330         * interps.c (interp::interp): Update.
8331         (interp_add, interp_set, interp_lookup_existing)
8332         (current_interp_named_p): Update.
8333
8334 2018-05-25  Tom Tromey  <tom@tromey.com>
8335
8336         * interps.c (interp_name): Remove.
8337         * mi/mi-interp.c (mi_interp::init): Update.
8338         * interps.h (interp_name): Remove.
8339         (~scoped_restore_interp): Update.
8340         * tui/tui.c (tui_enable): Update.
8341
8342 2018-05-25  Tom Tromey  <tom@tromey.com>
8343
8344         * utils.c (fputs_maybe_filtered): Update.
8345         * linespec.c (decode_line_full): Update.
8346         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8347         (mi_print_breakpoint_for_event, mi_solib_loaded)
8348         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8349         (mi_user_selected_context_changed): Update.
8350         * mi/mi-main.c (mi_execute_command): Update.
8351         * cli/cli-script.c (execute_control_command): Update.
8352         * python/python.c (execute_gdb_command): Update.
8353         * solib.c (info_sharedlibrary_command): Update.
8354         * interps.c (interp_ui_out): Remove.
8355         * interps.h (interp_ui_out): Remove.
8356
8357 2018-05-25  Tom Tromey  <tom@tromey.com>
8358
8359         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8360         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8361         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8362
8363 2018-05-25  Tom Tromey  <tom@tromey.com>
8364
8365         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8366         * interps.c (interp_exec): Use scoped_restore.
8367
8368 2018-05-25  Tom Tromey  <tom@tromey.com>
8369
8370         * remote.c (remote_target::remote_file_get): Use
8371         gdb::byte_vector.
8372         (remote_target::remote_file_put): Likewise.
8373
8374 2018-05-25  Tom Tromey  <tom@tromey.com>
8375
8376         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8377         a std::string.
8378         (get_pe_section_index, add_pe_exported_sym): Update.
8379         (read_pe_exported_syms): Use gdb::def_vector.
8380
8381 2018-05-25  Tom Tromey  <tom@tromey.com>
8382
8383         * frame.c (remove_prev_frame): Remove.
8384         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8385
8386 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8387
8388         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8389         Remove prototypes.
8390         * mips-linux-nat.c (supply_fpregset): Always call
8391         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8392         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8393         `mips_fill_fpregset'.
8394         * mips-linux-tdep.c (mips_supply_fpregset)
8395         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8396         (mips_fill_fpregset_wrapper): Remove functions.
8397         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8398         (mips_linux_fpregset): Remove variable.
8399         (mips_linux_iterate_over_regset_sections): Use
8400         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8401         (mips_linux_o32_sigframe_init): Remove comment.
8402
8403 2018-05-25  Pedro Alves  <palves@redhat.com>
8404
8405         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8406         (struct readahead_cache, struct packet_reg, struct
8407         remote_arch_state, class remote_state): Move higher up in the
8408         file.
8409         (remote_target::m_remote_state): Now an object instead of a pointer.
8410         (remote_target::get_remote_state): Adjust.
8411
8412 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8413
8414         * stack.c (select_and_print_frame): Delete.
8415         (struct function_bounds): Move struct within function.
8416         (func_command): Most content moved into new function
8417         find_frame_for_function, use new function, print result, add
8418         function comment.
8419         (find_frame_for_function): New function, now returns a result.
8420
8421 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8422
8423         * stack.c (iterate_over_block_arg_vars): Fix comment.
8424         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8425
8426 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8427
8428         PR gdb/23203
8429         * frame.c
8430         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8431         Define.
8432         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8433         Define.
8434         * frame.h (class scoped_restore_selected_frame): New class.
8435         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8436         of any exception, use scoped_restore_selected_frame to restore the
8437         frame instead.
8438
8439 2018-05-24  Pedro Alves  <palves@redhat.com>
8440
8441         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8442         override.
8443
8444 2018-05-23  Tom Tromey  <tom@tromey.com>
8445
8446         * complaints.c (struct complaints): Remove.
8447         (symfile_complaint_book): Remove.
8448         (series): New global.
8449         (complaint_internal): Update.
8450         (clear_complaints): Update.
8451
8452 2018-05-23  Tom Tromey  <tom@tromey.com>
8453
8454         * complaints.c (counters): New global.
8455         (struct complain): Remove.
8456         (struct complaints) <root>: Remove.
8457         (complaint_sentinel): Remove.
8458         (symfile_complaint_book): Update.
8459         (find_complaint) Remove.
8460         (complaint_internal, clear_complaints): Update.
8461
8462 2018-05-23  Tom Tromey  <tom@tromey.com>
8463
8464         * complaints.c (struct complain) <file, line>: Remove.
8465         (find_complaint): Remove file, line parameters.
8466         (complaint_internal): Update.
8467
8468 2018-05-23  Tom Tromey  <tom@tromey.com>
8469
8470         * complaints.c (vcomplaint): Remove.
8471         (complaint_internal) Merge in contents of vcomplaint.
8472
8473 2018-05-23  Tom Tromey  <tom@tromey.com>
8474
8475         * complaints.c (struct complaints) <explanation>: Remove.
8476         (symfile_explanations): Remove.
8477         (symfile_complaint_book): Update.
8478         (vcomplaint): Update.
8479         (struct explanation): Remove.
8480
8481 2018-05-23  Tom Tromey  <tom@tromey.com>
8482
8483         * complaints.c (symfile_complaints): Remove.
8484         (complaint_internal): Remove "complaints" parameter.
8485         (clear_complaints, vcomplaint): Remove "c" parameter.
8486         (get_complaints): Remove.
8487         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8488         (dwarf2_debug_line_missing_file_complaint)
8489         (dwarf2_debug_line_missing_end_sequence_complaint)
8490         (dwarf2_complex_location_expr_complaint)
8491         (dwarf2_const_value_length_mismatch_complaint)
8492         (dwarf2_section_buffer_overflow_complaint)
8493         (dwarf2_macro_malformed_definition_complaint)
8494         (dwarf2_invalid_attrib_class_complaint)
8495         (create_addrmap_from_index, dw2_symtab_iter_next)
8496         (dw2_expand_marked_cus)
8497         (dw2_debug_names_iterator::find_vec_in_debug_names)
8498         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8499         (create_debug_type_hash_table, init_cutu_and_read_dies)
8500         (partial_die_parent_scope, add_partial_enumeration)
8501         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8502         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8503         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8504         (create_cus_hash_table, create_dwp_hash_table)
8505         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8506         (dwarf2_rnglists_process, dwarf2_ranges_process)
8507         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8508         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8509         (handle_struct_member_die, process_structure_scope)
8510         (read_array_type, read_common_block, read_module_type)
8511         (read_tag_pointer_type, read_typedef, read_base_type)
8512         (read_subrange_type, load_partial_dies, partial_die_info::read)
8513         (partial_die_info::read, partial_die_info::read)
8514         (partial_die_info::read, read_checked_initial_length_and_offset)
8515         (dwarf2_string_attr, read_formatted_entries)
8516         (dwarf_decode_line_header)
8517         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8518         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8519         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8520         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8521         (get_signatured_type, get_DW_AT_signature_type)
8522         (decode_locdesc, file_file_name, consume_improper_spaces)
8523         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8524         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8525         (dwarf2_symbol_mark_computed, set_die_type)
8526         (read_attribute_value): Update.
8527         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8528         Update.
8529         * dbxread.c (unknown_symtype_complaint)
8530         (lbrac_mismatch_complaint, repeated_header_complaint)
8531         (set_namestring, function_outside_compilation_unit_complaint)
8532         (read_dbx_symtab, process_one_symbol): Update.
8533         * gdbtypes.c (stub_noname_complaint): Update.
8534         * windows-nat.c (handle_unload_dll): Update.
8535         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8536         (decode_base_type): Update.
8537         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8538         (eb_complaint, record_include_begin, record_include_end)
8539         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8540         (process_xcoff_symbol, read_symbol)
8541         (function_outside_compilation_unit_complaint)
8542         (scan_xcoff_symtab): Update.
8543         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8544         * buildsym.c (finish_block_internal, make_blockvector)
8545         (end_symtab_get_static_block, augment_type_symtab): Update.
8546         * dtrace-probe.c (dtrace_process_dof)
8547         (dtrace_static_probe_ops::get_probes): Update.
8548         * complaints.h (struct complaint): Don't declare.
8549         (symfile_complaints): Remove.
8550         (complaint_internal): Remove "complaints" parameter.
8551         (complaint): Likewise.
8552         (clear_complaints): Likewise.
8553         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8554         (reread_symbols): Update.
8555         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8556         (dwarf2_frame_cache, decode_frame_entry): Update.
8557         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8558         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8559         (info_selectors_command): Update.
8560         * macrotab.c (macro_include, check_for_redefinition)
8561         (macro_undef): Update.
8562         * objfiles.c (filter_overlapping_sections): Update.
8563         * stabsread.c (invalid_cpp_abbrev_complaint)
8564         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8565         (define_symbol, error_type, read_type, rs6000_builtin_type)
8566         (stabs_method_name_from_physname, read_member_functions)
8567         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8568         (attach_fields_to_type, complain_about_struct_wipeout)
8569         (read_range_type, read_args, common_block_start)
8570         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8571         Update.
8572         * mdebugread.c (index_complaint, unknown_ext_complaint)
8573         (basic_type_complaint, bad_tag_guess_complaint)
8574         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8575         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8576         (parse_procedure, parse_lines)
8577         (function_outside_compilation_unit_complaint)
8578         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8579         (bad_tag_guess_complaint, reg_value_complaint): Update.
8580         * cp-support.c (demangled_name_complaint): Update.
8581         * macroscope.c (sal_macro_scope): Update.
8582         * dwarf-index-write.c (class debug_names): Update.
8583
8584 2018-05-23  Tom Tromey  <tom@tromey.com>
8585
8586         * complaints.c (clear_complaints): Remove "noisy" parameter.
8587         * complaints.h (clear_complaints): Update.
8588         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8589         (reread_symbols): Update.
8590
8591 2018-05-23  Tom Tromey  <tom@tromey.com>
8592
8593         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8594         SUBSEQUENT_MESSAGE.
8595         (vcomplaint, clear_complaints): Update.
8596         (symfile_explanations): Remove some messages.
8597
8598 2018-05-23  Tom Tromey  <tom@tromey.com>
8599
8600         * complaints.c (internal_complaint): Remove.
8601         * complaints.h (internal_complaint): Remove.
8602
8603 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8604
8605         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8606
8607 2018-05-22  Pedro Alves  <palves@redhat.com>
8608
8609         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8610         (remote_fileio_badfd, remote_fileio_return_errno)
8611         (remote_fileio_return_success, remote_fileio_func_open)
8612         (remote_fileio_func_open, remote_fileio_func_close)
8613         (remote_fileio_func_read, remote_fileio_func_write)
8614         (remote_fileio_func_lseek, remote_fileio_func_rename)
8615         (remote_fileio_func_unlink, remote_fileio_func_stat)
8616         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8617         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8618         remote_target parameter.
8619         (remote_fio_func_map) <func>: Add remote_target parameter.
8620         (do_remote_fileio_request, remote_fileio_request):
8621         * remote-fileio.h (remote_fileio_request):
8622         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8623         remote_target parameter.
8624         (remote_notif_process, handle_notification): Adjust to pass down
8625         the remote.
8626         (remote_notif_state_allocate): Add remote_target parameter.  Save
8627         it.
8628         * remote-notif.h (struct remote_target): Forward declare.
8629         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8630         remote_target parameter.
8631         (struct remote_notif_state) <remote>: New field.
8632         (remote_notif_ack, remote_notif_parse): Add remote_target
8633         parameter.
8634         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8635         remote_target parameter.
8636         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8637         (threads_listing_context, rmt_thread_action, protocol_feature)
8638         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8639         (packet_result, struct threads_listing_context, remote_state):
8640         Move definitions and declarations higher up.
8641         (remote_target) <~remote_target>: Declare.
8642         (remote_download_command_source, remote_file_put, remote_file_get)
8643         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8644         (remote_hostio_pread_vFile, remote_hostio_send_command)
8645         (remote_hostio_set_filesystem, remote_hostio_open)
8646         (remote_hostio_close, remote_hostio_unlink, remote_state)
8647         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8648         (get_memory_write_packet_size, get_memory_read_packet_size)
8649         (append_pending_thread_resumptions, remote_detach_1)
8650         (append_resumption, remote_resume_with_vcont)
8651         (add_current_inferior_and_thread, wait_ns, wait_as)
8652         (process_stop_reply, remote_notice_new_inferior)
8653         (process_initial_stop_replies, remote_add_thread)
8654         (btrace_sync_conf, remote_btrace_maybe_reopen)
8655         (remove_new_fork_children, kill_new_fork_children)
8656         (discard_pending_stop_replies, stop_reply_queue_length)
8657         (check_pending_events_prevent_wildcard_vcont)
8658         (discard_pending_stop_replies_in_queue, stop_reply)
8659         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8660         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8661         (remote_interrupt_as, remote_interrupt_ns)
8662         (remote_get_noisy_reply, remote_query_attached)
8663         (remote_add_inferior, remote_current_thread, get_current_thread)
8664         (set_thread, set_general_thread, set_continue_thread)
8665         (set_general_process, write_ptid)
8666         (remote_unpack_thread_info_response, remote_get_threadinfo)
8667         (parse_threadlist_response, remote_get_threadlist)
8668         (remote_threadlist_iterator, remote_get_threads_with_ql)
8669         (remote_get_threads_with_qxfer)
8670         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8671         (get_offsets, remote_check_symbols, remote_supported_packet)
8672         (remote_query_supported, remote_packet_size)
8673         (remote_serial_quit_handler, remote_detach_pid)
8674         (remote_vcont_probe, remote_resume_with_hc)
8675         (send_interrupt_sequence, interrupt_query)
8676         (remote_notif_get_pending_events, fetch_register_using_p)
8677         (send_g_packet, process_g_packet, fetch_registers_using_g)
8678         (store_register_using_P, store_registers_using_G)
8679         (set_remote_traceframe, check_binary_download)
8680         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8681         (remote_xfer_live_readonly_partial, remote_read_bytes)
8682         (remote_send_printf, remote_flash_write, readchar)
8683         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8684         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8685         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8686         (extended_remote_disable_randomization, extended_remote_run)
8687         (send_environment_packet, extended_remote_environment_support)
8688         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8689         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8690         (packet_command): Now methods of ...
8691         (remote_target): ... this class.
8692         (m_remote_state) <remote_target>: New field.
8693         (struct remote_state) <stop_reply_queue,
8694         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8695         fields.
8696         (remote_state::remote_state): Allocate stop_reply_queue.
8697         (remote_state): Delete global.
8698         (get_remote_state_raw): Delete.
8699         (remote_target::get_remote_state): Allocate m_remote_state on
8700         demand.
8701         (get_current_remote_target): New.
8702         (remote_ops, extended_remote_ops): Delete.
8703         (wait_forever_enabled_p, remote_async_inferior_event_token):
8704         Delete, moved to struct remote_state.
8705         (remote_target::close): Delete self.  Destruction bits split to
8706         ...
8707         (remote_target::~remote_target): ... this.
8708         (show_memory_packet_size): Adjust to use
8709         get_current_remote_target.
8710         (struct protocol_feature) <func>: Add remote_target parameter.
8711         All callers adjusted.
8712         (curr_quit_handler_target): New.
8713         (remote_serial_quit_handler): Reimplement.
8714         (remote_target::open_1): Adjust to use get_current_remote_target.
8715         Heap-allocate remote_target/extended_remote_target instances.
8716         (vcont_builder::vcont_builder): Add remote_target parameter, and
8717         save it in m_remote.  All callers adjusted.
8718         (vcont_builder::m_remote): New field.
8719         (vcont_builder::restart, vcont_builder::flush)
8720         (vcont_builder::push_action): Use it.
8721         (remote_target::commit_resume): Use it.
8722         (struct queue_iter_param) <remote>: New field.
8723         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8724         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8725         (check_pending_event_prevents_wildcard_vcont_callback)
8726         (remote_target::check_pending_events_prevent_wildcard_vcont)
8727         (remote_target::discard_pending_stop_replies)
8728         (remote_target::discard_pending_stop_replies_in_queue)
8729         (remote_target::remote_notif_remove_queued_reply): Fill in
8730         'remote' field.
8731         (remote_notif_get_pending_events): New.
8732         (remote_target::readchar, remote_target::remote_serial_write):
8733         Save/restore curr_quit_handler_target.
8734         (putpkt): New.
8735         (kill_new_fork_children): Fill in 'remote' field.
8736         (packet_command): Use get_current_remote_target, defer to
8737         remote_target method of same name.
8738         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8739         parameter, and save it in m_remote.  All callers adjusted.
8740         (scoped_remote_fd::release): Use m_remote.
8741         (scoped_remote_fd::m_remote): New field.
8742         (remote_file_put, remote_file_get, remote_file_delete): Use
8743         get_current_remote_target, defer to remote_target method of same
8744         name.
8745         (remote_btrace_reset): Add remote_state paremeter.  Update all
8746         callers.
8747         (remote_async_inferior_event_handler). Pass down 'data'.
8748         (remote_new_objfile): Use get_current_remote_target.
8749         (remote_target::vcont_r_supported): New.
8750         (set_range_stepping): Use get_current_remote_target and
8751         remote_target::vcont_r_supported.
8752         (_initialize_remote): Don't allocate 'remote_state' and
8753         'stop_reply_queue' globals.
8754         * remote.h (struct remote_target): Forward declare.
8755         (getpkt, putpkt, remote_notif_get_pending_events): Add
8756         'remote_target' parameter.
8757
8758 2018-05-22  Pedro Alves  <palves@redhat.com>
8759
8760         * remote.c (vcont_builder): Now a class.  Make all data members
8761         private.
8762         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8763         Declare methods.
8764         (vcont_builder_restart): Rename to ...
8765         (vcont_builder::restart): ... this.
8766         (vcont_builder_flush): Rename to ...
8767         (vcont_builder::flush): ... this.
8768         (vcont_builder_push_action): Rename to ...
8769         (vcont_builder::push_action): ... this.
8770         (remote_target::commit_resume): Adjust.
8771
8772 2018-05-22  Pedro Alves  <palves@redhat.com>
8773
8774         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8775         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8776         (get_fixed_memory_packet_size): New.
8777         (get_memory_packet_size): Use it.
8778         (set_memory_packet_size): Don't override the config size with
8779         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8780         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8781         Don't refer to get_memory_packet_size if not connected to a remote
8782         target.  Show "(default)" if configured size is 0.
8783
8784 2018-05-22  Pedro Alves  <palves@redhat.com>
8785
8786         * remote.c (remote_target::mourn_inferior): Move
8787         discard_pending_stop_replies call here from ...
8788         (_initialize_remote): ... here.
8789
8790 2018-05-22  Pedro Alves  <palves@redhat.com>
8791
8792         * remote.c (compare_section_command): Remove set_general_process
8793         call.
8794
8795 2018-05-22  Pedro Alves  <palves@redhat.com>
8796
8797         * remote.c (struct packet_reg, struct remote_arch_state):
8798         Move higher up in the file.
8799         (remote_state) <m_arch_states>: Store remote_arch_state values
8800         instead of remote_arch_state pointers.
8801         (remote_state::get_remote_arch_state): Adjust.
8802
8803 2018-05-22  Pedro Alves  <palves@redhat.com>
8804
8805         * remote.c: Include <unordered_map>.
8806         (remote_state): Now a class.
8807         (remote_state) <get_remote_arch_state>: Declare method.
8808         <get_remote_arch_state>: New field.
8809         (remote_arch_state) <remote_arch_state>: Declare ctor.
8810         <regs>: Now a unique_ptr.
8811         (remote_gdbarch_data_handle): Delete.
8812         (get_remote_arch_state): Delete.
8813         (remote_state::get_remote_arch_state): New.
8814         (get_remote_state): Adjust to call remote_state's
8815         get_remote_arch_state method.
8816         (init_remote_state): Delete, bits factored out to ...
8817         (remote_arch_state::remote_arch_state): ... this new method.
8818         (get_remote_packet_size, get_memory_packet_size)
8819         (process_g_packet, remote_target::fetch_registers)
8820         (remote_target::prepare_to_store, store_registers_using_G)
8821         (remote_target::store_registers, remote_target::get_trace_status):
8822         Adjust to call remote_state's method.
8823         (_initialize_remote): Remove reference to
8824         remote_gdbarch_data_handle.
8825
8826 2018-05-22  Pedro Alves  <palves@redhat.com>
8827
8828         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8829         pread>: New method declarations.
8830         (remote_target::open_1): Adjust.
8831         (readahead_cache_invalidate): Rename to ...
8832         (readahead_cache::invalidate): ... this, and adjust to be a class
8833         method.
8834         (readahead_cache_invalidate_fd): Rename to ...
8835         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8836         class method.
8837         (remote_hostio_pwrite): Adjust.
8838         (remote_hostio_pread_from_cache): Rename to ...
8839         (readahead_cache::pread): ... this, and adjust to be a class
8840         method.
8841         (remote_hostio_close): Adjust.
8842
8843 2018-05-22  Pedro Alves  <palves@redhat.com>
8844
8845         * remote.c (remote_hostio_close_cleanup): Delete.
8846         (class scoped_remote_fd): New.
8847         (remote_file_put, remote_file_get): Use it.
8848
8849 2018-05-22  Pedro Alves  <palves@redhat.com>
8850
8851         (struct vCont_action_support): Use bool and initialize all fields.
8852         (struct readahead_cache): Initialize all fields.
8853         (remote_state): Use bool and initialize all fields.
8854         (remote_state::remote_state, remote_state::~remote_state): New.
8855         (new_remote_state): Delete.
8856         (_initialize_remote): Use new to allocate remote_state.
8857
8858 2018-05-22  Pedro Alves  <palves@redhat.com>
8859             張俊芝  <zjz@zjz.name>
8860
8861         PR gdb/22973
8862         * c-exp.y: Include "c-support.h".
8863         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8864         of tolower.  Use c_ident_is_alpha to scan names.
8865         * c-lang.c: Include "c-support.h".
8866         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8867         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8868         * c-support.h: New file, with bits factored out from ...
8869         * cp-name-parser.y: ... this file.
8870         Include "c-support.h".
8871         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8872         c-support.h and renamed.
8873         (symbol_end, yylex): Adjust.
8874
8875 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8876
8877         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8878         parameter type to CORE_ADDR.
8879         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8880         parameter type in declaration to CORE_ADDR.
8881         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8882         target_auxv_search to get AT_HWCAP and use the result to get the
8883         target description.
8884         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8885         to CORE_ADDR. Remove the cast of the return value to unsigned
8886         long. Fix error predicate of target_auxv_search.
8887         (ppc_linux_nat_target::read_description): Change the type of the
8888         hwcap variable to CORE_ADDR.
8889
8890 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8891
8892         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8893         if the size of fpscr is larger than 32 bits.
8894
8895 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8896
8897         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8898         (ppc32_linux_vsxregmap): New global.
8899         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8900         regcache_supply_regset, and regcache_collect_regset.
8901         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8902         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8903         (fetch_vsx_register, store_vsx_register): Remove.
8904         (fetch_vsx_registers): Add regno parameter. Get regset using
8905         ppc_linux_vsxregset. Use regset to supply registers.
8906         (store_vsx_registers): Add regno parameter. Get regset using
8907         ppc_linux_vsxregset. Use regset to collect registers.
8908         (fetch_register): Call fetch_vsx_registers instead of
8909         fetch_vsx_register.
8910         (store_register): Call store_vsx_registers instead of
8911         store_vsx_register.
8912         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8913         new regno parameter.
8914         (store_ppc_registers): Call store_vsx_registers with -1 for the
8915         new regno parameter.
8916         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8917         (ppc_collect_vsxregset): Remove.
8918
8919 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8920
8921         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8922         offset fields.
8923         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8924         for vector register offset fields.
8925         (ppc64_fbsd_reg_offsets): Likewise.
8926         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8927         to vector register offset fields.
8928         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8929         to vector register offset fields.
8930         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8931         vector register offset fields.
8932         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8933         initializers for vector register offset fields.
8934         (rs6000_aix64_reg_offsets): Likewise.
8935         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8936         (ppc_supply_vrregset): Remove.
8937         (ppc_collect_vrregset): Remove.
8938         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8939         (ppc_linux_vrregset) : New function.
8940         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8941         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8942         (ppc32_linux_vrregset): Remove.
8943         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8944         and use result instead of ppc32_linux_vrregset.
8945         (ppc32_linux_reg_offsets): Remove initializers for vector register
8946         offset fields.
8947         (ppc64_linux_reg_offsets): Likewise.
8948         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8949         * ppc-linux-nat.c: Include regset.h.
8950         (gdb_vrregset_t): Adjust comment to account for little-endian
8951         mode.
8952         (supply_vrregset, fill_vrregset): Remove.
8953         (fetch_altivec_register, store_altivec_register): Remove.
8954         (fetch_altivec_registers): Add regno parameter. Get regset using
8955         ppc_linux_vrregset. Use regset to supply registers.
8956         (store_altivec_registers): Add regno parameter. Get regset using
8957         ppc_linux_vrregset. Use regset to collect registers.
8958         (fetch_register): Call fetch_altivec_registers instead of
8959         fetch_altivec_register.
8960         (store_register): Call store_altivec_registers instead of
8961         store_altivec_register.
8962         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8963         the new regno parameter.
8964         (store_ppc_registers): Call store_altivec_registers with -1 for
8965         the new regno parameter.
8966
8967 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8968
8969         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8970         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8971         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8972         (gdb_vrregset_t): Change array type size to
8973         PPC_LINUX_SIZEOF_VRREGSET.
8974         (gdb_vsxregset_t): Change array type size to
8975         PPC_LINUX_SIZEOF_VSXREGSET.
8976         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8977         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8978         PPC_LINUX_SIZEOF_VSXREGSET.
8979
8980 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8981
8982         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8983         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8984         nat/ppc-linux.c.
8985         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8986         ppc_linux_target_wordsize with tid.
8987         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8988         wordsize with tid.
8989         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8990         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8991         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8992         tid parameter. Remove static specifier.
8993         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8994         (ppc_linux_target_wordsize): New declaration.
8995
8996 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8997
8998         * arch/ppc-linux-common.c: New file.
8999         * arch/ppc-linux-common.h: New file.
9000         * arch/ppc-linux-tdesc.h: New file.
9001         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9002         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9003         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9004         arch/ppc-linux-tdesc.h.
9005         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9006         arch/ppc-linux-tdesc.h.
9007         (ppc_linux_nat_target::read_description): Remove target
9008         description matching code. Fill a ppc_linux_features struct and
9009         call ppc_linux_match_description with it. Move comment about ISA
9010         2.05 to ppc-linux-common.c.
9011         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9012         arch/ppc-linux-tdesc.h.
9013         (ppc_linux_core_read_description): Remove target description
9014         matching code. Fill a ppc_linux_features struct and call
9015         ppc_linux_match_description with it.
9016         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9017         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9018         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9019         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9020         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9021         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9022         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9023         (tdesc_powerpc_e500l): Remove.
9024
9025 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9026
9027         * ada-lang.c (catch_assert_command): Pass empty string instead
9028         of NULL for excep_string argument.
9029
9030 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9031
9032         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9033         the width of the requested register exceeds the width of the
9034         `ptrace' data type.
9035
9036 2018-05-21  Tom Tromey  <tom@tromey.com>
9037
9038         * printcmd.c (output_command): Remove.
9039         (output_command_const): Rename to output_command.
9040         * valprint.h (output_command): Rename from output_command_const.
9041         * tracepoint.c (trace_dump_actions): Call output_command.
9042
9043 2018-05-21  Tom Tromey  <tom@tromey.com>
9044
9045         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9046         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9047         * ada-lang.h (create_ada_exception_catchpoint): Update.
9048         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9049         std::string.
9050         (create_excep_cond_exprs, ~ada_catchpoint)
9051         (should_stop_exception, print_one_exception)
9052         (print_mention_exception, print_recreate_exception): Update.
9053         (ada_get_next_arg): Remove.
9054         (catch_ada_exception_command_split): Use std::string.  Change type
9055         of "excep_string", "cond_string".
9056         (catch_ada_exception_command): Update.
9057         (create_ada_exception_catchpoint): Change type of excep_string.
9058         (ada_exception_sal): Remove excep_string parameter.
9059         (~ada_catchpoint): Remove.
9060
9061 2018-05-21  Tom Tromey  <tom@tromey.com>
9062
9063         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9064         cleanup.
9065
9066 2018-05-21  Tom Tromey  <tom@tromey.com>
9067
9068         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9069         Return unique_xmalloc_ptr.
9070         (print_it_exception): Update.
9071
9072 2018-05-21  Tom Tromey  <tom@tromey.com>
9073
9074         * tracepoint.c (trace_dump_actions): Use std::string.
9075
9076 2018-05-21  Tom Tromey  <tom@tromey.com>
9077
9078         * symfile.c (reread_symbols): Use std::string for original_name.
9079
9080 2018-05-21  Tom Tromey  <tom@tromey.com>
9081
9082         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9083         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9084         constructor.
9085
9086 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9087
9088         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9089         instance to...
9090         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9091         * objfiles.c (get_objfile_bfd_data): Allocate
9092         objfile_per_bfd_storage with obstack_new when allocating on
9093         obstack.
9094
9095 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9096
9097         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9098         OBSTACK_ZALLOC.
9099         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9100         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9101         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9102         (add_pending): Likewise.
9103         (parse_symbol): Likewise.
9104         (parse_partial_symbols): Likewise.
9105         (psymtab_to_symtab_1): Likewise.
9106         (new_psymtab): Likewise.
9107         (elfmdebug_build_psymtabs): Likewise.
9108         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9109         * objfiles.c (get_objfile_bfd_data): Likewise.
9110         (objfile_register_static_link): Likewise.
9111         * psymtab.c (allocate_psymtab): Likewise.
9112         * stabsread.c (read_member_functions): Likewise.
9113         * xcoffread.c (xcoff_end_psymtab): Likewise.
9114
9115 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9116
9117         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9118         compiler supports std::is_trivially_constructible.
9119         * common/poison.h: Include obstack.h.
9120         (IsMallocable): Define to is_trivially_constructible if the
9121         compiler supports it, define to true_type otherwise.
9122         (xobnew): New.
9123         (XOBNEW): Redefine.
9124         (xobnewvec): New.
9125         (XOBNEWVEC): Redefine.
9126         * gdb_obstack.h (obstack_zalloc): New.
9127         (OBSTACK_ZALLOC): Redefine.
9128         (obstack_calloc): New.
9129         (OBSTACK_CALLOC): Redefine.
9130         (obstack_new): New.
9131         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9132         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9133         gdbarch.c.
9134         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9135         obstack_calloc/obstack_zalloc.
9136         (gdbarch_obstack_zalloc): Remove.
9137         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9138
9139 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9140
9141         * stack.c (backtrace_command_1): Remove useless variable int i.
9142
9143 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9144
9145         * stack.c (print_frame_info): Fix comment.
9146
9147 2018-05-18  Tom Tromey  <tom@tromey.com>
9148
9149         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9150         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9151         (~dwarf2_per_objfile): Update
9152         (dwarf2_get_dwz_file): Use new.
9153         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9154         unique_ptr.
9155
9156 2018-05-18  Tom Tromey  <tom@tromey.com>
9157
9158         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9159         unique_ptr.
9160         * dwarf2read.c (struct dwp_file): Add constructor and
9161         initializers.
9162         (open_and_init_dwp_file): Return a unique_ptr.
9163         (dwarf2_per_objfile, create_dwp_hash_table)
9164         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9165         (lookup_dwo_unit_in_dwp): Update.
9166         (open_and_init_dwp_file, get_dwp_file): Update.
9167
9168 2018-05-18  Tom Tromey  <tom@tromey.com>
9169
9170         * dwarf2read.c (dwarf2_per_objfile): Update.
9171         (struct mapped_index): Add initializers.
9172         (dwarf2_read_index): Use new.
9173         (dw2_symtab_iter_init): Update.
9174         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9175         unique_ptr.
9176
9177 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9178
9179         * dwarf2read.c (mapped_index) <total_size>: Remove.
9180
9181 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9182
9183         * unittests/format_pieces-selftests.c (test_format_specifier):
9184         Add ARI comments.
9185
9186 2018-05-18  Tom Tromey  <tom@tromey.com>
9187
9188         * c-typeprint.c (maybe_print_hole): New function.
9189         (c_print_type_struct_field_offset): Update.
9190         (c_type_print_base_struct_union): Call maybe_print_hole.
9191
9192 2018-05-17  Keith Seitz  <keiths@redhat.com>
9193
9194         * breakpoint.c (build_bpstat_chain): New function, moved from
9195         bpstat_stop_status.
9196         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9197         If no stop chain is passed, call build_bpstat_chain to build it.
9198         * breakpoint.h (build_bpstat_chain): Declare.
9199         (bpstat_stop_status): Move documentation here from breakpoint.c.
9200         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9201         build the stop chain and pass it to skip_inline_frames.
9202         Pass this stop chain to bpstat_stop_status.
9203         * inline-frame.c: Include breakpoint.h.
9204         (stopped_by_user_bp_inline_frame): New function.
9205         (skip_inline_frames): Add parameter `stop_chain'.
9206         Move documention to inline-frame.h.
9207         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9208         whether the frame should be elided.
9209         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9210         Add moved documentation and update for new parameter.
9211
9212 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9213
9214         PR cli/14975
9215         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9216         unittests/format_pieces-selftests.c.
9217         * common/format.h (format_piece) <operator==>: New.
9218         (format_pieces) <operator[]>: Remove.
9219         * common/format.c (format_pieces::format_pieces): Handle \e.
9220         * unittests/format_pieces-selftests.c: New.
9221
9222 2018-05-17  Tom Tromey  <tom@tromey.com>
9223
9224         PR symtab/23010:
9225         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9226         (dw2_instantiate_symtab): Add skip_partial parameter.
9227         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9228         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9229         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9230         (dw2_expand_symtabs_matching_one)
9231         (dw2_find_pc_sect_compunit_symtab)
9232         (dw2_debug_names_lookup_symbol)
9233         (dw2_debug_names_expand_symtabs_for_function): Update.
9234         (init_cutu_and_read_dies): Add skip_partial parameter.
9235         (process_psymtab_comp_unit, build_type_psymtabs_1)
9236         (process_skeletonless_type_unit, load_partial_comp_unit)
9237         (psymtab_to_symtab_1): Update.
9238         (load_full_comp_unit): Add skip_partial parameter.
9239         (process_imported_unit_die, dwarf2_read_addr_index)
9240         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9241         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9242         (read_signatured_type): Update.
9243
9244 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9245
9246         * value.c (release_value): Remove unused variable.
9247         (record_latest_value): Likewise.
9248         (access_value_history): Likewise.
9249         (preserve_values): Likewise.
9250
9251 2018-05-17  Tom Tromey  <tom@tromey.com>
9252
9253         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9254         Initialize.
9255
9256 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9257
9258         PR gdb/22286
9259         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9260         Also handle registers whose width is not a multiple of
9261         PTRACE_TYPE_RET.
9262         (linux_nat_trad_target::store_register): Likewise.
9263
9264 2018-05-16  Tom Tromey  <tom@tromey.com>
9265
9266         * gdbcore.h (core_bfd): Redefine.
9267         * corelow.c (core_target::close): Update.
9268         (core_target_open): Update.
9269         * progspace.h (struct program_space) <cbfd>: Now a
9270         gdb_bfd_ref_ptr.
9271
9272 2018-05-16  Tom Tromey  <tom@tromey.com>
9273
9274         PR cli/19551:
9275         * symfile-add-flags.h (enum symfile_add_flags)
9276         <SYMFILE_NOT_FILENAME>: New constant.
9277         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9278         objfile name from BFD.
9279         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9280         * minidebug.c (find_separate_debug_file_in_section): Put
9281         ".gnu_debugdata" into BFD's file name.
9282
9283 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9284
9285         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9286         Remove.
9287
9288 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9289
9290         PR binutils/21446
9291         * aarch64-tdep.c (aarch64_analyze_prologue,
9292         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9293         Indicate not interested in errors.
9294
9295 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9296
9297         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9298         Supply the MIPS_ZERO_REGNUM register.
9299
9300 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9301
9302         * mips-tdep.c (mask_address_var): Make variable static.
9303
9304 2018-05-14  Tom Tromey  <tom@tromey.com>
9305
9306         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9307
9308 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9309
9310         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9311         FXSAVE_ADDR for the mxcsr register.
9312
9313 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9314
9315         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9316
9317 2018-05-11  Pedro Alves  <palves@redhat.com>
9318
9319         * corelow.c (core_target) <core_target>: No longer inline.
9320         Initialize m_core_gdbarch, m_core_vec and build the section table
9321         here.
9322         <~core_target>: New.
9323         <core_gdbarch, get_core_register_section>: New methods.
9324         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9325         factored out from ...
9326         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9327         (core_ops): Delete.
9328         (sniff_core_bfd): Add gdbarch parameter.
9329         (core_close): Delete, merged into ...
9330         (core_target::close): ... here.  Delete self.
9331         (core_close_cleanup): Delete.
9332         (core_target_open): Allocate a core_target on the heap.  Use a
9333         unique_ptr instead of a cleanup.  Bits moved into the core_target
9334         ctor.  Adjust to use core_target methods instead of globals.
9335         (get_core_register_section): Rename to ...
9336         (core_target::get_core_register_section): ... this and adjust.
9337         (struct get_core_registers_cb_data): New.
9338         (get_core_registers_cb): Use it.  Use bool.
9339         (core_target::fetch_registers, core_target::files_info)
9340         (core_target::xfer_partial, core_target::read_description)
9341         (core_target::pid_to, core_target::thread_name): Adjust to
9342         reference class fields instead of globals.
9343         * target.h (struct target_ops_deleter, target_ops_up): New.
9344
9345 2018-05-11  Pedro Alves  <palves@redhat.com>
9346
9347         * corefile.c (core_file_command): Move to corelow.c.
9348         * corelow.c (the_core_target): Delete.
9349         (core_file_command): Moved from corefile.c.  Check exec_bfd
9350         instead of the_core_target.  Use target_detach instead of calling
9351         into the_core_target directly.
9352         (maybe_say_no_core_file_now): New.
9353         (core_target::detach): Use it.
9354         (_initialize_corelow): Remove references to the_core_target.
9355         * gdbcore.h (the_core_target): Delete.
9356
9357 2018-05-11  Tom Tromey  <tromey@redhat.com>
9358             Pedro Alves  <palves@redhat.com>
9359
9360         * corefile.c (core_bfd): Remove.
9361         * gdbcore.h (core_bfd): Now a macro.
9362         * progspace.h (struct program_space) <cbfd>: New field.
9363
9364 2018-05-11  Tom Tromey  <tom@tromey.com>
9365
9366         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9367         gdb::def_vector.
9368
9369 2018-05-10  Tom Tromey  <tom@tromey.com>
9370
9371         * configure: Rebuild.
9372         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9373
9374 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9375
9376         PR server/23158:
9377         * regformats/regdat.sh: Adjust script, following the addition
9378         of the new expedite_regs parameter to init_target_desc.
9379
9380 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9381     
9382         PR gdb/23127
9383         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9384         set_gdbarch_significant_addr_bit.
9385         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9386         set_gdbarch_significant_addr_bit.
9387         * utils.c (address_significant): Update to sign extend addr.
9388
9389 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9390
9391         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9392         (xtensa_linux_init_abi): Limit tdep->num_regs by
9393         tdep->num_nopriv_regs.
9394         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9395         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9396         not initialized.
9397
9398 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9399
9400         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9401
9402 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9403
9404         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9405         (I387_MXCSR_INIT_VAL): New constant.
9406         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9407         buffer if it was supplied by the inferior.
9408         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9409         (i387_xsave_get_clear_bv): New function.
9410         (i387_supply_xsave): Only read x87 control registers from the
9411         xsave buffer if the feature is enabled, and the state will have
9412         been written, otherwise, provide a suitable default.
9413         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9414         including x87 control registers.  Update control registers if they
9415         have changed from the default value, and mark features as enabled
9416         as required.
9417         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9418
9419 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9420
9421         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9422
9423 2018-05-07  Tom Tromey  <tom@tromey.com>
9424
9425         * configure: Rebuild.
9426         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9427
9428 2018-05-07  Tom Tromey  <tom@tromey.com>
9429
9430         PR tdep/20362:
9431         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9432         bit.  Use correct value for VDIV.
9433
9434 2018-05-04  Tom Tromey  <tom@tromey.com>
9435
9436         * configure: Rebuild.
9437         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9438
9439 2018-05-04  Tom Tromey  <tom@tromey.com>
9440
9441         * linux-record.c (record_linux_system_call) <case
9442         RECORD_SYS_RECVFROM>: Add "break".
9443
9444 2018-05-04  Tom Tromey  <tom@tromey.com>
9445
9446         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9447         Add missing "break".
9448         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9449         Add missing "break".
9450
9451 2018-05-04  Tom Tromey  <tom@tromey.com>
9452
9453         * rs6000-tdep.c (ppc_process_record_op4)
9454         (ppc_process_record_op63): Add fall-through comment.
9455
9456 2018-05-04  Tom Tromey  <tom@tromey.com>
9457
9458         * i386-tdep.c (i386_process_record): Add fall-through comment.
9459
9460 2018-05-04  Tom Tromey  <tom@tromey.com>
9461
9462         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9463         comment.
9464
9465 2018-05-04  Tom Tromey  <tom@tromey.com>
9466
9467         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9468         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9469         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9470         comment.
9471         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9472         comment.
9473         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9474         comment.
9475
9476 2018-05-04  Tom Tromey  <tom@tromey.com>
9477
9478         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9479
9480 2018-05-04  Tom Tromey  <tom@tromey.com>
9481
9482         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9483         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9484         * symfile.c (section_is_mapped): Fix fall-through comment.
9485         * stabsread.c (define_symbol, read_member_functions): Fix
9486         fall-through comment.
9487         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9488         comment.
9489         * remote.c (remote_wait_as): Fix fall-through comment.
9490         * p-exp.y (yylex): Fix fall-through comment.
9491         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9492         comment.
9493         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9494         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9495         * jv-exp.y (yylex): Fix fall-through comment.
9496         * go-exp.y (lex_one_token): Fix fall-through comment.
9497         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9498         fall-through comment.
9499         * f-exp.y (yylex): Fix fall-through comment.
9500         * dwarf2read.c (process_die): Fix fall-through comments.
9501         * dbxread.c (process_one_symbol): Fix fall-through comment.
9502         * d-exp.y (lex_one_token): Fix fall-through comment.
9503         * cp-name-parser.y (yylex): Fix fall-through comment.
9504         * coffread.c (coff_symtab_read): Fix fall-through comment.
9505         * c-exp.y (lex_one_token): Fix fall-through comment.
9506         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9507         comment.
9508         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9509         comment.
9510
9511 2018-05-04  Tom Tromey  <tom@tromey.com>
9512
9513         PR python/22730:
9514         * NEWS: Mention gdb.execute change.
9515         * gdbcmd.h (execute_control_command): Don't declare.
9516         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9517         execute_control_commands, execute_control_commands_to_string.
9518         * cli/cli-script.h (execute_control_commands)
9519         (execute_control_commands_to_string): Declare.
9520         (execute_control_command): Add from_tty parameter.
9521         * cli/cli-script.c (execute_control_commands)
9522         (execute_control_commands_to_string): New functions.
9523         (execute_user_command): Use execute_control_commands.
9524         (execute_control_command_1): Add "from_tty" parameter.  Update.
9525         (execute_control_command): Likewise.
9526
9527 2018-05-04  Tom Tromey  <tom@tromey.com>
9528
9529         PR python/22731:
9530         * NEWS: Mention that breakpoint commands are writable.
9531         * python/py-breakpoint.c (bppy_set_commands): New function.
9532         (breakpoint_object_getset) <"commands">: Use it.
9533
9534 2018-05-04  Tom Tromey  <tom@tromey.com>
9535
9536         * tracepoint.c (actions_command): Update.
9537         * mi/mi-cmd-break.c (mi_command_line_array)
9538         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9539         (mi_read_next_line): Remove.
9540         (mi_cmd_break_commands): Update.
9541         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9542         function_view.
9543         * cli/cli-script.c (get_command_line): Update.
9544         (process_next_line): Use function_view.  Constify.
9545         (recurse_read_control_structure, read_command_lines)
9546         (read_command_lines_1): Change argument types to function_view.
9547         (do_define_command, document_command): Update.
9548         * breakpoint.h (check_tracepoint_command): Don't declare.
9549         * breakpoint.c (check_tracepoint_command): Remove.
9550         (commands_command_1, create_tracepoint_from_upload): Update.
9551
9552 2018-05-04  Tom Tromey  <tom@tromey.com>
9553
9554         PR gdb/11750:
9555         * cli/cli-script.h (enum command_control_type) <define_control>:
9556         New constant.
9557         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9558         (build_command_line, execute_control_command_1)
9559         (process_next_line): Likewise.
9560         (do_define_command): New function, extracted from define_command.
9561         (define_command): Use it.
9562
9563 2018-05-04  Tom Tromey  <tom@tromey.com>
9564
9565         * tracepoint.c (actions_command): Update.
9566         * cli/cli-script.h (read_command_lines): Update.
9567         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9568         (MAX_TMPBUF): Remove define.
9569         (define_command): Use string_printf.
9570         (document_command): Likewise.
9571         * breakpoint.c (commands_command_1): Update.
9572
9573 2018-05-04  Tom Tromey  <tom@tromey.com>
9574
9575         * top.c (execute_command): Update.
9576         * cli/cli-script.h (print_command_lines): Now varargs.
9577         * cli/cli-script.c (print_command_lines): Now varargs.
9578         (execute_control_command_1) <case while_control, case if_control>:
9579         Update.
9580
9581 2018-05-04  Tom Tromey  <tom@tromey.com>
9582
9583         * tracepoint.c (all_tracepoint_actions): Rename from
9584         all_tracepoint_actions_and_cleanup.  Change return type.
9585         (actions_command, encode_actions_1, encode_actions)
9586         (trace_dump_actions, tdump_command): Update.
9587         * remote.c (remote_download_command_source): Update.
9588         * python/python.c (gdbpy_eval_from_control_command)
9589         (python_command, python_interactive_command): Update.
9590         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9591         * guile/guile.c (guile_command)
9592         (gdbscm_eval_from_control_command, guile_command): Update.
9593         * compile/compile.c (compile_code_command)
9594         (compile_print_command, compile_to_object): Update.
9595         * cli/cli-script.h (struct command_lines_deleter): New.
9596         (counted_command_line): New typedef.
9597         (struct command_line): Add constructor, destructor.
9598         <body_list>: Remove.
9599         <body_list_0, body_list_1>: New members.
9600         (command_line_up): Remove typedef.
9601         (read_command_lines, read_command_lines_1, get_command_line):
9602         Update.
9603         (copy_command_lines): Don't declare.
9604         * cli/cli-script.c (build_command_line): Use "new".
9605         (get_command_line): Return counted_command_line.
9606         (print_command_lines, execute_user_command)
9607         (execute_control_command_1, while_command, if_command): Update.
9608         (realloc_body_list): Remove.
9609         (process_next_line, recurse_read_control_structure): Update.
9610         (read_command_lines, read_command_lines_1): Return counted_command_line.
9611         (free_command_lines): Use "delete".
9612         (copy_command_lines): Remove.
9613         (define_command, document_command, show_user_1): Update.
9614         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9615         a counted_command_line.
9616         * breakpoint.h (counted_command_line): Remove typedef.
9617         (breakpoint_set_commands): Update.
9618         * breakpoint.c (check_no_tracepoint_commands)
9619         (validate_commands_for_breakpoint): Update.
9620         (breakpoint_set_commands): Change commands to be a
9621         counted_command_line.
9622         (commands_command_1, update_dprintf_command_list)
9623         (create_tracepoint_from_upload): Update.
9624
9625 2018-05-04  Tom Tromey  <tom@tromey.com>
9626
9627         * cli/cli-decode.h (cmd_list_element): New constructor.
9628         (~cmd_list_element): New destructor.
9629         (struct cmd_list_element): Add initializers.
9630         * cli/cli-decode.c (do_add_cmd): Use "new".
9631         (delete_cmd): Use "delete".
9632
9633 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9634             Pedro Alves <palves@redhat.com>
9635
9636         PR breakpoints/19806 and support for PR external/20207.
9637         * NEWS: Mention Aarch64 watchpoint improvements.
9638         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9639         watchpoints and PR external/20207 watchpoints.
9640         * nat/aarch64-linux-hw-point.c
9641         (kernel_supports_any_contiguous_range): New.
9642         (aarch64_watchpoint_offset): New.
9643         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9644         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9645         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9646         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9647         next_addr_orig_p.  Support PR external/20207 watchpoints.
9648         (aarch64_downgrade_regs): New.
9649         (aarch64_dr_state_insert_one_point): New parameters offset and
9650         addr_orig.
9651         (aarch64_dr_state_remove_one_point): Likewise.
9652         (aarch64_handle_breakpoint): Update caller.
9653         (aarch64_handle_aligned_watchpoint): Likewise.
9654         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9655         aligned_offset.
9656         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9657         aarch64_downgrade_regs.
9658         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9659         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9660         (DR_CONTROL_MASK): ... this.
9661         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9662         (unsigned int aarch64_watchpoint_offset): New prototype.
9663         (aarch64_linux_set_debug_regs): Remove const from state.
9664         * utils.c (align_up, align_down): Move to ...
9665         * common/common-utils.c (align_up, align_down): ... here.
9666         * utils.h (align_up, align_down): Move to ...
9667         * common/common-utils.h (align_up, align_down): ... here.
9668
9669 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9670
9671         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9672         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9673         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9674         Re-implement to match the ABI as summarized in GCC's
9675         gcc/config/sparc/sparc.c.  All callers updated.
9676         (sparc32_store_arguments): Remove assertion.
9677
9678 2018-05-04  Tom Tromey  <tom@tromey.com>
9679
9680         * printcmd.c: Don't include tui.h.
9681         (decode_format): Use skip_spaces.
9682
9683 2018-05-04  Tom Tromey  <tom@tromey.com>
9684
9685         PR gdb/22619:
9686         * printcmd.c (last_count): New global.
9687         (x_command): Use saved count when repeating.
9688
9689 2018-05-04  Tom Tromey  <tom@tromey.com>
9690
9691         * nto-procfs.c (do_closedir_cleanup): Remove.
9692         (procfs_pidlist): Use gdb_dir_up.
9693         * procfs.c (do_closedir_cleanup): Remove.
9694         (proc_update_threads): Use gdb_dir_up.
9695         * common/filestuff.h (struct gdb_dir_deleter): New.
9696         (gdb_dir_up): New typedef.
9697
9698 2018-05-04  Tom Tromey  <tom@tromey.com>
9699
9700         * ada-lang.c (print_mention_exception): Use std::string.
9701
9702 2018-05-04  Tom Tromey  <tom@tromey.com>
9703
9704         * ada-lang.c (create_excep_cond_exprs): Update.
9705         (ada_exception_catchpoint_cond_string): Use std::string.
9706
9707 2018-05-04  Tom Tromey  <tom@tromey.com>
9708
9709         * ada-lang.c (xget_renaming_scope): Return std::string.
9710         (old_renaming_is_invisible): Update.
9711
9712 2018-05-04  Tom Tromey  <tom@tromey.com>
9713
9714         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9715         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9716
9717 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9718
9719         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9720
9721 2018-05-04  Tom Tromey  <tom@tromey.com>
9722
9723         * remote.c (remote_query_supported_append): Change type.
9724         (remote_check_symbols): Update.
9725
9726 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9727
9728         PR gdb/11420
9729         * configure.ac: Prepend libpython.
9730         * python/python-config.py: Likewise.
9731         * configure: Regenerate.
9732
9733 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9734
9735         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9736
9737 2018-05-03  Pedro Alves  <palves@redhat.com>
9738
9739         * s390-linux-nat.c
9740         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9741         override.  Write 'true' instead of '1'.
9742         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9743         declaration.
9744
9745 2018-05-02  Pedro Alves  <palves@redhat.com>
9746
9747         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9748         add_inf_child_target.
9749         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9750         add_inf_child_target.
9751         * aix-thread.c (aix_thread_target_info): New.
9752         (aix_thread_target) <shortname, longname, doc>: Delete.
9753         <info>: New.
9754         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9755         add_inf_child_target.
9756         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9757         add_inf_child_target.
9758         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9759         add_inf_child_target.
9760         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9761         add_inf_child_target.
9762         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9763         add_inf_child_target.
9764         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9765         add_inf_child_target.
9766         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9767         add_inf_child_target.
9768         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9769         add_inf_child_target.
9770         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9771         add_inf_child_target.
9772         * bfd-target.c (target_bfd_target_info): New.
9773         (target_bfd) <shortname, longname, doc>: Delete.
9774         <info>: New.
9775         * bsd-kvm.c (bsd_kvm_target_info): New.
9776         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9777         <info>: New.
9778         (bsd_kvm_target::open): Rename to ...
9779         (bsd_kvm_target_open): ... this.  Adjust.
9780         * bsd-uthread.c (bsd_uthread_target_info): New.
9781         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9782         <info>: New.
9783         * corefile.c (core_file_command): Adjust.
9784         * corelow.c (core_target_info): New.
9785         (core_target) <shortname, longname, doc>: Delete.
9786         <info>: New.
9787         (core_target::open): Rename to ...
9788         (core_target_open): ... this.  Adjust.
9789         * ctf.c (ctf_target_info): New.
9790         (ctf_target) <shortname, longname, doc>: Delete.
9791         <info>: New.
9792         (ctf_target::open): Rename to ...
9793         (ctf_target_open): ... this.
9794         (_initialize_ctf): Adjust.
9795         * exec.c (exec_target_info): New.
9796         (exec_target) <shortname, longname, doc>: Delete.
9797         <info>: New.
9798         (exec_target::open): Rename to ...
9799         (exec_target_open): ... this.
9800         * gdbcore.h (core_target_open): Declare.
9801         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9802         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9803         add_inf_child_target.
9804         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9805         add_inf_child_target.
9806         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9807         add_inf_child_target.
9808         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9809         add_inf_child_target.
9810         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9811         add_inf_child_target.
9812         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9813         add_inf_child_target.
9814         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9815         add_inf_child_target.
9816         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9817         add_inf_child_target.
9818         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9819         add_inf_child_target.
9820         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9821         add_inf_child_target.
9822         * inf-child.c (inf_child_target_info): New.
9823         (inf_child_target::info): New.
9824         (inf_child_open_target): Remove 'target' parameter.  Use
9825         get_native_target instead.
9826         (inf_child_target::open): Delete.
9827         (add_inf_child_target): New.
9828         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9829         Delete.
9830         <info>: New.
9831         (add_inf_child_target): Declare.
9832         (inf_child_open_target): Declare.
9833         * linux-thread-db.c (thread_db_target_info): New.
9834         (thread_db_target) <shortname, longname, doc>: Delete.
9835         <info>: New.
9836         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9837         add_inf_child_target.
9838         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9839         add_inf_child_target.
9840         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9841         add_inf_child_target.
9842         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9843         add_inf_child_target.
9844         * make-target-delegates (print_class): Adjust.
9845         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9846         add_inf_child_target.
9847         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9848         add_inf_child_target.
9849         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9850         add_inf_child_target.
9851         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9852         add_inf_child_target.
9853         * nto-procfs.c (nto_native_target_info): New.
9854         (nto_procfs_target_native) <shortname, longname, doc>:
9855         Delete.
9856         <info>: New.
9857         (nto_procfs_target_info): New.
9858         (nto_procfs_target_procfs) <shortname, longname, doc>:
9859         Delete.
9860         <info>: New.
9861         (init_procfs_targets): Adjust.
9862         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9863         add_inf_child_target.
9864         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9865         add_inf_child_target.
9866         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9867         add_inf_child_target.
9868         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9869         add_inf_child_target.
9870         * ravenscar-thread.c (ravenscar_target_info): New.
9871         (ravenscar_thread_target) <shortname, longname, doc>:
9872         Delete.
9873         <info>: New.
9874         * record-btrace.c (record_btrace_target_info):
9875         (record_btrace_target) <shortname, longname, doc>: Delete.
9876         <info>: New.
9877         (record_btrace_target::open): Rename to ...
9878         (record_btrace_target_open): ... this.  Adjust.
9879         * record-full.c (record_longname, record_doc): New.
9880         (record_full_base_target) <shortname, longname, doc>: Delete.
9881         <info>: New.
9882         (record_full_target_info): New.
9883         (record_full_target): <shortname>: Delete.
9884         <info>: New.
9885         (record_full_core_open_1, record_full_open_1): Update comments.
9886         (record_full_base_target::open): Rename to ...
9887         (record_full_open): ... this.
9888         (cmd_record_full_restore): Update.
9889         (_initialize_record_full): Update.
9890         * remote-sim.c (remote_sim_target_info): New.
9891         (gdbsim_target) <shortname, longname, doc>: Delete.
9892         <info>: New.
9893         (gdbsim_target::open): Rename to ...
9894         (gdbsim_target_open): ... this.
9895         (_initialize_remote_sim): Adjust.
9896         * remote.c (remote_doc): New.
9897         (remote_target_info): New.
9898         (remote_target) <shortname, longname, doc>: Delete.
9899         <info>: New.
9900         (extended_remote_target_info): New.
9901         (extended_remote_target) <shortname, longname, doc>: Delete.
9902         <info>: New.
9903         (remote_target::open_1): Make static.  Adjust.
9904         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9905         * s390-linux-nat.c (_initialize_s390_nat): Use
9906         add_inf_child_target.
9907         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9908         add_inf_child_target.
9909         * sol-thread.c (thread_db_target_info): New.
9910         (sol_thread_target) <shortname, longname, doc>: Delete.
9911         <info>: New.
9912         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9913         add_inf_child_target.
9914         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9915         add_inf_child_target.
9916         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9917         add_inf_child_target.
9918         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9919         add_inf_child_target.
9920         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9921         add_inf_child_target.
9922         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9923         add_inf_child_target.
9924         * spu-linux-nat.c (_initialize_spu_nat): Use
9925         add_inf_child_target.
9926         * spu-multiarch.c (spu_multiarch_target_info): New.
9927         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9928         <info>: New.
9929         * target-delegates.c: Regenerate.
9930         * target.c: Include <unordered_map>.
9931         (target_ops_p): Delete.
9932         (DEF_VEC_P(target_ops_p)): Delete.
9933         (target_factories): New.
9934         (test_target_info): New.
9935         (test_target_ops::info): New.
9936         (open_target): Adjust to use target_factories.
9937         (add_target_with_completer): Rename to ...
9938         (add_target): ... this.  Change prototype.  Register target_info
9939         and open callback in target_factories.  Register target_info in
9940         command context instead of target_ops.
9941         (add_target): Delete old implementation.
9942         (add_deprecated_target_alias): Change prototype.  Adjust.
9943         (the_native_target): New.
9944         (set_native_target, get_native_target): New.
9945         (find_default_run_target): Use the_native_target.
9946         (find_attach_target, find_run_target): Simplify.
9947         (target_ops::open): Delete.
9948         (dummy_target_info): New.
9949         (dummy_target::shortname, dummy_target::longname)
9950         (dummy_target::doc): Delete.
9951         (dummy_target::info): New.
9952         (debug_target::shortname, debug_target::longname)
9953         (debug_target::doc): Delete.
9954         (debug_target::info): New.
9955         * target.h (struct target_info): New.
9956         (target_ops::~target_ops): Add comment.
9957         (target_ops::info): New.
9958         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9959         longer virtual.  Implement in terms of target_info.
9960         (set_native_target, get_native_target): Declare.
9961         (target_open_ftype): New.
9962         (add_target, add_target_with_completer)
9963         (add_deprecated_target_alias): Change prototype.
9964         (test_target) <shortname, longname, doc>: Delete.
9965         <info>: New.
9966         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9967         add_inf_child_target.
9968         * tracefile-tfile.c (tfile_target_info): New.
9969         (tfile_target) <shortname, longname, doc>: Delete.
9970         <info>: New.
9971         (tfile_target::open): Rename to ...
9972         (tfile_target_open): ... this.
9973         (_initialize_tracefile_tfile): Adjust.
9974         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9975         add_inf_child_target.
9976         * windows-nat.c (_initialize_windows_nat): Use
9977         add_inf_child_target.
9978         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9979         add_inf_child_target.
9980
9981 2018-05-02  Pedro Alves  <palves@redhat.com>
9982
9983         * linux-nat.h (linux_nat_target) <low_new_thread,
9984         low_delete_thread, low_new_fork, low_forget_process,
9985         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9986         New virtual methods.
9987         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9988         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9989         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9990         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9991         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9992         Delete.
9993         * linux-fork.c (delete_fork): Adjust to call low method.
9994         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9995         (linux_nat_new_fork, linux_nat_forget_process_hook)
9996         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9997         (linux_nat_status_is_event):
9998         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9999         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10000         to call low method.
10001         (sigtrap_is_event): Rename to ...
10002         (linux_nat_target::low_status_is_event): ... this.
10003         (linux_nat_set_status_is_event): Delete.
10004         (save_stop_reason, linux_nat_wait_1)
10005         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10006         low methods.
10007         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10008         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10009         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10010         (linux_nat_set_prepare_to_resume): Delete.
10011         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10012         low virtual methods.
10013         * amd64-linux-nat.c: Likewise.
10014         * arm-linux-nat.c: Likewise.
10015         * i386-linux-nat.c: Likewise.
10016         * ia64-linux-nat.c: Likewise.
10017         * mips-linux-nat.c: Likewise.
10018         * ppc-linux-nat.c: Likewise.
10019         * s390-linux-nat.c: Likewise.
10020         * sparc64-linux-nat.c: Likewise.
10021         * x86-linux-nat.c: Likewise.
10022         * x86-linux-nat.h: Include "nat/x86-linux.h".
10023         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10024         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10025         Override methods.
10026
10027 2018-05-02  Pedro Alves  <palves@redhat.com>
10028
10029         * target.h (target_ops)
10030         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10031         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10032         stopped_by_watchpoint, have_continuable_watchpoint,
10033         stopped_data_address, watchpoint_addr_within_range,
10034         can_accel_watchpoint_condition, can_run, thread_alive,
10035         has_all_memory, has_memory, has_stack, has_registers,
10036         has_execution, can_async_p, is_async_p, supports_non_stop,
10037         always_non_stop_p, can_execute_reverse, supports_multi_process,
10038         supports_enable_disable_tracepoint,
10039         supports_disable_randomization, supports_string_tracing,
10040         supports_evaluation_of_breakpoint_conditions,
10041         can_run_breakpoint_commands, filesystem_is_local,
10042         can_download_tracepoint, get_trace_state_variable_value,
10043         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10044         record_is_replaying, record_will_replay,
10045         augmented_libraries_svr4_read>: Adjust to return bool.
10046         * aarch64-linux-nat.c: All implementations adjusted.
10047         * aix-thread.c: All implementations adjusted.
10048         * arm-linux-nat.c: All implementations adjusted.
10049         * breakpoint.c: All implementations adjusted.
10050         * bsd-kvm.c: All implementations adjusted.
10051         * bsd-uthread.c: All implementations adjusted.
10052         * corelow.c: All implementations adjusted.
10053         * ctf.c: All implementations adjusted.
10054         * darwin-nat.c: All implementations adjusted.
10055         * darwin-nat.h: All implementations adjusted.
10056         * exec.c: All implementations adjusted.
10057         * fbsd-nat.c: All implementations adjusted.
10058         * fbsd-nat.h: All implementations adjusted.
10059         * gnu-nat.c: All implementations adjusted.
10060         * gnu-nat.h: All implementations adjusted.
10061         * go32-nat.c: All implementations adjusted.
10062         * ia64-linux-nat.c: All implementations adjusted.
10063         * inf-child.c: All implementations adjusted.
10064         * inf-child.h: All implementations adjusted.
10065         * inf-ptrace.c: All implementations adjusted.
10066         * inf-ptrace.h: All implementations adjusted.
10067         * linux-nat.c: All implementations adjusted.
10068         * linux-nat.h: All implementations adjusted.
10069         * mips-linux-nat.c: All implementations adjusted.
10070         * nto-procfs.c: All implementations adjusted.
10071         * ppc-linux-nat.c: All implementations adjusted.
10072         * procfs.c: All implementations adjusted.
10073         * ravenscar-thread.c: All implementations adjusted.
10074         * record-btrace.c: All implementations adjusted.
10075         * record-full.c: All implementations adjusted.
10076         * remote-sim.c: All implementations adjusted.
10077         * remote.c: All implementations adjusted.
10078         * s390-linux-nat.c: All implementations adjusted.
10079         * sol-thread.c: All implementations adjusted.
10080         * spu-multiarch.c: All implementations adjusted.
10081         * target-delegates.c: All implementations adjusted.
10082         * target.c: All implementations adjusted.
10083         * target.h: All implementations adjusted.
10084         * tracefile-tfile.c: All implementations adjusted.
10085         * tracefile.c: All implementations adjusted.
10086         * tracefile.h: All implementations adjusted.
10087         * windows-nat.c: All implementations adjusted.
10088         * x86-linux-nat.h: All implementations adjusted.
10089         * x86-nat.h: All implementations adjusted.
10090
10091 2018-05-02  Pedro Alves  <palves@redhat.com>
10092
10093         * make-target-delegates (scan_target_h): Don't trim lines here.
10094         Replace sequences of tabs and/or whitespace with a single
10095         whitespace.
10096         (top level, parsing methods): Trim each line before processing it
10097         here.
10098
10099 2018-05-02  Pedro Alves  <palves@redhat.com>
10100             John Baldwin  <jhb@freebsd.org>
10101
10102         * target.h (enum strata) <debug_stratum>: New.
10103         (struct target_ops) <all delegation methods>: Replace by C++
10104         virtual methods, and drop "to_" prefix.  All references updated
10105         throughout.
10106         <to_shortname, to_longname, to_doc, to_data,
10107         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10108         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10109         virtual methods.  All references updated throughout.
10110         <can_attach, supports_terminal_ours, can_create_inferior,
10111         get_thread_control_capabilities, attach_no_wait>: New
10112         virtual methods.
10113         <insert_breakpoint, remove_breakpoint>: Now
10114         TARGET_DEFAULT_NORETURN methods.
10115         <info_proc>: Now returns bool.
10116         <to_magic>: Delete.
10117         (OPS_MAGIC): Delete.
10118         (current_target): Delete.  All references replaced by references
10119         to ...
10120         (target_stack): ... this.  New.
10121         (target_shortname, target_longname): Adjust.
10122         (target_can_run): Now a function declaration.
10123         (default_child_has_all_memory, default_child_has_memory)
10124         (default_child_has_stack, default_child_has_registers)
10125         (default_child_has_execution): Remove target_ops parameter.
10126         (complete_target_initialization): Delete.
10127         (memory_breakpoint_target): New template class.
10128         (test_target_ops): Refactor as a C++ class with virtual methods.
10129         * make-target-delegates (NAME_PART): Tighten.
10130         (POINTER_PART, CP_SYMBOL): New.
10131         (SIMPLE_RETURN_PART): Reimplement.
10132         (VEC_RETURN_PART): Expect less.
10133         (RETURN_PART, VIRTUAL_PART): New.
10134         (METHOD): Adjust to C++ virtual methods.
10135         (scan_target_h): Remove reference to C99.
10136         (dname): Output "target_ops::" prefix.
10137         (write_function_header): Adjust to output a C++ class method.
10138         (write_declaration): New.
10139         (write_delegator): Adjust to output a C++ class method.
10140         (tdname): Output "dummy_target::" prefix.
10141         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10142         method.
10143         (tdefault_names, debug_names): Delete.
10144         (return_types, tdefaults, styles, argtypes_array): New.
10145         (top level): All methods are delegators.
10146         (print_class): New.
10147         (top level): Print dummy_target and debug_target classes.
10148         * target-delegates.c: Regenerate.
10149         * target-debug.h (target_debug_print_enum_info_proc_what)
10150         (target_debug_print_thread_control_capabilities)
10151         (target_debug_print_thread_info_p): New.
10152         * target.c (dummy_target): Delete.
10153         (the_dummy_target, the_debug_target): New.
10154         (target_stack): Now extern.
10155         (set_targetdebug): Push/unpush debug target.
10156         (default_child_has_all_memory, default_child_has_memory)
10157         (default_child_has_stack, default_child_has_registers)
10158         (default_child_has_execution): Remove target_ops parameter.
10159         (complete_target_initialization): Delete.
10160         (add_target_with_completer): No longer call
10161         complete_target_initialization.
10162         (target_supports_terminal_ours): Use regular delegation.
10163         (update_current_target): Delete.
10164         (push_target): No longer check magic number.  Don't call
10165         update_current_target.
10166         (unpush_target): Don't call update_current_target.
10167         (target_is_pushed): No longer check magic number.
10168         (target_require_runnable): Skip for all stratums over
10169         process_stratum.
10170         (target_ops::info_proc): New.
10171         (target_info_proc): Use find_target_at and
10172         find_default_run_target.
10173         (target_supports_disable_randomization): Use regular delegation.
10174         (target_get_osdata): Use find_target_at.
10175         (target_ops::open, target_ops::close, target_ops::can_attach)
10176         (target_ops::attach, target_ops::can_create_inferior)
10177         (target_ops::create_inferior, target_ops::can_run)
10178         (target_can_run): New.
10179         (default_fileio_target): Use regular delegation.
10180         (target_ops::fileio_open, target_ops::fileio_pwrite)
10181         (target_ops::fileio_pread, target_ops::fileio_fstat)
10182         (target_ops::fileio_close, target_ops::fileio_unlink)
10183         (target_ops::fileio_readlink): New.
10184         (target_fileio_open_1, target_fileio_unlink)
10185         (target_fileio_readlink): Always call the target method.  Handle
10186         FILEIO_ENOSYS.
10187         (return_zero, return_zero_has_execution): Delete.
10188         (init_dummy_target): Delete.
10189         (dummy_target::dummy_target, dummy_target::shortname)
10190         (dummy_target::longname, dummy_target::doc)
10191         (debug_target::debug_target, debug_target::shortname)
10192         (debug_target::longname, debug_target::doc): New.
10193         (target_supports_delete_record): Use regular delegation.
10194         (setup_target_debug): Delete.
10195         (maintenance_print_target_stack): Skip debug_stratum.
10196         (initialize_targets): Instantiate the_dummy_target and
10197         the_debug_target.
10198         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10199         use target_stack.
10200         (target_auxv_search, fprint_target_auxv): Adjust.
10201         (info_auxv_command): Adjust to use target_stack.
10202         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10203         * exceptions.c (print_flush): Handle a NULL target_stack.
10204         * regcache.c (target_ops_no_register): Refactor as class with
10205         virtual methods.
10206
10207         * exec.c (exec_target): New class.
10208         (exec_ops): Now an exec_target.
10209         (exec_open, exec_close_1, exec_get_section_table)
10210         (exec_xfer_partial, exec_files_info, exec_has_memory)
10211         (exec_make_note_section): Refactor as exec_target methods.
10212         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10213         Delete.
10214         (exec_target::find_memory_regions): New.
10215         (_initialize_exec): Don't call init_exec_ops.
10216         * gdbcore.h (exec_file_clear): Delete.
10217
10218         * corefile.c (core_target): Delete.
10219         (core_file_command): Adjust.
10220         * corelow.c (core_target): New class.
10221         (the_core_target): New.
10222         (core_close): Remove target_ops parameter.
10223         (core_close_cleanup): Adjust.
10224         (core_target::close): New.
10225         (core_open, core_detach, get_core_registers, core_files_info)
10226         (core_xfer_partial, core_thread_alive, core_read_description)
10227         (core_pid_to_str, core_thread_name, core_has_memory)
10228         (core_has_stack, core_has_registers, core_info_proc): Rework as
10229         core_target methods.
10230         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10231         (_initialize_corelow): Initialize the_core_target.
10232         * gdbcore.h (core_target): Delete.
10233         (the_core_target): New.
10234
10235         * ctf.c: (ctf_target): New class.
10236         (ctf_ops): Now a ctf_target.
10237         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10238         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10239         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10240         methods.
10241         (init_ctf_ops): Delete.
10242         (_initialize_ctf): Don't call it.
10243         * tracefile-tfile.c (tfile_target): New class.
10244         (tfile_ops): Now a tfile_target.
10245         (tfile_open, tfile_close, tfile_files_info)
10246         (tfile_get_tracepoint_status, tfile_trace_find)
10247         (tfile_fetch_registers, tfile_xfer_partial)
10248         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10249         Refactor as tfile_target methods.
10250         (tfile_xfer_partial_features): Remove target_ops parameter.
10251         (init_tfile_ops): Delete.
10252         (_initialize_tracefile_tfile): Don't call it.
10253         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10254         (tracefile_has_stack, tracefile_has_registers)
10255         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10256         tracefile_target methods.
10257         (init_tracefile_ops): Delete.
10258         (tracefile_target::tracefile_target): New.
10259         * tracefile.h: Include "target.h".
10260         (tracefile_target): New class.
10261         (init_tracefile_ops): Delete.
10262
10263         * spu-multiarch.c (spu_multiarch_target): New class.
10264         (spu_ops): Now a spu_multiarch_target.
10265         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10266         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10267         (spu_search_memory, spu_mourn_inferior): Refactor as
10268         spu_multiarch_target methods.
10269         (init_spu_ops): Delete.
10270         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10271         complete_target_initialization.
10272
10273         * ravenscar-thread.c (ravenscar_thread_target): New class.
10274         (ravenscar_ops): Now a ravenscar_thread_target.
10275         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10276         (ravenscar_thread_alive, ravenscar_pid_to_str)
10277         (ravenscar_fetch_registers, ravenscar_store_registers)
10278         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10279         (ravenscar_stopped_by_hw_breakpoint)
10280         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10281         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10282         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10283         methods.
10284         (init_ravenscar_thread_ops): Delete.
10285         (_initialize_ravenscar): Remove references to
10286         init_ravenscar_thread_ops and complete_target_initialization.
10287
10288         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10289         (bsd_uthread_target): New class.
10290         (bsd_uthread_ops): Now a bsd_uthread_target.
10291         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10292         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10293         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10294         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10295         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10296         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10297         (bsd_uthread_target): Delete function.
10298         (_initialize_bsd_uthread): Remove reference to
10299         complete_target_initialization.
10300
10301         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10302         (target_bfd): ... this new class.
10303         (target_bfd_xfer_partial, target_bfd_get_section_table)
10304         (target_bfd_close): Refactor as target_bfd methods.
10305         (target_bfd::~target_bfd): New.
10306         (target_bfd_reopen): Adjust.
10307         (target_bfd::close): New.
10308
10309         * record-btrace.c (record_btrace_target): New class.
10310         (record_btrace_ops): Now a record_btrace_target.
10311         (record_btrace_open, record_btrace_stop_recording)
10312         (record_btrace_disconnect, record_btrace_close)
10313         (record_btrace_async, record_btrace_info)
10314         (record_btrace_insn_history, record_btrace_insn_history_range)
10315         (record_btrace_insn_history_from, record_btrace_call_history)
10316         (record_btrace_call_history_range)
10317         (record_btrace_call_history_from, record_btrace_record_method)
10318         (record_btrace_is_replaying, record_btrace_will_replay)
10319         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10320         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10321         (record_btrace_store_registers, record_btrace_prepare_to_store)
10322         (record_btrace_to_get_unwinder)
10323         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10324         (record_btrace_commit_resume, record_btrace_wait)
10325         (record_btrace_stop, record_btrace_can_execute_reverse)
10326         (record_btrace_stopped_by_sw_breakpoint)
10327         (record_btrace_supports_stopped_by_sw_breakpoint)
10328         (record_btrace_stopped_by_hw_breakpoint)
10329         (record_btrace_supports_stopped_by_hw_breakpoint)
10330         (record_btrace_update_thread_list, record_btrace_thread_alive)
10331         (record_btrace_goto_begin, record_btrace_goto_end)
10332         (record_btrace_goto, record_btrace_stop_replaying_all)
10333         (record_btrace_execution_direction)
10334         (record_btrace_prepare_to_generate_core)
10335         (record_btrace_done_generating_core): Refactor as
10336         record_btrace_target methods.
10337         (init_record_btrace_ops): Delete.
10338         (_initialize_record_btrace): Remove reference to
10339         init_record_btrace_ops.
10340         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10341         the execution_direction global.
10342         (record_full_base_target, record_full_target)
10343         (record_full_core_target): New classes.
10344         (record_full_ops): Now a record_full_target.
10345         (record_full_core_ops): Now a record_full_core_target.
10346         (record_full_target::detach, record_full_target::disconnect)
10347         (record_full_core_target::disconnect)
10348         (record_full_target::mourn_inferior, record_full_target::kill):
10349         New.
10350         (record_full_open, record_full_close, record_full_async): Refactor
10351         as methods of the record_full_base_target class.
10352         (record_full_resume, record_full_commit_resume): Refactor
10353         as methods of the record_full_target class.
10354         (record_full_wait, record_full_stopped_by_watchpoint)
10355         (record_full_stopped_data_address)
10356         (record_full_stopped_by_sw_breakpoint)
10357         (record_full_supports_stopped_by_sw_breakpoint)
10358         (record_full_stopped_by_hw_breakpoint)
10359         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10360         methods of the record_full_base_target class.
10361         (record_full_store_registers, record_full_xfer_partial)
10362         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10363         Refactor as methods of the record_full_target class.
10364         (record_full_can_execute_reverse, record_full_get_bookmark)
10365         (record_full_goto_bookmark, record_full_execution_direction)
10366         (record_full_record_method, record_full_info, record_full_delete)
10367         (record_full_is_replaying, record_full_will_replay)
10368         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10369         (record_full_stop_replaying): Refactor as methods of the
10370         record_full_base_target class.
10371         (record_full_core_resume, record_full_core_kill)
10372         (record_full_core_fetch_registers)
10373         (record_full_core_prepare_to_store)
10374         (record_full_core_store_registers, record_full_core_xfer_partial)
10375         (record_full_core_insert_breakpoint)
10376         (record_full_core_remove_breakpoint)
10377         (record_full_core_has_execution): Refactor
10378         as methods of the record_full_core_target class.
10379         (record_full_base_target::supports_delete_record): New.
10380         (init_record_full_ops): Delete.
10381         (init_record_full_core_ops): Delete.
10382         (record_full_save): Refactor as method of the
10383         record_full_base_target class.
10384         (_initialize_record_full): Remove references to
10385         init_record_full_ops and init_record_full_core_ops.
10386
10387         * remote.c (remote_target, extended_remote_target): New classes.
10388         (remote_ops): Now a remote_target.
10389         (extended_remote_ops): Now an extended_remote_target.
10390         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10391         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10392         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10393         (remote_pass_signals, remote_set_syscall_catchpoint)
10394         (remote_program_signals, )
10395         (remote_thread_always_alive): Remove target_ops parameter.
10396         (remote_thread_alive, remote_thread_name)
10397         (remote_update_thread_list, remote_threads_extra_info)
10398         (remote_static_tracepoint_marker_at)
10399         (remote_static_tracepoint_markers_by_strid)
10400         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10401         (remote_open): Refactor as methods of remote_target.
10402         (extended_remote_open, extended_remote_detach)
10403         (extended_remote_attach, extended_remote_post_attach):
10404         (extended_remote_supports_disable_randomization)
10405         (extended_remote_create_inferior): : Refactor as method of
10406         extended_remote_target.
10407         (remote_set_permissions, remote_open_1, remote_detach)
10408         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10409         (remote_resume, remote_commit_resume, remote_stop)
10410         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10411         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10412         (remote_prepare_to_store, remote_store_registers)
10413         (remote_flash_erase, remote_flash_done, remote_files_info)
10414         (remote_kill, remote_mourn, remote_insert_breakpoint)
10415         (remote_remove_breakpoint, remote_insert_watchpoint)
10416         (remote_watchpoint_addr_within_range)
10417         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10418         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10419         (remote_supports_stopped_by_sw_breakpoint)
10420         (remote_stopped_by_hw_breakpoint)
10421         (remote_supports_stopped_by_hw_breakpoint)
10422         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10423         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10424         (remote_verify_memory): Refactor as methods of remote_target.
10425         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10426         parameter.
10427         (remote_xfer_partial, remote_get_memory_xfer_limit)
10428         (remote_search_memory, remote_rcmd, remote_memory_map)
10429         (remote_pid_to_str, remote_get_thread_local_address)
10430         (remote_get_tib_address, remote_read_description): Refactor as
10431         methods of remote_target.
10432         (remote_target::fileio_open, remote_target::fileio_pwrite)
10433         (remote_target::fileio_pread, remote_target::fileio_close): New.
10434         (remote_hostio_readlink, remote_hostio_fstat)
10435         (remote_filesystem_is_local, remote_can_execute_reverse)
10436         (remote_supports_non_stop, remote_supports_disable_randomization)
10437         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10438         (remote_supports_enable_disable_tracepoint)
10439         (remote_supports_string_tracing)
10440         (remote_can_run_breakpoint_commands, remote_trace_init)
10441         (remote_download_tracepoint, remote_can_download_tracepoint)
10442         (remote_download_trace_state_variable, remote_enable_tracepoint)
10443         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10444         (remote_trace_start, remote_get_trace_status)
10445         (remote_get_tracepoint_status, remote_trace_stop)
10446         (remote_trace_find, remote_get_trace_state_variable_value)
10447         (remote_save_trace_data, remote_get_raw_trace_data)
10448         (remote_set_disconnected_tracing, remote_core_of_thread)
10449         (remote_set_circular_trace_buffer, remote_traceframe_info)
10450         (remote_get_min_fast_tracepoint_insn_len)
10451         (remote_set_trace_buffer_size, remote_set_trace_notes)
10452         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10453         (remote_disable_btrace, remote_teardown_btrace)
10454         (remote_read_btrace, remote_btrace_conf)
10455         (remote_augmented_libraries_svr4_read, remote_load)
10456         (remote_pid_to_exec_file, remote_can_do_single_step)
10457         (remote_execution_direction, remote_thread_handle_to_thread_info):
10458         Refactor as methods of remote_target.
10459         (init_remote_ops, init_extended_remote_ops): Delete.
10460         (remote_can_async_p, remote_is_async_p, remote_async)
10461         (remote_thread_events, remote_upload_tracepoints)
10462         (remote_upload_trace_state_variables): Refactor as methods of
10463         remote_target.
10464         (_initialize_remote): Remove references to init_remote_ops and
10465         init_extended_remote_ops.
10466
10467         * remote-sim.c (gdbsim_target): New class.
10468         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10469         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10470         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10471         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10472         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10473         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10474         Refactor as methods of gdbsim_target.
10475         (gdbsim_ops): Now a gdbsim_target.
10476         (init_gdbsim_ops): Delete.
10477         (gdbsim_cntrl_c): Adjust.
10478         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10479
10480         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10481         (the_amd64_linux_nat_target): New.
10482         (amd64_linux_fetch_inferior_registers)
10483         (amd64_linux_store_inferior_registers): Refactor as methods of
10484         amd64_linux_nat_target.
10485         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10486         * i386-linux-nat.c: Don't include "linux-nat.h".
10487         (i386_linux_nat_target): New class.
10488         (the_i386_linux_nat_target): New.
10489         (i386_linux_fetch_inferior_registers)
10490         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10491         as methods of i386_linux_nat_target.
10492         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10493         * inf-child.c (inf_child_ops): Delete.
10494         (inf_child_fetch_inferior_registers)
10495         (inf_child_store_inferior_registers): Delete.
10496         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10497         methods of inf_child_target.
10498         (inf_child_target::supports_terminal_ours)
10499         (inf_child_target::terminal_init)
10500         (inf_child_target::terminal_inferior)
10501         (inf_child_target::terminal_ours_for_output)
10502         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10503         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10504         New.
10505         (inf_child_open, inf_child_disconnect, inf_child_close)
10506         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10507         (inf_child_post_startup_inferior, inf_child_can_run)
10508         (inf_child_pid_to_exec_file): Refactor as methods of
10509         inf_child_target.
10510         (inf_child_follow_fork): Delete.
10511         (inf_child_target::can_create_inferior)
10512         (inf_child_target::can_attach): New.
10513         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10514         (inf_child_target::has_stack, inf_child_target::has_registers)
10515         (inf_child_target::has_execution): New.
10516         (inf_child_fileio_open, inf_child_fileio_pwrite)
10517         (inf_child_fileio_pread, inf_child_fileio_fstat)
10518         (inf_child_fileio_close, inf_child_fileio_unlink)
10519         (inf_child_fileio_readlink, inf_child_use_agent)
10520         (inf_child_can_use_agent): Refactor as methods of
10521         inf_child_target.
10522         (return_zero, inf_child_target): Delete.
10523         (inf_child_target::inf_child_target): New.
10524         * inf-child.h: Include "target.h".
10525         (inf_child_target): Delete function prototype.
10526         (inf_child_target): New class.
10527         (inf_child_open_target, inf_child_mourn_inferior)
10528         (inf_child_maybe_unpush_target): Delete.
10529         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10530         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10531         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10532         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10533         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10534         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10535         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10536         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10537         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10538         methods of inf_ptrace_target.
10539         (inf_ptrace_target): Delete function.
10540         * inf-ptrace.h: Include "inf-child.h".
10541         (inf_ptrace_target): Delete function declaration.
10542         (inf_ptrace_target): New class.
10543         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10544         * linux-nat.c (linux_target): New.
10545         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10546         (linux_nat_target::~linux_nat_target): New.
10547         (linux_child_post_attach, linux_child_post_startup_inferior)
10548         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10549         (linux_child_remove_fork_catchpoint)
10550         (linux_child_insert_vfork_catchpoint)
10551         (linux_child_remove_vfork_catchpoint)
10552         (linux_child_insert_exec_catchpoint)
10553         (linux_child_remove_exec_catchpoint)
10554         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10555         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10556         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10557         (linux_nat_stopped_data_address)
10558         (linux_nat_stopped_by_sw_breakpoint)
10559         (linux_nat_supports_stopped_by_sw_breakpoint)
10560         (linux_nat_stopped_by_hw_breakpoint)
10561         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10562         (linux_nat_kill, linux_nat_mourn_inferior)
10563         (linux_nat_xfer_partial, linux_nat_thread_alive)
10564         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10565         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10566         (linux_child_static_tracepoint_markers_by_strid)
10567         (linux_nat_is_async_p, linux_nat_can_async_p)
10568         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10569         (linux_nat_supports_multi_process)
10570         (linux_nat_supports_disable_randomization, linux_nat_async)
10571         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10572         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10573         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10574         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10575         methods of linux_nat_target.
10576         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10577         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10578         parameter.
10579         (check_stopped_by_watchpoint): Adjust.
10580         (linux_xfer_partial): Delete.
10581         (linux_target_install_ops, linux_target, linux_nat_add_target):
10582         Delete.
10583         (linux_nat_target::linux_nat_target): New.
10584         * linux-nat.h: Include "inf-ptrace.h".
10585         (linux_nat_target): New.
10586         (linux_target, linux_target_install_ops, linux_nat_add_target):
10587         Delete function declarations.
10588         (linux_target): Declare global.
10589         * linux-thread-db.c (thread_db_target): New.
10590         (thread_db_target::thread_db_target): New.
10591         (thread_db_ops): Delete.
10592         (the_thread_db_target): New.
10593         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10594         (thread_db_update_thread_list, thread_db_pid_to_str)
10595         (thread_db_extra_thread_info)
10596         (thread_db_thread_handle_to_thread_info)
10597         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10598         (thread_db_resume): Refactor as methods of thread_db_target.
10599         (init_thread_db_ops): Delete.
10600         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10601         * x86-linux-nat.c: Don't include "linux-nat.h".
10602         (super_post_startup_inferior): Delete.
10603         (x86_linux_nat_target::~x86_linux_nat_target): New.
10604         (x86_linux_child_post_startup_inferior)
10605         (x86_linux_read_description, x86_linux_enable_btrace)
10606         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10607         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10608         methods of x86_linux_nat_target.
10609         (x86_linux_create_target): Delete.  Bits folded ...
10610         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10611         pointer.
10612         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10613         (x86_linux_nat_target): New class.
10614         (x86_linux_create_target): Delete.
10615         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10616         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10617         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10618         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10619         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10620         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10621         make extern.
10622         (x86_use_watchpoints): Delete.
10623         * x86-nat.h: Include "breakpoint.h" and "target.h".
10624         (x86_use_watchpoints): Delete.
10625         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10626         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10627         (x86_insert_watchpoint, x86_remove_watchpoint)
10628         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10629         (x86_stopped_by_hw_breakpoint): New declarations.
10630         (x86_nat_target): New template class.
10631
10632         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10633         (the_ppc_linux_nat_target): New.
10634         (ppc_linux_fetch_inferior_registers)
10635         (ppc_linux_can_use_hw_breakpoint)
10636         (ppc_linux_region_ok_for_hw_watchpoint)
10637         (ppc_linux_ranged_break_num_registers)
10638         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10639         (ppc_linux_insert_mask_watchpoint)
10640         (ppc_linux_remove_mask_watchpoint)
10641         (ppc_linux_can_accel_watchpoint_condition)
10642         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10643         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10644         (ppc_linux_watchpoint_addr_within_range)
10645         (ppc_linux_masked_watch_num_registers)
10646         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10647         (ppc_linux_read_description): Refactor as methods of
10648         ppc_linux_nat_target.
10649         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10650
10651         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10652         (procfs_target): New class.
10653         (the_procfs_target): New.
10654         (procfs_target): Delete function.
10655         (procfs_auxv_parse, procfs_attach, procfs_detach)
10656         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10657         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10658         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10659         (procfs_create_inferior, procfs_update_thread_list)
10660         (procfs_thread_alive, procfs_pid_to_str)
10661         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10662         (procfs_stopped_data_address, procfs_insert_watchpoint)
10663         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10664         (proc_find_memory_regions, procfs_info_proc)
10665         (procfs_make_note_section): Refactor as methods of procfs_target.
10666         (_initialize_procfs): Adjust.
10667         * sol-thread.c (sol_thread_target): New class.
10668         (sol_thread_ops): Now a sol_thread_target.
10669         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10670         (sol_thread_fetch_registers, sol_thread_store_registers)
10671         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10672         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10673         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10674         (init_sol_thread_ops): Delete.
10675         (_initialize_sol_thread): Adjust.  Remove references to
10676         init_sol_thread_ops and complete_target_initialization.
10677
10678         * windows-nat.c (windows_nat_target): New class.
10679         (windows_fetch_inferior_registers)
10680         (windows_store_inferior_registers, windows_resume, windows_wait)
10681         (windows_attach, windows_detach, windows_pid_to_exec_file)
10682         (windows_files_info, windows_create_inferior)
10683         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10684         (windows_close, windows_pid_to_str, windows_xfer_partial)
10685         (windows_get_tib_address, windows_get_ada_task_ptid)
10686         (windows_thread_name, windows_thread_alive): Refactor as
10687         windows_nat_target methods.
10688         (do_initial_windows_stuff): Adjust.
10689         (windows_target): Delete function.
10690         (_initialize_windows_nat): Adjust.
10691
10692         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10693         (darwin_mourn_inferior, darwin_kill_inferior)
10694         (darwin_create_inferior, darwin_attach, darwin_detach)
10695         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10696         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10697         (darwin_supports_multi_process): Refactor as darwin_nat_target
10698         methods.
10699         (darwin_resume_to, darwin_files_info): Delete.
10700         (_initialize_darwin_inferior): Rename to ...
10701         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10702         * darwin-nat.h: Include "inf-child.h".
10703         (darwin_nat_target): New class.
10704         (darwin_complete_target): Delete.
10705         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10706         (darwin_target): New.
10707         (i386_darwin_fetch_inferior_registers)
10708         (i386_darwin_store_inferior_registers): Refactor as methods of
10709         darwin_nat_target.
10710         (darwin_complete_target): Delete, with ...
10711         (_initialize_i386_darwin_nat): ... bits factored out here.
10712
10713         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10714         (the_alpha_linux_nat_target): New.
10715         (alpha_linux_register_u_offset): Refactor as
10716         alpha_linux_nat_target method.
10717         (_initialize_alpha_linux_nat): Adjust.
10718         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10719         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10720         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10721         methods of linux_nat_trad_target.
10722         (linux_trad_target): Delete.
10723         * linux-nat-trad.h (linux_trad_target): Delete function.
10724         (linux_nat_trad_target): New class.
10725         * mips-linux-nat.c (mips_linux_nat_target): New class.
10726         (super_fetch_registers, super_store_registers, super_close):
10727         Delete.
10728         (the_mips_linux_nat_target): New.
10729         (mips64_linux_regsets_fetch_registers)
10730         (mips64_linux_regsets_store_registers)
10731         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10732         (mips_linux_register_u_offset, mips_linux_read_description)
10733         (mips_linux_can_use_hw_breakpoint)
10734         (mips_linux_stopped_by_watchpoint)
10735         (mips_linux_stopped_data_address)
10736         (mips_linux_region_ok_for_hw_watchpoint)
10737         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10738         (mips_linux_close): Refactor as methods of mips_linux_nat.
10739         (_initialize_mips_linux_nat): Adjust to C++ification.
10740
10741         * aix-thread.c (aix_thread_target): New class.
10742         (aix_thread_ops): Now an aix_thread_target.
10743         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10744         (aix_thread_fetch_registers, aix_thread_store_registers)
10745         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10746         (aix_thread_thread_alive, aix_thread_pid_to_str)
10747         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10748         Refactor as methods of aix_thread_target.
10749         (init_aix_thread_ops): Delete.
10750         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10751         and complete_target_initialization.
10752         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10753         (rs6000_nat_target): New class.
10754         (the_rs6000_nat_target): New.
10755         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10756         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10757         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10758         (super_create_inferior): Delete.
10759         (_initialize_rs6000_nat): Adjust to C++ification.
10760
10761         * arm-linux-nat.c (arm_linux_nat_target): New class.
10762         (the_arm_linux_nat_target): New.
10763         (arm_linux_fetch_inferior_registers)
10764         (arm_linux_store_inferior_registers, arm_linux_read_description)
10765         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10766         (arm_linux_remove_hw_breakpoint)
10767         (arm_linux_region_ok_for_hw_watchpoint)
10768         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10769         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10770         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10771         arm_linux_nat_target.
10772         (_initialize_arm_linux_nat): Adjust to C++ification.
10773
10774         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10775         (the_aarch64_linux_nat_target): New.
10776         (aarch64_linux_fetch_inferior_registers)
10777         (aarch64_linux_store_inferior_registers)
10778         (aarch64_linux_child_post_startup_inferior)
10779         (aarch64_linux_read_description)
10780         (aarch64_linux_can_use_hw_breakpoint)
10781         (aarch64_linux_insert_hw_breakpoint)
10782         (aarch64_linux_remove_hw_breakpoint)
10783         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10784         (aarch64_linux_region_ok_for_hw_watchpoint)
10785         (aarch64_linux_stopped_data_address)
10786         (aarch64_linux_stopped_by_watchpoint)
10787         (aarch64_linux_watchpoint_addr_within_range)
10788         (aarch64_linux_can_do_single_step): Refactor as methods of
10789         aarch64_linux_nat_target.
10790         (super_post_startup_inferior): Delete.
10791         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10792
10793         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10794         (the_hppa_linux_nat_target): New.
10795         (hppa_linux_fetch_inferior_registers)
10796         (hppa_linux_store_inferior_registers): Refactor as methods of
10797         hppa_linux_nat_target.
10798         (_initialize_hppa_linux_nat): Adjust to C++ification.
10799
10800         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10801         (the_ia64_linux_nat_target): New.
10802         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10803         (ia64_linux_stopped_data_address)
10804         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10805         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10806         ia64_linux_nat_target methods.
10807         (super_xfer_partial): Delete.
10808         (_initialize_ia64_linux_nat): Adjust to C++ification.
10809
10810         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10811         (the_m32r_linux_nat_target): New.
10812         (m32r_linux_fetch_inferior_registers)
10813         (m32r_linux_store_inferior_registers): Refactor as
10814         m32r_linux_nat_target methods.
10815         (_initialize_m32r_linux_nat): Adjust to C++ification.
10816
10817         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10818         (the_m68k_linux_nat_target): New.
10819         (m68k_linux_fetch_inferior_registers)
10820         (m68k_linux_store_inferior_registers): Refactor as
10821         m68k_linux_nat_target methods.
10822         (_initialize_m68k_linux_nat): Adjust to C++ification.
10823
10824         * s390-linux-nat.c (s390_linux_nat_target): New class.
10825         (the_s390_linux_nat_target): New.
10826         (s390_linux_fetch_inferior_registers)
10827         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10828         (s390_insert_watchpoint, s390_remove_watchpoint)
10829         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10830         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10831         (s390_auxv_parse, s390_read_description): Refactor as methods of
10832         s390_linux_nat_target.
10833         (_initialize_s390_nat): Adjust to C++ification.
10834
10835         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10836         (the_sparc_linux_nat_target): New.
10837         (_initialize_sparc_linux_nat): Adjust to C++ification.
10838         * sparc-nat.c (sparc_fetch_inferior_registers)
10839         (sparc_store_inferior_registers): Remove target_ops parameter.
10840         * sparc-nat.h (sparc_fetch_inferior_registers)
10841         (sparc_store_inferior_registers): Remove target_ops parameter.
10842         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10843         (the_sparc64_linux_nat_target): New.
10844         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10845
10846         * spu-linux-nat.c (spu_linux_nat_target): New class.
10847         (the_spu_linux_nat_target): New.
10848         (spu_child_post_startup_inferior, spu_child_post_attach)
10849         (spu_child_wait, spu_fetch_inferior_registers)
10850         (spu_store_inferior_registers, spu_xfer_partial)
10851         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10852         methods.
10853         (_initialize_spu_nat): Adjust to C++ification.
10854
10855         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10856         (the_tilegx_linux_nat_target): New.
10857         (fetch_inferior_registers, store_inferior_registers):
10858         Refactor as methods.
10859         (_initialize_tile_linux_nat): Adjust to C++ification.
10860
10861         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10862         (the_xtensa_linux_nat_target): New.
10863         (xtensa_linux_fetch_inferior_registers)
10864         (xtensa_linux_store_inferior_registers): Refactor as
10865         xtensa_linux_nat_target methods.
10866         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10867
10868         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10869         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10870         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10871         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10872         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10873         (fbsd_stopped_by_sw_breakpoint)
10874         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10875         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10876         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10877         (fbsd_post_startup_inferior, fbsd_post_attach)
10878         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10879         (fbsd_set_syscall_catchpoint)
10880         (super_xfer_partial, super_resume, super_wait)
10881         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10882         (fbsd_handle_debug_trap): Remove target_ops parameter.
10883         (fbsd_nat_add_target): Delete.
10884         * fbsd-nat.h: Include "inf-ptrace.h".
10885         (fbsd_nat_add_target): Delete.
10886         (USE_SIGTRAP_SIGINFO): Define.
10887         (fbsd_nat_target): New class.
10888
10889         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10890         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10891         (amd64bsd_target): Delete.
10892         * amd64-bsd-nat.h: New file.
10893         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10894         "x86-bsd-nat.h".
10895         (amd64_fbsd_nat_target): New class.
10896         (the_amd64_fbsd_nat_target): New.
10897         (amd64fbsd_read_description): Refactor as method of
10898         amd64_fbsd_nat_target.
10899         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10900         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10901         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10902         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10903         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10904         (i386bsd_target): Delete.
10905         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10906         (i386bsd_fetch_inferior_registers)
10907         (i386bsd_store_inferior_registers): Declare.
10908         (i386_bsd_nat_target): New class.
10909         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10910         (the_i386_fbsd_nat_target): New.
10911         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10912         i386_fbsd_nat_target methods.
10913         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10914         (_initialize_i386fbsd_nat): Adjust to C++ification.
10915         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10916         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10917         (_initialize_x86_bsd_nat): Adjust to C++ification.
10918         * x86-bsd-nat.h: Include "x86-nat.h".
10919         (x86bsd_target): Delete declaration.
10920         (x86bsd_nat_target): New class.
10921
10922         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10923         (the_aarch64_fbsd_nat_target): New.
10924         (aarch64_fbsd_fetch_inferior_registers)
10925         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10926         aarch64_fbsd_nat_target.
10927         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10928         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10929         (the_alpha_bsd_nat_target): New.
10930         (alphabsd_fetch_inferior_registers)
10931         (alphabsd_store_inferior_registers): Refactor as
10932         alpha_bsd_nat_target methods.
10933         (_initialize_alphabsd_nat): Refactor as methods of
10934         alpha_bsd_nat_target.
10935         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10936         (the_amd64_nbsd_nat_target): New.
10937         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10938         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10939         (the_amd64_obsd_nat_target): New.
10940         (_initialize_amd64obsd_nat): Adjust to C++ification.
10941         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10942         (the_arm_fbsd_nat_target): New.
10943         (arm_fbsd_fetch_inferior_registers)
10944         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10945         (_initialize_arm_fbsd_nat): Refactor as methods of
10946         arm_fbsd_nat_target.
10947         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10948         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10949         (the_arm_netbsd_nat_target): New.
10950         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10951         arm_netbsd_nat_target.
10952         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10953         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10954         (the_hppa_nbsd_nat_target): New.
10955         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10956         hppa_nbsd_nat_target methods.
10957         (_initialize_hppanbsd_nat): Adjust to C++ification.
10958         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10959         (the_hppa_obsd_nat_target): New.
10960         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10961         methods of hppa_obsd_nat_target.
10962         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10963         add_target.
10964         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10965         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10966         add_target.
10967         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10968         (_initialize_i386obsd_nat): Use add_target.
10969         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10970         (the_m68k_bsd_nat_target): New.
10971         (m68kbsd_fetch_inferior_registers)
10972         (m68kbsd_store_inferior_registers): Refactor as methods of
10973         m68k_bsd_nat_target.
10974         (_initialize_m68kbsd_nat): Adjust to C++ification.
10975         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10976         (the_mips_fbsd_nat_target): New.
10977         (mips_fbsd_fetch_inferior_registers)
10978         (mips_fbsd_store_inferior_registers): Refactor as methods of
10979         mips_fbsd_nat_target.
10980         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10981         add_target.
10982         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10983         (the_mips_nbsd_nat_target): New.
10984         (mipsnbsd_fetch_inferior_registers)
10985         (mipsnbsd_store_inferior_registers): Refactor as methods of
10986         mips_nbsd_nat_target.
10987         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10988         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10989         (the_mips64_obsd_nat_target): New.
10990         (mips64obsd_fetch_inferior_registers)
10991         (mips64obsd_store_inferior_registers): Refactor as methods of
10992         mips64_obsd_nat_target.
10993         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10994         add_target.
10995         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10996         nbsd_nat_target.
10997         * nbsd-nat.h: Include "inf-ptrace.h".
10998         (nbsd_nat_target): New class.
10999         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11000         (obsd_wait): Refactor as methods of obsd_nat_target.
11001         (obsd_add_target): Delete.
11002         * obsd-nat.h: Include "inf-ptrace.h".
11003         (obsd_nat_target): New class.
11004         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11005         (the_ppc_fbsd_nat_target): New.
11006         (ppcfbsd_fetch_inferior_registers)
11007         (ppcfbsd_store_inferior_registers): Refactor as methods of
11008         ppc_fbsd_nat_target.
11009         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11010         add_target.
11011         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11012         (the_ppc_nbsd_nat_target): New.
11013         (ppcnbsd_fetch_inferior_registers)
11014         (ppcnbsd_store_inferior_registers): Refactor as methods of
11015         ppc_nbsd_nat_target.
11016         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11017         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11018         (the_ppc_obsd_nat_target): New.
11019         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11020         methods of ppc_obsd_nat_target.
11021         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11022         add_target.
11023         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11024         (the_sh_nbsd_nat_target): New.
11025         (shnbsd_fetch_inferior_registers)
11026         (shnbsd_store_inferior_registers): Refactor as methods of
11027         sh_nbsd_nat_target.
11028         (_initialize_shnbsd_nat): Adjust to C++ification.
11029         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11030         (inf_ptrace_xfer_partial): Delete.
11031         (sparc_xfer_partial, sparc_target): Delete.
11032         * sparc-nat.h (sparc_fetch_inferior_registers)
11033         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11034         (sparc_target): Delete function declaration.
11035         (sparc_target): New template class.
11036         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11037         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11038         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11039         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11040         add_target.
11041         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11042         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11043         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11044         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11045         add_target.
11046         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11047         (the_vax_bsd_nat_target): New.
11048         (vaxbsd_fetch_inferior_registers)
11049         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11050         methods.
11051         (_initialize_vaxbsd_nat): Adjust to C++ification.
11052
11053         * bsd-kvm.c (bsd_kvm_target): New class.
11054         (bsd_kvm_ops): Now a bsd_kvm_target.
11055         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11056         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11057         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11058         bsd_kvm_target.
11059         (bsd_kvm_return_one): Delete.
11060         (bsd_kvm_add_target): Adjust to C++ification.
11061
11062         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11063         (nto_procfs_target_procfs): New classes.
11064         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11065         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11066         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11067         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11068         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11069         (procfs_remove_hw_breakpoint, procfs_resume)
11070         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11071         (procfs_kill_inferior, procfs_store_registers)
11072         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11073         as methods of nto_procfs_target.
11074         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11075         (nto_native_ops): Delete.
11076         (procfs_open, procfs_native_open): Delete.
11077         (nto_native_ops): Now an nto_procfs_target_native.
11078         (init_procfs_targets): Adjust to C++ification.
11079         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11080         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11081         Refactor as methods of nto_procfs_target.
11082
11083         * go32-nat.c (go32_nat_target): New class.
11084         (the_go32_nat_target): New.
11085         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11086         (go32_store_registers, go32_xfer_partial, go32_files_info)
11087         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11088         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11089         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11090         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11091         (go32_target): Delete.
11092         (_initialize_go32_nat): Adjust to C++ification.
11093
11094         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11095         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11096         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11097         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11098         gnu_nat_target.
11099         (gnu_target): Delete.
11100         * gnu-nat.h (gnu_target): Delete.
11101         (gnu_nat_target): New class.
11102         * i386-gnu-nat.c (gnu_base_target): New.
11103         (i386_gnu_nat_target): New class.
11104         (the_i386_gnu_nat_target): New.
11105         (_initialize_i386gnu_nat): Adjust to C++ification.
11106
11107 2018-05-02  Pedro Alves  <palves@redhat.com>
11108
11109         * bfd-target.c (target_bfd_xclose): Rename to ...
11110         (target_bfd_close): ... this.
11111         (target_bfd_reopen): Adjust.
11112         * target.c (target_close): Remove references to to_xclose.
11113         * target.h (target_ops::to_xclose): Delete.
11114         (target_ops::to_close): Update comments.
11115
11116 2018-05-02  Pedro Alves  <palves@redhat.com>
11117
11118         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11119         "linux-nat.h".
11120         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11121         * inf-ptrace.c (inf_ptrace_register_u_offset)
11122         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11123         (inf_ptrace_store_register, inf_ptrace_store_registers)
11124         (inf_ptrace_trad_target): Move to ...
11125         * linux-nat-trad.c: ... this new file.
11126         * linux-nat-trad.h: New file.
11127         * linux-nat.c (linux_target_install_ops): Make extern.
11128         (linux_trad_target): Delete.
11129         * linux-nat.h (linux_trad_target): Delete declaration.
11130         (linux_target_install_ops): Declare.
11131         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11132         "linux-nat.h".
11133
11134 2018-05-02  Pedro Alves  <palves@redhat.com>
11135
11136         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11137         procfs_target/add_target here.
11138         * procfs.c (procfs_target): Make static.
11139         (_initialize_procfs): Call add_target here.
11140         * procfs.h (struct target_ops): Remove forward declaration.
11141         (procfs_target): Remove declaration.
11142         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11143
11144 2018-05-02  Pedro Alves  <palves@redhat.com>
11145
11146         * procfs.c (procfs_stopped_by_watchpoint)
11147         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11148         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11149         Forward declare.
11150         (procfs_use_watchpoints): Delete, move contents...
11151         (procfs_target): ... here.
11152         * procfs.h (procfs_use_watchpoints): Delete declaration.
11153         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11154         procfs_use_watchpoints.
11155         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11156         procfs_use_watchpoints.
11157
11158 2018-05-02  Tom Tromey  <tom@tromey.com>
11159
11160         PR python/20084:
11161         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11162         and var_zuinteger_unlimited.
11163         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11164         and PARAM_ZUINTEGER_UNLIMITED.
11165         (set_parameter_value): Handle var_zuinteger and
11166         var_zuinteger_unlimited.
11167         (add_setshow_generic): Likewise.
11168         (parmpy_init): Likewise.
11169
11170 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11171
11172         PR rust/23124
11173         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11174         pointer is not null before dereferencing it.
11175
11176 2018-04-30  Tom Tromey  <tom@tromey.com>
11177
11178         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11179         is_mi_like_p.
11180
11181 2018-04-30  Tom Tromey  <tom@tromey.com>
11182
11183         * breakpoint.c (mention): Remove use of is_mi_like_p.
11184         (print_mention_ranged_breakpoint): Likewise.
11185         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11186         of is_mi_like_p.
11187
11188 2018-04-30  Tom Tromey  <tom@tromey.com>
11189
11190         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11191
11192 2018-04-30  Tom Tromey  <tom@tromey.com>
11193
11194         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11195         (info_spu_event_command): Remove some uses of is_mi_like_p.
11196
11197 2018-04-30  Tom Tromey  <tom@tromey.com>
11198
11199         * python/py-framefilter.c (py_print_single_arg)
11200         (enumerate_locals, py_print_args, py_print_frame): Remove some
11201         uses of is_mi_like_p.
11202
11203 2018-04-30  Tom Tromey  <tom@tromey.com>
11204
11205         * ui-out.c: Update.
11206         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11207         * ui-out.h (ui_out::is_mi_like_p): Now const.
11208         (ui_out::do_is_mi_like_p): Now const.
11209         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11210
11211 2018-04-30  Tom Tromey  <tom@tromey.com>
11212
11213         * varobj.c (varobj_set_visualizer): Use new_reference.
11214         * python/python.c (gdbpy_decode_line): Use new_reference.
11215         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11216         new_reference.
11217
11218 2018-04-30  Tom Tromey  <tom@tromey.com>
11219
11220         * varobj.c (install_new_value): Use new_reference.
11221         * value.h (value_incref): Return void.  Swap intro comment with
11222         value_decref.
11223         * value.c (set_value_parent): Use new_reference.
11224         (value_incref): Return void.  Update intro comment.
11225         (release_value): Use new_reference.
11226         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11227
11228 2018-04-30  Tom Tromey  <tom@tromey.com>
11229
11230         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11231         * gdb_bfd.h (new_bfd_ref): Remove.
11232         (gdb_bfd_open): Update comment.
11233         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11234         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11235         (gdb_bfd_fdopenr): Use new_reference.
11236         * exec.c (exec_file_attach): Use new_reference.
11237
11238 2018-04-30  Tom Tromey  <tom@tromey.com>
11239
11240         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11241         method.
11242
11243 2018-04-30  Tom Tromey  <tom@tromey.com>
11244
11245         * jit.c (jit_read_code_entry): Use type_align.
11246         * i386-tdep.c (i386_gdbarch_init): Don't call
11247         set_gdbarch_long_long_align_bit.
11248         * gdbarch.sh: Remove long_long_align_bit.
11249         * gdbarch.c, gdbarch.h: Rebuild.
11250         * arc-tdep.c (arc_type_align): New function.
11251         (arc_gdbarch_init): Use arc_type_align.  Don't call
11252         set_gdbarch_long_long_align_bit.
11253
11254 2018-04-30  Tom Tromey  <tom@tromey.com>
11255
11256         * rust-lang.c (rust_type_alignment): Remove.
11257         (rust_composite_type): Use type_align.
11258
11259 2018-04-30  Tom Tromey  <tom@tromey.com>
11260
11261         * NEWS: Mention Type.align.
11262         * python/py-type.c (typy_get_alignof): New function.
11263         (type_object_getset): Add "alignof".
11264
11265 2018-04-30  Tom Tromey  <tom@tromey.com>
11266
11267         PR exp/17095:
11268         * NEWS: Update.
11269         * std-operator.def (UNOP_ALIGNOF): New operator.
11270         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11271         New.
11272         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11273         * c-lang.c (c_op_print_tab): Add alignof.
11274         * c-exp.y (ALIGNOF): New token.
11275         (exp): Add "ALIGNOF" production.
11276         (ident_tokens): Add _Alignof and alignof.
11277
11278 2018-04-30  Tom Tromey  <tom@tromey.com>
11279
11280         * i386-tdep.c (i386_type_align): New function.
11281         (i386_gdbarch_init): Update.
11282         * gdbarch.sh (type_align): New method.
11283         * gdbarch.c, gdbarch.h: Rebuild.
11284         * arch-utils.h (default_type_align): Declare.
11285         * arch-utils.c (default_type_align): New function.
11286         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11287         (struct type) <align_log2>: New field.
11288         <instance_flags>: Now a bitfield.
11289         (TYPE_RAW_ALIGN): New macro.
11290         (type_align, type_raw_align, set_type_align): Declare.
11291         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11292         functions.
11293         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11294         (get_alignment, maybe_set_alignment): New functions.
11295         (read_structure_type, read_enumeration_type, read_array_type)
11296         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11297         (read_subrange_type, read_base_type): Set type alignment.
11298
11299 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11300
11301         * dwarf2read.c (read_index_from_section): Use bool.
11302
11303 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11304
11305         PR gdb/22950
11306         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11307         with #ifdef.
11308
11309 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11310
11311         PR build/22873
11312         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11313         last step, and do it atomically.
11314
11315 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11316
11317         * compile/compile-c-types.c (convert_int, convert_float):
11318         Update for C FE v1.
11319
11320 2018-04-27  Tom Tromey  <tom@tromey.com>
11321
11322         PR rust/22545:
11323         * rust-lang.c (rust_inclusive_range_type_p): New function.
11324         (rust_range): Handle inclusive ranges.
11325         (rust_compute_range): Likewise.
11326         * rust-exp.y (struct rust_op) <inclusive>: New field.
11327         (DOTDOTEQ): New constant.
11328         (range_expr): Add "..=" productions.
11329         (operator_tokens): Add "..=" token.
11330         (ast_range): Add "inclusive" parameter.
11331         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11332         ranges.
11333         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11334         bounds values.
11335         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11336         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11337         Update comments.
11338         * expprint.c (print_subexp_standard): Handle new bounds values.
11339         (dump_subexp_body_standard): Likewise.
11340
11341 2018-04-27  Tom Tromey  <tom@tromey.com>
11342
11343         * configure: Rebuild.
11344         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11345         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11346         "OVERRIDE".
11347         (class symbol_needs_eval_context): Likewise.
11348         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11349         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11350         "virtual".
11351         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11352         "override".
11353         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11354         * aarch64-tdep.c (instruction_reader::read): Use "override".
11355         (instruction_reader_test::read): Likewise.
11356         * arm-tdep.c (instruction_reader::read): Use "override".
11357         (instruction_reader_thumb::read): Likewise.
11358
11359 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11360
11361         PR remote/9665
11362         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11363         instead of remote_send.
11364         (remote_send): Remove.
11365
11366 2018-04-26  Pedro Alves  <palves@redhat.com>
11367
11368         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11369         find_function_start_sal instead of find_pc_line.
11370
11371 2018-04-26  Pedro Alves  <palves@redhat.com>
11372
11373         * breakpoint.c (set_breakpoint_location_function): Handle
11374         mst_data_gnu_ifunc.
11375         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11376         * elfread.c (elf_symtab_read): Give data symbols with
11377         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11378         (elf_rel_plt_read): Update comment.
11379         * linespec.c (convert_linespec_to_sals): Handle
11380         mst_data_gnu_ifunc.
11381         (minsym_found): Handle mst_data_gnu_ifunc.
11382         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11383         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11384         * parse.c (find_minsym_type_and_address): Handle
11385         mst_data_gnu_ifunc.
11386         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11387         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11388         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11389         comment.
11390         <mst_data_gnu_ifunc>: New enumerator.
11391
11392 2018-04-26  Pedro Alves  <palves@redhat.com>
11393
11394         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11395         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11396         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11397         Handle it.
11398         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11399         (lookup_minimal_symbol_by_pc): Adjust.
11400         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11401         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11402         * minsyms.h (lookup_msym_prefer): New enum.
11403         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11404         parameter by a lookup_msym_prefer parameter.
11405
11406 2018-04-26  Pedro Alves  <palves@redhat.com>
11407
11408         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11409         ends in "@plt" instead of looking at the symbol's section.
11410
11411 2018-04-26  Pedro Alves  <palves@redhat.com>
11412
11413         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11414         all references.
11415         (find_pc_partial_function_gnu_ifunc): Rename to ...
11416         (find_pc_partial_function): ... this, and remove references to
11417         'is_gnu_ifunc_p'.
11418         (find_pc_partial_function): Delete old implementation.
11419         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11420
11421 2018-04-26  Pedro Alves  <palves@redhat.com>
11422
11423         * linespec.c (struct bound_minimal_symbol_search_key): New.
11424         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11425         skip first line if we found a GNU ifunc minimal symbol by name.
11426         (compare_msymbols): Change parameters to work with a destructured
11427         lhs minsym.
11428         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11429         functions.
11430
11431 2018-04-26  Pedro Alves  <palves@redhat.com>
11432
11433         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11434         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11435         address/name.
11436         (add_location_to_breakpoint): Store the minsym and the objfile in
11437         the breakpoint location.
11438         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11439         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11440         Record the minsym in the sal.
11441         * symtab.h (symtab_and_line) <msymbol>: New field.
11442
11443 2018-04-26  Pedro Alves  <palves@redhat.com>
11444
11445         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11446         unless we actually resolved the ifunc.
11447
11448 2018-04-26  Pedro Alves  <palves@redhat.com>
11449
11450         * c-exp.y (variable production): Prefer ifunc minsyms over
11451         regular function symbols.
11452         * symtab.c (find_gnu_ifunc): New function.
11453         * minsyms.h (lookup_msym_prefer): New enum.
11454         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11455         parameter by a lookup_msym_prefer parameter.
11456         * symtab.h (find_gnu_ifunc): New declaration.
11457
11458 2018-04-26  Pedro Alves  <palves@redhat.com>
11459
11460         * blockframe.c (find_gnu_ifunc_target_type): New function.
11461         (find_function_type): New.
11462         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11463         return a value with a memory address.
11464         (eval_call): For calls to GNU ifunc functions, try to find the
11465         type of the target function from the type that the resolver
11466         returns.
11467         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11468         symbols.
11469         * infcall.c (find_function_return_type): Delete.
11470         (find_function_addr): Add 'function_type' parameter.  For calls to
11471         GNU ifunc functions, try to find the type of the target function
11472         from the type that the resolver returns, and return it via
11473         FUNCTION_TYPE.
11474         (call_function_by_hand_dummy): Adjust to use the function type
11475         returned by find_function_addr.
11476         (find_function_addr): Add 'function_type' parameter and move
11477         description here.
11478         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11479         declarations.
11480
11481 2018-04-26  Pedro Alves  <palves@redhat.com>
11482
11483         * c-exp.y (variable production): Skip finding an alias for ifunc
11484         symbols.
11485
11486 2018-04-26  Pedro Alves  <palves@redhat.com>
11487
11488         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11489
11490 2018-04-25  Pedro Alves  <palves@redhat.com>
11491
11492         * infcmd.c (kill_command): Print the pid as string, not the whole
11493         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11494         message.
11495         * remote.c (remote_detach_1): Print the pid as string, not the
11496         whole thread's ptid.
11497
11498 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11499             Sergio Durigan Junior  <sergiodj@redhat.com>
11500             Pedro Alves  <palves@redhat.com>
11501
11502         * infcmd.c (kill_command): Print message when inferior has
11503         been killed.
11504         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11505         '1'.
11506         (add_inferior): Improve message printed when
11507         'print_inferior_events' is on.
11508         (exit_inferior): Remove message printed when
11509         'print_inferior_events' is on.
11510         (detach_inferior): Improve message printed when
11511         'print_inferior_events' is on.
11512         (initialize_inferiors): Use 'add_inferior_silent' to set
11513         'current_inferior_'.
11514         * inferior.h (print_inferior_events): Declare here as
11515         'extern'.
11516         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11517         '[Detaching...]' messages when 'print_inferior_events' is on.
11518         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11519         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11520         'Detaching after fork from child...', replace it by '... from
11521         parent...'.
11522         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11523         prefix/suffix when printing 'Detaching...' messages.  Print
11524         them when 'print_inferior_events' is on.
11525         * remote.c (remote_detach_1): Print message when detaching
11526         from inferior and '!is_fork_parent'.
11527
11528 2018-04-24  Tom Tromey  <tom@tromey.com>
11529
11530         * cli-out.h: Reindent.
11531
11532 2018-04-24  Tom Tromey  <tom@tromey.com>
11533
11534         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11535         (cli_ui_out::do_field_string): Use fputs_filtered.
11536         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11537
11538 2018-04-23  Tom Tromey  <tom@tromey.com>
11539
11540         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11541         gdb::unique_xmalloc_ptr.
11542
11543 2018-04-23  Tom Tromey  <tom@tromey.com>
11544
11545         * configure: Rebuild.
11546
11547 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11548
11549         PR gdb/23095
11550         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11551         prepare_for_testing.  Set normal_bp to r_debug_state if target
11552         is bsd.
11553
11554 2018-04-21  Pedro Alves  <palves@redhat.com>
11555             Rajendra SY  <rajendra.sy@gmail.com>
11556
11557         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11558         * remote.c (extended_remote_attach): In all-stop mode, mark the
11559         thread as executing.
11560
11561 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11562
11563         * thread.c (thread_apply_all_command): Fix comment.
11564         (thread_command): Fix comment.
11565
11566 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11567
11568         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11569         parameter.
11570         * features/aarch64-core.c (create_feature_aarch64_core):
11571         Regenerate.
11572         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11573         Likewise.
11574         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11575         Likewise.
11576         * features/i386/32bit-avx512.c
11577         (create_feature_i386_32bit_avx512): Likewise.
11578         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11579         Likewise.
11580         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11581         Likewise.
11582         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11583         Likewise.
11584         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11585         Likewise.
11586         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11587         Likewise.
11588         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11589         Likewise.
11590         * features/i386/64bit-avx512.c
11591         (create_feature_i386_64bit_avx512): Likewise.
11592         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11593         Likewise.
11594         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11595         Likewise.
11596         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11597         Likewise.
11598         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11599         Likewise.
11600         * features/i386/64bit-segments.c
11601         (create_feature_i386_64bit_segments): Likewise.
11602         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11603         Likewise.
11604         * features/i386/x32-core.c
11605         (create_feature_i386_x32_core): Likewise.
11606         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11607         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11608         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11609         * target-descriptions.c: In generated code, don't pass xml
11610         filename.
11611
11612 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11613
11614         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11615         (print_xml_feature::visit_post): Likewise.
11616         (print_xml_feature::visit): Likewise.
11617         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11618         (print_xml_feature): Add new class.
11619         * regformats/regdat.sh: Null xmltarget on feature targets.
11620         * target-descriptions.c (struct target_desc): Add xmltarget.
11621         (maintenance_check_tdesc_xml_convert): Add unittest function.
11622         (tdesc_get_features_xml): Add function to get xml.
11623         (maintenance_check_xml_descriptions): Test xml generation.
11624         * xml-tdesc.c (string_read_description_xml): Add function.
11625         * xml-tdesc.h (string_read_description_xml): Add declaration.
11626
11627 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11628
11629         * features/Makefile: Add feature marker to targets with new style
11630         target descriptions.
11631         * regformats/aarch64.dat: Regenerate.
11632         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11633         * regformats/i386/amd64-avx-linux.dat: Likewise.
11634         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11635         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11636         * regformats/i386/amd64-linux.dat: Likewise.
11637         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11638         * regformats/i386/amd64.dat: Likewise.
11639         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11640         * regformats/i386/i386-avx-linux.dat: Likewise.
11641         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11642         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11643         * regformats/i386/i386-linux.dat: Likewise.
11644         * regformats/i386/i386-mmx-linux.dat: Likewise.
11645         * regformats/i386/i386-mpx-linux.dat: Likewise.
11646         * regformats/i386/i386.dat: Likewise.
11647         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11648         * regformats/i386/x32-avx-linux.dat: Likewise.
11649         * regformats/i386/x32-linux.dat: Likewise.
11650         * regformats/tic6x-c62x-linux.dat: Likewise.
11651         * regformats/tic6x-c64x-linux.dat: Likewise.
11652         * regformats/tic6x-c64xp-linux.dat: Likewise.
11653         * regformats/regdat.sh: Parse feature marker.
11654
11655 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11656
11657         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11658         (tdesc_osabi_name): Likewise.
11659         * target-descriptions.c (tdesc_architecture_name): Add new
11660         function.
11661         (tdesc_osabi_name): Likewise.
11662
11663 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11664
11665         * common/tdesc.c (tdesc_predefined_type): Move to here.
11666         (tdesc_named_type): Likewise.
11667         (tdesc_create_vector): Likewise.
11668         (tdesc_create_struct): Likewise.
11669         (tdesc_set_struct_size): Likewise.
11670         (tdesc_create_union): Likewise.
11671         (tdesc_create_flags): Likewise.
11672         (tdesc_create_enum): Likewise.
11673         (tdesc_add_field): Likewise.
11674         (tdesc_add_typed_bitfield): Likewise.
11675         (tdesc_add_bitfield): Likewise.
11676         (tdesc_add_flag): Likewise.
11677         (tdesc_add_enum_value): Likewise.
11678         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11679         (struct tdesc_type_vector): Likewise.
11680         (struct tdesc_type_field): Likewise.
11681         (struct tdesc_type_with_fields): Likewise.
11682         (tdesc_create_enum): Add declaration.
11683         (tdesc_add_typed_bitfield): Likewise.
11684         (tdesc_add_enum_value): Likewise.
11685         * target-descriptions.c (tdesc_type_field): Move from here.
11686         (tdesc_type_builtin): Likewise.
11687         (tdesc_type_vector): Likewise.
11688         (tdesc_type_with_fields): Likewise.
11689         (tdesc_predefined_types): Likewise.
11690         (tdesc_named_type): Likewise.
11691         (tdesc_create_vector): Likewise.
11692         (tdesc_create_struct): Likewise.
11693         (tdesc_set_struct_size): Likewise.
11694         (tdesc_create_union): Likewise.
11695         (tdesc_create_flags): Likewise.
11696         (tdesc_create_enum): Likewise.
11697         (tdesc_add_field): Likewise.
11698         (tdesc_add_typed_bitfield): Likewise.
11699         (tdesc_add_bitfield): Likewise.
11700         (tdesc_add_flag): Likewise.
11701         (tdesc_add_enum_value): Likewise.
11702         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11703         (tdesc_add_typed_bitfield): Likewise.
11704         (tdesc_add_enum_value): Likewise.
11705
11706 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11707
11708         * common/tdesc.c (tdesc_feature::accept): Move to here.
11709         (tdesc_feature::operator==): Likewise.
11710         (tdesc_create_reg): Likewise.
11711         * common/tdesc.h (tdesc_type_kind): Likewise.
11712         (struct tdesc_type): Likewise.
11713         (struct tdesc_feature): Likewise.
11714         * regformats/regdat.sh: Create a feature.
11715         * target-descriptions.c (tdesc_type_kind): Move from here.
11716         (tdesc_type): Likewise.
11717         (tdesc_type_up): Likewise.
11718         (tdesc_feature): Likewise.
11719         (tdesc_create_reg): Likewise.
11720
11721 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11722
11723         * Makefile.in: Add arch/tdesc.c
11724         * common/tdesc.c: New file.
11725         * common/tdesc.h (tdesc_element_visitor): Move to here.
11726         (tdesc_element): Likewise.
11727         (tdesc_reg): Likewise.
11728         (tdesc_reg_up): Likewise.
11729         * regformats/regdef.h (reg): Add offset to constructors.
11730         * target-descriptions.c (tdesc_element_visitor): Move from here.
11731         (tdesc_element): Likewise.
11732         (tdesc_reg): Likewise.
11733         (tdesc_reg_up): Likewise.
11734
11735 2018-04-17  Tom Tromey  <tom@tromey.com>
11736
11737         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11738         discriminant field.
11739
11740 2018-04-17  Tom Tromey  <tom@tromey.com>
11741
11742         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11743
11744 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11745
11746         * symtab.c (print_symbol_info): Skip printing filename and line
11747         number when `last' is NULL.
11748         (symtab_symbol_info): Use empty string instead of NULL for first
11749         invocation of print_symbol_info.
11750         (rbreak_command): Pass NULL to `last' parameter of
11751         print_symbol_info.
11752
11753 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11754
11755         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11756         instead of nullptr.
11757
11758 2018-04-16  Pedro Alves  <palves@redhat.com>
11759
11760         * MAINTAINERS (sh): Remove.
11761         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11762         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11763         (ALLDEPFILES): Remove sh64-tdep.c.
11764         * NEWS: Mentions that support for SH-5/SH64 is removed.
11765         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11766         (sh*-*-openbsd*): Ditto.
11767         (sh64-*-elf*): Remove.
11768         (sh*): Remove.
11769         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11770         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11771         * sh-tdep.c: No longer include "sh64-tdep.h".
11772         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11773         * sh64-tdep.c, sh64-tdep.h: Remove files.
11774
11775 2018-04-16  Pedro Alves  <palves@redhat.com>
11776
11777         * MAINTAINERS: Remove m88k.
11778         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11779         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11780         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11781         * NEWS: Mention that support for m88k was removed.
11782         * configure.host (m88*-*-*): Remove support.
11783         * configure.nat (m88k-*-*): Remove support.
11784         * configure.tgt (m88*-*-openbsd*): Remove.
11785         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11786
11787 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11788
11789         * configure.tgt (x86_tobjs): New variable.
11790         (amd64_tobjs, i386_tobjs): Use it.
11791
11792 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11793
11794         * symtab.c (print_symbol_info): Precede the symbol definition by
11795         the line number when available.
11796         * NEWS: Advertise this enhancement.
11797
11798 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11799
11800         * NEWS (New options): announce set/show record btrace cpu.
11801         * btrace.c: Include record-btrace.h.
11802         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11803         the vendor is unknown.
11804         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11805         Maybe overwrite the btrace configuration's cpu.
11806         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11807         (btrace_fetch): Add cpu parameter.  Update callers.
11808         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11809         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11810         errata workarounds if the vendor is unknown.
11811         * python/py-record-btrace.c: Include record-btrace.h.
11812         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11813         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11814         * record-btrace.c (record_btrace_cpu_state_kind): New.
11815         (record_btrace_cpu): New.
11816         (set_record_btrace_cpu_cmdlist): New.
11817         (record_btrace_get_cpu): New.
11818         (require_btrace_thread, record_btrace_info)
11819         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11820         (cmd_set_record_btrace_cpu_none): New.
11821         (cmd_set_record_btrace_cpu_auto): New.
11822         (cmd_set_record_btrace_cpu): New.
11823         (cmd_show_record_btrace_cpu): New.
11824         (_initialize_record_btrace): Initialize set/show record btrace cpu
11825         commands.
11826         * record-btrace.h (record_btrace_get_cpu): New.
11827
11828 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11829
11830         * record.c (set_record_command): Fix typo in message.
11831
11832 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11833
11834         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11835
11836 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11837
11838         * infrun.c (process_event_stop_test): Call
11839         gdbarch_in_indirect_branch_thunk.
11840         * gdbarch.sh (in_indirect_branch_thunk): New.
11841         * gdbarch.c: Regenerated.
11842         * gdbarch.h: Regenerated.
11843         * x86-tdep.h: New.
11844         * x86-tdep.c: New.
11845         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11846         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11847         (ALLDEPFILES): Add x86-tdep.c.
11848         * arch-utils.h (default_in_indirect_branch_thunk): New.
11849         * arch-utils.c (default_in_indirect_branch_thunk): New.
11850         * i386-tdep: Include x86-tdep.h.
11851         (i386_in_indirect_branch_thunk): New.
11852         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11853         function.
11854         * amd64-tdep: Include x86-tdep.h.
11855         (amd64_in_indirect_branch_thunk): New.
11856         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11857
11858 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11859
11860         PR gdb/23053
11861         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11862         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11863         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11864         regression.
11865
11866 2018-04-12  Tom Tromey  <tom@tromey.com>
11867
11868         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11869         (rust_evaluate_subexp): Likewise.
11870
11871 2018-04-12  Pedro Alves  <palves@redhat.com>
11872
11873         * procfs.c (procfs_detach): Make forward declaration's prototype
11874         match definition's protototype.
11875         (proc_get_LDT_entry): Remove stale do_cleanups call.
11876
11877 2018-04-12  Pedro Alves  <palves@redhat.com>
11878
11879         * target.h (target_ops::to_has_exited): Delete.
11880         (target_has_exited): Delete.
11881         * target-delegates.c: Regenerate.
11882
11883 2018-04-11  Pedro Alves  <palves@redhat.com>
11884
11885         * target.c (fileio_fh_t::t): Add comment.
11886         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11887         (target_fileio_close): Handle a NULL target.
11888         (invalidate_fileio_fh): New.
11889         (target_close): Call it.
11890         * remote.c (remote_hostio_send_command): No longer check whether
11891         remote_desc is open.
11892
11893 2018-04-11  Pedro Alves  <palves@redhat.com>
11894
11895         * target.c (fileio_fh_t): Make it a named struct instead of a
11896         typedef.
11897         (fileio_fh_t::is_closed): New method.
11898         (DEF_VEC_O (fileio_fh_t)): Remove.
11899         (fileio_fhandles): Now a std::vector.
11900         (is_closed_fileio_fh): Delete.
11901         (acquire_fileio_fd): Adjust.  Rename parameters.
11902         (release_fileio_fd): Adjust.
11903         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11904         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11905         (target_fileio_close): Adjust.
11906
11907 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11908
11909         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11910         index.
11911
11912 2018-04-10  Pedro Alves  <palves@redhat.com>
11913
11914         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11915         (scoped_finish_thread_state): New class.
11916         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11917         cleanup.
11918         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11919         (fetch_inferior_event, normal_stop): Likewise.
11920         * thread.c (finish_thread_state_cleanup): Delete.
11921
11922 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11923             Pedro Alves  <palves@redhat.com>
11924
11925         * value.c: Include "selftest.h" and "common/array-view.h".
11926         (struct range) <operator ==>: New.
11927         (test_ranges_contain): New.
11928         (check_ranges_vector): New.
11929         (test_insert_into_bit_range_vector): New.
11930         (_initialize_values): Register selftests.
11931         * common/array-view.h (operator==, operator!=): New.
11932
11933 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11934
11935         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11936         an iterator.
11937         * inline-frame.c: Include <algorithm>.
11938         (struct inline_state): Add constructor.
11939         (inline_state_s): Remove.
11940         (DEF_VEC_O(inline_state_s)): Remove.
11941         (inline_states): Change type to std::vector.
11942         (find_inline_frame_state): Adjust to std::vector.
11943         (allocate_inline_frame_state): Remove.
11944         (clear_inline_frame_state): Adjust to std::vector.
11945         (skip_inline_frames): Adjust to std::vector.
11946
11947 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11948
11949         * tracepoint.h (struct trace_state_variable): Add constructor.
11950         <name>: Change type to std::string.
11951         * tracepoint.c (tsv_s): Remove.
11952         (DEF_VEC_O(tsv_s)): Remove.
11953         (tvariables): Change to std::vector.
11954         (create_trace_state_variable): Adjust to std::vector.
11955         (find_trace_state_variable): Likewise.
11956         (find_trace_state_variable_by_number): Likewise.
11957         (delete_trace_state_variable): Likewise.
11958         (trace_variable_command): Adjust to std::string.
11959         (delete_trace_variable_command): Likewise.
11960         (tvariables_info_1): Adjust to std::vector.
11961         (save_trace_state_variables): Likewise.
11962         (start_tracing): Likewise.
11963         (merge_uploaded_trace_state_variables): Adjust to std::vector
11964         and std::string.
11965         * target.h (struct target_ops)
11966         <to_download_trace_state_variable>: Pass reference to
11967         trace_state_variable.
11968         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11969         * target-delegates.c: Re-generate.
11970         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11971         (mi_tsv_deleted): Likewise.
11972         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11973         * remote.c (remote_download_trace_state_variable): Change
11974         pointer to reference and adjust.
11975         * make-target-delegates (parse_argtypes): Handle references.
11976         (write_function_header): Likewise.
11977         (munge_type): Likewise.
11978
11979 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11980
11981         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11982         string_view-selftests.c.
11983         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11984         testsuite.
11985         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11986         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11987         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11988         * unittests/basic_string_view/element_access/char/1.cc:
11989         Likewise.
11990         * unittests/basic_string_view/element_access/char/empty.cc:
11991         Likewise.
11992         * unittests/basic_string_view/element_access/char/front_back.cc:
11993         Likewise.
11994         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11995         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11996         Likewise.
11997         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11998         Likewise.
11999         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12000         Likewise.
12001         * unittests/basic_string_view/operations/compare/char/1.cc:
12002         Likewise.
12003         * unittests/basic_string_view/operations/compare/char/13650.cc:
12004         Likewise.
12005         * unittests/basic_string_view/operations/copy/char/1.cc:
12006         Likewise.
12007         * unittests/basic_string_view/operations/data/char/1.cc:
12008         Likewise.
12009         * unittests/basic_string_view/operations/find/char/1.cc:
12010         Likewise.
12011         * unittests/basic_string_view/operations/find/char/2.cc:
12012         Likewise.
12013         * unittests/basic_string_view/operations/find/char/3.cc:
12014         Likewise.
12015         * unittests/basic_string_view/operations/find/char/4.cc:
12016         Likewise.
12017         * unittests/basic_string_view/operations/rfind/char/1.cc:
12018         Likewise.
12019         * unittests/basic_string_view/operations/rfind/char/2.cc:
12020         Likewise.
12021         * unittests/basic_string_view/operations/rfind/char/3.cc:
12022         Likewise.
12023         * unittests/basic_string_view/operations/substr/char/1.cc:
12024         Likewise.
12025         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12026         * unittests/string_view-selftests.c: New file.
12027
12028 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12029
12030         * unittests/basic_string_view/capacity/1.cc: New file.
12031         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12032         * unittests/basic_string_view/cons/char/1.cc: New file.
12033         * unittests/basic_string_view/cons/char/2.cc: New file.
12034         * unittests/basic_string_view/cons/char/3.cc: New file.
12035         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12036         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12037         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12038         * unittests/basic_string_view/element_access/char/1.cc: New file.
12039         * unittests/basic_string_view/element_access/char/2.cc: New file.
12040         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12041         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12042         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12043         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12044         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12045         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12046         * unittests/basic_string_view/include.cc: New file.
12047         * unittests/basic_string_view/inserters/char/1.cc: New file.
12048         * unittests/basic_string_view/inserters/char/2.cc: New file.
12049         * unittests/basic_string_view/inserters/char/3.cc: New file.
12050         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12051         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12052         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12053         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12054         * unittests/basic_string_view/literals/types.cc: New file.
12055         * unittests/basic_string_view/literals/values.cc: New file.
12056         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12057         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12058         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12059         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12060         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12061         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12062         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12063         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12064         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12065         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12066         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12067         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12068         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12069         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12070         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12071         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12072         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12073         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12074         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12075         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12076         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12077         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12078         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12079         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12080         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12081         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12082         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12083         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12084         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12085         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12086         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12087         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12088         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12089         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12090         * unittests/basic_string_view/operators/char/2.cc: New file.
12091         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12092         * unittests/basic_string_view/range_access/char/1.cc: New file.
12093         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12094         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12095         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12096         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12097         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12098         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12099         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12100         * unittests/basic_string_view/typedefs.cc: New file.
12101         * unittests/basic_string_view/types/1.cc: New file.
12102
12103 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12104
12105         * common/gdb_string_view.h: Remove libstdc++ implementation
12106         details, adjust to gdb reality.
12107         * common/gdb_string_view.tcc: Likewise.
12108         * cli/cli-script.c (struct string_view): Remove.
12109         (user_args) <m_args>: Change element type to gdb::string_view.
12110         (user_args::insert_args): Adjust.
12111
12112 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12113
12114         * common/gdb_string_view.h: New file.
12115         * common/gdb_string_view.tcc: New file.
12116
12117 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12118
12119         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12120         * configure: Re-generate.
12121
12122 2018-04-09  Pedro Alves  <palves@redhat.com>
12123
12124         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12125         (set_target_gdbarch): Call
12126         gdb::observers::architecture_changed.notify instead of
12127         observer_notify_architecture_changed.
12128
12129 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12130
12131         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12132         (do_restore_current_traceframe_cleanup): Remove.
12133         (restore_current_traceframe_cleanup_dtor): Remove.
12134         (make_cleanup_restore_current_traceframe): Remove.
12135         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12136         New.
12137         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12138         * infrun.c (fetch_inferior_event): Use
12139         scoped_restore_current_traceframe.
12140
12141 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12142
12143         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12144         Remove.
12145         <n_allocated_type_units>: Remove.
12146         <all_type_units>: Change to std::vector.
12147         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12148         to std::vector change.
12149         (dwarf2_per_objfile::get_cutu): Likewise.
12150         (dwarf2_per_objfile::get_tu): Likewise.
12151         (create_signatured_type_table_from_index): Likewise.
12152         (create_signatured_type_table_from_debug_names): Likewise.
12153         (dw2_symtab_iter_next): Likewise.
12154         (dw2_print_stats): Likewise.
12155         (dw2_expand_all_symtabs): Likewise.
12156         (dw2_expand_marked_cus): Likewise.
12157         (dw2_debug_names_iterator::next): Likewise.
12158         (dwarf2_initialize_objfile): Likewise.
12159         (add_signatured_type_cu_to_table): Likewise.
12160         (create_all_type_units): Likewise.
12161         (add_type_unit): Likewise.
12162         (struct tu_abbrev_offset): Add constructor.
12163         (build_type_psymtabs_1): Adjust to std::vector change.
12164         (print_tu_stats): Likewise.
12165         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12166         (write_debug_names): Likewise.
12167
12168 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12169
12170         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12171         Make an std::vector.
12172         <n_comp_units>: Remove.
12173         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12174         to std::vector change.
12175         (dwarf2_per_objfile::get_cutu): Likewise.
12176         (dwarf2_per_objfile::get_cu): Likewise.
12177         (create_cus_from_index): Likewise.
12178         (create_addrmap_from_index): Likewise.
12179         (create_addrmap_from_aranges): Likewise.
12180         (dwarf2_read_index): Likewise.
12181         (dw2_find_last_source_symtab): Likewise.
12182         (dw2_map_symtabs_matching_filename): Likewise.
12183         (dw2_symtab_iter_next): Likewise.
12184         (dw2_print_stats): Likewise.
12185         (dw2_expand_all_symtabs): Likewise.
12186         (dw2_expand_symtabs_with_fullname): Likewise.
12187         (dw2_expand_marked_cus): Likewise.
12188         (dw2_map_symbol_filenames): Likewise.
12189         (create_cus_from_debug_names): Likewise.
12190         (dwarf2_read_debug_names): Likewise.
12191         (dw2_debug_names_iterator::next): Likewise.
12192         (dwarf2_initialize_objfile): Likewise.
12193         (set_partial_user): Likewise.
12194         (dwarf2_build_psymtabs_hard): Likewise.
12195         (read_comp_units_from_section): Remove arguments, adjust to
12196         std::vector change.
12197         (create_all_comp_units): Adjust to std::vector and
12198         read_comp_units_from_section changes.
12199         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12200         change.
12201         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12202         (psyms_seen_size): Likewise.
12203         (write_gdbindex): Likewise.
12204         (write_debug_names): Likewise.
12205
12206 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12207
12208         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12209         with dwarf2_per_objfile.
12210         (create_cus_from_index): Likewise.
12211         (create_signatured_type_table_from_index): Likewise.
12212         (dwarf2_read_index): Likewise.
12213         (dwarf2_initialize_objfile): Likewise.
12214         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12215         per_cu rather than get_dwarf2_per_objfile.
12216
12217 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12218
12219         * dwarf2read.h (struct signatured_type): Forward declare.
12220         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12221         New methods.
12222         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12223         (dw2_get_cutu): ...this.
12224         (dwarf2_per_objfile::get_cu): Rename from...
12225         (dw2_get_cu): ...this.
12226         (dwarf2_per_objfile::get_tu): New.
12227         (create_addrmap_from_index): Adjust.
12228         (create_addrmap_from_aranges): Adjust.
12229         (dw2_find_last_source_symtab): Adjust.
12230         (dw2_map_symtabs_matching_filename): Adjust.
12231         (dw2_symtab_iter_next): Adjust.
12232         (dw2_print_stats): Adjust.
12233         (dw2_expand_all_symtabs): Adjust.
12234         (dw2_expand_symtabs_with_fullname): Adjust.
12235         (dw2_expand_marked_cus): Adjust.
12236         (dw_expand_symtabs_matching_file_matcher): Adjust.
12237         (dw2_map_symbol_filenames): Adjust.
12238         (dw2_debug_names_iterator::next): Adjust.
12239         (dwarf2_initialize_objfile): Adjust.
12240         (set_partial_user): Adjust.
12241         (dwarf2_build_psymtabs_hard): Adjust.
12242
12243 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12244
12245         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12246         Remove unused variables.
12247         (dw2_map_symtabs_matching_filename): Likewise.
12248         (dwarf2_record_block_ranges): Likewise.
12249         (dwarf2_read_addr_index): Likewise.
12250         (follow_die_offset): Likewise.
12251
12252 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12253
12254         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12255         to symbol_file_add_main.
12256
12257 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12258
12259         PR mi/22299
12260         * mi/mi-console.c (do_fputc_async_safe): New.
12261         (mi_console_file::write_async_safe): New.
12262         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12263         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12264         New.
12265         * ui-file.c (ui_file::putstrn): Adjust call to
12266         fputstrn_unfiltered.
12267         * utils.c (printchar): Replace do_fputs and do_fprintf
12268         parameters by do_fputc.
12269         (fputstr_filtered): Adjust call to printchar.
12270         (fputstr_unfiltered): Likewise.
12271         (fputstrn_filtered): Likewise.
12272         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12273         printchar.
12274         * utils.h (do_fputc_ftype): New typedef.
12275         (fputstrn_unfiltered): Add do_fputc parameter.
12276
12277 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12278
12279         * regformats/i386/i386-avx.dat: Remove.
12280
12281 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12282
12283         PR gdb/22979
12284         * amd64-tdep.c (amd64_none_init_abi): New function.
12285         (amd64_x32_none_init_abi): New function.
12286         (_initialize_amd64_tdep): Register handlers for x86-64 and
12287         x64_32 with GDB_OSABI_NONE.
12288         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12289         GDB_OSABI_NONE osabi.
12290
12291 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12292
12293         PR gdb/22980
12294         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12295         GDB_OSABI_NONE.
12296         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12297         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12298
12299 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12300
12301         * common/byte-vector.h (char_vector): New type.
12302         * target.h (target_read_alloc): Return
12303         gdb::optional<byte_vector>.
12304         (target_read_stralloc): Return gdb::optional<char_vector>.
12305         (target_get_osdata): Return gdb::optional<char_vector>.
12306         * target.c (target_read_alloc_1): Templatize.  Replacement
12307         manual memory management with vector.
12308         (target_read_alloc): Change return type, adjust.
12309         (target_read_stralloc): Change return type, adjust.
12310         (target_get_osdata): Change return type, adjust.
12311         * auxv.c (struct auxv_info) <length>: Remove.
12312         <data>: Change type to gdb::optional<byte_vector>.
12313         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12314         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12315         (target_auxv_search): Adjust.
12316         (fprint_target_auxv): Adjust.
12317         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12318         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12319         (linux_make_corefile_notes): Adjust.
12320         * osdata.c (get_osdata): Adjust.
12321         * remote.c (remote_get_threads_with_qxfer): Adjust.
12322         (remote_memory_map): Adjust.
12323         (remote_traceframe_info): Adjust.
12324         (btrace_read_config): Adjust.
12325         (remote_read_btrace): Adjust.
12326         (remote_pid_to_exec_file): Adjust.
12327         * solib-aix.c (solib_aix_get_library_list): Adjust.
12328         * solib-dsbt.c (decode_loadmap): Don't free buf.
12329         (dsbt_get_initial_loadmaps): Adjust.
12330         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12331         * solib-target.c (solib_target_current_sos): Adjust.
12332         * tracepoint.c (sdata_make_value): Adjust.
12333         * xml-support.c (xinclude_start_include): Adjust.
12334         (xml_fetch_content_from_file): Adjust.
12335         * xml-support.h (xml_fetch_another): Change return type.
12336         (xml_fetch_content_from_file): Change return type.
12337         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12338         * xml-tdesc.c (file_read_description_xml): Adjust.
12339         (fetch_available_features_from_target): Change return type.
12340         (target_fetch_description_xml): Adjust.
12341         (target_read_description_xml): Adjust.
12342
12343 2018-04-06  Tom Tromey  <tom@tromey.com>
12344
12345         * value.c (~value): Update.
12346         (struct value) <contents>: Now unique_xmalloc_ptr.
12347         (value_contents_bits_eq, allocate_value_contents)
12348         (value_contents_raw, value_contents_all_raw)
12349         (value_contents_for_printing, value_contents_for_printing_const)
12350         (set_value_enclosing_type): Update.
12351
12352 2018-04-06  Tom Tromey  <tom@tromey.com>
12353
12354         * value.c (range_s): Remove typedef, VEC.
12355         (struct range): Add operator<.
12356         (range_lessthan): Remove.
12357         (ranges_contain): Change type.
12358         (~value): Update.
12359         (struct value) <unavailable, optimized_out>: Now std::vector.
12360         (value_entirely_available)
12361         (value_entirely_covered_by_range_vector)
12362         (value_entirely_unavailable, value_entirely_optimized_out):
12363         Update.
12364         (insert_into_bit_range_vector): Change argument type.
12365         (find_first_range_overlap): Likewise.
12366         (struct ranges_and_idx, value_contents_bits_eq)
12367         (require_not_optimized_out, require_available): Update.
12368         (ranges_copy_adjusted): Change argument types.
12369         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12370
12371 2018-04-06  Tom Tromey  <tom@tromey.com>
12372
12373         * value.c (~value): Update.
12374         (struct value) <parent>: Now a value_ref_ptr.
12375         (value_parent, set_value_parent, value_address, value_copy):
12376         Update.
12377
12378 2018-04-06  Tom Tromey  <tom@tromey.com>
12379
12380         * value.c (struct value): Add constructor, destructor, and member
12381         initializers.
12382         (allocate_value_lazy, value_decref): Update.
12383
12384 2018-04-06  Tom Tromey  <tom@tromey.com>
12385
12386         * value.c (struct value) <released, next>: Remove.
12387         (all_values): Now a std::vector.
12388         (allocate_value_lazy): Update.
12389         (value_next): Remove.
12390         (value_mark, value_free_to_mark, release_value)
12391         (value_release_to_mark): Update.
12392
12393 2018-04-06  Tom Tromey  <tom@tromey.com>
12394
12395         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12396         (free_value_chain): Remove.
12397         * value.c (free_value_chain): Remove.
12398         (value_release_to_mark): Return a std::vector.
12399         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12400         std::vector.
12401         (check_condition): Update.
12402         * eval.c (fetch_subexp_value): Change "val_chain" to a
12403         std::vector.
12404         * breakpoint.c (update_watchpoint): Update.
12405         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12406
12407 2018-04-06  Tom Tromey  <tom@tromey.com>
12408
12409         * value.h (free_all_values): Remove.
12410         * value.c (free_all_values): Remove.
12411
12412 2018-04-06  Tom Tromey  <tom@tromey.com>
12413
12414         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12415         (value_history_chain, value_history_count): Remove.
12416         (value_history): New global.
12417         (record_latest_value, access_value_history, show_values)
12418         (preserve_values): Update.
12419
12420 2018-04-06  Tom Tromey  <tom@tromey.com>
12421
12422         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12423         * varobj.c (varobj_set_display_format, varobj_set_value)
12424         (install_default_visualizer, construct_visualizer)
12425         (install_new_value, ~varobj, varobj_get_value_type)
12426         (my_value_of_variable, varobj_editable_p): Update.
12427         * c-varobj.c (c_describe_child, c_value_of_variable)
12428         (cplus_number_of_children, cplus_describe_child): Update.
12429         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12430         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12431         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12432
12433 2018-04-06  Tom Tromey  <tom@tromey.com>
12434
12435         * printcmd.c (last_examine_address): Change type to
12436         value_ref_ptr.
12437         (do_examine, x_command): Update.
12438
12439 2018-04-06  Tom Tromey  <tom@tromey.com>
12440
12441         * value.c (release_value): Update.
12442         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12443         (struct bpstats) <val>: Now a value_ref_ptr.
12444         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12445         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12446         (~watchpoint, print_it_watchpoint, watch_command_1)
12447         (invalidate_bp_value_on_memory_change): Update.
12448
12449 2018-04-06  Tom Tromey  <tom@tromey.com>
12450
12451         * varobj.c (varobj_clear_saved_item)
12452         (update_dynamic_varobj_children, install_new_value, ~varobj):
12453         Update.
12454         * value.h (value_incref): Move declaration earlier.
12455         (value_decref): Rename from value_free.
12456         (struct value_ref_policy): New.
12457         (value_ref_ptr): New typedef.
12458         (struct value_deleter): Remove.
12459         (gdb_value_up): Remove typedef.
12460         (release_value): Change return type.
12461         (release_value_or_incref): Remove.
12462         * value.c (set_value_parent): Update.
12463         (value_incref): Change return type.
12464         (value_decref): Rename from value_free.
12465         (value_free_to_mark, free_all_values, free_value_chain): Update.
12466         (release_value): Return value_ref_ptr.
12467         (release_value_or_incref): Remove.
12468         (record_latest_value, set_internalvar, clear_internalvar):
12469         Update.
12470         * stack.c (info_frame_command): Don't call value_free.
12471         * python/py-value.c (valpy_dealloc, valpy_new)
12472         (value_to_value_object): Update.
12473         * printcmd.c (do_examine): Update.
12474         * opencl-lang.c (lval_func_free_closure): Update.
12475         * mi/mi-main.c (register_changed_p): Don't call value_free.
12476         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12477         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12478         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12479         value_free.
12480         * guile/scm-value.c (vlscm_free_value_smob)
12481         (vlscm_scm_from_value): Update.
12482         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12483         (frame_unwind_register_unsigned, get_frame_register_bytes)
12484         (put_frame_register_bytes): Don't call value_free.
12485         * findvar.c (address_from_register): Don't call value_free.
12486         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12487         * dwarf2loc.c (entry_data_value_free_closure)
12488         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12489         (dwarf2_evaluate_loc_desc_full): Update.
12490         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12491         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12492         (~watchpoint, watch_command_1)
12493         (invalidate_bp_value_on_memory_change): Update.
12494         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12495
12496 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12497
12498         PR gdb/23022
12499         * warning.m4: Add -Wno-error=deprecated-register.
12500         * configure: Re-generate.
12501
12502 2018-04-05  Tom Tromey  <tom@tromey.com>
12503
12504         * linespec.h: Remove include of "vec.h".
12505
12506 2018-04-05  Tom Tromey  <tom@tromey.com>
12507
12508         * linespec.c (typep): Remove typedef.
12509         (find_methods, find_superclass_methods): Take a std::vector.
12510         (find_method): Use std::vector.
12511
12512 2018-04-05  Tom Tromey  <tom@tromey.com>
12513
12514         * utils.c (compare_strings): Remove.
12515         * utils.h (compare_strings): Remove.
12516         * objc-lang.h (find_imps): Update.
12517         * objc-lang.c (find_methods): Take a std::vector.
12518         (uniquify_strings, find_imps): Likewise.
12519         * linespec.c (find_methods): Take a std::vector.
12520         (decode_objc): Use std::vector.
12521         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12522         a std::vector.
12523         (find_method, find_function_symbols): Use std::vector.
12524
12525 2018-04-05  Tom Tromey  <tom@tromey.com>
12526
12527         * completer.c (completion_tracker::completion_tracker): Remove
12528         cast.
12529         (completion_tracker::discard_completions): Likewise.
12530         * breakpoint.c (ambiguous_names_p): Remove cast.
12531         * ada-lang.c (_initialize_ada_language): Remove cast.
12532         * utils.h (streq): Update.
12533         (streq_hash): Add new declaration.
12534         * utils.c (streq): Return bool.
12535         (streq_hash): New function.
12536
12537 2018-04-05  Tom Tromey  <tom@tromey.com>
12538
12539         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12540         Remove a string copy.
12541
12542 2018-04-05  Tom Tromey  <tom@tromey.com>
12543
12544         * linespec.c (filter_results): Use std::vector.
12545         (decode_line_2, decode_line_full): Update.
12546
12547 2018-04-05  Tom Tromey  <tom@tromey.com>
12548
12549         * linespec.c (canonical_to_fullform): Return std::string.
12550         (filter_results): Update.
12551         (struct decode_line_2_item): Add constructor.
12552         <fullform, displayform>: Now std::string.
12553         (decode_line_2_compare_items): Now a std::sort comparator.
12554         (decode_line_2): Update.
12555
12556 2018-04-05  Tom Tromey  <tom@tromey.com>
12557
12558         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12559         (unexpected_linespec_error): Update.
12560         (linespec_parse_basic, parse_linespec): Update.
12561
12562 2018-04-05  Tom Tromey  <tom@tromey.com>
12563
12564         * linespec.c (linespec_parse_basic): Reindent.
12565
12566 2018-04-05  Tom Tromey  <tom@tromey.com>
12567
12568         * minsyms.h (iterate_over_minimal_symbols): Update.
12569         * minsyms.c (iterate_over_minimal_symbols): Take a
12570         gdb::function_view.
12571         * linespec.c (struct collect_minsyms): Remove.
12572         (compare_msyms): Now a std::sort comparator.
12573         (add_minsym): Add parameters.
12574         (search_minsyms_for_name): Update.  Use std::vector.
12575
12576 2018-04-03  Tom Tromey  <tom@tromey.com>
12577
12578         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12579         gdb::byte_vector.
12580
12581 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12582
12583         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12584
12585 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12586
12587         PR gdb/16959
12588         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12589         printing static type.
12590
12591 2018-04-01  Tom Tromey  <tom@tromey.com>
12592
12593         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12594         (rs6000_xfer_shared_libraries): Update.
12595
12596 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12597
12598         * common/gdb_vecs.h (char_ptr): Remove.
12599         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12600
12601 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12602
12603         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12604         with std::vector.
12605         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12606
12607 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12608
12609         * tracepoint.h (struct uploaded_tp): Initialize fields.
12610         <actions, step_actions, cmd_strings>: Change type to
12611         std::vector<char *>.
12612         * tracepoint.c (get_uploaded_tp): Allocate with new.
12613         (free_uploaded_tps): Free with delete.
12614         (parse_tracepoint_definition): Adjust to std::vector change.
12615         * breakpoint.c (read_uploaded_action): Likewise.
12616         (create_tracepoint_from_upload): Likewise.
12617         * ctf.c (ctf_write_uploaded_tp): Likewise.
12618         (SET_ARRAY_FIELD): Likewise.
12619         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12620
12621 2018-03-30  Tom Tromey  <tom@tromey.com>
12622
12623         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12624         std::unique_ptr.
12625         (svr4_keep_data_in_core): Update.
12626         (svr4_read_so_list): Update.
12627
12628 2018-03-30  Tom Tromey  <tom@tromey.com>
12629
12630         * windows-nat.c (handle_output_debug_string, handle_exception):
12631         Update.
12632         * target.h (target_read_string): Update.
12633         * target.c (target_read_string): Change "string" to
12634         unique_xmalloc_ptr.
12635         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12636         Update.
12637         * solib-frv.c (frv_current_sos): Update.
12638         * solib-dsbt.c (dsbt_current_sos): Update.
12639         * solib-darwin.c (darwin_current_sos): Update.
12640         * linux-thread-db.c (inferior_has_bug): Update.
12641         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12642         Update.  Remove alloca.
12643         * ada-lang.c (ada_main_name): Update.
12644
12645 2018-03-30  Tom Tromey  <tom@tromey.com>
12646
12647         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12648         (struct dwo_file_deleter): New.
12649         (dwo_file_up): New typedef.
12650         (open_and_init_dwo_file): Use dwo_file_up.
12651         (free_dwo_file_cleanup): Remove.
12652
12653 2018-03-30  Tom Tromey  <tom@tromey.com>
12654
12655         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12656         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12657
12658 2018-03-30  Tom Tromey  <tom@tromey.com>
12659
12660         * dwarf2read.c (class free_cached_comp_units): New class.
12661         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12662         (free_cached_comp_units): Remove function.
12663
12664 2018-03-30  Tom Tromey  <tom@tromey.com>
12665
12666         * utils.h (make_cleanup_unpush_target): Remove.
12667         * inf-ptrace.c (struct target_unpusher): New.
12668         (target_unpush_up) New typedef.
12669         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12670         target_unpush_up.
12671         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12672
12673 2018-03-27  Tom Tromey  <tom@tromey.com>
12674
12675         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12676
12677 2018-03-27  Pedro Alves  <palves@redhat.com>
12678             Tom Tromey  <tom@tromey.com>
12679
12680         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12681         destructor.  Now a class.
12682         (gdb_readline_wrapper_cleanup): Remove function.
12683         (gdb_readline_wrapper): Remove cleanups.
12684
12685 2018-03-27  Tom Tromey  <tom@tromey.com>
12686
12687         * typeprint.h (struct type_print_options) <local_typedefs,
12688         global_typedefs>: Remove "struct" keyword.
12689         (class typedef_hash_table): New class.
12690         (recursively_update_typedef_hash, add_template_parameters)
12691         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12692         (find_typedef_in_hash): Don't declare.
12693         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12694         (typedef_hash_table::recursively_update): Rename from
12695         recursively_update_typedef_hash.  Now a member.
12696         (typedef_hash_table::add_template_parameters): Rename from
12697         add_template_parameters.  Now a member.
12698         (typedef_hash_table::typedef_hash_table): Now a constructor;
12699         rename from create_typedef_hash.
12700         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12701         rename from free_typedef_hash.
12702         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12703         (do_free_global_table): Remove.
12704         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12705         from copy_type_recursive.
12706         (create_global_typedef_table): Remove.
12707         (typedef_hash_table::find_global_typedef): Now a member of
12708         typedef_hash_table.
12709         (typedef_hash_table::find_typedef): Rename from
12710         find_typedef_in_hash; now a member.
12711         (whatis_exp): Update.
12712         * extension.h (struct ext_lang_type_printers): Add constructor and
12713         destructor.
12714         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12715         declare.
12716         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12717         Now a constructor; rename from start_ext_lang_type_printers.
12718         (ext_lang_type_printers): Now a destructor; rename from
12719         free_ext_lang_type_printers.
12720         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12721         Update.
12722         (c_type_print_base_struct_union): Update.  Remove cleanups.
12723
12724 2018-03-27  Tom Tromey  <tom@tromey.com>
12725
12726         * dwarf-index-write.c: Include <cmath>.
12727
12728 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12729
12730         * NEWS: Add entry describing new "set|show varsize-limit" command.
12731         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12732         command.
12733         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12734         "set variable".
12735
12736 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12737
12738         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12739         dwarf-index-write.c
12740         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12741         * dwarf-index-common.c: New file.
12742         * dwarf-index-common.h: New file.
12743         * dwarf-index-write.c: New file.
12744         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12745         (struct dwarf2_section_info): Move from here.
12746         (dwarf2_section_info_def): Likewise.
12747         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12748         (offset_type): Likewise.
12749         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12750         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12751         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12752         (byte_swap): Likewise.
12753         (MAYBE_SWAP): Likewise.
12754         (dwarf2_per_cu_ptr): Likewise.
12755         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12756         (struct tu_stats): Likewise.
12757         (struct dwarf2_per_objfile): Likewise.
12758         (struct dwarf2_per_cu_data): Likewise.
12759         (struct signatured_type): Likewise.
12760         (sig_type_ptr): Likewise.
12761         (DEF_VEC_P (sig_type_ptr)): Likewise.
12762         (INDEX4_SUFFIX): Likewise.
12763         (INDEX5_SUFFIX): Likewise.
12764         (DEBUG_STR_SUFFIX): Likewise.
12765         (dwarf2_read_section): Make non-static.
12766         (mapped_index_string_hash): Move from here.
12767         (dwarf5_djb_hash): Likewise.
12768         (file_write): Likewise.
12769         (class data_buf): Likewise.
12770         (struct symtab_index_entry): Likewise.
12771         (struct mapped_symtab): Likewise.
12772         (find_slot): Likewise.
12773         (hash_expand): Likewise.
12774         (add_index_entry): Likewise.
12775         (uniquify_cu_indices): Likewise.
12776         (class c_str_view): Likewise.
12777         (class c_str_view_hasher): Likewise.
12778         (class vector_hasher): Likewise.
12779         (write_hash_table): Likewise.
12780         (psym_index_map): Likewise.
12781         (struct addrmap_index_data): Likewise.
12782         (add_address_entry): Likewise.
12783         (add_address_entry_worker): Likewise.
12784         (write_address_map): Likewise.
12785         (symbol_kind): Likewise.
12786         (write_psymbols): Likewise.
12787         (struct signatured_type_index_data): Likewise.
12788         (write_one_signatured_type): Likewise.
12789         (recursively_count_psymbols): Likewise.
12790         (recursively_write_psymbols): Likewise.
12791         (class debug_names): Likewise.
12792         (check_dwarf64_offsets): Likewise.
12793         (psyms_seen_size): Likewise.
12794         (write_gdbindex): Likewise.
12795         (write_debug_names): Likewise.
12796         (assert_file_size): Likewise.
12797         (write_psymtabs_to_index): Likewise.
12798         (save_gdb_index_command): Likewise.
12799         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12800         command.
12801         * dwarf2read.h: New file.
12802
12803 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12804
12805         PR gdb/22670
12806         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12807         symbol name if the CU's language stores symbol names in linkage
12808         format.
12809         * language.h (struct language_defn)
12810         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12811         all instances of this struct.
12812
12813 2018-03-26  Tom Tromey  <tom@tromey.com>
12814
12815         * stack.c (backtrace_command_1): Remove verbose code.
12816
12817 2018-03-26  Tom Tromey  <tom@tromey.com>
12818
12819         * python/py-framefilter.c (py_print_type): Don't catch
12820         exceptions.  Return void.
12821         (py_print_value): Likewise.
12822         (py_print_single_arg): Likewise.
12823         (enumerate_args): Don't catch exceptions.
12824         (py_print_args): Likewise.
12825         (py_print_frame): Likewise.
12826         (gdbpy_apply_frame_filter): Catch exceptions here.
12827
12828 2018-03-26  Tom Tromey  <tom@tromey.com>
12829
12830         * stack.c (_initialize_stack): Remove trailing newlines from help
12831         text.  Add "Usage" line to "backtrace" help.
12832
12833 2018-03-26  Tom Tromey  <tom@tromey.com>
12834
12835         PR python/16486:
12836         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12837
12838 2018-03-26  Tom Tromey  <tom@tromey.com>
12839
12840         * python/py-framefilter.c (py_print_single_arg): Return
12841         EXT_LANG_BT_ERROR from catch.
12842
12843 2018-03-26  Tom Tromey  <tom@tromey.com>
12844
12845         PR backtrace/15584:
12846         * stack.c (backtrace_command_1): Move some code into no-filters
12847         "if".
12848
12849 2018-03-26  Tom Tromey  <tom@tromey.com>
12850
12851         * python/py-framefilter.c (throw_quit_or_print_exception): New
12852         function.
12853         (gdbpy_apply_frame_filter): Use it.
12854
12855 2018-03-26  Tom Tromey  <tom@tromey.com>
12856
12857         PR cli/17716:
12858         * python/py-framefilter.c (py_print_type, py_print_value)
12859         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12860         RETURN_MASK_ERROR.
12861
12862 2018-03-26  Tom Tromey  <tom@tromey.com>
12863
12864         * python/py-framefilter.c (enumerate_args): Use
12865         gdb::unique_xmalloc_ptr.
12866
12867 2018-03-26  Tom Tromey  <tom@tromey.com>
12868
12869         * python/py-framefilter.c (py_print_frame): Return
12870         EXT_LANG_BT_OK.
12871         (gdbpy_apply_frame_filter): Update comment.
12872         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12873         Remove.
12874         <EXT_LANG_BT_NO_FILTERS>: Change value.
12875
12876 2018-03-26  Tom Tromey  <tom@tromey.com>
12877
12878         PR backtrace/15582:
12879         * stack.c (backtrace_command): Parse "hide" argument.
12880         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12881         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12882         constant.
12883
12884 2018-03-26  Tom Tromey  <tom@tromey.com>
12885
12886         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12887         add "flags".
12888         (backtrace_command): Remove "fulltrace", add "flags".
12889
12890 2018-03-26  Tom Tromey  <tom@tromey.com>
12891
12892         * stack.c (backtrace_command): Rewrite command line parsing.
12893
12894 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12895
12896         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12897
12898 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12899
12900         * filename-seen-cache.h: Add include guard.
12901
12902 2018-03-26  Keith Seitz  <keiths@redhat.com>
12903
12904         * symfile.c (place_section): Remove "struct" from section_addr_info
12905         in comment.
12906         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12907         "struct" keyword from section_addr_info.
12908
12909 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12910
12911         * regformats/regdef.h (reg): Add constructors.
12912
12913 2018-03-25  Pedro Alves  <palves@redhat.com>
12914
12915         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12916         if then/else bodies in var_func_name extraction.
12917
12918 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12919
12920         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12921         lookup_minimal_symbol() to find symbol entry.
12922         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12923
12924 2018-03-23  Keith Seitz  <keiths@redhat.com>
12925
12926         PR c++/22968
12927         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12928         nested type definitions for C++, too.
12929
12930 2018-03-23  Tom Tromey  <tom@tromey.com>
12931
12932         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12933         a typedef.
12934         (macho_register_oso): Remove.
12935         (macho_symtab_read): Take a std::vector.
12936         (oso_el_compare_name): Now a std::sort comparator.
12937         (macho_symfile_read_all_oso): Take a std::vector.
12938         (macho_symfile_read): Use std::vector.  Remove cleanups.
12939
12940 2018-03-22  Tom Tromey  <tom@tromey.com>
12941
12942         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12943         (record_full_goto_bookmark): Use std::string.
12944
12945 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12946
12947         PR tdep/18295
12948         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12949         a single mask.
12950
12951 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12952
12953         * rs6000-tdep.c (store_insn_p): New function.
12954         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12955         and cr_reg to their unshifted values. Use store_insn_p to
12956         match LR saves using either R1 or fdata->alloca_reg. Use
12957         store_insn_p to match CR saves. Set alloca_reg_offset
12958         when alloca_reg and framep are set. Remove lr_reg shift
12959         when assigning to fdata->lr_register.
12960
12961 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12962
12963         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12964         command line args instead of emitting a warning.
12965
12966 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12967
12968         * tracepoint.h (struct static_tracepoint_marker): Initialize
12969         fields, define default constructor, move constructor and move
12970         assignment, disable the rest.
12971         <str_id, extra>: Make std::string.
12972         (release_static_tracepoint_marker): Remove.
12973         (free_current_marker): Remove.
12974         * tracepoint.c (free_current_marker): Remove.
12975         (parse_static_tracepoint_marker_definition): Adjust to
12976         std::string, use new hex2str overload.
12977         (release_static_tracepoint_marker): Remove.
12978         (print_one_static_tracepoint_marker): Get marker by reference
12979         and adjust to std::string.
12980         (info_static_tracepoint_markers_command): Adjust to std::vector
12981         changes
12982         * target.h (static_tracepoint_marker_p): Remove typedef.
12983         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12984         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12985         bool.
12986         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12987         * target-debug.h
12988         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12989         (target_debug_print_std_vector_static_tracepoint_marker): New.
12990         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12991         to...
12992         (target_debug_print_static_tracepoint_marker_p): ... this.
12993         * target-delegates.c: Re-generate.
12994         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12995         Make std::string.
12996         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12997         (decode_static_tracepoint_spec): Adjust to std::vector.
12998         (tracepoint_print_one_detail): Adjust to std::string.
12999         (strace_marker_decode_location): Adjust to std::string.
13000         (update_static_tracepoint): Adjust to std::string, remove call
13001         to release_static_tracepoint_marker.
13002         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13003         Adjust to std::vector.
13004         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13005         (remote_static_tracepoint_markers_by_strid): Adjust to
13006         std::vector.
13007         * common/rsp-low.h (hex2str): New overload with explicit count
13008         of bytes.
13009         * common/rsp-low.c (hex2str): New overload with explicit count
13010         of bytes.
13011         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13012         (_initialize_rsp_low_selftests): Add test_hex2str test.
13013         * unittests/tracepoint-selftests.c
13014         (test_parse_static_tracepoint_marker_definition): Adjust to
13015         std::string.
13016
13017 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13018
13019         * tracepoint.c (parse_static_tracepoint_marker_definition):
13020         Consider case where the definition is followed by more
13021         definitions.
13022         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13023         tracepoint-selftests.c.
13024         * unittests/tracepoint-selftests.c: New.
13025
13026 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13027
13028         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13029         Carvalho.
13030
13031 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13032
13033         * symtab.c (find_pc_sect_line): fixed indentation.
13034
13035 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13036
13037         * symtab.c (find_pc_sect_line): now uses binary search.
13038
13039 2018-03-19  Tom Tromey  <tom@tromey.com>
13040
13041         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13042         "IDENT" production.
13043
13044 2018-03-19  Pedro Alves  <palves@redhat.com>
13045             Tom Tromey  <tom@tromey.com>
13046
13047         * unittests/observable-selftests.c: New file.
13048         * common/observable.h: New file.
13049         * observable.h: New file.
13050         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13051         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13052         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13053         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13054         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13055         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13056         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13057         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13058         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13059         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13060         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13061         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13062         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13063         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13064         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13065         tui/tui-interp.c, valops.c: Update all users.
13066         * tui/tui-hooks.c (tui_bp_created_observer)
13067         (tui_bp_deleted_observer, tui_bp_modified_observer)
13068         (tui_inferior_exit_observer, tui_before_prompt_observer)
13069         (tui_normal_stop_observer, tui_register_changed_observer):
13070         Remove.
13071         (tui_observers_token): New global.
13072         (attach_or_detach, tui_attach_detach_observers): New functions.
13073         (tui_install_hooks, tui_remove_hooks): Use
13074         tui_attach_detach_observers.
13075         * record-btrace.c (record_btrace_thread_observer): Remove.
13076         (record_btrace_thread_observer_token): New global.
13077         * observer.sh: Remove.
13078         * observer.c: Rename to observable.c.
13079         * observable.c (namespace gdb_observers): Define new objects.
13080         (observer_debug): Move into gdb_observers namespace.
13081         (struct observer, struct observer_list, xalloc_observer_list_node)
13082         (xfree_observer_list_node, generic_observer_attach)
13083         (generic_observer_detach, generic_observer_notify): Remove.
13084         (_initialize_observer): Update.
13085         Don't include observer.inc.
13086         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13087         (clean mostlyclean): Likewise.
13088         (observer.h, observer.inc): Remove targets.
13089         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13090         (COMMON_SFILES): Use observable.c, not observer.c.
13091         * .gitignore: Remove observer.h.
13092
13093 2018-03-18  Tom Tromey  <tom@tromey.com>
13094
13095         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13096         gdb::def_vector.
13097         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13098
13099 2018-03-17  Tom Tromey  <tom@tromey.com>
13100
13101         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13102
13103 2018-03-17  Tom Tromey  <tom@tromey.com>
13104
13105         * target.c (class scoped_target_fd): New.
13106         (target_fileio_close_cleanup): Remove.
13107         (target_fileio_read_alloc_1): Use scoped_target_fd.
13108
13109 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13110
13111         * silent-rules.mk: New.
13112         * Makefile.in: Include silent-rules.mk
13113         (srcdir, VPATH, top_srcdir): Move up.
13114         (COMPILE): Add ECHO_CXX.
13115         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13116         (init.c): Add ECHO_INIT_C.
13117         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13118         (version.c): Add ECHO_GEN.
13119         (printcmd.o): Add ECHO_CXX.
13120         (target-float.o): Add ECHO_CXX.
13121         (ada-exp.o): Add ECHO_CXX.
13122         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13123         (insight$(EXEEXT)): Add ECHO_CXXLD.
13124         * gnulib/configure.ac: Add AM_SILENT_RULES.
13125         * gnulib/aclocal.m4: Re-generate.
13126         * gnulib/configure: Re-generate.
13127         * gnulib/import/Makefile.in: Re-generate.
13128
13129 2018-03-16  Tom Tromey  <tom@tromey.com>
13130
13131         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13132         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13133         * utils.c (do_free_section_addr_info)
13134         (make_cleanup_free_section_addr_info): Remove.
13135         * symfile.h (struct other_sections): Add constructor.
13136         (struct section_addr_info): Remove.
13137         (section_addr_info): New typedef.
13138         (struct sym_fns) <sym_offsets>: Change type of parameter.
13139         (build_section_addr_info_from_objfile)
13140         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13141         (default_symfile_offsets, symbol_file_add)
13142         (symbol_file_add_from_bfd)
13143         (build_section_addr_info_from_section_table): Update.
13144         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13145         * symfile.c (alloc_section_addr_info): Remove.
13146         (build_section_addr_info_from_section_table): Change return type.
13147         Update.
13148         (build_section_addr_info_from_bfd)
13149         (build_section_addr_info_from_objfile): Likewise.
13150         (free_section_addr_info): Remove.
13151         (relative_addr_info_to_section_offsets): Change type of "addrs".
13152         (addrs_section_compar): Now a std::sort comparator.
13153         (addrs_section_sort): Change return type.
13154         (addr_info_make_relative): Change type of "addrs".  Update.
13155         (default_symfile_offsets, syms_from_objfile_1)
13156         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13157         (symbol_file_add_separate): Update.
13158         (symbol_file_add): Change type of "addrs".  Update.
13159         (add_symbol_file_command): Update.  Remove cleanups.
13160         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13161         cleanups.
13162         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13163         * solib.c (solib_read_symbols): Update.
13164         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13165         * machoread.c (macho_symfile_offsets): Update.
13166         * jit.c (jit_bfd_try_read_symtab): Update.
13167
13168 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13169
13170         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13171         unittests/utils-selftests.c.
13172         * unittests/utils-selftests.c: New file.
13173
13174 2018-03-14  Tom Tromey  <tom@tromey.com>
13175
13176         PR cli/14977:
13177         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13178         for NULL.
13179
13180 2018-03-14  Tom Tromey  <tom@tromey.com>
13181
13182         PR cli/19918:
13183         * printcmd.c (printf_pointer): Allow "-" in format.
13184
13185 2018-03-14  Tom Tromey  <tom@tromey.com>
13186
13187         * printcmd.c (_initialize_printcmd): Add usage to printf.
13188
13189 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13190
13191         * MAINTAINERS: Update my email address.
13192
13193 2018-03-13  Tom Tromey  <tom@tromey.com>
13194
13195         * machoread.c (macho_check_dsym): Change filenamep to a
13196         std::string*.
13197         (macho_symfile_read): Update.
13198         * symfile.c (load_command): Use std::string.
13199
13200 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13201
13202         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13203         to error message string.
13204         (riscv_register_name): Use xsnprintf instead of sprintf.
13205         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13206         internal_error.
13207         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13208         error.
13209         (riscv_push_dummy_call): Likewise.
13210
13211 2018-03-12  Tom Tromey  <tom@tromey.com>
13212
13213         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13214         Use gdb::byte_vector.
13215         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13216
13217 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13218
13219         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13220         parameter type to readable_regcache.
13221         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13222         the declaration.
13223
13224 2018-03-11  Tom Tromey  <tom@tromey.com>
13225
13226         * dwarf2read.c (struct nextfield): Add initializers.
13227         (struct nextfnfield): Remove.
13228         (struct fnfieldlist): Add initializers.  Remove "length" and
13229         "head", use std::vector.
13230         (struct decl_field_list): Remove.
13231         (struct field_info): Add initializers.
13232         <fields, baseclasses>: Now std::vector.
13233         <nbaseclasses, nfnfields, typedef_field_list_count,
13234         nested_types_list_count>: Remove.
13235         (dwarf2_add_field, dwarf2_add_type_defn)
13236         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13237         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13238         (process_structure_scope): Update.
13239
13240 2018-03-11  Tom Tromey  <tom@tromey.com>
13241
13242         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13243         for use by std::sort.
13244         (build_type_psymtabs_1): Use std::vector.
13245
13246 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13247
13248         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13249         and LIBMPFR in the printed configuration.
13250
13251 2018-03-08  Tom Tromey  <tom@tromey.com>
13252
13253         * source.c (get_filename_and_charpos): Use scoped_fd.
13254         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13255         (procfs_pidlist): Likewise.
13256         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13257         (iterate_over_mappings): Likewise.
13258
13259 2018-03-08  Tom Tromey  <tom@tromey.com>
13260
13261         * infcall.c (struct call_return_meta_info)
13262         <stack_temporaries_enabled>: Remove.
13263         (get_call_return_value, call_function_by_hand_dummy): Update.
13264         * thread.c (disable_thread_stack_temporaries): Remove.
13265         (enable_thread_stack_temporaries): Remove.
13266         (thread_stack_temporaries_enabled_p): Return bool.
13267         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13268         (get_last_thread_stack_temporary): Update.
13269         * eval.c (evaluate_subexp): Update.
13270         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13271         class, not a function.
13272         (value_ptr, value_vec): Remove typedefs.
13273         (class thread_info) <stack_temporaries_enabled>: Now bool.
13274         <stack_temporaries>: Now a std::vector.
13275         (thread_stack_temporaries_enabled_p)
13276         (value_in_thread_stack_temporaries): Return bool.
13277
13278 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13279
13280         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13281         (getpkt_or_notif_sane_1): Likewise.
13282
13283 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13284
13285         * build-id.c (build_id_to_debug_bfd): Use std::string.
13286
13287 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13288
13289         * build-id.c (find_separate_debug_file_by_buildid): Return
13290         std::string.
13291         * build-id.h (find_separate_debug_file_by_buildid): Return
13292         std::string.
13293         * coffread.c (coff_symfile_read): Adjust to std::string.
13294         * elfread.c (elf_symfile_read): Adjust to std::string.
13295         * symfile.c (separate_debug_file_exists): Change parameter to
13296         std::string.
13297         (find_separate_debug_file): Return std::string.
13298         (find_separate_debug_file_by_debuglink): Return std::string.
13299         * symfile.h (find_separate_debug_file_by_debuglink): Return
13300         std::string.
13301
13302 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13303
13304         * common/xml-utils.c (xml_escape_text): Move code to...
13305         (xml_escape_text_append): ... this new function.
13306         * common/xml-utils.h (xml_escape_text_append): New declaration.
13307         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13308         New function.
13309         (_initialize_xml_utils): register test_xml_escape_text_append as
13310         a selftest.
13311
13312 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13313
13314         * defs.h: Remove MAX_REGISTER_SIZE.
13315         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13316         asserts.
13317         * python/py-unwind.c (pyuw_sniffer): Likewise.
13318
13319 2018-03-07  Tom Tromey  <tom@tromey.com>
13320
13321         * linux-tdep.c (linux_info_proc): Update.
13322         * target.h (struct target_ops) <to_fileio_readlink>: Return
13323         optional<string>.
13324         (target_fileio_readlink): Return optional<string>.
13325         * remote.c (remote_hostio_readlink): Return optional<string>.
13326         * inf-child.c (inf_child_fileio_readlink): Return
13327         optional<string>.
13328         * target.c (target_fileio_readlink): Return optional<string>.
13329
13330 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13331
13332         * regcache.c (cooked_read_test): Add riscv to the list of
13333         architectures that have a save_reggroup.
13334
13335 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13336
13337         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13338         value is not a dynamic class object.
13339
13340 2018-03-06  Tom Tromey  <tom@tromey.com>
13341
13342         * rust-exp.y: Formatting fixes.
13343
13344 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13345
13346         * riscv-tdep.c (riscv_register_name): Remove target description
13347         support.
13348         (riscv_gdbarch_init): Remove target description check.
13349
13350 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13351
13352         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13353         comment.
13354         * riscv-tdep.h: Likewise.
13355
13356 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13357
13358         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13359         (riscv_pseudo_register_write): Delete.
13360         (riscv_gdbarch_init): Remove all use of pseudo registers.
13361
13362 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13363
13364         * record-btrace.c (btrace_print_lines): Replace cleanup
13365         parameter with RAII equivalents.
13366         (btrace_insn_history): Replace cleanup with RAII equivalents.
13367         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13368         make_cleanup_ui_out_tuple_begin_end): Remove.
13369         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13370         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13371         make_cleanup_ui_out_list_begin_end): Remove.
13372
13373 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13374
13375         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13376         parameter types to std::vector.  Use bool.
13377         (record_btrace_wait): Replace VEC(tp_t) with
13378         std::vector<thread_info *>.
13379         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13380
13381 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13382
13383         * record-btrace.c (record_btrace_disable_callback): Remove.
13384         (struct scoped_btrace_disable): New.
13385         (record_btrace_open): Use scoped_btrace_disable.
13386
13387 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13388
13389         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13390         reading values from registers.
13391
13392 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13393
13394         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13395         where appropriate.
13396
13397 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13398
13399         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13400         change parameter type.  Use GDB's print functions, and use
13401         core_addr_to_string where appropriate.
13402         (riscv_push_dummy_call): Use core_addr_to_string where
13403         appropriate, update call to riscv_print_arg_location, and reindent
13404         a few lines.
13405         (riscv_return_value): Update call to riscv_print_arg_location.
13406
13407 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13408             Tim Newsome <tim@sifive.com>
13409             Albert Ou <a0u@eecs.berkeley.edu>
13410             Darius Rad <darius@bluespec.com>
13411
13412         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13413         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13414         (ALLDEPFILES): Add riscv-tdep.c
13415         * configure.tgt: Add riscv support.
13416         * riscv-tdep.c: New file.
13417         * riscv-tdep.h: New file.
13418         * NEWS: Mention new target.
13419         * MAINTAINERS: Add entry for riscv.
13420
13421 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13422
13423         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13424         fields within aggregates.
13425
13426 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13427
13428         * record-btrace.c (btrace_print_lines): Change type of flags to
13429         gdb_disassembly_flags.
13430
13431 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13432
13433         * fbsd-nat.c: Include "inf-ptrace.h".
13434         (USE_SIGTRAP_SIGINFO): Conditionally define.
13435         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13436         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13437         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13438         function.
13439         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13440         Likewise.
13441         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13442         Likewise.
13443         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13444         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13445         "supports_stopped_by_hw_breakpoint" target methods.
13446
13447 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13448
13449         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13450         * fbsd-nat.c (debug_fbsd_nat): New variable.
13451         (show_fbsd_nat_debug): New function.
13452         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13453         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13454
13455 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13456
13457         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13458         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13459         prototype.
13460         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13461         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13462         method.
13463
13464 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13465
13466         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13467         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13468
13469 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13470
13471         * charset.c (struct charset_vector): New.
13472         (charsets): Change type to charset_vector.
13473         (find_charset_names): Adjust.
13474         (add_one): Adjust.
13475         (_initialize_charset): Adjust.
13476
13477 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13478
13479         * progspace.h (struct program_space) <deleted_solibs>: Change
13480         type to std::vector<std::string>.
13481         * progspace.c (clear_program_space_solib_cache): Adjust.
13482         * breakpoint.c (print_solib_event): Adjust.
13483         (check_status_catch_solib): Adjust.
13484         * solib.c (update_solib_list): Adjust.
13485         * ui-out.h (class ui_out) <field_string>: New overload.
13486         * ui-out.c (ui_out::field_string): New overload.
13487
13488 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13489
13490         * progspace.h (struct program_space): Add constructor and
13491         destructor, initialize fields.
13492         (add_program_space): Remove.
13493         * progspace.c (add_program_space): Rename to...
13494         (program_space::program_space): ... this.
13495         (release_program_space): Rename to...
13496         (program_space::~program_space): ... this.
13497         (delete_program_space): Use delete to delete program_space.
13498         (initialize_progspace): Use new to allocate program_space.
13499         * inferior.c (add_inferior_with_spaces): Likewise.
13500         (clone_inferior_command): Likewise.
13501         * infrun.c (follow_fork_inferior): Likewise.
13502         (handle_vfork_child_exec_or_exit): Likewise.
13503
13504 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13505
13506         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13507         (delim_string_to_char_ptr_vec): Return std::vector of
13508         gdb::unique_xmalloc_ptr.
13509         (dirnames_to_char_ptr_vec_append): Take std::vector of
13510         gdb::unique_xmalloc_ptr.
13511         (dirnames_to_char_ptr_vec): Return std::vector of
13512         gdb::unique_xmalloc_ptr.
13513         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13514         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13515         (delim_string_to_char_ptr_vec): Return an std::vector of
13516         gdb::unique_xmalloc_ptr, adjust the code.
13517         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13518         gdb::unique_xmalloc_ptr, adjust the code.
13519         (dirnames_to_char_ptr_vec): Return an std::vector of
13520         gdb::unique_xmalloc_ptr, adjust the code.
13521         * auto-load.c (auto_load_safe_path_vec): Change type to
13522         std::vector of gdb::unique_xmalloc_ptr.
13523         (auto_load_expand_dir_vars): Return an std::vector of
13524         gdb::unique_xmalloc_ptr, adjust the code.
13525         (auto_load_safe_path_vec_update): Adjust.
13526         (filename_is_in_auto_load_safe_path_vec): Adjust.
13527         (auto_load_objfile_script_1): Adjust.
13528         * build-id.c (build_id_to_debug_bfd): Adjust.
13529         * linux-thread-db.c (thread_db_load_search): Adjust.
13530         * source.c (add_path): Adjust.
13531         (openp): Adjust.
13532         * symfile.c (find_separate_debug_file): Adjust.
13533         * utils.c (do_free_char_ptr_vec): Remove.
13534         (make_cleanup_free_char_ptr_vec): Remove.
13535
13536 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13537
13538         PR gdb/22907
13539         * common/pathstuff.c: Conditionally include "<windows.h>".
13540
13541 2018-03-01  Georg Sauthoff  <mail@georg.so>
13542
13543         PR gdb/22888
13544         * gcore.in: Quote variables and switch interpreter to bash.
13545
13546 2018-03-01  Tom Tromey  <tom@tromey.com>
13547
13548         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13549         assertion.  Add assertion for discriminant_index.
13550         (quirk_rust_enum): Use correct base type name in univariant case.
13551
13552 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13553
13554         * record.c (get_call_history_modifiers): Return a
13555         record_print_flags.
13556         (cmd_record_call_history): Adjust.
13557         * record-btrace.c (record_btrace_call_history): Adjust.
13558         (record_btrace_call_history_range): Adjust.
13559         (record_btrace_call_history_from): Adjust.
13560         * target-debug.h (target_debug_print_record_print_flags): New.
13561         * target-delegates.c: Re-generate.
13562         * target.c (target_call_history): Change flags type.
13563         (target_call_history_from): Likewise.
13564         (target_call_history_range): Likewise.
13565         * target.h (struct target_ops) <target_call_history>: Likewise.
13566         (target_call_history_from): Likewise.
13567         (target_call_history_range): Likewise.
13568
13569 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13570             Simon Marchi  <simon.marchi@polymtl.ca>
13571
13572         * common/common-utils.c: Include "sys/stat.h".
13573         (is_regular_file): Move here from "source.c"; change return
13574         type to "bool".
13575         * common/common-utils.h (is_regular_file): New prototype.
13576         * common/pathstuff.c (contains_dir_separator): New function.
13577         * common/pathstuff.h (contains_dir_separator): New prototype.
13578         * source.c: Don't include "sys/stat.h".
13579         (is_regular_file): Move to "common/common-utils.c".
13580
13581 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13582
13583         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13584         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13585         * auto-load.c: Include "common/pathstuff.h".
13586         * common/common-def.h (current_directory): Move here.
13587         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13588         function.
13589         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13590         prototype.
13591         * common/pathstuff.c: New file.
13592         * common/pathstuff.h: New file.
13593         * compile/compile.c: Include "common/pathstuff.h".
13594         * defs.h (current_directory): Move to "common/common-defs.h".
13595         * dwarf2read.c: Include "common/pathstuff.h".
13596         * exec.c: Likewise.
13597         * guile/scm-safe-call.c: Likewise.
13598         * linux-thread-db.c: Likewise.
13599         * main.c: Likewise.
13600         * nto-tdep.c: Likewise.
13601         * objfiles.c: Likewise.
13602         * source.c: Likewise.
13603         * symtab.c: Likewise.
13604         * utils.c: Include "common/pathstuff.h".
13605         (gdb_realpath): Move to "common/pathstuff.c".
13606         (gdb_realpath_keepfile): Likewise.
13607         (gdb_abspath): Likewise.
13608         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13609         (gdb_realpath_keepfile): Likewise.
13610         (gdb_abspath): Likewise.
13611
13612 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13613
13614         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13615         wildcard process pid for super_resume for kernels with a
13616         specific bug.
13617
13618 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13619
13620         * compile/compile.c (get_args): Add additional comments
13621         explaining function.
13622
13623 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13624             Tom Tromey  <tom@tromey.com>
13625
13626         * target.h (memory_write_request_s): Remove typedef.  Don't define
13627         VEC.
13628         (target_write_memory_blocks): Change argument to std::vector.
13629         (struct memory_write_request): Add constructor.
13630         * target-memory.c (compare_block_starting_address): Return bool.
13631         Change argument types.
13632         (claim_memory): Change arguments to use std::vector.
13633         (split_regular_and_flash_blocks, blocks_to_erase)
13634         (compute_garbled_blocks): Likewise.
13635         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13636         (target_write_memory_blocks): Change argument to std::vector.
13637         * symfile.c (struct load_section_data): Add constructor and
13638         destructor.  Use std::vector for "requests".
13639         (struct load_progress_data): Add initializers.
13640         (load_section_callback): Update.  Use "new".
13641         (clear_memory_write_data): Remove.
13642         (generic_load): Update.
13643
13644 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13645
13646         * arch/aarch64.h: Use common/tdesc.h.
13647
13648 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13649
13650         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13651         architecture with a 64-bit ABI.
13652
13653 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13654
13655         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13656         ahead of target description loading.
13657
13658 2018-02-26  Tom Tromey  <tom@tromey.com>
13659
13660         * stack.c (backtrace_command_1): Update.
13661         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13662         of "flags".
13663         * python/py-framefilter.c (py_print_frame)
13664         (gdbpy_apply_frame_filter): Change type of "flags".
13665         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13666         of "flags".
13667         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13668         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13669         * extension.h (enum frame_filter_flag): Rename from
13670         frame_filter_flags.
13671         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13672         (apply_ext_lang_frame_filter): Change type of "flags".
13673         * extension.c (apply_ext_lang_frame_filter): Change type of
13674         "flags".
13675         * extension-priv.h (struct extension_language_ops)
13676         <apply_frame_filter>: Change type of "flags".
13677
13678 2018-02-26  Tom Tromey  <tom@tromey.com>
13679
13680         PR python/16497:
13681         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13682         off-by-one in py_end computation.
13683         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13684         PRINT_MORE_FRAMES.
13685         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13686         constant.
13687
13688 2018-02-26  Tom Tromey  <tom@tromey.com>
13689
13690         * dwarf2read.c (struct variant_field): New.
13691         (struct nextfield) <variant>: New field.
13692         (dwarf2_add_field): Handle DW_TAG_variant_part.
13693         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13694         discriminated union.
13695         (read_structure_type): Handle DW_TAG_variant_part.
13696         (handle_struct_member_die): New function, extracted from
13697         process_structure_scope.  Handle DW_TAG_variant.
13698         (process_structure_scope): Handle discriminated unions.  Call
13699         handle_struct_member_die.
13700
13701 2018-02-26  Tom Tromey  <tom@tromey.com>
13702
13703         * rust-lang.h (rust_last_path_segment): Declare.
13704         * rust-lang.c (rust_last_path_segment): Now public.  Change
13705         contract.
13706         (struct disr_info): Remove.
13707         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13708         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13709         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13710         (rust_enum_p, rust_enum_variant): New function.
13711         (rust_underscore_fields): Remove "offset" parameter.
13712         (rust_print_enum): New function.
13713         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13714         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13715         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13716         enums.
13717         (rust_internal_print_type): New function, from rust_print_type.
13718         Remove enum code.
13719         (rust_print_type): Call rust_internal_print_type.
13720         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13721         Update enum handling.
13722         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13723         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13724         (rust_union_quirks): New functions.
13725         (process_full_comp_unit, process_full_type_unit): Call
13726         rust_union_quirks.
13727         (process_structure_scope): Update rust_unions if necessary.
13728
13729 2018-02-26  Tom Tromey  <tom@tromey.com>
13730
13731         * value.h (value_union_variant): Declare.
13732         * valops.c (value_union_variant): New function.
13733         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13734         (struct discriminant_info): New.
13735         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13736         enumerator.
13737         (struct main_type) <flag_discriminated_union>: New field.
13738
13739 2018-02-26  Tom Tromey  <tom@tromey.com>
13740
13741         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13742         unittests/unpack-selftests.c.
13743         * unittests/unpack-selftests.c: New file.
13744         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13745
13746 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13747
13748         * dwarf2read.c (struct partial_die_info) <read>: New method.
13749         (read_partial_die): Remove the declaration.
13750         (load_partial_dies): Update.
13751         (partial_die_info::partial_die_info):
13752         (read_partial_die): Change it to partial_die_info::read.
13753
13754 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13755
13756         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13757         (fixup_partial_die): Remove declaration.
13758         (scan_partial_symbols): Update.
13759         (partial_die_parent_scope): Likewise.
13760         (partial_die_full_name): Likewise.
13761         (fixup_partial_die): Change it to partial_die_info::fixup.
13762
13763 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13764
13765         * dwarf2read.c (read_partial_die): Update the declaration.
13766         (load_partial_dies): Caller update.
13767         (read_partial_die): Remove one argument abbrev_len.
13768
13769 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13770
13771         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13772         assignment operator.
13773         (load_partial_dies): Use ctor and copy ctor.
13774         (read_partial_die): Update.
13775         (dwarf2_cu::find_partial_die): Use ctor.
13776
13777 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13778
13779         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13780         (find_partial_die_in_comp_unit): Change it to
13781         dwarf2_cu::find_partial_die.
13782         (find_partial_die): Update.
13783
13784 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13785
13786         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13787         is NULL.
13788
13789 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13790
13791         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13792
13793 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13794
13795         * arch/amd64.h: Use common/tdesc.h.
13796         * arch/i386.c: Likewise.
13797         * arch/i386.h: Likewise.
13798         * arch/tic6x.c: Likewise.
13799         * arch/tdesc.h: Move file from here...
13800         * common/tdesc.h: ...to here.
13801         * features/aarch64-core.c: Regenerate.
13802         * features/aarch64-fpu.c: Regenerate.
13803         * features/i386/32bit-avx.c: Regenerate.
13804         * features/i386/32bit-avx512.c: Regenerate.
13805         * features/i386/32bit-core.c: Regenerate.
13806         * features/i386/32bit-linux.c: Regenerate.
13807         * features/i386/32bit-mpx.c: Regenerate.
13808         * features/i386/32bit-pkeys.c: Regenerate.
13809         * features/i386/32bit-sse.c: Regenerate.
13810         * features/i386/64bit-avx.c: Regenerate.
13811         * features/i386/64bit-avx512.c: Regenerate.
13812         * features/i386/64bit-core.c: Regenerate.
13813         * features/i386/64bit-linux.c: Regenerate.
13814         * features/i386/64bit-mpx.c: Regenerate.
13815         * features/i386/64bit-pkeys.c: Regenerate.
13816         * features/i386/64bit-segments.c: Regenerate.
13817         * features/i386/64bit-sse.c: Regenerate.
13818         * features/i386/x32-core.c: Regenerate.
13819         * features/tic6x-c6xp.c: Regenerate.
13820         * features/tic6x-core.c: Regenerate.
13821         * features/tic6x-gp.c: Regenerate.
13822         * target-descriptions.c: Use common/tdesc.h.
13823         * target-descriptions.h: Likewise.
13824
13825 2018-02-24  Tom Tromey  <tom@tromey.com>
13826
13827         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13828         (try_thread_db_load_from_dir, thread_db_load_search): Use
13829         std::string.
13830         (info_auto_load_libthread_db_compare): Return bool.  Change
13831         argument types.
13832         (info_auto_load_libthread_db): Use std::vector, std::string.
13833         Remove cleanups.
13834
13835 2018-02-24  Tom Tromey  <tom@tromey.com>
13836
13837         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13838         std::string.
13839         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13840         std::string*.
13841         * gdbarch.c: Rebuild.
13842         * gdbarch.h: Rebuild.
13843         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13844         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13845         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13846         std::string*.
13847
13848 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13849
13850         * gdbtypes.h (sect_offset): Change type to uint64_t.
13851         (sect_offset_str): New function.
13852         * dwarf2read.c (create_addrmap_from_aranges): Use
13853         sect_offset_str.
13854         (error_check_comp_unit_head): Likewise.
13855         (create_debug_type_hash_table): Likewise.
13856         (read_cutu_die_from_dwo): Likewise.
13857         (init_cutu_and_read_dies): Likewise.
13858         (init_cutu_and_read_dies_no_follow): Likewise.
13859         (process_psymtab_comp_unit_reader): Likewise.
13860         (partial_die_parent_scope): Likewise.
13861         (peek_die_abbrev): Likewise.
13862         (process_queue): Likewise.
13863         (dwarf2_physname): Likewise.
13864         (read_namespace_alias): Likewise.
13865         (read_import_statement): Likewise.
13866         (create_dwo_cu_reader): Likewise.
13867         (create_cus_hash_table): Likewise.
13868         (lookup_dwo_cutu): Likewise.
13869         (inherit_abstract_dies): Likewise.
13870         (read_func_scope): Likewise.
13871         (read_call_site_scope): Likewise.
13872         (dwarf2_add_member_fn): Likewise.
13873         (read_common_block): Likewise.
13874         (read_module_type): Likewise.
13875         (read_typedef): Likewise.
13876         (read_subrange_type): Likewise.
13877         (load_partial_dies): Likewise.
13878         (read_partial_die): Likewise.
13879         (find_partial_die): Likewise.
13880         (read_str_index): Likewise.
13881         (dwarf2_string_attr): Likewise.
13882         (build_error_marker_type): Likewise.
13883         (lookup_die_type): Likewise.
13884         (dump_die_shallow): Likewise.
13885         (follow_die_ref): Likewise.
13886         (dwarf2_fetch_die_loc_sect_off): Likewise.
13887         (dwarf2_fetch_constant_bytes): Likewise.
13888         (follow_die_sig): Likewise.
13889         (get_signatured_type): Likewise.
13890         (get_DW_AT_signature_type): Likewise.
13891         (dwarf2_find_containing_comp_unit): Likewise.
13892         (set_die_type): Likewise.
13893
13894 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13895
13896         * arch/aarch64.c: Include "common-defs.h".
13897         * arch/amd64.c: Likewise.
13898         * arch/i386.c: Likewise.
13899
13900 2018-02-21  Tom Tromey  <tom@tromey.com>
13901
13902         * value.h: (extract_field_op): Update.
13903         * eval.c (extract_field_op): Return a const char *.
13904         * expression.h (parse_expression_for_completion): Update.
13905         * completer.c (complete_expression): Update.
13906         (add_struct_fields): Make fieldname const.
13907         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13908         (mark_completion_tag, parse_exp_in_context_1): Update.
13909         (parse_expression_for_completion): Change "name" to
13910         unique_xmalloc_ptr*.
13911
13912 2018-02-21  Tom Tromey  <tom@tromey.com>
13913
13914         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13915
13916 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13917
13918         * avr-tdep.c (avr_read_pc): Change parameter type to
13919         readable_regcache.
13920         * gdbarch.sh (read_pc): Likewise.
13921         * gdbarch.c: Re-generated.
13922         * gdbarch.h: Re-generated.
13923         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13924         readable_regcache.
13925         * ia64-tdep.c (ia64_read_pc): Likewise.
13926         * mips-tdep.c (mips_read_pc): Likewise.
13927         * spu-tdep.c (spu_read_pc): Likewise.
13928
13929 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13930
13931         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13932         * regcache-dump.c: New file.
13933         * regcache.c: Move register_dump to regcache-dump.c.
13934         (maintenance_print_registers): Likewise.
13935         (maintenance_print_raw_registers): Likewise.
13936         (maintenance_print_cooked_registers): Likewise.
13937         (maintenance_print_register_groups): Likewise.
13938         (maintenance_print_remote_registers): Likewise.
13939         (_initialize_regcache): Likewise.
13940         * regcache.h (register_dump): Moved from regcache.c.
13941
13942 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13943
13944         * regcache.c (regcache::regcache): Update.
13945         (regcache::invalidate): Move it to detached_regcache::invalidate.
13946         (get_thread_arch_aspace_regcache): Update.
13947         (regcache::raw_update): Update.
13948         (regcache::cooked_read): Remove some code.
13949         (regcache::cooked_read_value): Likewise.
13950         (regcache::raw_write): Remove assert on m_readonly_p.
13951         (regcache::raw_supply_integer): Move it to
13952         detached_regcache::raw_supply_integer.
13953         (regcache::raw_supply_zeroed): Likewise.
13954         * regcache.h (detached_regcache) <raw_supply_integer>: New
13955         declaration.
13956         <raw_supply_zeroed, invalidate>: Likewise.
13957         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13958         <invalidate>: Likewise.
13959         <m_readonly_p>: Removed.
13960
13961 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13962
13963         * infcmd.c (get_return_value): Let stop_regs point to
13964         get_current_regcache.
13965         * regcache.c (regcache::regcache): Remove.
13966         (register_dump_reg_buffer): New class.
13967         (regcache_print): Adjust.
13968         * regcache.h (regcache): Remove constructors.
13969
13970 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13971
13972         * regcache.c (class register_dump): New class.
13973         (register_dump_regcache, register_dump_none): New class.
13974         (register_dump_remote, register_dump_groups): New class.
13975         (regcache_print): Update.
13976         * regcache.h (regcache_dump_what): Move it to regcache.c.
13977         (regcache) <dump>: Remove.
13978
13979 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13980
13981         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13982          reg_buffer_rw *.
13983         (jit_unwind_reg_set_impl): Call raw_supply.
13984         (jit_frame_sniffer): Use reg_buffer_rw.
13985         * record-full.c (record_full_core_regbuf): Change its type.
13986         (record_full_core_open_1): Use reg_buffer_rw.
13987         (record_full_close): Likewise.
13988         (record_full_core_fetch_registers): Use regcache->raw_supply.
13989         (record_full_core_store_registers): Likewise.
13990         * regcache.c (regcache::get_register_status): Move it to
13991         reg_buffer.
13992         (regcache_raw_set_cached_value): Remove.
13993         (regcache::raw_set_cached_value): Remove.
13994         (regcache::raw_write): Call raw_supply.
13995         (regcache::raw_supply): Move it to reg_buffer_rw.
13996         * regcache.h (regcache_raw_set_cached_value): Remove.
13997         (reg_buffer_rw): New class.
13998
13999 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14000
14001         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14002         readonly_detached_regcache.
14003         (dummy_frame_prev_register): Use regcache->cooked_read.
14004         * frame.c (frame_save_as_regcache): Change return type.
14005         (frame_pop): Update.
14006         * frame.h (frame_save_as_regcache): Update declaration.
14007         * inferior.h (get_infcall_suspend_state_regcache): Update
14008         declaration.
14009         * infrun.c (infcall_suspend_state) <registers>: use
14010         readonly_detached_regcache.
14011         (save_infcall_suspend_state): Don't use regcache_dup.
14012         (get_infcall_suspend_state_regcache): Change return type.
14013         * linux-fork.c (struct fork_info) <savedregs>: Change to
14014         readonly_detached_regcache.
14015         <pc>: New field.
14016         (fork_save_infrun_state): Don't use regcache_dup.
14017         (info_checkpoints_command): Adjust.
14018         * mi/mi-main.c (register_changed_p): Update declaration.
14019         (mi_cmd_data_list_changed_registers): Use
14020         readonly_detached_regcache.
14021         (register_changed_p): Change parameter type to
14022         readonly_detached_regcache.
14023         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14024         readonly_detached_regcache.
14025         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14026         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14027         New.
14028         (regcache::save): Move it to reg_buffer.
14029         (regcache::restore): Change parameter type.
14030         (regcache_dup): Remove.
14031         * regcache.h (reg_buffer) <save>: New method.
14032         (readonly_detached_regcache): New class.
14033         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14034         readonly_detached_regcache.
14035         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14036
14037 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14038
14039         * frame.c (frame_save_as_regcache): Use regcache method save.
14040         (frame_pop): Use regcache method restore.
14041         * infrun.c (restore_infcall_suspend_state): Likewise.
14042         * linux-fork.c (fork_load_infrun_state): Likewise.
14043         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14044         save.
14045         * regcache.c (regcache_save): Remove.
14046         (regcache::restore): More asserts.
14047         (regcache_cpy): Remove.
14048         * regcache.h (regcache_save): Remove the declaration.
14049         (regcache::restore): Move from private to public.
14050         Remove the friend declaration of regcache_cpy.
14051         (regcache_cpy): Remove declaration.
14052
14053 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14054
14055         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14056         parameter type to 'readable_regcache *'.
14057         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14058         * arm-tdep.c (arm_neon_quad_read): Likewise.
14059         (arm_pseudo_read): Likewise.
14060         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14061         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14062         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14063         * gdbarch.c: Re-generated.
14064         * gdbarch.h: Re-generated.
14065         * gdbarch.sh (pseudo_register_read): Change parameter type to
14066         'readable_regcache *'.
14067         (pseudo_register_read_value): Likewise.
14068         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14069         (h8300_pseudo_register_read): Likewise.
14070         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14071         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14072         (i386_pseudo_register_read_into_value): Likewise.
14073         (i386_pseudo_register_read_value): Likewise.
14074         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14075         declaration.
14076         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14077         * m32c-tdep.c (m32c_raw_read): Likewise.
14078         (m32c_read_flg): Likewise.
14079         (m32c_banked_register): Likewise.
14080         (m32c_banked_read): Likewise.
14081         (m32c_sb_read): Likewise.
14082         (m32c_part_read): Likewise.
14083         (m32c_cat_read): Likewise.
14084         (m32c_r3r2r1r0_read): Likewise.
14085         (m32c_pseudo_register_read): Likewise.
14086         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14087         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14088         (mep_pseudo_cr64_read): Likewise.
14089         (mep_pseudo_register_read): Likewise.
14090         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14091         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14092         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14093         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14094         (regcache::cooked_read): Likewise.
14095         (regcache::cooked_read_value): Likewise.
14096         (regcache_cooked_read_signed):
14097         (regcache::cooked_read): Likewise.
14098         * regcache.h (readable_regcache): New class.
14099         (regcache): Inherit readable_regcache.  Move some methods to
14100         readable_regcache.
14101         * rl78-tdep.c (rl78_pseudo_register_read): Change
14102         parameter type to 'readable_regcache *'.
14103         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14104         (e500_pseudo_register_read): Change parameter type to
14105         'readable_regcache *'.
14106         (dfp_pseudo_register_read): Likewise.
14107         (vsx_pseudo_register_read): Likewise.
14108         (efpr_pseudo_register_read): Likewise.
14109         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14110         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14111         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14112         (sh64_pseudo_register_read): Likewise.
14113         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14114         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14115         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14116         (spu_pseudo_register_read): Likewise.
14117         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14118         (xtensa_pseudo_register_read): Likewise.
14119
14120 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14121
14122         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14123         (regcache::arch): Move it to reg_buffer::arch.
14124         (regcache::register_buffer): Likewise.
14125         (regcache::assert_regnum): Likewise.
14126         (regcache::num_raw_registers): Likewise.
14127         * regcache.h (reg_buffer): New class.
14128         (regcache): Inherit reg_buffer.
14129
14130 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14131
14132         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14133         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14134
14135 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14136
14137         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14138
14139 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14140
14141         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14142         (SFILES): Remove common/*.c files.
14143         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14144         * common/common.host: Add common reference.
14145         * configure.ac: Likewise.
14146         * configure: Regenerate.
14147
14148 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14149
14150         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14151         (block_initialize_namespace): Use new.
14152         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14153         (dwarf2_free_objfile): Use delete.
14154         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14155         (copy_type_recursive): Use new.
14156         * gdb_obstack.h (allocate_on_obstack): New.
14157
14158 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14159
14160         PR gdb/22849
14161         * inferior.c (exit_inferior_1): Reset inf->control.
14162
14163 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14164
14165         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14166         declaration.
14167
14168 2018-02-14  Pedro Alves  <palves@redhat.com>
14169
14170         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14171         frame_cleanup_after_sniffer on exception.
14172
14173 2018-02-14  Tom Tromey  <tom@tromey.com>
14174
14175         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14176         const.
14177         (solib_bfd_open): Make pathname const.
14178         * solib.c (solib_bfd_open): Make pathname const.
14179         * solib-spu.c (spu_bfd_fopen): Make name const.
14180         (spu_bfd_open): Make pathname const.
14181         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14182         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14183
14184 2018-02-14  Tom Tromey  <tom@tromey.com>
14185
14186         * symfile.c (symfile_bfd_open): Update.
14187         * source.h (openp, source_full_path_of, find_and_open_source):
14188         Change argument type to unique_xmalloc_ptr.
14189         * source.c (openp): Take a unique_xmalloc_ptr.
14190         (source_full_path_of, find_and_open_source): Likewise.
14191         (open_source_file, symtab_to_fullname): Update.
14192         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14193         unique_xmalloc_ptr.
14194         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14195         (exec_file_find): Update.
14196         * psymtab.c (psymtab_to_fullname): Update.
14197         * nto-tdep.h (nto_find_and_open_solib): Update.
14198         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14199         unique_xmalloc_ptr.
14200         * exec.c (exec_file_attach): Update.
14201         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14202         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14203
14204 2018-02-14  Tom Tromey  <tom@tromey.com>
14205
14206         * solib.c: Include source.h.
14207         * nto-tdep.c: Include source.h.
14208         * mi/mi-cmd-env.c: Include source.h.
14209         * infcmd.c: Include source.h.
14210         * exec.c: Include source.h.
14211         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14212         (add_path, directory_switch, source_path, init_source_path): Move
14213         declarations...
14214         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14215         (add_path, directory_switch, source_path, init_source_path):
14216         ...here.
14217
14218 2018-02-14  Tom Tromey  <tom@tromey.com>
14219
14220         * solist.h (exec_file_find, solib_find): Return
14221         unique_xmalloc_ptr.
14222         (solib_bfd_fopen): Take a const char *.
14223         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14224         (exec_file_find, solib_find): Likewise.
14225         (solib_bfd_fopen): Do not take ownership of "pathname".
14226         (solib_bfd_open): Use unique_xmalloc_ptr.
14227         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14228         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14229         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14230         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14231
14232 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14233
14234         * ada-lang.c (name_match_type_from_name): Remove reference to
14235         ada_name_for_lookup in function's documentation.
14236         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14237
14238 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14239
14240         * defs.h (enum openp_flags): New enum.
14241         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14242         Move to enum openp_flags.
14243         (openp_flags): New enum flags.
14244         (openp): Change parameter type to openp_flags.
14245         * source.c (openp): Change parameter type to openp_flags.
14246         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14247         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14248
14249 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14250
14251         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14252         per-command.
14253
14254 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14255
14256         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14257         into...
14258         (class dwarf2_queue_guard): ...the destructor of this new class.
14259         (dw2_do_instantiate_symtab): Create instance of the new class
14260         dwarf2_queue_guard, remove cleanup.
14261
14262 2018-02-09  Tom Tromey  <tom@tromey.com>
14263
14264         * source.c (find_source_lines): Don't reference past the end of
14265         the vector.
14266
14267 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14268
14269         * remote.c (remote_btrace_maybe_reopen): Change error message.
14270         * btrace.c (btrace_enable): Likewise.
14271         (parse_xml_btrace): Likewise.
14272         (parse_xml_btrace_conf): Likewise.
14273
14274 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14275
14276         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14277         (linux_enable_pt, linux_enable_bts): Call
14278         diagnose_perf_event_open_fail.
14279
14280 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14281
14282         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14283         Remove parameter and change return type.  Update callers.  Move it.
14284         (linux_enable_bts, linux_enable_pt): Improve error message.
14285         (linux_enable_pt): Remove zero buffer size check.
14286         (linux_enable_btrace): Improve error messages.  Remove NULL return
14287         check.
14288
14289 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14290
14291         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14292         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14293         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14294         (linux_supports_pt, linux_supports_btrace): Remove.
14295         (linux_enable_bts): Call cpu_supports_bts.
14296         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14297         * remote.c (remote_supports_btrace): Remove.
14298         (init_remote_ops): Remove remote_supports_btrace.
14299         * target-delegates.c: Regenerated.
14300         * target.c (target_supports_btrace): Remove.
14301         * target.h (target_ops) <to_supports_btrace>: Remove
14302         (target_supports_btrace): Remove.
14303         * x86-linux-nat.c (x86_linux_create_target): Remove
14304         linux_supports_btrace.
14305
14306 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14307
14308         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14309         btrace failed.
14310         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14311         exception and use message in own exception.
14312
14313 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14314
14315         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14316         (perf_event_pt_event_type): Use gdb_file_up.
14317         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14318         scoped_fd, and scoped_mmap.
14319
14320 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14321
14322         * common/scoped_mmap.h: New.
14323         * unittests/scoped_mmap-selftest.c: New.
14324         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14325         unittests/scoped_mmap-selftest.c.
14326
14327 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14328
14329         * common/scoped_fd.h: New.
14330         * unittests/scoped_fd-selftest.c: New.
14331         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14332         unittests/scoped_fd-selftest.c.
14333
14334 2018-02-09  Tom Tromey  <tom@tromey.com>
14335
14336         * auto-load.c (auto_load_section_scripts): Use
14337         gdb::unique_xmalloc_ptr.
14338
14339 2018-02-09  Tom Tromey  <tom@tromey.com>
14340
14341         * auto-load.c (execute_script_contents): Use std::string.
14342
14343 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14344
14345         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14346         Python function, rather than a new command.
14347
14348 2018-02-08  Tom Tromey  <tom@tromey.com>
14349
14350         * solib.c (solib_find_1): Use std::string.
14351         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14352
14353 2018-02-08  Tom Tromey  <tom@tromey.com>
14354
14355         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14356
14357 2018-02-08  Tom Tromey  <tom@tromey.com>
14358
14359         * source.c (find_source_lines): Use gdb::def_vector.
14360
14361 2018-02-08  Tom Tromey  <tom@tromey.com>
14362
14363         * macrocmd.c (struct temporary_macro_definition): New.
14364         (macro_define_command): Use temporary_macro_definition.  Remove
14365         cleanups.
14366         (free_macro_definition_ptr): Remove.
14367
14368 2018-02-08  Tom Tromey  <tom@tromey.com>
14369
14370         * macroexp.c (maybe_expand): Use std::string.
14371
14372 2018-02-08  Tom Tromey  <tom@tromey.com>
14373
14374         * macroexp.c (struct macro_buffer): Add initializers for some
14375         members.
14376         (init_buffer, init_shared_buffer, free_buffer)
14377         (free_buffer_return_text): Remove.
14378         (macro_buffer): New constructors.
14379         (~macro_buffer): New destructor.
14380         (macro_buffer::set_shared): New method.
14381         (macro_buffer::resize_buffer, macro_buffer::appendc)
14382         (macro_buffer::appendmem): Now methods, not free functions.
14383         (set_token, append_tokens_without_splicing, stringify)
14384         (macro_stringify): Update.
14385         (gather_arguments): Change return type.  Remove argc_p argument,
14386         add args_ptr argument.  Use std::vector.
14387         (substitute_args): Remove argc argument.  Accept std::vector.
14388         (expand): Update.  Use std::vector.
14389         (scan, macro_expand, macro_expand_next): Update.
14390
14391 2018-02-08  Tom Tromey  <tom@tromey.com>
14392
14393         * symtab.c (default_collect_symbol_completion_matches_break_on):
14394         Use unique_xmalloc_ptr.
14395         * macroscope.h: (sal_macro_scope, user_macro_scope)
14396         (default_macro_scope): Return unique_xmalloc_ptr.
14397         * macroscope.c (sal_macro_scope, user_macro_scope)
14398         (default_macro_scope): Return unique_xmalloc_ptr.
14399         * macroexp.h (macro_expand, macro_expand_once): Return
14400         unique_xmalloc_ptr.
14401         * macroexp.c (macro_expand, macro_expand_once): Return
14402         unique_xmalloc_ptr.
14403         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14404         (info_macro_command, info_macros_command): Use
14405         unique_xmalloc_ptr.
14406         * compile/compile-c-support.c (write_macro_definitions): Use
14407         unique_xmalloc_ptr.
14408         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14409
14410 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14411
14412         * value.c (value_static_field): Assign field type instead of
14413         containing type when returning an optimized out value.
14414
14415 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14416
14417         * ft32-tdep.c (ft32_read_pc): Remove.
14418         (ft32_write_pc): Remove.
14419         (ft32_gdbarch_init): Update.
14420         * m32r-tdep.c (m32r_read_pc): Remove.
14421         (m32r_gdbarch_init): Update.
14422         * mep-tdep.c (mep_read_pc): Remove.
14423         (mep_gdbarch_init): Update.
14424         * microblaze-tdep.c (microblaze_write_pc): Remove.
14425         (microblaze_gdbarch_init): Update.
14426         * mn10300-tdep.c (mn10300_read_pc): Remove.
14427         (mn10300_write_pc): Remove.
14428         (mn10300_gdbarch_init): Update.
14429         * moxie-tdep.c (moxie_read_pc): Remove.
14430         (moxie_write_pc): Remove.
14431         (moxie_gdbarch_init): Update.
14432
14433 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14434
14435         * expprint.c (print_subexp_standard): Handle
14436         OP_F77_UNDETERMINED_ARGLIST.
14437         (dump_subexp_body_standard): Likewise.
14438
14439 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14440
14441         * target-descriptions.c (tdesc_element_visitor) Add empty
14442         implementations.
14443         (tdesc_type): Move make_gdb_type from here.
14444         (tdesc_type_builtin): Likewise.
14445         (tdesc_type_vector): Likewise.
14446         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14447         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14448         (make_gdb_type_union): Likewise.
14449         (make_gdb_type_flags): Likewise.
14450         (make_gdb_type_enum): Likewise.
14451         (make_gdb_type): New function.
14452         (tdesc_register_type): Use static make_gdb_type.
14453
14454 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14455
14456         * infcmd.c (default_print_one_register_info): Align natural-format
14457         column values consistently one under another.
14458         (pad_to_column): New function.
14459
14460 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14461
14462         * dwarf2read.c (dwarf2_physname): Move commment.
14463
14464 2018-02-01  Leszek Swirski  <leszeks@google.com>
14465
14466         * varobj.c (varobj_formatted_print_options): Allow recursive
14467         pretty printing if pretty printing is enabled.
14468
14469 2018-02-01  Leszek Swirski  <leszeks@google.com>
14470
14471         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14472         names after a structop as a filename.
14473
14474 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14475
14476         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14477         (arm_record_coproc_data_proc): Likewise.
14478
14479 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14480
14481         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14482
14483 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14484
14485         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14486         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14487
14488 2018-01-31  Pedro Alves  <palves@redhat.com>
14489
14490         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14491         * inflow.c (child_terminal_save_inferior): Wrap reference to
14492         tcgetpgrp in HAVE_TERMIOS_H.
14493         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14494         _WIN32.
14495         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14496         always iterate over all inferiors.
14497         (gdbsim_cntrl_c): Adjust.
14498         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14499
14500 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14501
14502         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14503         index type is objfile-owned if the element type is as well.
14504
14505 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14506
14507         GDB 8.1 released.
14508
14509 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14510
14511         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14512         "features/s390x-linux64.c".
14513         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14514         s390_linux32 and s390x_linux64.
14515         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14516         default tdesc.
14517         * s390-tdep.c: Include "features/s390-linux32.c" and
14518         "features/s390x-linux64.c".
14519         (s390_tdesc_valid): Add check for tdesc_has_registers.
14520         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14521         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14522         tdesc_s390x_linux64.
14523         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14524         tdesc_s390x_linux64 to...
14525         * s390-tdep.h: ...here.
14526
14527 2018-01-30  Pedro Alves  <palves@redhat.com>
14528
14529         PR gdb/13211
14530         * config.in, configure: Regenerate.
14531         * configure.ac: Check for getpgid.
14532         * go32-nat.c (go32_pass_ctrlc): New.
14533         (go32_target): Install it.
14534         * inf-child.c (inf_child_target): Install
14535         child_terminal_save_inferior, child_pass_ctrlc and
14536         child_interrupt.
14537         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14538         (inf_ptrace_target): No longer install it.
14539         * infcmd.c (interrupt_target_1): Adjust.
14540         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14541         (child_interrupt): Declare.
14542         (inferior::terminal_state): New.
14543         * inflow.c (struct terminal_info): Update comments.
14544         (inferior_process_group): Delete.
14545         (terminal_is_ours): Delete.
14546         (gdb_tty_state): New.
14547         (child_terminal_init): Adjust.
14548         (is_gdb_terminal, sharing_input_terminal_1)
14549         (sharing_input_terminal): New functions.
14550         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14551         Set the process's actual process group in the foreground if
14552         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14553         mark terminal as the inferior's if not sharing GDB's terminal.
14554         Don't check attach_flag.
14555         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14556         pass down a target_terminal_state.
14557         (child_terminal_save_inferior): New, factored out from ...
14558         (child_terminal_ours_1): ... this.  Handle
14559         target_terminal_state::is_ours_for_output.
14560         (child_interrupt, child_pass_ctrlc): New.
14561         (inflow_inferior_exit): Clear the inferior's terminal_state.
14562         (copy_terminal_info): Copy the inferior's terminal state.
14563         (_initialize_inflow): Remove reference to terminal_is_ours.
14564         * inflow.h (inferior_process_group): Delete.
14565         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14566         * procfs.c (procfs_target): Don't install procfs_interrupt.
14567         (procfs_interrupt): Delete.
14568         * remote.c (remote_serial_quit_handler): Adjust.
14569         (remote_interrupt): Remove ptid parameter.  Adjust.
14570         * target-delegates.c: Regenerate.
14571         * target.c: Include "terminal.h".
14572         (target_terminal::terminal_state): Rename to ...
14573         (target_terminal::m_terminal_state): ... this.
14574         (target_terminal::init): Adjust.
14575         (target_terminal::inferior): Adjust to per-inferior
14576         terminal_state.
14577         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14578         (target_terminal::ours, target_terminal::ours_for_output): Use
14579         target_terminal_is_ours_kind.
14580         (target_interrupt): Remove ptid parameter.  Adjust.
14581         (default_target_pass_ctrlc): Adjust.
14582         * target.h (target_ops::to_terminal_save_inferior): New field.
14583         (target_ops::to_interrupt): Remove ptid_t parameter.
14584         (target_interrupt): Remove ptid_t parameter.  Update comment.
14585         (target_pass_ctrlc): Update comment.
14586         * target/target.h (target_terminal_state): New scoped enum,
14587         factored out of ...
14588         (target_terminal::terminal_state): ... here.
14589         (target_terminal::inferior): Update comments.
14590         (target_terminal::restore_inferior): New.
14591         (target_terminal::is_inferior, target_terminal::is_ours)
14592         (target_terminal::is_ours_for_output): Adjust.
14593         (target_terminal::scoped_restore_terminal_state): Adjust to
14594         rename, and call restore_inferior() instead of inferior().
14595         (target_terminal::scoped_restore_terminal_state::m_state): Change
14596         type.
14597         (target_terminal::terminal_state): Rename to ...
14598         (target_terminal::m_terminal_state): ... this and change type.
14599
14600 2018-01-30  Pedro Alves  <palves@redhat.com>
14601
14602         * linux-nat.c (wait_for_signal): New function.
14603         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14604         directly.
14605         (async_terminal_is_ours)
14606         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14607         (linux_nat_add_target): Don't override
14608         to_terminal_inferior/to_terminal_ours.
14609
14610 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14611
14612         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14613
14614 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14615
14616         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14617         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14618         dwarf2_per_objfile_free here.
14619         (dwarf2_per_objfile_free): Remove.
14620         (_initialize_dwarf2_read): Don't register
14621         dwarf2_per_objfile_free as a registry cleanup.
14622
14623 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14624
14625         Avoid compilation errors in MinGW native builds
14626
14627         The error is triggered by including python-internal.h, and the
14628         error message is:
14629
14630              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14631                       from build-gnulib/import/math.h:27,
14632                       from d:/usr/Python26/include/pyport.h:235,
14633                       from d:/usr/Python26/include/Python.h:58,
14634                       from python/python-internal.h:94,
14635                       from python/py-arch.c:24:
14636              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14637         using ::hypot;
14638                 ^~~~~
14639
14640         This happens because Python headers define 'hypot' to expand t
14641         '_hypot' in the Windows builds.
14642         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14643         'hypoth'.  This avoids a compilation error.
14644
14645 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14646
14647         * MAINTAINERS (Write After Approval): Fix ordering.
14648
14649 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14650
14651         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14652
14653 2018-01-26  Alan Modra  <amodra@gmail.com>
14654
14655         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14656         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14657         Remove nop.  Make const.  Comment.
14658         (powerpc32_plt_stub_so_2): New.
14659         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14660         Correct count.  Update uses.
14661         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14662         Move common code reading PLT entry word.  Correct
14663         powerpc32_plt_stub PLT address calculation.
14664         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14665         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14666         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14667         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14668         (ppc64_standard_linkage8): Likewise.
14669         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14670         Correct insns description.
14671         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14672
14673 2018-01-24  Pedro Alves  <palves@redhat.com>
14674
14675         GCC PR libstdc++/83906
14676         * gdbtypes.c (operator==(const dynamic_prop &,
14677         const dynamic_prop &)): New.
14678         (operator==(const range_bounds &, const range_bounds &)): New.
14679         (check_types_equal): Use them instead of memcmp.
14680         * gdbtypes.h (operator==(const dynamic_prop &,
14681         const dynamic_prop &)): Declare.
14682         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14683         (operator==(const range_bounds &, const range_bounds &)): Declare.
14684         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14685
14686 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14687
14688         * s390-linux-tdep.c (s390_record_address_mask)
14689         (s390_record_calc_disp_common, s390_record_calc_disp)
14690         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14691         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14692         (s390_process_record): Move to s390-tdep.c.
14693         (s390_linux_init_abi_any): Adjust.
14694         * s390-tdep.c (s390_record_address_mask)
14695         (s390_record_calc_disp_common, s390_record_calc_disp)
14696         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14697         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14698         (s390_process_record): Moved from s390-linux-tdep.c
14699         (s390_gdbarch_init): Adjust.
14700
14701 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14702
14703         * s390-linux-nat.c (s390-tdep.h): New include.
14704         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14705         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14706         (ALLDEPFILES): Add s390-tdep.c.
14707         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14708         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14709         * s390-tdep.h: ...this.  New file.
14710         * s390-linux-tdep.c (s390-tdep.h): New include.
14711         (_initialize_s390_tdep): Rename to...
14712         (_initialize_s390_linux_tdep): ...this and adjust.
14713         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14714         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14715         s390-tdep.h.
14716         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14717         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14718         (s390_is_partial_instruction, s390_software_single_step)
14719         (is_non_branch_ril, s390_displaced_step_copy_insn)
14720         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14721         (s390_prologue_data, s390_addr, s390_store, s390_load)
14722         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14723         (s390_register_call_saved, s390_guess_tracepoint_registers)
14724         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14725         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14726         (s390_pseudo_register_name, s390_pseudo_register_type)
14727         (s390_pseudo_register_read, s390_pseudo_register_write)
14728         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14729         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14730         (s390_addr_bits_remove, s390_address_class_type_flags)
14731         (s390_address_class_type_flags_to_name)
14732         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14733         (s390_function_arg_float, s390_function_arg_vector)
14734         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14735         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14736         (s390_frame_align, s390_register_return_value, s390_return_value)
14737         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14738         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14739         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14740         (s390_trad_frame_prev_register, s390_unwind_cache)
14741         (s390_prologue_frame_unwind_cache)
14742         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14743         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14744         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14745         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14746         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14747         (s390_frame_base_address, s390_local_base_address)
14748         (s390_frame_base, s390_gcc_target_options)
14749         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14750         (s390_validate_reg_range, s390_tdesc_valid)
14751         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14752         * s390-tdep.c: ...this.  New file.
14753
14754 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14755
14756         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14757         (s390_process_record, s390_gdbarch_tdep_alloc)
14758         (s390_linux_init_abi_any): Use/set new hook.
14759
14760 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14761
14762         * s390-linux-tdep.c (osabi.h): New include.
14763         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14764         (s390_linux_init_abi_any): New functions.
14765         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14766
14767 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14768
14769         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14770         tdesc_has_registers check
14771
14772 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14773
14774         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14775         (s390_validate_reg_range): New macro.
14776         (s390_gdbarch_init): Adjust.
14777
14778 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14779
14780         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14781         (s390_gdbarch_tdep_alloc): Adjust.
14782         (s390_gdbarch_init): Adjust.
14783
14784 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14785
14786         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14787         <have_tdb>: Change type to bool.
14788         (s390_gdbarch_tdep_alloc): Adjust.
14789         (s390_gdbarch_init): Adjust.
14790
14791 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14792
14793         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14794         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14795         (s390_gdbarch_tdep_alloc): New function.
14796         (s390_gdbarch_init): Allocate tdep at start and use its fields
14797         instead of separate variables.
14798
14799 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14800
14801         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14802         when looking for cached gdbarch and add comment for remaining.
14803
14804 2018-01-22  Pedro Alves  <palves@redhat.com>
14805             Sergio Durigan Junior  <sergiodj@redhat.com>
14806
14807         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14808         case.
14809
14810 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14811
14812         * MAINTAINERS: Update my company e-mail address.
14813
14814 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14815
14816         * regcache.c (cooked_write_test): New function.
14817         (_initialize_regcache): Register the test.
14818
14819 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14820
14821         * ia64-tdep.c (ia64_pseudo_register_read): Call
14822         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14823         * m32c-tdep.c (m32c_cat_read): Likewise.
14824         (m32c_r3r2r1r0_read): Likewise.
14825         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14826         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14827
14828 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14829
14830         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14831         method raw_read instead of regcache_raw_read.
14832         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14833         * arm-tdep.c (arm_neon_quad_read): Likewise.
14834         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14835         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14836         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14837         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14838         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14839         (i386_pseudo_register_read_into_value): Likewise.
14840         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14841         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14842         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14843         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14844         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14845         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14846         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14847         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14848         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14849
14850 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14851
14852         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14853         * configure.tgt: Remove target mt.
14854         * mt-tdep.c: Remove.
14855         * regcache.c (cooked_read_test): Remove the check for mt.
14856
14857 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14858
14859         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14860         instead of gdbarch_pseudo_register_read_value.
14861
14862 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14863
14864         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14865         language is Ada.
14866
14867 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14868
14869         * linespec.c (create_sals_line_offset): Remove code that preserved
14870         the symtab_and_line's line number.
14871
14872 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14873
14874         * varobj.c (varobj_create): Don't set valid_block when creating a
14875         floating varobj.
14876
14877 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14878
14879         * varobj.c (varobj_create): Remove out of date comment.
14880
14881 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14882
14883         PR mi/20395
14884         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14885         updating innermost block.
14886         * parse.c (innermost_block_tracker::update): Take extra type
14887         parameter, and check types match before updating innermost block.
14888         (write_dollar_variable): Update innermost block for registers.
14889         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14890         (innermost_block_tracker::innermost_block_tracker): Initialise
14891         m_types member.
14892         (innermost_block_tracker::reset): Take type parameter.
14893         (innermost_block_tracker::update): Take type parameter, and pass
14894         type through as needed.
14895         (innermost_block_tracker::m_types): New member.
14896         * varobj.c (varobj_create): Pass type when reseting innermost
14897         block.
14898
14899 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14900
14901         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14902         * ada-lang.c (resolve_subexp): Likewise.
14903         * breakpoint.c (set_breakpoint_condition) Likewise.
14904         (watch_command_1) Likewise.
14905         * c-exp.y (variable): Likewise.
14906         * d-exp.y (PrimaryExpression): Likewise.
14907         * f-exp.y (variable): Likewise.
14908         * go-exp.y (variable): Likewise.
14909         * m2-exp.y (variable): Likewise.
14910         * objfiles.c (objfile::~objfile): Likewise.
14911         * p-exp.y (variable): Likewise.
14912         * parse.c (innermost_block): Change type.
14913         * parser-defs.h (class innermost_block_tracker): New.
14914         (innermost_block): Change to innermost_block_tracker.
14915         * printcmd.c (display_command): Switch to innermost_block API.
14916         (do_one_display): Likewise.
14917         * rust-exp.y (do_one_display): Likewise.
14918         * symfile.c (clear_symtab_users): Likewise.
14919         * varobj.c (varobj_create): Switch to innermost_block API, replace
14920         use of innermost_block with block stored on varobj object.
14921
14922 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14923
14924         * expression.h (innermost_block): Remove declaration.
14925         * varobj.c: Add 'parser-defs.h' include.
14926
14927 2018-01-19  Tom Tromey  <tom@tromey.com>
14928
14929         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14930         symbols in the static and global blocks.
14931
14932 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14933
14934         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14935         gdb_ptrace.h, and move including gdb_wait.h ...
14936         * nat/linux-ptrace.h: ... to here.
14937
14938 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14939
14940         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14941         inf_ptrace_detach_success.
14942         (inf_ptrace_detach_success): Add inferior parameter, use it
14943         instead of inferior_ptid, pass it to detach_inferior.
14944         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14945         parameter.
14946         * inferior.c (detach_inferior): Add overload that takes an
14947         inferior object.
14948         * inferior.h (detach_inferior): Likewise.
14949         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14950         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14951         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14952
14953 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14954
14955         * target.h (struct target_ops) <to_detach>: Add inferior
14956         parameter.
14957         (target_detach): Likewise.
14958         * target.c (dispose_inferior): Pass inferior down.
14959         (target_detach): Pass inferior down.  Assert that it is equal to
14960         the current inferior.
14961         * aix-thread.c (aix_thread_detach): Pass inferior down.
14962         * corefile.c (core_file_command): Pass current_inferior() down.
14963         * corelow.c (core_detach): Add inferior parameter.
14964         * darwin-nat.c (darwin_detach): Likewise.
14965         * gnu-nat.c (gnu_detach): Likewise.
14966         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14967         * infcmd.c (detach_command): Pass current_inferior() down to
14968         target_detach.
14969         * infrun.c (follow_fork_inferior): Pass parent_inf to
14970         target_detach.
14971         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14972         target_detach.
14973         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14974         * linux-thread-db.c (thread_db_detach): Likewise.
14975         * nto-procfs.c (procfs_detach): Likewise.
14976         * procfs.c (procfs_detach): Likewise.
14977         * record.c (record_detach): Likewise.
14978         * record.h (struct inferior): Forward-declare.
14979         (record_detach): Add inferior parameter.
14980         * remote-sim.c (gdbsim_detach): Likewise.
14981         * remote.c (remote_detach_1): Likewise.
14982         (remote_detach): Likewise.
14983         (extended_remote_detach): Likewise.
14984         * sol-thread.c (sol_thread_detach): Likewise.
14985         * target-debug.h (target_debug_print_inferior_p): New macro.
14986         * target-delegates.c: Re-generate.
14987         * top.c (kill_or_detach): Pass inferior down to target_detach.
14988         * windows-nat.c (windows_detach): Add inferior parameter.
14989
14990 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14991
14992         * target.h (struct target_ops) <to_detach>: Remove args
14993         parameter.
14994         (target_detach): Likewise.
14995         * target.c (dispose_inferior): Adjust.
14996         (target_detach): Remove args parameter, adjust.
14997         * aix-thread.c (aix_thread_detach): Adjust.
14998         * corefile.c (core_file_command): Adjust.
14999         * corelow.c (core_detach): Adjust.
15000         * darwin-nat.c (darwin_detach): Adjust.
15001         * gnu-nat.c (gnu_detach): Adjust.
15002         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15003         * infcmd.c (detach_command): Adjust
15004         * infrun.c (follow_fork_inferior): Adjust.
15005         (handle_vfork_child_exec_or_exit): Adjust.
15006         * linux-fork.c (linux_fork_detach): Remove args parameter.
15007         * linux-fork.h (linux_fork_detach): Likewise.
15008         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15009         * linux-thread-db.c (thread_db_detach): Likewise.
15010         * nto-procfs.c (procfs_detach): Likewise.
15011         * procfs.c (procfs_detach): Likewise.
15012         (do_detach): Remove signo parameter.
15013         * record.c (record_detach): Remove args parameter.
15014         * record.h (record_detach): Likewise.
15015         * remote-sim.c (gdbsim_detach): Likewise.
15016         * remote.c (remote_detach_1): Likewise.
15017         (remote_detach): Likewise.
15018         (extended_remote_detach): Likewise.
15019         * sol-thread.c (sol_thread_detach): Likewise.
15020         * target-delegates.c: Re-generate.
15021         * top.c (struct qt_args) <args>: Remove field.
15022         (kill_or_detach): Don't pass args.
15023         (quit_force): Don't set args.
15024         * windows-nat.c (windows_detach): Remove args parameter.
15025
15026 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15027
15028         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15029         (arm_linux_init_abi): Install it.
15030
15031 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15032
15033         * osabi.c (gdb_osabi_names): Extend the regexp for
15034         arm-linux-gnueabihf.
15035
15036 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15037
15038         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15039         m_abbrevs.
15040         (abbrev_table::add_abbrev): Update.
15041         (abbrev_table::lookup_abbrev): Update.
15042
15043 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15044
15045         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15046
15047 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15048
15049         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15050         to "std::string".
15051
15052 2018-01-17  Tom Tromey  <tom@tromey.com>
15053
15054         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15055
15056 2018-01-17  Tom Tromey  <tom@tromey.com>
15057
15058         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15059         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15060         (create_array_type_with_stride): Update.
15061         * dwarf2read.c (set_die_type): Update.
15062
15063 2018-01-17  Tom Tromey  <tom@tromey.com>
15064
15065         * dwarf2read.c (delayed_method_info): Remove typedef.
15066         (dwarf2_cu::method_info): Now a std::vector.
15067         (add_to_method_list): Update.
15068         (free_delayed_list): Remove.
15069         (compute_delayed_physnames): Update.
15070         (process_full_comp_unit, process_full_type_unit): Clear the method
15071         list.  Remove cleanups.
15072         (psymtab_include_file_name): Add name_holder parameter.  Use
15073         unique_xmalloc_ptr.
15074         (dwarf_decode_lines): Update.
15075
15076 2018-01-17  Tom Tromey  <tom@tromey.com>
15077             Simon Marchi  <simon.marchi@ericsson.com>
15078
15079         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15080         (dwarf2_per_objfile::free_cached_comp_units)
15081         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15082         (init_cutu_and_read_dies_no_follow): Update.
15083         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15084         (dwarf2_cu::~dwarf2_cu): New.
15085         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15086         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15087
15088 2018-01-17  Tom Tromey  <tom@tromey.com>
15089             Simon Marchi  <simon.marchi@ericsson.com>
15090
15091         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15092         (struct die_reader_specs) <abbrev_table>: New member.
15093         (struct abbrev_table): Add constructor.
15094         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15095         <abbrev_obstack>: Now an auto_obstack.
15096         (abbrev_table_up): New typedef.
15097         (init_cu_die_reader): Add abbrev_table parameter.
15098         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15099         Add result_dwo_abbrev_table.
15100         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15101         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15102         Update.
15103         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15104         parameter.
15105         (skip_children): Update.
15106         (abbrev_table::alloc_abbrev): Rename from
15107         abbrev_table_alloc_abbrev.
15108         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15109         (abbrev_table::lookup_abbrev): Rename from
15110         abbrev_table_lookup_abbrev.
15111         (abbrev_table_read_table): Return abbrev_table_up.
15112         (abbrev_table_free, abbrev_table_free_cleanup)
15113         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15114         (load_partial_dies): Update.
15115
15116 2018-01-17  Tom Tromey  <tom@tromey.com>
15117
15118         * dwarf2read.c (dwarf2_compute_name): Update comment.
15119         (read_func_scope, read_variable): Update.
15120         (new_symbol): Remove.
15121         (new_symbol_full): Rename to new_symbol.
15122
15123 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15124
15125         PR gdb/16577
15126         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15127         a warning instead of throwing an error, set section size to 0 and return
15128         NULL.
15129         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15130
15131 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15132
15133         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15134         std::string.
15135         (linux_ptrace_attach_fail_reason_string): Likewise.
15136         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15137         Likewise.
15138         (linux_ptrace_attach_fail_reason_string): Likewise.
15139         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15140
15141 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15142
15143         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15144
15145 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15146
15147         PR gdb/21559
15148         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15149         checking for fs_base/gs_base fields in struct user_regs_struct.
15150         * configure: Regenerate.
15151
15152 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15153
15154         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15155         function.
15156         (aarch64_linux_init_abi): Install it to gdbarch hook
15157         gcc_target_options.
15158
15159 2018-01-15  Pedro Alves  <palves@redhat.com>
15160
15161         * common/signals-state-save-restore.c
15162         (save_original_signals_state): Fix typos.
15163
15164 2017-01-12  Tom Tromey  <tom@tromey.com>
15165             Sergio Durigan Junior  <sergiodj@redhat.com>
15166
15167         * Makefile.in (install-only): Install gdb-add-index.
15168
15169 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15170
15171         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15172
15173 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15174
15175         * infrun.c (keep_going_pass_signal): Clear step-over info when
15176         insert_breakpoints fails.
15177
15178 2018-01-11  Pedro Alves  <palves@redhat.com>
15179
15180         PR gdb/22583
15181         * infrun.c (resume): Rename to ...
15182         (resume_1): ... this.
15183         (resume): Reimplement as wrapper around resume_1.
15184
15185 2018-01-11  Pedro Alves  <palves@redhat.com>
15186
15187         PR remote/22597
15188         * remote.c (remote_parse_stop_reply): Default to the last-set
15189         general thread instead of to 'magic_null_ptid'.
15190
15191 2018-01-10  Pedro Alves  <palves@redhat.com>
15192
15193         * language.h (language_get_symbol_name_matcher): Rename ...
15194         (get_symbol_name_matcher): ... this.
15195         * language.c (language_get_symbol_name_matcher): Ditto.
15196         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15197         callers adjusted.
15198
15199 2018-01-10  Pedro Alves  <palves@redhat.com>
15200
15201         PR gdb/22670
15202         * dwarf2read.c
15203         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15204         Adjust to use language_get_symbol_name_matcher instead of
15205         language_defn::la_get_symbol_name_matcher.
15206         * language.c (language_get_symbol_name_matcher): If in Ada mode
15207         and the lookup name is a verbatim match, return Ada's matcher.
15208         * language.h (language_get_symbol_name_matcher): Adjust comment.
15209         (ada_lookup_name_info::verbatim_p):: New method.
15210
15211 2018-01-10  Pedro Alves  <palves@redhat.com>
15212
15213         PR gdb/22670
15214         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15215         minsym's language is language_auto or language_cplus, pass down
15216         language_ada instead.
15217         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15218
15219 2018-01-10  Pedro Alves  <palves@redhat.com>
15220
15221         PR gdb/22670
15222         * minsyms.c (linkage_name_str): New function.
15223         (iterate_over_minimal_symbols): Use it.
15224
15225 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15226
15227         * NEWS: Document that 'info proc' now works on FreeBSD.
15228
15229 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15230
15231         * configure.ac: Check for kinfo_getfile in libutil.
15232         * configure: Regenerate.
15233         * config.in: Regenerate.
15234         * fbsd-nat.c: Include "fbsd-tdep.h".
15235         (fbsd_fetch_cmdline): New.
15236         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15237         rather than calling error.
15238         (fbsd_info_proc): New.
15239         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15240         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15241         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15242
15243 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15244
15245         * fbsd-nat.c (struct free_deleter): Remove.
15246         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15247
15248 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15249
15250         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15251         NULL for an empty pathname.
15252
15253 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15254
15255         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15256         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15257         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15258         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15259         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15260         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15261         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15262         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15263         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15264         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15265         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15266         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15267         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15268         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15269         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15270
15271 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15272
15273         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15274         (gnu_xfer_auxv): New function.
15275         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15276         TARGET_OBJECT_AUXV.
15277
15278 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15279             Simon Marchi  <simon.marchi@ericsson.com>
15280
15281         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15282         common/selftest.c.
15283         (COMMON_OBS): Remove selftest.o.
15284         * configure.ac: Append selftest-arch.c and common/selftest.c to
15285         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15286         * configure: Re-generated.
15287         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15288         GDB_SELF_TEST.
15289         (maintenance_info_selftests): Likewise.
15290
15291 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15292
15293         * ada-valprint.c (val_print_packed_array_elements): Use
15294         proper number of elements when printing an array indexed
15295         by an enumeration type.
15296
15297 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15298
15299         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15300         (dw2_get_file_names_reader): Adjust.
15301         (lookup_dwo_signatured_type): Adjust.
15302         (lookup_dwp_signatured_type): Adjust.
15303         (lookup_signatured_type): Adjust.
15304         (create_type_unit_group): Adjust.
15305         (get_type_unit_group): Adjust.
15306         (process_psymtab_comp_unit_reader): Adjust.
15307         (build_type_psymtabs_reader): Adjust.
15308         (scan_partial_symbols): Adjust.
15309         (add_partial_symbol): Adjust.
15310         (add_partial_subprogram): Adjust.
15311         (peek_die_abbrev): Adjust.
15312         (fixup_go_packaging): Adjust.
15313         (process_imported_unit_die): Adjust.
15314         (dwarf2_compute_name): Adjust.
15315         (dwarf2_physname): Adjust.
15316         (read_import_statement): Adjust.
15317         (handle_DW_AT_stmt_list): Adjust.
15318         (read_file_scope): Adjust.
15319         (read_func_scope): Adjust.
15320         (read_lexical_block_scope): Adjust.
15321         (read_call_site_scope): Adjust.
15322         (read_variable): Adjust.
15323         (dwarf2_rnglists_process): Adjust.
15324         (dwarf2_ranges_process): Adjust.
15325         (dwarf2_ranges_read): Adjust.
15326         (dwarf2_get_pc_bounds): Adjust.
15327         (dwarf2_record_block_ranges): Adjust.
15328         (dwarf2_add_field): Adjust.
15329         (dwarf2_add_member_fn): Adjust.
15330         (read_structure_type): Adjust.
15331         (process_structure_scope): Adjust.
15332         (read_enumeration_type): Adjust.
15333         (read_array_type): Adjust.
15334         (mark_common_block_symbol_computed): Adjust.
15335         (read_common_block): Adjust.
15336         (read_namespace_type): Adjust.
15337         (read_namespace): Adjust.
15338         (read_module_type): Adjust.
15339         (read_tag_pointer_type): Adjust.
15340         (read_tag_ptr_to_member_type): Adjust.
15341         (read_tag_string_type): Adjust.
15342         (read_subroutine_type): Adjust.
15343         (read_typedef): Adjust.
15344         (read_base_type): Adjust.
15345         (attr_to_dynamic_prop): Adjust.
15346         (read_subrange_type): Adjust.
15347         (read_unspecified_type): Adjust.
15348         (dwarf2_read_abbrevs): Adjust.
15349         (load_partial_dies): Adjust.
15350         (read_partial_die): Adjust.
15351         (find_partial_die): Adjust.
15352         (guess_partial_die_structure_name): Adjust.
15353         (fixup_partial_die): Adjust.
15354         (read_attribute_value): Adjust.
15355         (read_addr_index): Adjust.
15356         (read_addr_index_from_leb128): Adjust.
15357         (read_str_index): Adjust.
15358         (dwarf2_string_attr): Adjust.
15359         (get_debug_line_section): Adjust.
15360         (dwarf_decode_line_header): Adjust.
15361         (lnp_state_machine::check_line_address): Adjust.
15362         (dwarf_decode_lines_1): Adjust.
15363         (dwarf_decode_lines): Adjust.
15364         (dwarf2_start_symtab): Adjust.
15365         (var_decode_location): Adjust.
15366         (new_symbol_full): Adjust.
15367         (dwarf2_const_value_data): Adjust.
15368         (dwarf2_const_value_attr): Adjust.
15369         (dwarf2_const_value): Adjust.
15370         (die_type): Adjust.
15371         (die_containing_type): Adjust.
15372         (build_error_marker_type): Adjust.
15373         (lookup_die_type): Adjust.
15374         (guess_full_die_structure_name): Adjust.
15375         (anonymous_struct_prefix): Adjust.
15376         (determine_prefix): Adjust.
15377         (dwarf2_name): Adjust.
15378         (follow_die_ref_or_sig): Adjust.
15379         (follow_die_offset): Adjust.
15380         (follow_die_ref): Adjust.
15381         (follow_die_sig_1): Adjust.
15382         (follow_die_sig): Adjust.
15383         (get_signatured_type): Adjust.
15384         (get_DW_AT_signature_type): Adjust.
15385         (decode_locdesc): Adjust.
15386         (dwarf_decode_macros): Adjust.
15387         (cu_debug_loc_section): Adjust.
15388         (fill_in_loclist_baton): Adjust.
15389         (dwarf2_symbol_mark_computed): Adjust.
15390         (init_one_comp_unit): Don't assign
15391         dwarf2_cu::dwarf2_per_objfile.
15392         (set_die_type): Adjust.
15393
15394 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15395
15396         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15397         <dwarf2_per_objfile>: New field.
15398         (dwarf2_per_objfile): Remove global.
15399         (get_dwarf2_per_objfile): New function.
15400         (set_dwarf2_per_objfile): New function.
15401         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15402         dwarf2_per_objfile.
15403         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15404         (read_abbrev_offset): Likewise.
15405         (read_indirect_string): Likewise.
15406         (read_indirect_line_string): Likewise.
15407         (read_indirect_string_at_offset): Likewise.
15408         (read_indirect_string_from_dwz): Likewise.
15409         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15410         dwarf2_per_objfile.
15411         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15412         (create_all_comp_units): Change objfile parameter to
15413         dwarf2_per_objfile.
15414         (create_all_type_units): Likewise.
15415         (process_queue): Add dwarf2_per_objfile parameter.
15416         (read_and_check_comp_unit_head): Likewise.
15417         (lookup_dwo_unit_in_dwp): Likewise.
15418         (get_dwp_file): Likewise.
15419         (process_cu_includes): Likewise.
15420         (struct free_dwo_file_cleanup_data): New struct.
15421         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15422         set_dwarf2_per_objfile.
15423         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15424         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15425         context, adjust calls.
15426         (dw2_instantiate_symtab): Likewise.
15427         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15428         (dw2_get_cu): Likewise.
15429         (create_cu_from_index_list): Change objfile parameter to
15430         dwarf2_per_objfile.
15431         (create_cus_from_index_list): Get dwarf2_per_objfile from
15432         context, adjust calls.
15433         (create_cus_from_index): Likewise.
15434         (create_signatured_type_table_from_index): Change objfile
15435         parameter to dwarf2_per_objfile.
15436         (create_signatured_type_table_from_debug_names): Change objfile
15437         parameter to dwarf2_per_objfile.
15438         (create_addrmap_from_index): Likewise.
15439         (create_addrmap_from_aranges): Likewise.
15440         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15441         (dw2_setup): Remove.
15442         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15443         context.
15444         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15445         get_dwarf2_per_objfile.
15446         (dw2_forget_cached_source_info): Likewise.
15447         (dw2_map_symtabs_matching_filename): Likewise.
15448         (struct dw2_symtab_iterator) <index>: Remove.
15449         <dwarf2_per_objfile>: New field.
15450         (dw2_symtab_iter_init): Replace index parameter with
15451         dwarf2_per_objfile.
15452         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15453         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15454         (dw2_print_stats): Likewise.
15455         (dw2_dump): Likewise.
15456         (dw2_expand_symtabs_for_function): Likewise.
15457         (dw2_expand_all_symtabs): Likewise.
15458         (dw2_expand_symtabs_with_fullname): Likewise.
15459         (dw2_expand_marked_cus): Replace index and objfile parameters
15460         with dwarf2_per_objfile.
15461         (dw_expand_symtabs_matching_file_matcher): Add
15462         dwarf2_per_objfile parameter and adjust calls.
15463         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15464         adjust calls.
15465         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15466         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15467         adjust calls.
15468         (create_cus_from_debug_names_list): Replace objfile parameter
15469         with dwarf2_per_objfile and adjust calls.
15470         (create_cus_from_debug_names): Likewise.
15471         (dwarf2_read_debug_names): Likewise.
15472         (mapped_debug_names::namei_to_name): Adjust call.
15473         (dw2_debug_names_iterator::next): Likewise.
15474         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15475         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15476         (dw2_debug_names_dump): Likewise.
15477         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15478         (dw2_debug_names_expand_symtabs_matching): Likewise.
15479         (dwarf2_initialize_objfile): Likewise.
15480         (dwarf2_build_psymtabs): Likewise.
15481         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15482         this_cu.
15483         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15484         (read_and_check_comp_unit_head): Likewise.
15485         (read_abbrev_offset): Likewise.
15486         (create_debug_type_hash_table): Likewise.
15487         (create_debug_types_hash_table): Likewise.
15488         (create_all_type_units): Replace objfile parameter with
15489         dwarf2_per_objfile.
15490         (add_type_unit): Add dwarf2_per_objfile parameter.
15491         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15492         with dwarf2_per_objfile.
15493         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15494         (lookup_dwp_signatured_type): Likewise.
15495         (lookup_signatured_type): Likewise.
15496         (read_cutu_die_from_dwo): Likewise.
15497         (init_tu_and_read_dwo_dies): Likewise.
15498         (init_cutu_and_read_dies): Likewise.
15499         (init_cutu_and_read_dies_no_follow): Likewise.
15500         (allocate_type_unit_groups_table): Add objfile parameter.
15501         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15502         (get_type_unit_group): Likewise.
15503         (process_psymtab_comp_unit): Update call.
15504         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15505         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15506         (print_tu_stats): Likewise.
15507         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15508         in void* parameter.
15509         (build_type_psymtabs): Change objfile parameter to
15510         dwarf2_per_objfile.
15511         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15512         passed in void* parameter.
15513         (process_skeletonless_type_units): Change objfile parameter to
15514         dwarf2_per_objfile.
15515         (set_partial_user): Likewise.
15516         (dwarf2_build_psymtabs_hard): Likewise.
15517         (read_comp_units_from_section): Likewise.
15518         (create_all_comp_units): Likewise.
15519         (scan_partial_symbols): Update calls.
15520         (add_partial_symbol): Likewise.
15521         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15522         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15523         (process_queue): Add dwarf2_per_objfile parameter.
15524         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15525         (compute_compunit_symtab_includes): Likewise.
15526         (process_cu_includes): Add dwarf2_per_objfile parameter.
15527         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15528         (process_full_type_unit): Likewise.
15529         (process_imported_unit_die): Update call.
15530         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15531         (read_file_scope): Likewise.
15532         (allocate_dwo_file_hash_table): Add objfile parameter.
15533         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15534         (create_cus_hash_table): Likewise.
15535         (create_dwp_hash_table): Likewise.
15536         (create_dwo_unit_in_dwp_v1): Likewise.
15537         (create_dwp_v2_section): Likewise.
15538         (create_dwo_unit_in_dwp_v2): Likewise.
15539         (lookup_dwo_unit_in_dwp): Likewise.
15540         (try_open_dwop_file): Likewise.
15541         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15542         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15543         cleanup to include a reference to dwarf2_per_objfile.
15544         (open_dwp_file): Add dwarf2_per_objfile parameter.
15545         (open_and_init_dwp_file): Likewise.
15546         (get_dwp_file): Likewise.
15547         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15548         (queue_and_load_all_dwo_tus): Update call.
15549         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15550         data.
15551         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15552         (dwarf2_ranges_process): Likewise.
15553         (dwarf2_get_pc_bounds): Likewise.
15554         (mark_common_block_symbol_computed): Likewise.
15555         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15556         (dwarf2_read_abbrevs): Update call.
15557         (read_partial_die): Use dwarf2_per_objfile from cu.
15558         (find_partial_die): Likewise.
15559         (fixup_partial_die): Likewise.
15560         (read_attribute_value): Likewise.
15561         (read_indirect_string_at_offset_from): Add objfile parameter.
15562         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15563         parameter.
15564         (read_indirect_string_from_dwz): Add objfile parameter.
15565         (read_indirect_string): Add objfile parameter.
15566         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15567         (read_addr_index): Use dwarf2_per_objfile from cu.
15568         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15569         call dw2_setup.
15570         (read_str_index): Use dwarf2_per_objfile from cu.
15571         (get_debug_line_section): Likewise.
15572         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15573         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15574         (new_symbol_full): Use dwarf2_per_objfile from cu.
15575         (build_error_marker_type): Likewise.
15576         (lookup_die_type): Likewise.
15577         (determine_prefix): Likewise.
15578         (follow_die_offset): Likewise.
15579         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15580         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15581         (dwarf2_fetch_die_type_sect_off): Likewise.
15582         (dwarf2_get_die_type): Likewise.
15583         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15584         (get_signatured_type): Likewise.
15585         (get_DW_AT_signature_type): Likewise.
15586         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15587         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15588         (cu_debug_loc_section): Likewise.
15589         (fill_in_loclist_baton): Likewise.
15590         (dwarf2_symbol_mark_computed): Likewise.
15591         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15592         dwarf2_per_objfile.
15593         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15594         parameter.
15595         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15596         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15597         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15598         (set_die_type): Use dwarf2_free_objfile from cu.
15599         (get_die_type_at_offset): Likewise.
15600         (dwarf2_per_objfile_free): Don't assign global variable.
15601         (debug_names) <constructor>: Add dwarf2_per_objfile
15602         parameter, update m_debugstrlookup construction.
15603         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15604         parameter.
15605         <m_dwarf2_per_objfile>: New field.
15606         <lookup>: Use m_dwarf2_per_objfile.
15607         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15608         (psyms_seen_size): Likewise.
15609         (write_gdbindex): Replace objfile parameter with
15610         dwarf2_per_objfile.
15611         (write_debug_names): Likewise.
15612         (write_psymtabs_to_index): Likewise.
15613         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15614         calls.
15615
15616 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15617
15618         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15619         <dwarf2_per_objfile>: New field.
15620         (struct dwarf2_per_cu_data) <objfile>: Remove.
15621         <dwarf2_per_objfile>: New field.
15622         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15623         of objfile.
15624         (create_signatured_type_table_from_index): Likewise.
15625         (create_debug_type_hash_table): Likewise.
15626         (fill_in_sig_entry_from_dwo_entry): Likewise.
15627         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15628         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15629         objfile.
15630         (create_partial_symtab): Access objfile through
15631         dwarf2_per_objfile.
15632         (process_psymtab_comp_unit_reader): Likewise.
15633         (read_comp_units_from_section): Likewise.
15634         (scan_partial_symbols): Likewise.
15635         (add_partial_symbol): Likewise.
15636         (add_partial_subprogram): Likewise.
15637         (peek_die_abbrev): Likewise.
15638         (fixup_go_packaging): Likewise.
15639         (process_full_comp_unit): Likewise.
15640         (process_full_type_unit): Likewise.
15641         (process_imported_unit_die): Likewise.
15642         (dwarf2_compute_name): Likewise.
15643         (dwarf2_physname): Likewise.
15644         (read_import_statement): Likewise.
15645         (create_cus_hash_table): Assign dwarf2_physname instead of
15646         objfile.
15647         (read_func_scope): Access objfile through dwarf2_per_objfile.
15648         (read_lexical_block_scope): Likewise.
15649         (read_call_site_scope): Likewise.
15650         (read_variable): Likewise.
15651         (dwarf2_rnglists_process): Likewise.
15652         (dwarf2_ranges_process): Likewise.
15653         (dwarf2_ranges_read): Likewise.
15654         (dwarf2_record_block_ranges): Likewise.
15655         (dwarf2_add_field): Likewise.
15656         (dwarf2_add_member_fn): Likewise.
15657         (read_structure_type): Likewise.
15658         (process_structure_scope): Likewise.
15659         (read_enumeration_type): Likewise.
15660         (read_array_type): Likewise.
15661         (read_common_block): Likewise.
15662         (read_namespace_type): Likewise.
15663         (read_namespace): Likewise.
15664         (read_module_type): Likewise.
15665         (read_tag_pointer_type): Likewise.
15666         (read_tag_ptr_to_member_type): Likewise.
15667         (read_tag_string_type): Likewise.
15668         (read_subroutine_type): Likewise.
15669         (read_typedef): Likewise.
15670         (read_base_type): Likewise.
15671         (attr_to_dynamic_prop): Likewise.
15672         (read_subrange_type): Likewise.
15673         (read_unspecified_type): Likewise.
15674         (load_partial_dies): Likewise.
15675         (read_partial_die): Likewise.
15676         (find_partial_die): Likewise.
15677         (guess_partial_die_structure_name): Likewise.
15678         (fixup_partial_die): Likewise.
15679         (read_attribute_value): Likewise.
15680         (read_addr_index_from_leb128): Likewise.
15681         (dwarf2_read_addr_index): Likewise.
15682         (dwarf2_string_attr): Likewise.
15683         (lnp_state_machine::check_line_address): Likewise.
15684         (dwarf_decode_lines_1): Likewise.
15685         (dwarf_decode_lines): Likewise.
15686         (dwarf2_start_symtab): Likewise.
15687         (var_decode_location): Likewise.
15688         (new_symbol_full): Likewise.
15689         (dwarf2_const_value_data): Likewise.
15690         (dwarf2_const_value_attr): Likewise.
15691         (dwarf2_const_value): Likewise.
15692         (die_type): Likewise.
15693         (die_containing_type): Likewise.
15694         (lookup_die_type): Likewise.
15695         (guess_full_die_structure_name): Likewise.
15696         (anonymous_struct_prefix): Likewise.
15697         (dwarf2_name): Likewise.
15698         (follow_die_ref_or_sig): Likewise.
15699         (follow_die_offset): Likewise.
15700         (follow_die_ref): Likewise.
15701         (dwarf2_fetch_die_loc_sect_off): Likewise.
15702         (dwarf2_fetch_constant_bytes): Likewise.
15703         (dwarf2_fetch_die_type_sect_off): Likewise.
15704         (dwarf2_get_die_type): Likewise.
15705         (follow_die_sig): Likewise.
15706         (decode_locdesc): Likewise.
15707         (dwarf2_per_cu_objfile): Likewise.
15708         (dwarf2_per_cu_text_offset): Likewise.
15709         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15710         objfile.
15711         (set_die_type): Access objfile through
15712         dwarf2_per_objfile.
15713
15714 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15715
15716         * valprint.c (converted_character_d): Remove typedef.
15717         (DEF_VEC_O (converted_character_d)): Remove.
15718         (count_next_character): Use std::vector.
15719         (print_converted_chars_to_obstack): Likewise.
15720         (generic_printstr): Likewise.
15721
15722 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15723
15724         * xml-support.h (struct gdb_xml_value): Add constructor.
15725         <value>: Change type to unique_xmalloc_ptr.
15726         (gdb_xml_value_s): Remove typedef.
15727         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15728         (gdb_xml_element_start_handler): Change parameter type to
15729         std::vector.
15730         (xml_find_attribute): Likewise.
15731         * xml-support.c (xml_find_attribute): Change parameter type to
15732         std::vector and adjust.
15733         (gdb_xml_values_cleanup): Remove.
15734         (gdb_xml_parser::start_element): Adjust to std::vector.
15735         (xinclude_start_include): Change paraeter type to std::vector
15736         and adjust.
15737         * btrace.c (check_xml_btrace_version): Likewise.
15738         (parse_xml_btrace_block): Likewise.
15739         (parse_xml_btrace_pt_config_cpu): Likewise.
15740         (parse_xml_btrace_pt): Likewise.
15741         (parse_xml_btrace_conf_bts): Likewise.
15742         (parse_xml_btrace_conf_pt): Likewise.
15743         * memory-map.c (memory_map_start_memory): Likewise.
15744         (memory_map_start_property): Likewise.
15745         * osdata.c (osdata_start_osdata): Likewise.
15746         (osdata_start_item): Likewise.
15747         (osdata_start_column): Likewise.
15748         * remote.c (start_thread): Likewise.
15749         * solib-aix.c (library_list_start_library): Likewise.
15750         (library_list_start_list): Likewise.
15751         * solib-svr4.c (library_list_start_library): Likewise.
15752         (svr4_library_list_start_list): Likewise.
15753         * solib-target.c (library_list_start_segment): Likewise.
15754         (library_list_start_section): Likewise.
15755         (library_list_start_library): Likewise.
15756         (library_list_start_list): Likewise.
15757         * tracepoint.c (traceframe_info_start_memory): Likewise.
15758         (traceframe_info_start_tvar): Likewise.
15759         * xml-syscall.c (syscall_start_syscall): Likewise.
15760         * xml-tdesc.c (tdesc_start_target): Likewise.
15761         (tdesc_start_feature): Likewise.
15762         (tdesc_start_reg): Likewise.
15763         (tdesc_start_union): Likewise.
15764         (tdesc_start_struct): Likewise.
15765         (tdesc_start_flags): Likewise.
15766         (tdesc_start_enum): Likewise.
15767         (tdesc_start_field): Likewise.
15768         (tdesc_start_enum_value): Likewise.
15769         (tdesc_start_vector): Likewise.
15770
15771 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15772
15773         * extension.h (struct xmethod_worker) <clone>: Remove.
15774         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15775         Remove.
15776         (python_xmethod_worker::clone): Remove.
15777         * valops.c (find_overload_match): Use std::move instead of
15778         clone.
15779
15780 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15781
15782         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15783         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15784         <free_xmethod_worker_data>: Remove.
15785         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15786         <get_xmethod_arg_types>: Remove.
15787         <get_xmethod_result_type>: Remove.
15788         <invoke_xmethod>: Remove.
15789         * extension.c (new_xmethod_worker): Remove.
15790         (clone_xmethod_worker): Remove.
15791         (get_matching_xmethod_workers): Return void, pass std::vector by
15792         pointer.
15793         (get_xmethod_arg_types): Rename to...
15794         (xmethod_worker::get_arg_types): ... this, and adjust.
15795         (get_xmethod_result_type): Rename to...
15796         (xmethod_worker::get_result_type): ... this, and adjust.
15797         (invoke_xmethod): Remove.
15798         (free_xmethod_worker): Remove.
15799         (free_xmethod_worker_vec): Remove.
15800         * extension.h (enum ext_lang_rc): Move here from
15801         extension-priv.h.
15802         (struct xmethod_worker): Add constructor and destructor.
15803         <data>: Remove.
15804         <value>: Remove.
15805         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15806         virtual pure methods.
15807         <get_arg_types, get_result_type>: New methods.
15808         (xmethod_worker_ptr): Remove typedef.
15809         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15810         (xmethod_worker_vec): Remove typedef.
15811         (xmethod_worker_up): New typedef.
15812         (invoke_xmethod): Remove.
15813         (clone_xmethod_worker): Remove.
15814         (free_xmethod_worker): Remove.
15815         (free_xmethod_worker_vec): Remove.
15816         (get_xmethod_arg_types): Remove.
15817         (get_xmethod_result_type): Remove.
15818         * valops.c (find_method_list): Use std::vector, don't use
15819         intermediate vector.
15820         (value_find_oload_method_list): Use std::vector.
15821         (find_overload_match): Use std::vector.
15822         (find_oload_champ): Use std::vector.
15823         * value.c (value_free): Use operator delete.
15824         (value_of_xmethod): Rename to...
15825         (value_from_xmethod): ... this.  Don't assign
15826         xmethod_worker::value, take rvalue-reference.
15827         (result_type_of_xmethod): Adjust.
15828         (call_xmethod): Adjust.
15829         * value.h: Include extension.h.
15830         (struct xmethod_worker): Don't forward-declare.
15831         (value_of_xmethod): Rename to...
15832         (value_from_xmethod): ... this, take rvalue-reference.
15833         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15834         (struct python_xmethod_worker): ... this, add constructor and
15835         destructor.
15836         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15837         (gdbpy_free_xmethod_worker_data): Rename to...
15838         (python_xmethod_worker::~python_xmethod_worker): ... this and
15839         adjust.
15840         (gdbpy_clone_xmethod_worker_data): Rename to...
15841         (python_xmethod_worker::clone): ... this and adjust.
15842         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15843         temporary vector.
15844         (gdbpy_get_xmethod_arg_types): Rename to...
15845         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15846         (gdbpy_get_xmethod_result_type): Rename to...
15847         (python_xmethod_worker::do_get_result_type): ... this and
15848         adjust.
15849         (gdbpy_invoke_xmethod): Rename to...
15850         (python_xmethod_worker::invoke): ... this and adjust.
15851         (new_python_xmethod_worker): Rename to...
15852         (python_xmethod_worker::python_xmethod_worker): ... this and
15853         adjust.
15854         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15855         Remove.
15856         (gdbpy_free_xmethod_worker_data): Remove.
15857         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15858         (gdbpy_get_xmethod_arg_types): Remove.
15859         (gdbpy_get_xmethod_result_type): Remove.
15860         (gdbpy_invoke_xmethod): Remove.
15861         * python/python.c (python_extension_ops): Remove obsolete
15862         callbacks.
15863
15864 2018-01-05  Pedro Alves  <palves@redhat.com>
15865
15866         PR gdb/18653
15867         * common/signals-state-save-restore.c
15868         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15869         find a custom handler preinstalled, instead of internal erroring.
15870         But only warn if !quiet.
15871         * common/signals-state-save-restore.h
15872         (save_original_signals_state): New parameter 'quiet'.
15873         * main.c (captured_main_1): Move save_original_signals_state call
15874         after option handling, and pass QUIET.
15875
15876 2018-01-05  Pedro Alves  <palves@redhat.com>
15877
15878         * spu-tdep.c (spu_catch_start): Pass
15879         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15880
15881 2018-01-05  Pedro Alves  <palves@redhat.com>
15882
15883         PR gdb/22670
15884         * ada-lang.c (literal_symbol_name_matcher): New function.
15885         (ada_get_symbol_name_matcher): Use it for
15886         symbol_name_match_type::SEARCH_NAME.
15887         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15888         it down instead of assuming symbol_name_match_type::FULL.
15889         * block.h (block_lookup_symbol): New parameter 'match_type'.
15890         * c-valprint.c (print_unpacked_pointer): Use
15891         lookup_symbol_search_name instead of lookup_symbol.
15892         * compile/compile-object-load.c (get_out_value_type): Pass down
15893         symbol_name_match_type::SEARCH_NAME.
15894         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15895         symbol_name_match_type::FULL.
15896         * cp-support.c (cp_get_symbol_name_matcher): Handle
15897         symbol_name_match_type::SEARCH_NAME.
15898         * infrun.c (insert_exception_resume_breakpoint): Use
15899         lookup_symbol_search_name.
15900         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15901         * psymtab.c (maintenance_check_psymtabs): Use
15902         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15903         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15904         SYMBOL_SEARCH_NAME.
15905         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15906         if symbol_name_match_type::SEARCH_NAME.
15907         (lookup_symbol_in_language): Pass down
15908         symbol_name_match_type::FULL.
15909         (lookup_symbol_search_name): New.
15910         (lookup_language_this): Pass down
15911         symbol_name_match_type::SEARCH_NAME.
15912         (lookup_symbol_aux, lookup_local_symbol): New parameter
15913         'match_type'.  Pass it down.
15914         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15915         (lookup_symbol_search_name): New declaration.
15916         (lookup_symbol_in_block): New 'match_type' parameter.
15917
15918 2018-01-05  Pedro Alves  <palves@redhat.com>
15919
15920         PR gdb/22670
15921         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15922         ada_lookup_symbol.
15923         (ada_lookup_symbol): Reimplement in terms of
15924         ada_lookup_symbol_list, bits factored out from
15925         ada_lookup_encoded_symbol.
15926
15927 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15928
15929         * ada-exp.y (write_object_renaming): When subscripting an array
15930         using a symbol as the index, pass the block in call to
15931         ada_lookup_encoded_symbol when looking that symbol up.
15932
15933 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15934
15935         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15936         TYPE_INDEX_TYPE.
15937
15938 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15939
15940         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15941         the case where VALUE_LVAL (val0) is not lval_memory.
15942
15943 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15944
15945         * ada-valprint.c (print_optional_low_bound): Handle
15946         character-indexed array printing like boolean-indexed array
15947         printing.
15948
15949 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15950
15951         * NEWS: Create a new section for the next release branch.
15952         Rename the section of the current branch, now that it has
15953         been cut.
15954
15955 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15956
15957         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15958         * version.in: Bump version to 8.1.50.DATE-git.
15959
15960 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15961
15962         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15963         Add field.
15964         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15965         Add field.
15966         (default_exception_support_info) <catch_handlers_sym>: Add field.
15967         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15968         (ada_exception_name_addr_1): Add "catch handlers" handling.
15969         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15970         Update all callers.
15971         (create_excep_cond_exprs) <ex>: Add parameter.
15972         (re_set_exception): Update create_excep_cond_exprs call.
15973         (print_it_exception, print_one_exception, print_mention_exception)
15974         (print_recreate_exception): Add "catch handler" handling.
15975         (allocate_location_catch_handlers, re_set_catch_handlers)
15976         (check_status_catch_handlers, print_it_catch_handlers)
15977         (print_one_catch_handlers, print_mention_catch_handlers)
15978         (print_recreate_catch_handlers): New function.
15979         (catch_handlers_breakpoint_ops): New variable.
15980         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15981         Add parameter.  Add "catch handler" handling.
15982         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15983         Add "catch handler" handling.
15984         (ada_exception_catchpoint_cond_string): Add "catch handler"
15985         handling.
15986         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15987         call.
15988         (catch_ada_handlers_command): New function.
15989         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15990         operations structure.
15991         (_initialize_ada_language): Add "catch handlers" command entry.
15992         * NEWS: Document "catch handlers" feature.
15993
15994 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15995
15996         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15997         account when creating the array type of the slice.
15998         (ada_value_slice): Likewise.
15999
16000 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16001
16002         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16003         New enum value.
16004         (create_array_type_with_stride): Add byte_stride_prop parameter.
16005         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16006         New parameter.  Update all callers in this file.
16007         (array_type_has_dynamic_stride): New function.
16008         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16009         of arrays with dynamic byte strides.
16010         * dwarf2read.c (read_array_type): Add support for dynamic
16011         DW_AT_byte_stride attributes.
16012
16013 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16014
16015         * dwarf2read.c (read_unspecified_type): Treat
16016         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16017
16018 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16019
16020         Update copyright year range in all GDB files.
16021
16022 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16023
16024         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16025         and gdb/testsuite/gdb.base/step-line.c.
16026
16027 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16028
16029         * copyright.py (main): Dump the contents of
16030         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16031         even if BY_HAND is empty.
16032
16033 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16034
16035         * top.c (print_gdb_version): Update Copyright year in version
16036         message.
16037
16038 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16039
16040         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16041
16042 For older changes see ChangeLog-2017.
16043 \f
16044 Local Variables:
16045 mode: change-log
16046 left-margin: 8
16047 fill-column: 74
16048 version-control: never
16049 coding: utf-8
16050 End: