Remove declarations of is_running/is_stopped/is_exited
[external/binutils.git] / gdb / ChangeLog
1 2018-11-23  Pedro Alves  <palves@redhat.com>
2
3         * gdbthread.h (enum thread_state): Move comments here.
4         (is_running, is_stopped, is_exited): Remove declarations.
5
6 2018-11-22  Pedro Alves  <palves@redhat.com>
7
8         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
9         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
10         ALL_NON_EXITED_THREADS with all_non_exited_threads.
11         (print_one_breakpoint_location): Replace ALL_INFERIORS with
12         all_inferiors.
13         * bsd-kvm.c: Include inferior.h.
14         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
15         with all_non_exited_threads.
16         * common/filtered-iterator.h: New.
17         * common/safe-iterator.h: New.
18         * corelow.c (core_target_open): Don't call init_thread_list here.
19         * darwin-nat.c (thread_info_from_private_thread_info): Replace
20         ALL_THREADS with all_threads.
21         * fbsd-nat.c (fbsd_nat_target::resume): Replace
22         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
23         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
24         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
25         * fork-child.c (postfork_hook): Don't call init_thread_list here.
26         * gdbarch-selftests.c (register_to_value_test): Adjust.
27         * gdbthread.h: Don't include "inferior.h" here.
28         (struct inferior): Forward declare.
29         (enum step_over_calls_kind): Moved here from inferior.h.
30         (thread_info::deletable): Definition moved to thread.c.
31         (find_thread_ptid (inferior *, ptid_t)): Declare.
32         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
33         Include "thread-iter.h".
34         (all_threads, all_non_exited_threads, all_threads_safe): New.
35         (any_thread_p): Declare.
36         (thread_list): Delete.
37         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
38         all_non_exited_threads.
39         (proceed_after_attach_callback): Delete.
40         (proceed_after_attach): Take an inferior pointer instead of an
41         integer PID.  Adjust to use range-for.
42         (attach_post_wait): Pass down inferior pointer instead of pid.
43         Use range-for instead of ALL_NON_EXITED_THREADS.
44         (detach_command): Remove init_thread_list call.
45         * inferior-iter.h: New.
46         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
47         (delete_thread_of_inferior): Delete.
48         (delete_inferior, exit_inferior_1): Use range-for with
49         inf->threads_safe() instead of iterate_over_threads.
50         (inferior_appeared): Call init_thread_list here.
51         (discard_all_inferiors): Use all_non_exited_inferiors.
52         (find_inferior_id, find_inferior_pid): Use all_inferiors.
53         (iterate_over_inferiors): Use all_inferiors_safe.
54         (have_inferiors, number_of_live_inferiors): Use
55         all_non_exited_inferiors.
56         (number_of_inferiors): Use all_inferiors and std::distance.
57         (print_inferior): Use all_inferiors.
58         * inferior.h: Include gdbthread.h.
59         (enum step_over_calls_kind): Moved to gdbthread.h.
60         (struct inferior) <thread_list>: New field.
61         <threads, non_exited_threads, threads_safe>: New methods.
62         (ALL_INFERIORS): Delete.
63         Include "inferior-iter.h".
64         (ALL_NON_EXITED_INFERIORS): Delete.
65         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
66         functions.
67         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
68         ALL_NON_EXITED_THREADS with all_non_exited_threads.
69         * infrun.c (follow_exec): Use all_threads_safe.
70         (clear_proceed_status, proceed): Use all_non_exited_threads.
71         (init_wait_for_inferior): Don't clear inline frame state here.
72         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
73         all_threads instead of ALL_NON_EXITED_THREADS.
74         (random_pending_event_thread): Use all_non_exited_threads instead
75         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
76         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
77         instead of ALL_NON_EXITED_THREADS.
78         (handle_no_resumed): Use all_non_exited_threads instead of
79         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
80         ALL_INFERIORS.
81         (restart_threads, switch_back_to_stepped_thread): Use
82         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
83         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
84         all_inferiors.
85         (kill_unfollowed_fork_children): Use inf->non_exited_threads
86         instead of ALL_NON_EXITED_THREADS.
87         * linux-tdep.c (linux_make_corefile_notes): Use
88         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
89         * linux-thread-db.c (thread_db_target::update_thread_list):
90         Replace ALL_INFERIORS with all_inferiors.
91         (thread_db_target::thread_handle_to_thread_info): Use
92         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
93         * mi/mi-interp.c (multiple_inferiors_p): New.
94         (mi_on_resume_1): Simplify using all_non_exited_threads and
95         multiple_inferiors_p.
96         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
97         instead of ALL_NON_EXITED_THREADS.
98         * nto-procfs.c (nto_procfs_target::open): Don't call
99         init_thread_list here.
100         * record-btrace.c (record_btrace_target_open)
101         (record_btrace_target::stop_recording)
102         (record_btrace_target::close)
103         (record_btrace_target::record_is_replaying)
104         (record_btrace_target::resume, record_btrace_target::wait)
105         (record_btrace_target::record_stop_replaying): Use
106         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
107         * record-full.c (record_full_wait_1): Use all_non_exited_threads
108         instead of ALL_NON_EXITED_THREADS.
109         * regcache.c (cooked_read_test): Remove reference to global
110         thread_list.
111         * remote-sim.c (gdbsim_target::create_inferior): Don't call
112         init_thread_list here.
113         * remote.c (remote_target::update_thread_list): Use
114         all_threads_safe instead of ALL_NON_EXITED_THREADS.
115         (remote_target::process_initial_stop_replies): Replace
116         ALL_INFERIORS with all_non_exited_inferiors and use
117         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
118         (remote_target::open_1): Don't call init_thread_list here.
119         (remote_target::append_pending_thread_resumptions)
120         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
121         instead of ALL_NON_EXITED_THREADS.
122         (remote_target::commit_resume)
123         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
124         with all_non_exited_inferiors and use all_non_exited_threads
125         instead of ALL_NON_EXITED_THREADS.
126         (remote_target::kill_new_fork_children): Use
127         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
128         init_thread_list and init_wait_for_inferior calls.
129         (remote_target::remote_btrace_maybe_reopen)
130         (remote_target::thread_handle_to_thread_info): Use
131         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
132         * target.c (target_terminal::restore_inferior)
133         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
134         all_non_exited_inferiors.
135         * thread-iter.c: New file.
136         * thread-iter.h: New file.
137         * thread.c: Include "inline-frame.h".
138         (thread_list): Delete.
139         (clear_thread_inferior_resources): Call clear_inline_frame_state.
140         (init_thread_list): Use all_threads_safe instead of
141         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
142         (new_thread): Adjust to per-inferior thread lists.
143         (add_thread_silent): Pass inferior to find_thread_ptid.
144         (thread_info::deletable): New, moved from the header.
145         (delete_thread_1): Adjust to per-inferior thread lists.
146         (find_thread_global_id): Use inf->threads().
147         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
148         find_thread_ptid.
149         (find_thread_ptid(inferior*, ptid_t)): New overload.
150         (iterate_over_threads): Use all_threads_safe.
151         (any_thread_p): New.
152         (thread_count): Use all_threads and std::distance.
153         (live_threads_count): Use all_non_exited_threads and
154         std::distance.
155         (valid_global_thread_id): Use all_threads.
156         (in_thread_list): Use find_thread_ptid.
157         (first_thread_of_inferior): Adjust to per-inferior thread lists.
158         (any_thread_of_inferior, any_live_thread_of_inferior): Use
159         inf->non_exited_threads().
160         (prune_threads, delete_exited_threads): Use all_threads_safe.
161         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
162         (set_resumed, set_running): Use all_non_exited_threads.
163         (is_thread_state, is_stopped, is_exited, is_running)
164         (is_executing): Delete.
165         (set_executing, set_stop_requested, finish_thread_state): Use
166         all_non_exited_threads.
167         (print_thread_info_1): Use all_inferiors and all_threads.
168         (thread_apply_all_command): Use all_non_exited_threads.
169         (thread_find_command): Use all_threads.
170         (update_threads_executing): Use all_non_exited_threads.
171         * tid-parse.c (parse_thread_id): Use inf->threads.
172         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
173
174 2018-11-22  Pedro Alves  <palves@redhat.com>
175
176         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
177         switch to it before calling into try_open_exec_file.
178
179 2018-11-22  Pedro Alves  <palves@redhat.com>
180
181         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
182         inferior_thread instead of find_thread_ptid, and only when
183         inferior_ptid is not null_ptid.
184         * inferior.c (add_inferior): Don't include target_pid_to_str
185         output when the inferior is not started.
186         * python/py-inferior.c (python_on_normal_stop): Don't use
187         find_thread_ptid.
188         (tui_on_user_selected_context_changed): Use inferior_thread
189         instead of find_thread_ptid, and only when inferior_ptid is not
190         null_ptid.
191
192 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
193
194         PR python/23714
195         * gdb/python/python.c (execute_gdb_command): Call
196         prevent_dont_repeat earlier to avoid affecting dont_repeat.
197
198 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
199
200         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
201         (HFILES_NO_SRCDIR): Add arch/riscv.h.
202         * arch/riscv.c: New file.
203         * arch/riscv.h: New file.
204         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
205         this list, and add arch/riscv.o.
206         * features/Makefile: Add riscv features.
207         * features/riscv/32bit-cpu.c: New file.
208         * features/riscv/32bit-cpu.xml: New file.
209         * features/riscv/32bit-csr.c: New file.
210         * features/riscv/32bit-csr.xml: New file.
211         * features/riscv/32bit-fpu.c: New file.
212         * features/riscv/32bit-fpu.xml: New file.
213         * features/riscv/64bit-cpu.c: New file.
214         * features/riscv/64bit-cpu.xml: New file.
215         * features/riscv/64bit-csr.c: New file.
216         * features/riscv/64bit-csr.xml: New file.
217         * features/riscv/64bit-fpu.c: New file.
218         * features/riscv/64bit-fpu.xml: New file.
219         * features/riscv/rebuild-csr-xml.sh: New file.
220         * riscv-tdep.c: Add 'arch/riscv.h' include.
221         (riscv_gdb_reg_names): Delete.
222         (csr_reggroup): New global.
223         (struct riscv_register_alias): Delete.
224         (struct riscv_register_feature): New structure.
225         (riscv_register_aliases): Delete.
226         (riscv_xreg_feature): New global.
227         (riscv_freg_feature): New global.
228         (riscv_virtual_feature): New global.
229         (riscv_csr_feature): New global.
230         (riscv_create_csr_aliases): New function.
231         (riscv_read_misa_reg): Delete.
232         (riscv_has_feature): Delete.
233         (riscv_isa_xlen): Simplify, just return cached xlen.
234         (riscv_isa_flen): Simplify, just return cached flen.
235         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
236         (riscv_register_name): Update to make use of tdesc_register_name.
237         Look up xreg and freg names in the new globals riscv_xreg_feature
238         and riscv_freg_feature.  Don't supply csr aliases here.
239         (riscv_fpreg_q_type): Delete.
240         (riscv_register_type): Use tdesc_register_type in almost all
241         cases, override the returned type in a few specific cases only.
242         (riscv_print_one_register_info): Handle errors reading registers.
243         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
244         registers that are otherwise unknown to GDB.  Also check the
245         csr_reggroup.
246         (riscv_print_registers_info): Remove assert about upper register
247         number, and use gdbarch_register_reggroup_p instead of
248         short-cutting.
249         (riscv_find_default_target_description): New function.
250         (riscv_check_tdesc_feature): New function.
251         (riscv_add_reggroups): New function.
252         (riscv_setup_register_aliases): New function.
253         (riscv_init_reggroups): New function.
254         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
255         setup register groups.  Register new riscv debug variable.
256         * riscv-tdep.h: Add 'arch/riscv.h' include.
257         (struct gdbarch_tdep): Remove abi union, and add
258         riscv_gdbarch_features field.  Remove cached quad floating point
259         type, and provide initialisation for double type field.
260         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
261         the list of targets using the feature based target descriptions.
262         * NEWS: Mention target description support.
263
264 2018-11-21  Pedro Alves  <palves@redhat.com>
265
266         * valops.c (find_method_list, value_find_oload_method_list)
267         (find_overload_match, find_oload_champ): Rename parameters and
268         locals.
269
270 2018-11-21  Pedro Alves  <palves@redhat.com>
271
272         * valops.c (find_method_list): Replace pointer and length
273         parameters with an gdb::array_view.  Adjust.
274         (value_find_oload_method_list): Likewise.
275         (find_overload_match): Use gdb::array_view for methods list.
276         Adjust to find_oload_champ interface change.
277         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
278         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
279
280 2018-11-21  Pedro Alves  <palves@redhat.com>
281
282         * gdbtypes.c (compare_badness): Change type of parameters to const
283         reference.  Adjust to badness_vector being a std::vector now.
284         (rank_function): Adjust to badness_vector being a std::vector now.
285         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
286         (LENGTH_MATCH): Delete.
287         (compare_badness): Change type of parameters to const reference.
288         (rank_function): Return a badness_vector by value now.
289         (find_overload_match): Adjust to badness_vector being a
290         std::vector now.  Remove cleanups.
291         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
292         badness_vector pointer.
293         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
294         a badness_vector pointer.  Adjust to badness_vector being a
295         std::vector now.  Remove cleanups.
296         (find_oload_champ): 'oload_champ_bv' parameter now
297         a badness_vector pointer.  Adjust to badness_vector being a
298         std::vector now.  Remove cleanups.
299
300 2018-11-21  Pedro Alves  <palves@redhat.com>
301
302         * cp-support.c (sym_return_val_size, sym_return_val_index)
303         (sym_return_val): Delete.
304         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
305         add to the vector.
306         (make_symbol_overload_list): Adjust to return a std::vector
307         instead of maintaining a global open coded vector.
308         (make_symbol_overload_list_block): Add std::vector parameter.
309         (make_symbol_overload_list_block): Rename to ...
310         (add_symbol_overload_list_block): ... this and add std::vector
311         parameter.
312         (make_symbol_overload_list_namespace): Rename to ...
313         (add_symbol_overload_list_namespace): ... this and add std::vector
314         parameter.
315         (make_symbol_overload_list_adl_namespace): Rename to ...
316         (add_symbol_overload_list_adl_namespace): ... this and add
317         std::vector parameter.
318         (make_symbol_overload_list_adl): Delete.
319         (add_symbol_overload_list_adl): New.
320         (make_symbol_overload_list_using): Rename to ...
321         (add_symbol_overload_list_using): ... this and add std::vector
322         parameter.
323         (make_symbol_overload_list_qualified): Rename to ...
324         (add_symbol_overload_list_qualified): ... this and add std::vector
325         parameter.
326         * cp-support.h: Include "common/array-view.h" and <vector>.
327         (make_symbol_overload_list): Change return type to std::vector.
328         (make_symbol_overload_list_adl): Delete declaration.
329         (add_symbol_overload_list_adl): New declaration.
330         * valops.c (find_overload_match): Local 'oload_syms' now a
331         std::vector.
332         (find_oload_champ_namespace): 'oload_syms' parameter now a
333         std::vector pointer.
334         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
335         std::vector pointer.  Adjust to new make_symbol_overload_list
336         interface.
337
338 2018-11-21  Pedro Alves  <palves@redhat.com>
339
340         * common/array-view.h (array_view::splice(size_type, size_t)): New.
341         (array_view::splice(size_type)): New.
342         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
343         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
344         std::vector.
345         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
346         * extension.h: Include "common/array-view.h".
347         (xmethod_worker::invoke): Adjust to use gdb::array_view.
348         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
349         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
350         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
351         (xmethod_worker::do_get_result_type): Adjust to use
352         gdb::array_view.
353         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
354         * gdbtypes.h: Include "common/array-view.h".
355         (rank_function): Adjust to use gdb::array_view.
356         * python/py-xmethods.c (python_xmethod_worker::invoke)
357         (python_xmethod_worker::do_get_arg_types)
358         (python_xmethod_worker::do_get_result_type)
359         (python_xmethod_worker::invoke): Adjust to new interfaces.
360         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
361         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
362         * valops.c (find_overload_match, find_oload_champ_namespace)
363         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
364         gdb:array_view and the new xmethod_worker interfaces.
365         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
366         gdb::array_view.
367         * value.h (find_overload_match, result_type_of_xmethod)
368         (call_xmethod): Adjust to use gdb::array_view.
369         * unittests/array-view-selftests.c: Add slicing tests.
370
371 2018-11-21  Pedro Alves  <palves@redhat.com>
372
373         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
374         * common/array-view.h (make_array_view): New.
375         * compile/compile-object-run.c (compile_object_run): Adjust to
376         pass an array_view.
377         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
378         * eval.c (eval_call): Adjust to pass an array_view.
379         (evaluate_subexp_standard): Adjust to pass an array_view.
380         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
381         * guile/scm-value.c (gdbscm_value_call): Likewise.
382         * infcall.c (push_dummy_code): Replace pointer + size parameters
383         with an array_view parameter.
384         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
385         adjust.
386         * infcall.h: Include "common/array-view.h".
387         (call_function_by_hand, call_function_by_hand_dummy): Replace
388         pointer + size parameters with an array_view parameter.
389         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
390         * linux-tdep.c (linux_infcall_mmap): Likewise.
391         * objc-lang.c (lookup_objc_class, lookup_child_selector)
392         (value_nsstring, print_object_command): Likewise.
393         * python/py-value.c (valpy_call): Likewise.
394         * rust-lang.c (rust_evaluate_funcall): Likewise.
395         * spu-tdep.c (flush_ea_cache): Likewise.
396         * valarith.c (value_x_binop, value_x_unop): Likewise.
397         * valops.c (value_allocate_space_in_inferior): Likewise.
398         * unittests/array-view-selftests.c (run_tests): Add
399         gdb::make_array_view test.
400
401 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
402
403         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
404         than a fixed size buffer.
405
406 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
407
408         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
409         and remove insertion of extra spaces in GDB's output.
410         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
411         Layout field into a temporary buffer, and then output it as a
412         string field.
413
414 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
415
416         * NEWS: Document the language choice done by
417         'info [types|functions|variables]|rbreak'.
418
419 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
420
421         * symtab.c (treg_matches_sym_type_name): Use
422         scoped_switch_to_sym_language_if_auto instead of local logic.
423         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
424         to switch to SYM language when language mode is auto.
425
426 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
427
428         * language.h (scoped_switch_to_sym_language_if_auto): New class.
429
430 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
431
432         * symtab.c (search_symbols): Properly check absence of type regexp
433         before entering the loop scanning the minimal symbols.
434
435 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
436
437         * s12z-tdep.c (s12z_extract_return_value): New function.
438         (inv_reg_perm) New array.
439         (s12z_return_value): Populate readbuf if non-null.
440
441 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
442
443         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
444         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
445         to MinGW fixed by Gnulib.
446         (O_NOINHERIT): Define if not defined.
447
448 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
449
450         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
451
452 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
453
454         * infrun.c (displaced_step_inferior_state) <next>: Remove.
455
456 2018-11-19  Tom Tromey  <tom@tromey.com>
457
458         * source.c (get_filename_and_charpos): Return void.
459
460 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
461
462         * skip.c (_initialize_step_skip): Fix "info skip" help.
463
464 2018-11-16  Tom Tromey  <tom@tromey.com>
465
466         PR rust/23625:
467         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
468
469 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
470
471         * infrun.c (displaced_step_inferior_states): Change type to
472         std::forward_list.
473         (get_displaced_stepping_state): Adjust.
474         (displaced_step_in_progress_any_inferior): Adjust.
475         (add_displaced_stepping_state): Adjust.
476         (remove_displaced_stepping_state): Adjust.
477
478 2018-11-18  Tom Tromey  <tom@tromey.com>
479
480         PR build/23814:
481         * target-delegates.c: Rebuild.
482         * ia64-linux-nat.c (class ia64_linux_nat_target)
483         <have_steppable_watchpoint>: Use override.  Return true, not 1.
484         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
485         "self" argument.
486         (ia64_linux_nat_target::low_new_thread): Rename.
487         (class ia64_linux_nat_target) <read_description>: Don't declare.
488         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
489         bool.
490
491 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
492
493         PR gdb/22736:
494         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
495         lang_struct_return code.
496
497 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
498
499         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
500         return_method.
501         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
502         * amd64-tdep.c (amd64_push_arguments): Likewise.
503         (amd64_push_dummy_call): Likewise.
504         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
505         * arc-tdep.c (arc_push_dummy_call): Likewise.
506         * arm-tdep.c (arm_push_dummy_call): Likewise.
507         * avr-tdep.c (avr_push_dummy_call): Likewise.
508         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
509         * cris-tdep.c (cris_push_dummy_call): Likewise.
510         * csky-tdep.c (csky_push_dummy_call): Likewise.
511         * frv-tdep.c (frv_push_dummy_call): Likewise.
512         * gdbarch.c: Regenerate.
513         * gdbarch.h: Regenerate.
514         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
515         return_method.
516         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
517         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
518         (hppa64_push_dummy_call): Likewise.
519         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
520         * i386-tdep.c (i386_push_dummy_call): Likewise.
521         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
522         * infcall.c (call_function_by_hand_dummy): Likewise.
523         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
524         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
525         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
526         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
527         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
528         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
529         * mep-tdep.c (mep_push_dummy_call): Likewise.
530         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
531         (mips_n32n64_push_dummy_call): Likewise.
532         (mips_o32_push_dummy_call): Likewise.
533         (mips_o64_push_dummy_call): Likewise.
534         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
535         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
536         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
537         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
538         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
539         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
540         (ppc64_sysv_abi_push_dummy_call): Likewise.
541         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
542         (ppc64_sysv_abi_push_dummy_call): Likewise.
543         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
544         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
545         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
546         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
547         * rx-tdep.c (rx_push_dummy_call): Likewise.
548         * s390-tdep.c (s390_push_dummy_call): Likewise.
549         * score-tdep.c (score_push_dummy_call): Likewise.
550         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
551         (sh_push_dummy_call_nofpu): Likewise.
552         * sparc-tdep.c (sparc32_store_arguments): Likewise.
553         (sparc32_push_dummy_call): Likewise.
554         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
555         (sparc64_push_dummy_call): Likewise.
556         * spu-tdep.c (spu_push_dummy_call): Likewise.
557         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
558         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
559         * v850-tdep.c (v850_push_dummy_call): Likewise.
560         * vax-tdep.c (vax_push_dummy_call): Likewise.
561         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
562         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
563
564 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
565
566         * gdbarch.sh (enum function_call_return_method): Add enum.
567         * gdbarch.h: Regenerate.
568         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
569
570 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
571
572         * unittests/copy_bitwise-selftests.c: New file.
573         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
574         (selftests::copy_bitwise_tests): Delete, moving this code to
575         unittests/copy_bitwise-selftests.c instead.
576         (_initialize_utils): Do not register copy_bitwise tests.
577         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
578         unittests/copy_bitwise-selftests.c.
579
580 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
581
582         * ada-lang.c (move_bits): Delete. Update all callers to use
583         copy_bitwise instead.
584         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
585         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
586         Move from here to utils.c.
587         (_initialize_dwarf2loc): Remove call to register copy_bitwise
588         selftests.
589         * utils.h (copy_bitwise): Add declaration.
590         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
591         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
592         Moved here from dwarf2loc.c.
593         (_initialize_utils): Register copy_bitwise selftests.
594
595 2018-11-14  Jim Wilson  <jimw@sifive.com>
596
597         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
598         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
599         then increment next_regnum if odd.
600         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
601         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
602         function type.  Pass new arg to riscv_arg_location based on function
603         type.
604         (riscv_return_value): Pass new arg to riscv_arg_location.
605
606         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
607         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
608         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
609
610         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
611         setting len.  New local align, set to max of arg align and xlen,
612         and pass to first riscv_assign_stack_location call.
613
614 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
615
616         * skip.c (complete_skip_number): New function.
617         (_initialize_step_skip): Add completers to some skip commands.
618
619 2018-11-09  Tom Tromey  <tom@tromey.com>
620
621         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
622         (struct remote_g_packet_data): Derive from allocate_on_obstack.
623         <guesses>: Now a std::vector.
624         (remote_g_packet_data_init, register_remote_g_packet_guess):
625         Update.
626         (remote_read_description_p): Update.  Return bool.
627         (remote_target::read_description): Update.
628         (struct remote_g_packet_guess): Add constructor.
629
630 2018-11-09  Tom Tromey  <tom@tromey.com>
631
632         * common/scoped_fd.h (class scoped_fd): Add move constructor and
633         move assignment operator.
634         * psymtab.c (psymtab_to_fullname): Update.
635         * source.h (open_source_file): Return scoped_fd.
636         (find_and_open_source): Likewise.
637         * source.c (open_source_file): Return scoped_fd.
638         (get_filename_and_charpos): Update.
639         (print_source_lines_base): Update.  Use scoped_fd::to_file.
640         (forward_search_command): Likewise.
641         (reverse_search_command): Likewise.
642         (find_and_open_source): Return scoped_fd.
643         * tui/tui-source.c (tui_set_source_content): Update.  Use
644         gdb_file_up.
645
646 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
647
648         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
649         overflow.
650
651 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
652
653         * configure: Regenerate.
654
655 2018-11-09  Tom de Vries  <tdevries@suse.de>
656
657         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
658         unconditionally, to set the language of the symbol.  Manage freeing
659         returned pointer using gdb::unique_xmalloc_ptr.
660
661 2018-11-08  Tom Tromey  <tom@tromey.com>
662
663         * record.c (require_record_target): Upper-case "<TAB>".
664
665 2018-11-08  Tom Tromey  <tom@tromey.com>
666
667         * python/lib/gdb/command/pretty_printers.py
668         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
669
670 2018-11-08  Tom Tromey  <tom@tromey.com>
671
672         PR gdb/23555:
673         PR gdb/23838:
674         * target.h (target_supports_terminal_ours): Return bool.
675         * target.c (target_supports_terminal_ours): Handle case where
676         current_top_target returns nullptr.  Return bool.
677
678 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
679
680         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
681         return the correct count for potential HFAs.
682
683 2018-11-08  Jan Beulich  <jbeulich@suse.com>
684
685         * i387-tdep.c (i387_supply_xsave): Split handling of
686         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
687         (i387_collect_xsave): Likewise.
688
689 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
690
691         * riscv-tdep.c (riscv_insn::decode): Update header comment.
692         (riscv_frame_this_id): Catch errors thrown while building the
693         frame cache, leave the frame id as the default, which is the outer
694         frame id.
695
696 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
697
698         * ada-lang.c (read_atcb): Only set task_info->called_task if
699         task_info->state == Entry_Caller_Sleep.
700         (print_ada_task_info): Do not check task_info->state before
701         checking task_info->called_task.
702         (info_task): Likewise.
703
704 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
705
706         * ada-tasks.c (read_atcb): Clear task_info before computing
707         the value of each of its fields.
708
709 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
710
711         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
712         NULL before dereferencing it.
713
714 2018-11-06  Tom de Vries  <tdevries@suse.de>
715
716         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
717         program headers.
718
719 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
720
721         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
722         so that it applies to uclinux as well.
723
724 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
725
726         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
727         when on AAPCS.
728
729 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
730
731         * riscv-fbsd-nat.c (getregs_supplies): Return true for
732         RISCV_CSR_SSTATUS_REGNUM.
733
734 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
735
736         * source.c (open_source_file): Fix leak by transferring the
737         current s->fullname to the unique_xmalloc_ptr fullname given
738         to find_and_open_source.
739
740 2018-11-04  Tom Tromey  <tom@tromey.com>
741
742         * varobj.c (install_default_visualizer): Update.
743         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
744         Return gdbpy_ref.
745         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
746         (find_pretty_printer_from_progspace)
747         (find_pretty_printer_from_gdb, find_pretty_printer)
748         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
749         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
750         Update.
751
752 2018-11-04  Tom Tromey  <tom@tromey.com>
753
754         * python/python.c (gdbpy_parameter_value): Update.
755         * python/python-internal.h (python_string_to_unicode)
756         (python_string_to_target_python_string)
757         (host_string_to_python_string): Return gdbpy_ref.
758         * python/py-utils.c (python_string_to_unicode)
759         (unicode_to_encoded_python_string)
760         (unicode_to_target_python_string)
761         (python_string_to_target_string)
762         (python_string_to_target_python_string): Return gdbpy_ref.
763         (python_string_to_host_string): Update.
764         (host_string_to_python_string): Return gdbpy_ref.
765         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
766         (stpy_fullname): Update.
767         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
768         Update.
769         * python/py-prettyprint.c (print_string_repr): Update.
770         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
771         (objfpy_get_build_id): Update.
772         * python/py-breakpoint.c (bppy_get_location)
773         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
774         Update.
775
776 2018-11-04  Tom Tromey  <tom@tromey.com>
777
778         * python/python-internal.h (gdb_py_object_from_longest)
779         (gdb_py_object_from_ulongest): Return gdbpy_ref.
780         * python/py-value.c (valpy_int): Update.
781         * python/py-utils.c (gdb_py_object_from_longest): Return
782         gdbpy_ref.
783         (gdb_py_object_from_ulongest): Likewise.
784         * python/py-type.c (typy_get_alignof): Update.
785         * python/py-linetable.c (ltpy_get_all_source_lines)
786         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
787         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
788
789 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
790
791         * ada-lang.c (_initialize_ada_language): Fix typo.
792
793 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
794
795         * language.c (type): Remove.
796         (_initialize_language): Remove assignment to type.
797
798 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
799
800         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
801         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
802         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
803         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
804         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
805         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
806         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
807         and aarch64-ravenscar-thread.o.
808         * NEWS: Add entry documenting Ravenscar tasking support
809         on AArch64 ELF.
810
811 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
812
813         * symtab.c (info_functions_command): Initialize quiet flag.
814         * stack.c (info_args_command): Likewise.
815
816 2018-11-01  Jim Wilson  <jimw@sifive.com>
817
818         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
819         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
820         debugging messages.
821
822 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
823
824         * ada-lang.c (ada_watch_location_expression): New function.
825         (ada_language_defn): Set la_watch_location_expression to
826         ada_watch_location_expression.
827
828 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
829
830         * print-utils.c (int_string): Remove unnecessary trailing spaces.
831
832 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
833
834         * rs6000-tdep.c (skip_prologue): Fix potential negative left
835         shifting.
836
837 2018-11-01  Jerome Guitton  <guitton@adacore.com>
838             Joel Brobecker  <brobecker@adacore.com>
839
840         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
841         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
842         * arm-pikeos-tdep.c: New file.
843         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
844         embedded system.
845         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
846
847 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
848
849         * common/pathstuff.c (get_standard_temp_dir): New.
850         * common/pathstuff.h (get_standard_temp_dir): New.
851         * config.in: Re-generate.
852         * configure: Re-generate.
853         * configure.ac: Don't check for mkdtemp.
854         * gnulib/aclocal-m4-deps.mk: Re-generate.
855         * gnulib/aclocal.m4: Re-generate.
856         * gnulib/config.in: Re-generate.
857         * gnulib/configure: Re-generate.
858         * gnulib/import/Makefile.am: Re-generate.
859         * gnulib/import/Makefile.in: Re-generate.
860         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
861         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
862         * gnulib/import/m4/mkdtemp.m4: New file.
863         * gnulib/import/mkdtemp.c: New file.
864         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
865         Add mkdtemp module.
866         * unittests/mkdir-recursive-selftests.c (test): Use
867         get_standard_temp_dir.
868         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
869         ifdef.
870         * compile/compile.c (get_compile_file_tempdir): Likewise.
871
872 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
873
874         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
875         (SIG_FRAME_LR_OFFSET64): New define.
876         (SIG_FRAME_FP_OFFSET64): New define.
877         (aix_sighandle_frame_cache): New Function.
878         (aix_sighandle_frame_this_id): New Function.
879         (aix_sighandle_frame_prev_register): New Function.
880         (aix_sighandle_frame_sniffer): New Function.
881         (aix_sighandle_frame_unwind): New global variable.
882         (rs6000_aix_init_osabi): Install new frame unwinder.
883
884 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
885
886         PR gdb/23835
887         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
888         already defined.
889
890 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
891
892         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
893
894 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
895
896         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
897         (producer_is_icc): New function.
898         (check_producer): Set producer_is_icc field on dwarf2_cu.
899         (dwarf2_init_integer_type): New function.
900         (read_base_type): Call dwarf2_init_integer_type instead of
901         init_integer_type in all cases.
902         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
903         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
904         LEN is greater than 0.
905
906 2018-10-30  Tom Tromey  <tom@tromey.com>
907
908         * main.c (captured_main_1): Check return value of bfd_init.
909
910 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
911
912         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
913         Adjust comments.
914
915 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
916
917         * procfs.c: Include common/pathstuff.h.
918
919 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
920
921         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
922         Add missing braces.  No functional change.
923
924 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
925
926         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
927         to report a bad option and fix indentation.
928         * demangle.c (demangle_command): Use report_unrecognized_option_error
929         to report a bad option and correctly report the bad option.
930
931 2018-10-27  Tom Tromey  <tom@tromey.com>
932
933         PR cli/23364:
934         * darwin-nat.c (copied_shell): New global.
935         (may_have_sip): Rename from should_disable_startup_with_shell.
936         (copy_shell_to_cache, maybe_cache_shell): New functions.
937         (darwin_nat_target::create_inferior): Update.  Use
938         copied_shell.
939
940 2018-10-27  Tom Tromey  <tom@tromey.com>
941
942         * unittests/scoped_fd-selftests.c (test_to_file): New function.
943         (run_tests): Call test_to_file.
944         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
945         temporary files.
946         * common/scoped_fd.h (scoped_fd::to_file): New method.
947
948 2018-10-27  Tom Tromey  <tom@tromey.com>
949
950         * unittests/scoped_mmap-selftests.c (test_normal): Use
951         gdb_mkostemp_cloexec.
952         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
953         Use gdb_mkostemp_cloexec.
954         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
955         gnulib/config.in, gnulib/configure,
956         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
957         gnulib/import/m4/gnulib-cache.m4,
958         gnulib/import/m4/gnulib-comp.m4: Update.
959         * gnulib/import/m4/mkostemp.m4: New file.
960         * gnulib/import/m4/mkstemp.m4: Remove.
961         * gnulib/import/mkostemp.c: New file.
962         * gnulib/import/mkstemp.m4: Remove.
963         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
964         mkstemp, add mkostemp.  Apply new patch.
965         * gnulib/import/stdlib.in.h: Apply patch.
966         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
967         New file.
968         * dwarf-index-write.c (write_psymtabs_to_index): Use
969         gdb_mkostemp_cloexec.
970         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
971
972 2018-10-27  Tom Tromey  <tom@tromey.com>
973
974         * unittests/mkdir-recursive-selftests.c: New file.
975         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
976         unittests/mkdir-recursive-selftests.c.
977         * dwarf-index-cache.c (mkdir_recursive): Move to
978         common/filestuff.c.
979         (index_cache::store): Check return value of mkdir_recursive.
980         (create_dir_and_check, test_mkdir_recursive): Move to new file.
981         (_initialize_index_cache): Don't register test.
982         * common/filestuff.h (mkdir_recursive): Declare.
983         * common/filestuff.c (mkdir_recursive): Move from
984         dwarf-index-cache.c.  Return bool.
985
986 2018-10-27  Tom Tromey  <tom@tromey.com>
987
988         * dwarf-index-write.c (write_psymtabs_to_index): Move
989         make_temp_filename to common/pathstuff.c.
990         * common/pathstuff.h (make_temp_filename): Declare.
991         * common/pathstuff.c (make_temp_filename): New function, moved
992         from dwarf-index-write.c.
993
994 2018-10-27  Tom Tromey  <tom@tromey.com>
995
996         * procfs.c (procfs_target::create_inferior): Use get_shell.
997         * cli/cli-cmds.c (shell_escape): Use get_shell.
998         * windows-nat.c (windows_nat_target::create_inferior): Use
999         get_shell.
1000         * common/pathstuff.c (get_shell): New function.
1001         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1002         (fork_inferior): Use get_shell.
1003         * common/pathstuff.h (get_shell): Declare.
1004
1005 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1006
1007         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1008
1009 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1010
1011         * stack.c (print_variable_and_value_data): Add preg and treg.
1012         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1013         and update callers.
1014         (print_frame_arg_vars): Likewise.
1015         (prepare_reg): New function.
1016         (info_locals_command): Extract info print args and use them.
1017         (info_args_command): Likewise.
1018         (_initialize_stack): Modify on-line help.
1019         * symtab.c (treg_matches_sym_type_name): New function.
1020         (search_symbols): New arg t_regexp.
1021         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1022         (info_variables_command): Extract info print args and use them.
1023         (info_functions_command): Likewise.
1024         (info_types_command): Update call to symtab_symbol_info.
1025         (_initialize_symtab): Modify on-line help.
1026         * symtab.h (treg_matches_sym_type_name): New function.
1027         (search_symbols): New t_regexp arg.
1028
1029 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1030
1031         * cli-utils.c (extract_arg_maybe_quoted): New function.
1032         (extract_info_print_args): New function.
1033         (info_print_args_help): New function.
1034         (report_unrecognized_option_error): New function.
1035         * cli-utils.h (extract_arg_maybe_quoted): New function.
1036         (extract_info_print_args): New function.
1037         (info_print_args_help): New function.
1038         (report_unrecognized_option_error): New function.
1039
1040 2018-10-26  Tom Tromey  <tom@tromey.com>
1041
1042         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1043         (compute_compunit_symtab_includes): Update.
1044         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1045         (compunit_symtab_ptr): Likewise.
1046
1047 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1048
1049         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1050         default_print_auxv_entry for specific tag values.
1051
1052 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1053
1054         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1055
1056 2018-10-26  Jim Wilson  <jimw@sifive.com>
1057
1058         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1059         (riscv_linux_sigframe_init): Declare.
1060         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1061         (riscv_linux_sigframe): New.
1062         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1063         (riscv_linux_sigframe_init): Define.
1064         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1065
1066         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1067         (riscv_isa_flen): Likewise.  Drop static.
1068         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1069         (riscv_isa_flen): Likewise.  Declare.
1070
1071 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1072             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1073
1074         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1075         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1076         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1077         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1078         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1079         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1080         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1081         Define.
1082         (struct ppc_linux_features) <htm>: New field.
1083         (ppc_linux_no_features): Add initializer for htm field.
1084         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1085         new tdescs.
1086         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1087         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1088         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1089         Define if not already defined.
1090         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1091         and rs6000/powerpc-isa207-htm-vsx64l.
1092         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1093         rs6000/powerpc-isa207-htm-vsx64l.xml.
1094         * features/rs6000/power-htm-spr.xml: New file.
1095         * features/rs6000/power-htm-core.xml: New file.
1096         * features/rs6000/power64-htm-core.xml: New file.
1097         * features/rs6000/power-htm-fpu.xml: New file.
1098         * features/rs6000/power-htm-altivec.xml: New file.
1099         * features/rs6000/power-htm-vsx.xml: New file.
1100         * features/rs6000/power-htm-ppr.xml: New file.
1101         * features/rs6000/power-htm-dscr.xml: New file.
1102         * features/rs6000/power-htm-tar.xml: New file.
1103         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1104         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1105         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1106         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1107         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1108         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1109         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1110         fetch_regset with HTM regsets.
1111         (store_register, store_ppc_registers): Call store_regset with HTM
1112         regsets.
1113         (ppc_linux_nat_target::read_description): Set htm field in the
1114         features struct if needed.
1115         * ppc-linux-tdep.c: Include
1116         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1117         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1118         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1119         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1120         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1121         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1122         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1123         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1124         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1125         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1126         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1127         (ppc32_linux_ctarregset): New globals.
1128         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1129         (ppc_linux_collect_core_cpgrregset): New function.
1130         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1131         regsets.
1132         (ppc_linux_core_read_description): Check if the tm spr section is
1133         present and set htm in the features struct.
1134         (_initialize_ppc_linux_tdep): Call
1135         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1136         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1137         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1138         Declare.
1139         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1140         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1141         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1142         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1143         New fields.
1144         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1145         Likewise.
1146         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1147         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1148         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1149         New enum fields.
1150         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1151         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1152         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1153         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1154         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1155         <PPC_CTAR_REGNUM>: Likewise.
1156         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1157         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1158         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1159         (IS_CEFP_PSEUDOREG): Define.
1160         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1161         registers.  Return names for the checkpointed DFP, VSX, and EFP
1162         pseudo registers.
1163         (rs6000_pseudo_register_type): Remove initial assert and raise an
1164         internal error in the else clause instead.  Return types for the
1165         checkpointed DFP, VSX, and EFP pseudo registers.
1166         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1167         checkpointed DFP pseudo registers.
1168         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1169         checkpointed VSX pseudo registers.
1170         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1171         from efpr_pseudo_register_read and
1172         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1173         registers.
1174         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1175         Handle checkpointed DFP, VSX, and EFP registers.
1176         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1177         (efp_ax_pseudo_register_collect): New functions.
1178         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1179         register logic to new functions.  Handle checkpointed DFP, VSX,
1180         and EFP pseudo registers.
1181         (rs6000_gdbarch_init): Look for and validate the htm features.
1182         Include checkpointed DFP, VSX and EFP pseudo-registers.
1183         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1184         HTM registers.
1185
1186 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1187
1188         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1189         without altivec or fpu.
1190
1191 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1192             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1193
1194         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1195         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1196         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1197         Define if not already defined.
1198         * features/rs6000/power-ebb.xml: New file.
1199         * features/rs6000/power-linux-pmu.xml: New file.
1200         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1201         features.
1202         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1203         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1204         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1205         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1206         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1207         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1208         fetch_regset with ebb and pmu regsets.
1209         (store_register, store_ppc_registers): Call store_regset with ebb
1210         and pmu regsets.
1211         (ppc_linux_nat_target::read_description): Set isa207 field in the
1212         features struct if ebb and pmu are avaiable.
1213         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1214         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1215         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1216         and pmu regsets.
1217         (ppc_linux_core_read_description): Check if the pmu section is
1218         present and set isa207 in the features struct.
1219         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1220         (ppc32_linux_pmuregset): Declare.
1221         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1222         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1223         <ppc_sier_regnum>: New field.
1224         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1225         New enum values.
1226         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1227         values.
1228         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1229         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1230         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1231         ebb and pmu features.
1232
1233 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1234             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1235
1236         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1237         (tdesc_powerpc_isa207_vsx64l): Declare.
1238         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1239         (struct ppc_linux_features) <isa207>: New field.
1240         (ppc_linux_no_features): Add initializer for isa207 field.
1241         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1242         new tdescs.
1243         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1244         (NT_PPC_TAR): Define if not already defined.
1245         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1246         rs6000/powerpc-isa207-vsx64l.
1247         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1248         rs6000/powerpc-isa207-vsx64l.xml.
1249         * features/rs6000/power-tar.xml: New file.
1250         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1251         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1252         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1253         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1254         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1255         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1256         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1257         fetch_regset with the TAR regset.
1258         (store_register, store_ppc_registers): Call store_regset with the
1259         TAR regset.
1260         (ppc_linux_nat_target::read_description): Set isa207 field in the
1261         features struct if needed.
1262         * ppc-linux-tdep.c: Include
1263         features/rs6000/powerpc-isa207-vsx32l.c and
1264         features/rs6000/powerpc-isa207-vsx64l.c.
1265         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1266         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1267         regset.
1268         (ppc_linux_core_read_description): Check if the tar section is
1269         present and set isa207 in the features struct.
1270         (_initialize_ppc_linux_tdep): Call
1271         initialize_tdesc_powerpc_isa207_vsx32l and
1272         initialize_tdesc_powerpc_isa207_vsx64l.
1273         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1274         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1275         (enum) <PPC_TAR_REGNUM>: New enum value.
1276         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1277         feature.
1278         (ppc_process_record_op31): Record changes to TAR.
1279
1280 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1281             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1282
1283         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1284         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1285         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1286         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1287         (struct ppc_linux_features) <ppr_dscr>: New field.
1288         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1289         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1290         new tdescs.
1291         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1292         Define if not already defined.
1293         * features/Makefile (WHICH): Add
1294         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1295         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1296         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1297         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1298         * features/rs6000/power-dscr.xml: New file.
1299         * features/rs6000/power-ppr.xml: New file.
1300         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1301         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1302         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1303         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1304         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1305         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1306         * ppc-linux-nat.c: Include <sys/uio.h>.
1307         (fetch_regset, store_regset, check_regset): New functions.
1308         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1309         DSCR and PPR regsets.
1310         (store_register, store_ppc_registers): Call store_regset with
1311         DSCR and PPR regsets.
1312         (ppc_linux_get_hwcap2): New function.
1313         (ppc_linux_nat_target::read_description): Call
1314         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1315         features struct if needed.
1316         * ppc-linux-tdep.c: Include
1317         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1318         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1319         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1320         (ppc32_linux_dscrregset): New globals.
1321         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1322         and dscr regsets.
1323         (ppc_linux_core_read_description): Check if the ppr and dscr
1324         sections are present and set ppr_dscr in the features struct.
1325         (_initialize_ppc_linux_tdep): Call
1326         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1327         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1328         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1329         (ppc32_linux_dscrregset): Declare.
1330         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1331         <ppc_dscr_regnum>: New field.
1332         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1333         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1334         and dscr features.
1335         (ppc_process_record_op31): Record changes to PPR and DSCR.
1336
1337 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1338
1339         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1340         second initializer line for the have_* variables.  Initialize
1341         have_fpu to 0 instead of 1.
1342
1343 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1344
1345         * arch/ppc-linux-common.c (ppc_linux_match_description):
1346         Parenthesize tdesc assignements and indent them properly.
1347
1348 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1349
1350         * ppc-linux-nat.c (fetch_register): Change if statement to else
1351         if.
1352         (store_register): Likewise.
1353
1354 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1355
1356         * rs6000-tdep.c: Remove reggroups.h include.
1357         (rs6000_pseudo_register_reggroup_p): Remove.
1358         (rs6000_gdbarch_init): Remove call to
1359         set_tdesc_pseudo_register_reggroup_p.
1360
1361 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1362
1363         * reggroups.c (default_register_reggroup_p): Return true for
1364         decfloat registers and float_reggroup.
1365
1366 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1367
1368         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1369         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1370         ppc_linux_collect_vrregset by regcache_collect_regset.
1371
1372 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1373
1374         * linux-tdep.c (linux_collect_regset_section_cb): Use
1375         std::vector<gdb_byte> instead of char * and malloc for buf.
1376         Remove xfree.
1377
1378 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1379
1380         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1381         symtab_start instead of always using language_unknown.
1382
1383 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1384
1385         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1386         READ_P parameter, catch and ignore register access errors from
1387         either the old or new MISA location.
1388         (riscv_has_feature): Update call to riscv_read_misa_reg.
1389
1390 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1391
1392         * python/py-function.c (convert_values_to_python): Return
1393         gdbpy_ref<>.  Add header comment.
1394         (fnpy_call): Adjust.
1395
1396 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1397
1398         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1399         (cmdpy_completer_handle_brkchars): Adjust.
1400         (cmdpy_completer): Adjust.
1401
1402 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1403
1404         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1405         Pass correct regnum to raw_supply_zeroed.
1406
1407 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1408
1409         * regcache.c (cooked_read_test): Add CSKY to the list of
1410         architectures with a save_reggroup
1411
1412 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1413
1414         PR gdb/23368
1415         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1416         transfer terminal state from old new new inferior.
1417         * terminal.h (swap_terminal_info): New function.
1418         * inflow.c (swap_terminal_info): New function.
1419
1420 2018-10-23  Tom Tromey  <tom@tromey.com>
1421
1422         * record-btrace.c (get_thread_current_frame_id): Rename from
1423         get_thread_current_frame.  Return a frame_id.
1424         (record_btrace_start_replaying): Update.
1425
1426 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1427
1428         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1429         for CSRs.
1430
1431 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1432
1433         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1434         have_nonsteppable_watchpoint attribute to 1.
1435
1436 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1437
1438         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1439         register names.
1440         (struct register_alias): Rename to...
1441         (struct riscv_register_alias): ...this, and update comment.
1442         (riscv_register_aliases): Update type, and alias names.  Remove
1443         CSR names from this list.
1444         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1445         register names.  Add an extra assertion.
1446         (riscv_is_regnum_a_named_csr): New function.
1447         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1448
1449 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1450
1451         * configure.tgt: Add configuration for s12z.
1452         * s12z-tdep.c:  New file.
1453         * NEWS: Mention new target.
1454
1455 2018-10-22  Jim Wilson  <jimw@sifive.com>
1456
1457         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1458         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1459
1460         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1461         (riscv_register_type): Use them.
1462         (riscv_print_one_register_info): Handle union of floats same as float.
1463         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1464         riscv_fpreg_q_type fields.
1465
1466 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1467
1468         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1469         * gdbarch.h: Re-generate.
1470         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1471         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1472         * eval.c (evaluate_subexp_standard): Likewise.
1473         * findvar.c (value_of_register): Likewise.
1474         (value_of_register_lazy): Likewise.
1475         (address_from_register): Likewise.
1476         * frame.c (get_frame_register_bytes): Likewise.
1477         * gdbarch-selftests.c (register_to_value_test): Likewise.
1478         * h8300-tdep.c (h8300_register_type): Likewise.
1479         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1480         (i386_svr4_reg_to_regnum): Likewise.
1481         * infcmd.c (default_print_registers_info): Likewise.
1482         (registers_info): Likewise.
1483         (print_vector_info): Likewise.
1484         (default_print_float_info): Likewise.
1485         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1486         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1487         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1488         (mi_cmd_data_list_changed_registers): Likewise.
1489         (mi_cmd_data_list_register_values): Likewise.
1490         (mi_cmd_data_write_register_values): Likewise.
1491         (mi_cmd_trace_frame_collected): Likewise.
1492         * mips-tdep.c (print_gp_register_row): Likewise.
1493         (mips_print_registers_info): Likewise.
1494         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1495         * regcache.c (init_regcache_descr): Likewise.
1496         (register_size): Likewise.
1497         (register_dump::dump): Likewise.
1498         (cooked_read_test): Likewise.
1499         (cooked_write_test): Likewise.
1500         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1501         (rs6000_gdbarch_init): Likewise.
1502         * stabsread.c (stab_reg_to_regnum): Likewise.
1503         * stack.c (info_frame_command): Likewise.
1504         * target-descriptions.c (tdesc_register_name): Likewise.
1505         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1506         * tui/tui-regs.c (tui_show_register_group): Likewise.
1507         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1508         (user_reg_map_regnum_to_name): Likewise.
1509         (value_of_user_reg): Likewise.
1510         (maintenance_print_user_registers): Likewise.
1511         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1512         (xtensa_register_name): Likewise.
1513         (xtensa_register_type): Likewise.
1514         (xtensa_reg_to_regnum): Likewise.
1515         (xtensa_pseudo_register_read): Likewise.
1516         (xtensa_pseudo_register_write): Likewise.
1517
1518 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1519
1520         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1521         correctly-sized buffer with raw_read.
1522         (amd64_pseudo_register_write): Use correctly-sized buffer for
1523         raw_read/raw_write.
1524
1525 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1526
1527         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1528         in add_prefix_cmd of set print type.
1529
1530 2018-10-19  Tom Tromey  <tom@tromey.com>
1531
1532         PR tui/18388:
1533         * NEWS: Mention tabset deprecation.
1534         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1535         (update_tab_width): New function.
1536         (tui_set_tab_width, tui_show_tab_width): New functions.
1537         (tui_set_tab_width_command): Use update_tab_width.
1538         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1539         Add new "set tui tab-width" command.
1540         * tui/tui-source.c (tui_set_source_content): Update.
1541         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1542         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1543         Don't declare.
1544         (tui_tab_width): Declare.
1545         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1546         (tui_set_default_tab_len): Remove.
1547
1548 2018-10-19  Tom Tromey  <tom@tromey.com>
1549
1550         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1551         (key_is_backspace, tui_getc): Don't declare.
1552         * tui/tui-io.c (key_is_start_sequence): Now static.
1553         (key_is_end_sequence, key_is_backspace): Remove.
1554         (tui_getc): Now static.
1555
1556 2018-10-19  Tom Tromey  <tom@tromey.com>
1557
1558         * symfile.c (reread_symbols): Clear "static_links".
1559
1560 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1561
1562         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1563         define.
1564         (aarch64_linux_sigframe_init): Extra boundary checks.
1565
1566 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1567
1568         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1569         the possibly non-existent tdesc type 'vec128', but the type of raw
1570         register v16 instead.
1571
1572 2018-10-19  Gary Benson <gbenson@redhat.com>
1573
1574         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1575
1576 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1577
1578         PR cli/23785
1579         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1580         NULL.
1581
1582 2018-10-17  Paul Koning  <paul_koning@dell.com>
1583
1584         * charset.c (convert_between_encodings): Fix unsigned overflow.
1585
1586 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1587
1588         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1589         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1590         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1591         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1592         New functions.
1593         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1594         and fbsd_info_proc_mappings_header.
1595         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1596         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1597         New.
1598
1599 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1600
1601         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1602         Solaris Maintainer.
1603
1604 2018-10-15  Tom Tromey  <tom@tromey.com>
1605
1606         * tui/tui.c (strcat_to_buf): Remove casts.
1607         * tui/tui-winsource.c (tui_show_source_line)
1608         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1609         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1610         * tui/tui-windata.c (tui_first_data_item_displayed)
1611         (tui_delete_data_content_windows, tui_erase_data_content)
1612         (tui_display_all_data, tui_display_data_from)
1613         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1614         * tui/tui-win.c (tui_set_win_height)
1615         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1616         casts.
1617         * tui/tui-win.c (tui_resize_all): Remove casts.
1618         (tui_scroll_backward_command, tui_set_focus)
1619         (tui_set_tab_width_command): Likewise.
1620         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1621         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1622         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1623         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1624         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1625         Remove casts.
1626
1627 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1628
1629         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1630         AArch64/ARM maintainer.
1631
1632 2018-10-11  Gary Benson <gbenson@redhat.com>
1633
1634         * interps.h (interp::m_name): Make private and mutable.
1635         * interps.c (interp::~interp): Free m_name.
1636
1637 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1638             Simon Marchi <simark@simark.ca>
1639
1640         * README (`configure' options): Add documentation for new
1641         "--enable-unit-tests" option.
1642         * acinclude.m4: Include "selftest.m4".
1643         * configure: Regenerate.
1644         * configure.ac: Use "GDB_AC_SELFTEST".
1645         * maint.c (maintenance_selftest): Update message informing
1646         that selftests have been disabled.
1647         (maintenance_info_selftests): Likewise.
1648         * selftest.m4: New file.
1649
1650 2018-10-10  Gary Benson <gbenson@redhat.com>
1651
1652         * remote.c (remote_target::remote_send_printf): Add
1653         missing va_end found by Coverity.
1654
1655 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1656
1657         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1658
1659 2018-10-09  Tom Tromey  <tom@tromey.com>
1660
1661         * configure: Rebuild.
1662         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1663         * NEWS: Update --enable-ubsan documentation.
1664
1665 2018-10-09  Gary Benson <gbenson@redhat.com>
1666
1667         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1668         found by Coverity.
1669
1670 2018-10-08  Tom Tromey  <tom@tromey.com>
1671
1672         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1673         variable.
1674         (riscv_fbsd_init_abi): Likewise.
1675
1676 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1677         * valops.c (value_struct_elt_for_reference): Rename local variable
1678         to work around the shadowing a previous local warning.
1679
1680 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1681
1682         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1683         * NEWS: Mention new FreeBSD/riscv native configuration.
1684         * configure.host: Add riscv*-*-freebsd*.
1685         * configure.nat: Likewise.
1686         * riscv-fbsd-nat.c: New file.
1687
1688 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1689
1690         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1691         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1692         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1693         * NEWS: Mention new FreeBSD/riscv target.
1694         * configure.tgt: Add riscv*-*-freebsd*.
1695         * riscv-fbsd-tdep.c: New file.
1696         * riscv-fbsd-tdep.h: New file.
1697
1698 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1699
1700         * regcache.h (struct regcache_map_entry): Note that this type can
1701         be used with traditional frame caches.
1702         * trad-frame.c (trad_frame_set_reg_regmap): New.
1703         * trad-frame.h (trad_frame_set_reg_regmap): New.
1704
1705 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1706
1707         PR c++/16841
1708         * valops.c (get_virtual_base_offset): New function.
1709         (value_struct_elt_for_reference): Use it to get virtual base offset
1710         and add it in calculating class member address.
1711
1712 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1713
1714         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1715         (check_producer): Check if the producer is codewarrior.
1716         (producer_is_codewarrior): New function.
1717         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1718         produced by codewarrior.
1719         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1720
1721 2018-10-06  Tom Tromey  <tom@tromey.com>
1722
1723         PR python/19399:
1724         * python/py-inferior.c: Add "architecture" entry.
1725         (infpy_architecture): New function.
1726
1727 2018-10-06  Tom Tromey  <tom@tromey.com>
1728
1729         PR python/21765:
1730         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1731         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1732         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1733         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1734
1735 2018-10-06  Tom Tromey  <tom@tromey.com>
1736
1737         PR build/17077:
1738         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1739         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1740         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1741         #include.
1742
1743 2018-10-06  Tom Tromey  <tom@tromey.com>
1744
1745         * python/py-breakpoint.c (bppy_get_location): Handle a
1746         bp_breakpoint without a location.
1747
1748 2018-10-06  Tom Tromey  <tom@tromey.com>
1749
1750         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1751         (_RegEx): Reformat help text.
1752         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1753         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1754         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1755         text.
1756         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1757         (EnableXMethod, DisableXMethod): Remove help indentation.
1758         Capitalize meta-syntactic variables.
1759         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1760         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1761         Capitalize meta-syntactic variables.
1762         * python/lib/gdb/command/explore.py (ExploreCommand)
1763         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1764         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1765         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1766         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1767         Remove help indentation.
1768         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1769         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1770         (DisableFrameFilter, SetFrameFilterPriority)
1771         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1772
1773 2018-10-06  Tom Tromey  <tom@tromey.com>
1774
1775         PR tui/28819:
1776         * tui/tui-io.c (gdb_wgetch): New function.
1777         (tui_mld_getc, tui_getc): Use it.
1778
1779 2018-10-05  Tom Tromey  <tom@tromey.com>
1780
1781         * sol-thread.c (sol_thread_target::wait): Rename inner
1782         "save_ptid".
1783
1784 2018-10-04  Tom Tromey  <tom@tromey.com>
1785
1786         * configure: Rebuild.
1787         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1788
1789 2018-10-04  Tom Tromey  <tom@tromey.com>
1790
1791         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1792         declaration of "block".
1793
1794 2018-10-04  Tom Tromey  <tom@tromey.com>
1795
1796         * common/filestuff.c (fdwalk): Remove inner declaration of
1797         "result".
1798
1799 2018-10-04  Tom Tromey  <tom@tromey.com>
1800
1801         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1802         "structs_addr" and hoist declaration.
1803
1804 2018-10-04  Tom Tromey  <tom@tromey.com>
1805
1806         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1807         variable "size".
1808
1809 2018-10-04  Tom Tromey  <tom@tromey.com>
1810
1811         * mdebugread.c (parse_partial_symbols): Use std::string.
1812
1813 2018-10-04  Tom Tromey  <tom@tromey.com>
1814
1815         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1816         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1817         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1818         header.
1819         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1820         more inner scope.
1821         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1822         * varobj.c (varobj_update): Rename inner "newobj",
1823         "type_changed".
1824         * valprint.c (generic_emit_char): Rename inner "buf".
1825         * valops.c (find_overload_match): Rename inner "temp".
1826         (value_struct_elt_for_reference): Declare "v" in more inner
1827         scope.
1828         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1829         * unittests/array-view-selftests.c (run_tests): Rename inner
1830         "vec".
1831         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1832         header.
1833         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1834         "tsv" in more inner scope.
1835         (print_one_static_tracepoint_marker): Rename inner
1836         "tuple_emitter".
1837         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1838         (tic6x_push_dummy_call): Don't redeclare "addr".
1839         * target-float.c: Declare "dto" lower.
1840         * symtab.c (lookup_local_symbol): Rename inner "sym".
1841         (find_pc_sect_line): Rename inner "pc".
1842         * stack.c (print_frame): Don't redeclare "gdbarch".
1843         (return_command): Rename inner "gdbarch".
1844         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1845         "sp".
1846         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1847         header.
1848         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1849         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1850         scope.
1851         * remote.c (remote_target::update_thread_list): Don't redeclare
1852         "tp".
1853         (remote_target::process_initial_stop_replies): Rename inner
1854         "thread".
1855         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1856         (remote_target::wait_as): Don't redeclare "stop_reply".
1857         (remote_target::get_thread_local_address): Rename inner
1858         "result".
1859         (remote_target::get_tib_address): Likewise.
1860
1861         * regcache.c (cooked_read_test): Rename "regnum".
1862         * record-btrace.c (cmd_record_btrace_start): Rename inner
1863         "exception".
1864         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1865         loop header.
1866         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1867         header.
1868         (ppu2spu_sniffer): Rename inner "buf".
1869         * parse.c (operator_check_standard): Rename inner "type",
1870         "objfile".
1871         * p-valprint.c (pascal_val_print): Introduce new scope for
1872         "low_bound", "high_bound".
1873         * p-exp.y (yylex): Declare "i" in loop header.
1874         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1875         Lower declaration of "s".
1876         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1877         header.
1878         (nios2_push_dummy_call): Rename "len".
1879         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1880         "buf".
1881         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1882         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1883         (linux_xfer_osdata_modules): Likewise.
1884         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1885         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1886         (mips_o64_push_dummy_call): Likewise.
1887         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1888         "op".
1889         * mi/mi-main.c (list_available_thread_groups): Rename inner
1890         "tuple_emitter".
1891         (mi_cmd_data_read_memory): Rename inner "opts".
1892         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1893         "tuple_emitter".
1894         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1895         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1896         more inner scope.
1897         (parse_partial_symbols): Rename inner "pst", "p", "name"
1898         * main.c (captured_main_1): Rename inner "i"s.
1899         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1900         "oso2".
1901         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1902         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1903         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1904         (handle_signal_stop): Rename inner "gdbarch".
1905         (handle_command): Declare "signum" in loop header.
1906         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1907         "status".
1908         (examine_prologue): Rename inner "sol" and "sof".
1909         (ia64_extract_return_value): Rename inner "val".  Declare another
1910         "val" in a more inner scope.
1911         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1912         inner scope.
1913         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1914         "except".
1915         * findvar.c (default_read_var_value): Don't redeclare "addr".
1916         * f-exp.y (yylex): Declare "i" in loop header.
1917         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1918         Rename inner "type", "expect_type".
1919         (evaluate_subexp_for_sizeof): Rename inner "pc".
1920         * elfread.c (elf_symfile_read): Rename inner "abfd".
1921         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1922         "bytes_read".
1923         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1924         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1925         (dwarf_decode_line_header): Rename inner "lh".
1926         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1927         "offset".  Declare "i" in loop header.
1928         (disassemble_dwarf_expression): Rename inner "addr_size".
1929         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1930         inner "result".
1931         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1932         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1933         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1934         "inner_list_emitter".
1935         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1936         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1937         declaration in a block.
1938         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1939         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1940         "obstack_final_size".
1941         * cp-support.c (inspect_type): Declare "i" in loop header.
1942         * compile/compile.c (compile_instance::insert_symbol_error):
1943         Rename inner "e".
1944         * common/agent.c (agent_run_command): Remove inner "ret"
1945         declaration.
1946         * coffread.c (coff_symfile_read): Rename inner "name".
1947         (coff_symfile_read): Rename inner "abfd".
1948         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1949         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1950         "high".
1951         * c-exp.y (lex_one_token): Move "len" declaration lower.
1952         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1953         "gdbarch".
1954         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1955         "b".
1956         (watch_command_1): Declare "mark" later.
1957         (clear_command): Don't shadow "a" or "b".
1958         (delete_command): Rename inner "b".
1959         (delete_trace_command): Likewise.
1960         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1961         "op".
1962         (arm_gdbarch_init): Remove inner "e_flags".
1963         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1964         "offset" in inner blocks.
1965
1966 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1967
1968         * dwarf-index-write.c (file_write): Don't write if the vector is
1969         empty.
1970
1971 2018-10-05  Tom de Vries  <tdevries@suse.de>
1972
1973         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1974         PyArg_ParseTuple call.
1975
1976 2018-10-05  Tom de Vries  <tdevries@suse.de>
1977
1978         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1979         PyArg_ParseTuple call.
1980
1981 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1982
1983         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1984         to avoid exceeding 80 characters per line limit.
1985
1986 2018-10-04  Tom Tromey  <tom@tromey.com>
1987
1988         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1989         (reread_symbols): Update.
1990         * complaints.h (clear_complaints): Remove argument.
1991         * complaints.c (enum complaint_series): Remove.
1992         (series): Remove global.
1993         (complaint_internal): Update.
1994         (clear_complaints): Remove argument.
1995
1996 2018-10-04  Tom Tromey  <tom@tromey.com>
1997
1998         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1999         debugging symbols" message if there is a separate debug objfile.
2000
2001 2018-10-04  Tom Tromey  <tom@tromey.com>
2002
2003         PR cli/19551:
2004         * symfile.c (symbol_file_add_with_addrs): Update output.
2005         * psymtab.c (require_partial_symbols): Update output.
2006
2007 2018-10-04  Tom Tromey  <tom@tromey.com>
2008
2009         PR cli/22234:
2010         * complaints.c: Emit \n.
2011
2012 2018-10-04  Tom Tromey  <tom@tromey.com>
2013
2014         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2015         (separate_debug_file_exists, find_separate_debug_file)
2016         (add_symbol_file_command, reread_symbols, allocate_symtab)
2017         (allocate_compunit_symtab): Use filtered printing, not
2018         unfiltered.
2019         * psymtab.c (require_partial_symbols, dump_psymtab)
2020         (allocate_psymtab): Use filtered printing, not unfiltered.
2021
2022 2018-10-04  Tom Tromey  <tom@tromey.com>
2023
2024         * complaints.c (complaint_internal): Correctly check complaint
2025         count.
2026
2027 2018-10-04  Tom Tromey  <tom@tromey.com>
2028
2029         * complaints.h (struct complaints): Remove declaration.
2030         * complaints.c (clear_complaints): Remove an unused variable.
2031
2032 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2033
2034         * MAINTAINERS (Write After Approval): Add self.
2035
2036 2018-10-03  Tom Tromey  <tom@tromey.com>
2037
2038         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2039         "buffer_contents".
2040         * coffread.c (coff_symtab_read): Initialize "newobj".
2041
2042 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2043
2044         * dwarf2read.c (read_func_scope): Remove struct keyword in
2045         range-based for.
2046
2047 2018-10-03  Tom Tromey  <tom@tromey.com>
2048
2049         * README: Mention --enable-ubsan.
2050         * NEWS: Mention --enable-ubsan.
2051         * acinclude.m4: Include sanitize.m4.
2052         * configure: Rebuild.
2053         * configure.ac: Call AM_GDB_UBSAN.
2054         * sanitize.m4: New file.
2055
2056 2018-10-03  Tom Tromey  <tom@tromey.com>
2057
2058         * expression.h (enum exp_opcode): Use uint8_t as base type.
2059         * expprint.c (op_name): Handle invalid opcodes.
2060
2061 2018-10-03  Tom Tromey  <tom@tromey.com>
2062
2063         * parse.c (prefixify_expression): Add assert.
2064         (parse_exp_in_context_1): Throw exception if the expression is
2065         empty.
2066
2067 2018-10-03  Tom Tromey  <tom@tromey.com>
2068
2069         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2070
2071 2018-10-03  Tom Tromey  <tom@tromey.com>
2072
2073         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2074
2075 2018-10-03  Tom Tromey  <tom@tromey.com>
2076
2077         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2078         unsigned.
2079
2080 2018-10-03  Tom Tromey  <tom@tromey.com>
2081
2082         * findvar.c (extract_integer): Do work in an unsigned type.
2083
2084 2018-10-03  Tom Tromey  <tom@tromey.com>
2085
2086         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2087         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2088         base type.
2089         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2090         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2091         type.
2092         * c-lang.h (enum c_string_type_values): Use unsigned as base
2093         type.
2094         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2095
2096 2018-10-03  Tom Tromey  <tom@tromey.com>
2097
2098         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2099         <~dwarf2_frame_state_reg_info>: Update.
2100         <dwarf2_frame_state_reg_info>: Update.
2101         <alloc_regs>: Add assertion.  Update.
2102         <reg>: Now a std::vector.
2103         <num_regs>: Remove.
2104         <swap>: Update.
2105         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2106         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2107
2108 2018-10-03  Tom Tromey  <tom@tromey.com>
2109
2110         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2111
2112 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2113
2114         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2115
2116 2018-10-02  Tom Tromey  <tom@tromey.com>
2117
2118         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2119
2120 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2121
2122         * NEWS: Mention changed commands.
2123         * ser-uds.c: New file.
2124         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2125         * configure: Regenerate.
2126         * Makefile.in: Add new file.
2127         * serial.c (serial_open): Check if filename is a socket
2128         and lookup the appropriate interface accordingly.
2129
2130 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2131
2132         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2133         define.
2134         (AARCH64_EXTRA_MAGIC): Likewise.
2135         (AARCH64_FPSIMD_MAGIC): Likewise.
2136         (AARCH64_SVE_MAGIC): Likewise.
2137         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2138         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2139         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2140         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2141         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2142         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2143         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2144         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2145         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2146         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2147         (read_aarch64_ctx): Add function.
2148         (aarch64_linux_sigframe_init): Detect FP registers.
2149
2150 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2151
2152         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2153         (AARCH64_D0_REGNUM): Likewise.
2154         (AARCH64_S0_REGNUM): Likewise.
2155         (AARCH64_H0_REGNUM): Likewise.
2156         (AARCH64_B0_REGNUM): Likewise.
2157         (AARCH64_SVE_V0_REGNUM): Likewise.
2158         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2159         (AARCH64_D0_REGNUM): Likewise.
2160         (AARCH64_S0_REGNUM): Likewise.
2161         (AARCH64_H0_REGNUM): Likewise.
2162         (AARCH64_B0_REGNUM): Likewise.
2163         (AARCH64_SVE_V0_REGNUM): Likewise.
2164
2165 2018-10-01  Gary Benson <gbenson@redhat.com>
2166
2167         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2168         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2169         prfpregset_t instead of gdb_prfpregset_t.
2170         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2171         * configure, config.in: Rebuild.
2172
2173 2018-10-01  Gary Benson <gbenson@redhat.com>
2174
2175         * common/gdb_proc_service.h: New file, factored out from...
2176         * gdb_proc_service.h: Moved common code to the above file.
2177         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2178
2179 2018-10-01  Gary Benson <gbenson@redhat.com>
2180
2181         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2182         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2183
2184 2018-10-01  Gary Benson <gbenson@redhat.com>
2185
2186         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2187         (AC_CHECK_HEADERS): Check for linux/elf.h.
2188         * configure, config.in: Rebuild.
2189         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2190         doesn't define elf_fpregset_t.
2191
2192 2018-10-01  Gary Benson <gbenson@redhat.com>
2193
2194         * gdb_proc_service.h: Whitespace change.
2195
2196 2018-10-01  Tom Tromey  <tom@tromey.com>
2197
2198         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2199         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2200         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2201
2202 2018-10-01  Tom Tromey  <tom@tromey.com>
2203
2204         * README: Minor change.
2205
2206 2018-09-30  Pedro Alves  <palves@redhat.com>
2207
2208         * darwin-nat-info.c (darwin_debug_regions_recurse)
2209         (info_mach_exceptions_command): Remove unused local variables.
2210         * darwin-nat.c (darwin_decode_notify_message)
2211         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2212         (darwin_stop_inferior, darwin_setup_exceptions)
2213         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2214         (darwin_nat_target::attach, darwin_nat_target::detach)
2215         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2216         local variables.
2217         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2218         variables.
2219
2220 2018-09-29  Tom Tromey  <tom@tromey.com>
2221
2222         * README: Remove some leftover text.
2223
2224 2018-09-29  Tom Tromey  <tom@tromey.com>
2225
2226         * PROBLEMS: Rewrite.
2227         * README: Update.
2228
2229 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2230
2231         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2232         case with explicit breakpoint kind.
2233         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2234         'additional_info' and related logic.
2235         (riscv_debug_breakpoints): New variable.
2236         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2237         instruction to determine the breakpoint kind.
2238         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2239         flag.  Update description of 'set/show riscv
2240         use-compressed-breakpoints' flag.
2241
2242 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2243
2244         (NEWS): Mention changes to frame related commands.
2245         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2246         (add_prefix_cmd_suppress_notification): New function.
2247         (add_com_suppress_notification): Call
2248         add_cmd_suppress_notification.
2249         * command.h (add_cmd_suppress_notification): Declare.
2250         (add_prefix_cmd_suppress_notification): Declare.
2251         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2252         (parse_frame_specification): Moved from stack.c, with
2253         simplification to handle a single argument.
2254         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2255         switch to the selected frame.  Add a header comment.
2256         * stack.c: Remove 'safe-ctype.h' include.
2257         (find_frame_for_function): Add declaration.
2258         (find_frame_for_address): New function.
2259         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2260         (frame_selection_by_function_completer): New function.
2261         (info_frame_command): Rename to...
2262         (info_frame_command_core): ...this, and update parameter types.
2263         (select_frame_command): Rename to...
2264         (select_frame_command_core): ...this, and update parameter types.
2265         (frame_command): Rename to...
2266         (frame_command_core): ...this, and update parameter types.
2267         (class frame_command_helper): New class to wrap implementations of
2268         frame related sub-commands.
2269         (frame_apply_cmd_list): New static global.
2270         (frame_cmd_list): Make static.
2271         (select_frame_cmd_list): New global for sub-commands.
2272         (info_frame_cmd_list): New global for sub-commands.
2273         (_initialize_stack): Register sub-commands for 'frame',
2274         'select-frame', and 'info frame'.  Update 'frame apply' commands
2275         to use frame_apply_cmd_list.  Move function local static
2276         frame_apply_list to file static frame_apply_cmd_list for
2277         consistency.
2278         * stack.h (select_frame_command): Delete declarationn.
2279         (select_frame_for_mi): Declare new function.
2280
2281 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2282
2283         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2284         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2285         and NOP.
2286
2287 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2288
2289         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2290
2291 2018-09-26  Tom Tromey  <tom@tromey.com>
2292
2293         * valops.c (auto_abandon): Remove dead code.
2294
2295 2018-09-26  Tom Tromey  <tom@tromey.com>
2296
2297         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2298
2299 2018-09-24  Tom Tromey  <tom@tromey.com>
2300
2301         * common/pathstuff.c (get_standard_cache_dir): Make
2302         "xdg_cache_home" and "home" const.
2303         * top.c (init_history): Make "tmpenv" const.
2304         * main.c (get_init_files): Make "homedir" const.
2305
2306 2018-09-23  Tom Tromey  <tom@tromey.com>
2307
2308         PR python/18852:
2309         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2310
2311 2018-09-23  Tom Tromey  <tom@tromey.com>
2312
2313         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2314         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2315         * python/python-internal.h (gdbpy_handle_exception): Declare.
2316         * python/py-utils.c (gdbpy_handle_exception): New function.
2317
2318 2018-09-23  Tom Tromey  <tom@tromey.com>
2319
2320         PR python/17284:
2321         * python/py-type.c (typy_template_argument): Check for negative
2322         argument number.
2323
2324 2018-09-23  Tom Tromey  <tom@tromey.com>
2325
2326         PR python/14062:
2327         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2328
2329 2018-09-23  Tom Tromey  <tom@tromey.com>
2330
2331         PR python/18170:
2332         * python/py-value.c (valpy_int): Allow conversion from pointer
2333         type.
2334
2335 2018-09-23  Tom Tromey  <tom@tromey.com>
2336
2337         PR python/20126:
2338         * python/py-value.c (valpy_int): Respect type sign.
2339
2340 2018-09-23  Tom Tromey  <tom@tromey.com>
2341
2342         PR python/18352;
2343         * python/py-value.c (valpy_float): Allow conversions from int or
2344         char.
2345         (valpy_int, valpy_long): Allow conversions from float.
2346
2347 2018-09-23  Tom Tromey  <tom@tromey.com>
2348
2349         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2350         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2351
2352 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2353
2354         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2355         __sighndlr.
2356         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2357
2358 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2359
2360         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2361         target_terminal::ours().
2362
2363 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2364
2365         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2366         of vl to ULONGEST.
2367
2368 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2369
2370         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2371         redundant condition.
2372
2373 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2374
2375         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2376
2377         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2378         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2379         * sol-thread.c (ps_pdmodel): Don't guard definition.
2380
2381         * procfs.c: Fix formatting.
2382
2383         * procfs.c (sysset_t_alloc): Remove.
2384         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2385         (procfs_debug_inferior): Likewise.
2386         (procfs_set_exec_trap): Likewise.
2387         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2388         (proc_set_traced_sysexit): Likewise.
2389
2390         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2391         (dead_procinfo): Likewise.
2392         (proc_warn): Likewise.
2393         (proc_error): Likewise.
2394         (proc_get_LDT_entry): Likewise.
2395         (do_attach): Likewise.
2396         (procfs_target::pid_to_str): Likewise.
2397         (iterate_over_mappings): Likewise.
2398
2399         * procfs.c (create_procinfo): Fix ARI warning.
2400         (proc_get_status): Likewise.
2401         (proc_stop_process): Likewise.
2402         (proc_run_process): Likewise.
2403         (proc_kill): Likewise.
2404         (proc_get_LDT_entry): Likewise.
2405         (procfs_find_LDT_entry): Likewise.
2406         (proc_update_threads): Likewise.
2407         (proc_iterate_over_threads): Likewise.
2408         (do_attach): Likewise.
2409         (procfs_xfer_memory): Likewise.
2410         (invalidate_cache): Likewise.
2411         (procfs_target::resume): Likewise.
2412         (procfs_init_inferior): Likewise.
2413         (procfs_set_exec_trap): Likewise.
2414         (procfs_target::thread_alive): Likewise.
2415         (procfs_target::pid_to_exec_file): Likewise.
2416         (iterate_over_mappings): Likewise.
2417         (procfs_target::make_corefile_notes): Likewise.
2418         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2419
2420         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2421         (procfs_find_LDT_entry): Likewise.
2422         * sol-thread.c (ps_lgetLDT): Likewise.
2423
2424 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2425
2426         PR tdep/17903
2427         * procfs.c (procfs_target): Declare pid_to_exec_file.
2428         (procfs_target::pid_to_exec_file): New.
2429
2430 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2431
2432         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2433         renaming.
2434         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2435         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2436
2437 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2438
2439         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2440         (supply_fpregset, fill_fpregset): Move ...
2441         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2442         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2443         Remove references to ioctl-based procfs.
2444         Include <sys/reg.h>.
2445         Remove PR_MODEL_NATIVE guards.
2446         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2447         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2448
2449 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2450
2451         PR gdb/20981:
2452         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2453         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2454         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2455
2456 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2457
2458         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2459         (fbsd_print_sockaddr_in6): Likewise.
2460
2461 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2462             Chris January  <chris.january@arm.com>
2463
2464         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2465         (evaluate_subexp_standard): Return a dummy type when
2466         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2467         OP_F77_UNDETERMINED_ARGLIST case.
2468         * expression.h (enum noside): Update comment.
2469
2470 2018-09-19  George Vasick <george.vasick@oracle.com>
2471
2472         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2473
2474 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2475             April Chin <april.chin@oracle.com>
2476             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2477
2478         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2479         uint_t lwpid_t.
2480         (create_procinfo): Print pids in /proc without leading zeros.
2481
2482 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2483
2484         * nios2-tdep.c (nios2_gcc_target_options): New.
2485         (nios2_gdb_arch_init): Install new hook.
2486
2487 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2488
2489         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2490         New file.
2491         * update-gnulib.sh: Apply patch.
2492         * configure: Re-generate.
2493
2494 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2495
2496         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2497         description.  Make "info proc" command descriptions more
2498         consistent.
2499
2500 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2501
2502         * NEWS: Mention 'info proc files' command.
2503
2504 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2505
2506         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2507         descriptors for IP_FILES and IP_ALL.
2508
2509 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2510
2511         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2512         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2513         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2514         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2515         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2516         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2517         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2518         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2519         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2520         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2521         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2522         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2523         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2524         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2525         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2526         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2527         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2528         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2529         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2530         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2531         (struct fbsd_sockaddr_un): New types.
2532         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2533         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2534         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2535         (fbsd_core_info_proc_files): New functions.
2536         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2537         IP_ALL.
2538         * fbsd-tdep.h (fbsd_info_proc_files_header)
2539         (fbsd_info_proc_files_entry): New.
2540
2541 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2542
2543         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2544         * infcmd.c (info_proc_cmd_files): New function.
2545         (_initialize_infcmd): Register 'info proc files' command.
2546
2547 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2548
2549         * gnulib/aclocal-m4-deps.mk: Re-generate.
2550         * gnulib/aclocal.m4: Re-generate.
2551         * gnulib/config.in: Re-generate.
2552         * gnulib/configure: Re-generate.
2553         * gnulib/import/Makefile.am: Re-generate.
2554         * gnulib/import/Makefile.in: Re-generate.
2555         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2556         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2557         * gnulib/import/arpa_inet.in.h: New file.
2558         * gnulib/import/inet_ntop.c: New file.
2559         * gnulib/import/m4/arpa_inet_h.m4: New file.
2560         * gnulib/import/m4/inet_ntop.m4: New file.
2561         * gnulib/import/m4/netinet_in_h.m4: New file.
2562         * gnulib/import/m4/socklen.m4: New file.
2563         * gnulib/import/m4/sockpfaf.m4: New file.
2564         * gnulib/import/m4/stdalign.m4: New file.
2565         * gnulib/import/m4/sys_uio_h.m4: New file.
2566         * gnulib/import/netinet_in.in.h: New file.
2567         * gnulib/import/stdalign.in.h: New file.
2568         * gnulib/import/sys_socket.c: New file.
2569         * gnulib/import/sys_socket.in.h: New file.
2570         * gnulib/import/sys_uio.in.h: New file.
2571         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2572         module.
2573
2574 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2575
2576         * gnulib/aclocal-m4-deps.mk: New file.
2577         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2578         deterministically.
2579
2580 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2581
2582         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2583         KVE_PATH.
2584
2585 2018-09-18  Tom Tromey  <tom@tromey.com>
2586
2587         * compile/compile-object-load.c (struct
2588         link_hash_table_cleanup_data): Add constructor and destructor.
2589         Use DISABLE_COPY_AND_ASSIGN.
2590         (~link_hash_table_cleanup_data): Rename from
2591         link_hash_table_free.  Now a destructor.
2592         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2593
2594 2018-09-18  Tom Tromey  <tom@tromey.com>
2595
2596         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2597         * compile/compile-object-load.c (struct munmap_list): Move to
2598         header file.
2599         (munmap_list::add): Rename from munmap_list_add; rewrite.
2600         (munmap_list::~munmap_list): Rename from munmap_list_free.
2601         (munmap_listp_free_cleanup): Remove.
2602         (compile_object_load): Update.
2603         * compile/compile-object-load.h (struct munmap_list): Move from
2604         compile-object-load.c.  Rewrite.
2605
2606 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2607
2608         * aarch64-tdep.c (pass_in_v): Use register size.
2609         (aarch64_extract_return_value): Likewise.
2610         (aarch64_store_return_value): Likewise.
2611
2612 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2613
2614         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2615         rlim_t.
2616
2617 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2618
2619         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2620         Fix short help line.
2621
2622 2018-09-17  Tom Tromey  <tom@tromey.com>
2623
2624         PR python/20445:
2625         * configure: Rebuild.
2626         * configure.ac: Conditionally use -DNDEBUG for Python.
2627
2628 2018-09-17  Tom Tromey  <tom@tromey.com>
2629
2630         * configure: Rebuild.
2631         * configure.ac: Use gmp as a library dependency when checking for
2632         mpfr.
2633
2634 2018-09-17  Pedro Alves  <palves@redhat.com>
2635
2636         * python/py-inferior.c (find_inferior_object): Delete.
2637
2638 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2639
2640         * compile/compile-cplus-types.c
2641         (compile_cplus_instance::enter_scope): Don't use new_scope after
2642         std::move.
2643
2644 2018-09-17  Tom Tromey  <tom@tromey.com>
2645
2646         * common/pathstuff.c (get_standard_cache_dir): Use
2647         ~/Library/Caches on macOS.
2648         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2649
2650 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2651
2652         PR python/23669
2653         * breakpoint.c (commands_cmd_element): New.
2654         (_initialize_breakpoint): Assign commands_cmd_element.
2655         * breakpoint.h (commands_cmd_element): New.
2656         * cli/cli-script.c (while_cmd_element, if_command,
2657         define_cmd_element): New.
2658         (command_name_equals): Remove.
2659         (process_next_line): Compare commands by pointer, not by name.
2660         (_initialize_cli_script): Assign the various cmd_list_element
2661         variables.
2662         * compile/compile.c (compile_cmd_element): New.
2663         (_initialize_compile): Assign compile_cmd_element.
2664         * compile/compile.h (compile_cmd_element): New.
2665         * guile/guile.c (guile_cmd_element): New.
2666         (install_gdb_commands): Assign guile_cmd_element.
2667         * guile/guile.h (guile_cmd_element): New.
2668         * python/python.c (python_cmd_element): New.
2669         (_initialize_python): Assign python_cmd_element.
2670         * python/python.h (python_cmd_element): New.
2671         * tracepoint.c (while_stepping_cmd_element): New.
2672         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2673         * tracepoint.h (while_stepping_cmd_element): New.
2674
2675 2018-09-17  Tom Tromey  <tom@tromey.com>
2676
2677         * infrun.c (save_infcall_suspend_state): Return
2678         infcall_suspend_state_up.
2679         (save_infcall_control_state): Return infcall_control_state_up.
2680         * inferior.h (save_infcall_suspend_state)
2681         (save_infcall_control_state): Declare later.  Return unique
2682         pointers.
2683
2684 2018-09-17  Tom Tromey  <tom@tromey.com>
2685
2686         * infrun.c (struct stop_context): Declare constructor,
2687         destructor, "changed" method.
2688         (stop_context::stop_context): Rename from save_stop_context.
2689         (stop_context::~stop_context): Rename from
2690         release_stop_context_cleanup.
2691         (normal_stop): Update.
2692         (stop_context::changed): Rename from stop_context_changed.  Return
2693         bool.
2694
2695 2018-09-17  Tom Tromey  <tom@tromey.com>
2696
2697         * inferior.h (struct infcall_suspend_state_deleter): New.
2698         (infcall_suspend_state_up): New typedef.
2699         (struct infcall_control_state_deleter): New.
2700         (infcall_control_state_up): New typedef.
2701         (make_cleanup_restore_infcall_suspend_state)
2702         (make_cleanup_restore_infcall_control_state): Don't declare.
2703         * infcall.c (call_function_by_hand_dummy): Update.
2704         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2705         (make_cleanup_restore_infcall_suspend_state): Remove.
2706         (do_restore_infcall_control_state_cleanup)
2707         (make_cleanup_restore_infcall_control_state): Remove.
2708
2709 2018-09-17  Tom Tromey  <tom@tromey.com>
2710
2711         * gdbthread.h (struct thread_control_state): Add initializer.
2712         (class thread_info) <control>: Remove initializer.
2713         * inferior.h (struct inferior_control_state): Add initializer.
2714         (class inferior) <control>: Remove initializer.
2715         (exit_inferior_1): Update.
2716         * infrun.c (struct infcall_control_state): Add constructors.
2717         (save_infcall_control_state): Use new.
2718         (restore_infcall_control_state, discard_infcall_control_state):
2719         Use delete.
2720
2721 2018-09-17  Tom Tromey  <tom@tromey.com>
2722
2723         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2724         unique_ptr.
2725         <siginfo_data>: Now a unique_xmalloc_ptr.
2726         (save_infcall_suspend_state, restore_infcall_suspend_state)
2727         (discard_infcall_suspend_state)
2728         (get_infcall_suspend_state_regcache): Update.
2729
2730 2018-09-17  Tom Tromey  <tom@tromey.com>
2731
2732         * gdbthread.h (struct thread_suspend_state): Add initializers.
2733         (class thread_info) <suspend>: Remove initializer.
2734         * infrun.c (struct infcall_suspend_state): Add initializers.
2735         (save_infcall_suspend_state): Use new.
2736         (discard_infcall_suspend_state): Use delete.
2737
2738 2018-09-16  Tom Tromey  <tom@tromey.com>
2739
2740         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2741         Remove.
2742         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2743         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2744         (py_varobj_iter_new): Likewise.
2745         (py_varobj_get_iterator): Use gdbpy_ref.
2746
2747 2018-09-16  Tom Tromey  <tom@tromey.com>
2748
2749         * python/py-threadevent.c (py_get_event_thread): Simplify.
2750         * python/py-inferior.c (infpy_thread_from_thread_handle):
2751         Return immediately after calling thread_to_thread_object.  Use
2752         Py_RETURN_NONE.
2753         (thread_to_thread_object): Set the exception on a NULL return.
2754
2755 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2756
2757         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2758
2759 2018-09-16  Tom Tromey  <tom@tromey.com>
2760
2761         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2762         Remove.
2763
2764 2018-09-16  Tom Tromey  <tom@tromey.com>
2765
2766         * python/python-internal.h (thread_to_thread_object): Change
2767         return type.
2768         * python/py-inferior.c (thread_to_thread_object): Return a new
2769         reference.
2770         (infpy_thread_from_thread_handle): Update.
2771         * python/py-infthread.c (gdbpy_selected_thread): Update.
2772         * python/py-stopevent.c (create_stop_event_object): Update.
2773         * python/py-threadevent.c (py_get_event_thread): Return a new
2774         reference.
2775         (py_get_event_thread): Update.
2776         * python/py-event.h (py_get_event_thread): Change return type.
2777         * python/py-continueevent.c (create_continue_event_object):
2778         Update.
2779
2780 2018-09-16  Tom Tromey  <tom@tromey.com>
2781
2782         * python/py-progspace.c (pspy_get_objfiles): Update.
2783         * python/python-internal.h (objfile_to_objfile_object): Change
2784         return type.
2785         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2786         Update.
2787         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2788         Update.
2789         * python/python.c (gdbpy_get_current_objfile): Update.
2790         (gdbpy_objfiles): Update.
2791         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2792         Update.
2793         (objfile_to_objfile_object): Return a new reference.
2794         * python/py-symtab.c (stpy_get_objfile): Update.
2795         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2796         Update.
2797
2798 2018-09-16  Tom Tromey  <tom@tromey.com>
2799
2800         * python/py-inferior.c (infpy_get_progspace): Update.
2801         * python/python-internal.h (pspace_to_pspace_object): Change
2802         return type.
2803         * python/py-newobjfileevent.c
2804         (create_clear_objfiles_event_object): Update.
2805         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2806         Update.
2807         * python/python.c (gdbpy_get_current_progspace): Update.
2808         (gdbpy_progspaces): Update.
2809         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2810         reference.
2811         * python/py-objfile.c (objfpy_get_progspace): Update.
2812         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2813         Update.
2814
2815 2018-09-16  Tom Tromey  <tom@tromey.com>
2816
2817         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2818         (solib_name, block_for_pc, find_pc_line): New functions.
2819         (execute_unwinders): Update.
2820         * python/py-block.c (gdbpy_block_for_pc): Remove.
2821         * python/py-inferior.c (infpy_get_progspace): New function.
2822         (inferior_object_getset) <progspace>: Add.
2823         * python/py-progspace.c (pspy_objfiles): Rewrite.
2824         (pspy_solib_name, pspy_block_for_pc)
2825         (pspy_find_pc_line, pspy_is_valid): New functions.
2826         (progspace_object_methods): Add entries for solib_name,
2827         block_for_pc, find_pc_line, is_valid.
2828         * python/python-internal.h (gdbpy_block_for_pc)
2829         (build_objfiles_list): Don't declare.
2830         * python/python.c: Don't include solib.h.
2831         (gdbpy_solib_name, gdbpy_find_pc_line)
2832         (gdbpy_get_current_progspace, build_objfiles_list)
2833         (gdbpy_objfiles): Remove.
2834         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2835         solib_name, find_pc_line>: Remove entries.
2836
2837 2018-09-16  Tom Tromey  <tom@tromey.com>
2838
2839         * top.c (new_ui_command): Use GNU style for metasyntactic
2840         variables.
2841         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2842         variables.
2843         * maint.c (maintenance_translate_address): Remove "<>" around
2844         text.
2845         * interps.c (interpreter_exec_cmd): Use GNU style for
2846         metasyntactic variables.
2847         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2848         metasyntactic variables.
2849         * tracepoint.c (tfind_range_command): Use GNU style for
2850         metasyntactic variables.
2851         (tfind_outside_command): Likewise.
2852         (_initialize_tracepoint): Likewise.
2853         * remote.c (extended_remote_target::create_inferior): Use GNU
2854         style for metasyntactic variables.
2855         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2856         metasyntactic variables.
2857         (adi_assign_command): Likewise.
2858
2859 2018-09-16  Tom Tromey  <tom@tromey.com>
2860
2861         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2862         metasyntactic variables.  Print message if no disassembler options
2863         are available.
2864
2865 2018-09-15  Tom Tromey  <tom@tromey.com>
2866
2867         * infcmd.c (get_inferior_args): Return const char *.
2868         * inferior.h (get_inferior_args): Return type now const.
2869         * linux-tdep.c (linux_fill_prpsinfo): Update.
2870         * procfs.c (procfs_target::make_corefile_notes): Update.
2871
2872 2018-09-07  Tom Tromey  <tom@tromey.com>
2873
2874         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2875         inside the TRY.
2876
2877 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2878
2879         * nios2-tdep.c (nios2_type_align): New.
2880         (nios2_gdb_arch_init): Install type_align hook.
2881
2882 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2883
2884         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2885         type that is neither object file owned, nor gdbarch owned.
2886         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2887         gdbarch is non-NULL.
2888         (alloc_type_instance): Allocate non-objfile owned types on the
2889         gdbarch obstack.
2890         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2891         using TYPE_ALLOC to ensure memory is allocated on the correct
2892         obstack.
2893         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2894         obstack, or the gdbarch obstack.
2895         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2896
2897 2018-09-14  Tom Tromey  <tom@tromey.com>
2898
2899         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2900         block.
2901
2902 2018-09-14  Tom Tromey  <tom@tromey.com>
2903
2904         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2905
2906 2018-09-13  Tom Tromey  <tom@tromey.com>
2907
2908         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2909         static.
2910
2911 2018-09-13  Tom Tromey  <tom@tromey.com>
2912
2913         * exec.c (try_open_exec_file): Use std::string.
2914
2915 2018-09-13  Tom Tromey  <tom@tromey.com>
2916
2917         * utils.h (gdb_bfd_errmsg): Return std::string.
2918         * exec.c (exec_file_attach): Update.
2919         * compile/compile-object-load.c (compile_object_load): Update.
2920         * utils.c (gdb_bfd_errmsg): Return std::string.
2921
2922 2018-09-13  Tom Tromey  <tom@tromey.com>
2923
2924         * procfs.c (struct procinfo_deleter): New.
2925         (procinfo_up): New typedef.
2926         (do_destroy_procinfo_cleanup): Remove.
2927         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2928
2929 2018-09-13  Tom Tromey  <tom@tromey.com>
2930
2931         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2932
2933 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2934 2018-09-13  Tom Tromey  <tom@tromey.com>
2935
2936         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2937         (pspy_get_objfiles): New function.
2938         (progspace_object_methods): New.
2939         (pspace_object_type): Add tp_methods callback.
2940         * python/python-internal.h (build_objfiles_list): New
2941         declaration.
2942         * python/python.c (build_objfiles_list): New function.
2943         (gdbpy_objfiles): Implement using build_objfiles_list.
2944         * NEWS: Mention the Progspace.objfiles method.
2945
2946 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2947
2948         * python/py-inferior.c (infpy_get_progspace): New function.
2949         (inferior_object_getset): Add progspace property.
2950         * NEWS: Mention the new property.
2951
2952 2018-09-13  Tom Tromey  <tom@tromey.com>
2953
2954         PR rust/23650:
2955         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2956
2957 2018-09-13  Tom Tromey  <tom@tromey.com>
2958
2959         PR rust/23626:
2960         * rust-lang.c (rust_enum_variant): Now static.
2961         (rust_empty_enum_p): New function.
2962         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2963         Handle empty enum.
2964
2965 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2966
2967         * python/py-inferior.c (infpy_repr): New.
2968         (inferior_object_type): Register infpy_repr.
2969         * python/py-objfile.c (objfpy_repr): New.
2970         (objfile_object_type): Register objfpy_repr.
2971
2972 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2973
2974         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2975
2976 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2977
2978         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2979         typo.
2980
2981 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2982
2983         * common/common-utils.c: Don't include '<sys/stat.h>'.
2984         (is_regular_file): Move to...
2985         * common/filestuff.c (is_regular_file): ... here.
2986         * common/common-utils.h (is_regular_file): Move to...
2987         * common/filestuff.h (is_regular_file): ... here.
2988
2989 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2990
2991         * skip.c (debug_skip): New variable.
2992         (skiplist_entry::do_skip_file_p): Add debug output.
2993         (skiplist_entry::do_skip_gfile_p): Likewise.
2994         (skiplist_entry::skip_function_p): Likewise.
2995         (_initialize_step_skip): Create debug command.
2996         * NEWS: Mention set/show debug skip.
2997
2998 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2999
3000         * darwin-nat.c (should_disable_startup_with_shell):
3001         New function.
3002         (darwin_nat_target::create_inferior): Add call.
3003
3004 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3005
3006         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3007         inf_port, msg_state>: Initialize.
3008         (struct darwin_thread_info) <signaled, single_step>: Change
3009         type and initialize.
3010         (struct darwin_thread_info) <event>: Initialize.
3011
3012 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3013
3014         PR gdb/23555
3015         PR gdb/23558
3016         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3017         guesses.
3018
3019 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3020
3021         Revert:
3022         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3023
3024         PR gdb/23555
3025         PR gdb/23558
3026         * gnulib/aclocal.m4: Regenerate.
3027         * gnulib/config.in: Regenerate.
3028         * gnulib/configure: Regenerate.
3029         * gnulib/import/Makefile.am: Update.
3030         * gnulib/import/Makefile.in: Update.
3031         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3032         * gnulib/import/_Noreturn.h: ... this.
3033         * gnulib/import/alloca.in.h: Update.
3034         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3035         * gnulib/import/arg-nonnull.h: ... this.
3036         * gnulib/import/assure.h: Update.
3037         * gnulib/import/at-func.c: Update.
3038         * gnulib/import/basename-lgpl.c: Update.
3039         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3040         * gnulib/import/c++defs.h: ... this.
3041         * gnulib/import/canonicalize-lgpl.c: Update.
3042         * gnulib/import/cdefs.h: Update.
3043         * gnulib/import/chdir-long.c: Update.
3044         * gnulib/import/chdir-long.h: Update.
3045         * gnulib/import/cloexec.c: Update.
3046         * gnulib/import/cloexec.h: Update.
3047         * gnulib/import/close.c: Update.
3048         * gnulib/import/closedir.c: Update.
3049         * gnulib/import/config.charset: Update.
3050         * gnulib/import/dirent-private.h: Update.
3051         * gnulib/import/dirent.in.h: Update.
3052         * gnulib/import/dirfd.c: Update.
3053         * gnulib/import/dirname-lgpl.c: Update.
3054         * gnulib/import/dirname.h: Update.
3055         * gnulib/import/dosname.h: Update.
3056         * gnulib/import/dup-safer-flag.c: Update.
3057         * gnulib/import/dup-safer.c: Update.
3058         * gnulib/import/dup.c: Update.
3059         * gnulib/import/dup2.c: Update.
3060         * gnulib/import/errno.in.h: Update.
3061         * gnulib/import/error.c: Update.
3062         * gnulib/import/error.h: Update.
3063         * gnulib/import/exitfail.c: Update.
3064         * gnulib/import/exitfail.h: Update.
3065         * gnulib/import/extra/update-copyright: Update.
3066         * gnulib/import/fchdir.c: Update.
3067         * gnulib/import/fcntl.c: Update.
3068         * gnulib/import/fcntl.in.h: Update.
3069         * gnulib/import/fd-hook.c: Update.
3070         * gnulib/import/fd-hook.h: Update.
3071         * gnulib/import/fd-safer-flag.c: Update.
3072         * gnulib/import/fd-safer.c: Update.
3073         * gnulib/import/fdopendir.c: Update.
3074         * gnulib/import/filename.h: Update.
3075         * gnulib/import/filenamecat-lgpl.c: Update.
3076         * gnulib/import/filenamecat.h: Update.
3077         * gnulib/import/flexmember.h: Update.
3078         * gnulib/import/float+.h: Update.
3079         * gnulib/import/float.c: Update.
3080         * gnulib/import/float.in.h: Update.
3081         * gnulib/import/fnmatch.c: Update.
3082         * gnulib/import/fnmatch.in.h: Update.
3083         * gnulib/import/fnmatch_loop.c: Update.
3084         * gnulib/import/fpucw.h: Update.
3085         * gnulib/import/frexp.c: Update.
3086         * gnulib/import/frexpl.c: Update.
3087         * gnulib/import/fstat.c: Update.
3088         * gnulib/import/fstatat.c: Update.
3089         * gnulib/import/getcwd-lgpl.c: Update.
3090         * gnulib/import/getcwd.c: Update.
3091         * gnulib/import/getdtablesize.c: Update.
3092         * gnulib/import/getlogin_r.c: Update.
3093         * gnulib/import/getprogname.c: Update.
3094         * gnulib/import/getprogname.h: Update.
3095         * gnulib/import/gettext.h: Update.
3096         * gnulib/import/gettimeofday.c: Update.
3097         * gnulib/import/glob-libc.h: Update.
3098         * gnulib/import/glob.c: Update.
3099         * gnulib/import/glob.in.h: Update.
3100         * gnulib/import/glob_internal.h: Update.
3101         * gnulib/import/glob_pattern_p.c: Update.
3102         * gnulib/import/globfree.c: Update.
3103         * gnulib/import/hard-locale.c: Update.
3104         * gnulib/import/hard-locale.h: Update.
3105         * gnulib/import/intprops.h: Update.
3106         * gnulib/import/inttypes.in.h: Update.
3107         * gnulib/import/isnan.c: Update.
3108         * gnulib/import/isnand-nolibm.h: Update.
3109         * gnulib/import/isnand.c: Update.
3110         * gnulib/import/isnanl-nolibm.h: Update.
3111         * gnulib/import/isnanl.c: Update.
3112         * gnulib/import/itold.c: Update.
3113         * gnulib/import/libc-config.h: Update.
3114         * gnulib/import/limits.in.h: Update.
3115         * gnulib/import/localcharset.c: Update.
3116         * gnulib/import/localcharset.h: Update.
3117         * gnulib/import/localtime-buffer.c: Update.
3118         * gnulib/import/localtime-buffer.h: Update.
3119         * gnulib/import/lstat.c: Update.
3120         * gnulib/import/m4/00gnulib.m4: Update.
3121         * gnulib/import/m4/__inline.m4: Update.
3122         * gnulib/import/m4/absolute-header.m4: Update.
3123         * gnulib/import/m4/alloca.m4: Update.
3124         * gnulib/import/m4/builtin-expect.m4: Update.
3125         * gnulib/import/m4/canonicalize.m4: Update.
3126         * gnulib/import/m4/chdir-long.m4: Update.
3127         * gnulib/import/m4/close.m4: Update.
3128         * gnulib/import/m4/closedir.m4: Update.
3129         * gnulib/import/m4/configmake.m4: Update.
3130         * gnulib/import/m4/d-ino.m4: Update.
3131         * gnulib/import/m4/d-type.m4: Update.
3132         * gnulib/import/m4/dirent_h.m4: Update.
3133         * gnulib/import/m4/dirfd.m4: Update.
3134         * gnulib/import/m4/dirname.m4: Update.
3135         * gnulib/import/m4/double-slash-root.m4: Update.
3136         * gnulib/import/m4/dup.m4: Update.
3137         * gnulib/import/m4/dup2.m4: Update.
3138         * gnulib/import/m4/eealloc.m4: Update.
3139         * gnulib/import/m4/environ.m4: Update.
3140         * gnulib/import/m4/errno_h.m4: Update.
3141         * gnulib/import/m4/error.m4: Update.
3142         * gnulib/import/m4/exponentd.m4: Update.
3143         * gnulib/import/m4/exponentl.m4: Update.
3144         * gnulib/import/m4/extensions.m4: Update.
3145         * gnulib/import/m4/extern-inline.m4: Update.
3146         * gnulib/import/m4/fchdir.m4: Update.
3147         * gnulib/import/m4/fcntl-o.m4: Update.
3148         * gnulib/import/m4/fcntl.m4: Update.
3149         * gnulib/import/m4/fcntl_h.m4: Update.
3150         * gnulib/import/m4/fdopendir.m4: Update.
3151         * gnulib/import/m4/filenamecat.m4: Update.
3152         * gnulib/import/m4/flexmember.m4: Update.
3153         * gnulib/import/m4/float_h.m4: Update.
3154         * gnulib/import/m4/fnmatch.m4: Update.
3155         * gnulib/import/m4/fnmatch_h.m4: Update.
3156         * gnulib/import/m4/fpieee.m4: Update.
3157         * gnulib/import/m4/frexp.m4: Update.
3158         * gnulib/import/m4/frexpl.m4: Update.
3159         * gnulib/import/m4/fstat.m4: Update.
3160         * gnulib/import/m4/fstatat.m4: Update.
3161         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3162         * gnulib/import/m4/getcwd-path-max.m4: Update.
3163         * gnulib/import/m4/getcwd.m4: Update.
3164         * gnulib/import/m4/getdtablesize.m4: Update.
3165         * gnulib/import/m4/getlogin.m4: Update.
3166         * gnulib/import/m4/getlogin_r.m4: Update.
3167         * gnulib/import/m4/getpagesize.m4: Update.
3168         * gnulib/import/m4/getprogname.m4: Update.
3169         * gnulib/import/m4/gettimeofday.m4: Update.
3170         * gnulib/import/m4/glibc21.m4: Update.
3171         * gnulib/import/m4/glob.m4: Update.
3172         * gnulib/import/m4/glob_h.m4: Update.
3173         * gnulib/import/m4/gnulib-cache.m4: Update.
3174         * gnulib/import/m4/gnulib-common.m4: Update.
3175         * gnulib/import/m4/gnulib-comp.m4: Update.
3176         * gnulib/import/m4/gnulib-tool.m4: Update.
3177         * gnulib/import/m4/hard-locale.m4: Update.
3178         * gnulib/import/m4/include_next.m4: Update.
3179         * gnulib/import/m4/inttypes-pri.m4: Update.
3180         * gnulib/import/m4/inttypes.m4: Update.
3181         * gnulib/import/m4/isnand.m4: Update.
3182         * gnulib/import/m4/isnanl.m4: Update.
3183         * gnulib/import/m4/largefile.m4: Update.
3184         * gnulib/import/m4/limits-h.m4: Update.
3185         * gnulib/import/m4/localcharset.m4: Update.
3186         * gnulib/import/m4/locale-fr.m4: Update.
3187         * gnulib/import/m4/locale-ja.m4: Update.
3188         * gnulib/import/m4/locale-zh.m4: Update.
3189         * gnulib/import/m4/localtime-buffer.m4: Update.
3190         * gnulib/import/m4/longlong.m4: Update.
3191         * gnulib/import/m4/lstat.m4: Update.
3192         * gnulib/import/m4/malloc.m4: Update.
3193         * gnulib/import/m4/malloca.m4: Update.
3194         * gnulib/import/m4/math_h.m4: Update.
3195         * gnulib/import/m4/mbrtowc.m4: Update.
3196         * gnulib/import/m4/mbsinit.m4: Update.
3197         * gnulib/import/m4/mbsrtowcs.m4: Update.
3198         * gnulib/import/m4/mbstate_t.m4: Update.
3199         * gnulib/import/m4/memchr.m4: Update.
3200         * gnulib/import/m4/memmem.m4: Update.
3201         * gnulib/import/m4/mempcpy.m4: Update.
3202         * gnulib/import/m4/memrchr.m4: Update.
3203         * gnulib/import/m4/mkdir.m4: Update.
3204         * gnulib/import/m4/mkstemp.m4: Update.
3205         * gnulib/import/m4/mmap-anon.m4: Update.
3206         * gnulib/import/m4/mode_t.m4: Update.
3207         * gnulib/import/m4/msvc-inval.m4: Update.
3208         * gnulib/import/m4/msvc-nothrow.m4: Update.
3209         * gnulib/import/m4/multiarch.m4: Update.
3210         * gnulib/import/m4/nocrash.m4: Update.
3211         * gnulib/import/m4/off_t.m4: Update.
3212         * gnulib/import/m4/onceonly.m4: Update.
3213         * gnulib/import/m4/open-cloexec.m4: Update.
3214         * gnulib/import/m4/open.m4: Update.
3215         * gnulib/import/m4/openat.m4: Update.
3216         * gnulib/import/m4/opendir.m4: Update.
3217         * gnulib/import/m4/pathmax.m4: Update.
3218         * gnulib/import/m4/rawmemchr.m4: Update.
3219         * gnulib/import/m4/readdir.m4: Update.
3220         * gnulib/import/m4/readlink.m4: Update.
3221         * gnulib/import/m4/realloc.m4: Update.
3222         * gnulib/import/m4/rename.m4: Update.
3223         * gnulib/import/m4/rewinddir.m4: Update.
3224         * gnulib/import/m4/rmdir.m4: Update.
3225         * gnulib/import/m4/save-cwd.m4: Update.
3226         * gnulib/import/m4/secure_getenv.m4: Update.
3227         * gnulib/import/m4/setenv.m4: Update.
3228         * gnulib/import/m4/signal_h.m4: Update.
3229         * gnulib/import/m4/ssize_t.m4: Update.
3230         * gnulib/import/m4/stat-time.m4: Update.
3231         * gnulib/import/m4/stat.m4: Update.
3232         * gnulib/import/m4/std-gnu11.m4: Update.
3233         * gnulib/import/m4/stdbool.m4: Update.
3234         * gnulib/import/m4/stddef_h.m4: Update.
3235         * gnulib/import/m4/stdint.m4: Update.
3236         * gnulib/import/m4/stdio_h.m4: Update.
3237         * gnulib/import/m4/stdlib_h.m4: Update.
3238         * gnulib/import/m4/strchrnul.m4: Update.
3239         * gnulib/import/m4/strdup.m4: Update.
3240         * gnulib/import/m4/strerror.m4: Update.
3241         * gnulib/import/m4/string_h.m4: Update.
3242         * gnulib/import/m4/strstr.m4: Update.
3243         * gnulib/import/m4/strtok_r.m4: Update.
3244         * gnulib/import/m4/sys_socket_h.m4: Update.
3245         * gnulib/import/m4/sys_stat_h.m4: Update.
3246         * gnulib/import/m4/sys_time_h.m4: Update.
3247         * gnulib/import/m4/sys_types_h.m4: Update.
3248         * gnulib/import/m4/tempname.m4: Update.
3249         * gnulib/import/m4/time_h.m4: Update.
3250         * gnulib/import/m4/unistd-safer.m4: Update.
3251         * gnulib/import/m4/unistd_h.m4: Update.
3252         * gnulib/import/m4/warn-on-use.m4: Update.
3253         * gnulib/import/m4/wchar_h.m4: Update.
3254         * gnulib/import/m4/wchar_t.m4: Update.
3255         * gnulib/import/m4/wctype_h.m4: Update.
3256         * gnulib/import/m4/wint_t.m4: Update.
3257         * gnulib/import/malloc.c: Update.
3258         * gnulib/import/malloc/scratch_buffer.h: Update.
3259         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3260         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3261         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3262         * gnulib/import/malloca.c: Update.
3263         * gnulib/import/malloca.h: Update.
3264         * gnulib/import/malloca.valgrind: Update.
3265         * gnulib/import/math.in.h: Update.
3266         * gnulib/import/mbrtowc.c: Update.
3267         * gnulib/import/mbsinit.c: Update.
3268         * gnulib/import/mbsrtowcs-impl.h: Update.
3269         * gnulib/import/mbsrtowcs-state.c: Update.
3270         * gnulib/import/mbsrtowcs.c: Update.
3271         * gnulib/import/memchr.c: Update.
3272         * gnulib/import/memmem.c: Update.
3273         * gnulib/import/mempcpy.c: Update.
3274         * gnulib/import/memrchr.c: Update.
3275         * gnulib/import/mkdir.c: Update.
3276         * gnulib/import/mkstemp.c: Update.
3277         * gnulib/import/msvc-inval.c: Update.
3278         * gnulib/import/msvc-inval.h: Update.
3279         * gnulib/import/msvc-nothrow.c: Update.
3280         * gnulib/import/msvc-nothrow.h: Update.
3281         * gnulib/import/open.c: Update.
3282         * gnulib/import/openat-die.c: Update.
3283         * gnulib/import/openat-priv.h: Update.
3284         * gnulib/import/openat-proc.c: Update.
3285         * gnulib/import/openat.c: Update.
3286         * gnulib/import/openat.h: Update.
3287         * gnulib/import/opendir.c: Update.
3288         * gnulib/import/pathmax.h: Update.
3289         * gnulib/import/pipe-safer.c: Update.
3290         * gnulib/import/rawmemchr.c: Update.
3291         * gnulib/import/readdir.c: Update.
3292         * gnulib/import/readlink.c: Update.
3293         * gnulib/import/realloc.c: Update.
3294         * gnulib/import/ref-add.sin: Update.
3295         * gnulib/import/ref-del.sin: Update.
3296         * gnulib/import/rename.c: Update.
3297         * gnulib/import/rewinddir.c: Update.
3298         * gnulib/import/rmdir.c: Update.
3299         * gnulib/import/same-inode.h: Update.
3300         * gnulib/import/save-cwd.c: Update.
3301         * gnulib/import/save-cwd.h: Update.
3302         * gnulib/import/scratch_buffer.h: Update.
3303         * gnulib/import/secure_getenv.c: Update.
3304         * gnulib/import/setenv.c: Update.
3305         * gnulib/import/signal.in.h: Update.
3306         * gnulib/import/stat-time.c: Update.
3307         * gnulib/import/stat-time.h: Update.
3308         * gnulib/import/stat-w32.c: Update.
3309         * gnulib/import/stat-w32.h: Update.
3310         * gnulib/import/stat.c: Update.
3311         * gnulib/import/stdbool.in.h: Update.
3312         * gnulib/import/stddef.in.h: Update.
3313         * gnulib/import/stdint.in.h: Update.
3314         * gnulib/import/stdio.in.h: Update.
3315         * gnulib/import/stdlib.in.h: Update.
3316         * gnulib/import/str-two-way.h: Update.
3317         * gnulib/import/strchrnul.c: Update.
3318         * gnulib/import/strdup.c: Update.
3319         * gnulib/import/streq.h: Update.
3320         * gnulib/import/strerror-override.c: Update.
3321         * gnulib/import/strerror-override.h: Update.
3322         * gnulib/import/strerror.c: Update.
3323         * gnulib/import/string.in.h: Update.
3324         * gnulib/import/stripslash.c: Update.
3325         * gnulib/import/strnlen1.c: Update.
3326         * gnulib/import/strnlen1.h: Update.
3327         * gnulib/import/strstr.c: Update.
3328         * gnulib/import/strtok_r.c: Update.
3329         * gnulib/import/sys_stat.in.h: Update.
3330         * gnulib/import/sys_time.in.h: Update.
3331         * gnulib/import/sys_types.in.h: Update.
3332         * gnulib/import/tempname.c: Update.
3333         * gnulib/import/tempname.h: Update.
3334         * gnulib/import/time.in.h: Update.
3335         * gnulib/import/unistd--.h: Update.
3336         * gnulib/import/unistd-safer.h: Update.
3337         * gnulib/import/unistd.in.h: Update.
3338         * gnulib/import/unsetenv.c: Update.
3339         * gnulib/import/verify.h: Update.
3340         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3341         * gnulib/import/wchar.in.h: Update.
3342         * gnulib/import/wctype.in.h: Update.
3343         * gnulib/import/xalloc-oversized.h: Update.
3344         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3345         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3346
3347 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3348
3349         * record-btrace.c (get_thread_current_frame): Remove
3350         old_inferior_ptid.
3351
3352 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3353
3354         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3355         with check_tag to 1 if and only if the type is tagged and the
3356         component being searched cannot been found in the current
3357         view. Otherwise, always call ada_to_fixed_type with
3358         check_tag to 0.
3359
3360 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3361
3362         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3363         declaration.
3364         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3365         * ada-varobj.c (ada_varobj_get_number_of_children,
3366         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3367
3368 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3369
3370         * ada-valprint.c (ada_value_print): Use type instead of
3371         enclosing type.
3372
3373 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3374
3375         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3376         an array of access to unconstrained array.
3377
3378 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3379
3380         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3381         (ada_check_typedef): Use it.
3382
3383 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3384
3385         * ada-varobj.c (ada_varobj_describe_struct_child)
3386         (ada_varobj_describe_child): Handle union case like struct one.
3387
3388 2018-09-10  Tom Tromey  <tom@tromey.com>
3389
3390         PR python/18380:
3391         * python/python.c (_initialize_python): Make example in "python"
3392         help work in Python 3.
3393
3394 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3395
3396         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3397         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3398         $(EXEEXT) to the script, as it is not a program.
3399
3400 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3401
3402         * python/py-prettyprint.c (pretty_print_one_value): Return
3403         gdbpy_ref<>.
3404         (print_string_repr): Adjust.
3405         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3406         * python/python-internal.h (apply_varobj_pretty_printer): Return
3407         gdbpy_ref<>.
3408         * varobj.c (varobj_value_get_print_value): Adjust.
3409
3410 2018-09-08  Tom Tromey  <tom@tromey.com>
3411
3412         PR python/16047:
3413         * python/py-prettyprint.c (pretty_print_one_value): Check for
3414         to_string method.
3415
3416 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3417
3418         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3419         replace_operator_with_call.
3420
3421 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3422
3423         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3424
3425 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3426
3427         * ada-typeprint.c (print_range): Print the bounds using TYPE
3428         rather than its TYPE_TARGET_TYPE.
3429
3430 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3431
3432         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3433         call to ada_to_fixed_value_create.
3434
3435 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3436
3437         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3438
3439 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3440
3441         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3442         by calls to error.
3443
3444 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3445
3446         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3447         Move update of loop variable "fi".
3448
3449 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3450
3451         * ada-lang.c (value_assign_to_component): In the case of
3452         big-endian targets, extract the bits of the given VAL
3453         using an src_offset of zero if container is not a scalar.
3454
3455 2018-09-06  Simon Ser  <contact@emersion.fr>
3456
3457         PR gdb/23105
3458         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3459         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3460         * fbsd-tdep.c (fbsd_make_note_desc): New.
3461         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3462         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3463         * target.h (enum target_object) Add FreeBSD-specific
3464         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3465
3466 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3467
3468         * compile/compile-c.h (generate_c_for_variable_locations):
3469         Change reference to pointer.
3470         * compile/compile-c-support.c (compile_program) <compute>:
3471         Likewise.
3472         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3473         (generate_c_for_for_one_variable): Likewise
3474         (generate_c_for_variable_locations): Likewise
3475         * compile/compile-c-types.c (compile_c_instance::convert_type):
3476         Likewise
3477         * compile/compile-cplus-symbols.c (convert_one_symbol):
3478         std::move the scope passed to enter_scope.
3479         * compile/compile-cplus-types.c
3480         (compile_cplus_instance::enter_scope): Make parameter
3481         rvalue-reference.
3482         (compile_cplus_instance::new_scope): Change reference to
3483         pointer.
3484         (compile_cplus_instance::convert_type): Likewise
3485         (compile_cplus_convert_typedef): std::move the scope passed to
3486         enter_scope.
3487         (compile_cplus_convert_struct_or_union): Likewise.
3488         (compile_cplus_convert_enum): Likewise.
3489         (compile_cplus_convert_namespace): Likewise.
3490         * compile/compile-cplus.h (compile_cplus_instance)
3491         <enter_scope>: Make parameter rvalue-reference.
3492         * compile/compile-internal.h (compile_instance)
3493         <get_cached_type>: Likewise
3494         * compile/compile-loc2c.c (push): Likewise
3495         (pushf): Likewise
3496         (unary): Likewise
3497         (binary): Likewise
3498         (print_label): Likewise
3499         (pushf_register_address): Likewise
3500         (pushf_register): Likewise
3501         (do_compile_dwarf_expr_to_c): Likewise
3502         (compile_dwarf_expr_to_c): Likewise
3503         (compile_dwarf_bounds_to_c): Likewise
3504         * compile/compile.c (compile_instance::get_cached_type):
3505         Likewise
3506         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3507         (compile_dwarf_bounds_to_c): Likewise
3508         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3509         (dwarf2_compile_property_to_c): Likewise
3510         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3511         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3512         Likewise
3513
3514 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3515
3516         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3517         * tui/tui-data.c (init_content_element): Don't initialize it.
3518
3519 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3520
3521         * tui/tui-data.h (struct tui_win_info)
3522         <detail::opaque>: Remove.
3523         * tui/tui-data.c (init_win_info): Remove assignment.
3524
3525 2018-09-05  Tom Tromey  <tom@tromey.com>
3526
3527         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3528         -Wformat-nonliteral.
3529         * target-float.c (host_float_ops<T>::to_string)
3530         (host_float_ops<T>::from_string): Use
3531         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3532         * configure: Rebuild.
3533
3534 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3535
3536         * printcmd.c (printf_c_string): Use
3537         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3538         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3539
3540 2018-09-05  Tom Tromey  <tom@tromey.com>
3541
3542         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3543
3544 2018-09-05  Tom de Vries  <tdevries@suse.de>
3545
3546         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3547         with resolve_abstract_p == true.
3548         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3549         defaulting to false. Propagate resolve_abstract_p to
3550         dwarf2_fetch_die_loc_sect_off.
3551         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3552         parameter, defaulting to false.
3553         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3554         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3555         parameter.
3556         * dwarf2read.h (struct die_info): Forward-declare.
3557         (die_info_ptr): New typedef.
3558         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3559
3560 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3561
3562         GDB 8.2 released.
3563
3564 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3565             Pedro Alves  <palves@redhat.com>
3566
3567         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3568         "aclocal-m4-deps.mk".  Include file here.
3569         $(srcdir)/aclocal.m4: Add "configure.ac".
3570         * gnulib/aclocal-m4-deps.mk: New file.
3571         * gnulib/update-gnulib.sh: Automatically update
3572         "aclocal-m4-deps.mk".
3573
3574 2018-09-04  Tom Tromey  <tom@tromey.com>
3575
3576         * configure: Rebuild.
3577         * configure.ac: Remove multi-ice code.
3578
3579 2018-09-04  Tom Tromey  <tom@tromey.com>
3580
3581         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3582         (ada-exp.o): Update.
3583
3584 2018-09-04  Tom Tromey  <tom@tromey.com>
3585
3586         * Makefile.in (printcmd.o, target-float.o): Remove.
3587         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3588
3589 2018-09-04  Tom Tromey  <tom@tromey.com>
3590
3591         * gnulib/Makefile.in: Remove obsolete comment.
3592         * Makefile.in: Remove obsolete comment.
3593
3594 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3595
3596         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3597         line with '+'.
3598
3599 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3600
3601         * riscv-tdep.c: Add 'prologue-value.h' include.
3602         (struct riscv_unwind_cache): New struct.
3603         (riscv_debug_unwinder): New global.
3604         (riscv_scan_prologue): Update arguments, capture register details
3605         from prologue scan.
3606         (riscv_skip_prologue): Reformat arguments line, move end of
3607         prologue calculation into riscv_scan_prologue.
3608         (riscv_frame_cache): Update return type, create
3609         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3610         details.
3611         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3612         (riscv_frame_prev_register): Use the trad_frame within the
3613         riscv_unwind_cache.
3614         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3615         flag.
3616
3617 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3618
3619         * trad-frame.h (trad_frame_set_realreg): Declare.
3620         (trad_frame_set_addr): Declare.
3621         * trad-frame.c (trad_frame_set_realreg): Define new function.
3622         (trad_frame_set_addr): Define new function.
3623         (trad_frame_set_reg_realreg): Use new function.
3624         (trad_frame_set_reg_addr): Use new function.
3625
3626 2018-09-01  Keith Seitz  <keiths@redhat.com>
3627
3628         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3629         pulongest instead of "%lld".
3630         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3631         ATTRIBUTE_UNUSED.
3632
3633 2018-08-31  Tom Tromey  <tom@tromey.com>
3634
3635         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3636         variant part type.
3637
3638 2018-08-31  Pedro Alves  <palves@redhat.com>
3639
3640         * gdbarch.h: Regenerate.
3641
3642 2018-08-31  Pedro Alves  <palves@redhat.com>
3643
3644         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3645         * target.h (Hardware watchpoint interfaces): Describe
3646         continuable/steppable/non-steppable watchpoints.
3647         * gdbarch.h, gdbarch.c: Regenerate.
3648
3649 2018-08-31  Pedro Alves  <palves@redhat.com>
3650
3651         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3652         Delete.
3653         * s390-linux-nat.c
3654         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3655         * target.h (target_ops::have_continuable_watchpoint): Delete.
3656         (target_have_continuable_watchpoint): Delete.
3657         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3658         * target-delegates.c: Regenerate.
3659
3660 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3661
3662         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3663         the files present in "gnulib/import/m4/".
3664
3665 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3666
3667         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3668         c.sw, c.swsp, and c.sdsp.
3669
3670 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3671
3672         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3673         (riscv_read_misa_reg): Don't cache value read into inferior data.
3674         (riscv_new_inferior_data): Delete.
3675         (riscv_inferior_data_cleanup): Delete.
3676         (riscv_inferior_data): Delete.
3677         (riscv_invalidate_inferior_data): Delete.
3678         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3679
3680 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3681
3682         * compile/compile-cplus-types.c
3683         (compile_cplus_instance::leave_scope): Take the address of scope
3684         object.
3685         (compile_cplus_instance::convert_qualified_base): Compare quals
3686         to 0.
3687
3688 2018-08-30  Keith Seitz  <keiths@redhat.com>
3689
3690         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3691         Use "%s" and host_address_to_string instead of "%p" in printf.
3692
3693 2018-08-29  Keith Seitz  <keiths@redhat.com>
3694
3695         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3696         and compile-cplus-types.c.
3697         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3698         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3699         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3700         Declare.
3701         * compile/compile-c-support.c: Include compile-cplus.h.
3702         (load_libcompile): Templatize.
3703         (get_compile_context): "New" function.
3704         (c_get_compile_context): Use get_compile_context.
3705         (cplus_get_compile_context): New function.
3706         (cplus_push_user_expression, cplus_pop_user_expression)
3707         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3708         (cplus_compute_program): Define new structs/functions.
3709         * compile/compile-cplus-symmbols.c: New file.
3710         * compile/compile-cplus-types.c: New file.
3711         * compile/compile-cplus.h: New file.
3712         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3713         Declare.
3714         * compile/compile-object-load.c (get_out_value_type): Use
3715         strncmp_iw when comparing symbol names.
3716         (compile_object_load): Add mst_bss and mst_data.
3717         * compile/compile.c (_initialize_compile): Remove
3718         -Wno-implicit-function-declaration from `compile_args'.
3719         * compile/gcc-cp-plugin.h: New file.
3720         * NEWS: Mention C++ compile support and new debug options.
3721
3722 2018-08-29  Keith Seitz  <keiths@redhat.com>
3723
3724         * linespec.c (collect_info::add_symbol): Make virtual.
3725         (struct symbol_searcher_collect_info): New struct.
3726         (symbol_searcher::find_all_symbols): New method.
3727         * symtab.h (class symbol_searcher): New class.
3728
3729 2018-08-29  Keith Seitz  <keiths@redhat.com>
3730
3731         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3732         Change to vector of block_symbol.  Update all users.
3733         (struct collect_info) <symbols>: Likewise.
3734         (collect_info::add_symbol): Take block_symbol as argument.
3735         Update all callers.
3736         (decode_compound_collector) <m_symbols>: Change type to vector
3737         of block_symbol.  Update all users.
3738         (decode_compound_collector::operator ()): Change parameter type
3739         to block_symbol.
3740         (find_method, find_function_symbols, find_linespec_symbols)
3741         (find_label_symbols_in_block, find_label_symbols): Change symbol
3742         vectors to block_symbol vectors.
3743         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3744         block_symbol.
3745
3746 2018-08-29  Keith Seitz  <keiths@redhat.com>
3747
3748         * linespec.c (symbolp): Remove typedef and VEC definitions.
3749         (bound_minimal_symbol_d): Likewise.
3750
3751 2018-08-29  Keith Seitz  <keiths@redhat.com>
3752
3753         * linespec.c (decode_compound_collector::decode_compound_collector):
3754         Remove initialization for `m_symtabs'.
3755         (decode_compound_collector::release_symbols): Change return type
3756         to std::vector.  Update all callers.
3757         (class decode_compound_collector) <m_symbols>: Change type to
3758         std::vector.
3759         (lookup_prefix_sym): Change return type to std::vector.  Update all
3760         callers.
3761         (compare_symbols): Remove.
3762         (std_compare_symbols): Rename to `compare_symbols'.
3763         (find_method): Change `sym_classes' parameter to std::vector.
3764         Update all callers.  Use std::sort to sort sym_classes.
3765         (find_linespec_symbols): Remove cleanup.
3766
3767 2018-08-29  Keith Seitz  <keiths@redhat.com>
3768
3769         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3770         std::vector.  Update all users.
3771         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3772         (struct collect_info) <minimal_symbols>: Likewise.
3773         (compare_msymbols): Return bool.  Change parameters to const
3774         bound_minimal_symbol references.
3775         (find_method, find_function_symbols, find_linespec_symbols): Change
3776         `minsyms' parameter to std::vector.  Update all callers.
3777
3778 2018-08-29  Keith Seitz  <keiths@redhat.com>
3779
3780         * linespec.c (struct linespec) <label_symbols>: Change type to
3781         std::vector.  Update all users.
3782         (find_label_symbols_in_block): Change `result' parameter to
3783         std::vector.  Update all callers.
3784         (find_label_symbols): Return std::vector.  Update all callers.
3785
3786 2018-08-29  Keith Seitz  <keiths@redhat.com>
3787
3788         * linespec.c (struct linespec) <function_symbols>: Change type to
3789         std::vector.  Update all users.
3790         (struct collect_info) <function_symbols>: Likewise.
3791         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3792         (std_compare_symbols): New function.
3793         (find_method, find_function_symbols, find_linespec_symbols)
3794         (find_label_symbols_in_block): Change `symbols' parameter to
3795         std::vector.  Update all callers.
3796         (find_label_symbols): Likewise for `function_symbols' and
3797         `label_funcs_ret'.
3798
3799 2018-08-29  Keith Seitz  <keiths@redhat.com>
3800
3801         * linespec.c (symtab_vector_up): Define.
3802         (struct linespec) <file_symtabs>: Change type to std::vector *.
3803         Update all uses.
3804         (struct collect_info) <file_symtabs>: Likewise.
3805         (collect_symtabs_from_filename): Return symtab_vector_up.
3806         Update all callers.
3807         (decode_objc): Remove cleanup.
3808         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3809         (symtab_collector::release_symtabs): Return symtab_vector_up.
3810         Update all callers.
3811         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3812         Update all users.
3813         (collect_symtabs_from_filename, symtabs_from_filename): Return
3814         symtab_vector_up.  Update all callers.
3815
3816 2018-08-29  Tom Tromey  <tom@tromey.com>
3817
3818         * csky-tdep.c (csky_analyze_prologue): Use
3819         core_addr_to_string_nz.
3820
3821 2018-08-29  Tom Tromey  <tom@tromey.com>
3822
3823         * windows-nat.c (struct xlate_exception) <them>: Change type to
3824         DWORD.
3825         (xlate): Fix formatting.  Remove last entry.
3826         (struct xlate_exception, xlate): Comment out.
3827         (windows_nat_target::resume): Use ranged for.
3828
3829 2018-08-29  Jim Wilson  <jimw@sifive.com>
3830
3831         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3832         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3833         of NT_PRFPREG.
3834         (riscv_linux_nat_target::store_registers): Likewise.
3835
3836 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3837
3838         PR gdb/23555
3839         PR gdb/23558
3840         * gnulib/aclocal.m4: Regenerate.
3841         * gnulib/config.in: Regenerate.
3842         * gnulib/configure: Regenerate.
3843         * gnulib/import/Makefile.am: Update.
3844         * gnulib/import/Makefile.in: Update.
3845         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3846         * gnulib/import/_Noreturn.h: ... this.
3847         * gnulib/import/alloca.in.h: Update.
3848         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3849         * gnulib/import/arg-nonnull.h: ... this.
3850         * gnulib/import/assure.h: Update.
3851         * gnulib/import/at-func.c: Update.
3852         * gnulib/import/basename-lgpl.c: Update.
3853         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3854         * gnulib/import/c++defs.h: ... this.
3855         * gnulib/import/canonicalize-lgpl.c: Update.
3856         * gnulib/import/cdefs.h: Update.
3857         * gnulib/import/chdir-long.c: Update.
3858         * gnulib/import/chdir-long.h: Update.
3859         * gnulib/import/cloexec.c: Update.
3860         * gnulib/import/cloexec.h: Update.
3861         * gnulib/import/close.c: Update.
3862         * gnulib/import/closedir.c: Update.
3863         * gnulib/import/config.charset: Update.
3864         * gnulib/import/dirent-private.h: Update.
3865         * gnulib/import/dirent.in.h: Update.
3866         * gnulib/import/dirfd.c: Update.
3867         * gnulib/import/dirname-lgpl.c: Update.
3868         * gnulib/import/dirname.h: Update.
3869         * gnulib/import/dosname.h: Update.
3870         * gnulib/import/dup-safer-flag.c: Update.
3871         * gnulib/import/dup-safer.c: Update.
3872         * gnulib/import/dup.c: Update.
3873         * gnulib/import/dup2.c: Update.
3874         * gnulib/import/errno.in.h: Update.
3875         * gnulib/import/error.c: Update.
3876         * gnulib/import/error.h: Update.
3877         * gnulib/import/exitfail.c: Update.
3878         * gnulib/import/exitfail.h: Update.
3879         * gnulib/import/extra/update-copyright: Update.
3880         * gnulib/import/fchdir.c: Update.
3881         * gnulib/import/fcntl.c: Update.
3882         * gnulib/import/fcntl.in.h: Update.
3883         * gnulib/import/fd-hook.c: Update.
3884         * gnulib/import/fd-hook.h: Update.
3885         * gnulib/import/fd-safer-flag.c: Update.
3886         * gnulib/import/fd-safer.c: Update.
3887         * gnulib/import/fdopendir.c: Update.
3888         * gnulib/import/filename.h: Update.
3889         * gnulib/import/filenamecat-lgpl.c: Update.
3890         * gnulib/import/filenamecat.h: Update.
3891         * gnulib/import/flexmember.h: Update.
3892         * gnulib/import/float+.h: Update.
3893         * gnulib/import/float.c: Update.
3894         * gnulib/import/float.in.h: Update.
3895         * gnulib/import/fnmatch.c: Update.
3896         * gnulib/import/fnmatch.in.h: Update.
3897         * gnulib/import/fnmatch_loop.c: Update.
3898         * gnulib/import/fpucw.h: Update.
3899         * gnulib/import/frexp.c: Update.
3900         * gnulib/import/frexpl.c: Update.
3901         * gnulib/import/fstat.c: Update.
3902         * gnulib/import/fstatat.c: Update.
3903         * gnulib/import/getcwd-lgpl.c: Update.
3904         * gnulib/import/getcwd.c: Update.
3905         * gnulib/import/getdtablesize.c: Update.
3906         * gnulib/import/getlogin_r.c: Update.
3907         * gnulib/import/getprogname.c: Update.
3908         * gnulib/import/getprogname.h: Update.
3909         * gnulib/import/gettext.h: Update.
3910         * gnulib/import/gettimeofday.c: Update.
3911         * gnulib/import/glob-libc.h: Update.
3912         * gnulib/import/glob.c: Update.
3913         * gnulib/import/glob.in.h: Update.
3914         * gnulib/import/glob_internal.h: Update.
3915         * gnulib/import/glob_pattern_p.c: Update.
3916         * gnulib/import/globfree.c: Update.
3917         * gnulib/import/hard-locale.c: Update.
3918         * gnulib/import/hard-locale.h: Update.
3919         * gnulib/import/intprops.h: Update.
3920         * gnulib/import/inttypes.in.h: Update.
3921         * gnulib/import/isnan.c: Update.
3922         * gnulib/import/isnand-nolibm.h: Update.
3923         * gnulib/import/isnand.c: Update.
3924         * gnulib/import/isnanl-nolibm.h: Update.
3925         * gnulib/import/isnanl.c: Update.
3926         * gnulib/import/itold.c: Update.
3927         * gnulib/import/libc-config.h: Update.
3928         * gnulib/import/limits.in.h: Update.
3929         * gnulib/import/localcharset.c: Update.
3930         * gnulib/import/localcharset.h: Update.
3931         * gnulib/import/localtime-buffer.c: Update.
3932         * gnulib/import/localtime-buffer.h: Update.
3933         * gnulib/import/lstat.c: Update.
3934         * gnulib/import/m4/00gnulib.m4: Update.
3935         * gnulib/import/m4/__inline.m4: Update.
3936         * gnulib/import/m4/absolute-header.m4: Update.
3937         * gnulib/import/m4/alloca.m4: Update.
3938         * gnulib/import/m4/builtin-expect.m4: Update.
3939         * gnulib/import/m4/canonicalize.m4: Update.
3940         * gnulib/import/m4/chdir-long.m4: Update.
3941         * gnulib/import/m4/close.m4: Update.
3942         * gnulib/import/m4/closedir.m4: Update.
3943         * gnulib/import/m4/configmake.m4: Update.
3944         * gnulib/import/m4/d-ino.m4: Update.
3945         * gnulib/import/m4/d-type.m4: Update.
3946         * gnulib/import/m4/dirent_h.m4: Update.
3947         * gnulib/import/m4/dirfd.m4: Update.
3948         * gnulib/import/m4/dirname.m4: Update.
3949         * gnulib/import/m4/double-slash-root.m4: Update.
3950         * gnulib/import/m4/dup.m4: Update.
3951         * gnulib/import/m4/dup2.m4: Update.
3952         * gnulib/import/m4/eealloc.m4: Update.
3953         * gnulib/import/m4/environ.m4: Update.
3954         * gnulib/import/m4/errno_h.m4: Update.
3955         * gnulib/import/m4/error.m4: Update.
3956         * gnulib/import/m4/exponentd.m4: Update.
3957         * gnulib/import/m4/exponentl.m4: Update.
3958         * gnulib/import/m4/extensions.m4: Update.
3959         * gnulib/import/m4/extern-inline.m4: Update.
3960         * gnulib/import/m4/fchdir.m4: Update.
3961         * gnulib/import/m4/fcntl-o.m4: Update.
3962         * gnulib/import/m4/fcntl.m4: Update.
3963         * gnulib/import/m4/fcntl_h.m4: Update.
3964         * gnulib/import/m4/fdopendir.m4: Update.
3965         * gnulib/import/m4/filenamecat.m4: Update.
3966         * gnulib/import/m4/flexmember.m4: Update.
3967         * gnulib/import/m4/float_h.m4: Update.
3968         * gnulib/import/m4/fnmatch.m4: Update.
3969         * gnulib/import/m4/fnmatch_h.m4: Update.
3970         * gnulib/import/m4/fpieee.m4: Update.
3971         * gnulib/import/m4/frexp.m4: Update.
3972         * gnulib/import/m4/frexpl.m4: Update.
3973         * gnulib/import/m4/fstat.m4: Update.
3974         * gnulib/import/m4/fstatat.m4: Update.
3975         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3976         * gnulib/import/m4/getcwd-path-max.m4: Update.
3977         * gnulib/import/m4/getcwd.m4: Update.
3978         * gnulib/import/m4/getdtablesize.m4: Update.
3979         * gnulib/import/m4/getlogin.m4: Update.
3980         * gnulib/import/m4/getlogin_r.m4: Update.
3981         * gnulib/import/m4/getpagesize.m4: Update.
3982         * gnulib/import/m4/getprogname.m4: Update.
3983         * gnulib/import/m4/gettimeofday.m4: Update.
3984         * gnulib/import/m4/glibc21.m4: Update.
3985         * gnulib/import/m4/glob.m4: Update.
3986         * gnulib/import/m4/glob_h.m4: Update.
3987         * gnulib/import/m4/gnulib-cache.m4: Update.
3988         * gnulib/import/m4/gnulib-common.m4: Update.
3989         * gnulib/import/m4/gnulib-comp.m4: Update.
3990         * gnulib/import/m4/gnulib-tool.m4: Update.
3991         * gnulib/import/m4/hard-locale.m4: Update.
3992         * gnulib/import/m4/include_next.m4: Update.
3993         * gnulib/import/m4/inttypes-pri.m4: Update.
3994         * gnulib/import/m4/inttypes.m4: Update.
3995         * gnulib/import/m4/isnand.m4: Update.
3996         * gnulib/import/m4/isnanl.m4: Update.
3997         * gnulib/import/m4/largefile.m4: Update.
3998         * gnulib/import/m4/limits-h.m4: Update.
3999         * gnulib/import/m4/localcharset.m4: Update.
4000         * gnulib/import/m4/locale-fr.m4: Update.
4001         * gnulib/import/m4/locale-ja.m4: Update.
4002         * gnulib/import/m4/locale-zh.m4: Update.
4003         * gnulib/import/m4/localtime-buffer.m4: Update.
4004         * gnulib/import/m4/longlong.m4: Update.
4005         * gnulib/import/m4/lstat.m4: Update.
4006         * gnulib/import/m4/malloc.m4: Update.
4007         * gnulib/import/m4/malloca.m4: Update.
4008         * gnulib/import/m4/math_h.m4: Update.
4009         * gnulib/import/m4/mbrtowc.m4: Update.
4010         * gnulib/import/m4/mbsinit.m4: Update.
4011         * gnulib/import/m4/mbsrtowcs.m4: Update.
4012         * gnulib/import/m4/mbstate_t.m4: Update.
4013         * gnulib/import/m4/memchr.m4: Update.
4014         * gnulib/import/m4/memmem.m4: Update.
4015         * gnulib/import/m4/mempcpy.m4: Update.
4016         * gnulib/import/m4/memrchr.m4: Update.
4017         * gnulib/import/m4/mkdir.m4: Update.
4018         * gnulib/import/m4/mkstemp.m4: Update.
4019         * gnulib/import/m4/mmap-anon.m4: Update.
4020         * gnulib/import/m4/mode_t.m4: Update.
4021         * gnulib/import/m4/msvc-inval.m4: Update.
4022         * gnulib/import/m4/msvc-nothrow.m4: Update.
4023         * gnulib/import/m4/multiarch.m4: Update.
4024         * gnulib/import/m4/nocrash.m4: Update.
4025         * gnulib/import/m4/off_t.m4: Update.
4026         * gnulib/import/m4/onceonly.m4: Update.
4027         * gnulib/import/m4/open-cloexec.m4: Update.
4028         * gnulib/import/m4/open.m4: Update.
4029         * gnulib/import/m4/openat.m4: Update.
4030         * gnulib/import/m4/opendir.m4: Update.
4031         * gnulib/import/m4/pathmax.m4: Update.
4032         * gnulib/import/m4/rawmemchr.m4: Update.
4033         * gnulib/import/m4/readdir.m4: Update.
4034         * gnulib/import/m4/readlink.m4: Update.
4035         * gnulib/import/m4/realloc.m4: Update.
4036         * gnulib/import/m4/rename.m4: Update.
4037         * gnulib/import/m4/rewinddir.m4: Update.
4038         * gnulib/import/m4/rmdir.m4: Update.
4039         * gnulib/import/m4/save-cwd.m4: Update.
4040         * gnulib/import/m4/secure_getenv.m4: Update.
4041         * gnulib/import/m4/setenv.m4: Update.
4042         * gnulib/import/m4/signal_h.m4: Update.
4043         * gnulib/import/m4/ssize_t.m4: Update.
4044         * gnulib/import/m4/stat-time.m4: Update.
4045         * gnulib/import/m4/stat.m4: Update.
4046         * gnulib/import/m4/std-gnu11.m4: Update.
4047         * gnulib/import/m4/stdbool.m4: Update.
4048         * gnulib/import/m4/stddef_h.m4: Update.
4049         * gnulib/import/m4/stdint.m4: Update.
4050         * gnulib/import/m4/stdio_h.m4: Update.
4051         * gnulib/import/m4/stdlib_h.m4: Update.
4052         * gnulib/import/m4/strchrnul.m4: Update.
4053         * gnulib/import/m4/strdup.m4: Update.
4054         * gnulib/import/m4/strerror.m4: Update.
4055         * gnulib/import/m4/string_h.m4: Update.
4056         * gnulib/import/m4/strstr.m4: Update.
4057         * gnulib/import/m4/strtok_r.m4: Update.
4058         * gnulib/import/m4/sys_socket_h.m4: Update.
4059         * gnulib/import/m4/sys_stat_h.m4: Update.
4060         * gnulib/import/m4/sys_time_h.m4: Update.
4061         * gnulib/import/m4/sys_types_h.m4: Update.
4062         * gnulib/import/m4/tempname.m4: Update.
4063         * gnulib/import/m4/time_h.m4: Update.
4064         * gnulib/import/m4/unistd-safer.m4: Update.
4065         * gnulib/import/m4/unistd_h.m4: Update.
4066         * gnulib/import/m4/warn-on-use.m4: Update.
4067         * gnulib/import/m4/wchar_h.m4: Update.
4068         * gnulib/import/m4/wchar_t.m4: Update.
4069         * gnulib/import/m4/wctype_h.m4: Update.
4070         * gnulib/import/m4/wint_t.m4: Update.
4071         * gnulib/import/malloc.c: Update.
4072         * gnulib/import/malloc/scratch_buffer.h: Update.
4073         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4074         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4075         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4076         * gnulib/import/malloca.c: Update.
4077         * gnulib/import/malloca.h: Update.
4078         * gnulib/import/malloca.valgrind: Update.
4079         * gnulib/import/math.in.h: Update.
4080         * gnulib/import/mbrtowc.c: Update.
4081         * gnulib/import/mbsinit.c: Update.
4082         * gnulib/import/mbsrtowcs-impl.h: Update.
4083         * gnulib/import/mbsrtowcs-state.c: Update.
4084         * gnulib/import/mbsrtowcs.c: Update.
4085         * gnulib/import/memchr.c: Update.
4086         * gnulib/import/memmem.c: Update.
4087         * gnulib/import/mempcpy.c: Update.
4088         * gnulib/import/memrchr.c: Update.
4089         * gnulib/import/mkdir.c: Update.
4090         * gnulib/import/mkstemp.c: Update.
4091         * gnulib/import/msvc-inval.c: Update.
4092         * gnulib/import/msvc-inval.h: Update.
4093         * gnulib/import/msvc-nothrow.c: Update.
4094         * gnulib/import/msvc-nothrow.h: Update.
4095         * gnulib/import/open.c: Update.
4096         * gnulib/import/openat-die.c: Update.
4097         * gnulib/import/openat-priv.h: Update.
4098         * gnulib/import/openat-proc.c: Update.
4099         * gnulib/import/openat.c: Update.
4100         * gnulib/import/openat.h: Update.
4101         * gnulib/import/opendir.c: Update.
4102         * gnulib/import/pathmax.h: Update.
4103         * gnulib/import/pipe-safer.c: Update.
4104         * gnulib/import/rawmemchr.c: Update.
4105         * gnulib/import/readdir.c: Update.
4106         * gnulib/import/readlink.c: Update.
4107         * gnulib/import/realloc.c: Update.
4108         * gnulib/import/ref-add.sin: Update.
4109         * gnulib/import/ref-del.sin: Update.
4110         * gnulib/import/rename.c: Update.
4111         * gnulib/import/rewinddir.c: Update.
4112         * gnulib/import/rmdir.c: Update.
4113         * gnulib/import/same-inode.h: Update.
4114         * gnulib/import/save-cwd.c: Update.
4115         * gnulib/import/save-cwd.h: Update.
4116         * gnulib/import/scratch_buffer.h: Update.
4117         * gnulib/import/secure_getenv.c: Update.
4118         * gnulib/import/setenv.c: Update.
4119         * gnulib/import/signal.in.h: Update.
4120         * gnulib/import/stat-time.c: Update.
4121         * gnulib/import/stat-time.h: Update.
4122         * gnulib/import/stat-w32.c: Update.
4123         * gnulib/import/stat-w32.h: Update.
4124         * gnulib/import/stat.c: Update.
4125         * gnulib/import/stdbool.in.h: Update.
4126         * gnulib/import/stddef.in.h: Update.
4127         * gnulib/import/stdint.in.h: Update.
4128         * gnulib/import/stdio.in.h: Update.
4129         * gnulib/import/stdlib.in.h: Update.
4130         * gnulib/import/str-two-way.h: Update.
4131         * gnulib/import/strchrnul.c: Update.
4132         * gnulib/import/strdup.c: Update.
4133         * gnulib/import/streq.h: Update.
4134         * gnulib/import/strerror-override.c: Update.
4135         * gnulib/import/strerror-override.h: Update.
4136         * gnulib/import/strerror.c: Update.
4137         * gnulib/import/string.in.h: Update.
4138         * gnulib/import/stripslash.c: Update.
4139         * gnulib/import/strnlen1.c: Update.
4140         * gnulib/import/strnlen1.h: Update.
4141         * gnulib/import/strstr.c: Update.
4142         * gnulib/import/strtok_r.c: Update.
4143         * gnulib/import/sys_stat.in.h: Update.
4144         * gnulib/import/sys_time.in.h: Update.
4145         * gnulib/import/sys_types.in.h: Update.
4146         * gnulib/import/tempname.c: Update.
4147         * gnulib/import/tempname.h: Update.
4148         * gnulib/import/time.in.h: Update.
4149         * gnulib/import/unistd--.h: Update.
4150         * gnulib/import/unistd-safer.h: Update.
4151         * gnulib/import/unistd.in.h: Update.
4152         * gnulib/import/unsetenv.c: Update.
4153         * gnulib/import/verify.h: Update.
4154         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4155         * gnulib/import/wchar.in.h: Update.
4156         * gnulib/import/wctype.in.h: Update.
4157         * gnulib/import/xalloc-oversized.h: Update.
4158         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4159         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4160
4161 2018-08-16  Gary Benson <gbenson@redhat.com>
4162
4163         PR gdb/13000:
4164         * gdb/main.c (captured_main_1): Exit with nonzero status
4165         in batch mode if the last command to be executed failed.
4166         * NEWS: Mention the above.
4167
4168 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4169
4170         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4171         end of warning message.
4172
4173 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4174
4175         PR gdb/22943:
4176         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4177         (aarch64_extract_return_value): Use
4178         aapcs_is_vfp_call_or_return_candidate.
4179         (aarch64_return_in_memory): Likewise.
4180         (aarch64_store_return_value): Likewise.
4181
4182 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4183
4184         * aarch64-tdep.c
4185         (aapcs_is_vfp_call_or_return_candidate): Make static
4186         (pass_in_v_or_stack): Remove function.
4187         (pass_in_v_vfp_candidate): New function.
4188         (aarch64_push_dummy_call): Check for float register candidates.
4189
4190 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4191
4192         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4193         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4194         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4195
4196 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4197
4198         PR build/23399
4199         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4200         (struct ipa_sym_addresses): Rename to...
4201         (struct ipa_sym_addresses_common): ... this.
4202         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4203
4204 2018-08-28  Tom Tromey  <tom@tromey.com>
4205
4206         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4207         (token_fifo): Now a std::vector.
4208         (yylex, c_parse): Update.
4209         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4210         (token_fifo): Now a std::vector.
4211         (yylex, d_parse): Update.
4212         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4213         (token_fifo): Now a std::vector.
4214         (yylex, go_parse): Update.
4215
4216 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4217
4218         * parser-defs.h (struct type_stack) <elements>: Change type to
4219         std::vector<union type_stack_elt>.
4220         <depth, size>: Remove.
4221         * parse.c (parse_exp_in_context_1): Adjust.
4222         (type_stack_reserve): Remove.
4223         (check_type_stack_depth): Remove.
4224         (insert_into_type_stack): Adjust to std::vector.
4225         (insert_type): Likewise.
4226         (push_type): Likewise.
4227         (push_type_int): Likewise.
4228         (insert_type_address_space): Likewise.
4229         (pop_type): Likewise.
4230         (pop_type_int): Likewise.
4231         (pop_typelist): Likewise.
4232         (pop_type_stack): Likewise.
4233         (append_type_stack): Likewise.
4234         (push_type_stack): Likewise.
4235         (get_type_stack): Likewise.
4236         (type_stack_cleanup): Likewise.
4237         (push_typelist): Likewise.
4238         (follow_types): Likewise.
4239         (_initialize_parse): Likewise.
4240
4241 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4242
4243         * NEWS: Mention csky target.
4244
4245 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4246             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4247             Don Breazeal  <donb@codesourcery.com>
4248
4249         * csky-linux-tdep.c: New file.
4250         * csky-tdep.c: Likewise.
4251         * csky-tdep.h: Likewise.
4252         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4253         csky-tdep.o.
4254         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4255         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4256         * configure.tgt: Add csky support.
4257
4258 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4259
4260         * python/py-framefilter.c (py_print_frame): Print frame architecture
4261         when printing on an MI output.
4262
4263 2018-08-27  Tom Tromey  <tom@tromey.com>
4264
4265         PR build/23087:
4266         * configure: Rebuild.
4267         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4268
4269 2018-08-27  Tom Tromey  <tom@tromey.com>
4270
4271         * aarch64-linux-tdep.c
4272         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4273         casts to int.
4274
4275 2018-08-27  Tom Tromey  <tom@tromey.com>
4276
4277         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4278         unsigned.
4279         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4280         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4281         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4282         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4283         unsigned.
4284
4285 2018-08-27  Tom Tromey  <tom@tromey.com>
4286
4287         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4288         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4289
4290 2018-08-27  Tom Tromey  <tom@tromey.com>
4291
4292         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4293         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4294         ULONGEST_MAX.
4295         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4296         ULONGEST_MAX.
4297         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4298         ULONGEST_MAX.
4299         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4300         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4301         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4302         ULONGEST_MAX.
4303         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4304         (ppc64_linux_sigaction_tramp_frame)
4305         (ppc32_linux_sighandler_tramp_frame)
4306         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4307         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4308         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4309         * mn10300-linux-tdep.c (am33_linux_sigframe)
4310         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4311         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4312         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4313         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4314         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4315         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4316         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4317         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4318         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4319         * microblaze-linux-tdep.c
4320         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4321         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4322         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4323         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4324         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4325         * common/common-types.h (ULONGEST_MAX): New define.
4326         (CORE_ADDR_MAX): Fix formatting.
4327         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4328         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4329         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4330         (arm_linux_rt_sigreturn_tramp_frame)
4331         (arm_eabi_linux_sigreturn_tramp_frame)
4332         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4333         (thumb2_eabi_linux_sigreturn_tramp_frame)
4334         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4335         (arm_linux_restart_syscall_tramp_frame)
4336         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4337         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4338         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4339         ULONGEST_MAX.
4340         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4341
4342 2018-08-27  Tom Tromey  <tom@tromey.com>
4343
4344         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4345         CORE_ADDR_MAX.
4346         * mips-tdep.c (mips_deal_with_atomic_sequence)
4347         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4348         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4349         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4350         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4351         CORE_ADDR_MAX.
4352         * aarch64-tdep.c (aarch64_software_single_step): Use
4353         CORE_ADDR_MAX.
4354
4355 2018-08-27  Tom Tromey  <tom@tromey.com>
4356
4357         * linespec.c (complete_linespec_component): Add cast to "char".
4358         * completer.c (completion_tracker::build_completion_result): Add
4359         cast to "char".
4360
4361 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4362
4363         * solist.h (struct solist, struct target_so_ops): Fix
4364         indentation.
4365
4366 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4367
4368         * ada-tasks.c (ada_task_info_s): Remove typedef.
4369         (DEF_VEC_O(ada_task_info_s)): Remove.
4370         (struct ada_tasks_inferior_data): Initialize fields.
4371         <task_list>: Make an std::vector.
4372         (get_ada_tasks_inferior_data): Allocate with new.
4373         (ada_get_task_number): Adjust.
4374         (get_task_number_from_id): Likewise.
4375         (valid_task_id): Likewise.
4376         (ada_get_task_info_from_ptid): Likewise.
4377         (iterate_over_live_ada_tasks): Likewise.
4378         (add_ada_task): Likewise.
4379         (read_known_tasks): Likewise.
4380         (ada_build_task_list): Likewise.
4381         (print_ada_task_info): Likewise.
4382         (info_task): Likewise.
4383         (task_command_1): Likewise.
4384
4385 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4386
4387         * ada-lang.c (add_angle_brackets): Return std::string.
4388
4389 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4390
4391         * python/py-threadevent.c (py_get_event_thread): Initialize
4392         pythread.
4393
4394 2018-08-24  Pedro Alves  <palves@redhat.com>
4395
4396         * python/py-bpevent.c (create_breakpoint_event_object): Use
4397         copy-initialization.
4398         * python/py-continueevent.c (emit_continue_event): Use
4399         copy-initialization.
4400         * python/py-exitedevent.c (create_exited_event_object): Return a
4401         gdbpy_ref<>.
4402         (emit_exited_event): Use copy-initialization.
4403         * python/py-inferior.c (python_new_inferior)
4404         (python_inferior_deleted, add_thread_object): Use
4405         copy-initialization.
4406         * python/py-infevents.c (create_inferior_call_event_object)
4407         (create_register_changed_event_object)
4408         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4409         (emit_inferior_call_event, emit_memory_changed_event)
4410         (emit_register_changed_event): Use copy-initialization.
4411         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4412         Return a gdbpy_ref<>.
4413         (emit_new_objfile_event): Use copy-initialization.
4414         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4415         (emit_clear_objfiles_event): Use copy-initialization.
4416         * python/py-signalevent.c (create_signal_event_object): Use
4417         copy-initialization.
4418         * python/py-threadevent.c (create_thread_event_object): Use
4419         copy-initialization.
4420
4421 2018-08-24  Pedro Alves  <palves@redhat.com>
4422             Simon Marchi  <simon.marchi@ericsson.com>
4423
4424         PR gdb/23379
4425         * python/py-continueevent.c: Include "gdbthread.h".
4426         (create_continue_event_object): Add intro comment.  Add 'ptid'
4427         parameter.  Use it to find thread to pass to
4428         create_thread_event_object.
4429         (emit_continue_event): Pass PTID down to
4430         create_continue_event_object.
4431         * python/py-event.h (py_get_event_thread): Declare.
4432         (create_thread_event_object): Remove default from 'thread'
4433         parameter.
4434         * python/py-stopevent.c (create_stop_event_object): Use
4435         py_get_event_thread.
4436         * python/py-threadevent.c (get_event_thread): Rename to ...
4437         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4438         and use it to find the thread.
4439         (create_thread_event_object): Assert that THREAD isn't null.
4440         Don't find the event thread here.
4441
4442 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4443
4444         * block.h (blockrange, blockranges): New struct declarations.
4445         (struct block): Add new field named `ranges'.
4446         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4447         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4448         macros for accessing ranges in struct block.
4449         (make_blockranges): New declaration.
4450         block.c (make_blockranges): New function.
4451         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4452         for block.
4453         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4454         * blockframe.c (cache_pc_function_block): New static global.
4455         (clear_pc_function_cache): Clear cache_pc_function_block.
4456         (find_pc_partial_function): Move comment to symtab.h.  Add
4457         support for non-contiguous blocks.
4458         * cli/cli-cmds.c (block.h): Include.
4459         (print_disassembly): Handle printing of non-contiguous blocks.
4460         (disassemble_current_function): Likewise.
4461         (disassemble_command): Likewise.
4462
4463         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4464         BLOCK_START.
4465         * blockframe.c (get_pc_function_start): Likewise.
4466         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4467         (gcc_symbol_address): Likewise.
4468         * compile/compile-object-run.c (compile_object_run): Likewise.
4469         * compile/compile.c (get_expr_block_and_pc): Likewise.
4470         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4471         (func_addr_to_tail_call_list): Likewise.
4472         * findvar.c (default_read_var_value): Likewise.
4473         * inline-frame.c (inline_frame_this_id): Likewise.
4474         (skip-inline_frames): Likewise.
4475         * infcmd.c (until_next_command): Likewise.
4476         * linespec.c (convert_linespec_to_sals): Likewise.
4477         * parse.c (parse_exp_in_context_1): Likewise.
4478         * printcmd.c (build_address_symbolic): likewise.
4479         (info_address_command): Likewise.
4480         symtab.c (find_function_start_sal): Likewise.
4481         (skip_prologue_sal): Likewise.
4482         (find_function_alias_target): Likewise.
4483         (find_gnu_ifunc): Likewise.
4484         * stack.c (find_frame_funname): Likewise.
4485         * symtab.c (fixup_symbol_section): Likewise.
4486         (find_function_start_sal): Likewise.
4487         (skip_prologue_sal): Likewsie.
4488         (find_function_alias_target): Likewise.
4489         (find_gnu_ifunc): Likewise.
4490         * tracepoint.c (info_scope_command): Likewise.
4491         * value.c (value_fn_field): Likewise.
4492
4493         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4494         in place of find_pc_partial_function.
4495         * blockframe.c (find_function_entry_range_from_pc): New function.
4496         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4497         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4498         for each range in a block.
4499
4500
4501 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4502
4503         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4504         incrementation.
4505
4506 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4507
4508         * solib-svr4.c (read_program_headers_from_bfd): Return
4509         gdb::optional<gdb::byte_vector>.
4510         (svr4_exec_displacement): Adjust.
4511
4512 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4513
4514         * solib-svr4.c (read_program_header): Return
4515         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4516         (find_program_interpreter): Return
4517         gdb::optional<gdb::byte_vector>.
4518         (scan_dyntag_auxv): Adjust.
4519         (enable_break): Adjust.
4520         (svr4_exec_displacement): Adjust.
4521
4522 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4523
4524         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4525         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4526
4527 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4528
4529         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4530         string_vprintf.
4531         * guile/scm-utils.c (gdbscm_printf): Likewise.
4532         * serial.c (serial_printf): Likewise.
4533         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4534
4535 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4536
4537         * stack.c (print_frame): Print frame architecture when printing on
4538         an MI output.
4539         * NEWS: Mention new "arch" attribute in frame output.
4540
4541 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4542
4543         * arch/aarch64.h (aarch64_regnum): Update comment.
4544
4545 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4546
4547         * NEWS: Add SVE to 8.2 section.
4548
4549 2018-08-21  Pedro Alves  <palves@redhat.com>
4550
4551         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4552         out from gdbscm_parse_function_args.
4553         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4554         gdbscm_parse_function_args_1.
4555
4556 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4557
4558         PR gdb/17816
4559         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4560         operator.
4561
4562 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4563
4564         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4565
4566 2018-08-19  Michael Spang  <spang@google.com>
4567
4568         PR gdb/11786
4569         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4570         for PT_TLS segments.
4571
4572 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4573
4574         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4575         dwarf_variable_value.
4576         * dwarf2-frame.c (class dwarf_expr_executor):
4577         Add override for dwarf_variable_value.
4578         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4579         (class symbol_needs_eval_context): Likewise.
4580         (indirect_synthetic_pointer): Add forward declaration.
4581         (sect_variable_value): New function.
4582         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4583         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4584         for DW_OP_GNU_variable_value.
4585
4586 2018-08-16  Tom Tromey  <tom@tromey.com>
4587
4588         * top.c (read_command_file): Update.
4589         (command_line_input): Remove "repeat" argument.
4590         * ada-lang.c (get_selections): Update.
4591         * linespec.c (decode_line_2): Update.
4592         * defs.h (command_line_input): Remove argument.
4593         * cli/cli-script.c (read_next_line): Update.
4594         * python/py-gdb-readline.c: Update.
4595
4596 2018-08-17  Tom Tromey  <tom@tromey.com>
4597
4598         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4599         command_line_input.
4600
4601 2018-08-15  Tom Tromey  <tom@tromey.com>
4602
4603         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4604
4605 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4606
4607         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4608         If used, use find_pc_partial_function to find address range
4609         to disassemble.
4610         * mi/mi-main.c (mi_cmd_list_features): Report
4611         "data-disassemble-a-option" feature.
4612         * NEWS: Mention new -data-disassemble option -a.
4613
4614 2018-08-13  Tom Tromey  <tom@tromey.com>
4615
4616         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4617
4618 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4619
4620         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4621         (aarch64_linux_collect_sve_regset): Likewise.
4622         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4623         * regcache.h (regcache_map_entry_size): New function.
4624
4625 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4626
4627         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4628         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4629         (SVE_HEADER_VL_LENGTH): Likewise.
4630         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4631         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4632         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4633         (SVE_HEADER_SIZE_OFFSET): Likewise.
4634         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4635         (SVE_HEADER_VL_OFFSET): Likewise.
4636         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4637         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4638         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4639         (SVE_HEADER_SIZE): Likewise.
4640         (aarch64_linux_core_read_vq): Add function.
4641         (aarch64_linux_core_read_description): Check for SVE section.
4642
4643 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4644
4645         * aarch64-fbsd-tdep.c
4646         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4647         collect_size.
4648         * aarch64-linux-tdep.c
4649         (aarch64_linux_iterate_over_regset_sections): Likewise.
4650         * alpha-linux-tdep.c
4651         (alpha_linux_iterate_over_regset_sections):
4652         * alpha-nbsd-tdep.c
4653         (alphanbsd_iterate_over_regset_sections): Likewise.
4654         * amd64-fbsd-tdep.c
4655         (amd64fbsd_iterate_over_regset_sections): Likewise.
4656         * amd64-linux-tdep.c
4657         (amd64_linux_iterate_over_regset_sections): Likewise.
4658         * arm-bsd-tdep.c
4659         (armbsd_iterate_over_regset_sections): Likewise.
4660         * arm-fbsd-tdep.c
4661         (arm_fbsd_iterate_over_regset_sections): Likewise.
4662         * arm-linux-tdep.c
4663         (arm_linux_iterate_over_regset_sections): Likewise.
4664         * corelow.c (get_core_registers_cb): Likewise.
4665         (core_target::fetch_registers): Likewise.
4666         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4667         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4668         * gdbarch.h (void): Regenerate.
4669         * gdbarch.sh: Add supply_size and collect_size.
4670         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4671         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4672         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4673         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4674         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4675         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4676         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4677         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4678         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4679         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4680         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4681         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4682         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4683         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4684         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4685         Likewise.
4686         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4687         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4688         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4689         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4690         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4691         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4692         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4693         Likewise.
4694         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4695         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4696         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4697         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4698         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4699         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4700         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4701         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4702
4703 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4704
4705         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4706         with string_printf.
4707
4708 2018-08-10  Keith Seitz  <keiths@redhat.com>
4709
4710         * compile/compile-c-support.c (add_code_header, add_code_footer):
4711         Move into policy class.
4712         (c_push_user_expression, pop_user_expression_nop)
4713         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4714         (compile_program): New host class.
4715         (c_compile_program): New typedef.
4716         (c_compute_porgram): Use c_compile_program.
4717
4718 2018-08-10  Keith Seitz  <keiths@redhat.com>
4719
4720         * compile/compile-internal.h (compile_instance::~compile_instance):
4721         Remove calls to htab_delete.
4722         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4723         * compile.c (compile_instance::compile_instance): Initialize
4724         htab unique pointers.
4725         (compile_instance::get_cached_type, compile_instance::insert_type)
4726         (compile_instance::error_symbol_once): Update for unique_ptr.
4727
4728 2018-08-10  Keith Seitz  <keiths@redhat.com>
4729
4730         * compile/compile-c-symbols.c (struct symbol_error)
4731         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4732         (compile_instance::insert_symbol_error)
4733         (compile_instance::error_symbol_once): Move to ...
4734         * compile/compile.c: ... here.
4735
4736 2018-08-10  Keith Seitz  <keiths@redhat.com>
4737
4738         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4739         instead of `new_compile_instance'.
4740         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4741         Update description.
4742         If the symbol error map is not initialized, create it.
4743         (generate_c_for_for_one_symbol): Do not check/initialize
4744         the symbol error map.
4745         * compile/compile-c-types.c (compile_c_instance): Make a class.
4746         Update all callers.
4747         (compile_instance::compile_instance): Initialize the type cache.
4748         (get_cached_type): New function.
4749         (insert_type): Update description.
4750         (compile_c_instance::m_default_cflags): Define.
4751         (convert_type): Update description.  Use get_cached_type.
4752         (delete_instance): Moved to destructor.
4753         (new_compile_instance): Moved to constructor.
4754         * compile/compile-c.h (compile_c_instance): Make class inheriting
4755         from compile_instance.
4756         <base>: Remove field.
4757         <type_map, symbol_err_map>: Move to base class.
4758         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4759         * compile/compile-internal.h (compile_instance): Make class.
4760         <type_map_t, symbol_err_map_t>: Define.
4761         <fe>: Rename to `m_gcc_fe'.
4762         <scope, block, gcc_target_options>: Add `m_' prefix.
4763         <m_type_map, m_symbol_err_map>: New fields, moved from
4764         compile_c_instance.
4765         <destroy>: Remove.
4766         (convert_type, new_compile_instance): Remove.
4767         * compile/compile.c (cleanup_compile_instance): Remove.
4768         (compile_to_object): Use unique_ptr to eliminate cleanups.
4769         (compile_instance::set_print_callback, compile_instance::version)
4770         (compile_instance::set_verbose)
4771         (compile_instance::set_driver_filename)
4772         (compile_instance::set_triplet_regexp)
4773         (compile_instance::set_arguments)
4774         (compile_instance::set_source_file)
4775         (compile_instance::compile): Define.
4776
4777 2018-08-10  Keith Seitz  <keiths@redhat.com>
4778
4779         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4780         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4781         gcc-c-fe.def to define C plugin.
4782         (delete_instance): Delete `c_plugin'.
4783         (new_compile_instance): Initialize `c_plugin'.
4784         * compile/compile-c.h: Include gcc_c_plugin.h.
4785         (struct compile_c_instance) <c_plugin>: New member.
4786         * gcc-c-plugin.h: New file.
4787         Update all callers with API change.
4788
4789 2018-08-10  Keith Seitz  <keiths@redhat.com>
4790
4791         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4792         (HFILES_NO_SRCDIR): ... to here.
4793         Add compile-internal.h and compile-c.h.
4794         * compile/compile-c-support.c: Include compile-c.h.
4795         * compile/compile-c-symbols.c: Include compile-c.h.
4796         (generate_c_for_variable_locations): Update comment.
4797         * compile/compile-c-types.c: Include compile-c.h.
4798         * compile/compile-c.h: New file -- moved C language declarations
4799         from other files here.
4800         * compile/compile-internal.h: Do not include hashtab.h or
4801         common/enum-flags.h.
4802         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4803         (gcc_convert_symbol, gcc_symbol_address)
4804         (generate_c_for_variable_locations, c_get_mode_for_size)
4805         (c_get_range_decl_name): Definitions moved to compile-c.h.
4806         * compile/compile-loc2c.c: Include compile-c.h.
4807
4808 2018-08-10  Keith Seitz  <keiths@redhat.com>
4809
4810         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4811         (c_symbol_substitution_name): ... this.
4812         Update all callers.
4813
4814 2018-08-10  Keith Seitz  <keiths@redhat.com>
4815
4816         * compile/compile-c-support.c (c_compute_program): Use
4817         unique_xmalloc_ptr to eliminate cleanup.
4818         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4819         Return a unique_xmalloc_ptr and eliminate cleanup.
4820         * compile/compile-internal.h (generate_c_for_variable_locations):
4821         Return unique_xmalloc_ptr and update description.
4822
4823 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4824
4825         * corelow.c (core_target::get_core_register_section): Rename
4826         min_size to section_min_size.
4827
4828 2018-08-09  Jim Wilson  <jimw@sifive.com>
4829
4830         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4831         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4832         * NEWS: Mention new GNU/Linux RISC-V target.
4833         * configure.host: Add riscv*-*-linux*.
4834         * configure.nat: Add riscv*.
4835         * configure.tgt: Add riscv*-*-linux*.
4836         * riscv-linux-nat.c: New file.
4837         * riscv-linux-tdep.c: New file.
4838
4839 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4840
4841         * infrun.c (resume): Make static, add forward declaration.
4842         (proceed): Update header comment.
4843         * infrun.h (resume): Delete declaration.
4844
4845 2018-08-09  Tom Tromey  <tom@tromey.com>
4846
4847         * riscv-tdep.h: Minor formatting fixes.
4848
4849 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4850
4851         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4852         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4853         (test_mkdir_recursive): Likewise.
4854         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4855
4856 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4857
4858         * valarith.c (value_subscripted_rvalue): If an array is not in
4859         memory, and we don't know the upper bound, then we can't know that
4860         the requested element exists or not.
4861
4862 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4863
4864         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4865         (target_options_to_string): Add comment.
4866
4867 2018-08-08  Tom Tromey  <tom@tromey.com>
4868
4869         * unittests/scoped_mmap-selftests.c: Check result of "write".
4870
4871 2018-08-08  Jim Wilson  <jimw@sifive.com>
4872
4873         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4874         (decode_register_index_short): New.
4875         (decode_j_type_insn, decode_cj_type_insn): New.
4876         (decode_b_type_insn, decode_cb_type_insn): New.
4877         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4878         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4879         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4880         is_c_sw_insn instead of is_sw_insn.
4881         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4882         (riscv_software_single_step): New.
4883         * riscv-tdep.h (riscv_software_single_step): Declare.
4884
4885         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4886         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4887
4888 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4889
4890         PR gdb/18050:
4891         * target.c (dispose_inferior): Don't dispose of inferiors that are
4892         already killed.
4893
4894 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4895
4896         * remote.c (remote_target::download_tracepoint): Change char* to
4897         const char*.
4898
4899 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4900
4901         * target.h (target_options_to_string): Return an std::string.
4902         * target.c (str_comma_list_concat_elem): Return void, use
4903         std::string.
4904         (do_option): Likewise.
4905         (target_options_to_string): Return an std::string.
4906         * linux-nat.c (linux_nat_target::wait): Adjust.
4907         * target-debug.h (target_debug_print_options): Adjust.
4908
4909 2018-08-07  Tom Tromey  <tom@tromey.com>
4910
4911         * Makefile.in (CPPFLAGS): New variable.
4912         (INTERNAL_CPPFLAGS): Use it.
4913
4914 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4915
4916         * NEWS: Mention the index cache.
4917
4918 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4919
4920         * common/pathstuff.h (get_standard_cache_dir): New.
4921         * common/pathstuff.c (get_standard_cache_dir): New.
4922         * build-id.h (build_id_to_string): New.
4923         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4924         DEBUG_STR_SUFFIX): Move to here.
4925         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4926         DEBUG_STR_SUFFIX): Move from there.
4927         (write_psymtabs_to_index): Make non-static, add basename
4928         parameter.  Write to temporary files, rename when done.
4929         (save_gdb_index_command): Adjust call to
4930         write_psymtabs_to_index.
4931         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4932         field.
4933         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4934         (get_gdb_index_contents_from_cache): New.
4935         (get_gdb_index_contents_from_cache_dwz): New.
4936         (dwarf2_initialize_objfile): Read index from cache.
4937         (dwarf2_build_psymtabs): Save to index.
4938         * dwarf-index-cache.h: New file.
4939         * dwarf-index-cache.c: New file.
4940         * dwarf-index-write.h: New file.
4941
4942 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4943
4944         * gnulib/aclocal.m4: Re-generate.
4945         * gnulib/config.in: Re-generate.
4946         * gnulib/configure: Re-generate.
4947         * gnulib/import/Makefile.am: Re-generate.
4948         * gnulib/import/Makefile.in: Re-generate.
4949         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4950         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4951         * gnulib/import/m4/mkdir.m4: New file.
4952         * gnulib/import/mkdir.c: New file.
4953         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4954         module.
4955
4956 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4957
4958         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4959         * common/scoped_mmap.c: New file.
4960         * common/scoped_mmap.h (destroy): New method.
4961         (~scoped_mmap, reset): Use destroy.
4962         (scoped_mmap): New move constructor.
4963         (mmap_file): New declaration.
4964         * unittests/scoped_mmap-selftests.c (test_normal,
4965         test_invalid_filename, run_tests): New functions.
4966         (_initialize_scoped_mmap_selftests): Register selftest.
4967
4968 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4969
4970         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4971         (read_gdb_index_from_buffer): ... this.  Remove section
4972         parameter, add buffer parameter.
4973         (get_gdb_index_contents_ftype,
4974         get_gdb_index_contents_dwz_ftype): New typedefs.
4975         (dwarf2_read_gdb_index): Add callback parameters to get the
4976         index contents.
4977         (get_gdb_index_contents_from_section): New.
4978         (dwarf2_initialize_objfile): Update call to
4979         dwarf2_read_gdb_index.
4980
4981 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4982
4983         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4984         (gdb_open_cloexec): Likewise.
4985         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4986         (commandline_from_pid): Likewise.
4987         (linux_xfer_osdata_threads): Likewise.
4988         (linux_xfer_osdata_fds): Likewise.
4989         * ada-lang.c (is_package_name): Likewise.
4990         * auxv.c (procfs_xfer_auxv): Likewise.
4991         * breakpoint.c (print_one_breakpoint_location): Use
4992         uiout::field_fmt.
4993         (print_one_catch_solib): Use string_printf.
4994         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4995         (add_pe_forwarded_sym): Likewise.
4996         * dwarf2read.c (create_type_unit_group): Likewise.
4997         (build_error_marker_type): Likewise.
4998         * infcall.c (get_function_name): Likewise.
4999         * valprint.c (print_converted_chars_to_obstack): Likewise.
5000         * xtensa-tdep.c (xtensa_register_type): Likewise.
5001
5002 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5003
5004         * remote.c (remote_target::download_tracepoint): Fix format
5005         string errors.
5006
5007 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5008
5009         * tracefile.c: Include common/byte-vector.h.
5010         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5011         with trace_regblock_size if needed.  Update uses of buf.
5012
5013 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5014
5015         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5016         std::vector<unsigned char>.
5017         * tracepoint.c (collection_list::collection_list): Remove
5018         m_regs_mask initializer from initializer list.  Resize
5019         m_regs_mask using the largest remote register number.
5020         (collection_list::add_remote_register): Remove size check on
5021         m_regs_mask.  Use at to access element.
5022         (collection_list::stringify): Change type of temp_buf to
5023         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5024         stringify the register mask.  Use pack_hex_byte for the register
5025         mask.
5026
5027 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5028
5029         * tracepoint.h (class collection_list) <add_register>: Remove.
5030         <add_remote_register, add_ax_registers, add_local_register>:
5031         Declare.
5032         <add_memrange>: Add scope parameter.
5033         * tracepoint.c (encode_actions_1): Likewise.
5034         (collection_list::add_register): Rename to ...
5035         (collection_list::add_remote_register): ... this.  Update
5036         comment.
5037         (collection_list::add_ax_registers, add_local_register): New
5038         methods.
5039         (collection_list::add_memrange): Add scope parameter.  Call
5040         add_local_register instead of add_register.
5041         (finalize_tracepoint_aexpr): New function.
5042         (collection_list::collect_symbol): Update calls to add_memrange.
5043         Call add_local_register instead of add_register.  Call
5044         add_ax_registers.  Call finalize_tracepoint_aexpr.
5045         (encode_actions_1): Get remote regnos for $reg action.  Call
5046         add_remote_register, add_ax_registers, and add_local_register.
5047         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5048         (validate_actionline): Call finalize_tracepoint_aexpr.
5049
5050 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5051
5052         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5053         Replace array buf with gdb::char_vector buf, of size
5054         get_remote_packet_size ().  Replace references to buf and
5055         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5056         and xsnprintf with snprintf.  Raise errors if the buffer is too
5057         small.
5058
5059 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5060
5061         * remote.c (remote_target::download_tracepoint): Fix the has_more
5062         predicate in the QTDP action list iteration.
5063
5064 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5065
5066         * remote.c (remote_target::download_tracepoint): Fix indentation
5067         in for block.
5068
5069 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5070
5071         * proc-api.c (_initialize_proc_api): Remove c, unused.
5072         * procfs.c (procfs_init_inferior): Remove signals, unused.
5073         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5074         unused.
5075
5076 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5077             Andrew Burgess  <andrew.burgess@embecosm.com>
5078
5079         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5080         'W_STOPCODE (0)' as this could be ambiguous.
5081
5082 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5083
5084         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5085         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5086         "ai_socktype").
5087
5088 2018-08-02  Tom Tromey  <tom@tromey.com>
5089
5090         PR symtab/16842.
5091         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5092         symbols.
5093         (process_structure_scope): Likewise.
5094
5095 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5096
5097         PR gdb/22629:
5098         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5099         kill inferior.
5100
5101 2018-08-02  Tom Tromey  <tom@tromey.com>
5102
5103         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5104         (darwin_suspend_inferior, darwin_resume_inferior)
5105         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5106         (darwin_check_new_threads): Check result of get_darwin_inferior.
5107
5108 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5109
5110         GDB 8.1.1 released.
5111
5112 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5113
5114         * varobj.c (varobj_get_path_expr_parent): Report an error if
5115         parent is a dynamic varobj.
5116
5117 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5118
5119         * gnulib/aclocal.m4: Re-generate.
5120         * gnulib/config.in: Re-generate.
5121         * gnulib/configure: Re-generate.
5122         * gnulib/import/Makefile.in: Re-generate.
5123         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5124         * gnulib/import/m4/onceonly.m4: Re-generate.
5125
5126 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5127
5128         * target-descriptions.c (struct xml_test_tdesc): New.
5129         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5130         (record_xml_tdesc): Update.
5131         (maintenance_check_xml_descriptions): Update.
5132         * target-descriptions.h (record_xml_tdesc): Update comment.
5133
5134 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5135
5136         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5137         checking array bounds are defined.
5138
5139 2018-07-30  Tom Tromey  <tom@tromey.com>
5140
5141         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5142         irreflexivity violation.
5143
5144 2018-07-30  Tom Tromey  <tom@tromey.com>
5145
5146         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5147         * value.c (unpack_long): Remove lint code.
5148         * valops.c (value_ind): Remove lint code.
5149         * valarith.c (value_x_binop, value_x_unop, value_equal)
5150         (value_pos): Remove lint code.
5151
5152 2018-07-28  Tom de Vries  <tdevries@suse.de>
5153
5154         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5155         with undefined upper bound as <optimized out>.
5156
5157 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5158
5159         * gcore.in: Rename variable "name" to "prefix".  Expand
5160         "usage" text.
5161
5162 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5163
5164         * windows-nat.c (windows_nat_target::create_inferior): Update to
5165         call close() in global namespace.
5166
5167 2018-07-26  Tom Tromey  <tom@tromey.com>
5168
5169         * dwarf-index-write.c (add_address_entry): Don't add objfile
5170         offsets.
5171         * dbxread.c (find_stab_function): Rename from
5172         find_stab_function_addr.  Return a bound_minimal_symbol.
5173         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5174         Don't add objfile offsets.
5175         (end_psymtab): Use raw_text_low, raw_text_high,
5176         MSYMBOL_VALUE_RAW_ADDRESS.
5177         (read_ofile_symtab): Update.
5178         (process_one_symbol): Update.
5179         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5180         offsets.
5181         (dw2_relocate): Remove.
5182         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5183         searching addrmap.
5184         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5185         Update.
5186         (process_psymtab_comp_unit_reader, add_partial_symbol)
5187         (add_partial_subprogram, dwarf2_ranges_read): Update.
5188         (load_partial_dies): Update.
5189         (add_address_entry): Don't add objfile offsets.
5190         (dwarf2_build_include_psymtabs): Update.
5191         (create_addrmap_from_aranges): Don't add objfile offsets.
5192         (dw2_find_pc_sect_compunit_symtab): Update.
5193         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5194         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5195         Update.
5196         (parse_partial_symbols): Don't add objfile offsets.  Use
5197         raw_text_low, raw_text_high.  Update.
5198         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5199         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5200         or call 'relocate' quick function.  Clear psymbol_map.
5201         * psympriv.h (struct partial_symbol) <address>: Add section
5202         offset.
5203         <set_unrelocated_address>: Rename from set_address.
5204         <raw_text_low, raw_text_high>: New methods.
5205         <text_low, text_high>: Add objfile parameter.
5206         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5207         set_unrelocated_address.
5208         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5209         (find_pc_psymbol): Update.
5210         (fixup_psymbol_section, relocate_psymtabs): Remove.
5211         (dump_psymtab, psym_functions): Update.
5212         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5213         parameter.
5214         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5215         (start_psymtab_common): Update.
5216         * symfile-debug.c (debug_qf_relocate): Remove.
5217         (debug_sym_quick_functions): Update.
5218         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5219         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5220         Update.
5221
5222 2018-07-26  Tom Tromey  <tromey@redhat.com>
5223
5224         * dbxread.c (end_psymtab): Use text_high_valid and
5225         text_low_valid.
5226         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5227         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5228         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5229         Update comment.
5230         <text_low_valid, text_high_valid>: New fields.
5231         <set_text_low, set_text_high>: Update.
5232         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5233
5234 2018-07-26  Tom Tromey  <tom@tromey.com>
5235
5236         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5237         Update.
5238         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5239         textlow and texthigh fields.
5240         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5241         Update.
5242         * mdebugread.c (parse_lines, parse_partial_symbols)
5243         (psymtab_to_symtab_1): Update.
5244         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5245         Rename fields.  Update comment.  Now private.
5246         <text_low, text_high, set_text_low, set_text_high>: New methods.
5247         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5248         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5249         (start_psymtab_common, maintenance_info_psymtabs)
5250         (maintenance_check_psymtabs): Update.
5251         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5252         texthigh fields.
5253         (scan_xcoff_symtab): Update.
5254
5255 2018-07-26  Tom Tromey  <tromey@redhat.com>
5256
5257         * psympriv.h (struct partial_symbol) <unrelocated_address,
5258         address, set_address>: New methods.
5259         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5260         (fixup_psymbol_section, relocate_psymtabs): Update.
5261         (print_partial_symbols): Add 'objfile' parameter.  Update.
5262         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5263         Update.
5264
5265 2018-07-26  Tom Tromey  <tom@tromey.com>
5266
5267         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5268         (debug_names::write_psymbols): Update.
5269         * psympriv.h (struct partial_symbol): Derive from
5270         general_symbol_info.
5271         <obj_section>: New method.
5272         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5273         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5274         (find_pc_sect_psymbol, fixup_psymbol_section)
5275         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5276         (print_partial_symbols, recursively_search_psymtabs)
5277         (compare_psymbols, psymbol_hash, psymbol_compare)
5278         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5279         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5280
5281 2018-07-26  Tom Tromey  <tromey@redhat.com>
5282
5283         * dbxread.c (end_psymtab): Remove dead code.
5284
5285 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5286
5287         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5288         DWARF unwinders are disabled.
5289         * dwarf2-frame.c: Add dwarf2read.h include.
5290         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5291         disabled.
5292         (dwarf2_frame_unwinders_enabled_p): Define.
5293         (show_dwarf_unwinders_enabled_p): New function.
5294         (_initialize_dwarf2_frame): Register switch to control DWARF
5295         unwinder use.
5296         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5297         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5298         (show_dwarf_cmdlist): Remove static keyword.
5299         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5300         (show_dwarf_cmdlist): Declare.
5301         * NEWS: Document new feature.
5302
5303 2018-07-26  Tom de Vries  <tdevries@suse.de>
5304
5305         PR breakpoints/23366
5306         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5307
5308 2018-07-26  Tom de Vries  <tdevries@suse.de>
5309
5310         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5311         DW_AT_count can't be translated to a dynamic prop.
5312
5313 2018-07-25  Tom de Vries  <tdevries@suse.de>
5314
5315         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5316         try/catch.
5317
5318 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5319
5320         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5321
5322 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5323
5324         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5325
5326 2018-07-24  Keith Seitz  <keiths@redhat.comt
5327
5328         PR symtab/23010
5329         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5330         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5331         instead of add_symbol_to_list.
5332         (read_file_scope): Call prepare_one_comp_unit before reading
5333         any other DIEs.
5334
5335 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5336
5337         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5338
5339 2018-07-24  Tom Tromey  <tom@tromey.com>
5340
5341         * utils.c (malloc, realloc, free): Don't declare.
5342         * configure, config.in: Rebuild.
5343         * configure.ac: Don't check for declarations of free, malloc, or
5344         realloc.
5345
5346 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5347
5348         * aarch64-linux-nat.c
5349         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5350         variable.
5351         * arm-linux-nat.c (fetch_regs): Likewise.
5352         (store_regs): Likewise.
5353         (fetch_vfp_regs): Likewise.
5354         (store_vfp_regs): Likewise.
5355         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5356         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5357         (arm_linux_nat_target::insert_watchpoint): Likewise.
5358         (arm_linux_nat_target::remove_watchpoint): Likewise.
5359         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5360         Likewise.
5361         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5362         Likewise.
5363         * ppc-linux-nat.c (fetch_register): Likewise.
5364         (fetch_all_gp_regs): Likewise.
5365         (fetch_ppc_registers): Likewise.
5366         (store_all_gp_regs): Likewise.
5367         (store_ppc_registers): Likewise.
5368         (hwdebug_insert_point): Likewise.
5369         (can_use_watchpoint_cond_accel): Likewise.
5370         * remote-sim.c (gdb_os_write_stdout): Likewise.
5371
5372 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5373             Tom Tromey  <tom@tromey.com>
5374
5375         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5376         test for it.
5377         * configure: Rebuild.
5378
5379 2018-07-22  Tom Tromey  <tom@tromey.com>
5380
5381         * regformats/regdat.sh: Define xmltarget_${name} inside
5382         #ifndef IN_PROCESS_AGENT.
5383
5384 2018-07-22  Tom Tromey  <tom@tromey.com>
5385
5386         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5387
5388 2018-07-22  Tom Tromey  <tom@tromey.com>
5389
5390         * symfile.c (reread_symbols): Notify iter, not objfile.
5391
5392 2018-07-22  Tom Tromey  <tom@tromey.com>
5393
5394         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5395         Use arch_ops.
5396         (ravenscar_thread_target::prepare_to_store): Likewise.
5397
5398 2018-07-22  Tom Tromey  <tom@tromey.com>
5399
5400         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5401         unused variable.  Call value_fetch_lazy when needed.
5402         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5403         Remove unused variable.  Call value_fetch_lazy when needed.
5404
5405 2018-07-22  Tom Tromey  <tom@tromey.com>
5406
5407         * m32c-tdep.c (mark_dma): Return void.
5408         (make_regs): Remove unused declarations.
5409
5410 2018-07-22  Tom Tromey  <tom@tromey.com>
5411
5412         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5413         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5414         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5415         bkscm_get_valid_block_smob_arg_unsafe for effect.
5416
5417 2018-07-22  Tom Tromey  <tom@tromey.com>
5418
5419         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5420         value_type.
5421
5422 2018-07-22  Tom Tromey  <tom@tromey.com>
5423
5424         * windows-nat.c (saved_context): Conditionally define.
5425         * remote.c (remote_target::remote_btrace_maybe_reopen):
5426         Conditionally declare "warned".
5427         * inflow.c (sigquit_ours): Conditionally define.
5428         (new_tty): Move "tty" declaration inside #if.
5429         * guile/guile.c (guile_datadir): Conditionally define.
5430         * charset.c (set_be_le_names): Move some declarations inside #if.
5431         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5432         #if.
5433         (parse_xml_btrace_conf): Likewise.
5434
5435 2018-07-22  Tom Tromey  <tom@tromey.com>
5436
5437         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5438
5439 2018-07-22  Tom Tromey  <tom@tromey.com>
5440
5441         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5442         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5443         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5444         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5445         * stack.c (frame_apply_level_command): Remove unused variable.
5446         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5447         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5448         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5449         unused variable.
5450         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5451         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5452         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5453         variable.
5454         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5455         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5456         variable.
5457         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5458         Remove unused variable.
5459         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5460         variable.
5461         * common/tdesc.c (print_xml_feature::visit): Remove unused
5462         variable.
5463         * compile/compile-object-load.c (store_regs): Remove unused
5464         variables.
5465         * complaints.c (clear_complaints): Remove unused variable.
5466         * corelow.c (core_target_open): Remove unused variable.
5467         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5468         variable.
5469         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5470         variable.
5471         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5472         variable.
5473         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5474         variable.
5475         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5476         variable.
5477         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5478         variable.
5479         * ia64-tdep.c (examine_prologue): Remove unused variable.
5480         * infcall.c (run_inferior_call): Remove unused variable.
5481         * inferior.c (exit_inferior): Remove unused variable.
5482         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5483         * linespec.c (decode_line_2): Remove unused variable.
5484         * linux-nat.c (super_close): Remove.
5485         * linux-tdep.c (linux_info_proc): Remove unused variable.
5486         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5487         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5488         Remove unused variable.
5489         * parse.c (find_minsym_type_and_address): Remove unused variable.
5490         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5491         variable.
5492         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5493         variable.
5494         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5495         variables.
5496         * record-btrace.c (record_btrace_target::store_registers): Remove
5497         unused variable.
5498         (cmd_show_record_btrace_cpu): Remove unused variable.
5499         * riscv-tdep.c (riscv_register_reggroup_p)
5500         (riscv_push_dummy_call, riscv_return_value): Remove unused
5501         variable.
5502         * rust-exp.y (literal): Remove unused variable.
5503         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5504         unused variable.
5505         <STRUCTOP_ANONYMOUS>: Likewise.
5506         * s390-linux-tdep.c (s390_linux_init_abi_31)
5507         (s390_linux_init_abi_64): Remove unused variable.
5508         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5509         (file_select_thread, net_windows_open, _initialize_ser_windows):
5510         Remove unused variables.
5511         * symtab.c (find_pc_sect_line): Remove unused variable.
5512         * target-memory.c (compute_garbled_blocks): Remove unused
5513         variable.
5514         (target_write_memory_blocks): Remove unused variable.
5515         * target.c (target_stack::unpush): Remove unused variables.
5516         * tracepoint.c (start_tracing, all_tracepoint_actions)
5517         (merge_uploaded_trace_state_variables)
5518         (print_one_static_tracepoint_marker): Remove unused variable.
5519         * unittests/basic_string_view/element_access/char/1.cc (test01):
5520         Remove unused variable.
5521         * windows-nat.c (windows_continue, windows_add_all_dlls)
5522         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5523         Remove unused variables.
5524
5525 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5526
5527         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5528         attr_profile in HAVE_ELF.
5529         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5530         HAVE_ELF.
5531
5532 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5533
5534         * frame.c (frame_register_unwind): Change parameter name.
5535         (frame_unwind_register): Likewise.
5536         (frame_unwind_register_value): Likewise.
5537         (frame_unwind_register_signed): Likewise.
5538         (frame_unwind_register_unsigned): Likewise.
5539         * frame.h (frame_register_unwind): Likewise.
5540         (frame_unwind_register): Likewise.
5541         (frame_unwind_register_value): Likewise.
5542         (frame_unwind_register_signed): Likewise.
5543         (frame_unwind_register_unsigned): Likewise.
5544         (frame_unwind_arch): Likewise.
5545
5546 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5547
5548         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5549         ISA maintenance.
5550
5551 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5552
5553         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5554         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5555         hand.
5556
5557 2018-07-20  Keith Seitz  <keiths@redhat.com>
5558
5559         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5560         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5561         m_compunit_symtab, m_language>: Add "m_" prefix.
5562         Update all uses.
5563         * buildsym.c: Update all uses.
5564
5565 2018-07-20  Tom Tromey  <tom@tromey.com>
5566
5567         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5568         * buildsym.h (record_line_ftype): Remove typedef.
5569
5570 2018-07-20  Tom Tromey  <tom@tromey.com>
5571
5572         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5573         (end_expandable_symtab): Likewise.
5574         (end_symtab_get_static_block): Likewise.
5575         (end_symtab_from_static_block): Likewise.
5576         * buildsym-legacy.c (augment_type_symtab): Remove.
5577         (end_expandable_symtab): Remove.
5578         (end_symtab_get_static_block): Remove.
5579         (end_symtab_from_static_block): Remove.
5580
5581 2018-07-20  Tom Tromey  <tom@tromey.com>
5582
5583         * dwarf2read.c: Include buildsym.h.
5584         (struct dwarf2_cu) <builder>: New method.
5585         (fixup_go_packaging): Update.
5586         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5587         use scoped_free_pendings.
5588         (using_directives): Add "cu" parameter, remove "language".
5589         (read_import_statement, setup_type_unit_groups, )
5590         (read_func_scope, read_lexical_block_scope)
5591         (dwarf2_record_block_ranges, read_namespace): Update.
5592         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5593         (lnp_state_machine::handle_end_sequence): Update.
5594         (class lnp_state_machine) <m_cu>: New member.
5595         <m_record_line_callback>: Remove.
5596         <m_currently_recording_lines>: New member.
5597         (lnp_state_machine::handle_set_file): Update.
5598         (noop_record_line): Remove.
5599         (dwarf_record_line_p): Add cu parameter.
5600         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5601         (lnp_state_machine::record_line)
5602         (lnp_state_machine::lnp_state_machine)
5603         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5604         (dwarf_decode_lines): Update.
5605         (dwarf2_start_subfile): Add cu parameter.
5606         (dwarf2_start_symtab, new_symbol): Update.
5607         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5608         Remove dwarf2_per_objfile parameter.
5609         (dwarf_decode_macros): Update.
5610
5611 2018-07-20  Tom Tromey  <tom@tromey.com>
5612
5613         * stabsread.c (define_symbol): Update.
5614         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5615         * dwarf2read.c (new_symbol): Update.
5616         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5617         * cp-namespace.c: Include buildsym.h.
5618         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5619         * buildsym-legacy.c (get_buildsym_compunit): New function.
5620
5621 2018-07-20  Tom Tromey  <tom@tromey.com>
5622
5623         * xcoffread.c: Include buildsym-legacy.h.
5624         * windows-nat.c: Include buildsym-legacy.h.
5625         * stabsread.c: Include buildsym-legacy.h.
5626         * mdebugread.c: Include buildsym-legacy.h.
5627         * buildsym-legacy.h: New file.
5628         * buildsym-legacy.c: New file, from buildsym.c.
5629         * go32-nat.c: Include buildsym-legacy.h.
5630         * dwarf2read.c: Include buildsym-legacy.h.
5631         * dbxread.c: Include buildsym-legacy.h.
5632         * cp-namespace.c: Include buildsym-legacy.h.
5633         * coffread.c: Include buildsym-legacy.h.
5634         * buildsym.h: Move some contents to buildsym-legacy.h.
5635         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5636         buildsym-legacy.c.
5637         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5638
5639 2018-07-20  Tom Tromey  <tom@tromey.com>
5640
5641         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5642         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5643         (buildsym_compunit::buildsym_compunit)
5644         (buildsym_compunit::~buildsym_compunit)
5645         (buildsym_compunit::get_macro_table): Define.
5646
5647 2018-07-20  Tom Tromey  <tom@tromey.com>
5648
5649         * buildsym.c (reset_symtab_globals): Remove.
5650         (buildsym_compunit::end_symtab_from_static_block): Update.
5651         (buildsym_compunit::augment_type_symtab): Update.
5652         (end_symtab_from_static_block): Call free_buildsym_compunit.
5653         (augment_type_symtab, end_symtab, end_expandable_symtab):
5654         Likewise.
5655
5656 2018-07-20  Tom Tromey  <tom@tromey.com>
5657
5658         * arch-utils.c: Do not include buildsym.h.
5659         * mipsread.c: Do not include buildsym.h.
5660         * machoread.c: Do not include buildsym.h.
5661         * elfread.c: Do not include buildsym.h.
5662
5663 2018-07-20  Tom Tromey  <tom@tromey.com>
5664
5665         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5666         initialization.
5667         (buildsym_compunit): Add new constructor.
5668         (struct buildsym_compunit) <get_last_source_file, finish_block,
5669         record_block_range, start_subfile, patch_subfile_names,
5670         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5671         set_last_source_start_addr, get_last_source_start_addr,
5672         get_local_using_directives, set_local_using_directives,
5673         get_global_using_directives, outermost_context_p,
5674         get_current_context_stack, get_context_stack_depth,
5675         get_current_subfile, get_local_symbols, get_file_symbols,
5676         get_global_symbols, record_debugformat, record_producer,
5677         push_context, pop_context, end_symtab_get_static_block,
5678         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5679         New public methods.
5680         <record_pending_block, finish_block_internal, make_blockvector,
5681         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5682         private methods.
5683         Update all users.
5684
5685 2018-05-22  Tom Tromey  <tom@tromey.com>
5686
5687         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5688         parameter.
5689         (finish_block_internal): Update.
5690
5691 2018-07-20  Tom Tromey  <tom@tromey.com>
5692
5693         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5694         parameter.
5695         (finish_block_internal): Update.
5696
5697 2018-07-20  Tom Tromey  <tom@tromey.com>
5698
5699         * buildsym.h (EXTERN): Don't define or undef.
5700         * buildsym.c (EXTERN): Don't define.
5701
5702 2018-07-20  Tom Tromey  <tom@tromey.com>
5703
5704         * buildsym.c: Remove TODO comment.
5705
5706 2018-07-20  Tom Tromey  <tom@tromey.com>
5707
5708         * coffread.c (coff_symtab_read): Update.
5709         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5710         (xcoff_new_init): Update.
5711         * mipsread.c (mipscoff_new_init): Update.
5712         * mdebugread.c (mdebug_build_psymtabs): Update.
5713         * elfread.c (elf_new_init): Update.
5714         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5715         Update.
5716         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5717         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5718         (stabsect_build_psymtabs): Update.
5719         * buildsym.h (buildsym_init): Don't declare.
5720         * buildsym.c: Update comment.
5721         (prepare_for_building): Remove.
5722         (start_symtab, restart_symtab): Update.
5723         (reset_symtab_globals): Update comment.
5724         (buildsym_init): Remove.
5725
5726 2018-07-20  Tom Tromey  <tom@tromey.com>
5727
5728         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5729         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5730         (read_enum_type, common_block_start, common_block_end)
5731         (cleanup_undefined_types_1, finish_global_stabs): Update.
5732         * mdebugread.c (psymtab_to_symtab_1): Update.
5733         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5734         (read_lexical_block_scope, new_symbol): Update.
5735         * dbxread.c (process_one_symbol): Update.
5736         * coffread.c (coff_symtab_read, process_coff_symbol)
5737         (coff_read_enum_type): Update.
5738         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5739         declare.
5740         (get_local_symbols, get_file_symbols, get_global_symbols): New
5741         functions.
5742         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5743         m_global_symbols.
5744         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5745         (~scoped_free_pendings): Update.
5746         (finish_block, prepare_for_building, reset_symtab_globals)
5747         (end_symtab_get_static_block, end_symtab_with_blockvector)
5748         (augment_type_symtab, push_context): Update.
5749         (get_local_symbols, get_file_symbols, get_global_symbols): New
5750         functions.
5751         (buildsym_init): Update.
5752
5753 2018-07-20  Tom Tromey  <tom@tromey.com>
5754
5755         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5756         (process_full_type_unit): Likewise.
5757         (dwarf2_start_symtab): Set list_in_scope.
5758
5759 2018-07-20  Tom Tromey  <tom@tromey.com>
5760
5761         * dwarf2read.c (process_psymtab_comp_unit_reader)
5762         (build_type_psymtabs_reader): Do not set list_in_scope.
5763
5764 2018-07-20  Tom Tromey  <tom@tromey.com>
5765
5766         * buildsym.c (free_pendings): Remove.
5767         (add_symbol_to_list, scoped_free_pendings)
5768         (finish_block_internal, buildsym_init): Update.
5769
5770 2018-07-20  Tom Tromey  <tom@tromey.com>
5771
5772         * xcoffread.c (read_xcoff_symtab): Update.
5773         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5774         Update.
5775         * dbxread.c (process_one_symbol): Update.
5776         * coffread.c (coff_symtab_read): Update.
5777         * buildsym.h (finish_block): Update.
5778         * buildsym.c (finish_block): Remove "listhead" argument.
5779         (end_symtab_get_static_block): Update.
5780
5781 2018-07-20  Tom Tromey  <tom@tromey.com>
5782
5783         * buildsym.h (class scoped_free_pendings): Remove constructor.
5784         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5785         method.
5786         <m_pending_block_obstack, m_pending_blocks>: New members.
5787         (pending_block_obstack, pending_blocks): Remove.
5788         (scoped_free_pendings::scoped_free_pendings): Default.
5789         (~scoped_free_pendings): Update.
5790         (free_pending_blocks): Remove.
5791         (finish_block_internal, record_pending_block, make_blockvector)
5792         (end_symtab_get_static_block, augment_type_symtab, push_context)
5793         (buildsym_init): Update.
5794
5795 2018-07-20  Tom Tromey  <tom@tromey.com>
5796
5797         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5798         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5799         members.
5800         (pending_addrmap, pending_addrmap_obstack)
5801         (pending_addrmap_interesting): Remove.
5802         (scoped_free_pendings, record_block_range, make_blockvector)
5803         (prepare_for_building, reset_symtab_globals, buildsym_init):
5804         Update.
5805
5806 2018-07-20  Tom Tromey  <tom@tromey.com>
5807
5808         * xcoffread.c (process_linenos): Update.
5809         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5810         * mdebugread.c (psymtab_to_symtab_1): Update.
5811         * dwarf2read.c (setup_type_unit_groups)
5812         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5813         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5814         * dbxread.c (process_one_symbol): Update.
5815         * coffread.c (coff_symtab_read, enter_linenos)
5816         (process_coff_symbol): Update.
5817         * buildsym.h (current_subfile): Don't declare.
5818         (get_current_subfile): Declare.
5819         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5820         member.
5821         (start_subfile, free_buildsym_compunit, push_subfile)
5822         (prepare_for_building, start_symtab): Update.
5823         (get_current_subfile): New function.
5824
5825 2018-07-20  Tom Tromey  <tom@tromey.com>
5826
5827         * coffread.c (coff_symtab_read): Update.
5828         * xcoffread.c (read_xcoff_symtab): Update.
5829         * dwarf2read.c (new_symbol): Update.
5830         (read_func_scope, read_lexical_block_scope): Update.
5831         * dbxread.c (process_one_symbol): Update.
5832         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5833         (outermost_context_p): Remove macro.
5834         (outermost_context_p, get_current_context_stack)
5835         (get_context_stack_depth): Declare.
5836         (pop_context): Return struct context_stack.
5837         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5838         member.
5839         (context_stack_size): Remove.
5840         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5841         (prepare_for_building, end_symtab_get_static_block)
5842         (augment_type_symtab, push_context): Update.
5843         (pop_context): Return struct context_stack.
5844         (outermost_context_p, get_current_context_stack)
5845         (get_context_stack_depth): New functions.
5846         (buildsym_init): Update.
5847
5848 2018-07-20  Tom Tromey  <tom@tromey.com>
5849
5850         * rust-exp.y: Now a pure parser.  Update all rules.
5851         (%union): Move earlier.
5852         (current_parser, work_obstack): Remove globals.
5853         (rust_parser, ~rust_parser): Update.
5854         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5855         lex_character, lex_number, lex_string, lex_identifier,
5856         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5857         convert_name, convert_params_to_expression,
5858         convert_ast_to_expression, ast_basic_type, ast_operation,
5859         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5860         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5861         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5862         ast_array_type, ast_slice_type, ast_reference_type,
5863         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5864         (rust_parse): Update.
5865         (rustyyerror, rustyylex): Add parser parameter.
5866         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5867         (rust_lex_stringish_test, rust_lex_test_sequence)
5868         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5869         (rust_lex_test_push_back, rust_lex_tests): Update.
5870
5871 2018-07-19  Pedro Alves  <palves@redhat.com>
5872
5873         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5874         gdb::unique_xmalloc_ptr.
5875         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5876         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5877         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5878         copy-initialization.
5879         * guile/scm-pretty-print.c (ppscm_print_children): Use
5880         gdb::unique_xmalloc_ptr instead of cleanups.
5881         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5882         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5883         gdb::unique_xmalloc_ptr.
5884         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5885         Adjust to use gdb::unique_xmalloc_ptr.
5886         * guile/scm-utils.c (extract_arg): Adjust.
5887         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5888         gdb::unique_xmalloc_ptr instead of a cleanup.
5889
5890 2018-07-19  Tom Tromey  <tom@tromey.com>
5891
5892         * utils.c (do_value_free_to_mark)
5893         (make_cleanup_value_free_to_mark): Remove.
5894         * utils.h (make_cleanup_value_free_to_mark): Remove.
5895
5896 2018-07-19  Pedro Alves  <palves@redhat.com>
5897
5898         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5899         forwarding reference.
5900
5901 2018-07-18  Pedro Alves  <palves@redhat.com>
5902
5903         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5904         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5905         cleanup.
5906
5907 2018-07-18  Pedro Alves  <palves@redhat.com>
5908
5909         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5910         exceptions.
5911         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5912         (gdbscm_wrap): New.
5913         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5914         directly instead of a cleanup.
5915         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5916         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5917         (vlscm_binop_gdbthrow): New, factored out from ...
5918         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5919         (vlscm_rich_compare): Use gdbscm_wrap.
5920         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5921         instead of a cleanup.
5922         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5923         cleanup.
5924         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5925         Use xfree directly instead of a cleanup.
5926         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5927         Adjust to use gdbscm_wrap and scoped_value_mark.
5928         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5929         (gdbscm_value_address, gdbscm_value_dereference)
5930         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5931         scoped_value_mark.
5932         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5933         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5934         scoped_value_mark.
5935         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5936         gdbscm_wrap and scoped_value_mark.
5937         (gdbscm_value_to_string): Use xfree directly instead of a
5938         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5939         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5940         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5941         scoped_value_mark.
5942         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5943         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5944         scoped_value_mark.
5945         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5946         gdbscm_wrap.
5947
5948 2018-07-18  Tom de Vries  <tdevries@suse.de>
5949
5950         * findvar.c (default_read_var_value): Also resolve dynamic type for
5951         LOC_OPTIMIZED_OUT vars.
5952
5953 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5954
5955         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5956         decoding.
5957
5958 2018-07-17  Tom Tromey  <tom@tromey.com>
5959
5960         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5961         (compute_enum_list, pascm_set_param_value_x)
5962         (gdbscm_parameter_value): Update.
5963         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5964         (gdbscm_scm_to_host_string): Update.
5965         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5966         Update.
5967         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5968         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5969         * guile/scm-string.c (gdbscm_scm_to_string): Return
5970         unique_xmalloc_ptr.
5971         (gdbscm_scm_to_host_string): Likewise.
5972
5973 2018-07-17  Tom Tromey  <tom@tromey.com>
5974
5975         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5976         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5977         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5978         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5979         unique_xmalloc_ptr.
5980
5981 2018-07-17  Tom Tromey  <tom@tromey.com>
5982
5983         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5984         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5985         Update.
5986         * guile/scm-cmd.c (cmdscm_function): Update.
5987         * guile/scm-pretty-print.c
5988         (ppscm_print_exception_unless_memory_error): Update.
5989         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5990         Return unique_xmalloc_ptr.
5991
5992 2018-07-17  Tom Tromey  <tom@tromey.com>
5993
5994         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5995         Use string_printf.
5996
5997 2018-07-17  Jim Wilson  <jimw@sifive.com>
5998
5999         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6000         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6001         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6002         unecessary braces after EF_RISCV_RVC test.  Delete call to
6003         set_gdbarch_decr_pc_after_break.
6004
6005         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6006         RISCV_LAST_FP_REGNUM + 1.
6007         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6008
6009 2018-07-17  Tom Tromey  <tom@tromey.com>
6010
6011         * configure.ac: Remove --disable-gdbcli.
6012         * configure: Rebuild.
6013         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6014         (SUBDIR_CLI_CFLAGS): Remove.
6015         (SFILES): Use SUBDIR_CLI_SRCS.
6016         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6017
6018 2018-07-17  Tom Tromey  <tom@tromey.com>
6019
6020         PR gdb/18624:
6021         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6022
6023 2018-07-16  Jim Wilson  <jimw@sifive.com>
6024
6025         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6026
6027 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6028
6029         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6030         variable.
6031         (libunwind_frame_sniffer): Likewise.
6032         (libunwind_frame_prev_register): Likewise.
6033         (libunwind_sigtramp_frame_sniffer): Likewise.
6034         * ia64-tdep.c (ia64_access_reg): Likewise.
6035         (ia64_access_rse_reg): Likewise.
6036         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6037         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6038
6039 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6040
6041         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6042
6043 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6044
6045         * remote-sim.c (gdbsim_target::close,
6046         gdbsim_target::mourn_inferior): Remove unused variables.
6047
6048 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6049
6050         * ia64-tdep.c (ktab_buf): New global.
6051         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6052         (get_kernel_table): Adjust.
6053
6054 2018-07-16  Tom Tromey  <tom@tromey.com>
6055
6056         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6057         * dwarf2read.c (using_directives, new_symbol): Use
6058         outermost_context_p.
6059         * dbxread.c (process_one_symbol): Use outermost_context_p.
6060         * coffread.c (coff_symtab_read): Use outermost_context_p.
6061
6062 2018-07-16  Tom Tromey  <tom@tromey.com>
6063
6064         * dwarf2read.c (using_directives, read_func_scope)
6065         (read_lexical_block_scope): Update.
6066         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6067         * buildsym.h (local_using_directives, global_using_directives):
6068         Don't declare.
6069         (get_local_using_directives, set_local_using_directives)
6070         (get_global_using_directives): Declare.
6071         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6072         m_global_using_directives>: New members.
6073         (finish_block_internal, prepare_for_building)
6074         (reset_symtab_globals, end_symtab_get_static_block)
6075         (push_context): Update.
6076         (get_local_using_directives, set_local_using_directives)
6077         (get_global_using_directives): New functions.
6078         (buildsym_init): Update.
6079
6080 2018-07-16  Tom Tromey  <tom@tromey.com>
6081
6082         * xcoffread.c (xcoff_initial_scan): Don't call
6083         free_pending_blocks.
6084         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6085         * buildsym.h (class scoped_free_pendings): Add constructor.
6086         (free_pending_blocks): Don't declare.
6087         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6088         (free_pending_blocks): Now static.
6089
6090 2018-07-16  Tom Tromey  <tom@tromey.com>
6091
6092         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6093         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6094         member.
6095         (struct subfile_stack): Remove.
6096         (subfile_stack): Remove.
6097         (push_subfile, pop_subfile, buildsym_init): Update.
6098
6099 2018-07-16  Tom Tromey  <tom@tromey.com>
6100
6101         * buildsym.c (push_subfile): Use gdb_assert.
6102         (pop_subfile): Use gdb_assert.
6103
6104 2018-07-16  Tom Tromey  <tom@tromey.com>
6105
6106         * buildsym.h (merge_symbol_lists): Remove.
6107         * buildsym.c (merge_symbol_lists): Remove.
6108
6109 2018-07-16  Tom Tromey  <tom@tromey.com>
6110
6111         * stabsread.c (scan_file_globals): Update comment.
6112         * stabsread.h (scan_file_globals): Move from buildsym.h.
6113         * buildsym.h (scan_file_globals): Move to stabsread.h.
6114
6115 2018-07-16  Tom Tromey  <tom@tromey.com>
6116
6117         * xcoffread.c (xcoff_new_init): Update.
6118         * mipsread.c (mipscoff_new_init): Update.
6119         * mdebugread.c (mdebug_build_psymtabs): Update.
6120         * elfread.c (elf_new_init): Update.
6121         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6122         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6123         * buildsym.h (buildsym_new_init): Don't declare.
6124         * buildsym.c (buildsym_new_init): Remove.
6125
6126 2018-07-16  Tom Tromey  <tom@tromey.com>
6127
6128         * stabsread.h (within_function): Move from buildsym.h.
6129         * stabsread.c (start_stabs): Clear within_function.
6130         * coffread.c (coff_start_symtab): Clear within_function.
6131         * buildsym.h (within_function): Move to stabsread.h.
6132         * buildsym.c (prepare_for_building): Update.
6133
6134 2018-07-16  Tom Tromey  <tom@tromey.com>
6135
6136         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6137         * dwarf2read.c (dwarf2_start_symtab): Don't set
6138         processing_gcc_compilation.
6139         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6140
6141 2018-07-16  Tom Tromey  <tom@tromey.com>
6142
6143         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6144         (next_symbol_text_func): Move from buildsym.h.
6145         * stabsread.c (hashname): Move from buildsym.c.
6146         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6147         (next_symbol_text_func, hashname): Move to stabsread.h.
6148         * buildsym.c: Don't include bcache.h
6149         (hashname): Move to stasbread.c.
6150
6151 2018-07-16  Tom Tromey  <tom@tromey.com>
6152
6153         * buildsym.h (context_stack_size): Don't declare.
6154         * buildsym.c (context_stack_size): New global.
6155
6156 2018-07-16  Tom Tromey  <tom@tromey.com>
6157
6158         * dbxread.c (processing_acc_compilation): New global.
6159         * buildsym.h (processing_acc_compilation): Don't declare.
6160
6161 2018-07-16  Tom Tromey  <tom@tromey.com>
6162
6163         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6164         * dbxread.c (read_ofile_symtab): Update.
6165         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6166         * buildsym.h (last_source_start_addr): Remove.
6167         (set_last_source_start_addr, get_last_source_start_addr):
6168         Declare.
6169         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6170         parameter.
6171         (struct buildsym_compunit) <m_last_source_start_addr>: New
6172         member.
6173         (prepare_for_building): Remove start_addr parameter.
6174         (start_symtab, restart_symtab, end_symtab_get_static_block)
6175         (end_symtab_with_blockvector): Update.
6176         (set_last_source_start_addr, get_last_source_start_addr): New
6177         functions.
6178
6179 2018-07-16  Tom Tromey  <tom@tromey.com>
6180
6181         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6182         member.
6183         (have_line_numbers): Remove.
6184         (record_line, prepare_for_building, end_symtab_get_static_block)
6185         (augment_type_symtab): Update.
6186
6187 2018-07-16  Tom Tromey  <tom@tromey.com>
6188
6189         * buildsym.c (~buildsym_compunit): Free the macro table.
6190         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6191         methods.
6192         <m_pending_macros>: New member.
6193         (pending_macros): Remove.
6194         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6195         (reset_symtab_globals, end_symtab_get_static_block)
6196         (end_symtab_with_blockvector, augment_type_symtab)
6197         (buildsym_init): Update.
6198
6199 2018-07-16  Tom Tromey  <tom@tromey.com>
6200
6201         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6202         parameter.
6203         (buildsym_compunit::set_last_source_file): New method.
6204         <m_last_source_file>: New member.
6205         (prepare_for_building): Remove "name" parameter.
6206         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6207         (last_source_file): Remove.
6208         (set_last_source_file, get_last_source_file): Update.
6209
6210 2018-07-16  Tom Tromey  <tom@tromey.com>
6211
6212         * buildsym.c (prepare_for_building): Add assert.
6213
6214 2018-07-16  Tom Tromey  <tom@tromey.com>
6215
6216         * buildsym.c (~buildsym_compunit): Update.
6217         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6218         (start_subfile, patch_subfile_names)
6219         (end_symtab_with_blockvector): Update.
6220
6221 2018-07-16  Tom Tromey  <tom@tromey.com>
6222
6223         * buildsym.c (struct buildsym_compunit): Add constructor,
6224         destructor, initializers.
6225         (start_buildsym_compunit): Remove.
6226         (free_buildsym_compunit): Use "delete".
6227         (start_symtab, restart_symtab): Use "new".
6228
6229 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6230
6231         * symfile.c (set_objfile_default_section_offset): Remove struct
6232         keyword.
6233
6234 2018-07-14  Stafford Horne  <shorne@gmail.com>
6235
6236         * (Responsible Maintainers): Add myself as or1k maintainer.
6237
6238 2018-07-13  Tom Tromey  <tom@tromey.com>
6239
6240         * symfile.c (set_objfile_default_section_offset): Use extra braces
6241         around initializer.
6242
6243 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6244
6245         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6246         non-branching basr.
6247
6248 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6249
6250         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6251         unittests/cli-utils-selftests.c
6252         * unittests/cli-utils-selftests.c: New file.
6253
6254 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6255
6256         * NEWS: Mention new commands. Mention change to 'thread apply'.
6257
6258 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6259
6260         * thread.c (thr_try_catch_cmd): New function.
6261         (thread_apply_all_command): Handle qcs flags.
6262         (thread_apply_command): Handle qcs flags.
6263         (taas_command): New function.
6264         (tfaas_command): New function.
6265         (_initialize_thread): Update to setup the new commands 'taas
6266         and 'tfaas'. Change doc string for 'thread apply'.
6267
6268 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6269
6270         * stack.c: (trailing_outermost_frame): New function, mostly
6271         extracted from backtrace_command_1.
6272         (leading_innermost_frame): New function.
6273         (backtrace_command_1): Update to call trailing_outermost_frame.
6274         (frame_apply_command_count): New function.
6275         (frame_apply_level_command): New function.
6276         (frame_apply_all_command): New function.
6277         (frame_apply_command): New function.
6278         (faas_command): New function.
6279         (frame_cmd_list): New variable.
6280         (_initialize_stack): Update to setup the new commands 'frame apply'
6281         and 'faas'.
6282
6283 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6284
6285         * cli-utils.c (number_or_range_parser::get_number): Only handle
6286         numbers or convenience var as numbers.
6287         (parse_flags): New function.
6288         (parse_flags_qcs): New function.
6289         (number_or_range_parser::finished): Ensure parsing end is detected
6290         before end of string.
6291         * cli-utils.h (parse_flags): New function.
6292         (parse_flags_qcs): New function.
6293         (number_or_range_parser): Remove m_finished bool.
6294         (number_or_range_parser::skip_range): Set m_in_range to false.
6295
6296 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6297
6298         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6299         on Windows.
6300
6301 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6302             Jan Kratochvil  <jan.kratochvil@redhat.com>
6303             Paul Fertser  <fercerpav@gmail.com>
6304             Tsutomu Seki  <sekiriki@gmail.com>
6305             Pedro Alves  <palves@redhat.com>
6306
6307         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6308         'unittests/parse-connection-spec-selftests.c'.
6309         (COMMON_SFILES): Add 'common/netstuff.c'.
6310         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6311         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6312         * common/netstuff.c: New file.
6313         * common/netstuff.h: New file.
6314         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6315         (wait_for_connect): Update comment.  New parameter
6316         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6317         Use 'sock' directly instead of 'scb->fd'.
6318         (try_connect): New function, with code from 'net_open'.
6319         (net_open): Rewrite main loop to deal with multiple
6320         sockets/addresses.  Handle IPv6-style hostnames; implement
6321         support for IPv6 connections.
6322         * unittests/parse-connection-spec-selftests.c: New file.
6323
6324 2018-07-11  Pedro Alves  <palves@redhat.com>
6325
6326         PR gdb/23377
6327         * remote.c (remote_target::remote_detach_pid): Call
6328         set_current_process.
6329
6330 2018-07-11  Pedro Alves  <palves@redhat.com>
6331
6332         * h8300-tdep.c (h8300_gdbarch_init): Remove
6333         set_gdbarch_ecoff_reg_to_regnum calls.
6334
6335 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6336
6337         PR c++/23373
6338         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6339         offsets/sizes for static members of a class/struct.
6340
6341 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6342
6343         * target-descriptions.c (tdesc_register_bitsize): Rename.
6344         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6345         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6346         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6347
6348 2018-07-10  Tom Tromey  <tom@tromey.com>
6349
6350         * breakpoint.c (moribund_locations): Now static and a
6351         std::vector.
6352         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6353         (build_bpstat_chain, update_global_location_list)
6354         (breakpoint_retire_moribund): Update.
6355         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6356         VEC.
6357
6358 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6359
6360         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6361         (riscv_register_reggroup_p): Use new function, remove unneeded
6362         parenthesis.
6363         (riscv_push_dummy_call): Extend assert to compare against xlen or
6364         flen based on register type.
6365
6366 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6367
6368         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6369
6370 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6371
6372         * remote.c (show_hardware_watchpoint_limit): New function.
6373         (show_hardware_watchpoint_length_limit): New function.
6374         (show_hardware_breakpoint_limit): New function.
6375         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6376         where appropriate, update help text.
6377
6378 2018-07-09  Tom Tromey  <tom@tromey.com>
6379
6380         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6381         (CLIBS): Don't mention NAT_CLIBS.
6382
6383 2018-07-09  Tom Tromey  <tom@tromey.com>
6384
6385         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6386         (LIBGDB_OBS, clean mostlyclean): Update.
6387         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6388
6389 2018-07-09  Tom Tromey  <tom@tromey.com>
6390
6391         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6392         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6393         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6394
6395 2018-07-09  Tom Tromey  <tom@tromey.com>
6396
6397         * Makefile.in (ALLDEPFILES): Remove exec.c.
6398         (COMMON_OBS): Remove exec.o.
6399         (COMMON_SFILES): Add exec.c.
6400
6401 2018-07-09  Tom Tromey  <tom@tromey.com>
6402
6403         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6404
6405 2018-07-09  Tom Tromey  <tom@tromey.com>
6406
6407         * Makefile.in (clean mostlyclean): Remove stamp-version.
6408         (version.c): Depend on stamp-version.
6409         (stamp-version): New rule, from version.c rule.
6410
6411 2018-07-09  Tom Tromey  <tom@tromey.com>
6412
6413         * Makefile.in (init.c): Depend on stamp-init.
6414         (stamp-init): New rule, from init.c rule.
6415         (clean mostlyclean): Remove stamp-init.
6416
6417 2018-07-09  Tom Tromey  <tom@tromey.com>
6418
6419         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6420         SUBDIR_GCC_COMPILE_SRCS.
6421
6422 2018-07-09  Tom Tromey  <tom@tromey.com>
6423
6424         * Makefile.in (init.c): Remove some unused sed rules.
6425
6426 2018-07-09  Tom Tromey  <tom@tromey.com>
6427
6428         * Makefile.in (TSOBS): Remove.
6429         (INIT_FILES): Update.
6430         (LIBGDB_OBS): Update.
6431         (COMMON_SFILES): Add inflow.c.
6432         (SFILES): Remove inflow.c.
6433
6434 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6435
6436         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6437
6438 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6439
6440         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6441         get_saveloc_name, is_signal_frame_name, step_name,
6442         init_remote_name, create_addr_space_name,
6443         destroy_addr_space_name, search_unwind_table_name,
6444         find_dyn_list_name): Constify.
6445
6446 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6447
6448         * darwin-nat.c (darwin_pthread_kill): New function.
6449         (darwin_resume_thread): Use darwin_pthread_kill.
6450
6451 2018-07-05  Tom de Vries  <tdevries@suse.de>
6452
6453         * macroexp.c (macro_buffer) <operator=>: New member function.
6454
6455 2018-07-04  Tom Tromey  <tom@tromey.com>
6456
6457         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6458
6459 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6460
6461         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6462         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6463         * maint.c: Likewise.
6464         * top.c: Likewise.
6465
6466 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6467
6468         * NEWS: Create a new section for the next release branch.
6469         Rename the section of the current branch, now that it has
6470         been cut.
6471
6472 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6473
6474         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6475         * version.in: Bump version to 8.2.50.DATE-git.
6476
6477 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6478             Pedro Alves  <palves@redhat.com>
6479
6480         * linux-nat.c (linux_init_ptrace): Rename to ...
6481         (linux_init_ptrace_procfs): ... this.  Call
6482         linux_proc_init_warnings.
6483         (linux_nat_target::post_attach)
6484         (linux_nat_target::post_startup_inferior): Adjust.
6485         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6486         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6487
6488 2018-07-04  Tom de Vries  <tdevries@suse.de>
6489
6490         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6491         check ...
6492         (read_comp_unit_head): ... here.
6493
6494 2018-07-03  Tom Tromey  <tom@tromey.com>
6495
6496         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6497         (stop_tracing, tstatus_command)
6498         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6499         (print_one_static_tracepoint_marker): Update.
6500         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6501         std::vector.
6502         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6503         VEC.
6504         (all_tracepoints, static_tracepoints_here): Return std::vector.
6505
6506 2018-07-03  Tom Tromey  <tom@tromey.com>
6507
6508         * common/ptid.c (ptid_equal): Remove.
6509         * common/ptid.h (ptid_equal): Don't declare.
6510         * ada-tasks.c: Update.
6511         * breakpoint.c: Update.
6512         * common/agent.c: Update.
6513         * corelow.c: Update.
6514         * darwin-nat-info.c: Update.
6515         * darwin-nat.c: Update.
6516         * dcache.c: Update.
6517         * dtrace-probe.c: Update.
6518         * dummy-frame.c: Update.
6519         * fbsd-nat.c: Update.
6520         * frame.c: Update.
6521         * gdbthread.h: Update.
6522         * gnu-nat.c: Update.
6523         * go32-nat.c: Update.
6524         * inf-loop.c: Update.
6525         * inf-ptrace.c: Update.
6526         * infcall.c: Update.
6527         * infcmd.c: Update.
6528         * inflow.c: Update.
6529         * infrun.c: Update.
6530         * linux-fork.c: Update.
6531         * linux-nat.c: Update.
6532         * linux-thread-db.c: Update.
6533         * mi/mi-cmd-var.c: Update.
6534         * mi/mi-interp.c: Update.
6535         * mi/mi-main.c: Update.
6536         * nto-procfs.c: Update.
6537         * ppc-linux-tdep.c: Update.
6538         * procfs.c: Update.
6539         * python/py-inferior.c: Update.
6540         * python/py-record-btrace.c: Update.
6541         * python/py-record.c: Update.
6542         * ravenscar-thread.c: Update.
6543         * regcache.c: Update.
6544         * remote-sim.c: Update.
6545         * remote.c: Update.
6546         * sol-thread.c: Update.
6547         * solib.c: Update.
6548         * target.c: Update.
6549         * tui/tui-stack.c: Update.
6550         * varobj.c: Update.
6551         * windows-nat.c: Update.
6552         * windows-tdep.c: Update.
6553
6554 2018-07-03  Tom Tromey  <tom@tromey.com>
6555
6556         * common/ptid.c (ptid_match): Remove.
6557         * common/ptid.h (ptid_match): Don't declare.
6558         * fbsd-nat.c: Update.
6559         * infcmd.c: Update.
6560         * infrun.c: Update.
6561         * linux-nat.c: Update.
6562         * record-btrace.c: Update.
6563         * regcache.c: Update.
6564         * remote.c: Update.
6565
6566 2018-07-03  Tom Tromey  <tom@tromey.com>
6567
6568         * common/ptid.c (ptid_tid_p): Remove.
6569         * common/ptid.h (ptid_tid_p): Don't declare.
6570         * sol-thread.c: Update.
6571
6572 2018-07-03  Tom Tromey  <tom@tromey.com>
6573
6574         * common/ptid.c (ptid_lwp_p): Remove.
6575         * common/ptid.h (ptid_lwp_p): Don't declare.
6576         * fbsd-nat.c: Update.
6577         * linux-nat.c: Update.
6578         * nat/linux-procfs.c: Update.
6579         * nat/x86-linux-dregs.c: Update.
6580         * sol-thread.c: Update.
6581
6582 2018-07-03  Tom Tromey  <tom@tromey.com>
6583
6584         * common/ptid.c (ptid_is_pid): Remove.
6585         * common/ptid.h (ptid_is_pid): Don't declare.
6586         * infrun.c: Update.
6587         * linux-nat.c: Update.
6588         * mi/mi-interp.c: Update.
6589         * remote.c: Update.
6590         * thread.c: Update.
6591
6592 2018-07-03  Tom Tromey  <tom@tromey.com>
6593
6594         * common/ptid.c (ptid_get_tid): Remove.
6595         * common/ptid.h (ptid_get_tid): Don't declare.
6596         * ada-tasks.c: Update.
6597         * aix-thread.c: Update.
6598         * bsd-uthread.c: Update.
6599         * darwin-nat.c: Update.
6600         * fbsd-nat.c: Update.
6601         * i386-darwin-nat.c: Update.
6602         * infrun.c: Update.
6603         * linux-tdep.c: Update.
6604         * nto-procfs.c: Update.
6605         * ppc-ravenscar-thread.c: Update.
6606         * python/py-infthread.c: Update.
6607         * ravenscar-thread.c: Update.
6608         * sol-thread.c: Update.
6609         * sparc-ravenscar-thread.c: Update.
6610         * windows-nat.c: Update.
6611
6612 2018-07-03  Tom Tromey  <tom@tromey.com>
6613
6614         * common/ptid.c (ptid_get_lwp): Remove.
6615         * common/ptid.h (ptid_get_lwp): Don't declare.
6616         * aarch64-linux-nat.c: Update.
6617         * ada-tasks.c: Update.
6618         * aix-thread.c: Update.
6619         * amd64-linux-nat.c: Update.
6620         * arm-linux-nat.c: Update.
6621         * corelow.c: Update.
6622         * fbsd-nat.c: Update.
6623         * fbsd-tdep.c: Update.
6624         * gnu-nat.c: Update.
6625         * i386-cygwin-tdep.c: Update.
6626         * i386-gnu-nat.c: Update.
6627         * i386-linux-nat.c: Update.
6628         * ia64-linux-nat.c: Update.
6629         * inf-ptrace.c: Update.
6630         * infrun.c: Update.
6631         * linux-fork.c: Update.
6632         * linux-nat.c: Update.
6633         * linux-tdep.c: Update.
6634         * linux-thread-db.c: Update.
6635         * mips-linux-nat.c: Update.
6636         * nat/aarch64-linux-hw-point.c: Update.
6637         * nat/aarch64-linux.c: Update.
6638         * nat/linux-btrace.c: Update.
6639         * nat/linux-osdata.c: Update.
6640         * nat/linux-procfs.c: Update.
6641         * nat/x86-linux-dregs.c: Update.
6642         * obsd-nat.c: Update.
6643         * ppc-fbsd-nat.c: Update.
6644         * ppc-linux-nat.c: Update.
6645         * procfs.c: Update.
6646         * python/py-infthread.c: Update.
6647         * ravenscar-thread.c: Update.
6648         * remote.c: Update.
6649         * s390-linux-nat.c: Update.
6650         * sol-thread.c: Update.
6651         * sol2-tdep.c: Update.
6652         * spu-linux-nat.c: Update.
6653         * x86-linux-nat.c: Update.
6654         * xtensa-linux-nat.c: Update.
6655
6656 2018-07-03  Tom Tromey  <tom@tromey.com>
6657
6658         * common/ptid.c (ptid_get_pid): Remove.
6659         * common/ptid.h (ptid_get_pid): Don't declare.
6660         * aarch64-linux-nat.c: Update.
6661         * ada-lang.c: Update.
6662         * aix-thread.c: Update.
6663         * alpha-bsd-nat.c: Update.
6664         * amd64-fbsd-nat.c: Update.
6665         * amd64-linux-nat.c: Update.
6666         * arm-linux-nat.c: Update.
6667         * arm-nbsd-nat.c: Update.
6668         * auxv.c: Update.
6669         * break-catch-syscall.c: Update.
6670         * breakpoint.c: Update.
6671         * bsd-uthread.c: Update.
6672         * corelow.c: Update.
6673         * ctf.c: Update.
6674         * darwin-nat.c: Update.
6675         * fbsd-nat.c: Update.
6676         * fbsd-tdep.c: Update.
6677         * gcore.c: Update.
6678         * gnu-nat.c: Update.
6679         * hppa-nbsd-nat.c: Update.
6680         * hppa-obsd-nat.c: Update.
6681         * i386-fbsd-nat.c: Update.
6682         * ia64-linux-nat.c: Update.
6683         * inf-ptrace.c: Update.
6684         * infcmd.c: Update.
6685         * inferior.c: Update.
6686         * inferior.h: Update.
6687         * inflow.c: Update.
6688         * infrun.c: Update.
6689         * linux-fork.c: Update.
6690         * linux-nat.c: Update.
6691         * linux-tdep.c: Update.
6692         * linux-thread-db.c: Update.
6693         * m68k-bsd-nat.c: Update.
6694         * mi/mi-interp.c: Update.
6695         * mi/mi-main.c: Update.
6696         * mips-linux-nat.c: Update.
6697         * mips-nbsd-nat.c: Update.
6698         * mips64-obsd-nat.c: Update.
6699         * nat/aarch64-linux-hw-point.c: Update.
6700         * nat/aarch64-linux.c: Update.
6701         * nat/linux-btrace.c: Update.
6702         * nat/linux-osdata.c: Update.
6703         * nat/linux-procfs.c: Update.
6704         * nat/x86-linux-dregs.c: Update.
6705         * nto-procfs.c: Update.
6706         * obsd-nat.c: Update.
6707         * ppc-linux-nat.c: Update.
6708         * ppc-nbsd-nat.c: Update.
6709         * ppc-obsd-nat.c: Update.
6710         * proc-service.c: Update.
6711         * procfs.c: Update.
6712         * python/py-inferior.c: Update.
6713         * python/py-infthread.c: Update.
6714         * ravenscar-thread.c: Update.
6715         * record.c: Update.
6716         * remote-sim.c: Update.
6717         * remote.c: Update.
6718         * rs6000-nat.c: Update.
6719         * s390-linux-nat.c: Update.
6720         * sh-nbsd-nat.c: Update.
6721         * sol-thread.c: Update.
6722         * sparc-nat.c: Update.
6723         * sparc64-tdep.c: Update.
6724         * spu-linux-nat.c: Update.
6725         * spu-tdep.c: Update.
6726         * target-debug.h: Update.
6727         * target.c: Update.
6728         * thread.c: Update.
6729         * tid-parse.c: Update.
6730         * tracefile-tfile.c: Update.
6731         * vax-bsd-nat.c: Update.
6732         * windows-nat.c: Update.
6733         * x86-linux-nat.c: Update.
6734         * x86-nat.c: Update.
6735
6736 2018-07-03  Tom Tromey  <tom@tromey.com>
6737
6738         * common/ptid.c (pid_to_ptid): Remove.
6739         * common/ptid.h (pid_to_ptid): Don't declare.
6740         * aix-thread.c: Update.
6741         * arm-linux-nat.c: Update.
6742         * common/ptid.c: Update.
6743         * common/ptid.h: Update.
6744         * corelow.c: Update.
6745         * ctf.c: Update.
6746         * darwin-nat.c: Update.
6747         * fbsd-nat.c: Update.
6748         * fork-child.c: Update.
6749         * gnu-nat.c: Update.
6750         * go32-nat.c: Update.
6751         * inf-ptrace.c: Update.
6752         * infcmd.c: Update.
6753         * inferior.c: Update.
6754         * infrun.c: Update.
6755         * linux-fork.c: Update.
6756         * linux-nat.c: Update.
6757         * nat/aarch64-linux-hw-point.c: Update.
6758         * nat/fork-inferior.c: Update.
6759         * nat/x86-linux-dregs.c: Update.
6760         * nto-procfs.c: Update.
6761         * obsd-nat.c: Update.
6762         * procfs.c: Update.
6763         * progspace.c: Update.
6764         * remote.c: Update.
6765         * rs6000-nat.c: Update.
6766         * s390-linux-nat.c: Update.
6767         * sol-thread.c: Update.
6768         * spu-linux-nat.c: Update.
6769         * target.c: Update.
6770         * top.c: Update.
6771         * tracefile-tfile.c: Update.
6772         * windows-nat.c: Update.
6773
6774 2018-07-03  Tom Tromey  <tom@tromey.com>
6775
6776         * common/ptid.h (ptid_build): Don't declare.
6777         * common/ptid.c (ptid_build): Remove.
6778         * aix-thread.c: Update.
6779         * bsd-kvm.c: Update.
6780         * bsd-uthread.c: Update.
6781         * common/agent.c: Update.
6782         * common/ptid.c: Update.
6783         * common/ptid.h: Update.
6784         * corelow.c: Update.
6785         * darwin-nat.c: Update.
6786         * fbsd-nat.c: Update.
6787         * gnu-nat.c: Update.
6788         * linux-fork.c: Update.
6789         * linux-nat.c: Update.
6790         * linux-thread-db.c: Update.
6791         * nat/linux-osdata.c: Update.
6792         * nat/linux-procfs.c: Update.
6793         * nto-procfs.c: Update.
6794         * obsd-nat.c: Update.
6795         * proc-service.c: Update.
6796         * procfs.c: Update.
6797         * ravenscar-thread.c: Update.
6798         * remote-sim.c: Update.
6799         * remote.c: Update.
6800         * sol-thread.c: Update.
6801         * target.c: Update.
6802         * windows-nat.c: Update.
6803
6804 2018-07-03  Tom Tromey  <tom@tromey.com>
6805
6806         * infrun.c (follow_exec): Use exit_inferior_silent.
6807         * inferior.c (exit_inferior_num_silent): Remove.
6808         * inferior.h (exit_inferior_num_silent): Don't declare.
6809
6810 2018-07-03  Tom Tromey  <tom@tromey.com>
6811
6812         PR cli/23340:
6813         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6814         inferior_ptid on error.
6815
6816 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6817             Simon Marchi  <simon.marchi@polymtl.ca>
6818
6819         PR tdep/8282
6820         * disasm.h (gdb_disassembler): Add
6821         `m_disassembler_options_holder'. member
6822         * disasm.c (get_all_disassembler_options): New function.
6823         (gdb_disassembler::gdb_disassembler): Use it.
6824         (gdb_buffered_insn_length_init_dis): Likewise.
6825         (gdb_buffered_insn_length): Adjust accordingly.
6826         (set_disassembler_options): Handle options with arguments.
6827         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6828         line if showing options with descriptions.
6829         (disassembler_options_completer): Adapt to using the
6830         `disasm_options_and_args_t' structure.
6831         * mips-tdep.c (mips_disassembler_options): New variable.
6832         (mips_disassembler_options_o32): Likewise.
6833         (mips_disassembler_options_n32): Likewise.
6834         (mips_disassembler_options_n64): Likewise.
6835         (gdb_print_insn_mips): Don't set `disassembler_options'.
6836         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6837         functions.
6838         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6839         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6840         `gdbarch_disassembler_options_implicit' and
6841         `gdbarch_valid_disassembler_options'.
6842         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6843         `disasm_options_and_args_t' structure.
6844         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6845         method.
6846         (valid_disassembler_options): Switch from `disasm_options_t' to
6847         the `disasm_options_and_args_t' structure.
6848         * NEWS: Document `set disassembler-options' support for the MIPS
6849         target.
6850         * gdbarch.h: Regenerate.
6851         * gdbarch.c: Regenerate.
6852
6853 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6854
6855         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6856
6857 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6858
6859         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6860         parameter in call to amd64_target_description.
6861         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6862         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6863         (amd64fbsd_init_abi): Likewise.
6864         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6865         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6866         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6867         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6868
6869 2018-06-29  Pedro Alves  <palves@redhat.com>
6870
6871         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6872         "segments" parameter.
6873         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6874         (_initialize_amd64_tdep): Update call to
6875         amd64_create_target_description.
6876         (amd64_target_description): Add "segments" parameter.  Adjust
6877         the implementation to use it.
6878         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6879         call to amd64_create_target_description.
6880         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6881         * gdb/arch/amd64.h (amd64_create_target_description): Add
6882         "segments" register.
6883         * gdb/arch/amd64.c (amd64_create_target_description): Add
6884         "segments" parameter.  Call create_feature_i386_64bit_segments
6885         only if SEGMENTS is true.
6886         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6887         call to amd64_create_target_description.
6888
6889 2018-06-29  Pedro Alves  <palves@redhat.com>
6890
6891         * thread.c (thread_target_id_str): New, factored out from ...
6892         (print_thread_info_1): ... here.  Use it to compute the max
6893         "Target Id" column width.
6894
6895 2018-06-29  Pedro Alves  <palves@redhat.com>
6896
6897         * remote.c (remote_target::extra_thread_info): Delete
6898         'display_buf' and 'n' locals.  from the cache, regardless of
6899         packet mechanims is in use.  Use cache for qThreadExtra and qP
6900         methods too.
6901
6902 2018-06-29  Pedro Alves  <palves@redhat.com>
6903
6904         * blockframe.c (find_pc_sect_containing_function): New function.
6905         * breakpoint.c (print_breakpoint_location): Don't call
6906         find_pc_sect_function.
6907         * linespec.c (create_sals_line_offset): Record the location's
6908         symbol in the sal.
6909         * linespec.c (convert_address_location_to_sals): Fill in sal's
6910         symbol with find_pc_sect_containing_function.
6911         * symtab.c (find_function_start_sal): Rename to ...
6912         (find_function_start_sal_1): ... this.
6913         (find_function_start_sal): Reimplement as wrapper around
6914         find_function_start_sal_1, and use
6915         find_pc_sect_containing_function to fill in the sal's symbol.
6916         (find_function_start_sal(symbol*, bool)): Adjust.
6917         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6918         comments.
6919         (find_pc_sect_containing_function): Declare.
6920
6921 2018-06-29  Pedro Alves  <palves@redhat.com>
6922
6923         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6924         true if the the location has no symbol.
6925
6926 2018-06-28  Tom Tromey  <tom@tromey.com>
6927
6928         * NEWS: Mention --enable-codesign.
6929         * silent-rules.mk (ECHO_SIGN): New variable.
6930         * configure.ac: Add --enable-codesign.
6931         * configure: Rebuild.
6932         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6933         (gdb$(EXEEXT)): Optionally invoke codesign.
6934
6935 2018-06-28  Pedro Alves  <palves@redhat.com>
6936
6937         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6938         comments.
6939         (switch_to_thread_no_regs): Adjust comment.
6940         * infcmd.c (stop_pc): Delete.
6941         (post_create_inferior, info_program_command): Replace references
6942         to stop_pc with references to thread_info->suspend.stop_pc.
6943         * inferior.h (stop_pc): Delete declaration.
6944         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6945         (handle_inferior_event_1, handle_signal_stop)
6946         (process_event_stop_test, keep_going_stepped_thread)
6947         (handle_step_into_function, handle_step_into_function_backward)
6948         (print_stop_location): Replace references to stop_pc with
6949         references to thread_info->suspend.stop_pc.
6950         (struct infcall_suspend_state) <stop_pc>: Delete field.
6951         (save_infcall_suspend_state, restore_infcall_suspend_state):
6952         Remove references to inf_stat->stop_pc.
6953         * linux-fork.c (fork_load_infrun_state): Likewise.
6954         * record-btrace.c (record_btrace_set_replay): Likewise.
6955         * record-full.c (record_full_goto_entry): Likewise.
6956         * remote.c (print_one_stopped_thread): Likewise.
6957         * target.c (target_resume): Extend comment.
6958         * thread.c (set_executing_thread): New.
6959         (set_executing): Use it.
6960         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6961         Remove references to stop_pc.
6962
6963 2018-06-28  Pedro Alves  <palves@redhat.com>
6964
6965         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6966         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6967
6968 2018-06-28  Tom Tromey  <tom@tromey.com>
6969
6970         * coffread.c (coff_symfile_finish): Update.
6971         * xcoffread.c (xcoff_symfile_finish): Update.
6972         * elfread.c (elf_symfile_finish): Update.
6973         * symfile.h (dwarf2_free_objfile): Don't declare.
6974         * dwarf2read.c (_initialize_dwarf2_read): Use
6975         register_objfile_data_with_cleanup.
6976         (dwarf2_free_objfile): Now static.  Change signature.
6977
6978 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6979
6980         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6981         option "-o" to add-symbol-file-load to add an offset to each
6982         section's load address.
6983         * symfile.c (set_objfile_default_section_offset): New function.
6984
6985 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6986
6987         * symfile.c (add_symbol_file_command): Make sure that sections
6988         with the same name are sorted in the same order.
6989
6990 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6991
6992         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6993         require the second argument.  If omitted, load sections at the
6994         addresses specified in the file.
6995
6996 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6997
6998         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6999         (_initialize_symfile): Add option "-o" to symbol-file to add an
7000         offset to each section of the symbol file.
7001
7002 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7003
7004         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7005
7006 2018-06-27  Tom Tromey  <tom@tromey.com>
7007
7008         * stack.c (_initialize_stack): Update "func" help text.
7009
7010 2018-06-27  Tom Tromey  <tom@tromey.com>
7011
7012         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7013         std::vector.
7014         (unwind_infopy_str, pyuw_create_unwind_info)
7015         (unwind_infopy_add_saved_register, pyuw_sniffer)
7016         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7017         Update.
7018         (struct saved_reg): Add constructor.
7019         <value>: Now a gdbpy_ref<>.
7020
7021 2018-06-27  Tom Tromey  <tom@tromey.com>
7022
7023         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7024
7025 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7026
7027         * gdb-gdb.py.in: Format using autopep8.
7028
7029 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7030
7031         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7032         (type_lookup_function): Recognize CORE_ADDR values.
7033
7034 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7035
7036         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7037         print tag_name.
7038
7039 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7040
7041         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7042         <__lt__>: Add.
7043
7044 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7045
7046         * gdb-gdb.py: Move to...
7047         * gdb-gdb.py.in: ... here.
7048         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7049         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7050         dependencies.
7051         (distclean): Remove gdb-gdb.py when cleaning.
7052         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7053         * configure: Re-generate.
7054
7055 2018-06-27  Pedro Alves  <palves@redhat.com>
7056
7057         * proc-service.c (get_ps_regcache): New.
7058         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7059         (ps_lsetfpregs): Use it.
7060
7061 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7062
7063         PR gdb/21695
7064         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7065         declaration.
7066         (dwarf_decode_lines_1): Adjust.
7067
7068 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7069
7070         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7071         override.
7072         <info_proc>: Likewise.
7073
7074 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7075
7076         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7077         to windows_fetch_one_register, and only handle the case of
7078         fetching one register.  Move the code that reloads the context
7079         and iterates over all registers if R is negative to...
7080         (windows_nat_target::fetch_registers): ... here.
7081         (do_windows_store_inferior_registers): Rename to
7082         windows_store_one_register, and only handle the case of storing
7083         one register.  Move the code that handles the case where r is
7084         negative to...
7085         (windows_nat_target::store_registers) ... here.
7086
7087 2018-06-26  Tom Tromey  <tom@tromey.com>
7088
7089         PR rust/22574:
7090         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7091         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7092         Update.
7093         (rust_internal_print_type): Add podata parameter.
7094         (rust_print_type): Update.
7095
7096 2018-06-26  Tom Tromey  <tom@tromey.com>
7097
7098         * typeprint.h (struct print_offset_data) <update, finish,
7099         maybe_print_hole>: New methods.
7100         <indentation>: New constant.
7101         * typeprint.c (print_offset_data::indentation): Define.
7102         (print_offset_data::maybe_print_hole, print_offset_data::update)
7103         (print_offset_data::finish): Move from c-typeprint.c and rename.
7104         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7105         (print_spaces_filtered_with_print_options): Update.
7106         (c_print_type_union_field_offset, maybe_print_hole)
7107         (c_print_type_struct_field_offset): Move to typeprint.c and
7108         rename.
7109         (c_type_print_base_struct_union): Update.
7110
7111 2018-06-25  Pedro Alves  <palves@redhat.com>
7112
7113         * gdbthread.h (thread_info_ref, delete_thread)
7114         (delete_thread_silent, first_thread_of_inferior)
7115         (any_thread_of_inferior, switch_to_thread)
7116         (enable_thread_stack_temporaries)
7117         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7118         (get_last_thread_stack_temporary)
7119         (value_in_thread_stack_temporaries, can_access_registers_thread):
7120         Spell out "struct thread_info" instead of just "thread_info".
7121         * inferior.h (notice_new_inferior): Likewise.
7122
7123 2018-06-25  Pedro Alves  <palves@redhat.com>
7124
7125         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7126         pass thread_info pointer to delete_thread.
7127         (windows_nat_target::detach): Pass inferior pointer to
7128         detach_inferior.
7129         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7130         delete_thread.
7131         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7132         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7133         and pass a thread_info pointer to delete_thread.
7134         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7135         pass thread_info pointer to delete_thread.
7136         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7137         delete_thread_silent call.
7138         * procfs.c (procfs_target::detach): Pass inferior pointer to
7139         detach_inferior.
7140         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7141         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7142         delete_thread_silent call.
7143         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7144         pass thread_info pointer to delete_thread.
7145         (windows_nat_target::detach): Pass inferior pointer to
7146         delete_inferior.
7147
7148 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7149
7150         * regcache.c (readable_regcache::read_part): Fix asserts.
7151         (reg_buffer::raw_collect_part): New function.
7152         (regcache::write_part): Fix asserts.
7153         (reg_buffer::raw_supply_part): New function.
7154         (regcache::transfer_regset_register): New helper function.
7155         (regcache::transfer_regset): Call new functions.
7156         (regcache_supply_regset): Use gdb_byte*.
7157         (regcache::supply_regset): Likewise.
7158         (regcache_collect_regset): Likewise.
7159         (regcache::collect_regset): Likewise.
7160         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7161         (reg_buffer::raw_supply_part): Likewise.
7162         (regcache::transfer_regset_register): Likewise.
7163         (regcache::transfer_regset): Use gdb_byte*.
7164
7165 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7166
7167         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7168
7169 2018-06-21  Pedro Alves  <palves@redhat.com>
7170
7171         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7172         instead of a ptid_t.  All callers adjusted.
7173         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7174         adjusted.
7175         (print_ada_task_info, display_current_task_id, task_command_1):
7176         Adjust.
7177         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7178         inferior_thread.
7179         (breakpoint_kind): Adjust.
7180         (remove_breakpoints_pid): Rename to ...
7181         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7182         pointer.  All callers adjusted.
7183         (bpstat_clear_actions): Use inferior_thread.
7184         (get_bpstat_thread): New.
7185         (bpstat_do_actions): Use it.
7186         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7187         to take a thread_info pointer.  All callers adjusted.
7188         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7189         (breakpoint_re_set_thread): Use inferior_thread.
7190         * breakpoint.h (struct inferior): Forward declare.
7191         (bpstat_stop_status): Update.
7192         (remove_breakpoints_pid): Delete.
7193         (remove_breakpoints_inf): New.
7194         * bsd-uthread.c (bsd_uthread_target::wait)
7195         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7196         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7197         (maint_btrace_packet_history_cmd)
7198         (maint_btrace_clear_packet_history_cmd): Adjust.
7199         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7200         inferior_thread.
7201         * cli/cli-interp.c: Include "inferior.h".
7202         * common/refcounted-object.h (struct
7203         refcounted_object_ref_policy): New.
7204         * compile/compile-object-load.c: Include gdbthread.h.
7205         (store_regs): Use inferior_thread.
7206         * corelow.c (core_target::close): Use current_inferior.
7207         (core_target_open): Adjust to use first_thread_of_inferior and use
7208         the current inferior.
7209         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7210         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7211         <thread>: ... this new field.  All references adjusted.
7212         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7213         Take a thread_info pointer instead of a ptid_t.
7214         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7215         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7216         thread_info pointer instead of a ptid_t.
7217         * elfread.c: Include "inferior.h".
7218         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7219         Use inferior_thread.
7220         * eval.c (evaluate_subexp): Likewise.
7221         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7222         inferior_thread.
7223         * gdb_proc_service.h (struct thread_info): Forward declare.
7224         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7225         <thread>: ... this new field.  All references adjusted.
7226         * gdbarch.h, gdbarch.c: Regenerate.
7227         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7228         'thread' parameter.  All implementations and callers adjusted.
7229         * gdbthread.h (thread_info) <set_running>: New method.
7230         (delete_thread, delete_thread_silent): Take a thread_info pointer
7231         instead of a ptid.
7232         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7233         (first_thread_of_process): Delete, replaced by ...
7234         (first_thread_of_inferior): ... this new function.  All callers
7235         adjusted.
7236         (any_live_thread_of_process): Delete, replaced by ...
7237         (any_live_thread_of_inferior): ... this new function.  All callers
7238         adjusted.
7239         (switch_to_thread, switch_to_no_thread): Declare.
7240         (is_executing): Delete.
7241         (enable_thread_stack_temporaries): Update comment.
7242         <enable_thread_stack_temporaries>: Take a thread_info pointer
7243         instead of a ptid_t.  Incref the thread.
7244         <~enable_thread_stack_temporaries>: Decref the thread.
7245         <m_ptid>: Delete
7246         <m_thr>: New.
7247         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7248         (get_last_thread_stack_temporary)
7249         (value_in_thread_stack_temporaries, can_access_registers_thread):
7250         Take a thread_info pointer instead of a ptid_t.  All callers
7251         adjusted.
7252         * infcall.c (get_call_return_value): Use inferior_thread.
7253         (run_inferior_call): Work with thread pointers instead of ptid_t.
7254         (call_function_by_hand_dummy): Work with thread pointers instead
7255         of ptid_t.  Use thread_info_ref.
7256         * infcmd.c (proceed_thread_callback): Access thread's state
7257         directly.
7258         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7259         access thread's state directly.
7260         (continue_command): Use inferior_thread.
7261         (info_program_command): Use find_thread_ptid and access thread
7262         state directly.
7263         (proceed_after_attach_callback): Use thread state directly.
7264         (notice_new_inferior): Take a thread_info pointer instead of a
7265         ptid_t.  All callers adjusted.
7266         (exit_inferior): Take an inferior pointer instead of a pid.  All
7267         callers adjusted.
7268         (exit_inferior_silent): New.
7269         (detach_inferior): Delete.
7270         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7271         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7272         (detach_inferior_command, kill_inferior_command): Use
7273         find_inferior_id instead of valid_gdb_inferior_id and
7274         gdb_inferior_id_to_pid.
7275         (inferior_command): Use inferior and thread pointers.
7276         * inferior.h (struct thread_info): Forward declare.
7277         (notice_new_inferior): Take a thread_info pointer instead of a
7278         ptid_t.  All callers adjusted.
7279         (detach_inferior): Delete declaration.
7280         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7281         instead of a pid.  All callers adjusted.
7282         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7283         (valid_gdb_inferior_id): Delete.
7284         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7285         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7286         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7287         ...
7288         <inf>: ... this new field.
7289         <step_ptid>: Delete, replaced by ...
7290         <step_thread>: ... this new field.
7291         (get_displaced_stepping_state): Take an inferior pointer instead
7292         of a pid.  All callers adjusted.
7293         (displaced_step_in_progress_any_inferior): Adjust.
7294         (displaced_step_in_progress_thread): Take a thread pointer instead
7295         of a ptid_t.  All callers adjusted.
7296         (displaced_step_in_progress, add_displaced_stepping_state): Take
7297         an inferior pointer instead of a pid.  All callers adjusted.
7298         (get_displaced_step_closure_by_addr): Adjust.
7299         (remove_displaced_stepping_state): Take an inferior pointer
7300         instead of a pid.  All callers adjusted.
7301         (displaced_step_prepare_throw, displaced_step_prepare)
7302         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7303         All callers adjusted.
7304         (start_step_over): Adjust.
7305         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7306         displaced step queue.
7307         (do_target_resume): Adjust.
7308         (fetch_inferior_event): Use inferior_thread.
7309         (context_switch, get_inferior_stop_soon): Take an
7310         execution_control_state pointer instead of a ptid_t.  All callers
7311         adjusted.
7312         (switch_to_thread_cleanup): Delete.
7313         (stop_all_threads): Use scoped_restore_current_thread.
7314         * inline-frame.c: Include "gdbthread.h".
7315         (inline_state) <inline_state>: Take a thread pointer instead of a
7316         ptid_t.  All callers adjusted.
7317         <ptid>: Delete, replaced by ...
7318         <thread>: ... this new field.
7319         (find_inline_frame_state): Take a thread pointer instead of a
7320         ptid_t.  All callers adjusted.
7321         (skip_inline_frames, step_into_inline_frame)
7322         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7323         pointer instead of a ptid_t.  All callers adjusted.
7324         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7325         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7326         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7327         pointers directly.
7328         * linux-nat.c (get_detach_signal): Likewise.
7329         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7330         (thread_db_notice_clone): Adjust.
7331         (thread_db_find_new_threads_silently)
7332         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7333         a thread pointer instead of a ptid_t.  All callers adjusted.
7334         * mi/mi-cmd-var.c: Include "inferior.h".
7335         (mi_cmd_var_update_iter): Update to use thread pointers.
7336         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7337         inferior directly.
7338         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7339         out to ...
7340         (mi_output_running): ... this new function.
7341         (mi_on_resume_1): Adjust to use it.
7342         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7343         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7344         directly.
7345         (interrupt_thread_callback): : Adjust to use thread and inferior
7346         pointers.
7347         * proc-service.c: Include "gdbthread.h".
7348         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7349         * progspace-and-thread.c: Include "inferior.h".
7350         * progspace.c: Include "inferior.h".
7351         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7352         hold a reference to an inferior_object.
7353         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7354         inferior_thread.
7355         * python/py-inferior.c (struct inferior_object): Give the type a
7356         tag name instead of a typedef.
7357         (python_on_normal_stop): No need to check if the current thread is
7358         listed.
7359         (inferior_to_inferior_object): Change return type to
7360         inferior_object.  All callers adjusted.
7361         (find_thread_object): Delete, bits factored out to ...
7362         (thread_to_thread_object): ... this new function.
7363         * python/py-infthread.c (create_thread_object): Use
7364         inferior_to_inferior_object.
7365         (thpy_is_stopped): Use thread pointer directly.
7366         (gdbpy_selected_thread): Use inferior_thread.
7367         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7368         field, replaced with ...
7369         <thread>: ... this new field.  All users adjusted.
7370         (btpy_insn_or_gap_new): Drop const.
7371         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7372         callers adjusted.
7373         * python/py-record.c: Include "gdbthread.h".
7374         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7375         a ptid_t.  All callers adjusted.
7376         (gdbpy_current_recording): Use inferior_thread.
7377         * python/py-record.h (recpy_record_object) <ptid>: Delete
7378         field, replaced with ...
7379         <thread>: ... this new field.  All users adjusted.
7380         (recpy_element_object) <ptid>: Delete
7381         field, replaced with ...
7382         <thread>: ... this new field.  All users adjusted.
7383         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7384         a ptid_t.  All callers adjusted.
7385         * python/py-threadevent.c: Include "gdbthread.h".
7386         (get_event_thread): Use thread_to_thread_object.
7387         * python/python-internal.h (struct inferior_object): Forward
7388         declare.
7389         (find_thread_object, find_inferior_object): Delete declarations.
7390         (thread_to_thread_object, inferior_to_inferior_object): New
7391         declarations.
7392         * record-btrace.c: Include "inferior.h".
7393         (require_btrace_thread): Use inferior_thread.
7394         (record_btrace_frame_sniffer)
7395         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7396         (get_thread_current_frame): Use scoped_restore_current_thread and
7397         switch_to_thread.
7398         (get_thread_current_frame): Use thread pointer directly.
7399         (record_btrace_replay_at_breakpoint): Use thread's inferior
7400         pointer directly.
7401         * record-full.c: Include "inferior.h".
7402         * regcache.c: Include "gdbthread.h".
7403         (get_thread_arch_regcache): Use the inferior's address space
7404         directly.
7405         (get_thread_regcache, registers_changed_thread): New.
7406         * regcache.h (get_thread_regcache(thread_info *thread)): New
7407         overload.
7408         (registers_changed_thread): New.
7409         (remote_target) <remote_detach_1>: Swap order of parameters.
7410         (remote_add_thread): <remote_add_thread>: Return the new thread.
7411         (get_remote_thread_info(ptid_t)): New overload.
7412         (remote_target::remote_notice_new_inferior): Use thread pointers
7413         directly.
7414         (remote_target::process_initial_stop_replies): Use
7415         thread_info::set_running.
7416         (remote_target::remote_detach_1, remote_target::detach)
7417         (extended_remote_target::detach): Adjust.
7418         * stack.c (frame_show_address): Use inferior_thread.
7419         * target-debug.h (target_debug_print_thread_info_pp): New.
7420         * target-delegates.c: Regenerate.
7421         * target.c (default_thread_address_space): Delete.
7422         (memory_xfer_partial_1): Use current_inferior.
7423         (target_detach): Use current_inferior.
7424         (target_thread_address_space): Delete.
7425         (generic_mourn_inferior): Use current_inferior.
7426         * target.h (struct target_ops) <thread_address_space>: Delete.
7427         (target_thread_address_space): Delete.
7428         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7429         pointers directly.
7430         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7431         thread pointer instead of a ptid_t.  Adjust all callers.
7432         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7433         (first_thread_of_process): Delete, replaced by ...
7434         (first_thread_of_inferior): ... this new function.  All callers
7435         adjusted.
7436         (any_thread_of_process): Rename to ...
7437         (any_thread_of_inferior): ... this, and take an inferior pointer.
7438         (any_live_thread_of_process): Rename to ...
7439         (any_live_thread_of_inferior): ... this, and take an inferior
7440         pointer.
7441         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7442         (value_in_thread_stack_temporaries)
7443         (get_last_thread_stack_temporary): Take a thread pointer instead
7444         of a ptid_t.  Adjust all callers.
7445         (thread_info::set_running): New.
7446         (validate_registers_access): Use inferior_thread.
7447         (can_access_registers_ptid): Rename to ...
7448         (can_access_registers_thread): ... this, and take a thread
7449         pointer.
7450         (print_thread_info_1): Adjust to compare thread pointers instead
7451         of ptids.
7452         (switch_to_no_thread, switch_to_thread): Make extern.
7453         (scoped_restore_current_thread::~scoped_restore_current_thread):
7454         Use m_thread pointer directly.
7455         (scoped_restore_current_thread::scoped_restore_current_thread):
7456         Use inferior_thread.
7457         (thread_command): Use thread pointer directly.
7458         (thread_num_make_value_helper): Use inferior_thread.
7459         * top.c (execute_command): Use inferior_thread.
7460         * tui/tui-interp.c: Include "inferior.h".
7461         * varobj.c (varobj_create): Use inferior_thread.
7462         (value_of_root_1): Use find_thread_global_id instead of
7463         global_thread_id_to_ptid.
7464
7465 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7466
7467         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7468         possible.
7469         (regcache::write_part): Likewise.
7470         (readable_regcache::cooked_read_part): Update comment.
7471         (readable_regcache::cooked_write_part): Likewise.
7472         * regcache.h: (readable_regcache::read_part): Likewise.
7473         (regcache::write_part): Likewise.
7474
7475 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7476             Dirk Schubert  <dirk.schubert@arm.com>
7477
7478         * aarch64-linux-nat.c (post_attach): New.
7479         (aarch64_linux_nat_target::post_attach): Override post_attach to
7480         record the number of hardware debug registers.
7481
7482 2018-06-20  Tom Tromey  <tom@tromey.com>
7483
7484         * python/py-param.c (add_setshow_generic): Make parameters const.
7485         (parmpy_init): Update.
7486
7487 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7488
7489         * regcache.h (regcache_cooked_read_ftype): Rename to...
7490         (register_read_ftype): ...this, change type to function_view.
7491         (class reg_buffer) <save>: Remove src parameter.
7492         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7493         parameter non-const in first overload.  Remove src parameter in
7494         second overload.
7495         * regcache.c (do_cooked_read): Remove.
7496         (readonly_detached_regcache::readonly_detached_regcache): Make
7497         parameter non-const, adjust call to other constructor.
7498         (reg_buffer::save): Remove src parameter.
7499         * frame.c (do_frame_register_read): Remove.
7500         (frame_save_as_regcache): Use lambda function.
7501         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7502         parameter to ppu2spu_data *.
7503         (ppu2spu_sniffer): Use lambda function.
7504
7505 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7506
7507         * record-full.c (record_full_target::insert_breakpoint): Remove
7508         "struct" keyword, add const.
7509
7510 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7511
7512         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7513         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7514         * configure.ac: Remove AC_PREREQ, add missing quoting.
7515         * gnulib/configure.ac: Modernize usage of
7516         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7517         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7518         (AUTOMAKE_VERSION): Bump to 1.15.1.
7519         * configure: Re-generate.
7520         * config.in: Re-generate.
7521         * aclocal.m4: Re-generate.
7522         * gnulib/aclocal.m4: Re-generate.
7523         * gnulib/config.in: Re-generate.
7524         * gnulib/configure: Re-generate.
7525         * gnulib/import/Makefile.in: Re-generate.
7526
7527 2018-06-19  Pedro Alves  <palves@redhat.com>
7528
7529         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7530         (lookup_minimal_symbol_by_pc_section): ... here with
7531         gdb_assert_not_reached added.
7532
7533 2018-06-19  Pedro Alves  <palves@redhat.com>
7534
7535         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7536         parameter with a block parameter.  Compare location's block symbol
7537         with the frame's block instead of addresses.
7538         (skip_inline_frames): Pass the current block instead of the
7539         frame's address.  Break out as soon as we determine the frame
7540         should not be skipped.
7541
7542 2018-06-18  Tom Tromey  <tom@tromey.com>
7543
7544         * solib-aix.c (solib_aix_get_section_offsets): Return
7545         unique_xmalloc_ptr.
7546         (solib_aix_solib_create_inferior_hook): Update.
7547
7548 2018-06-18  Tom Tromey  <tom@tromey.com>
7549
7550         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7551
7552 2018-06-18  Tom Tromey  <tom@tromey.com>
7553
7554         * solib-frv.c (frv_relocate_main_executable): Use
7555         unique_xmalloc_ptr.
7556         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7557         unique_xmalloc_ptr.
7558
7559 2018-06-18  Tom Tromey  <tom@tromey.com>
7560
7561         * objfiles.h (inhibit_section_map_updates): Update.
7562         (resume_section_map_updates, resume_section_map_updates_cleanup):
7563         Remove.
7564         * solib-svr4.c (svr4_handle_solib_event): Update.
7565         * objfiles.c (inhibit_section_map_updates): Return
7566         scoped_restore_tmpl<int>.
7567         (resume_section_map_updates, resume_section_map_updates_cleanup):
7568         Remove.
7569
7570 2018-06-18  Tom Tromey  <tom@tromey.com>
7571
7572         * valprint.h (read_string): Update.
7573         * valprint.c (read_string): Change type of "buffer".
7574         (val_print_string): Update.
7575         * python/py-value.c (valpy_string): Update.
7576         * language.h (struct language_defn) <la_get_string>: Change
7577         type of "buffer".
7578         (default_get_string, c_get_string): Update.
7579         * language.c (default_get_string): Change type of "buffer".
7580         * guile/scm-value.c (gdbscm_value_to_string): Update.
7581         * c-lang.c (c_get_string): Change type of "buffer".
7582
7583 2018-06-18  Tom Tromey  <tom@tromey.com>
7584
7585         * ser-mingw.c (struct pipe_state_destroyer): New.
7586         (pipe_state_up): New typedef.
7587         (cleanup_pipe_state): Remove.
7588         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7589
7590 2018-06-18  Tom Tromey  <tom@tromey.com>
7591
7592         * rust-lang.h (rust_yyerror): Don't declare.
7593         * rust-lang.c (rust_language_defn): Update.
7594         * rust-exp.y (yyerror): Now static.
7595         * parse.c (parse_exp_in_context_1): Update.
7596         * p-lang.h (p_yyerror): Don't declare.
7597         * p-lang.c (p_language_defn): Update.
7598         * p-exp.y (yyerror): Now static.
7599         * opencl-lang.c (opencl_language_defn): Update.
7600         * objc-lang.c (objc_language_defn): Update.
7601         * m2-lang.h (m2_yyerror): Don't declare.
7602         * m2-lang.c (m2_language_defn): Update.
7603         * m2-exp.y (yyerror): Now static.
7604         * language.h (struct language_defn) <la_error>: Remove.
7605         * language.c (unk_lang_error): Remove.
7606         (unknown_language_defn, auto_language_defn): Remove.
7607         * go-lang.h (go_yyerror): Don't declare.
7608         * go-lang.c (go_language_defn): Update.
7609         * go-exp.y (yyerror): Now static.
7610         * f-lang.h (f_yyerror): Don't declare.
7611         * f-lang.c (f_language_defn): Update.
7612         * f-exp.y (yyerror): Now static.
7613         * d-lang.h (d_yyerror): Don't declare.
7614         * d-lang.c (d_language_defn): Update.
7615         * d-exp.y (yyerror): Now static.
7616         * c-lang.h (c_yyerror): Don't declare.
7617         * c-lang.c (c_language_defn, cplus_language_defn)
7618         (asm_language_defn, minimal_language_defn): Update.
7619         * c-exp.y (yyerror): Now static.
7620         * ada-lang.h (ada_yyerror): Don't declare.
7621         * ada-lang.c (ada_language_defn): Update.
7622         * ada-exp.y (yyerror): Now static.
7623
7624 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7625
7626         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7627         (store_sveregs_to_thread): Likewise.
7628         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7629         (aarch64_linux_store_inferior_registers): Likewise.
7630         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7631         function.
7632         (aarch64_sve_regs_copy_to_regcache): Likewise.
7633         (aarch64_sve_regs_copy_from_regcache): Likewise.
7634         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7635         declaration.
7636         (aarch64_sve_regs_copy_to_regcache): Likewise.
7637         (aarch64_sve_regs_copy_from_regcache): Likewise.
7638         (sve_context): Structure from Linux headers.
7639         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7640         (SVE_SIG_ZREG_SIZE): Likewise.
7641         (SVE_SIG_PREG_SIZE): Likewise.
7642         (SVE_SIG_FFR_SIZE): Likewise.
7643         (SVE_SIG_REGS_OFFSET): Likewise.
7644         (SVE_SIG_ZREGS_OFFSET): Likewise.
7645         (SVE_SIG_ZREG_OFFSET): Likewise.
7646         (SVE_SIG_ZREGS_SIZE): Likewise.
7647         (SVE_SIG_PREGS_OFFSET): Likewise.
7648         (SVE_SIG_PREG_OFFSET): Likewise.
7649         (SVE_SIG_PREGS_SIZE): Likewise.
7650         (SVE_SIG_FFR_OFFSET): Likewise.
7651         (SVE_SIG_REGS_SIZE): Likewise.
7652         (SVE_SIG_CONTEXT_SIZE): Likewise.
7653         (SVE_PT_REGS_MASK): Likewise.
7654         (SVE_PT_REGS_FPSIMD): Likewise.
7655         (SVE_PT_REGS_SVE): Likewise.
7656         (SVE_PT_VL_INHERIT): Likewise.
7657         (SVE_PT_VL_ONEXEC): Likewise.
7658         (SVE_PT_REGS_OFFSET): Likewise.
7659         (SVE_PT_FPSIMD_OFFSET): Likewise.
7660         (SVE_PT_FPSIMD_SIZE): Likewise.
7661         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7662         (SVE_PT_SVE_PREG_SIZE): Likewise.
7663         (SVE_PT_SVE_FFR_SIZE): Likewise.
7664         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7665         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7666         (__SVE_SIG_TO_PT): Likewise.
7667         (SVE_PT_SVE_OFFSET): Likewise.
7668         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7669         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7670         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7671         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7672         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7673         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7674         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7675         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7676         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7677         (SVE_PT_SVE_SIZE): Likewise.
7678         (SVE_PT_SIZE): Likewise.
7679         (HAS_SVE_STATE): New define.
7680
7681 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7682
7683         * nat/aarch64-sve-linux-sigcontext.h: New file.
7684         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7685         new files.
7686         (SVE_VQ_MIN): Likewise.
7687         (SVE_VQ_MAX): Likewise.
7688         (SVE_VL_MIN): Likewise.
7689         (SVE_VL_MAX): Likewise.
7690         (SVE_NUM_ZREGS): Likewise.
7691         (SVE_NUM_PREGS): Likewise.
7692         (sve_vl_valid): Likewise.
7693         (struct user_sve_header): Likewise.
7694
7695 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7696             Richard Bunt <Richard.Bunt@arm.com>
7697
7698         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7699         was requested by GDB.
7700
7701 2018-06-15  Tom de Vries  <tdevries@suse.de>
7702
7703         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7704
7705 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7706
7707         * gnulib/update-gnulib.sh: Print expected versions of
7708         autoconf/aclocal.
7709
7710 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7711
7712         * arch-utils.c (default_type_align): Use type_length_units.
7713         * gdbtypes.c (type_align): Use type_length_units.
7714
7715 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7716
7717         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7718         of 'define' command.
7719
7720 2018-06-14  Tom de Vries  <tdevries@suse.de>
7721
7722         PR cli/22573
7723         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7724         get_no_prettyformat_print_options.
7725
7726 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7727
7728         * sparc-nat.h: Include target.h.
7729         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7730         <fetch_registers>: Remove this argument in function call.
7731         <store_registers>: Remove this argument in function call, remove
7732         extra semicolon.
7733         <low_forget_process>: Call sparc64_forget_process instead of
7734         sparc_forget_process.
7735
7736 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7737
7738         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7739         (procfs_target::make_corefile_notes): Adjust to new
7740         target_read_alloc return type.
7741
7742 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7743             Stephen Roberts  <stephen.roberts@arm.com>
7744
7745         PR gdb/22882
7746         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7747         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7748         Move should_notify_stop local into more inner scope.
7749
7750 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7751             Stephen Roberts  <stephen.roberts@arm.com>
7752
7753         PR gdb/22882
7754         * infrun.c (resume_1): Add call to mark_async_event_handler.
7755
7756 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7757
7758         * infrun.c (do_target_wait): Change old version of $pc printed.
7759
7760 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7761
7762         * dwarf2read.c (read_index_from_section): Rename to...
7763         (read_gdb_index_from_section): ... this, update all callers.
7764         (dwarf2_read_index): Rename to...
7765         (dwarf2_read_gdb_index): ... this, update all callers.
7766
7767 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7768
7769         * hppa-linux-nat.c
7770         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7771         hppa_linux_nat_target::fetch_registers.
7772
7773 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7774
7775         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7776         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7777         (AARCH64_DWARF_SVE_FFR): Likewise.
7778         (AARCH64_DWARF_SVE_P0): Likewise.
7779         (AARCH64_DWARF_SVE_Z0): Likewise.
7780
7781 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7782
7783         * common/common-regcache.h (raw_compare): New function.
7784         * regcache.c (regcache::raw_compare): Likewise.
7785         * regcache.h (regcache::raw_compare): New declaration.
7786
7787 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7788
7789         * common/common-regcache.h (reg_buffer_common): New structure.
7790         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7791         (reg_buffer::raw_supply): Likewise.
7792         (reg_buffer::raw_supply_integer): Likewise.
7793         (reg_buffer::raw_supply_zeroed): Likewise.
7794         (reg_buffer::raw_collect): Likewise.
7795         (reg_buffer::raw_collect_integer): Likewise.
7796         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7797         (reg_buffer::raw_supply): Likewise.
7798         (reg_buffer::raw_supply_integer): Likewise.
7799         (reg_buffer::raw_supply_zeroed): Likewise.
7800         (reg_buffer::raw_collect): Likewise.
7801         (reg_buffer::raw_collect_integer): Likewise.
7802
7803 2018-06-10  Tom Tromey  <tom@tromey.com>
7804
7805         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7806         (class remote_state) <stop_reply_queue>: Now std::vector.
7807         (remote_state::~remote_state)
7808         (remote_target::stop_reply_queue_length): Update.
7809         (struct queue_iter_param, remove_child_of_pending_fork)
7810         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7811         (check_pending_event_prevents_wildcard_vcont_callback)
7812         (remove_stop_reply_for_inferior)
7813         (remove_stop_reply_of_remote_state)
7814         (remote_notif_remove_once_on_match)
7815         (stop_reply_match_ptid_and_ws)
7816         (remote_kill_child_of_pending_fork): Remove.
7817         (remote_target::remove_new_fork_children)
7818         (remote_target::check_pending_events_prevent_wildcard_vcont)
7819         (remote_target::discard_pending_stop_replies)
7820         (remote_target::discard_pending_stop_replies_in_queue)
7821         (remote_target::remote_notif_remove_queued_reply)
7822         (remote_target::queued_stop_reply)
7823         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7824         (remote_target::wait, remote_target::kill_new_fork_children)
7825         (remote_target::async): Update.
7826
7827 2018-06-10  Tom Tromey  <tom@tromey.com>
7828
7829         * record-full.c (record_full_arch_list_cleanups): Remove.
7830         (record_full_message): Use try/catch.
7831         (record_full_wait_cleanups): Remove.
7832         (record_full_wait_1): Use try/catch.
7833         (record_full_restore): Likewise.
7834
7835 2018-06-10  Tom Tromey  <tom@tromey.com>
7836
7837         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7838         declare VEC.  Add constructor.
7839         <in_target_beneath>: Now bool.
7840         (record_full_breakpoints): Now a std::vector, static.
7841         (record_full_sync_record_breakpoints)
7842         (record_full_init_record_breakpoints)
7843         (record_full_target::insert_breakpoint)
7844         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7845
7846 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7847
7848         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7849         * serial.c (serial_interface_lookup): Remove struct keyword.
7850
7851 2018-06-10  Tom Tromey  <tom@tromey.com>
7852
7853         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7854         method.
7855         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7856         a method.
7857         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7858         method.
7859         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7860         "beneath" as a method.
7861         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7862         Use "beneath" as a method.
7863
7864 2018-06-10  Tom Tromey  <tom@tromey.com>
7865
7866         * tracefile.c (struct trace_file_writer_deleter): New.
7867         <operator()>: Rename from trace_file_writer_xfree.
7868         (trace_file_writer_up): New typedef.
7869         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7870
7871 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7872
7873         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7874         <m_registers, m_register_status>: Change type to
7875         std::unique_ptr.
7876         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7877         XCNEWVEC.
7878
7879 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7880
7881         * common/common-regcache.h (enum register_status): Add
7882         underlying type "signed char".
7883         * regcache.h (reg_buffer) <m_register_status>: Change type to
7884         register_status *.
7885         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7886         register_status instead of signed char.
7887         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7888         (reg_buffer::get_register_status): Remove cast.
7889         (readable_regcache::raw_read): Remove cast.
7890         (readable_regcache::cooked_read): Remove cast.
7891
7892 2018-06-09  Tom Tromey  <tom@tromey.com>
7893
7894         * source.c (reverse_search_command, forward_search_command): Use
7895         scoped_fd.
7896
7897 2018-06-09  Tom Tromey  <tom@tromey.com>
7898
7899         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7900         (serial_ops_list): Now static, std::vector.
7901         (serial_interface_lookup, serial_add_interface): Update.
7902
7903 2018-06-09  Tom Tromey  <tom@tromey.com>
7904
7905         * dwarf2read.c (process_cu_includes): Update.
7906         (process_full_comp_unit): Update.
7907         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7908         std::vector.
7909
7910 2018-06-08  Paul Koning  <paul_koning@dell.com>
7911
7912         PR gdb/23252
7913
7914         * python/python.c (do_start_initialization):
7915         Avoid call to internal Python API.
7916         (init__gdb_module): New function.
7917
7918 2018-06-08  Gary Benson <gbenson@redhat.com>
7919
7920         * linux-thread-db.c (valprint.h): New include.
7921         (struct check_thread_db_info): New structure.
7922         (check_thread_db_on_load, tdb_testinfo): New static globals.
7923         (check_thread_db, check_thread_db_callback): New functions.
7924         (try_thread_db_load_1): Run integrity checks if requested.
7925         (maintenance_check_libthread_db): New function.
7926         (_initialize_thread_db): Register "maint check libthread-db"
7927         and "maint set/show check-libthread-db".
7928         * NEWS: Mention the above new commands.
7929
7930 2018-06-08  Tom Tromey  <tom@tromey.com>
7931
7932         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7933         now a method.
7934
7935 2018-06-08  Tom Tromey  <tom@tromey.com>
7936
7937         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7938
7939 2018-06-08  Tom Tromey  <tom@tromey.com>
7940
7941         * common/btrace-common.h (struct btrace_data): Add constructor,
7942         destructor, move assignment operator.
7943         <empty, clear, fini>: New methods.
7944         <format>: Initialize.
7945         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7946         (btrace_data_empty): Don't declare.
7947         * common/btrace-common.c (btrace_data_init): Remove.
7948         (btrace_data::fini): Rename from btrace_data_fini.
7949         (btrace_data::empty): Rename from btrace_data_empty.
7950         (btrace_data::clear): Rename from btrace_data_clear.  Return
7951         bool.
7952         * btrace.h (make_cleanup_btrace_data): Don't declare.
7953         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7954         (parse_xml_btrace): Update.
7955         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7956         (maint_btrace_clear_packet_history_cmd): Update.
7957
7958 2018-06-07  Pedro Alves  <palves@redhat.com>
7959
7960         * target.h (target_ops) <beneath>: Now a method.  All references
7961         updated.
7962         (class target_stack): New.
7963         * target.c (g_target_stack): New.
7964         (g_current_top_target): Delete.
7965         (current_top_target): Get the top target out of g_target_stack.
7966         (target_stack::push, target_stack::unpush): New.
7967         (push_target, unpush_target): Reimplement.
7968         (target_is_pushed): Reimplement in terms of g_target_stack.
7969         (target_ops::beneath, target_stack::find_beneath): New.
7970
7971 2018-06-07  Pedro Alves  <palves@redhat.com>
7972
7973         * target.h (find_target_beneath): Delete declaration.
7974         * target.c (find_target_beneath): Delete definition.
7975         * aix-thread.c: All callers of find_target_beneath adjusted to
7976         call target_ops::beneath instead.
7977         * bsd-uthread.c: Likewise.
7978         * linux-thread-db.c: Likewise.
7979         * ravenscar-thread.c: Likewise.
7980         * sol-thread.c: Likewise.
7981         * spu-multiarch.c: Likewise.
7982
7983 2018-06-07  Pedro Alves  <palves@redhat.com>
7984
7985         * target.h (target_ops) <beneath>: Now a method.  All references
7986         updated.
7987         (target_ops) <m_beneath>: New.
7988         * target.c (target_ops::beneath): New.
7989         * corelow.c: Adjust all references to target_ops::beneath.
7990         * linux-thread-db.c: Likewise.
7991         * make-target-delegates: Likewise.
7992         * record-btrace.c: Likewise.
7993         * record-full.c: Likewise.
7994         * remote.c: Likewise.
7995         * target.c: Likewise.
7996         * target-delegates.c: Regenerate.
7997
7998 2018-06-07  Pedro Alves  <palves@redhat.com>
7999
8000         * target.h (target_stack): Delete.
8001         (current_top_target): Declare function.
8002         * target.c (target_stack): Delete.
8003         (g_current_top_target): New.
8004         (current_top_target): New function.
8005         * auxv.c: Use current_top_target instead of target_stack
8006         throughout.
8007         * avr-tdep.c: Likewise.
8008         * breakpoint.c: Likewise.
8009         * corefile.c: Likewise.
8010         * elfread.c: Likewise.
8011         * eval.c: Likewise.
8012         * exceptions.c: Likewise.
8013         * frame.c: Likewise.
8014         * gdbarch-selftests.c: Likewise.
8015         * gnu-v3-abi.c: Likewise.
8016         * ia64-tdep.c: Likewise.
8017         * ia64-vms-tdep.c: Likewise.
8018         * infcall.c: Likewise.
8019         * infcmd.c: Likewise.
8020         * infrun.c: Likewise.
8021         * linespec.c: Likewise.
8022         * linux-tdep.c: Likewise.
8023         * minsyms.c: Likewise.
8024         * ppc-linux-nat.c: Likewise.
8025         * ppc-linux-tdep.c: Likewise.
8026         * procfs.c: Likewise.
8027         * regcache.c: Likewise.
8028         * remote.c: Likewise.
8029         * rs6000-tdep.c: Likewise.
8030         * s390-linux-nat.c: Likewise.
8031         * s390-tdep.c: Likewise.
8032         * solib-aix.c: Likewise.
8033         * solib-darwin.c: Likewise.
8034         * solib-dsbt.c: Likewise.
8035         * solib-spu.c: Likewise.
8036         * solib-svr4.c: Likewise.
8037         * solib-target.c: Likewise.
8038         * sparc-tdep.c: Likewise.
8039         * sparc64-tdep.c: Likewise.
8040         * spu-tdep.c: Likewise.
8041         * symfile.c: Likewise.
8042         * symtab.c: Likewise.
8043         * target-descriptions.c: Likewise.
8044         * target-memory.c: Likewise.
8045         * target.c: Likewise.
8046         * target.h: Likewise.
8047         * tracefile-tfile.c: Likewise.
8048         * tracepoint.c: Likewise.
8049         * valops.c: Likewise.
8050         * valprint.c: Likewise.
8051         * value.c: Likewise.
8052         * windows-tdep.c: Likewise.
8053         * mi/mi-main.c: Likewise.
8054
8055 2018-06-07  Tom Tromey  <tom@tromey.com>
8056
8057         * valprint.h (build_address_symbolic): Declare.
8058         * printcmd.c (print_address_symbolic): Update.
8059         (build_address_symbolic): Change "name" and "filename" to
8060         std::string.
8061         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8062         Update.
8063         * defs.h (build_address_symbolic): Remove declaration.
8064
8065 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8066
8067         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8068         (aarch64_vnv_type): Add function.
8069         (aarch64_pseudo_register_name): Add V regs for SVE.
8070         (aarch64_pseudo_register_type): Likewise.
8071         (aarch64_pseudo_register_reggroup_p): Likewise.
8072         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8073         (aarch64_pseudo_read_value): Add V regs for SVE.
8074         (aarch64_pseudo_write_2): Use V0 offset for SVE
8075         (aarch64_pseudo_write): Add V regs for SVE.
8076         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8077
8078 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8079
8080         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8081         (sve_vl_from_vq): Likewise.
8082
8083 2018-06-05  Tom Tromey  <tom@tromey.com>
8084
8085         * cli/cli-cmds.c (show_version): Update.
8086         * top.c (print_gdb_version): Add "interactive" parameter.
8087         Update.
8088         * main.c (captured_main_1): Update.
8089         * top.h (print_gdb_version): Add "interactive" parameter and a
8090         comment.
8091
8092 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8093
8094         * common/enum-flags.h: Add trailing semicolon to example in
8095         comment.
8096
8097 2018-06-05  Tom Tromey  <tom@tromey.com>
8098
8099         PR cli/12326:
8100         * NEWS: Add entry about pager.
8101         * utils.c (pagination_disabled_for_command): New global.
8102         (prompt_for_continue): Allow "c" response to prompt.
8103         (reinitialize_more_filter): Clear
8104         pagination_disabled_for_command.
8105         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8106
8107 2018-06-04  Tom Tromey  <tom@tromey.com>
8108
8109         * ada-lang.h (ada_lookup_symbol_list): Update.
8110         * ada-lang.c (resolve_subexp): Update.
8111         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8112         parameter.
8113         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8114         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8115         results parameter to std::vector.
8116         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8117         Update.
8118         * ada-exp.y (block_lookup): Update.
8119         (select_possible_type_sym): Change type of syms.  Remove nsyms
8120         parameter.
8121         (write_var_or_type, write_name_assoc): Update.
8122
8123 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8124
8125         * windows-nat.c (windows_nat_target::xfer_partial): Return
8126         TARGET_XFER_E_IO if we need to delegate to the target beneath
8127         but BENEATH is NULL.
8128
8129 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8130
8131         * Makefile.in (config.status): Add configure.nat as a
8132         dependency.
8133
8134 2018-06-04  Tom Tromey  <tom@tromey.com>
8135
8136         * cp-name-parser.y (cpname_state): Add method declarations.
8137         (HANDLE_QUAL): Update.
8138         (cpname_state::d_grab, cpname_state::fill_comp)
8139         (cpname_state::make_operator, cpname_state::make_dtor)
8140         (cpname_state::make_builtin_type, cpname_state::make_name)
8141         (cpname_state::d_qualify, cpname_state::d_int_type)
8142         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8143         (%union): Move earlier.
8144
8145 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8146
8147         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8148
8149 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8150
8151         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8152         (aarch64_pseudo_write_1): Likewise.
8153         (aarch64_pseudo_read_value): Use helper.
8154         (aarch64_pseudo_write): Likewise.
8155
8156 2018-06-04  Pedro Alves  <palves@redhat.com>
8157
8158         * darwin-nat.c (darwin_ops): Delete.
8159         (darwin_attach_pid): Use get_native_target.
8160
8161 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8162
8163         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8164         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8165
8166 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8167
8168         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8169         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8170         (aarch64_gdbarch_init): Check for SVE.
8171         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8172
8173 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8174
8175         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8176         * aarch64-tdep.h (aarch64_read_description): Likewise.
8177         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8178         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8179         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8180         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8181         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8182
8183 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8184
8185         * value.c (value_fetch_lazy_bitfield): New.
8186         (value_fetch_lazy_memory): New.
8187         (value_fetch_lazy_register): New.
8188         (value_fetch_lazy): Factor out to smaller functions.
8189
8190 2018-06-01  Tom Tromey  <tom@tromey.com>
8191
8192         * cp-name-parser.y (backslashable, represented): Now const.
8193
8194 2018-06-01  Tom Tromey  <tom@tromey.com>
8195
8196         * cp-name-parser.y: Include parser-defs.h.
8197         (parser_fprintf): Remove declaration.
8198
8199 2018-06-01  Tom Tromey  <tom@tromey.com>
8200
8201         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8202         %parse-param.
8203         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8204         (global_result): Remove globals.
8205         (struct cpname_state): New.
8206         (yyparse): Don't declare.
8207         (yylex, yyerror): Move declarations after %union.
8208         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8209         (make_name): Add state parameter.
8210         Update all callers.
8211         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8212         parameter.
8213         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8214         Update.
8215         (yylex): Add lvalp, state parameters.
8216         (yyerror): Add state parameter.
8217         (cp_demangled_name_to_comp): Update.
8218
8219 2018-06-01  Tom Tromey  <tom@tromey.com>
8220
8221         * cp-name-parser.y (parser_fprintf): Declare.
8222         (GDB_YY_REMAP_PREFIX): Define.
8223         Include yy-remap.h.  Don't redefine yy* identifiers.
8224
8225 2018-06-01  Tom Tromey  <tom@tromey.com>
8226
8227         * python/py-type.c (typy_legacy_template_argument): Update.
8228         * cp-support.h (cp_demangled_name_to_comp): Update.
8229         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8230         parameter to be a "std::string *".
8231         (main): Update.
8232
8233 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8234
8235         * ada-lex.l: Include "diagnostics.h" instead of
8236         "common/diagnostics.h".
8237         * unittests/environ-selftests.c: Likewise.
8238         * common/diagnostics.h: Moved to ../include.
8239
8240 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8241
8242         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8243         to language_mode_manual while calling breakpoint_re_set_one.
8244
8245 2018-06-01  Tom Tromey  <tom@tromey.com>
8246
8247         * valops.c (value_cast_structs, destructor_name_p): Update.
8248         * symtab.c (gdb_mangle_name): Update.
8249         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8250         Update.
8251         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8252         (pascal_object_print_value_fields, pascal_object_print_value):
8253         Update.
8254         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8255         * linespec.c (find_methods): Update.
8256         * gdbtypes.h (type_name_no_tag): Remove.
8257         (type_name_or_error): Rename from type_name_no_tag_or_error.
8258         * gdbtypes.c (type_name_no_tag): Remove.
8259         (type_name_or_error): Rename from type_name_no_tag_or_error.
8260         (lookup_struct_elt_type, check_typedef): Update.
8261         * expprint.c (print_subexp_standard): Update.
8262         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8263         * d-namespace.c (d_lookup_nested_symbol): Update.
8264         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8265         (cp_print_class_member): Update.
8266         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8267         * completer.c (add_struct_fields): Update.
8268         * c-typeprint.c (cp_type_print_derivation_info)
8269         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8270         Update.
8271         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8272         (ada_prefer_type, ada_is_exception_sym): Update.
8273
8274 2018-06-01  Tom Tromey  <tom@tromey.com>
8275
8276         * valops.c (enum_constant_from_type, value_namespace_elt)
8277         (value_maybe_namespace_elt): Update.
8278         * valarith.c (find_size_for_pointer_math): Update.
8279         * target-descriptions.c (make_gdb_type): Update.
8280         * symmisc.c (print_symbol): Update.
8281         * stabsread.c (define_symbol, read_type)
8282         (complain_about_struct_wipeout, add_undefined_type)
8283         (cleanup_undefined_types_1): Update.
8284         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8285         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8286         (rust_internal_print_type, rust_composite_type)
8287         (rust_evaluate_funcall, rust_evaluate_subexp)
8288         (rust_inclusive_range_type_p): Update.
8289         * python/py-type.c (typy_get_tag): Update.
8290         * p-typeprint.c (pascal_type_print_base): Update.
8291         * mdebugread.c (parse_symbol, parse_type): Update.
8292         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8293         Update.
8294         * guile/scm-type.c (gdbscm_type_tag): Update.
8295         * go-lang.c (sixg_string_p): Update.
8296         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8297         Update.
8298         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8299         (TYPE_TAG_NAME): Remove.
8300         * gdbtypes.c (type_name_no_tag): Simplify.
8301         (check_typedef, check_types_equal, recursive_dump_type)
8302         (copy_type_recursive, arch_composite_type): Update.
8303         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8304         in summary mode when needed.
8305         * eval.c (evaluate_funcall): Update.
8306         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8307         (process_structure_scope, read_enumeration_type)
8308         (read_namespace_type, read_module_type, determine_prefix): Update.
8309         * cp-support.c (inspect_type): Update.
8310         * coffread.c (process_coff_symbol, decode_base_type): Update.
8311         * c-varobj.c (c_is_path_expr_parent): Update.
8312         * c-typeprint.c (c_type_print_base_struct_union): Update.
8313         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8314         summary when using C language.
8315         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8316         (gen_maybe_namespace_elt): Update.
8317         * ada-lang.c (ada_type_name): Simplify.
8318         (empty_record, ada_template_to_fixed_record_type_1)
8319         (template_to_static_fixed_type)
8320         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8321
8322 2018-06-01  Tom Tromey  <tom@tromey.com>
8323
8324         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8325         c_print_type.
8326         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8327         (c_print_type): Update.
8328         (c_print_type): New overload.
8329         (c_type_print_varspec_prefix, c_type_print_args)
8330         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8331         (c_type_print_base_struct_union, c_type_print_base_1)
8332         (cp_type_print_method_args): Add "language" parameter.
8333         (c_type_print_base): Update.
8334         * c-lang.h (c_print_type): Add new overload.
8335
8336 2018-06-01  Tom Tromey  <tom@tromey.com>
8337
8338         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8339         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8340
8341 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8342
8343         * aarch64-tdep.c (aarch64_sve_register_names): New const
8344         var.
8345         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8346         (AARCH64_SVE_Z_REGS_NUM): New define.
8347         (AARCH64_SVE_P_REGS_NUM): Likewise.
8348         (AARCH64_SVE_NUM_REGS): Likewise.
8349
8350 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8351
8352         * nat/linux-ptrace.h [__alpha__]
8353         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8354         definitions.
8355
8356 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8357
8358         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8359         the endianness selected.
8360         * NEWS: Document `set endian auto' mode operation update.
8361
8362 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8363
8364         * Makefile.in: Add new header.
8365         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8366         (sve_vl_from_vg): Likewise.
8367         (sve_vq_from_vl): Likewise.
8368         (sve_vl_from_vq): Likewise.
8369         (sve_vq_from_vg): Likewise.
8370         (sve_vg_from_vq): Likewise.
8371         * configure.nat: Add new c file.
8372         * nat/aarch64-sve-linux-ptrace.c: New file.
8373         * nat/aarch64-sve-linux-ptrace.h: New file.
8374
8375 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8376
8377         * aarch64-linux-nat.c (aarch64_linux_read_description):
8378         Add parmeter zero.
8379         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8380         Likewise.
8381         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8382         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8383         (aarch64_gdbarch_init): Add parmeter zero.
8384         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8385         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8386         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8387         parmeter.
8388         * doc/gdb.texinfo: Describe SVE feature
8389         * features/aarch64-sve.c: New file.
8390
8391 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8392
8393         PR gdb/23210
8394         * gdbarch.sh (significant_addr_bit): Default to zero when
8395         not set by target architecture.
8396         * gdbarch.c: Re-generated.
8397         * utils.c (address_significant): Update.
8398
8399 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8400
8401         * stack.c (func_command): Remove trailing newline in call to error.
8402
8403 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8404
8405         * regcache.h (regcache_raw_collect): Remove, update callers to
8406         use regcache::raw_collect.
8407         * regcache.c (regcache_raw_collect): Remove.
8408
8409 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8410
8411         * regcache.h (regcache_raw_supply): Remove, update callers to
8412         use detached_regcache::raw_supply.
8413         * regcache.c (regcache_raw_supply): Remove.
8414
8415 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8416
8417         * regcache.h (regcache_cooked_write_part): Remove, update
8418         callers to use regcache::cooked_write_part.
8419         * regcache.c (regcache_cooked_write_part): Remove.
8420
8421 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8422
8423         * regcache.h (regcache_cooked_read_part): Remove, update callers
8424         to use readable_regcache::cooked_read_part.
8425         * regcache.c (regcache_cooked_read_part): Remove.
8426
8427 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8428
8429         * regcache.h (regcache_cooked_read_value): Remove, update
8430         callers to use readable_regcache::cooked_read_value.
8431         * regcache.c (regcache_cooked_read_value): Remove.
8432
8433 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8434
8435         * regcache.h (regcache_cooked_write): Remove, update callers to
8436         use regcache::cooked_write.
8437         * regcache.c (regcache_cooked_write): Remove.
8438
8439 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8440
8441         * regcache.h (regcache_invalidate): Remove, update callers to
8442         use detached_regcache::invalidate instead.
8443         * regcache.c (regcache_invalidate): Remove.
8444
8445 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8446
8447         * regcache.h (regcache_raw_write_part): Remove, update callers
8448         to use regcache::raw_write_part instead.
8449         * regcache.c (regcache_raw_write_part): Remove.
8450
8451 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8452
8453         * regcache.h (regcache_raw_read_part): Remove, update callers to
8454         use readable_regcache::raw_read_part instead.
8455         * regcache.c (regcache_raw_read_part): Remove.
8456
8457 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8458
8459         * regcache.h (regcache_cooked_read): Remove, update callers to
8460         use readable_regcache::cooked_read instead.
8461         * regcache.c (regcache_cooked_read): Remove.
8462
8463 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8464
8465         * regcache.h (regcache_raw_write): Remove, update callers to use
8466         regcache::raw_write instead.
8467         * regcache.c (regcache_raw_write): Remove.
8468
8469 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8470
8471         * regcache.h (regcache_raw_read): Remove, update callers to use
8472         readable_regcache::raw_read instead.
8473         * regcache.c (regcache_raw_read): Remove.
8474
8475 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8476
8477         * regcache.h (regcache_raw_update): Remove, update callers to
8478         use readable_regcache::raw_update instead.
8479         * regcache.c (regcache_raw_update): Remove.
8480
8481 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8482
8483         * regcache.h (regcache_register_status): Remove, update callers
8484         to use reg_buffer::get_register_status directly instead.
8485         * regcache.c (regcache_register_status): Remove.
8486
8487 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8488
8489         * regcache.h (regcache_get_ptid): Remove, update all callers to
8490         call regcache::ptid instead.
8491         * regcache.c (regcache_get_ptid): Remove.
8492
8493 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8494
8495         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8496
8497 2018-05-30  Pedro Alves  <palves@redhat.com>
8498
8499         * common/common-exceptions.h (exception_rethrow): Use
8500         ATTRIBUTE_NORETURN.
8501
8502 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8503
8504         * breakpoint.c (print_solib_event, check_status_catch_solib):
8505         Remove struct keyword in range-based for loops.
8506         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8507         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8508         Likewise.
8509         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8510         Likewise.
8511         * symfile.c (addr_info_make_relative): Likewise.
8512         * thread.c (value_in_thread_stack_temporaries): Likewise.
8513
8514 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8515
8516         PR gdb/16841
8517         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8518         aggregate type to get its real type before accessing it.
8519
8520 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8521
8522         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8523         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8524         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8525         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8526         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8527         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8528         * printcmd.c (info_address_command): Likewise.
8529
8530 2018-05-29  Tom Tromey  <tom@tromey.com>
8531
8532         * windows-nat.c (handle_exception): Update fall-through comment.
8533
8534 2018-05-29  Tom Tromey  <tom@tromey.com>
8535
8536         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8537         (struct program_space) <added_solibs>: Now a std::vector.
8538         * breakpoint.c (print_solib_event): Update.
8539         (check_status_catch_solib): Update.
8540         * progspace.c (clear_program_space_solib_cache): Update.
8541         * solib.c (update_solib_list): Update.
8542
8543 2018-05-29  Tom Tromey  <tom@tromey.com>
8544
8545         * python/py-type.c (typy_richcompare): Update.
8546         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8547         * gdbtypes.h (types_deeply_equal): Return bool.
8548         (types_equal): Likewise.
8549         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8550         declare VEC.
8551         (check_types_equal): Change worklist to std::vector.  Return
8552         bool.
8553         (struct type_equality_entry): Add constructor.
8554         (compare_maybe_null_strings): Return bool.
8555         (check_types_worklist): Return bool.  Change worklist to
8556         std::vector.
8557         (types_deeply_equal): Use std::vector.
8558         (types_equal): Return bool.
8559         (compare_maybe_null_strings): Simplify.
8560
8561 2018-05-29  Tom Tromey  <tom@tromey.com>
8562
8563         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8564
8565 2018-05-29  Tom Tromey  <tom@tromey.com>
8566
8567         * objc-lang.h: Don't include cp-support.h.
8568         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8569         declare VEC.
8570
8571 2018-05-27  Tom Tromey  <tom@tromey.com>
8572
8573         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8574
8575 2018-05-25  Tom Tromey  <tom@tromey.com>
8576
8577         * value.c (value::location): Initialize.
8578
8579 2018-05-25  Tom Tromey  <tom@tromey.com>
8580
8581         * dbxread.c (init_bincl_list): Remove.
8582         (bincl_list): Now a std::vector.
8583         (bincls_allocated, next_bincl): Remove.
8584         (free_bincl_list, do_free_bincl_list_cleanup)
8585         (make_cleanup_free_bincl_list): Remove.
8586         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8587         unique_xmalloc_ptr.
8588         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8589         (struct header_file_location): Add constructor.
8590         (add_bincl_to_list): Remove.
8591
8592 2018-05-25  Tom Tromey  <tom@tromey.com>
8593
8594         * tui/tui.c (tui_enable): Update.
8595         * mi/mi-interp.c (mi_interp::init): Update.
8596         * interps.h (class interp) <name>: New method.
8597         <m_name>: Rename from name.
8598         (~scoped_restore_interp): Update.
8599         * interps.c (interp::interp): Update.
8600         (interp_add, interp_set, interp_lookup_existing)
8601         (current_interp_named_p): Update.
8602
8603 2018-05-25  Tom Tromey  <tom@tromey.com>
8604
8605         * interps.c (interp_name): Remove.
8606         * mi/mi-interp.c (mi_interp::init): Update.
8607         * interps.h (interp_name): Remove.
8608         (~scoped_restore_interp): Update.
8609         * tui/tui.c (tui_enable): Update.
8610
8611 2018-05-25  Tom Tromey  <tom@tromey.com>
8612
8613         * utils.c (fputs_maybe_filtered): Update.
8614         * linespec.c (decode_line_full): Update.
8615         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8616         (mi_print_breakpoint_for_event, mi_solib_loaded)
8617         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8618         (mi_user_selected_context_changed): Update.
8619         * mi/mi-main.c (mi_execute_command): Update.
8620         * cli/cli-script.c (execute_control_command): Update.
8621         * python/python.c (execute_gdb_command): Update.
8622         * solib.c (info_sharedlibrary_command): Update.
8623         * interps.c (interp_ui_out): Remove.
8624         * interps.h (interp_ui_out): Remove.
8625
8626 2018-05-25  Tom Tromey  <tom@tromey.com>
8627
8628         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8629         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8630         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8631
8632 2018-05-25  Tom Tromey  <tom@tromey.com>
8633
8634         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8635         * interps.c (interp_exec): Use scoped_restore.
8636
8637 2018-05-25  Tom Tromey  <tom@tromey.com>
8638
8639         * remote.c (remote_target::remote_file_get): Use
8640         gdb::byte_vector.
8641         (remote_target::remote_file_put): Likewise.
8642
8643 2018-05-25  Tom Tromey  <tom@tromey.com>
8644
8645         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8646         a std::string.
8647         (get_pe_section_index, add_pe_exported_sym): Update.
8648         (read_pe_exported_syms): Use gdb::def_vector.
8649
8650 2018-05-25  Tom Tromey  <tom@tromey.com>
8651
8652         * frame.c (remove_prev_frame): Remove.
8653         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8654
8655 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8656
8657         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8658         Remove prototypes.
8659         * mips-linux-nat.c (supply_fpregset): Always call
8660         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8661         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8662         `mips_fill_fpregset'.
8663         * mips-linux-tdep.c (mips_supply_fpregset)
8664         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8665         (mips_fill_fpregset_wrapper): Remove functions.
8666         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8667         (mips_linux_fpregset): Remove variable.
8668         (mips_linux_iterate_over_regset_sections): Use
8669         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8670         (mips_linux_o32_sigframe_init): Remove comment.
8671
8672 2018-05-25  Pedro Alves  <palves@redhat.com>
8673
8674         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8675         (struct readahead_cache, struct packet_reg, struct
8676         remote_arch_state, class remote_state): Move higher up in the
8677         file.
8678         (remote_target::m_remote_state): Now an object instead of a pointer.
8679         (remote_target::get_remote_state): Adjust.
8680
8681 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8682
8683         * stack.c (select_and_print_frame): Delete.
8684         (struct function_bounds): Move struct within function.
8685         (func_command): Most content moved into new function
8686         find_frame_for_function, use new function, print result, add
8687         function comment.
8688         (find_frame_for_function): New function, now returns a result.
8689
8690 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8691
8692         * stack.c (iterate_over_block_arg_vars): Fix comment.
8693         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8694
8695 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8696
8697         PR gdb/23203
8698         * frame.c
8699         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8700         Define.
8701         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8702         Define.
8703         * frame.h (class scoped_restore_selected_frame): New class.
8704         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8705         of any exception, use scoped_restore_selected_frame to restore the
8706         frame instead.
8707
8708 2018-05-24  Pedro Alves  <palves@redhat.com>
8709
8710         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8711         override.
8712
8713 2018-05-23  Tom Tromey  <tom@tromey.com>
8714
8715         * complaints.c (struct complaints): Remove.
8716         (symfile_complaint_book): Remove.
8717         (series): New global.
8718         (complaint_internal): Update.
8719         (clear_complaints): Update.
8720
8721 2018-05-23  Tom Tromey  <tom@tromey.com>
8722
8723         * complaints.c (counters): New global.
8724         (struct complain): Remove.
8725         (struct complaints) <root>: Remove.
8726         (complaint_sentinel): Remove.
8727         (symfile_complaint_book): Update.
8728         (find_complaint) Remove.
8729         (complaint_internal, clear_complaints): Update.
8730
8731 2018-05-23  Tom Tromey  <tom@tromey.com>
8732
8733         * complaints.c (struct complain) <file, line>: Remove.
8734         (find_complaint): Remove file, line parameters.
8735         (complaint_internal): Update.
8736
8737 2018-05-23  Tom Tromey  <tom@tromey.com>
8738
8739         * complaints.c (vcomplaint): Remove.
8740         (complaint_internal) Merge in contents of vcomplaint.
8741
8742 2018-05-23  Tom Tromey  <tom@tromey.com>
8743
8744         * complaints.c (struct complaints) <explanation>: Remove.
8745         (symfile_explanations): Remove.
8746         (symfile_complaint_book): Update.
8747         (vcomplaint): Update.
8748         (struct explanation): Remove.
8749
8750 2018-05-23  Tom Tromey  <tom@tromey.com>
8751
8752         * complaints.c (symfile_complaints): Remove.
8753         (complaint_internal): Remove "complaints" parameter.
8754         (clear_complaints, vcomplaint): Remove "c" parameter.
8755         (get_complaints): Remove.
8756         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8757         (dwarf2_debug_line_missing_file_complaint)
8758         (dwarf2_debug_line_missing_end_sequence_complaint)
8759         (dwarf2_complex_location_expr_complaint)
8760         (dwarf2_const_value_length_mismatch_complaint)
8761         (dwarf2_section_buffer_overflow_complaint)
8762         (dwarf2_macro_malformed_definition_complaint)
8763         (dwarf2_invalid_attrib_class_complaint)
8764         (create_addrmap_from_index, dw2_symtab_iter_next)
8765         (dw2_expand_marked_cus)
8766         (dw2_debug_names_iterator::find_vec_in_debug_names)
8767         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8768         (create_debug_type_hash_table, init_cutu_and_read_dies)
8769         (partial_die_parent_scope, add_partial_enumeration)
8770         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8771         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8772         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8773         (create_cus_hash_table, create_dwp_hash_table)
8774         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8775         (dwarf2_rnglists_process, dwarf2_ranges_process)
8776         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8777         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8778         (handle_struct_member_die, process_structure_scope)
8779         (read_array_type, read_common_block, read_module_type)
8780         (read_tag_pointer_type, read_typedef, read_base_type)
8781         (read_subrange_type, load_partial_dies, partial_die_info::read)
8782         (partial_die_info::read, partial_die_info::read)
8783         (partial_die_info::read, read_checked_initial_length_and_offset)
8784         (dwarf2_string_attr, read_formatted_entries)
8785         (dwarf_decode_line_header)
8786         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8787         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8788         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8789         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8790         (get_signatured_type, get_DW_AT_signature_type)
8791         (decode_locdesc, file_file_name, consume_improper_spaces)
8792         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8793         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8794         (dwarf2_symbol_mark_computed, set_die_type)
8795         (read_attribute_value): Update.
8796         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8797         Update.
8798         * dbxread.c (unknown_symtype_complaint)
8799         (lbrac_mismatch_complaint, repeated_header_complaint)
8800         (set_namestring, function_outside_compilation_unit_complaint)
8801         (read_dbx_symtab, process_one_symbol): Update.
8802         * gdbtypes.c (stub_noname_complaint): Update.
8803         * windows-nat.c (handle_unload_dll): Update.
8804         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8805         (decode_base_type): Update.
8806         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8807         (eb_complaint, record_include_begin, record_include_end)
8808         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8809         (process_xcoff_symbol, read_symbol)
8810         (function_outside_compilation_unit_complaint)
8811         (scan_xcoff_symtab): Update.
8812         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8813         * buildsym.c (finish_block_internal, make_blockvector)
8814         (end_symtab_get_static_block, augment_type_symtab): Update.
8815         * dtrace-probe.c (dtrace_process_dof)
8816         (dtrace_static_probe_ops::get_probes): Update.
8817         * complaints.h (struct complaint): Don't declare.
8818         (symfile_complaints): Remove.
8819         (complaint_internal): Remove "complaints" parameter.
8820         (complaint): Likewise.
8821         (clear_complaints): Likewise.
8822         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8823         (reread_symbols): Update.
8824         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8825         (dwarf2_frame_cache, decode_frame_entry): Update.
8826         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8827         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8828         (info_selectors_command): Update.
8829         * macrotab.c (macro_include, check_for_redefinition)
8830         (macro_undef): Update.
8831         * objfiles.c (filter_overlapping_sections): Update.
8832         * stabsread.c (invalid_cpp_abbrev_complaint)
8833         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8834         (define_symbol, error_type, read_type, rs6000_builtin_type)
8835         (stabs_method_name_from_physname, read_member_functions)
8836         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8837         (attach_fields_to_type, complain_about_struct_wipeout)
8838         (read_range_type, read_args, common_block_start)
8839         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8840         Update.
8841         * mdebugread.c (index_complaint, unknown_ext_complaint)
8842         (basic_type_complaint, bad_tag_guess_complaint)
8843         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8844         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8845         (parse_procedure, parse_lines)
8846         (function_outside_compilation_unit_complaint)
8847         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8848         (bad_tag_guess_complaint, reg_value_complaint): Update.
8849         * cp-support.c (demangled_name_complaint): Update.
8850         * macroscope.c (sal_macro_scope): Update.
8851         * dwarf-index-write.c (class debug_names): Update.
8852
8853 2018-05-23  Tom Tromey  <tom@tromey.com>
8854
8855         * complaints.c (clear_complaints): Remove "noisy" parameter.
8856         * complaints.h (clear_complaints): Update.
8857         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8858         (reread_symbols): Update.
8859
8860 2018-05-23  Tom Tromey  <tom@tromey.com>
8861
8862         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8863         SUBSEQUENT_MESSAGE.
8864         (vcomplaint, clear_complaints): Update.
8865         (symfile_explanations): Remove some messages.
8866
8867 2018-05-23  Tom Tromey  <tom@tromey.com>
8868
8869         * complaints.c (internal_complaint): Remove.
8870         * complaints.h (internal_complaint): Remove.
8871
8872 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8873
8874         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8875
8876 2018-05-22  Pedro Alves  <palves@redhat.com>
8877
8878         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8879         (remote_fileio_badfd, remote_fileio_return_errno)
8880         (remote_fileio_return_success, remote_fileio_func_open)
8881         (remote_fileio_func_open, remote_fileio_func_close)
8882         (remote_fileio_func_read, remote_fileio_func_write)
8883         (remote_fileio_func_lseek, remote_fileio_func_rename)
8884         (remote_fileio_func_unlink, remote_fileio_func_stat)
8885         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8886         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8887         remote_target parameter.
8888         (remote_fio_func_map) <func>: Add remote_target parameter.
8889         (do_remote_fileio_request, remote_fileio_request):
8890         * remote-fileio.h (remote_fileio_request):
8891         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8892         remote_target parameter.
8893         (remote_notif_process, handle_notification): Adjust to pass down
8894         the remote.
8895         (remote_notif_state_allocate): Add remote_target parameter.  Save
8896         it.
8897         * remote-notif.h (struct remote_target): Forward declare.
8898         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8899         remote_target parameter.
8900         (struct remote_notif_state) <remote>: New field.
8901         (remote_notif_ack, remote_notif_parse): Add remote_target
8902         parameter.
8903         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8904         remote_target parameter.
8905         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8906         (threads_listing_context, rmt_thread_action, protocol_feature)
8907         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8908         (packet_result, struct threads_listing_context, remote_state):
8909         Move definitions and declarations higher up.
8910         (remote_target) <~remote_target>: Declare.
8911         (remote_download_command_source, remote_file_put, remote_file_get)
8912         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8913         (remote_hostio_pread_vFile, remote_hostio_send_command)
8914         (remote_hostio_set_filesystem, remote_hostio_open)
8915         (remote_hostio_close, remote_hostio_unlink, remote_state)
8916         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8917         (get_memory_write_packet_size, get_memory_read_packet_size)
8918         (append_pending_thread_resumptions, remote_detach_1)
8919         (append_resumption, remote_resume_with_vcont)
8920         (add_current_inferior_and_thread, wait_ns, wait_as)
8921         (process_stop_reply, remote_notice_new_inferior)
8922         (process_initial_stop_replies, remote_add_thread)
8923         (btrace_sync_conf, remote_btrace_maybe_reopen)
8924         (remove_new_fork_children, kill_new_fork_children)
8925         (discard_pending_stop_replies, stop_reply_queue_length)
8926         (check_pending_events_prevent_wildcard_vcont)
8927         (discard_pending_stop_replies_in_queue, stop_reply)
8928         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8929         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8930         (remote_interrupt_as, remote_interrupt_ns)
8931         (remote_get_noisy_reply, remote_query_attached)
8932         (remote_add_inferior, remote_current_thread, get_current_thread)
8933         (set_thread, set_general_thread, set_continue_thread)
8934         (set_general_process, write_ptid)
8935         (remote_unpack_thread_info_response, remote_get_threadinfo)
8936         (parse_threadlist_response, remote_get_threadlist)
8937         (remote_threadlist_iterator, remote_get_threads_with_ql)
8938         (remote_get_threads_with_qxfer)
8939         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8940         (get_offsets, remote_check_symbols, remote_supported_packet)
8941         (remote_query_supported, remote_packet_size)
8942         (remote_serial_quit_handler, remote_detach_pid)
8943         (remote_vcont_probe, remote_resume_with_hc)
8944         (send_interrupt_sequence, interrupt_query)
8945         (remote_notif_get_pending_events, fetch_register_using_p)
8946         (send_g_packet, process_g_packet, fetch_registers_using_g)
8947         (store_register_using_P, store_registers_using_G)
8948         (set_remote_traceframe, check_binary_download)
8949         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8950         (remote_xfer_live_readonly_partial, remote_read_bytes)
8951         (remote_send_printf, remote_flash_write, readchar)
8952         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8953         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8954         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8955         (extended_remote_disable_randomization, extended_remote_run)
8956         (send_environment_packet, extended_remote_environment_support)
8957         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8958         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8959         (packet_command): Now methods of ...
8960         (remote_target): ... this class.
8961         (m_remote_state) <remote_target>: New field.
8962         (struct remote_state) <stop_reply_queue,
8963         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8964         fields.
8965         (remote_state::remote_state): Allocate stop_reply_queue.
8966         (remote_state): Delete global.
8967         (get_remote_state_raw): Delete.
8968         (remote_target::get_remote_state): Allocate m_remote_state on
8969         demand.
8970         (get_current_remote_target): New.
8971         (remote_ops, extended_remote_ops): Delete.
8972         (wait_forever_enabled_p, remote_async_inferior_event_token):
8973         Delete, moved to struct remote_state.
8974         (remote_target::close): Delete self.  Destruction bits split to
8975         ...
8976         (remote_target::~remote_target): ... this.
8977         (show_memory_packet_size): Adjust to use
8978         get_current_remote_target.
8979         (struct protocol_feature) <func>: Add remote_target parameter.
8980         All callers adjusted.
8981         (curr_quit_handler_target): New.
8982         (remote_serial_quit_handler): Reimplement.
8983         (remote_target::open_1): Adjust to use get_current_remote_target.
8984         Heap-allocate remote_target/extended_remote_target instances.
8985         (vcont_builder::vcont_builder): Add remote_target parameter, and
8986         save it in m_remote.  All callers adjusted.
8987         (vcont_builder::m_remote): New field.
8988         (vcont_builder::restart, vcont_builder::flush)
8989         (vcont_builder::push_action): Use it.
8990         (remote_target::commit_resume): Use it.
8991         (struct queue_iter_param) <remote>: New field.
8992         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8993         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8994         (check_pending_event_prevents_wildcard_vcont_callback)
8995         (remote_target::check_pending_events_prevent_wildcard_vcont)
8996         (remote_target::discard_pending_stop_replies)
8997         (remote_target::discard_pending_stop_replies_in_queue)
8998         (remote_target::remote_notif_remove_queued_reply): Fill in
8999         'remote' field.
9000         (remote_notif_get_pending_events): New.
9001         (remote_target::readchar, remote_target::remote_serial_write):
9002         Save/restore curr_quit_handler_target.
9003         (putpkt): New.
9004         (kill_new_fork_children): Fill in 'remote' field.
9005         (packet_command): Use get_current_remote_target, defer to
9006         remote_target method of same name.
9007         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9008         parameter, and save it in m_remote.  All callers adjusted.
9009         (scoped_remote_fd::release): Use m_remote.
9010         (scoped_remote_fd::m_remote): New field.
9011         (remote_file_put, remote_file_get, remote_file_delete): Use
9012         get_current_remote_target, defer to remote_target method of same
9013         name.
9014         (remote_btrace_reset): Add remote_state paremeter.  Update all
9015         callers.
9016         (remote_async_inferior_event_handler). Pass down 'data'.
9017         (remote_new_objfile): Use get_current_remote_target.
9018         (remote_target::vcont_r_supported): New.
9019         (set_range_stepping): Use get_current_remote_target and
9020         remote_target::vcont_r_supported.
9021         (_initialize_remote): Don't allocate 'remote_state' and
9022         'stop_reply_queue' globals.
9023         * remote.h (struct remote_target): Forward declare.
9024         (getpkt, putpkt, remote_notif_get_pending_events): Add
9025         'remote_target' parameter.
9026
9027 2018-05-22  Pedro Alves  <palves@redhat.com>
9028
9029         * remote.c (vcont_builder): Now a class.  Make all data members
9030         private.
9031         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9032         Declare methods.
9033         (vcont_builder_restart): Rename to ...
9034         (vcont_builder::restart): ... this.
9035         (vcont_builder_flush): Rename to ...
9036         (vcont_builder::flush): ... this.
9037         (vcont_builder_push_action): Rename to ...
9038         (vcont_builder::push_action): ... this.
9039         (remote_target::commit_resume): Adjust.
9040
9041 2018-05-22  Pedro Alves  <palves@redhat.com>
9042
9043         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9044         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9045         (get_fixed_memory_packet_size): New.
9046         (get_memory_packet_size): Use it.
9047         (set_memory_packet_size): Don't override the config size with
9048         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9049         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9050         Don't refer to get_memory_packet_size if not connected to a remote
9051         target.  Show "(default)" if configured size is 0.
9052
9053 2018-05-22  Pedro Alves  <palves@redhat.com>
9054
9055         * remote.c (remote_target::mourn_inferior): Move
9056         discard_pending_stop_replies call here from ...
9057         (_initialize_remote): ... here.
9058
9059 2018-05-22  Pedro Alves  <palves@redhat.com>
9060
9061         * remote.c (compare_section_command): Remove set_general_process
9062         call.
9063
9064 2018-05-22  Pedro Alves  <palves@redhat.com>
9065
9066         * remote.c (struct packet_reg, struct remote_arch_state):
9067         Move higher up in the file.
9068         (remote_state) <m_arch_states>: Store remote_arch_state values
9069         instead of remote_arch_state pointers.
9070         (remote_state::get_remote_arch_state): Adjust.
9071
9072 2018-05-22  Pedro Alves  <palves@redhat.com>
9073
9074         * remote.c: Include <unordered_map>.
9075         (remote_state): Now a class.
9076         (remote_state) <get_remote_arch_state>: Declare method.
9077         <get_remote_arch_state>: New field.
9078         (remote_arch_state) <remote_arch_state>: Declare ctor.
9079         <regs>: Now a unique_ptr.
9080         (remote_gdbarch_data_handle): Delete.
9081         (get_remote_arch_state): Delete.
9082         (remote_state::get_remote_arch_state): New.
9083         (get_remote_state): Adjust to call remote_state's
9084         get_remote_arch_state method.
9085         (init_remote_state): Delete, bits factored out to ...
9086         (remote_arch_state::remote_arch_state): ... this new method.
9087         (get_remote_packet_size, get_memory_packet_size)
9088         (process_g_packet, remote_target::fetch_registers)
9089         (remote_target::prepare_to_store, store_registers_using_G)
9090         (remote_target::store_registers, remote_target::get_trace_status):
9091         Adjust to call remote_state's method.
9092         (_initialize_remote): Remove reference to
9093         remote_gdbarch_data_handle.
9094
9095 2018-05-22  Pedro Alves  <palves@redhat.com>
9096
9097         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9098         pread>: New method declarations.
9099         (remote_target::open_1): Adjust.
9100         (readahead_cache_invalidate): Rename to ...
9101         (readahead_cache::invalidate): ... this, and adjust to be a class
9102         method.
9103         (readahead_cache_invalidate_fd): Rename to ...
9104         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9105         class method.
9106         (remote_hostio_pwrite): Adjust.
9107         (remote_hostio_pread_from_cache): Rename to ...
9108         (readahead_cache::pread): ... this, and adjust to be a class
9109         method.
9110         (remote_hostio_close): Adjust.
9111
9112 2018-05-22  Pedro Alves  <palves@redhat.com>
9113
9114         * remote.c (remote_hostio_close_cleanup): Delete.
9115         (class scoped_remote_fd): New.
9116         (remote_file_put, remote_file_get): Use it.
9117
9118 2018-05-22  Pedro Alves  <palves@redhat.com>
9119
9120         (struct vCont_action_support): Use bool and initialize all fields.
9121         (struct readahead_cache): Initialize all fields.
9122         (remote_state): Use bool and initialize all fields.
9123         (remote_state::remote_state, remote_state::~remote_state): New.
9124         (new_remote_state): Delete.
9125         (_initialize_remote): Use new to allocate remote_state.
9126
9127 2018-05-22  Pedro Alves  <palves@redhat.com>
9128             張俊芝  <zjz@zjz.name>
9129
9130         PR gdb/22973
9131         * c-exp.y: Include "c-support.h".
9132         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9133         of tolower.  Use c_ident_is_alpha to scan names.
9134         * c-lang.c: Include "c-support.h".
9135         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9136         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9137         * c-support.h: New file, with bits factored out from ...
9138         * cp-name-parser.y: ... this file.
9139         Include "c-support.h".
9140         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9141         c-support.h and renamed.
9142         (symbol_end, yylex): Adjust.
9143
9144 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9145
9146         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9147         parameter type to CORE_ADDR.
9148         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9149         parameter type in declaration to CORE_ADDR.
9150         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9151         target_auxv_search to get AT_HWCAP and use the result to get the
9152         target description.
9153         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9154         to CORE_ADDR. Remove the cast of the return value to unsigned
9155         long. Fix error predicate of target_auxv_search.
9156         (ppc_linux_nat_target::read_description): Change the type of the
9157         hwcap variable to CORE_ADDR.
9158
9159 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9160
9161         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9162         if the size of fpscr is larger than 32 bits.
9163
9164 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9165
9166         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9167         (ppc32_linux_vsxregmap): New global.
9168         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9169         regcache_supply_regset, and regcache_collect_regset.
9170         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9171         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9172         (fetch_vsx_register, store_vsx_register): Remove.
9173         (fetch_vsx_registers): Add regno parameter. Get regset using
9174         ppc_linux_vsxregset. Use regset to supply registers.
9175         (store_vsx_registers): Add regno parameter. Get regset using
9176         ppc_linux_vsxregset. Use regset to collect registers.
9177         (fetch_register): Call fetch_vsx_registers instead of
9178         fetch_vsx_register.
9179         (store_register): Call store_vsx_registers instead of
9180         store_vsx_register.
9181         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9182         new regno parameter.
9183         (store_ppc_registers): Call store_vsx_registers with -1 for the
9184         new regno parameter.
9185         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9186         (ppc_collect_vsxregset): Remove.
9187
9188 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9189
9190         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9191         offset fields.
9192         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9193         for vector register offset fields.
9194         (ppc64_fbsd_reg_offsets): Likewise.
9195         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9196         to vector register offset fields.
9197         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9198         to vector register offset fields.
9199         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9200         vector register offset fields.
9201         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9202         initializers for vector register offset fields.
9203         (rs6000_aix64_reg_offsets): Likewise.
9204         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9205         (ppc_supply_vrregset): Remove.
9206         (ppc_collect_vrregset): Remove.
9207         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9208         (ppc_linux_vrregset) : New function.
9209         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9210         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9211         (ppc32_linux_vrregset): Remove.
9212         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9213         and use result instead of ppc32_linux_vrregset.
9214         (ppc32_linux_reg_offsets): Remove initializers for vector register
9215         offset fields.
9216         (ppc64_linux_reg_offsets): Likewise.
9217         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9218         * ppc-linux-nat.c: Include regset.h.
9219         (gdb_vrregset_t): Adjust comment to account for little-endian
9220         mode.
9221         (supply_vrregset, fill_vrregset): Remove.
9222         (fetch_altivec_register, store_altivec_register): Remove.
9223         (fetch_altivec_registers): Add regno parameter. Get regset using
9224         ppc_linux_vrregset. Use regset to supply registers.
9225         (store_altivec_registers): Add regno parameter. Get regset using
9226         ppc_linux_vrregset. Use regset to collect registers.
9227         (fetch_register): Call fetch_altivec_registers instead of
9228         fetch_altivec_register.
9229         (store_register): Call store_altivec_registers instead of
9230         store_altivec_register.
9231         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9232         the new regno parameter.
9233         (store_ppc_registers): Call store_altivec_registers with -1 for
9234         the new regno parameter.
9235
9236 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9237
9238         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9239         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9240         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9241         (gdb_vrregset_t): Change array type size to
9242         PPC_LINUX_SIZEOF_VRREGSET.
9243         (gdb_vsxregset_t): Change array type size to
9244         PPC_LINUX_SIZEOF_VSXREGSET.
9245         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9246         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9247         PPC_LINUX_SIZEOF_VSXREGSET.
9248
9249 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9250
9251         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9252         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9253         nat/ppc-linux.c.
9254         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9255         ppc_linux_target_wordsize with tid.
9256         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9257         wordsize with tid.
9258         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9259         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9260         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9261         tid parameter. Remove static specifier.
9262         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9263         (ppc_linux_target_wordsize): New declaration.
9264
9265 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9266
9267         * arch/ppc-linux-common.c: New file.
9268         * arch/ppc-linux-common.h: New file.
9269         * arch/ppc-linux-tdesc.h: New file.
9270         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9271         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9272         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9273         arch/ppc-linux-tdesc.h.
9274         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9275         arch/ppc-linux-tdesc.h.
9276         (ppc_linux_nat_target::read_description): Remove target
9277         description matching code. Fill a ppc_linux_features struct and
9278         call ppc_linux_match_description with it. Move comment about ISA
9279         2.05 to ppc-linux-common.c.
9280         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9281         arch/ppc-linux-tdesc.h.
9282         (ppc_linux_core_read_description): Remove target description
9283         matching code. Fill a ppc_linux_features struct and call
9284         ppc_linux_match_description with it.
9285         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9286         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9287         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9288         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9289         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9290         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9291         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9292         (tdesc_powerpc_e500l): Remove.
9293
9294 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9295
9296         * ada-lang.c (catch_assert_command): Pass empty string instead
9297         of NULL for excep_string argument.
9298
9299 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9300
9301         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9302         the width of the requested register exceeds the width of the
9303         `ptrace' data type.
9304
9305 2018-05-21  Tom Tromey  <tom@tromey.com>
9306
9307         * printcmd.c (output_command): Remove.
9308         (output_command_const): Rename to output_command.
9309         * valprint.h (output_command): Rename from output_command_const.
9310         * tracepoint.c (trace_dump_actions): Call output_command.
9311
9312 2018-05-21  Tom Tromey  <tom@tromey.com>
9313
9314         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9315         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9316         * ada-lang.h (create_ada_exception_catchpoint): Update.
9317         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9318         std::string.
9319         (create_excep_cond_exprs, ~ada_catchpoint)
9320         (should_stop_exception, print_one_exception)
9321         (print_mention_exception, print_recreate_exception): Update.
9322         (ada_get_next_arg): Remove.
9323         (catch_ada_exception_command_split): Use std::string.  Change type
9324         of "excep_string", "cond_string".
9325         (catch_ada_exception_command): Update.
9326         (create_ada_exception_catchpoint): Change type of excep_string.
9327         (ada_exception_sal): Remove excep_string parameter.
9328         (~ada_catchpoint): Remove.
9329
9330 2018-05-21  Tom Tromey  <tom@tromey.com>
9331
9332         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9333         cleanup.
9334
9335 2018-05-21  Tom Tromey  <tom@tromey.com>
9336
9337         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9338         Return unique_xmalloc_ptr.
9339         (print_it_exception): Update.
9340
9341 2018-05-21  Tom Tromey  <tom@tromey.com>
9342
9343         * tracepoint.c (trace_dump_actions): Use std::string.
9344
9345 2018-05-21  Tom Tromey  <tom@tromey.com>
9346
9347         * symfile.c (reread_symbols): Use std::string for original_name.
9348
9349 2018-05-21  Tom Tromey  <tom@tromey.com>
9350
9351         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9352         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9353         constructor.
9354
9355 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9356
9357         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9358         instance to...
9359         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9360         * objfiles.c (get_objfile_bfd_data): Allocate
9361         objfile_per_bfd_storage with obstack_new when allocating on
9362         obstack.
9363
9364 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9365
9366         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9367         OBSTACK_ZALLOC.
9368         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9369         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9370         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9371         (add_pending): Likewise.
9372         (parse_symbol): Likewise.
9373         (parse_partial_symbols): Likewise.
9374         (psymtab_to_symtab_1): Likewise.
9375         (new_psymtab): Likewise.
9376         (elfmdebug_build_psymtabs): Likewise.
9377         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9378         * objfiles.c (get_objfile_bfd_data): Likewise.
9379         (objfile_register_static_link): Likewise.
9380         * psymtab.c (allocate_psymtab): Likewise.
9381         * stabsread.c (read_member_functions): Likewise.
9382         * xcoffread.c (xcoff_end_psymtab): Likewise.
9383
9384 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9385
9386         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9387         compiler supports std::is_trivially_constructible.
9388         * common/poison.h: Include obstack.h.
9389         (IsMallocable): Define to is_trivially_constructible if the
9390         compiler supports it, define to true_type otherwise.
9391         (xobnew): New.
9392         (XOBNEW): Redefine.
9393         (xobnewvec): New.
9394         (XOBNEWVEC): Redefine.
9395         * gdb_obstack.h (obstack_zalloc): New.
9396         (OBSTACK_ZALLOC): Redefine.
9397         (obstack_calloc): New.
9398         (OBSTACK_CALLOC): Redefine.
9399         (obstack_new): New.
9400         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9401         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9402         gdbarch.c.
9403         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9404         obstack_calloc/obstack_zalloc.
9405         (gdbarch_obstack_zalloc): Remove.
9406         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9407
9408 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9409
9410         * stack.c (backtrace_command_1): Remove useless variable int i.
9411
9412 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9413
9414         * stack.c (print_frame_info): Fix comment.
9415
9416 2018-05-18  Tom Tromey  <tom@tromey.com>
9417
9418         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9419         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9420         (~dwarf2_per_objfile): Update
9421         (dwarf2_get_dwz_file): Use new.
9422         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9423         unique_ptr.
9424
9425 2018-05-18  Tom Tromey  <tom@tromey.com>
9426
9427         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9428         unique_ptr.
9429         * dwarf2read.c (struct dwp_file): Add constructor and
9430         initializers.
9431         (open_and_init_dwp_file): Return a unique_ptr.
9432         (dwarf2_per_objfile, create_dwp_hash_table)
9433         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9434         (lookup_dwo_unit_in_dwp): Update.
9435         (open_and_init_dwp_file, get_dwp_file): Update.
9436
9437 2018-05-18  Tom Tromey  <tom@tromey.com>
9438
9439         * dwarf2read.c (dwarf2_per_objfile): Update.
9440         (struct mapped_index): Add initializers.
9441         (dwarf2_read_index): Use new.
9442         (dw2_symtab_iter_init): Update.
9443         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9444         unique_ptr.
9445
9446 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9447
9448         * dwarf2read.c (mapped_index) <total_size>: Remove.
9449
9450 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9451
9452         * unittests/format_pieces-selftests.c (test_format_specifier):
9453         Add ARI comments.
9454
9455 2018-05-18  Tom Tromey  <tom@tromey.com>
9456
9457         * c-typeprint.c (maybe_print_hole): New function.
9458         (c_print_type_struct_field_offset): Update.
9459         (c_type_print_base_struct_union): Call maybe_print_hole.
9460
9461 2018-05-17  Keith Seitz  <keiths@redhat.com>
9462
9463         * breakpoint.c (build_bpstat_chain): New function, moved from
9464         bpstat_stop_status.
9465         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9466         If no stop chain is passed, call build_bpstat_chain to build it.
9467         * breakpoint.h (build_bpstat_chain): Declare.
9468         (bpstat_stop_status): Move documentation here from breakpoint.c.
9469         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9470         build the stop chain and pass it to skip_inline_frames.
9471         Pass this stop chain to bpstat_stop_status.
9472         * inline-frame.c: Include breakpoint.h.
9473         (stopped_by_user_bp_inline_frame): New function.
9474         (skip_inline_frames): Add parameter `stop_chain'.
9475         Move documention to inline-frame.h.
9476         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9477         whether the frame should be elided.
9478         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9479         Add moved documentation and update for new parameter.
9480
9481 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9482
9483         PR cli/14975
9484         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9485         unittests/format_pieces-selftests.c.
9486         * common/format.h (format_piece) <operator==>: New.
9487         (format_pieces) <operator[]>: Remove.
9488         * common/format.c (format_pieces::format_pieces): Handle \e.
9489         * unittests/format_pieces-selftests.c: New.
9490
9491 2018-05-17  Tom Tromey  <tom@tromey.com>
9492
9493         PR symtab/23010:
9494         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9495         (dw2_instantiate_symtab): Add skip_partial parameter.
9496         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9497         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9498         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9499         (dw2_expand_symtabs_matching_one)
9500         (dw2_find_pc_sect_compunit_symtab)
9501         (dw2_debug_names_lookup_symbol)
9502         (dw2_debug_names_expand_symtabs_for_function): Update.
9503         (init_cutu_and_read_dies): Add skip_partial parameter.
9504         (process_psymtab_comp_unit, build_type_psymtabs_1)
9505         (process_skeletonless_type_unit, load_partial_comp_unit)
9506         (psymtab_to_symtab_1): Update.
9507         (load_full_comp_unit): Add skip_partial parameter.
9508         (process_imported_unit_die, dwarf2_read_addr_index)
9509         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9510         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9511         (read_signatured_type): Update.
9512
9513 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9514
9515         * value.c (release_value): Remove unused variable.
9516         (record_latest_value): Likewise.
9517         (access_value_history): Likewise.
9518         (preserve_values): Likewise.
9519
9520 2018-05-17  Tom Tromey  <tom@tromey.com>
9521
9522         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9523         Initialize.
9524
9525 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9526
9527         PR gdb/22286
9528         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9529         Also handle registers whose width is not a multiple of
9530         PTRACE_TYPE_RET.
9531         (linux_nat_trad_target::store_register): Likewise.
9532
9533 2018-05-16  Tom Tromey  <tom@tromey.com>
9534
9535         * gdbcore.h (core_bfd): Redefine.
9536         * corelow.c (core_target::close): Update.
9537         (core_target_open): Update.
9538         * progspace.h (struct program_space) <cbfd>: Now a
9539         gdb_bfd_ref_ptr.
9540
9541 2018-05-16  Tom Tromey  <tom@tromey.com>
9542
9543         PR cli/19551:
9544         * symfile-add-flags.h (enum symfile_add_flags)
9545         <SYMFILE_NOT_FILENAME>: New constant.
9546         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9547         objfile name from BFD.
9548         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9549         * minidebug.c (find_separate_debug_file_in_section): Put
9550         ".gnu_debugdata" into BFD's file name.
9551
9552 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9553
9554         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9555         Remove.
9556
9557 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9558
9559         PR binutils/21446
9560         * aarch64-tdep.c (aarch64_analyze_prologue,
9561         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9562         Indicate not interested in errors.
9563
9564 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9565
9566         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9567         Supply the MIPS_ZERO_REGNUM register.
9568
9569 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9570
9571         * mips-tdep.c (mask_address_var): Make variable static.
9572
9573 2018-05-14  Tom Tromey  <tom@tromey.com>
9574
9575         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9576
9577 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9578
9579         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9580         FXSAVE_ADDR for the mxcsr register.
9581
9582 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9583
9584         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9585
9586 2018-05-11  Pedro Alves  <palves@redhat.com>
9587
9588         * corelow.c (core_target) <core_target>: No longer inline.
9589         Initialize m_core_gdbarch, m_core_vec and build the section table
9590         here.
9591         <~core_target>: New.
9592         <core_gdbarch, get_core_register_section>: New methods.
9593         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9594         factored out from ...
9595         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9596         (core_ops): Delete.
9597         (sniff_core_bfd): Add gdbarch parameter.
9598         (core_close): Delete, merged into ...
9599         (core_target::close): ... here.  Delete self.
9600         (core_close_cleanup): Delete.
9601         (core_target_open): Allocate a core_target on the heap.  Use a
9602         unique_ptr instead of a cleanup.  Bits moved into the core_target
9603         ctor.  Adjust to use core_target methods instead of globals.
9604         (get_core_register_section): Rename to ...
9605         (core_target::get_core_register_section): ... this and adjust.
9606         (struct get_core_registers_cb_data): New.
9607         (get_core_registers_cb): Use it.  Use bool.
9608         (core_target::fetch_registers, core_target::files_info)
9609         (core_target::xfer_partial, core_target::read_description)
9610         (core_target::pid_to, core_target::thread_name): Adjust to
9611         reference class fields instead of globals.
9612         * target.h (struct target_ops_deleter, target_ops_up): New.
9613
9614 2018-05-11  Pedro Alves  <palves@redhat.com>
9615
9616         * corefile.c (core_file_command): Move to corelow.c.
9617         * corelow.c (the_core_target): Delete.
9618         (core_file_command): Moved from corefile.c.  Check exec_bfd
9619         instead of the_core_target.  Use target_detach instead of calling
9620         into the_core_target directly.
9621         (maybe_say_no_core_file_now): New.
9622         (core_target::detach): Use it.
9623         (_initialize_corelow): Remove references to the_core_target.
9624         * gdbcore.h (the_core_target): Delete.
9625
9626 2018-05-11  Tom Tromey  <tromey@redhat.com>
9627             Pedro Alves  <palves@redhat.com>
9628
9629         * corefile.c (core_bfd): Remove.
9630         * gdbcore.h (core_bfd): Now a macro.
9631         * progspace.h (struct program_space) <cbfd>: New field.
9632
9633 2018-05-11  Tom Tromey  <tom@tromey.com>
9634
9635         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9636         gdb::def_vector.
9637
9638 2018-05-10  Tom Tromey  <tom@tromey.com>
9639
9640         * configure: Rebuild.
9641         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9642
9643 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9644
9645         PR server/23158:
9646         * regformats/regdat.sh: Adjust script, following the addition
9647         of the new expedite_regs parameter to init_target_desc.
9648
9649 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9650     
9651         PR gdb/23127
9652         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9653         set_gdbarch_significant_addr_bit.
9654         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9655         set_gdbarch_significant_addr_bit.
9656         * utils.c (address_significant): Update to sign extend addr.
9657
9658 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9659
9660         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9661         (xtensa_linux_init_abi): Limit tdep->num_regs by
9662         tdep->num_nopriv_regs.
9663         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9664         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9665         not initialized.
9666
9667 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9668
9669         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9670
9671 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9672
9673         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9674         (I387_MXCSR_INIT_VAL): New constant.
9675         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9676         buffer if it was supplied by the inferior.
9677         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9678         (i387_xsave_get_clear_bv): New function.
9679         (i387_supply_xsave): Only read x87 control registers from the
9680         xsave buffer if the feature is enabled, and the state will have
9681         been written, otherwise, provide a suitable default.
9682         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9683         including x87 control registers.  Update control registers if they
9684         have changed from the default value, and mark features as enabled
9685         as required.
9686         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9687
9688 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9689
9690         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9691
9692 2018-05-07  Tom Tromey  <tom@tromey.com>
9693
9694         * configure: Rebuild.
9695         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9696
9697 2018-05-07  Tom Tromey  <tom@tromey.com>
9698
9699         PR tdep/20362:
9700         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9701         bit.  Use correct value for VDIV.
9702
9703 2018-05-04  Tom Tromey  <tom@tromey.com>
9704
9705         * configure: Rebuild.
9706         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9707
9708 2018-05-04  Tom Tromey  <tom@tromey.com>
9709
9710         * linux-record.c (record_linux_system_call) <case
9711         RECORD_SYS_RECVFROM>: Add "break".
9712
9713 2018-05-04  Tom Tromey  <tom@tromey.com>
9714
9715         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9716         Add missing "break".
9717         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9718         Add missing "break".
9719
9720 2018-05-04  Tom Tromey  <tom@tromey.com>
9721
9722         * rs6000-tdep.c (ppc_process_record_op4)
9723         (ppc_process_record_op63): Add fall-through comment.
9724
9725 2018-05-04  Tom Tromey  <tom@tromey.com>
9726
9727         * i386-tdep.c (i386_process_record): Add fall-through comment.
9728
9729 2018-05-04  Tom Tromey  <tom@tromey.com>
9730
9731         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9732         comment.
9733
9734 2018-05-04  Tom Tromey  <tom@tromey.com>
9735
9736         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9737         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9738         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9739         comment.
9740         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9741         comment.
9742         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9743         comment.
9744
9745 2018-05-04  Tom Tromey  <tom@tromey.com>
9746
9747         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9748
9749 2018-05-04  Tom Tromey  <tom@tromey.com>
9750
9751         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9752         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9753         * symfile.c (section_is_mapped): Fix fall-through comment.
9754         * stabsread.c (define_symbol, read_member_functions): Fix
9755         fall-through comment.
9756         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9757         comment.
9758         * remote.c (remote_wait_as): Fix fall-through comment.
9759         * p-exp.y (yylex): Fix fall-through comment.
9760         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9761         comment.
9762         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9763         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9764         * jv-exp.y (yylex): Fix fall-through comment.
9765         * go-exp.y (lex_one_token): Fix fall-through comment.
9766         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9767         fall-through comment.
9768         * f-exp.y (yylex): Fix fall-through comment.
9769         * dwarf2read.c (process_die): Fix fall-through comments.
9770         * dbxread.c (process_one_symbol): Fix fall-through comment.
9771         * d-exp.y (lex_one_token): Fix fall-through comment.
9772         * cp-name-parser.y (yylex): Fix fall-through comment.
9773         * coffread.c (coff_symtab_read): Fix fall-through comment.
9774         * c-exp.y (lex_one_token): Fix fall-through comment.
9775         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9776         comment.
9777         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9778         comment.
9779
9780 2018-05-04  Tom Tromey  <tom@tromey.com>
9781
9782         PR python/22730:
9783         * NEWS: Mention gdb.execute change.
9784         * gdbcmd.h (execute_control_command): Don't declare.
9785         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9786         execute_control_commands, execute_control_commands_to_string.
9787         * cli/cli-script.h (execute_control_commands)
9788         (execute_control_commands_to_string): Declare.
9789         (execute_control_command): Add from_tty parameter.
9790         * cli/cli-script.c (execute_control_commands)
9791         (execute_control_commands_to_string): New functions.
9792         (execute_user_command): Use execute_control_commands.
9793         (execute_control_command_1): Add "from_tty" parameter.  Update.
9794         (execute_control_command): Likewise.
9795
9796 2018-05-04  Tom Tromey  <tom@tromey.com>
9797
9798         PR python/22731:
9799         * NEWS: Mention that breakpoint commands are writable.
9800         * python/py-breakpoint.c (bppy_set_commands): New function.
9801         (breakpoint_object_getset) <"commands">: Use it.
9802
9803 2018-05-04  Tom Tromey  <tom@tromey.com>
9804
9805         * tracepoint.c (actions_command): Update.
9806         * mi/mi-cmd-break.c (mi_command_line_array)
9807         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9808         (mi_read_next_line): Remove.
9809         (mi_cmd_break_commands): Update.
9810         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9811         function_view.
9812         * cli/cli-script.c (get_command_line): Update.
9813         (process_next_line): Use function_view.  Constify.
9814         (recurse_read_control_structure, read_command_lines)
9815         (read_command_lines_1): Change argument types to function_view.
9816         (do_define_command, document_command): Update.
9817         * breakpoint.h (check_tracepoint_command): Don't declare.
9818         * breakpoint.c (check_tracepoint_command): Remove.
9819         (commands_command_1, create_tracepoint_from_upload): Update.
9820
9821 2018-05-04  Tom Tromey  <tom@tromey.com>
9822
9823         PR gdb/11750:
9824         * cli/cli-script.h (enum command_control_type) <define_control>:
9825         New constant.
9826         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9827         (build_command_line, execute_control_command_1)
9828         (process_next_line): Likewise.
9829         (do_define_command): New function, extracted from define_command.
9830         (define_command): Use it.
9831
9832 2018-05-04  Tom Tromey  <tom@tromey.com>
9833
9834         * tracepoint.c (actions_command): Update.
9835         * cli/cli-script.h (read_command_lines): Update.
9836         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9837         (MAX_TMPBUF): Remove define.
9838         (define_command): Use string_printf.
9839         (document_command): Likewise.
9840         * breakpoint.c (commands_command_1): Update.
9841
9842 2018-05-04  Tom Tromey  <tom@tromey.com>
9843
9844         * top.c (execute_command): Update.
9845         * cli/cli-script.h (print_command_lines): Now varargs.
9846         * cli/cli-script.c (print_command_lines): Now varargs.
9847         (execute_control_command_1) <case while_control, case if_control>:
9848         Update.
9849
9850 2018-05-04  Tom Tromey  <tom@tromey.com>
9851
9852         * tracepoint.c (all_tracepoint_actions): Rename from
9853         all_tracepoint_actions_and_cleanup.  Change return type.
9854         (actions_command, encode_actions_1, encode_actions)
9855         (trace_dump_actions, tdump_command): Update.
9856         * remote.c (remote_download_command_source): Update.
9857         * python/python.c (gdbpy_eval_from_control_command)
9858         (python_command, python_interactive_command): Update.
9859         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9860         * guile/guile.c (guile_command)
9861         (gdbscm_eval_from_control_command, guile_command): Update.
9862         * compile/compile.c (compile_code_command)
9863         (compile_print_command, compile_to_object): Update.
9864         * cli/cli-script.h (struct command_lines_deleter): New.
9865         (counted_command_line): New typedef.
9866         (struct command_line): Add constructor, destructor.
9867         <body_list>: Remove.
9868         <body_list_0, body_list_1>: New members.
9869         (command_line_up): Remove typedef.
9870         (read_command_lines, read_command_lines_1, get_command_line):
9871         Update.
9872         (copy_command_lines): Don't declare.
9873         * cli/cli-script.c (build_command_line): Use "new".
9874         (get_command_line): Return counted_command_line.
9875         (print_command_lines, execute_user_command)
9876         (execute_control_command_1, while_command, if_command): Update.
9877         (realloc_body_list): Remove.
9878         (process_next_line, recurse_read_control_structure): Update.
9879         (read_command_lines, read_command_lines_1): Return counted_command_line.
9880         (free_command_lines): Use "delete".
9881         (copy_command_lines): Remove.
9882         (define_command, document_command, show_user_1): Update.
9883         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9884         a counted_command_line.
9885         * breakpoint.h (counted_command_line): Remove typedef.
9886         (breakpoint_set_commands): Update.
9887         * breakpoint.c (check_no_tracepoint_commands)
9888         (validate_commands_for_breakpoint): Update.
9889         (breakpoint_set_commands): Change commands to be a
9890         counted_command_line.
9891         (commands_command_1, update_dprintf_command_list)
9892         (create_tracepoint_from_upload): Update.
9893
9894 2018-05-04  Tom Tromey  <tom@tromey.com>
9895
9896         * cli/cli-decode.h (cmd_list_element): New constructor.
9897         (~cmd_list_element): New destructor.
9898         (struct cmd_list_element): Add initializers.
9899         * cli/cli-decode.c (do_add_cmd): Use "new".
9900         (delete_cmd): Use "delete".
9901
9902 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9903             Pedro Alves <palves@redhat.com>
9904
9905         PR breakpoints/19806 and support for PR external/20207.
9906         * NEWS: Mention Aarch64 watchpoint improvements.
9907         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9908         watchpoints and PR external/20207 watchpoints.
9909         * nat/aarch64-linux-hw-point.c
9910         (kernel_supports_any_contiguous_range): New.
9911         (aarch64_watchpoint_offset): New.
9912         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9913         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9914         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9915         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9916         next_addr_orig_p.  Support PR external/20207 watchpoints.
9917         (aarch64_downgrade_regs): New.
9918         (aarch64_dr_state_insert_one_point): New parameters offset and
9919         addr_orig.
9920         (aarch64_dr_state_remove_one_point): Likewise.
9921         (aarch64_handle_breakpoint): Update caller.
9922         (aarch64_handle_aligned_watchpoint): Likewise.
9923         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9924         aligned_offset.
9925         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9926         aarch64_downgrade_regs.
9927         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9928         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9929         (DR_CONTROL_MASK): ... this.
9930         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9931         (unsigned int aarch64_watchpoint_offset): New prototype.
9932         (aarch64_linux_set_debug_regs): Remove const from state.
9933         * utils.c (align_up, align_down): Move to ...
9934         * common/common-utils.c (align_up, align_down): ... here.
9935         * utils.h (align_up, align_down): Move to ...
9936         * common/common-utils.h (align_up, align_down): ... here.
9937
9938 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9939
9940         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9941         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9942         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9943         Re-implement to match the ABI as summarized in GCC's
9944         gcc/config/sparc/sparc.c.  All callers updated.
9945         (sparc32_store_arguments): Remove assertion.
9946
9947 2018-05-04  Tom Tromey  <tom@tromey.com>
9948
9949         * printcmd.c: Don't include tui.h.
9950         (decode_format): Use skip_spaces.
9951
9952 2018-05-04  Tom Tromey  <tom@tromey.com>
9953
9954         PR gdb/22619:
9955         * printcmd.c (last_count): New global.
9956         (x_command): Use saved count when repeating.
9957
9958 2018-05-04  Tom Tromey  <tom@tromey.com>
9959
9960         * nto-procfs.c (do_closedir_cleanup): Remove.
9961         (procfs_pidlist): Use gdb_dir_up.
9962         * procfs.c (do_closedir_cleanup): Remove.
9963         (proc_update_threads): Use gdb_dir_up.
9964         * common/filestuff.h (struct gdb_dir_deleter): New.
9965         (gdb_dir_up): New typedef.
9966
9967 2018-05-04  Tom Tromey  <tom@tromey.com>
9968
9969         * ada-lang.c (print_mention_exception): Use std::string.
9970
9971 2018-05-04  Tom Tromey  <tom@tromey.com>
9972
9973         * ada-lang.c (create_excep_cond_exprs): Update.
9974         (ada_exception_catchpoint_cond_string): Use std::string.
9975
9976 2018-05-04  Tom Tromey  <tom@tromey.com>
9977
9978         * ada-lang.c (xget_renaming_scope): Return std::string.
9979         (old_renaming_is_invisible): Update.
9980
9981 2018-05-04  Tom Tromey  <tom@tromey.com>
9982
9983         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9984         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9985
9986 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9987
9988         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9989
9990 2018-05-04  Tom Tromey  <tom@tromey.com>
9991
9992         * remote.c (remote_query_supported_append): Change type.
9993         (remote_check_symbols): Update.
9994
9995 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9996
9997         PR gdb/11420
9998         * configure.ac: Prepend libpython.
9999         * python/python-config.py: Likewise.
10000         * configure: Regenerate.
10001
10002 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10003
10004         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10005
10006 2018-05-03  Pedro Alves  <palves@redhat.com>
10007
10008         * s390-linux-nat.c
10009         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10010         override.  Write 'true' instead of '1'.
10011         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10012         declaration.
10013
10014 2018-05-02  Pedro Alves  <palves@redhat.com>
10015
10016         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10017         add_inf_child_target.
10018         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10019         add_inf_child_target.
10020         * aix-thread.c (aix_thread_target_info): New.
10021         (aix_thread_target) <shortname, longname, doc>: Delete.
10022         <info>: New.
10023         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10024         add_inf_child_target.
10025         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10026         add_inf_child_target.
10027         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10028         add_inf_child_target.
10029         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10030         add_inf_child_target.
10031         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10032         add_inf_child_target.
10033         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10034         add_inf_child_target.
10035         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10036         add_inf_child_target.
10037         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10038         add_inf_child_target.
10039         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10040         add_inf_child_target.
10041         * bfd-target.c (target_bfd_target_info): New.
10042         (target_bfd) <shortname, longname, doc>: Delete.
10043         <info>: New.
10044         * bsd-kvm.c (bsd_kvm_target_info): New.
10045         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10046         <info>: New.
10047         (bsd_kvm_target::open): Rename to ...
10048         (bsd_kvm_target_open): ... this.  Adjust.
10049         * bsd-uthread.c (bsd_uthread_target_info): New.
10050         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10051         <info>: New.
10052         * corefile.c (core_file_command): Adjust.
10053         * corelow.c (core_target_info): New.
10054         (core_target) <shortname, longname, doc>: Delete.
10055         <info>: New.
10056         (core_target::open): Rename to ...
10057         (core_target_open): ... this.  Adjust.
10058         * ctf.c (ctf_target_info): New.
10059         (ctf_target) <shortname, longname, doc>: Delete.
10060         <info>: New.
10061         (ctf_target::open): Rename to ...
10062         (ctf_target_open): ... this.
10063         (_initialize_ctf): Adjust.
10064         * exec.c (exec_target_info): New.
10065         (exec_target) <shortname, longname, doc>: Delete.
10066         <info>: New.
10067         (exec_target::open): Rename to ...
10068         (exec_target_open): ... this.
10069         * gdbcore.h (core_target_open): Declare.
10070         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10071         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10072         add_inf_child_target.
10073         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10074         add_inf_child_target.
10075         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10076         add_inf_child_target.
10077         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10078         add_inf_child_target.
10079         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10080         add_inf_child_target.
10081         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10082         add_inf_child_target.
10083         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10084         add_inf_child_target.
10085         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10086         add_inf_child_target.
10087         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10088         add_inf_child_target.
10089         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10090         add_inf_child_target.
10091         * inf-child.c (inf_child_target_info): New.
10092         (inf_child_target::info): New.
10093         (inf_child_open_target): Remove 'target' parameter.  Use
10094         get_native_target instead.
10095         (inf_child_target::open): Delete.
10096         (add_inf_child_target): New.
10097         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10098         Delete.
10099         <info>: New.
10100         (add_inf_child_target): Declare.
10101         (inf_child_open_target): Declare.
10102         * linux-thread-db.c (thread_db_target_info): New.
10103         (thread_db_target) <shortname, longname, doc>: Delete.
10104         <info>: New.
10105         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10106         add_inf_child_target.
10107         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10108         add_inf_child_target.
10109         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10110         add_inf_child_target.
10111         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10112         add_inf_child_target.
10113         * make-target-delegates (print_class): Adjust.
10114         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10115         add_inf_child_target.
10116         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10117         add_inf_child_target.
10118         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10119         add_inf_child_target.
10120         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10121         add_inf_child_target.
10122         * nto-procfs.c (nto_native_target_info): New.
10123         (nto_procfs_target_native) <shortname, longname, doc>:
10124         Delete.
10125         <info>: New.
10126         (nto_procfs_target_info): New.
10127         (nto_procfs_target_procfs) <shortname, longname, doc>:
10128         Delete.
10129         <info>: New.
10130         (init_procfs_targets): Adjust.
10131         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10132         add_inf_child_target.
10133         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10134         add_inf_child_target.
10135         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10136         add_inf_child_target.
10137         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10138         add_inf_child_target.
10139         * ravenscar-thread.c (ravenscar_target_info): New.
10140         (ravenscar_thread_target) <shortname, longname, doc>:
10141         Delete.
10142         <info>: New.
10143         * record-btrace.c (record_btrace_target_info):
10144         (record_btrace_target) <shortname, longname, doc>: Delete.
10145         <info>: New.
10146         (record_btrace_target::open): Rename to ...
10147         (record_btrace_target_open): ... this.  Adjust.
10148         * record-full.c (record_longname, record_doc): New.
10149         (record_full_base_target) <shortname, longname, doc>: Delete.
10150         <info>: New.
10151         (record_full_target_info): New.
10152         (record_full_target): <shortname>: Delete.
10153         <info>: New.
10154         (record_full_core_open_1, record_full_open_1): Update comments.
10155         (record_full_base_target::open): Rename to ...
10156         (record_full_open): ... this.
10157         (cmd_record_full_restore): Update.
10158         (_initialize_record_full): Update.
10159         * remote-sim.c (remote_sim_target_info): New.
10160         (gdbsim_target) <shortname, longname, doc>: Delete.
10161         <info>: New.
10162         (gdbsim_target::open): Rename to ...
10163         (gdbsim_target_open): ... this.
10164         (_initialize_remote_sim): Adjust.
10165         * remote.c (remote_doc): New.
10166         (remote_target_info): New.
10167         (remote_target) <shortname, longname, doc>: Delete.
10168         <info>: New.
10169         (extended_remote_target_info): New.
10170         (extended_remote_target) <shortname, longname, doc>: Delete.
10171         <info>: New.
10172         (remote_target::open_1): Make static.  Adjust.
10173         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10174         * s390-linux-nat.c (_initialize_s390_nat): Use
10175         add_inf_child_target.
10176         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10177         add_inf_child_target.
10178         * sol-thread.c (thread_db_target_info): New.
10179         (sol_thread_target) <shortname, longname, doc>: Delete.
10180         <info>: New.
10181         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10182         add_inf_child_target.
10183         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10184         add_inf_child_target.
10185         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10186         add_inf_child_target.
10187         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10188         add_inf_child_target.
10189         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10190         add_inf_child_target.
10191         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10192         add_inf_child_target.
10193         * spu-linux-nat.c (_initialize_spu_nat): Use
10194         add_inf_child_target.
10195         * spu-multiarch.c (spu_multiarch_target_info): New.
10196         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10197         <info>: New.
10198         * target-delegates.c: Regenerate.
10199         * target.c: Include <unordered_map>.
10200         (target_ops_p): Delete.
10201         (DEF_VEC_P(target_ops_p)): Delete.
10202         (target_factories): New.
10203         (test_target_info): New.
10204         (test_target_ops::info): New.
10205         (open_target): Adjust to use target_factories.
10206         (add_target_with_completer): Rename to ...
10207         (add_target): ... this.  Change prototype.  Register target_info
10208         and open callback in target_factories.  Register target_info in
10209         command context instead of target_ops.
10210         (add_target): Delete old implementation.
10211         (add_deprecated_target_alias): Change prototype.  Adjust.
10212         (the_native_target): New.
10213         (set_native_target, get_native_target): New.
10214         (find_default_run_target): Use the_native_target.
10215         (find_attach_target, find_run_target): Simplify.
10216         (target_ops::open): Delete.
10217         (dummy_target_info): New.
10218         (dummy_target::shortname, dummy_target::longname)
10219         (dummy_target::doc): Delete.
10220         (dummy_target::info): New.
10221         (debug_target::shortname, debug_target::longname)
10222         (debug_target::doc): Delete.
10223         (debug_target::info): New.
10224         * target.h (struct target_info): New.
10225         (target_ops::~target_ops): Add comment.
10226         (target_ops::info): New.
10227         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10228         longer virtual.  Implement in terms of target_info.
10229         (set_native_target, get_native_target): Declare.
10230         (target_open_ftype): New.
10231         (add_target, add_target_with_completer)
10232         (add_deprecated_target_alias): Change prototype.
10233         (test_target) <shortname, longname, doc>: Delete.
10234         <info>: New.
10235         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10236         add_inf_child_target.
10237         * tracefile-tfile.c (tfile_target_info): New.
10238         (tfile_target) <shortname, longname, doc>: Delete.
10239         <info>: New.
10240         (tfile_target::open): Rename to ...
10241         (tfile_target_open): ... this.
10242         (_initialize_tracefile_tfile): Adjust.
10243         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10244         add_inf_child_target.
10245         * windows-nat.c (_initialize_windows_nat): Use
10246         add_inf_child_target.
10247         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10248         add_inf_child_target.
10249
10250 2018-05-02  Pedro Alves  <palves@redhat.com>
10251
10252         * linux-nat.h (linux_nat_target) <low_new_thread,
10253         low_delete_thread, low_new_fork, low_forget_process,
10254         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10255         New virtual methods.
10256         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10257         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10258         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10259         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10260         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10261         Delete.
10262         * linux-fork.c (delete_fork): Adjust to call low method.
10263         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10264         (linux_nat_new_fork, linux_nat_forget_process_hook)
10265         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10266         (linux_nat_status_is_event):
10267         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10268         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10269         to call low method.
10270         (sigtrap_is_event): Rename to ...
10271         (linux_nat_target::low_status_is_event): ... this.
10272         (linux_nat_set_status_is_event): Delete.
10273         (save_stop_reason, linux_nat_wait_1)
10274         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10275         low methods.
10276         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10277         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10278         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10279         (linux_nat_set_prepare_to_resume): Delete.
10280         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10281         low virtual methods.
10282         * amd64-linux-nat.c: Likewise.
10283         * arm-linux-nat.c: Likewise.
10284         * i386-linux-nat.c: Likewise.
10285         * ia64-linux-nat.c: Likewise.
10286         * mips-linux-nat.c: Likewise.
10287         * ppc-linux-nat.c: Likewise.
10288         * s390-linux-nat.c: Likewise.
10289         * sparc64-linux-nat.c: Likewise.
10290         * x86-linux-nat.c: Likewise.
10291         * x86-linux-nat.h: Include "nat/x86-linux.h".
10292         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10293         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10294         Override methods.
10295
10296 2018-05-02  Pedro Alves  <palves@redhat.com>
10297
10298         * target.h (target_ops)
10299         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10300         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10301         stopped_by_watchpoint, have_continuable_watchpoint,
10302         stopped_data_address, watchpoint_addr_within_range,
10303         can_accel_watchpoint_condition, can_run, thread_alive,
10304         has_all_memory, has_memory, has_stack, has_registers,
10305         has_execution, can_async_p, is_async_p, supports_non_stop,
10306         always_non_stop_p, can_execute_reverse, supports_multi_process,
10307         supports_enable_disable_tracepoint,
10308         supports_disable_randomization, supports_string_tracing,
10309         supports_evaluation_of_breakpoint_conditions,
10310         can_run_breakpoint_commands, filesystem_is_local,
10311         can_download_tracepoint, get_trace_state_variable_value,
10312         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10313         record_is_replaying, record_will_replay,
10314         augmented_libraries_svr4_read>: Adjust to return bool.
10315         * aarch64-linux-nat.c: All implementations adjusted.
10316         * aix-thread.c: All implementations adjusted.
10317         * arm-linux-nat.c: All implementations adjusted.
10318         * breakpoint.c: All implementations adjusted.
10319         * bsd-kvm.c: All implementations adjusted.
10320         * bsd-uthread.c: All implementations adjusted.
10321         * corelow.c: All implementations adjusted.
10322         * ctf.c: All implementations adjusted.
10323         * darwin-nat.c: All implementations adjusted.
10324         * darwin-nat.h: All implementations adjusted.
10325         * exec.c: All implementations adjusted.
10326         * fbsd-nat.c: All implementations adjusted.
10327         * fbsd-nat.h: All implementations adjusted.
10328         * gnu-nat.c: All implementations adjusted.
10329         * gnu-nat.h: All implementations adjusted.
10330         * go32-nat.c: All implementations adjusted.
10331         * ia64-linux-nat.c: All implementations adjusted.
10332         * inf-child.c: All implementations adjusted.
10333         * inf-child.h: All implementations adjusted.
10334         * inf-ptrace.c: All implementations adjusted.
10335         * inf-ptrace.h: All implementations adjusted.
10336         * linux-nat.c: All implementations adjusted.
10337         * linux-nat.h: All implementations adjusted.
10338         * mips-linux-nat.c: All implementations adjusted.
10339         * nto-procfs.c: All implementations adjusted.
10340         * ppc-linux-nat.c: All implementations adjusted.
10341         * procfs.c: All implementations adjusted.
10342         * ravenscar-thread.c: All implementations adjusted.
10343         * record-btrace.c: All implementations adjusted.
10344         * record-full.c: All implementations adjusted.
10345         * remote-sim.c: All implementations adjusted.
10346         * remote.c: All implementations adjusted.
10347         * s390-linux-nat.c: All implementations adjusted.
10348         * sol-thread.c: All implementations adjusted.
10349         * spu-multiarch.c: All implementations adjusted.
10350         * target-delegates.c: All implementations adjusted.
10351         * target.c: All implementations adjusted.
10352         * target.h: All implementations adjusted.
10353         * tracefile-tfile.c: All implementations adjusted.
10354         * tracefile.c: All implementations adjusted.
10355         * tracefile.h: All implementations adjusted.
10356         * windows-nat.c: All implementations adjusted.
10357         * x86-linux-nat.h: All implementations adjusted.
10358         * x86-nat.h: All implementations adjusted.
10359
10360 2018-05-02  Pedro Alves  <palves@redhat.com>
10361
10362         * make-target-delegates (scan_target_h): Don't trim lines here.
10363         Replace sequences of tabs and/or whitespace with a single
10364         whitespace.
10365         (top level, parsing methods): Trim each line before processing it
10366         here.
10367
10368 2018-05-02  Pedro Alves  <palves@redhat.com>
10369             John Baldwin  <jhb@freebsd.org>
10370
10371         * target.h (enum strata) <debug_stratum>: New.
10372         (struct target_ops) <all delegation methods>: Replace by C++
10373         virtual methods, and drop "to_" prefix.  All references updated
10374         throughout.
10375         <to_shortname, to_longname, to_doc, to_data,
10376         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10377         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10378         virtual methods.  All references updated throughout.
10379         <can_attach, supports_terminal_ours, can_create_inferior,
10380         get_thread_control_capabilities, attach_no_wait>: New
10381         virtual methods.
10382         <insert_breakpoint, remove_breakpoint>: Now
10383         TARGET_DEFAULT_NORETURN methods.
10384         <info_proc>: Now returns bool.
10385         <to_magic>: Delete.
10386         (OPS_MAGIC): Delete.
10387         (current_target): Delete.  All references replaced by references
10388         to ...
10389         (target_stack): ... this.  New.
10390         (target_shortname, target_longname): Adjust.
10391         (target_can_run): Now a function declaration.
10392         (default_child_has_all_memory, default_child_has_memory)
10393         (default_child_has_stack, default_child_has_registers)
10394         (default_child_has_execution): Remove target_ops parameter.
10395         (complete_target_initialization): Delete.
10396         (memory_breakpoint_target): New template class.
10397         (test_target_ops): Refactor as a C++ class with virtual methods.
10398         * make-target-delegates (NAME_PART): Tighten.
10399         (POINTER_PART, CP_SYMBOL): New.
10400         (SIMPLE_RETURN_PART): Reimplement.
10401         (VEC_RETURN_PART): Expect less.
10402         (RETURN_PART, VIRTUAL_PART): New.
10403         (METHOD): Adjust to C++ virtual methods.
10404         (scan_target_h): Remove reference to C99.
10405         (dname): Output "target_ops::" prefix.
10406         (write_function_header): Adjust to output a C++ class method.
10407         (write_declaration): New.
10408         (write_delegator): Adjust to output a C++ class method.
10409         (tdname): Output "dummy_target::" prefix.
10410         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10411         method.
10412         (tdefault_names, debug_names): Delete.
10413         (return_types, tdefaults, styles, argtypes_array): New.
10414         (top level): All methods are delegators.
10415         (print_class): New.
10416         (top level): Print dummy_target and debug_target classes.
10417         * target-delegates.c: Regenerate.
10418         * target-debug.h (target_debug_print_enum_info_proc_what)
10419         (target_debug_print_thread_control_capabilities)
10420         (target_debug_print_thread_info_p): New.
10421         * target.c (dummy_target): Delete.
10422         (the_dummy_target, the_debug_target): New.
10423         (target_stack): Now extern.
10424         (set_targetdebug): Push/unpush debug target.
10425         (default_child_has_all_memory, default_child_has_memory)
10426         (default_child_has_stack, default_child_has_registers)
10427         (default_child_has_execution): Remove target_ops parameter.
10428         (complete_target_initialization): Delete.
10429         (add_target_with_completer): No longer call
10430         complete_target_initialization.
10431         (target_supports_terminal_ours): Use regular delegation.
10432         (update_current_target): Delete.
10433         (push_target): No longer check magic number.  Don't call
10434         update_current_target.
10435         (unpush_target): Don't call update_current_target.
10436         (target_is_pushed): No longer check magic number.
10437         (target_require_runnable): Skip for all stratums over
10438         process_stratum.
10439         (target_ops::info_proc): New.
10440         (target_info_proc): Use find_target_at and
10441         find_default_run_target.
10442         (target_supports_disable_randomization): Use regular delegation.
10443         (target_get_osdata): Use find_target_at.
10444         (target_ops::open, target_ops::close, target_ops::can_attach)
10445         (target_ops::attach, target_ops::can_create_inferior)
10446         (target_ops::create_inferior, target_ops::can_run)
10447         (target_can_run): New.
10448         (default_fileio_target): Use regular delegation.
10449         (target_ops::fileio_open, target_ops::fileio_pwrite)
10450         (target_ops::fileio_pread, target_ops::fileio_fstat)
10451         (target_ops::fileio_close, target_ops::fileio_unlink)
10452         (target_ops::fileio_readlink): New.
10453         (target_fileio_open_1, target_fileio_unlink)
10454         (target_fileio_readlink): Always call the target method.  Handle
10455         FILEIO_ENOSYS.
10456         (return_zero, return_zero_has_execution): Delete.
10457         (init_dummy_target): Delete.
10458         (dummy_target::dummy_target, dummy_target::shortname)
10459         (dummy_target::longname, dummy_target::doc)
10460         (debug_target::debug_target, debug_target::shortname)
10461         (debug_target::longname, debug_target::doc): New.
10462         (target_supports_delete_record): Use regular delegation.
10463         (setup_target_debug): Delete.
10464         (maintenance_print_target_stack): Skip debug_stratum.
10465         (initialize_targets): Instantiate the_dummy_target and
10466         the_debug_target.
10467         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10468         use target_stack.
10469         (target_auxv_search, fprint_target_auxv): Adjust.
10470         (info_auxv_command): Adjust to use target_stack.
10471         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10472         * exceptions.c (print_flush): Handle a NULL target_stack.
10473         * regcache.c (target_ops_no_register): Refactor as class with
10474         virtual methods.
10475
10476         * exec.c (exec_target): New class.
10477         (exec_ops): Now an exec_target.
10478         (exec_open, exec_close_1, exec_get_section_table)
10479         (exec_xfer_partial, exec_files_info, exec_has_memory)
10480         (exec_make_note_section): Refactor as exec_target methods.
10481         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10482         Delete.
10483         (exec_target::find_memory_regions): New.
10484         (_initialize_exec): Don't call init_exec_ops.
10485         * gdbcore.h (exec_file_clear): Delete.
10486
10487         * corefile.c (core_target): Delete.
10488         (core_file_command): Adjust.
10489         * corelow.c (core_target): New class.
10490         (the_core_target): New.
10491         (core_close): Remove target_ops parameter.
10492         (core_close_cleanup): Adjust.
10493         (core_target::close): New.
10494         (core_open, core_detach, get_core_registers, core_files_info)
10495         (core_xfer_partial, core_thread_alive, core_read_description)
10496         (core_pid_to_str, core_thread_name, core_has_memory)
10497         (core_has_stack, core_has_registers, core_info_proc): Rework as
10498         core_target methods.
10499         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10500         (_initialize_corelow): Initialize the_core_target.
10501         * gdbcore.h (core_target): Delete.
10502         (the_core_target): New.
10503
10504         * ctf.c: (ctf_target): New class.
10505         (ctf_ops): Now a ctf_target.
10506         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10507         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10508         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10509         methods.
10510         (init_ctf_ops): Delete.
10511         (_initialize_ctf): Don't call it.
10512         * tracefile-tfile.c (tfile_target): New class.
10513         (tfile_ops): Now a tfile_target.
10514         (tfile_open, tfile_close, tfile_files_info)
10515         (tfile_get_tracepoint_status, tfile_trace_find)
10516         (tfile_fetch_registers, tfile_xfer_partial)
10517         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10518         Refactor as tfile_target methods.
10519         (tfile_xfer_partial_features): Remove target_ops parameter.
10520         (init_tfile_ops): Delete.
10521         (_initialize_tracefile_tfile): Don't call it.
10522         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10523         (tracefile_has_stack, tracefile_has_registers)
10524         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10525         tracefile_target methods.
10526         (init_tracefile_ops): Delete.
10527         (tracefile_target::tracefile_target): New.
10528         * tracefile.h: Include "target.h".
10529         (tracefile_target): New class.
10530         (init_tracefile_ops): Delete.
10531
10532         * spu-multiarch.c (spu_multiarch_target): New class.
10533         (spu_ops): Now a spu_multiarch_target.
10534         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10535         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10536         (spu_search_memory, spu_mourn_inferior): Refactor as
10537         spu_multiarch_target methods.
10538         (init_spu_ops): Delete.
10539         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10540         complete_target_initialization.
10541
10542         * ravenscar-thread.c (ravenscar_thread_target): New class.
10543         (ravenscar_ops): Now a ravenscar_thread_target.
10544         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10545         (ravenscar_thread_alive, ravenscar_pid_to_str)
10546         (ravenscar_fetch_registers, ravenscar_store_registers)
10547         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10548         (ravenscar_stopped_by_hw_breakpoint)
10549         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10550         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10551         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10552         methods.
10553         (init_ravenscar_thread_ops): Delete.
10554         (_initialize_ravenscar): Remove references to
10555         init_ravenscar_thread_ops and complete_target_initialization.
10556
10557         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10558         (bsd_uthread_target): New class.
10559         (bsd_uthread_ops): Now a bsd_uthread_target.
10560         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10561         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10562         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10563         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10564         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10565         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10566         (bsd_uthread_target): Delete function.
10567         (_initialize_bsd_uthread): Remove reference to
10568         complete_target_initialization.
10569
10570         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10571         (target_bfd): ... this new class.
10572         (target_bfd_xfer_partial, target_bfd_get_section_table)
10573         (target_bfd_close): Refactor as target_bfd methods.
10574         (target_bfd::~target_bfd): New.
10575         (target_bfd_reopen): Adjust.
10576         (target_bfd::close): New.
10577
10578         * record-btrace.c (record_btrace_target): New class.
10579         (record_btrace_ops): Now a record_btrace_target.
10580         (record_btrace_open, record_btrace_stop_recording)
10581         (record_btrace_disconnect, record_btrace_close)
10582         (record_btrace_async, record_btrace_info)
10583         (record_btrace_insn_history, record_btrace_insn_history_range)
10584         (record_btrace_insn_history_from, record_btrace_call_history)
10585         (record_btrace_call_history_range)
10586         (record_btrace_call_history_from, record_btrace_record_method)
10587         (record_btrace_is_replaying, record_btrace_will_replay)
10588         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10589         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10590         (record_btrace_store_registers, record_btrace_prepare_to_store)
10591         (record_btrace_to_get_unwinder)
10592         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10593         (record_btrace_commit_resume, record_btrace_wait)
10594         (record_btrace_stop, record_btrace_can_execute_reverse)
10595         (record_btrace_stopped_by_sw_breakpoint)
10596         (record_btrace_supports_stopped_by_sw_breakpoint)
10597         (record_btrace_stopped_by_hw_breakpoint)
10598         (record_btrace_supports_stopped_by_hw_breakpoint)
10599         (record_btrace_update_thread_list, record_btrace_thread_alive)
10600         (record_btrace_goto_begin, record_btrace_goto_end)
10601         (record_btrace_goto, record_btrace_stop_replaying_all)
10602         (record_btrace_execution_direction)
10603         (record_btrace_prepare_to_generate_core)
10604         (record_btrace_done_generating_core): Refactor as
10605         record_btrace_target methods.
10606         (init_record_btrace_ops): Delete.
10607         (_initialize_record_btrace): Remove reference to
10608         init_record_btrace_ops.
10609         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10610         the execution_direction global.
10611         (record_full_base_target, record_full_target)
10612         (record_full_core_target): New classes.
10613         (record_full_ops): Now a record_full_target.
10614         (record_full_core_ops): Now a record_full_core_target.
10615         (record_full_target::detach, record_full_target::disconnect)
10616         (record_full_core_target::disconnect)
10617         (record_full_target::mourn_inferior, record_full_target::kill):
10618         New.
10619         (record_full_open, record_full_close, record_full_async): Refactor
10620         as methods of the record_full_base_target class.
10621         (record_full_resume, record_full_commit_resume): Refactor
10622         as methods of the record_full_target class.
10623         (record_full_wait, record_full_stopped_by_watchpoint)
10624         (record_full_stopped_data_address)
10625         (record_full_stopped_by_sw_breakpoint)
10626         (record_full_supports_stopped_by_sw_breakpoint)
10627         (record_full_stopped_by_hw_breakpoint)
10628         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10629         methods of the record_full_base_target class.
10630         (record_full_store_registers, record_full_xfer_partial)
10631         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10632         Refactor as methods of the record_full_target class.
10633         (record_full_can_execute_reverse, record_full_get_bookmark)
10634         (record_full_goto_bookmark, record_full_execution_direction)
10635         (record_full_record_method, record_full_info, record_full_delete)
10636         (record_full_is_replaying, record_full_will_replay)
10637         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10638         (record_full_stop_replaying): Refactor as methods of the
10639         record_full_base_target class.
10640         (record_full_core_resume, record_full_core_kill)
10641         (record_full_core_fetch_registers)
10642         (record_full_core_prepare_to_store)
10643         (record_full_core_store_registers, record_full_core_xfer_partial)
10644         (record_full_core_insert_breakpoint)
10645         (record_full_core_remove_breakpoint)
10646         (record_full_core_has_execution): Refactor
10647         as methods of the record_full_core_target class.
10648         (record_full_base_target::supports_delete_record): New.
10649         (init_record_full_ops): Delete.
10650         (init_record_full_core_ops): Delete.
10651         (record_full_save): Refactor as method of the
10652         record_full_base_target class.
10653         (_initialize_record_full): Remove references to
10654         init_record_full_ops and init_record_full_core_ops.
10655
10656         * remote.c (remote_target, extended_remote_target): New classes.
10657         (remote_ops): Now a remote_target.
10658         (extended_remote_ops): Now an extended_remote_target.
10659         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10660         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10661         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10662         (remote_pass_signals, remote_set_syscall_catchpoint)
10663         (remote_program_signals, )
10664         (remote_thread_always_alive): Remove target_ops parameter.
10665         (remote_thread_alive, remote_thread_name)
10666         (remote_update_thread_list, remote_threads_extra_info)
10667         (remote_static_tracepoint_marker_at)
10668         (remote_static_tracepoint_markers_by_strid)
10669         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10670         (remote_open): Refactor as methods of remote_target.
10671         (extended_remote_open, extended_remote_detach)
10672         (extended_remote_attach, extended_remote_post_attach):
10673         (extended_remote_supports_disable_randomization)
10674         (extended_remote_create_inferior): : Refactor as method of
10675         extended_remote_target.
10676         (remote_set_permissions, remote_open_1, remote_detach)
10677         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10678         (remote_resume, remote_commit_resume, remote_stop)
10679         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10680         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10681         (remote_prepare_to_store, remote_store_registers)
10682         (remote_flash_erase, remote_flash_done, remote_files_info)
10683         (remote_kill, remote_mourn, remote_insert_breakpoint)
10684         (remote_remove_breakpoint, remote_insert_watchpoint)
10685         (remote_watchpoint_addr_within_range)
10686         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10687         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10688         (remote_supports_stopped_by_sw_breakpoint)
10689         (remote_stopped_by_hw_breakpoint)
10690         (remote_supports_stopped_by_hw_breakpoint)
10691         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10692         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10693         (remote_verify_memory): Refactor as methods of remote_target.
10694         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10695         parameter.
10696         (remote_xfer_partial, remote_get_memory_xfer_limit)
10697         (remote_search_memory, remote_rcmd, remote_memory_map)
10698         (remote_pid_to_str, remote_get_thread_local_address)
10699         (remote_get_tib_address, remote_read_description): Refactor as
10700         methods of remote_target.
10701         (remote_target::fileio_open, remote_target::fileio_pwrite)
10702         (remote_target::fileio_pread, remote_target::fileio_close): New.
10703         (remote_hostio_readlink, remote_hostio_fstat)
10704         (remote_filesystem_is_local, remote_can_execute_reverse)
10705         (remote_supports_non_stop, remote_supports_disable_randomization)
10706         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10707         (remote_supports_enable_disable_tracepoint)
10708         (remote_supports_string_tracing)
10709         (remote_can_run_breakpoint_commands, remote_trace_init)
10710         (remote_download_tracepoint, remote_can_download_tracepoint)
10711         (remote_download_trace_state_variable, remote_enable_tracepoint)
10712         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10713         (remote_trace_start, remote_get_trace_status)
10714         (remote_get_tracepoint_status, remote_trace_stop)
10715         (remote_trace_find, remote_get_trace_state_variable_value)
10716         (remote_save_trace_data, remote_get_raw_trace_data)
10717         (remote_set_disconnected_tracing, remote_core_of_thread)
10718         (remote_set_circular_trace_buffer, remote_traceframe_info)
10719         (remote_get_min_fast_tracepoint_insn_len)
10720         (remote_set_trace_buffer_size, remote_set_trace_notes)
10721         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10722         (remote_disable_btrace, remote_teardown_btrace)
10723         (remote_read_btrace, remote_btrace_conf)
10724         (remote_augmented_libraries_svr4_read, remote_load)
10725         (remote_pid_to_exec_file, remote_can_do_single_step)
10726         (remote_execution_direction, remote_thread_handle_to_thread_info):
10727         Refactor as methods of remote_target.
10728         (init_remote_ops, init_extended_remote_ops): Delete.
10729         (remote_can_async_p, remote_is_async_p, remote_async)
10730         (remote_thread_events, remote_upload_tracepoints)
10731         (remote_upload_trace_state_variables): Refactor as methods of
10732         remote_target.
10733         (_initialize_remote): Remove references to init_remote_ops and
10734         init_extended_remote_ops.
10735
10736         * remote-sim.c (gdbsim_target): New class.
10737         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10738         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10739         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10740         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10741         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10742         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10743         Refactor as methods of gdbsim_target.
10744         (gdbsim_ops): Now a gdbsim_target.
10745         (init_gdbsim_ops): Delete.
10746         (gdbsim_cntrl_c): Adjust.
10747         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10748
10749         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10750         (the_amd64_linux_nat_target): New.
10751         (amd64_linux_fetch_inferior_registers)
10752         (amd64_linux_store_inferior_registers): Refactor as methods of
10753         amd64_linux_nat_target.
10754         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10755         * i386-linux-nat.c: Don't include "linux-nat.h".
10756         (i386_linux_nat_target): New class.
10757         (the_i386_linux_nat_target): New.
10758         (i386_linux_fetch_inferior_registers)
10759         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10760         as methods of i386_linux_nat_target.
10761         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10762         * inf-child.c (inf_child_ops): Delete.
10763         (inf_child_fetch_inferior_registers)
10764         (inf_child_store_inferior_registers): Delete.
10765         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10766         methods of inf_child_target.
10767         (inf_child_target::supports_terminal_ours)
10768         (inf_child_target::terminal_init)
10769         (inf_child_target::terminal_inferior)
10770         (inf_child_target::terminal_ours_for_output)
10771         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10772         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10773         New.
10774         (inf_child_open, inf_child_disconnect, inf_child_close)
10775         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10776         (inf_child_post_startup_inferior, inf_child_can_run)
10777         (inf_child_pid_to_exec_file): Refactor as methods of
10778         inf_child_target.
10779         (inf_child_follow_fork): Delete.
10780         (inf_child_target::can_create_inferior)
10781         (inf_child_target::can_attach): New.
10782         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10783         (inf_child_target::has_stack, inf_child_target::has_registers)
10784         (inf_child_target::has_execution): New.
10785         (inf_child_fileio_open, inf_child_fileio_pwrite)
10786         (inf_child_fileio_pread, inf_child_fileio_fstat)
10787         (inf_child_fileio_close, inf_child_fileio_unlink)
10788         (inf_child_fileio_readlink, inf_child_use_agent)
10789         (inf_child_can_use_agent): Refactor as methods of
10790         inf_child_target.
10791         (return_zero, inf_child_target): Delete.
10792         (inf_child_target::inf_child_target): New.
10793         * inf-child.h: Include "target.h".
10794         (inf_child_target): Delete function prototype.
10795         (inf_child_target): New class.
10796         (inf_child_open_target, inf_child_mourn_inferior)
10797         (inf_child_maybe_unpush_target): Delete.
10798         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10799         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10800         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10801         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10802         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10803         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10804         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10805         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10806         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10807         methods of inf_ptrace_target.
10808         (inf_ptrace_target): Delete function.
10809         * inf-ptrace.h: Include "inf-child.h".
10810         (inf_ptrace_target): Delete function declaration.
10811         (inf_ptrace_target): New class.
10812         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10813         * linux-nat.c (linux_target): New.
10814         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10815         (linux_nat_target::~linux_nat_target): New.
10816         (linux_child_post_attach, linux_child_post_startup_inferior)
10817         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10818         (linux_child_remove_fork_catchpoint)
10819         (linux_child_insert_vfork_catchpoint)
10820         (linux_child_remove_vfork_catchpoint)
10821         (linux_child_insert_exec_catchpoint)
10822         (linux_child_remove_exec_catchpoint)
10823         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10824         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10825         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10826         (linux_nat_stopped_data_address)
10827         (linux_nat_stopped_by_sw_breakpoint)
10828         (linux_nat_supports_stopped_by_sw_breakpoint)
10829         (linux_nat_stopped_by_hw_breakpoint)
10830         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10831         (linux_nat_kill, linux_nat_mourn_inferior)
10832         (linux_nat_xfer_partial, linux_nat_thread_alive)
10833         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10834         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10835         (linux_child_static_tracepoint_markers_by_strid)
10836         (linux_nat_is_async_p, linux_nat_can_async_p)
10837         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10838         (linux_nat_supports_multi_process)
10839         (linux_nat_supports_disable_randomization, linux_nat_async)
10840         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10841         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10842         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10843         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10844         methods of linux_nat_target.
10845         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10846         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10847         parameter.
10848         (check_stopped_by_watchpoint): Adjust.
10849         (linux_xfer_partial): Delete.
10850         (linux_target_install_ops, linux_target, linux_nat_add_target):
10851         Delete.
10852         (linux_nat_target::linux_nat_target): New.
10853         * linux-nat.h: Include "inf-ptrace.h".
10854         (linux_nat_target): New.
10855         (linux_target, linux_target_install_ops, linux_nat_add_target):
10856         Delete function declarations.
10857         (linux_target): Declare global.
10858         * linux-thread-db.c (thread_db_target): New.
10859         (thread_db_target::thread_db_target): New.
10860         (thread_db_ops): Delete.
10861         (the_thread_db_target): New.
10862         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10863         (thread_db_update_thread_list, thread_db_pid_to_str)
10864         (thread_db_extra_thread_info)
10865         (thread_db_thread_handle_to_thread_info)
10866         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10867         (thread_db_resume): Refactor as methods of thread_db_target.
10868         (init_thread_db_ops): Delete.
10869         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10870         * x86-linux-nat.c: Don't include "linux-nat.h".
10871         (super_post_startup_inferior): Delete.
10872         (x86_linux_nat_target::~x86_linux_nat_target): New.
10873         (x86_linux_child_post_startup_inferior)
10874         (x86_linux_read_description, x86_linux_enable_btrace)
10875         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10876         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10877         methods of x86_linux_nat_target.
10878         (x86_linux_create_target): Delete.  Bits folded ...
10879         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10880         pointer.
10881         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10882         (x86_linux_nat_target): New class.
10883         (x86_linux_create_target): Delete.
10884         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10885         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10886         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10887         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10888         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10889         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10890         make extern.
10891         (x86_use_watchpoints): Delete.
10892         * x86-nat.h: Include "breakpoint.h" and "target.h".
10893         (x86_use_watchpoints): Delete.
10894         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10895         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10896         (x86_insert_watchpoint, x86_remove_watchpoint)
10897         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10898         (x86_stopped_by_hw_breakpoint): New declarations.
10899         (x86_nat_target): New template class.
10900
10901         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10902         (the_ppc_linux_nat_target): New.
10903         (ppc_linux_fetch_inferior_registers)
10904         (ppc_linux_can_use_hw_breakpoint)
10905         (ppc_linux_region_ok_for_hw_watchpoint)
10906         (ppc_linux_ranged_break_num_registers)
10907         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10908         (ppc_linux_insert_mask_watchpoint)
10909         (ppc_linux_remove_mask_watchpoint)
10910         (ppc_linux_can_accel_watchpoint_condition)
10911         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10912         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10913         (ppc_linux_watchpoint_addr_within_range)
10914         (ppc_linux_masked_watch_num_registers)
10915         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10916         (ppc_linux_read_description): Refactor as methods of
10917         ppc_linux_nat_target.
10918         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10919
10920         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10921         (procfs_target): New class.
10922         (the_procfs_target): New.
10923         (procfs_target): Delete function.
10924         (procfs_auxv_parse, procfs_attach, procfs_detach)
10925         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10926         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10927         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10928         (procfs_create_inferior, procfs_update_thread_list)
10929         (procfs_thread_alive, procfs_pid_to_str)
10930         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10931         (procfs_stopped_data_address, procfs_insert_watchpoint)
10932         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10933         (proc_find_memory_regions, procfs_info_proc)
10934         (procfs_make_note_section): Refactor as methods of procfs_target.
10935         (_initialize_procfs): Adjust.
10936         * sol-thread.c (sol_thread_target): New class.
10937         (sol_thread_ops): Now a sol_thread_target.
10938         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10939         (sol_thread_fetch_registers, sol_thread_store_registers)
10940         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10941         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10942         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10943         (init_sol_thread_ops): Delete.
10944         (_initialize_sol_thread): Adjust.  Remove references to
10945         init_sol_thread_ops and complete_target_initialization.
10946
10947         * windows-nat.c (windows_nat_target): New class.
10948         (windows_fetch_inferior_registers)
10949         (windows_store_inferior_registers, windows_resume, windows_wait)
10950         (windows_attach, windows_detach, windows_pid_to_exec_file)
10951         (windows_files_info, windows_create_inferior)
10952         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10953         (windows_close, windows_pid_to_str, windows_xfer_partial)
10954         (windows_get_tib_address, windows_get_ada_task_ptid)
10955         (windows_thread_name, windows_thread_alive): Refactor as
10956         windows_nat_target methods.
10957         (do_initial_windows_stuff): Adjust.
10958         (windows_target): Delete function.
10959         (_initialize_windows_nat): Adjust.
10960
10961         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10962         (darwin_mourn_inferior, darwin_kill_inferior)
10963         (darwin_create_inferior, darwin_attach, darwin_detach)
10964         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10965         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10966         (darwin_supports_multi_process): Refactor as darwin_nat_target
10967         methods.
10968         (darwin_resume_to, darwin_files_info): Delete.
10969         (_initialize_darwin_inferior): Rename to ...
10970         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10971         * darwin-nat.h: Include "inf-child.h".
10972         (darwin_nat_target): New class.
10973         (darwin_complete_target): Delete.
10974         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10975         (darwin_target): New.
10976         (i386_darwin_fetch_inferior_registers)
10977         (i386_darwin_store_inferior_registers): Refactor as methods of
10978         darwin_nat_target.
10979         (darwin_complete_target): Delete, with ...
10980         (_initialize_i386_darwin_nat): ... bits factored out here.
10981
10982         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10983         (the_alpha_linux_nat_target): New.
10984         (alpha_linux_register_u_offset): Refactor as
10985         alpha_linux_nat_target method.
10986         (_initialize_alpha_linux_nat): Adjust.
10987         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10988         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10989         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10990         methods of linux_nat_trad_target.
10991         (linux_trad_target): Delete.
10992         * linux-nat-trad.h (linux_trad_target): Delete function.
10993         (linux_nat_trad_target): New class.
10994         * mips-linux-nat.c (mips_linux_nat_target): New class.
10995         (super_fetch_registers, super_store_registers, super_close):
10996         Delete.
10997         (the_mips_linux_nat_target): New.
10998         (mips64_linux_regsets_fetch_registers)
10999         (mips64_linux_regsets_store_registers)
11000         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11001         (mips_linux_register_u_offset, mips_linux_read_description)
11002         (mips_linux_can_use_hw_breakpoint)
11003         (mips_linux_stopped_by_watchpoint)
11004         (mips_linux_stopped_data_address)
11005         (mips_linux_region_ok_for_hw_watchpoint)
11006         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11007         (mips_linux_close): Refactor as methods of mips_linux_nat.
11008         (_initialize_mips_linux_nat): Adjust to C++ification.
11009
11010         * aix-thread.c (aix_thread_target): New class.
11011         (aix_thread_ops): Now an aix_thread_target.
11012         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11013         (aix_thread_fetch_registers, aix_thread_store_registers)
11014         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11015         (aix_thread_thread_alive, aix_thread_pid_to_str)
11016         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11017         Refactor as methods of aix_thread_target.
11018         (init_aix_thread_ops): Delete.
11019         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11020         and complete_target_initialization.
11021         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11022         (rs6000_nat_target): New class.
11023         (the_rs6000_nat_target): New.
11024         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11025         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11026         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11027         (super_create_inferior): Delete.
11028         (_initialize_rs6000_nat): Adjust to C++ification.
11029
11030         * arm-linux-nat.c (arm_linux_nat_target): New class.
11031         (the_arm_linux_nat_target): New.
11032         (arm_linux_fetch_inferior_registers)
11033         (arm_linux_store_inferior_registers, arm_linux_read_description)
11034         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11035         (arm_linux_remove_hw_breakpoint)
11036         (arm_linux_region_ok_for_hw_watchpoint)
11037         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11038         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11039         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11040         arm_linux_nat_target.
11041         (_initialize_arm_linux_nat): Adjust to C++ification.
11042
11043         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11044         (the_aarch64_linux_nat_target): New.
11045         (aarch64_linux_fetch_inferior_registers)
11046         (aarch64_linux_store_inferior_registers)
11047         (aarch64_linux_child_post_startup_inferior)
11048         (aarch64_linux_read_description)
11049         (aarch64_linux_can_use_hw_breakpoint)
11050         (aarch64_linux_insert_hw_breakpoint)
11051         (aarch64_linux_remove_hw_breakpoint)
11052         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11053         (aarch64_linux_region_ok_for_hw_watchpoint)
11054         (aarch64_linux_stopped_data_address)
11055         (aarch64_linux_stopped_by_watchpoint)
11056         (aarch64_linux_watchpoint_addr_within_range)
11057         (aarch64_linux_can_do_single_step): Refactor as methods of
11058         aarch64_linux_nat_target.
11059         (super_post_startup_inferior): Delete.
11060         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11061
11062         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11063         (the_hppa_linux_nat_target): New.
11064         (hppa_linux_fetch_inferior_registers)
11065         (hppa_linux_store_inferior_registers): Refactor as methods of
11066         hppa_linux_nat_target.
11067         (_initialize_hppa_linux_nat): Adjust to C++ification.
11068
11069         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11070         (the_ia64_linux_nat_target): New.
11071         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11072         (ia64_linux_stopped_data_address)
11073         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11074         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11075         ia64_linux_nat_target methods.
11076         (super_xfer_partial): Delete.
11077         (_initialize_ia64_linux_nat): Adjust to C++ification.
11078
11079         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11080         (the_m32r_linux_nat_target): New.
11081         (m32r_linux_fetch_inferior_registers)
11082         (m32r_linux_store_inferior_registers): Refactor as
11083         m32r_linux_nat_target methods.
11084         (_initialize_m32r_linux_nat): Adjust to C++ification.
11085
11086         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11087         (the_m68k_linux_nat_target): New.
11088         (m68k_linux_fetch_inferior_registers)
11089         (m68k_linux_store_inferior_registers): Refactor as
11090         m68k_linux_nat_target methods.
11091         (_initialize_m68k_linux_nat): Adjust to C++ification.
11092
11093         * s390-linux-nat.c (s390_linux_nat_target): New class.
11094         (the_s390_linux_nat_target): New.
11095         (s390_linux_fetch_inferior_registers)
11096         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11097         (s390_insert_watchpoint, s390_remove_watchpoint)
11098         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11099         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11100         (s390_auxv_parse, s390_read_description): Refactor as methods of
11101         s390_linux_nat_target.
11102         (_initialize_s390_nat): Adjust to C++ification.
11103
11104         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11105         (the_sparc_linux_nat_target): New.
11106         (_initialize_sparc_linux_nat): Adjust to C++ification.
11107         * sparc-nat.c (sparc_fetch_inferior_registers)
11108         (sparc_store_inferior_registers): Remove target_ops parameter.
11109         * sparc-nat.h (sparc_fetch_inferior_registers)
11110         (sparc_store_inferior_registers): Remove target_ops parameter.
11111         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11112         (the_sparc64_linux_nat_target): New.
11113         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11114
11115         * spu-linux-nat.c (spu_linux_nat_target): New class.
11116         (the_spu_linux_nat_target): New.
11117         (spu_child_post_startup_inferior, spu_child_post_attach)
11118         (spu_child_wait, spu_fetch_inferior_registers)
11119         (spu_store_inferior_registers, spu_xfer_partial)
11120         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11121         methods.
11122         (_initialize_spu_nat): Adjust to C++ification.
11123
11124         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11125         (the_tilegx_linux_nat_target): New.
11126         (fetch_inferior_registers, store_inferior_registers):
11127         Refactor as methods.
11128         (_initialize_tile_linux_nat): Adjust to C++ification.
11129
11130         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11131         (the_xtensa_linux_nat_target): New.
11132         (xtensa_linux_fetch_inferior_registers)
11133         (xtensa_linux_store_inferior_registers): Refactor as
11134         xtensa_linux_nat_target methods.
11135         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11136
11137         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11138         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11139         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11140         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11141         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11142         (fbsd_stopped_by_sw_breakpoint)
11143         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11144         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11145         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11146         (fbsd_post_startup_inferior, fbsd_post_attach)
11147         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11148         (fbsd_set_syscall_catchpoint)
11149         (super_xfer_partial, super_resume, super_wait)
11150         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11151         (fbsd_handle_debug_trap): Remove target_ops parameter.
11152         (fbsd_nat_add_target): Delete.
11153         * fbsd-nat.h: Include "inf-ptrace.h".
11154         (fbsd_nat_add_target): Delete.
11155         (USE_SIGTRAP_SIGINFO): Define.
11156         (fbsd_nat_target): New class.
11157
11158         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11159         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11160         (amd64bsd_target): Delete.
11161         * amd64-bsd-nat.h: New file.
11162         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11163         "x86-bsd-nat.h".
11164         (amd64_fbsd_nat_target): New class.
11165         (the_amd64_fbsd_nat_target): New.
11166         (amd64fbsd_read_description): Refactor as method of
11167         amd64_fbsd_nat_target.
11168         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11169         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11170         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11171         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11172         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11173         (i386bsd_target): Delete.
11174         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11175         (i386bsd_fetch_inferior_registers)
11176         (i386bsd_store_inferior_registers): Declare.
11177         (i386_bsd_nat_target): New class.
11178         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11179         (the_i386_fbsd_nat_target): New.
11180         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11181         i386_fbsd_nat_target methods.
11182         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11183         (_initialize_i386fbsd_nat): Adjust to C++ification.
11184         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11185         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11186         (_initialize_x86_bsd_nat): Adjust to C++ification.
11187         * x86-bsd-nat.h: Include "x86-nat.h".
11188         (x86bsd_target): Delete declaration.
11189         (x86bsd_nat_target): New class.
11190
11191         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11192         (the_aarch64_fbsd_nat_target): New.
11193         (aarch64_fbsd_fetch_inferior_registers)
11194         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11195         aarch64_fbsd_nat_target.
11196         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11197         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11198         (the_alpha_bsd_nat_target): New.
11199         (alphabsd_fetch_inferior_registers)
11200         (alphabsd_store_inferior_registers): Refactor as
11201         alpha_bsd_nat_target methods.
11202         (_initialize_alphabsd_nat): Refactor as methods of
11203         alpha_bsd_nat_target.
11204         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11205         (the_amd64_nbsd_nat_target): New.
11206         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11207         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11208         (the_amd64_obsd_nat_target): New.
11209         (_initialize_amd64obsd_nat): Adjust to C++ification.
11210         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11211         (the_arm_fbsd_nat_target): New.
11212         (arm_fbsd_fetch_inferior_registers)
11213         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11214         (_initialize_arm_fbsd_nat): Refactor as methods of
11215         arm_fbsd_nat_target.
11216         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11217         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11218         (the_arm_netbsd_nat_target): New.
11219         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11220         arm_netbsd_nat_target.
11221         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11222         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11223         (the_hppa_nbsd_nat_target): New.
11224         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11225         hppa_nbsd_nat_target methods.
11226         (_initialize_hppanbsd_nat): Adjust to C++ification.
11227         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11228         (the_hppa_obsd_nat_target): New.
11229         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11230         methods of hppa_obsd_nat_target.
11231         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11232         add_target.
11233         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11234         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11235         add_target.
11236         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11237         (_initialize_i386obsd_nat): Use add_target.
11238         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11239         (the_m68k_bsd_nat_target): New.
11240         (m68kbsd_fetch_inferior_registers)
11241         (m68kbsd_store_inferior_registers): Refactor as methods of
11242         m68k_bsd_nat_target.
11243         (_initialize_m68kbsd_nat): Adjust to C++ification.
11244         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11245         (the_mips_fbsd_nat_target): New.
11246         (mips_fbsd_fetch_inferior_registers)
11247         (mips_fbsd_store_inferior_registers): Refactor as methods of
11248         mips_fbsd_nat_target.
11249         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11250         add_target.
11251         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11252         (the_mips_nbsd_nat_target): New.
11253         (mipsnbsd_fetch_inferior_registers)
11254         (mipsnbsd_store_inferior_registers): Refactor as methods of
11255         mips_nbsd_nat_target.
11256         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11257         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11258         (the_mips64_obsd_nat_target): New.
11259         (mips64obsd_fetch_inferior_registers)
11260         (mips64obsd_store_inferior_registers): Refactor as methods of
11261         mips64_obsd_nat_target.
11262         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11263         add_target.
11264         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11265         nbsd_nat_target.
11266         * nbsd-nat.h: Include "inf-ptrace.h".
11267         (nbsd_nat_target): New class.
11268         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11269         (obsd_wait): Refactor as methods of obsd_nat_target.
11270         (obsd_add_target): Delete.
11271         * obsd-nat.h: Include "inf-ptrace.h".
11272         (obsd_nat_target): New class.
11273         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11274         (the_ppc_fbsd_nat_target): New.
11275         (ppcfbsd_fetch_inferior_registers)
11276         (ppcfbsd_store_inferior_registers): Refactor as methods of
11277         ppc_fbsd_nat_target.
11278         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11279         add_target.
11280         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11281         (the_ppc_nbsd_nat_target): New.
11282         (ppcnbsd_fetch_inferior_registers)
11283         (ppcnbsd_store_inferior_registers): Refactor as methods of
11284         ppc_nbsd_nat_target.
11285         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11286         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11287         (the_ppc_obsd_nat_target): New.
11288         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11289         methods of ppc_obsd_nat_target.
11290         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11291         add_target.
11292         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11293         (the_sh_nbsd_nat_target): New.
11294         (shnbsd_fetch_inferior_registers)
11295         (shnbsd_store_inferior_registers): Refactor as methods of
11296         sh_nbsd_nat_target.
11297         (_initialize_shnbsd_nat): Adjust to C++ification.
11298         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11299         (inf_ptrace_xfer_partial): Delete.
11300         (sparc_xfer_partial, sparc_target): Delete.
11301         * sparc-nat.h (sparc_fetch_inferior_registers)
11302         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11303         (sparc_target): Delete function declaration.
11304         (sparc_target): New template class.
11305         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11306         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11307         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11308         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11309         add_target.
11310         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11311         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11312         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11313         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11314         add_target.
11315         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11316         (the_vax_bsd_nat_target): New.
11317         (vaxbsd_fetch_inferior_registers)
11318         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11319         methods.
11320         (_initialize_vaxbsd_nat): Adjust to C++ification.
11321
11322         * bsd-kvm.c (bsd_kvm_target): New class.
11323         (bsd_kvm_ops): Now a bsd_kvm_target.
11324         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11325         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11326         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11327         bsd_kvm_target.
11328         (bsd_kvm_return_one): Delete.
11329         (bsd_kvm_add_target): Adjust to C++ification.
11330
11331         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11332         (nto_procfs_target_procfs): New classes.
11333         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11334         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11335         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11336         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11337         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11338         (procfs_remove_hw_breakpoint, procfs_resume)
11339         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11340         (procfs_kill_inferior, procfs_store_registers)
11341         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11342         as methods of nto_procfs_target.
11343         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11344         (nto_native_ops): Delete.
11345         (procfs_open, procfs_native_open): Delete.
11346         (nto_native_ops): Now an nto_procfs_target_native.
11347         (init_procfs_targets): Adjust to C++ification.
11348         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11349         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11350         Refactor as methods of nto_procfs_target.
11351
11352         * go32-nat.c (go32_nat_target): New class.
11353         (the_go32_nat_target): New.
11354         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11355         (go32_store_registers, go32_xfer_partial, go32_files_info)
11356         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11357         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11358         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11359         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11360         (go32_target): Delete.
11361         (_initialize_go32_nat): Adjust to C++ification.
11362
11363         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11364         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11365         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11366         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11367         gnu_nat_target.
11368         (gnu_target): Delete.
11369         * gnu-nat.h (gnu_target): Delete.
11370         (gnu_nat_target): New class.
11371         * i386-gnu-nat.c (gnu_base_target): New.
11372         (i386_gnu_nat_target): New class.
11373         (the_i386_gnu_nat_target): New.
11374         (_initialize_i386gnu_nat): Adjust to C++ification.
11375
11376 2018-05-02  Pedro Alves  <palves@redhat.com>
11377
11378         * bfd-target.c (target_bfd_xclose): Rename to ...
11379         (target_bfd_close): ... this.
11380         (target_bfd_reopen): Adjust.
11381         * target.c (target_close): Remove references to to_xclose.
11382         * target.h (target_ops::to_xclose): Delete.
11383         (target_ops::to_close): Update comments.
11384
11385 2018-05-02  Pedro Alves  <palves@redhat.com>
11386
11387         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11388         "linux-nat.h".
11389         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11390         * inf-ptrace.c (inf_ptrace_register_u_offset)
11391         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11392         (inf_ptrace_store_register, inf_ptrace_store_registers)
11393         (inf_ptrace_trad_target): Move to ...
11394         * linux-nat-trad.c: ... this new file.
11395         * linux-nat-trad.h: New file.
11396         * linux-nat.c (linux_target_install_ops): Make extern.
11397         (linux_trad_target): Delete.
11398         * linux-nat.h (linux_trad_target): Delete declaration.
11399         (linux_target_install_ops): Declare.
11400         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11401         "linux-nat.h".
11402
11403 2018-05-02  Pedro Alves  <palves@redhat.com>
11404
11405         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11406         procfs_target/add_target here.
11407         * procfs.c (procfs_target): Make static.
11408         (_initialize_procfs): Call add_target here.
11409         * procfs.h (struct target_ops): Remove forward declaration.
11410         (procfs_target): Remove declaration.
11411         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11412
11413 2018-05-02  Pedro Alves  <palves@redhat.com>
11414
11415         * procfs.c (procfs_stopped_by_watchpoint)
11416         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11417         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11418         Forward declare.
11419         (procfs_use_watchpoints): Delete, move contents...
11420         (procfs_target): ... here.
11421         * procfs.h (procfs_use_watchpoints): Delete declaration.
11422         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11423         procfs_use_watchpoints.
11424         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11425         procfs_use_watchpoints.
11426
11427 2018-05-02  Tom Tromey  <tom@tromey.com>
11428
11429         PR python/20084:
11430         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11431         and var_zuinteger_unlimited.
11432         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11433         and PARAM_ZUINTEGER_UNLIMITED.
11434         (set_parameter_value): Handle var_zuinteger and
11435         var_zuinteger_unlimited.
11436         (add_setshow_generic): Likewise.
11437         (parmpy_init): Likewise.
11438
11439 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11440
11441         PR rust/23124
11442         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11443         pointer is not null before dereferencing it.
11444
11445 2018-04-30  Tom Tromey  <tom@tromey.com>
11446
11447         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11448         is_mi_like_p.
11449
11450 2018-04-30  Tom Tromey  <tom@tromey.com>
11451
11452         * breakpoint.c (mention): Remove use of is_mi_like_p.
11453         (print_mention_ranged_breakpoint): Likewise.
11454         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11455         of is_mi_like_p.
11456
11457 2018-04-30  Tom Tromey  <tom@tromey.com>
11458
11459         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11460
11461 2018-04-30  Tom Tromey  <tom@tromey.com>
11462
11463         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11464         (info_spu_event_command): Remove some uses of is_mi_like_p.
11465
11466 2018-04-30  Tom Tromey  <tom@tromey.com>
11467
11468         * python/py-framefilter.c (py_print_single_arg)
11469         (enumerate_locals, py_print_args, py_print_frame): Remove some
11470         uses of is_mi_like_p.
11471
11472 2018-04-30  Tom Tromey  <tom@tromey.com>
11473
11474         * ui-out.c: Update.
11475         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11476         * ui-out.h (ui_out::is_mi_like_p): Now const.
11477         (ui_out::do_is_mi_like_p): Now const.
11478         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11479
11480 2018-04-30  Tom Tromey  <tom@tromey.com>
11481
11482         * varobj.c (varobj_set_visualizer): Use new_reference.
11483         * python/python.c (gdbpy_decode_line): Use new_reference.
11484         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11485         new_reference.
11486
11487 2018-04-30  Tom Tromey  <tom@tromey.com>
11488
11489         * varobj.c (install_new_value): Use new_reference.
11490         * value.h (value_incref): Return void.  Swap intro comment with
11491         value_decref.
11492         * value.c (set_value_parent): Use new_reference.
11493         (value_incref): Return void.  Update intro comment.
11494         (release_value): Use new_reference.
11495         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11496
11497 2018-04-30  Tom Tromey  <tom@tromey.com>
11498
11499         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11500         * gdb_bfd.h (new_bfd_ref): Remove.
11501         (gdb_bfd_open): Update comment.
11502         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11503         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11504         (gdb_bfd_fdopenr): Use new_reference.
11505         * exec.c (exec_file_attach): Use new_reference.
11506
11507 2018-04-30  Tom Tromey  <tom@tromey.com>
11508
11509         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11510         method.
11511
11512 2018-04-30  Tom Tromey  <tom@tromey.com>
11513
11514         * jit.c (jit_read_code_entry): Use type_align.
11515         * i386-tdep.c (i386_gdbarch_init): Don't call
11516         set_gdbarch_long_long_align_bit.
11517         * gdbarch.sh: Remove long_long_align_bit.
11518         * gdbarch.c, gdbarch.h: Rebuild.
11519         * arc-tdep.c (arc_type_align): New function.
11520         (arc_gdbarch_init): Use arc_type_align.  Don't call
11521         set_gdbarch_long_long_align_bit.
11522
11523 2018-04-30  Tom Tromey  <tom@tromey.com>
11524
11525         * rust-lang.c (rust_type_alignment): Remove.
11526         (rust_composite_type): Use type_align.
11527
11528 2018-04-30  Tom Tromey  <tom@tromey.com>
11529
11530         * NEWS: Mention Type.align.
11531         * python/py-type.c (typy_get_alignof): New function.
11532         (type_object_getset): Add "alignof".
11533
11534 2018-04-30  Tom Tromey  <tom@tromey.com>
11535
11536         PR exp/17095:
11537         * NEWS: Update.
11538         * std-operator.def (UNOP_ALIGNOF): New operator.
11539         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11540         New.
11541         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11542         * c-lang.c (c_op_print_tab): Add alignof.
11543         * c-exp.y (ALIGNOF): New token.
11544         (exp): Add "ALIGNOF" production.
11545         (ident_tokens): Add _Alignof and alignof.
11546
11547 2018-04-30  Tom Tromey  <tom@tromey.com>
11548
11549         * i386-tdep.c (i386_type_align): New function.
11550         (i386_gdbarch_init): Update.
11551         * gdbarch.sh (type_align): New method.
11552         * gdbarch.c, gdbarch.h: Rebuild.
11553         * arch-utils.h (default_type_align): Declare.
11554         * arch-utils.c (default_type_align): New function.
11555         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11556         (struct type) <align_log2>: New field.
11557         <instance_flags>: Now a bitfield.
11558         (TYPE_RAW_ALIGN): New macro.
11559         (type_align, type_raw_align, set_type_align): Declare.
11560         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11561         functions.
11562         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11563         (get_alignment, maybe_set_alignment): New functions.
11564         (read_structure_type, read_enumeration_type, read_array_type)
11565         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11566         (read_subrange_type, read_base_type): Set type alignment.
11567
11568 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11569
11570         * dwarf2read.c (read_index_from_section): Use bool.
11571
11572 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11573
11574         PR gdb/22950
11575         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11576         with #ifdef.
11577
11578 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11579
11580         PR build/22873
11581         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11582         last step, and do it atomically.
11583
11584 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11585
11586         * compile/compile-c-types.c (convert_int, convert_float):
11587         Update for C FE v1.
11588
11589 2018-04-27  Tom Tromey  <tom@tromey.com>
11590
11591         PR rust/22545:
11592         * rust-lang.c (rust_inclusive_range_type_p): New function.
11593         (rust_range): Handle inclusive ranges.
11594         (rust_compute_range): Likewise.
11595         * rust-exp.y (struct rust_op) <inclusive>: New field.
11596         (DOTDOTEQ): New constant.
11597         (range_expr): Add "..=" productions.
11598         (operator_tokens): Add "..=" token.
11599         (ast_range): Add "inclusive" parameter.
11600         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11601         ranges.
11602         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11603         bounds values.
11604         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11605         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11606         Update comments.
11607         * expprint.c (print_subexp_standard): Handle new bounds values.
11608         (dump_subexp_body_standard): Likewise.
11609
11610 2018-04-27  Tom Tromey  <tom@tromey.com>
11611
11612         * configure: Rebuild.
11613         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11614         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11615         "OVERRIDE".
11616         (class symbol_needs_eval_context): Likewise.
11617         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11618         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11619         "virtual".
11620         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11621         "override".
11622         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11623         * aarch64-tdep.c (instruction_reader::read): Use "override".
11624         (instruction_reader_test::read): Likewise.
11625         * arm-tdep.c (instruction_reader::read): Use "override".
11626         (instruction_reader_thumb::read): Likewise.
11627
11628 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11629
11630         PR remote/9665
11631         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11632         instead of remote_send.
11633         (remote_send): Remove.
11634
11635 2018-04-26  Pedro Alves  <palves@redhat.com>
11636
11637         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11638         find_function_start_sal instead of find_pc_line.
11639
11640 2018-04-26  Pedro Alves  <palves@redhat.com>
11641
11642         * breakpoint.c (set_breakpoint_location_function): Handle
11643         mst_data_gnu_ifunc.
11644         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11645         * elfread.c (elf_symtab_read): Give data symbols with
11646         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11647         (elf_rel_plt_read): Update comment.
11648         * linespec.c (convert_linespec_to_sals): Handle
11649         mst_data_gnu_ifunc.
11650         (minsym_found): Handle mst_data_gnu_ifunc.
11651         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11652         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11653         * parse.c (find_minsym_type_and_address): Handle
11654         mst_data_gnu_ifunc.
11655         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11656         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11657         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11658         comment.
11659         <mst_data_gnu_ifunc>: New enumerator.
11660
11661 2018-04-26  Pedro Alves  <palves@redhat.com>
11662
11663         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11664         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11665         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11666         Handle it.
11667         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11668         (lookup_minimal_symbol_by_pc): Adjust.
11669         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11670         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11671         * minsyms.h (lookup_msym_prefer): New enum.
11672         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11673         parameter by a lookup_msym_prefer parameter.
11674
11675 2018-04-26  Pedro Alves  <palves@redhat.com>
11676
11677         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11678         ends in "@plt" instead of looking at the symbol's section.
11679
11680 2018-04-26  Pedro Alves  <palves@redhat.com>
11681
11682         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11683         all references.
11684         (find_pc_partial_function_gnu_ifunc): Rename to ...
11685         (find_pc_partial_function): ... this, and remove references to
11686         'is_gnu_ifunc_p'.
11687         (find_pc_partial_function): Delete old implementation.
11688         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11689
11690 2018-04-26  Pedro Alves  <palves@redhat.com>
11691
11692         * linespec.c (struct bound_minimal_symbol_search_key): New.
11693         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11694         skip first line if we found a GNU ifunc minimal symbol by name.
11695         (compare_msymbols): Change parameters to work with a destructured
11696         lhs minsym.
11697         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11698         functions.
11699
11700 2018-04-26  Pedro Alves  <palves@redhat.com>
11701
11702         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11703         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11704         address/name.
11705         (add_location_to_breakpoint): Store the minsym and the objfile in
11706         the breakpoint location.
11707         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11708         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11709         Record the minsym in the sal.
11710         * symtab.h (symtab_and_line) <msymbol>: New field.
11711
11712 2018-04-26  Pedro Alves  <palves@redhat.com>
11713
11714         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11715         unless we actually resolved the ifunc.
11716
11717 2018-04-26  Pedro Alves  <palves@redhat.com>
11718
11719         * c-exp.y (variable production): Prefer ifunc minsyms over
11720         regular function symbols.
11721         * symtab.c (find_gnu_ifunc): New function.
11722         * minsyms.h (lookup_msym_prefer): New enum.
11723         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11724         parameter by a lookup_msym_prefer parameter.
11725         * symtab.h (find_gnu_ifunc): New declaration.
11726
11727 2018-04-26  Pedro Alves  <palves@redhat.com>
11728
11729         * blockframe.c (find_gnu_ifunc_target_type): New function.
11730         (find_function_type): New.
11731         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11732         return a value with a memory address.
11733         (eval_call): For calls to GNU ifunc functions, try to find the
11734         type of the target function from the type that the resolver
11735         returns.
11736         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11737         symbols.
11738         * infcall.c (find_function_return_type): Delete.
11739         (find_function_addr): Add 'function_type' parameter.  For calls to
11740         GNU ifunc functions, try to find the type of the target function
11741         from the type that the resolver returns, and return it via
11742         FUNCTION_TYPE.
11743         (call_function_by_hand_dummy): Adjust to use the function type
11744         returned by find_function_addr.
11745         (find_function_addr): Add 'function_type' parameter and move
11746         description here.
11747         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11748         declarations.
11749
11750 2018-04-26  Pedro Alves  <palves@redhat.com>
11751
11752         * c-exp.y (variable production): Skip finding an alias for ifunc
11753         symbols.
11754
11755 2018-04-26  Pedro Alves  <palves@redhat.com>
11756
11757         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11758
11759 2018-04-25  Pedro Alves  <palves@redhat.com>
11760
11761         * infcmd.c (kill_command): Print the pid as string, not the whole
11762         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11763         message.
11764         * remote.c (remote_detach_1): Print the pid as string, not the
11765         whole thread's ptid.
11766
11767 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11768             Sergio Durigan Junior  <sergiodj@redhat.com>
11769             Pedro Alves  <palves@redhat.com>
11770
11771         * infcmd.c (kill_command): Print message when inferior has
11772         been killed.
11773         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11774         '1'.
11775         (add_inferior): Improve message printed when
11776         'print_inferior_events' is on.
11777         (exit_inferior): Remove message printed when
11778         'print_inferior_events' is on.
11779         (detach_inferior): Improve message printed when
11780         'print_inferior_events' is on.
11781         (initialize_inferiors): Use 'add_inferior_silent' to set
11782         'current_inferior_'.
11783         * inferior.h (print_inferior_events): Declare here as
11784         'extern'.
11785         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11786         '[Detaching...]' messages when 'print_inferior_events' is on.
11787         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11788         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11789         'Detaching after fork from child...', replace it by '... from
11790         parent...'.
11791         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11792         prefix/suffix when printing 'Detaching...' messages.  Print
11793         them when 'print_inferior_events' is on.
11794         * remote.c (remote_detach_1): Print message when detaching
11795         from inferior and '!is_fork_parent'.
11796
11797 2018-04-24  Tom Tromey  <tom@tromey.com>
11798
11799         * cli-out.h: Reindent.
11800
11801 2018-04-24  Tom Tromey  <tom@tromey.com>
11802
11803         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11804         (cli_ui_out::do_field_string): Use fputs_filtered.
11805         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11806
11807 2018-04-23  Tom Tromey  <tom@tromey.com>
11808
11809         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11810         gdb::unique_xmalloc_ptr.
11811
11812 2018-04-23  Tom Tromey  <tom@tromey.com>
11813
11814         * configure: Rebuild.
11815
11816 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11817
11818         PR gdb/23095
11819         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11820         prepare_for_testing.  Set normal_bp to r_debug_state if target
11821         is bsd.
11822
11823 2018-04-21  Pedro Alves  <palves@redhat.com>
11824             Rajendra SY  <rajendra.sy@gmail.com>
11825
11826         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11827         * remote.c (extended_remote_attach): In all-stop mode, mark the
11828         thread as executing.
11829
11830 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11831
11832         * thread.c (thread_apply_all_command): Fix comment.
11833         (thread_command): Fix comment.
11834
11835 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11836
11837         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11838         parameter.
11839         * features/aarch64-core.c (create_feature_aarch64_core):
11840         Regenerate.
11841         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11842         Likewise.
11843         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11844         Likewise.
11845         * features/i386/32bit-avx512.c
11846         (create_feature_i386_32bit_avx512): Likewise.
11847         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11848         Likewise.
11849         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11850         Likewise.
11851         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11852         Likewise.
11853         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11854         Likewise.
11855         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11856         Likewise.
11857         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11858         Likewise.
11859         * features/i386/64bit-avx512.c
11860         (create_feature_i386_64bit_avx512): Likewise.
11861         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11862         Likewise.
11863         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11864         Likewise.
11865         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11866         Likewise.
11867         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11868         Likewise.
11869         * features/i386/64bit-segments.c
11870         (create_feature_i386_64bit_segments): Likewise.
11871         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11872         Likewise.
11873         * features/i386/x32-core.c
11874         (create_feature_i386_x32_core): Likewise.
11875         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11876         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11877         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11878         * target-descriptions.c: In generated code, don't pass xml
11879         filename.
11880
11881 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11882
11883         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11884         (print_xml_feature::visit_post): Likewise.
11885         (print_xml_feature::visit): Likewise.
11886         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11887         (print_xml_feature): Add new class.
11888         * regformats/regdat.sh: Null xmltarget on feature targets.
11889         * target-descriptions.c (struct target_desc): Add xmltarget.
11890         (maintenance_check_tdesc_xml_convert): Add unittest function.
11891         (tdesc_get_features_xml): Add function to get xml.
11892         (maintenance_check_xml_descriptions): Test xml generation.
11893         * xml-tdesc.c (string_read_description_xml): Add function.
11894         * xml-tdesc.h (string_read_description_xml): Add declaration.
11895
11896 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11897
11898         * features/Makefile: Add feature marker to targets with new style
11899         target descriptions.
11900         * regformats/aarch64.dat: Regenerate.
11901         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11902         * regformats/i386/amd64-avx-linux.dat: Likewise.
11903         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11904         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11905         * regformats/i386/amd64-linux.dat: Likewise.
11906         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11907         * regformats/i386/amd64.dat: Likewise.
11908         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11909         * regformats/i386/i386-avx-linux.dat: Likewise.
11910         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11911         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11912         * regformats/i386/i386-linux.dat: Likewise.
11913         * regformats/i386/i386-mmx-linux.dat: Likewise.
11914         * regformats/i386/i386-mpx-linux.dat: Likewise.
11915         * regformats/i386/i386.dat: Likewise.
11916         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11917         * regformats/i386/x32-avx-linux.dat: Likewise.
11918         * regformats/i386/x32-linux.dat: Likewise.
11919         * regformats/tic6x-c62x-linux.dat: Likewise.
11920         * regformats/tic6x-c64x-linux.dat: Likewise.
11921         * regformats/tic6x-c64xp-linux.dat: Likewise.
11922         * regformats/regdat.sh: Parse feature marker.
11923
11924 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11925
11926         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11927         (tdesc_osabi_name): Likewise.
11928         * target-descriptions.c (tdesc_architecture_name): Add new
11929         function.
11930         (tdesc_osabi_name): Likewise.
11931
11932 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11933
11934         * common/tdesc.c (tdesc_predefined_type): Move to here.
11935         (tdesc_named_type): Likewise.
11936         (tdesc_create_vector): Likewise.
11937         (tdesc_create_struct): Likewise.
11938         (tdesc_set_struct_size): Likewise.
11939         (tdesc_create_union): Likewise.
11940         (tdesc_create_flags): Likewise.
11941         (tdesc_create_enum): Likewise.
11942         (tdesc_add_field): Likewise.
11943         (tdesc_add_typed_bitfield): Likewise.
11944         (tdesc_add_bitfield): Likewise.
11945         (tdesc_add_flag): Likewise.
11946         (tdesc_add_enum_value): Likewise.
11947         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11948         (struct tdesc_type_vector): Likewise.
11949         (struct tdesc_type_field): Likewise.
11950         (struct tdesc_type_with_fields): Likewise.
11951         (tdesc_create_enum): Add declaration.
11952         (tdesc_add_typed_bitfield): Likewise.
11953         (tdesc_add_enum_value): Likewise.
11954         * target-descriptions.c (tdesc_type_field): Move from here.
11955         (tdesc_type_builtin): Likewise.
11956         (tdesc_type_vector): Likewise.
11957         (tdesc_type_with_fields): Likewise.
11958         (tdesc_predefined_types): Likewise.
11959         (tdesc_named_type): Likewise.
11960         (tdesc_create_vector): Likewise.
11961         (tdesc_create_struct): Likewise.
11962         (tdesc_set_struct_size): Likewise.
11963         (tdesc_create_union): Likewise.
11964         (tdesc_create_flags): Likewise.
11965         (tdesc_create_enum): Likewise.
11966         (tdesc_add_field): Likewise.
11967         (tdesc_add_typed_bitfield): Likewise.
11968         (tdesc_add_bitfield): Likewise.
11969         (tdesc_add_flag): Likewise.
11970         (tdesc_add_enum_value): Likewise.
11971         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11972         (tdesc_add_typed_bitfield): Likewise.
11973         (tdesc_add_enum_value): Likewise.
11974
11975 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11976
11977         * common/tdesc.c (tdesc_feature::accept): Move to here.
11978         (tdesc_feature::operator==): Likewise.
11979         (tdesc_create_reg): Likewise.
11980         * common/tdesc.h (tdesc_type_kind): Likewise.
11981         (struct tdesc_type): Likewise.
11982         (struct tdesc_feature): Likewise.
11983         * regformats/regdat.sh: Create a feature.
11984         * target-descriptions.c (tdesc_type_kind): Move from here.
11985         (tdesc_type): Likewise.
11986         (tdesc_type_up): Likewise.
11987         (tdesc_feature): Likewise.
11988         (tdesc_create_reg): Likewise.
11989
11990 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11991
11992         * Makefile.in: Add arch/tdesc.c
11993         * common/tdesc.c: New file.
11994         * common/tdesc.h (tdesc_element_visitor): Move to here.
11995         (tdesc_element): Likewise.
11996         (tdesc_reg): Likewise.
11997         (tdesc_reg_up): Likewise.
11998         * regformats/regdef.h (reg): Add offset to constructors.
11999         * target-descriptions.c (tdesc_element_visitor): Move from here.
12000         (tdesc_element): Likewise.
12001         (tdesc_reg): Likewise.
12002         (tdesc_reg_up): Likewise.
12003
12004 2018-04-17  Tom Tromey  <tom@tromey.com>
12005
12006         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12007         discriminant field.
12008
12009 2018-04-17  Tom Tromey  <tom@tromey.com>
12010
12011         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12012
12013 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12014
12015         * symtab.c (print_symbol_info): Skip printing filename and line
12016         number when `last' is NULL.
12017         (symtab_symbol_info): Use empty string instead of NULL for first
12018         invocation of print_symbol_info.
12019         (rbreak_command): Pass NULL to `last' parameter of
12020         print_symbol_info.
12021
12022 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12023
12024         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12025         instead of nullptr.
12026
12027 2018-04-16  Pedro Alves  <palves@redhat.com>
12028
12029         * MAINTAINERS (sh): Remove.
12030         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12031         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12032         (ALLDEPFILES): Remove sh64-tdep.c.
12033         * NEWS: Mentions that support for SH-5/SH64 is removed.
12034         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12035         (sh*-*-openbsd*): Ditto.
12036         (sh64-*-elf*): Remove.
12037         (sh*): Remove.
12038         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12039         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12040         * sh-tdep.c: No longer include "sh64-tdep.h".
12041         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12042         * sh64-tdep.c, sh64-tdep.h: Remove files.
12043
12044 2018-04-16  Pedro Alves  <palves@redhat.com>
12045
12046         * MAINTAINERS: Remove m88k.
12047         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12048         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12049         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12050         * NEWS: Mention that support for m88k was removed.
12051         * configure.host (m88*-*-*): Remove support.
12052         * configure.nat (m88k-*-*): Remove support.
12053         * configure.tgt (m88*-*-openbsd*): Remove.
12054         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12055
12056 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12057
12058         * configure.tgt (x86_tobjs): New variable.
12059         (amd64_tobjs, i386_tobjs): Use it.
12060
12061 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12062
12063         * symtab.c (print_symbol_info): Precede the symbol definition by
12064         the line number when available.
12065         * NEWS: Advertise this enhancement.
12066
12067 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12068
12069         * NEWS (New options): announce set/show record btrace cpu.
12070         * btrace.c: Include record-btrace.h.
12071         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12072         the vendor is unknown.
12073         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12074         Maybe overwrite the btrace configuration's cpu.
12075         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12076         (btrace_fetch): Add cpu parameter.  Update callers.
12077         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12078         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12079         errata workarounds if the vendor is unknown.
12080         * python/py-record-btrace.c: Include record-btrace.h.
12081         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12082         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12083         * record-btrace.c (record_btrace_cpu_state_kind): New.
12084         (record_btrace_cpu): New.
12085         (set_record_btrace_cpu_cmdlist): New.
12086         (record_btrace_get_cpu): New.
12087         (require_btrace_thread, record_btrace_info)
12088         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12089         (cmd_set_record_btrace_cpu_none): New.
12090         (cmd_set_record_btrace_cpu_auto): New.
12091         (cmd_set_record_btrace_cpu): New.
12092         (cmd_show_record_btrace_cpu): New.
12093         (_initialize_record_btrace): Initialize set/show record btrace cpu
12094         commands.
12095         * record-btrace.h (record_btrace_get_cpu): New.
12096
12097 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12098
12099         * record.c (set_record_command): Fix typo in message.
12100
12101 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12102
12103         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12104
12105 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12106
12107         * infrun.c (process_event_stop_test): Call
12108         gdbarch_in_indirect_branch_thunk.
12109         * gdbarch.sh (in_indirect_branch_thunk): New.
12110         * gdbarch.c: Regenerated.
12111         * gdbarch.h: Regenerated.
12112         * x86-tdep.h: New.
12113         * x86-tdep.c: New.
12114         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12115         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12116         (ALLDEPFILES): Add x86-tdep.c.
12117         * arch-utils.h (default_in_indirect_branch_thunk): New.
12118         * arch-utils.c (default_in_indirect_branch_thunk): New.
12119         * i386-tdep: Include x86-tdep.h.
12120         (i386_in_indirect_branch_thunk): New.
12121         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12122         function.
12123         * amd64-tdep: Include x86-tdep.h.
12124         (amd64_in_indirect_branch_thunk): New.
12125         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12126
12127 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12128
12129         PR gdb/23053
12130         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12131         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12132         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12133         regression.
12134
12135 2018-04-12  Tom Tromey  <tom@tromey.com>
12136
12137         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12138         (rust_evaluate_subexp): Likewise.
12139
12140 2018-04-12  Pedro Alves  <palves@redhat.com>
12141
12142         * procfs.c (procfs_detach): Make forward declaration's prototype
12143         match definition's protototype.
12144         (proc_get_LDT_entry): Remove stale do_cleanups call.
12145
12146 2018-04-12  Pedro Alves  <palves@redhat.com>
12147
12148         * target.h (target_ops::to_has_exited): Delete.
12149         (target_has_exited): Delete.
12150         * target-delegates.c: Regenerate.
12151
12152 2018-04-11  Pedro Alves  <palves@redhat.com>
12153
12154         * target.c (fileio_fh_t::t): Add comment.
12155         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12156         (target_fileio_close): Handle a NULL target.
12157         (invalidate_fileio_fh): New.
12158         (target_close): Call it.
12159         * remote.c (remote_hostio_send_command): No longer check whether
12160         remote_desc is open.
12161
12162 2018-04-11  Pedro Alves  <palves@redhat.com>
12163
12164         * target.c (fileio_fh_t): Make it a named struct instead of a
12165         typedef.
12166         (fileio_fh_t::is_closed): New method.
12167         (DEF_VEC_O (fileio_fh_t)): Remove.
12168         (fileio_fhandles): Now a std::vector.
12169         (is_closed_fileio_fh): Delete.
12170         (acquire_fileio_fd): Adjust.  Rename parameters.
12171         (release_fileio_fd): Adjust.
12172         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12173         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12174         (target_fileio_close): Adjust.
12175
12176 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12177
12178         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12179         index.
12180
12181 2018-04-10  Pedro Alves  <palves@redhat.com>
12182
12183         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12184         (scoped_finish_thread_state): New class.
12185         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12186         cleanup.
12187         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12188         (fetch_inferior_event, normal_stop): Likewise.
12189         * thread.c (finish_thread_state_cleanup): Delete.
12190
12191 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12192             Pedro Alves  <palves@redhat.com>
12193
12194         * value.c: Include "selftest.h" and "common/array-view.h".
12195         (struct range) <operator ==>: New.
12196         (test_ranges_contain): New.
12197         (check_ranges_vector): New.
12198         (test_insert_into_bit_range_vector): New.
12199         (_initialize_values): Register selftests.
12200         * common/array-view.h (operator==, operator!=): New.
12201
12202 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12203
12204         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12205         an iterator.
12206         * inline-frame.c: Include <algorithm>.
12207         (struct inline_state): Add constructor.
12208         (inline_state_s): Remove.
12209         (DEF_VEC_O(inline_state_s)): Remove.
12210         (inline_states): Change type to std::vector.
12211         (find_inline_frame_state): Adjust to std::vector.
12212         (allocate_inline_frame_state): Remove.
12213         (clear_inline_frame_state): Adjust to std::vector.
12214         (skip_inline_frames): Adjust to std::vector.
12215
12216 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12217
12218         * tracepoint.h (struct trace_state_variable): Add constructor.
12219         <name>: Change type to std::string.
12220         * tracepoint.c (tsv_s): Remove.
12221         (DEF_VEC_O(tsv_s)): Remove.
12222         (tvariables): Change to std::vector.
12223         (create_trace_state_variable): Adjust to std::vector.
12224         (find_trace_state_variable): Likewise.
12225         (find_trace_state_variable_by_number): Likewise.
12226         (delete_trace_state_variable): Likewise.
12227         (trace_variable_command): Adjust to std::string.
12228         (delete_trace_variable_command): Likewise.
12229         (tvariables_info_1): Adjust to std::vector.
12230         (save_trace_state_variables): Likewise.
12231         (start_tracing): Likewise.
12232         (merge_uploaded_trace_state_variables): Adjust to std::vector
12233         and std::string.
12234         * target.h (struct target_ops)
12235         <to_download_trace_state_variable>: Pass reference to
12236         trace_state_variable.
12237         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12238         * target-delegates.c: Re-generate.
12239         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12240         (mi_tsv_deleted): Likewise.
12241         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12242         * remote.c (remote_download_trace_state_variable): Change
12243         pointer to reference and adjust.
12244         * make-target-delegates (parse_argtypes): Handle references.
12245         (write_function_header): Likewise.
12246         (munge_type): Likewise.
12247
12248 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12249
12250         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12251         string_view-selftests.c.
12252         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12253         testsuite.
12254         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12255         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12256         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12257         * unittests/basic_string_view/element_access/char/1.cc:
12258         Likewise.
12259         * unittests/basic_string_view/element_access/char/empty.cc:
12260         Likewise.
12261         * unittests/basic_string_view/element_access/char/front_back.cc:
12262         Likewise.
12263         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12264         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12265         Likewise.
12266         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12267         Likewise.
12268         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12269         Likewise.
12270         * unittests/basic_string_view/operations/compare/char/1.cc:
12271         Likewise.
12272         * unittests/basic_string_view/operations/compare/char/13650.cc:
12273         Likewise.
12274         * unittests/basic_string_view/operations/copy/char/1.cc:
12275         Likewise.
12276         * unittests/basic_string_view/operations/data/char/1.cc:
12277         Likewise.
12278         * unittests/basic_string_view/operations/find/char/1.cc:
12279         Likewise.
12280         * unittests/basic_string_view/operations/find/char/2.cc:
12281         Likewise.
12282         * unittests/basic_string_view/operations/find/char/3.cc:
12283         Likewise.
12284         * unittests/basic_string_view/operations/find/char/4.cc:
12285         Likewise.
12286         * unittests/basic_string_view/operations/rfind/char/1.cc:
12287         Likewise.
12288         * unittests/basic_string_view/operations/rfind/char/2.cc:
12289         Likewise.
12290         * unittests/basic_string_view/operations/rfind/char/3.cc:
12291         Likewise.
12292         * unittests/basic_string_view/operations/substr/char/1.cc:
12293         Likewise.
12294         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12295         * unittests/string_view-selftests.c: New file.
12296
12297 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12298
12299         * unittests/basic_string_view/capacity/1.cc: New file.
12300         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12301         * unittests/basic_string_view/cons/char/1.cc: New file.
12302         * unittests/basic_string_view/cons/char/2.cc: New file.
12303         * unittests/basic_string_view/cons/char/3.cc: New file.
12304         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12305         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12306         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12307         * unittests/basic_string_view/element_access/char/1.cc: New file.
12308         * unittests/basic_string_view/element_access/char/2.cc: New file.
12309         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12310         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12311         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12312         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12313         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12314         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12315         * unittests/basic_string_view/include.cc: New file.
12316         * unittests/basic_string_view/inserters/char/1.cc: New file.
12317         * unittests/basic_string_view/inserters/char/2.cc: New file.
12318         * unittests/basic_string_view/inserters/char/3.cc: New file.
12319         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12320         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12321         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12322         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12323         * unittests/basic_string_view/literals/types.cc: New file.
12324         * unittests/basic_string_view/literals/values.cc: New file.
12325         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12326         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12327         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12328         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12329         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12330         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12331         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12332         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12333         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12334         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12335         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12336         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12337         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12338         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12339         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12340         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12341         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12342         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12343         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12344         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12345         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12346         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12347         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12348         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12349         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12350         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12351         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12352         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12353         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12354         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12355         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12356         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12357         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12358         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12359         * unittests/basic_string_view/operators/char/2.cc: New file.
12360         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12361         * unittests/basic_string_view/range_access/char/1.cc: New file.
12362         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12363         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12364         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12365         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12366         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12367         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12368         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12369         * unittests/basic_string_view/typedefs.cc: New file.
12370         * unittests/basic_string_view/types/1.cc: New file.
12371
12372 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12373
12374         * common/gdb_string_view.h: Remove libstdc++ implementation
12375         details, adjust to gdb reality.
12376         * common/gdb_string_view.tcc: Likewise.
12377         * cli/cli-script.c (struct string_view): Remove.
12378         (user_args) <m_args>: Change element type to gdb::string_view.
12379         (user_args::insert_args): Adjust.
12380
12381 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12382
12383         * common/gdb_string_view.h: New file.
12384         * common/gdb_string_view.tcc: New file.
12385
12386 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12387
12388         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12389         * configure: Re-generate.
12390
12391 2018-04-09  Pedro Alves  <palves@redhat.com>
12392
12393         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12394         (set_target_gdbarch): Call
12395         gdb::observers::architecture_changed.notify instead of
12396         observer_notify_architecture_changed.
12397
12398 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12399
12400         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12401         (do_restore_current_traceframe_cleanup): Remove.
12402         (restore_current_traceframe_cleanup_dtor): Remove.
12403         (make_cleanup_restore_current_traceframe): Remove.
12404         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12405         New.
12406         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12407         * infrun.c (fetch_inferior_event): Use
12408         scoped_restore_current_traceframe.
12409
12410 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12411
12412         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12413         Remove.
12414         <n_allocated_type_units>: Remove.
12415         <all_type_units>: Change to std::vector.
12416         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12417         to std::vector change.
12418         (dwarf2_per_objfile::get_cutu): Likewise.
12419         (dwarf2_per_objfile::get_tu): Likewise.
12420         (create_signatured_type_table_from_index): Likewise.
12421         (create_signatured_type_table_from_debug_names): Likewise.
12422         (dw2_symtab_iter_next): Likewise.
12423         (dw2_print_stats): Likewise.
12424         (dw2_expand_all_symtabs): Likewise.
12425         (dw2_expand_marked_cus): Likewise.
12426         (dw2_debug_names_iterator::next): Likewise.
12427         (dwarf2_initialize_objfile): Likewise.
12428         (add_signatured_type_cu_to_table): Likewise.
12429         (create_all_type_units): Likewise.
12430         (add_type_unit): Likewise.
12431         (struct tu_abbrev_offset): Add constructor.
12432         (build_type_psymtabs_1): Adjust to std::vector change.
12433         (print_tu_stats): Likewise.
12434         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12435         (write_debug_names): Likewise.
12436
12437 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12438
12439         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12440         Make an std::vector.
12441         <n_comp_units>: Remove.
12442         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12443         to std::vector change.
12444         (dwarf2_per_objfile::get_cutu): Likewise.
12445         (dwarf2_per_objfile::get_cu): Likewise.
12446         (create_cus_from_index): Likewise.
12447         (create_addrmap_from_index): Likewise.
12448         (create_addrmap_from_aranges): Likewise.
12449         (dwarf2_read_index): Likewise.
12450         (dw2_find_last_source_symtab): Likewise.
12451         (dw2_map_symtabs_matching_filename): Likewise.
12452         (dw2_symtab_iter_next): Likewise.
12453         (dw2_print_stats): Likewise.
12454         (dw2_expand_all_symtabs): Likewise.
12455         (dw2_expand_symtabs_with_fullname): Likewise.
12456         (dw2_expand_marked_cus): Likewise.
12457         (dw2_map_symbol_filenames): Likewise.
12458         (create_cus_from_debug_names): Likewise.
12459         (dwarf2_read_debug_names): Likewise.
12460         (dw2_debug_names_iterator::next): Likewise.
12461         (dwarf2_initialize_objfile): Likewise.
12462         (set_partial_user): Likewise.
12463         (dwarf2_build_psymtabs_hard): Likewise.
12464         (read_comp_units_from_section): Remove arguments, adjust to
12465         std::vector change.
12466         (create_all_comp_units): Adjust to std::vector and
12467         read_comp_units_from_section changes.
12468         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12469         change.
12470         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12471         (psyms_seen_size): Likewise.
12472         (write_gdbindex): Likewise.
12473         (write_debug_names): Likewise.
12474
12475 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12476
12477         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12478         with dwarf2_per_objfile.
12479         (create_cus_from_index): Likewise.
12480         (create_signatured_type_table_from_index): Likewise.
12481         (dwarf2_read_index): Likewise.
12482         (dwarf2_initialize_objfile): Likewise.
12483         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12484         per_cu rather than get_dwarf2_per_objfile.
12485
12486 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12487
12488         * dwarf2read.h (struct signatured_type): Forward declare.
12489         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12490         New methods.
12491         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12492         (dw2_get_cutu): ...this.
12493         (dwarf2_per_objfile::get_cu): Rename from...
12494         (dw2_get_cu): ...this.
12495         (dwarf2_per_objfile::get_tu): New.
12496         (create_addrmap_from_index): Adjust.
12497         (create_addrmap_from_aranges): Adjust.
12498         (dw2_find_last_source_symtab): Adjust.
12499         (dw2_map_symtabs_matching_filename): Adjust.
12500         (dw2_symtab_iter_next): Adjust.
12501         (dw2_print_stats): Adjust.
12502         (dw2_expand_all_symtabs): Adjust.
12503         (dw2_expand_symtabs_with_fullname): Adjust.
12504         (dw2_expand_marked_cus): Adjust.
12505         (dw_expand_symtabs_matching_file_matcher): Adjust.
12506         (dw2_map_symbol_filenames): Adjust.
12507         (dw2_debug_names_iterator::next): Adjust.
12508         (dwarf2_initialize_objfile): Adjust.
12509         (set_partial_user): Adjust.
12510         (dwarf2_build_psymtabs_hard): Adjust.
12511
12512 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12513
12514         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12515         Remove unused variables.
12516         (dw2_map_symtabs_matching_filename): Likewise.
12517         (dwarf2_record_block_ranges): Likewise.
12518         (dwarf2_read_addr_index): Likewise.
12519         (follow_die_offset): Likewise.
12520
12521 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12522
12523         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12524         to symbol_file_add_main.
12525
12526 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12527
12528         PR mi/22299
12529         * mi/mi-console.c (do_fputc_async_safe): New.
12530         (mi_console_file::write_async_safe): New.
12531         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12532         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12533         New.
12534         * ui-file.c (ui_file::putstrn): Adjust call to
12535         fputstrn_unfiltered.
12536         * utils.c (printchar): Replace do_fputs and do_fprintf
12537         parameters by do_fputc.
12538         (fputstr_filtered): Adjust call to printchar.
12539         (fputstr_unfiltered): Likewise.
12540         (fputstrn_filtered): Likewise.
12541         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12542         printchar.
12543         * utils.h (do_fputc_ftype): New typedef.
12544         (fputstrn_unfiltered): Add do_fputc parameter.
12545
12546 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12547
12548         * regformats/i386/i386-avx.dat: Remove.
12549
12550 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12551
12552         PR gdb/22979
12553         * amd64-tdep.c (amd64_none_init_abi): New function.
12554         (amd64_x32_none_init_abi): New function.
12555         (_initialize_amd64_tdep): Register handlers for x86-64 and
12556         x64_32 with GDB_OSABI_NONE.
12557         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12558         GDB_OSABI_NONE osabi.
12559
12560 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12561
12562         PR gdb/22980
12563         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12564         GDB_OSABI_NONE.
12565         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12566         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12567
12568 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12569
12570         * common/byte-vector.h (char_vector): New type.
12571         * target.h (target_read_alloc): Return
12572         gdb::optional<byte_vector>.
12573         (target_read_stralloc): Return gdb::optional<char_vector>.
12574         (target_get_osdata): Return gdb::optional<char_vector>.
12575         * target.c (target_read_alloc_1): Templatize.  Replacement
12576         manual memory management with vector.
12577         (target_read_alloc): Change return type, adjust.
12578         (target_read_stralloc): Change return type, adjust.
12579         (target_get_osdata): Change return type, adjust.
12580         * auxv.c (struct auxv_info) <length>: Remove.
12581         <data>: Change type to gdb::optional<byte_vector>.
12582         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12583         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12584         (target_auxv_search): Adjust.
12585         (fprint_target_auxv): Adjust.
12586         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12587         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12588         (linux_make_corefile_notes): Adjust.
12589         * osdata.c (get_osdata): Adjust.
12590         * remote.c (remote_get_threads_with_qxfer): Adjust.
12591         (remote_memory_map): Adjust.
12592         (remote_traceframe_info): Adjust.
12593         (btrace_read_config): Adjust.
12594         (remote_read_btrace): Adjust.
12595         (remote_pid_to_exec_file): Adjust.
12596         * solib-aix.c (solib_aix_get_library_list): Adjust.
12597         * solib-dsbt.c (decode_loadmap): Don't free buf.
12598         (dsbt_get_initial_loadmaps): Adjust.
12599         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12600         * solib-target.c (solib_target_current_sos): Adjust.
12601         * tracepoint.c (sdata_make_value): Adjust.
12602         * xml-support.c (xinclude_start_include): Adjust.
12603         (xml_fetch_content_from_file): Adjust.
12604         * xml-support.h (xml_fetch_another): Change return type.
12605         (xml_fetch_content_from_file): Change return type.
12606         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12607         * xml-tdesc.c (file_read_description_xml): Adjust.
12608         (fetch_available_features_from_target): Change return type.
12609         (target_fetch_description_xml): Adjust.
12610         (target_read_description_xml): Adjust.
12611
12612 2018-04-06  Tom Tromey  <tom@tromey.com>
12613
12614         * value.c (~value): Update.
12615         (struct value) <contents>: Now unique_xmalloc_ptr.
12616         (value_contents_bits_eq, allocate_value_contents)
12617         (value_contents_raw, value_contents_all_raw)
12618         (value_contents_for_printing, value_contents_for_printing_const)
12619         (set_value_enclosing_type): Update.
12620
12621 2018-04-06  Tom Tromey  <tom@tromey.com>
12622
12623         * value.c (range_s): Remove typedef, VEC.
12624         (struct range): Add operator<.
12625         (range_lessthan): Remove.
12626         (ranges_contain): Change type.
12627         (~value): Update.
12628         (struct value) <unavailable, optimized_out>: Now std::vector.
12629         (value_entirely_available)
12630         (value_entirely_covered_by_range_vector)
12631         (value_entirely_unavailable, value_entirely_optimized_out):
12632         Update.
12633         (insert_into_bit_range_vector): Change argument type.
12634         (find_first_range_overlap): Likewise.
12635         (struct ranges_and_idx, value_contents_bits_eq)
12636         (require_not_optimized_out, require_available): Update.
12637         (ranges_copy_adjusted): Change argument types.
12638         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12639
12640 2018-04-06  Tom Tromey  <tom@tromey.com>
12641
12642         * value.c (~value): Update.
12643         (struct value) <parent>: Now a value_ref_ptr.
12644         (value_parent, set_value_parent, value_address, value_copy):
12645         Update.
12646
12647 2018-04-06  Tom Tromey  <tom@tromey.com>
12648
12649         * value.c (struct value): Add constructor, destructor, and member
12650         initializers.
12651         (allocate_value_lazy, value_decref): Update.
12652
12653 2018-04-06  Tom Tromey  <tom@tromey.com>
12654
12655         * value.c (struct value) <released, next>: Remove.
12656         (all_values): Now a std::vector.
12657         (allocate_value_lazy): Update.
12658         (value_next): Remove.
12659         (value_mark, value_free_to_mark, release_value)
12660         (value_release_to_mark): Update.
12661
12662 2018-04-06  Tom Tromey  <tom@tromey.com>
12663
12664         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12665         (free_value_chain): Remove.
12666         * value.c (free_value_chain): Remove.
12667         (value_release_to_mark): Return a std::vector.
12668         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12669         std::vector.
12670         (check_condition): Update.
12671         * eval.c (fetch_subexp_value): Change "val_chain" to a
12672         std::vector.
12673         * breakpoint.c (update_watchpoint): Update.
12674         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12675
12676 2018-04-06  Tom Tromey  <tom@tromey.com>
12677
12678         * value.h (free_all_values): Remove.
12679         * value.c (free_all_values): Remove.
12680
12681 2018-04-06  Tom Tromey  <tom@tromey.com>
12682
12683         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12684         (value_history_chain, value_history_count): Remove.
12685         (value_history): New global.
12686         (record_latest_value, access_value_history, show_values)
12687         (preserve_values): Update.
12688
12689 2018-04-06  Tom Tromey  <tom@tromey.com>
12690
12691         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12692         * varobj.c (varobj_set_display_format, varobj_set_value)
12693         (install_default_visualizer, construct_visualizer)
12694         (install_new_value, ~varobj, varobj_get_value_type)
12695         (my_value_of_variable, varobj_editable_p): Update.
12696         * c-varobj.c (c_describe_child, c_value_of_variable)
12697         (cplus_number_of_children, cplus_describe_child): Update.
12698         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12699         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12700         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12701
12702 2018-04-06  Tom Tromey  <tom@tromey.com>
12703
12704         * printcmd.c (last_examine_address): Change type to
12705         value_ref_ptr.
12706         (do_examine, x_command): Update.
12707
12708 2018-04-06  Tom Tromey  <tom@tromey.com>
12709
12710         * value.c (release_value): Update.
12711         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12712         (struct bpstats) <val>: Now a value_ref_ptr.
12713         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12714         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12715         (~watchpoint, print_it_watchpoint, watch_command_1)
12716         (invalidate_bp_value_on_memory_change): Update.
12717
12718 2018-04-06  Tom Tromey  <tom@tromey.com>
12719
12720         * varobj.c (varobj_clear_saved_item)
12721         (update_dynamic_varobj_children, install_new_value, ~varobj):
12722         Update.
12723         * value.h (value_incref): Move declaration earlier.
12724         (value_decref): Rename from value_free.
12725         (struct value_ref_policy): New.
12726         (value_ref_ptr): New typedef.
12727         (struct value_deleter): Remove.
12728         (gdb_value_up): Remove typedef.
12729         (release_value): Change return type.
12730         (release_value_or_incref): Remove.
12731         * value.c (set_value_parent): Update.
12732         (value_incref): Change return type.
12733         (value_decref): Rename from value_free.
12734         (value_free_to_mark, free_all_values, free_value_chain): Update.
12735         (release_value): Return value_ref_ptr.
12736         (release_value_or_incref): Remove.
12737         (record_latest_value, set_internalvar, clear_internalvar):
12738         Update.
12739         * stack.c (info_frame_command): Don't call value_free.
12740         * python/py-value.c (valpy_dealloc, valpy_new)
12741         (value_to_value_object): Update.
12742         * printcmd.c (do_examine): Update.
12743         * opencl-lang.c (lval_func_free_closure): Update.
12744         * mi/mi-main.c (register_changed_p): Don't call value_free.
12745         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12746         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12747         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12748         value_free.
12749         * guile/scm-value.c (vlscm_free_value_smob)
12750         (vlscm_scm_from_value): Update.
12751         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12752         (frame_unwind_register_unsigned, get_frame_register_bytes)
12753         (put_frame_register_bytes): Don't call value_free.
12754         * findvar.c (address_from_register): Don't call value_free.
12755         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12756         * dwarf2loc.c (entry_data_value_free_closure)
12757         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12758         (dwarf2_evaluate_loc_desc_full): Update.
12759         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12760         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12761         (~watchpoint, watch_command_1)
12762         (invalidate_bp_value_on_memory_change): Update.
12763         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12764
12765 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12766
12767         PR gdb/23022
12768         * warning.m4: Add -Wno-error=deprecated-register.
12769         * configure: Re-generate.
12770
12771 2018-04-05  Tom Tromey  <tom@tromey.com>
12772
12773         * linespec.h: Remove include of "vec.h".
12774
12775 2018-04-05  Tom Tromey  <tom@tromey.com>
12776
12777         * linespec.c (typep): Remove typedef.
12778         (find_methods, find_superclass_methods): Take a std::vector.
12779         (find_method): Use std::vector.
12780
12781 2018-04-05  Tom Tromey  <tom@tromey.com>
12782
12783         * utils.c (compare_strings): Remove.
12784         * utils.h (compare_strings): Remove.
12785         * objc-lang.h (find_imps): Update.
12786         * objc-lang.c (find_methods): Take a std::vector.
12787         (uniquify_strings, find_imps): Likewise.
12788         * linespec.c (find_methods): Take a std::vector.
12789         (decode_objc): Use std::vector.
12790         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12791         a std::vector.
12792         (find_method, find_function_symbols): Use std::vector.
12793
12794 2018-04-05  Tom Tromey  <tom@tromey.com>
12795
12796         * completer.c (completion_tracker::completion_tracker): Remove
12797         cast.
12798         (completion_tracker::discard_completions): Likewise.
12799         * breakpoint.c (ambiguous_names_p): Remove cast.
12800         * ada-lang.c (_initialize_ada_language): Remove cast.
12801         * utils.h (streq): Update.
12802         (streq_hash): Add new declaration.
12803         * utils.c (streq): Return bool.
12804         (streq_hash): New function.
12805
12806 2018-04-05  Tom Tromey  <tom@tromey.com>
12807
12808         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12809         Remove a string copy.
12810
12811 2018-04-05  Tom Tromey  <tom@tromey.com>
12812
12813         * linespec.c (filter_results): Use std::vector.
12814         (decode_line_2, decode_line_full): Update.
12815
12816 2018-04-05  Tom Tromey  <tom@tromey.com>
12817
12818         * linespec.c (canonical_to_fullform): Return std::string.
12819         (filter_results): Update.
12820         (struct decode_line_2_item): Add constructor.
12821         <fullform, displayform>: Now std::string.
12822         (decode_line_2_compare_items): Now a std::sort comparator.
12823         (decode_line_2): Update.
12824
12825 2018-04-05  Tom Tromey  <tom@tromey.com>
12826
12827         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12828         (unexpected_linespec_error): Update.
12829         (linespec_parse_basic, parse_linespec): Update.
12830
12831 2018-04-05  Tom Tromey  <tom@tromey.com>
12832
12833         * linespec.c (linespec_parse_basic): Reindent.
12834
12835 2018-04-05  Tom Tromey  <tom@tromey.com>
12836
12837         * minsyms.h (iterate_over_minimal_symbols): Update.
12838         * minsyms.c (iterate_over_minimal_symbols): Take a
12839         gdb::function_view.
12840         * linespec.c (struct collect_minsyms): Remove.
12841         (compare_msyms): Now a std::sort comparator.
12842         (add_minsym): Add parameters.
12843         (search_minsyms_for_name): Update.  Use std::vector.
12844
12845 2018-04-03  Tom Tromey  <tom@tromey.com>
12846
12847         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12848         gdb::byte_vector.
12849
12850 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12851
12852         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12853
12854 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12855
12856         PR gdb/16959
12857         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12858         printing static type.
12859
12860 2018-04-01  Tom Tromey  <tom@tromey.com>
12861
12862         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12863         (rs6000_xfer_shared_libraries): Update.
12864
12865 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12866
12867         * common/gdb_vecs.h (char_ptr): Remove.
12868         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12869
12870 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12871
12872         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12873         with std::vector.
12874         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12875
12876 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12877
12878         * tracepoint.h (struct uploaded_tp): Initialize fields.
12879         <actions, step_actions, cmd_strings>: Change type to
12880         std::vector<char *>.
12881         * tracepoint.c (get_uploaded_tp): Allocate with new.
12882         (free_uploaded_tps): Free with delete.
12883         (parse_tracepoint_definition): Adjust to std::vector change.
12884         * breakpoint.c (read_uploaded_action): Likewise.
12885         (create_tracepoint_from_upload): Likewise.
12886         * ctf.c (ctf_write_uploaded_tp): Likewise.
12887         (SET_ARRAY_FIELD): Likewise.
12888         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12889
12890 2018-03-30  Tom Tromey  <tom@tromey.com>
12891
12892         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12893         std::unique_ptr.
12894         (svr4_keep_data_in_core): Update.
12895         (svr4_read_so_list): Update.
12896
12897 2018-03-30  Tom Tromey  <tom@tromey.com>
12898
12899         * windows-nat.c (handle_output_debug_string, handle_exception):
12900         Update.
12901         * target.h (target_read_string): Update.
12902         * target.c (target_read_string): Change "string" to
12903         unique_xmalloc_ptr.
12904         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12905         Update.
12906         * solib-frv.c (frv_current_sos): Update.
12907         * solib-dsbt.c (dsbt_current_sos): Update.
12908         * solib-darwin.c (darwin_current_sos): Update.
12909         * linux-thread-db.c (inferior_has_bug): Update.
12910         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12911         Update.  Remove alloca.
12912         * ada-lang.c (ada_main_name): Update.
12913
12914 2018-03-30  Tom Tromey  <tom@tromey.com>
12915
12916         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12917         (struct dwo_file_deleter): New.
12918         (dwo_file_up): New typedef.
12919         (open_and_init_dwo_file): Use dwo_file_up.
12920         (free_dwo_file_cleanup): Remove.
12921
12922 2018-03-30  Tom Tromey  <tom@tromey.com>
12923
12924         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12925         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12926
12927 2018-03-30  Tom Tromey  <tom@tromey.com>
12928
12929         * dwarf2read.c (class free_cached_comp_units): New class.
12930         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12931         (free_cached_comp_units): Remove function.
12932
12933 2018-03-30  Tom Tromey  <tom@tromey.com>
12934
12935         * utils.h (make_cleanup_unpush_target): Remove.
12936         * inf-ptrace.c (struct target_unpusher): New.
12937         (target_unpush_up) New typedef.
12938         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12939         target_unpush_up.
12940         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12941
12942 2018-03-27  Tom Tromey  <tom@tromey.com>
12943
12944         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12945
12946 2018-03-27  Pedro Alves  <palves@redhat.com>
12947             Tom Tromey  <tom@tromey.com>
12948
12949         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12950         destructor.  Now a class.
12951         (gdb_readline_wrapper_cleanup): Remove function.
12952         (gdb_readline_wrapper): Remove cleanups.
12953
12954 2018-03-27  Tom Tromey  <tom@tromey.com>
12955
12956         * typeprint.h (struct type_print_options) <local_typedefs,
12957         global_typedefs>: Remove "struct" keyword.
12958         (class typedef_hash_table): New class.
12959         (recursively_update_typedef_hash, add_template_parameters)
12960         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12961         (find_typedef_in_hash): Don't declare.
12962         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12963         (typedef_hash_table::recursively_update): Rename from
12964         recursively_update_typedef_hash.  Now a member.
12965         (typedef_hash_table::add_template_parameters): Rename from
12966         add_template_parameters.  Now a member.
12967         (typedef_hash_table::typedef_hash_table): Now a constructor;
12968         rename from create_typedef_hash.
12969         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12970         rename from free_typedef_hash.
12971         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12972         (do_free_global_table): Remove.
12973         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12974         from copy_type_recursive.
12975         (create_global_typedef_table): Remove.
12976         (typedef_hash_table::find_global_typedef): Now a member of
12977         typedef_hash_table.
12978         (typedef_hash_table::find_typedef): Rename from
12979         find_typedef_in_hash; now a member.
12980         (whatis_exp): Update.
12981         * extension.h (struct ext_lang_type_printers): Add constructor and
12982         destructor.
12983         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12984         declare.
12985         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12986         Now a constructor; rename from start_ext_lang_type_printers.
12987         (ext_lang_type_printers): Now a destructor; rename from
12988         free_ext_lang_type_printers.
12989         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12990         Update.
12991         (c_type_print_base_struct_union): Update.  Remove cleanups.
12992
12993 2018-03-27  Tom Tromey  <tom@tromey.com>
12994
12995         * dwarf-index-write.c: Include <cmath>.
12996
12997 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12998
12999         * NEWS: Add entry describing new "set|show varsize-limit" command.
13000         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13001         command.
13002         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13003         "set variable".
13004
13005 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13006
13007         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13008         dwarf-index-write.c
13009         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13010         * dwarf-index-common.c: New file.
13011         * dwarf-index-common.h: New file.
13012         * dwarf-index-write.c: New file.
13013         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13014         (struct dwarf2_section_info): Move from here.
13015         (dwarf2_section_info_def): Likewise.
13016         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13017         (offset_type): Likewise.
13018         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13019         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13020         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13021         (byte_swap): Likewise.
13022         (MAYBE_SWAP): Likewise.
13023         (dwarf2_per_cu_ptr): Likewise.
13024         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13025         (struct tu_stats): Likewise.
13026         (struct dwarf2_per_objfile): Likewise.
13027         (struct dwarf2_per_cu_data): Likewise.
13028         (struct signatured_type): Likewise.
13029         (sig_type_ptr): Likewise.
13030         (DEF_VEC_P (sig_type_ptr)): Likewise.
13031         (INDEX4_SUFFIX): Likewise.
13032         (INDEX5_SUFFIX): Likewise.
13033         (DEBUG_STR_SUFFIX): Likewise.
13034         (dwarf2_read_section): Make non-static.
13035         (mapped_index_string_hash): Move from here.
13036         (dwarf5_djb_hash): Likewise.
13037         (file_write): Likewise.
13038         (class data_buf): Likewise.
13039         (struct symtab_index_entry): Likewise.
13040         (struct mapped_symtab): Likewise.
13041         (find_slot): Likewise.
13042         (hash_expand): Likewise.
13043         (add_index_entry): Likewise.
13044         (uniquify_cu_indices): Likewise.
13045         (class c_str_view): Likewise.
13046         (class c_str_view_hasher): Likewise.
13047         (class vector_hasher): Likewise.
13048         (write_hash_table): Likewise.
13049         (psym_index_map): Likewise.
13050         (struct addrmap_index_data): Likewise.
13051         (add_address_entry): Likewise.
13052         (add_address_entry_worker): Likewise.
13053         (write_address_map): Likewise.
13054         (symbol_kind): Likewise.
13055         (write_psymbols): Likewise.
13056         (struct signatured_type_index_data): Likewise.
13057         (write_one_signatured_type): Likewise.
13058         (recursively_count_psymbols): Likewise.
13059         (recursively_write_psymbols): Likewise.
13060         (class debug_names): Likewise.
13061         (check_dwarf64_offsets): Likewise.
13062         (psyms_seen_size): Likewise.
13063         (write_gdbindex): Likewise.
13064         (write_debug_names): Likewise.
13065         (assert_file_size): Likewise.
13066         (write_psymtabs_to_index): Likewise.
13067         (save_gdb_index_command): Likewise.
13068         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13069         command.
13070         * dwarf2read.h: New file.
13071
13072 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13073
13074         PR gdb/22670
13075         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13076         symbol name if the CU's language stores symbol names in linkage
13077         format.
13078         * language.h (struct language_defn)
13079         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13080         all instances of this struct.
13081
13082 2018-03-26  Tom Tromey  <tom@tromey.com>
13083
13084         * stack.c (backtrace_command_1): Remove verbose code.
13085
13086 2018-03-26  Tom Tromey  <tom@tromey.com>
13087
13088         * python/py-framefilter.c (py_print_type): Don't catch
13089         exceptions.  Return void.
13090         (py_print_value): Likewise.
13091         (py_print_single_arg): Likewise.
13092         (enumerate_args): Don't catch exceptions.
13093         (py_print_args): Likewise.
13094         (py_print_frame): Likewise.
13095         (gdbpy_apply_frame_filter): Catch exceptions here.
13096
13097 2018-03-26  Tom Tromey  <tom@tromey.com>
13098
13099         * stack.c (_initialize_stack): Remove trailing newlines from help
13100         text.  Add "Usage" line to "backtrace" help.
13101
13102 2018-03-26  Tom Tromey  <tom@tromey.com>
13103
13104         PR python/16486:
13105         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13106
13107 2018-03-26  Tom Tromey  <tom@tromey.com>
13108
13109         * python/py-framefilter.c (py_print_single_arg): Return
13110         EXT_LANG_BT_ERROR from catch.
13111
13112 2018-03-26  Tom Tromey  <tom@tromey.com>
13113
13114         PR backtrace/15584:
13115         * stack.c (backtrace_command_1): Move some code into no-filters
13116         "if".
13117
13118 2018-03-26  Tom Tromey  <tom@tromey.com>
13119
13120         * python/py-framefilter.c (throw_quit_or_print_exception): New
13121         function.
13122         (gdbpy_apply_frame_filter): Use it.
13123
13124 2018-03-26  Tom Tromey  <tom@tromey.com>
13125
13126         PR cli/17716:
13127         * python/py-framefilter.c (py_print_type, py_print_value)
13128         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13129         RETURN_MASK_ERROR.
13130
13131 2018-03-26  Tom Tromey  <tom@tromey.com>
13132
13133         * python/py-framefilter.c (enumerate_args): Use
13134         gdb::unique_xmalloc_ptr.
13135
13136 2018-03-26  Tom Tromey  <tom@tromey.com>
13137
13138         * python/py-framefilter.c (py_print_frame): Return
13139         EXT_LANG_BT_OK.
13140         (gdbpy_apply_frame_filter): Update comment.
13141         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13142         Remove.
13143         <EXT_LANG_BT_NO_FILTERS>: Change value.
13144
13145 2018-03-26  Tom Tromey  <tom@tromey.com>
13146
13147         PR backtrace/15582:
13148         * stack.c (backtrace_command): Parse "hide" argument.
13149         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13150         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13151         constant.
13152
13153 2018-03-26  Tom Tromey  <tom@tromey.com>
13154
13155         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13156         add "flags".
13157         (backtrace_command): Remove "fulltrace", add "flags".
13158
13159 2018-03-26  Tom Tromey  <tom@tromey.com>
13160
13161         * stack.c (backtrace_command): Rewrite command line parsing.
13162
13163 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13164
13165         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13166
13167 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13168
13169         * filename-seen-cache.h: Add include guard.
13170
13171 2018-03-26  Keith Seitz  <keiths@redhat.com>
13172
13173         * symfile.c (place_section): Remove "struct" from section_addr_info
13174         in comment.
13175         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13176         "struct" keyword from section_addr_info.
13177
13178 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13179
13180         * regformats/regdef.h (reg): Add constructors.
13181
13182 2018-03-25  Pedro Alves  <palves@redhat.com>
13183
13184         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13185         if then/else bodies in var_func_name extraction.
13186
13187 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13188
13189         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13190         lookup_minimal_symbol() to find symbol entry.
13191         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13192
13193 2018-03-23  Keith Seitz  <keiths@redhat.com>
13194
13195         PR c++/22968
13196         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13197         nested type definitions for C++, too.
13198
13199 2018-03-23  Tom Tromey  <tom@tromey.com>
13200
13201         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13202         a typedef.
13203         (macho_register_oso): Remove.
13204         (macho_symtab_read): Take a std::vector.
13205         (oso_el_compare_name): Now a std::sort comparator.
13206         (macho_symfile_read_all_oso): Take a std::vector.
13207         (macho_symfile_read): Use std::vector.  Remove cleanups.
13208
13209 2018-03-22  Tom Tromey  <tom@tromey.com>
13210
13211         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13212         (record_full_goto_bookmark): Use std::string.
13213
13214 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13215
13216         PR tdep/18295
13217         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13218         a single mask.
13219
13220 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13221
13222         * rs6000-tdep.c (store_insn_p): New function.
13223         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13224         and cr_reg to their unshifted values. Use store_insn_p to
13225         match LR saves using either R1 or fdata->alloca_reg. Use
13226         store_insn_p to match CR saves. Set alloca_reg_offset
13227         when alloca_reg and framep are set. Remove lr_reg shift
13228         when assigning to fdata->lr_register.
13229
13230 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13231
13232         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13233         command line args instead of emitting a warning.
13234
13235 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13236
13237         * tracepoint.h (struct static_tracepoint_marker): Initialize
13238         fields, define default constructor, move constructor and move
13239         assignment, disable the rest.
13240         <str_id, extra>: Make std::string.
13241         (release_static_tracepoint_marker): Remove.
13242         (free_current_marker): Remove.
13243         * tracepoint.c (free_current_marker): Remove.
13244         (parse_static_tracepoint_marker_definition): Adjust to
13245         std::string, use new hex2str overload.
13246         (release_static_tracepoint_marker): Remove.
13247         (print_one_static_tracepoint_marker): Get marker by reference
13248         and adjust to std::string.
13249         (info_static_tracepoint_markers_command): Adjust to std::vector
13250         changes
13251         * target.h (static_tracepoint_marker_p): Remove typedef.
13252         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13253         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13254         bool.
13255         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13256         * target-debug.h
13257         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13258         (target_debug_print_std_vector_static_tracepoint_marker): New.
13259         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13260         to...
13261         (target_debug_print_static_tracepoint_marker_p): ... this.
13262         * target-delegates.c: Re-generate.
13263         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13264         Make std::string.
13265         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13266         (decode_static_tracepoint_spec): Adjust to std::vector.
13267         (tracepoint_print_one_detail): Adjust to std::string.
13268         (strace_marker_decode_location): Adjust to std::string.
13269         (update_static_tracepoint): Adjust to std::string, remove call
13270         to release_static_tracepoint_marker.
13271         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13272         Adjust to std::vector.
13273         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13274         (remote_static_tracepoint_markers_by_strid): Adjust to
13275         std::vector.
13276         * common/rsp-low.h (hex2str): New overload with explicit count
13277         of bytes.
13278         * common/rsp-low.c (hex2str): New overload with explicit count
13279         of bytes.
13280         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13281         (_initialize_rsp_low_selftests): Add test_hex2str test.
13282         * unittests/tracepoint-selftests.c
13283         (test_parse_static_tracepoint_marker_definition): Adjust to
13284         std::string.
13285
13286 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13287
13288         * tracepoint.c (parse_static_tracepoint_marker_definition):
13289         Consider case where the definition is followed by more
13290         definitions.
13291         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13292         tracepoint-selftests.c.
13293         * unittests/tracepoint-selftests.c: New.
13294
13295 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13296
13297         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13298         Carvalho.
13299
13300 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13301
13302         * symtab.c (find_pc_sect_line): fixed indentation.
13303
13304 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13305
13306         * symtab.c (find_pc_sect_line): now uses binary search.
13307
13308 2018-03-19  Tom Tromey  <tom@tromey.com>
13309
13310         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13311         "IDENT" production.
13312
13313 2018-03-19  Pedro Alves  <palves@redhat.com>
13314             Tom Tromey  <tom@tromey.com>
13315
13316         * unittests/observable-selftests.c: New file.
13317         * common/observable.h: New file.
13318         * observable.h: New file.
13319         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13320         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13321         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13322         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13323         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13324         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13325         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13326         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13327         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13328         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13329         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13330         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13331         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13332         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13333         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13334         tui/tui-interp.c, valops.c: Update all users.
13335         * tui/tui-hooks.c (tui_bp_created_observer)
13336         (tui_bp_deleted_observer, tui_bp_modified_observer)
13337         (tui_inferior_exit_observer, tui_before_prompt_observer)
13338         (tui_normal_stop_observer, tui_register_changed_observer):
13339         Remove.
13340         (tui_observers_token): New global.
13341         (attach_or_detach, tui_attach_detach_observers): New functions.
13342         (tui_install_hooks, tui_remove_hooks): Use
13343         tui_attach_detach_observers.
13344         * record-btrace.c (record_btrace_thread_observer): Remove.
13345         (record_btrace_thread_observer_token): New global.
13346         * observer.sh: Remove.
13347         * observer.c: Rename to observable.c.
13348         * observable.c (namespace gdb_observers): Define new objects.
13349         (observer_debug): Move into gdb_observers namespace.
13350         (struct observer, struct observer_list, xalloc_observer_list_node)
13351         (xfree_observer_list_node, generic_observer_attach)
13352         (generic_observer_detach, generic_observer_notify): Remove.
13353         (_initialize_observer): Update.
13354         Don't include observer.inc.
13355         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13356         (clean mostlyclean): Likewise.
13357         (observer.h, observer.inc): Remove targets.
13358         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13359         (COMMON_SFILES): Use observable.c, not observer.c.
13360         * .gitignore: Remove observer.h.
13361
13362 2018-03-18  Tom Tromey  <tom@tromey.com>
13363
13364         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13365         gdb::def_vector.
13366         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13367
13368 2018-03-17  Tom Tromey  <tom@tromey.com>
13369
13370         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13371
13372 2018-03-17  Tom Tromey  <tom@tromey.com>
13373
13374         * target.c (class scoped_target_fd): New.
13375         (target_fileio_close_cleanup): Remove.
13376         (target_fileio_read_alloc_1): Use scoped_target_fd.
13377
13378 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13379
13380         * silent-rules.mk: New.
13381         * Makefile.in: Include silent-rules.mk
13382         (srcdir, VPATH, top_srcdir): Move up.
13383         (COMPILE): Add ECHO_CXX.
13384         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13385         (init.c): Add ECHO_INIT_C.
13386         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13387         (version.c): Add ECHO_GEN.
13388         (printcmd.o): Add ECHO_CXX.
13389         (target-float.o): Add ECHO_CXX.
13390         (ada-exp.o): Add ECHO_CXX.
13391         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13392         (insight$(EXEEXT)): Add ECHO_CXXLD.
13393         * gnulib/configure.ac: Add AM_SILENT_RULES.
13394         * gnulib/aclocal.m4: Re-generate.
13395         * gnulib/configure: Re-generate.
13396         * gnulib/import/Makefile.in: Re-generate.
13397
13398 2018-03-16  Tom Tromey  <tom@tromey.com>
13399
13400         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13401         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13402         * utils.c (do_free_section_addr_info)
13403         (make_cleanup_free_section_addr_info): Remove.
13404         * symfile.h (struct other_sections): Add constructor.
13405         (struct section_addr_info): Remove.
13406         (section_addr_info): New typedef.
13407         (struct sym_fns) <sym_offsets>: Change type of parameter.
13408         (build_section_addr_info_from_objfile)
13409         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13410         (default_symfile_offsets, symbol_file_add)
13411         (symbol_file_add_from_bfd)
13412         (build_section_addr_info_from_section_table): Update.
13413         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13414         * symfile.c (alloc_section_addr_info): Remove.
13415         (build_section_addr_info_from_section_table): Change return type.
13416         Update.
13417         (build_section_addr_info_from_bfd)
13418         (build_section_addr_info_from_objfile): Likewise.
13419         (free_section_addr_info): Remove.
13420         (relative_addr_info_to_section_offsets): Change type of "addrs".
13421         (addrs_section_compar): Now a std::sort comparator.
13422         (addrs_section_sort): Change return type.
13423         (addr_info_make_relative): Change type of "addrs".  Update.
13424         (default_symfile_offsets, syms_from_objfile_1)
13425         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13426         (symbol_file_add_separate): Update.
13427         (symbol_file_add): Change type of "addrs".  Update.
13428         (add_symbol_file_command): Update.  Remove cleanups.
13429         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13430         cleanups.
13431         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13432         * solib.c (solib_read_symbols): Update.
13433         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13434         * machoread.c (macho_symfile_offsets): Update.
13435         * jit.c (jit_bfd_try_read_symtab): Update.
13436
13437 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13438
13439         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13440         unittests/utils-selftests.c.
13441         * unittests/utils-selftests.c: New file.
13442
13443 2018-03-14  Tom Tromey  <tom@tromey.com>
13444
13445         PR cli/14977:
13446         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13447         for NULL.
13448
13449 2018-03-14  Tom Tromey  <tom@tromey.com>
13450
13451         PR cli/19918:
13452         * printcmd.c (printf_pointer): Allow "-" in format.
13453
13454 2018-03-14  Tom Tromey  <tom@tromey.com>
13455
13456         * printcmd.c (_initialize_printcmd): Add usage to printf.
13457
13458 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13459
13460         * MAINTAINERS: Update my email address.
13461
13462 2018-03-13  Tom Tromey  <tom@tromey.com>
13463
13464         * machoread.c (macho_check_dsym): Change filenamep to a
13465         std::string*.
13466         (macho_symfile_read): Update.
13467         * symfile.c (load_command): Use std::string.
13468
13469 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13470
13471         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13472         to error message string.
13473         (riscv_register_name): Use xsnprintf instead of sprintf.
13474         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13475         internal_error.
13476         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13477         error.
13478         (riscv_push_dummy_call): Likewise.
13479
13480 2018-03-12  Tom Tromey  <tom@tromey.com>
13481
13482         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13483         Use gdb::byte_vector.
13484         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13485
13486 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13487
13488         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13489         parameter type to readable_regcache.
13490         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13491         the declaration.
13492
13493 2018-03-11  Tom Tromey  <tom@tromey.com>
13494
13495         * dwarf2read.c (struct nextfield): Add initializers.
13496         (struct nextfnfield): Remove.
13497         (struct fnfieldlist): Add initializers.  Remove "length" and
13498         "head", use std::vector.
13499         (struct decl_field_list): Remove.
13500         (struct field_info): Add initializers.
13501         <fields, baseclasses>: Now std::vector.
13502         <nbaseclasses, nfnfields, typedef_field_list_count,
13503         nested_types_list_count>: Remove.
13504         (dwarf2_add_field, dwarf2_add_type_defn)
13505         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13506         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13507         (process_structure_scope): Update.
13508
13509 2018-03-11  Tom Tromey  <tom@tromey.com>
13510
13511         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13512         for use by std::sort.
13513         (build_type_psymtabs_1): Use std::vector.
13514
13515 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13516
13517         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13518         and LIBMPFR in the printed configuration.
13519
13520 2018-03-08  Tom Tromey  <tom@tromey.com>
13521
13522         * source.c (get_filename_and_charpos): Use scoped_fd.
13523         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13524         (procfs_pidlist): Likewise.
13525         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13526         (iterate_over_mappings): Likewise.
13527
13528 2018-03-08  Tom Tromey  <tom@tromey.com>
13529
13530         * infcall.c (struct call_return_meta_info)
13531         <stack_temporaries_enabled>: Remove.
13532         (get_call_return_value, call_function_by_hand_dummy): Update.
13533         * thread.c (disable_thread_stack_temporaries): Remove.
13534         (enable_thread_stack_temporaries): Remove.
13535         (thread_stack_temporaries_enabled_p): Return bool.
13536         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13537         (get_last_thread_stack_temporary): Update.
13538         * eval.c (evaluate_subexp): Update.
13539         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13540         class, not a function.
13541         (value_ptr, value_vec): Remove typedefs.
13542         (class thread_info) <stack_temporaries_enabled>: Now bool.
13543         <stack_temporaries>: Now a std::vector.
13544         (thread_stack_temporaries_enabled_p)
13545         (value_in_thread_stack_temporaries): Return bool.
13546
13547 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13548
13549         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13550         (getpkt_or_notif_sane_1): Likewise.
13551
13552 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13553
13554         * build-id.c (build_id_to_debug_bfd): Use std::string.
13555
13556 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13557
13558         * build-id.c (find_separate_debug_file_by_buildid): Return
13559         std::string.
13560         * build-id.h (find_separate_debug_file_by_buildid): Return
13561         std::string.
13562         * coffread.c (coff_symfile_read): Adjust to std::string.
13563         * elfread.c (elf_symfile_read): Adjust to std::string.
13564         * symfile.c (separate_debug_file_exists): Change parameter to
13565         std::string.
13566         (find_separate_debug_file): Return std::string.
13567         (find_separate_debug_file_by_debuglink): Return std::string.
13568         * symfile.h (find_separate_debug_file_by_debuglink): Return
13569         std::string.
13570
13571 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13572
13573         * common/xml-utils.c (xml_escape_text): Move code to...
13574         (xml_escape_text_append): ... this new function.
13575         * common/xml-utils.h (xml_escape_text_append): New declaration.
13576         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13577         New function.
13578         (_initialize_xml_utils): register test_xml_escape_text_append as
13579         a selftest.
13580
13581 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13582
13583         * defs.h: Remove MAX_REGISTER_SIZE.
13584         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13585         asserts.
13586         * python/py-unwind.c (pyuw_sniffer): Likewise.
13587
13588 2018-03-07  Tom Tromey  <tom@tromey.com>
13589
13590         * linux-tdep.c (linux_info_proc): Update.
13591         * target.h (struct target_ops) <to_fileio_readlink>: Return
13592         optional<string>.
13593         (target_fileio_readlink): Return optional<string>.
13594         * remote.c (remote_hostio_readlink): Return optional<string>.
13595         * inf-child.c (inf_child_fileio_readlink): Return
13596         optional<string>.
13597         * target.c (target_fileio_readlink): Return optional<string>.
13598
13599 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13600
13601         * regcache.c (cooked_read_test): Add riscv to the list of
13602         architectures that have a save_reggroup.
13603
13604 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13605
13606         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13607         value is not a dynamic class object.
13608
13609 2018-03-06  Tom Tromey  <tom@tromey.com>
13610
13611         * rust-exp.y: Formatting fixes.
13612
13613 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13614
13615         * riscv-tdep.c (riscv_register_name): Remove target description
13616         support.
13617         (riscv_gdbarch_init): Remove target description check.
13618
13619 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13620
13621         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13622         comment.
13623         * riscv-tdep.h: Likewise.
13624
13625 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13626
13627         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13628         (riscv_pseudo_register_write): Delete.
13629         (riscv_gdbarch_init): Remove all use of pseudo registers.
13630
13631 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13632
13633         * record-btrace.c (btrace_print_lines): Replace cleanup
13634         parameter with RAII equivalents.
13635         (btrace_insn_history): Replace cleanup with RAII equivalents.
13636         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13637         make_cleanup_ui_out_tuple_begin_end): Remove.
13638         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13639         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13640         make_cleanup_ui_out_list_begin_end): Remove.
13641
13642 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13643
13644         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13645         parameter types to std::vector.  Use bool.
13646         (record_btrace_wait): Replace VEC(tp_t) with
13647         std::vector<thread_info *>.
13648         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13649
13650 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13651
13652         * record-btrace.c (record_btrace_disable_callback): Remove.
13653         (struct scoped_btrace_disable): New.
13654         (record_btrace_open): Use scoped_btrace_disable.
13655
13656 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13657
13658         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13659         reading values from registers.
13660
13661 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13662
13663         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13664         where appropriate.
13665
13666 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13667
13668         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13669         change parameter type.  Use GDB's print functions, and use
13670         core_addr_to_string where appropriate.
13671         (riscv_push_dummy_call): Use core_addr_to_string where
13672         appropriate, update call to riscv_print_arg_location, and reindent
13673         a few lines.
13674         (riscv_return_value): Update call to riscv_print_arg_location.
13675
13676 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13677             Tim Newsome <tim@sifive.com>
13678             Albert Ou <a0u@eecs.berkeley.edu>
13679             Darius Rad <darius@bluespec.com>
13680
13681         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13682         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13683         (ALLDEPFILES): Add riscv-tdep.c
13684         * configure.tgt: Add riscv support.
13685         * riscv-tdep.c: New file.
13686         * riscv-tdep.h: New file.
13687         * NEWS: Mention new target.
13688         * MAINTAINERS: Add entry for riscv.
13689
13690 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13691
13692         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13693         fields within aggregates.
13694
13695 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13696
13697         * record-btrace.c (btrace_print_lines): Change type of flags to
13698         gdb_disassembly_flags.
13699
13700 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13701
13702         * fbsd-nat.c: Include "inf-ptrace.h".
13703         (USE_SIGTRAP_SIGINFO): Conditionally define.
13704         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13705         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13706         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13707         function.
13708         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13709         Likewise.
13710         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13711         Likewise.
13712         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13713         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13714         "supports_stopped_by_hw_breakpoint" target methods.
13715
13716 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13717
13718         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13719         * fbsd-nat.c (debug_fbsd_nat): New variable.
13720         (show_fbsd_nat_debug): New function.
13721         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13722         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13723
13724 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13725
13726         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13727         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13728         prototype.
13729         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13730         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13731         method.
13732
13733 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13734
13735         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13736         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13737
13738 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13739
13740         * charset.c (struct charset_vector): New.
13741         (charsets): Change type to charset_vector.
13742         (find_charset_names): Adjust.
13743         (add_one): Adjust.
13744         (_initialize_charset): Adjust.
13745
13746 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13747
13748         * progspace.h (struct program_space) <deleted_solibs>: Change
13749         type to std::vector<std::string>.
13750         * progspace.c (clear_program_space_solib_cache): Adjust.
13751         * breakpoint.c (print_solib_event): Adjust.
13752         (check_status_catch_solib): Adjust.
13753         * solib.c (update_solib_list): Adjust.
13754         * ui-out.h (class ui_out) <field_string>: New overload.
13755         * ui-out.c (ui_out::field_string): New overload.
13756
13757 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13758
13759         * progspace.h (struct program_space): Add constructor and
13760         destructor, initialize fields.
13761         (add_program_space): Remove.
13762         * progspace.c (add_program_space): Rename to...
13763         (program_space::program_space): ... this.
13764         (release_program_space): Rename to...
13765         (program_space::~program_space): ... this.
13766         (delete_program_space): Use delete to delete program_space.
13767         (initialize_progspace): Use new to allocate program_space.
13768         * inferior.c (add_inferior_with_spaces): Likewise.
13769         (clone_inferior_command): Likewise.
13770         * infrun.c (follow_fork_inferior): Likewise.
13771         (handle_vfork_child_exec_or_exit): Likewise.
13772
13773 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13774
13775         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13776         (delim_string_to_char_ptr_vec): Return std::vector of
13777         gdb::unique_xmalloc_ptr.
13778         (dirnames_to_char_ptr_vec_append): Take std::vector of
13779         gdb::unique_xmalloc_ptr.
13780         (dirnames_to_char_ptr_vec): Return std::vector of
13781         gdb::unique_xmalloc_ptr.
13782         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13783         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13784         (delim_string_to_char_ptr_vec): Return an std::vector of
13785         gdb::unique_xmalloc_ptr, adjust the code.
13786         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13787         gdb::unique_xmalloc_ptr, adjust the code.
13788         (dirnames_to_char_ptr_vec): Return an std::vector of
13789         gdb::unique_xmalloc_ptr, adjust the code.
13790         * auto-load.c (auto_load_safe_path_vec): Change type to
13791         std::vector of gdb::unique_xmalloc_ptr.
13792         (auto_load_expand_dir_vars): Return an std::vector of
13793         gdb::unique_xmalloc_ptr, adjust the code.
13794         (auto_load_safe_path_vec_update): Adjust.
13795         (filename_is_in_auto_load_safe_path_vec): Adjust.
13796         (auto_load_objfile_script_1): Adjust.
13797         * build-id.c (build_id_to_debug_bfd): Adjust.
13798         * linux-thread-db.c (thread_db_load_search): Adjust.
13799         * source.c (add_path): Adjust.
13800         (openp): Adjust.
13801         * symfile.c (find_separate_debug_file): Adjust.
13802         * utils.c (do_free_char_ptr_vec): Remove.
13803         (make_cleanup_free_char_ptr_vec): Remove.
13804
13805 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13806
13807         PR gdb/22907
13808         * common/pathstuff.c: Conditionally include "<windows.h>".
13809
13810 2018-03-01  Georg Sauthoff  <mail@georg.so>
13811
13812         PR gdb/22888
13813         * gcore.in: Quote variables and switch interpreter to bash.
13814
13815 2018-03-01  Tom Tromey  <tom@tromey.com>
13816
13817         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13818         assertion.  Add assertion for discriminant_index.
13819         (quirk_rust_enum): Use correct base type name in univariant case.
13820
13821 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13822
13823         * record.c (get_call_history_modifiers): Return a
13824         record_print_flags.
13825         (cmd_record_call_history): Adjust.
13826         * record-btrace.c (record_btrace_call_history): Adjust.
13827         (record_btrace_call_history_range): Adjust.
13828         (record_btrace_call_history_from): Adjust.
13829         * target-debug.h (target_debug_print_record_print_flags): New.
13830         * target-delegates.c: Re-generate.
13831         * target.c (target_call_history): Change flags type.
13832         (target_call_history_from): Likewise.
13833         (target_call_history_range): Likewise.
13834         * target.h (struct target_ops) <target_call_history>: Likewise.
13835         (target_call_history_from): Likewise.
13836         (target_call_history_range): Likewise.
13837
13838 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13839             Simon Marchi  <simon.marchi@polymtl.ca>
13840
13841         * common/common-utils.c: Include "sys/stat.h".
13842         (is_regular_file): Move here from "source.c"; change return
13843         type to "bool".
13844         * common/common-utils.h (is_regular_file): New prototype.
13845         * common/pathstuff.c (contains_dir_separator): New function.
13846         * common/pathstuff.h (contains_dir_separator): New prototype.
13847         * source.c: Don't include "sys/stat.h".
13848         (is_regular_file): Move to "common/common-utils.c".
13849
13850 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13851
13852         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13853         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13854         * auto-load.c: Include "common/pathstuff.h".
13855         * common/common-def.h (current_directory): Move here.
13856         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13857         function.
13858         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13859         prototype.
13860         * common/pathstuff.c: New file.
13861         * common/pathstuff.h: New file.
13862         * compile/compile.c: Include "common/pathstuff.h".
13863         * defs.h (current_directory): Move to "common/common-defs.h".
13864         * dwarf2read.c: Include "common/pathstuff.h".
13865         * exec.c: Likewise.
13866         * guile/scm-safe-call.c: Likewise.
13867         * linux-thread-db.c: Likewise.
13868         * main.c: Likewise.
13869         * nto-tdep.c: Likewise.
13870         * objfiles.c: Likewise.
13871         * source.c: Likewise.
13872         * symtab.c: Likewise.
13873         * utils.c: Include "common/pathstuff.h".
13874         (gdb_realpath): Move to "common/pathstuff.c".
13875         (gdb_realpath_keepfile): Likewise.
13876         (gdb_abspath): Likewise.
13877         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13878         (gdb_realpath_keepfile): Likewise.
13879         (gdb_abspath): Likewise.
13880
13881 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13882
13883         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13884         wildcard process pid for super_resume for kernels with a
13885         specific bug.
13886
13887 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13888
13889         * compile/compile.c (get_args): Add additional comments
13890         explaining function.
13891
13892 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13893             Tom Tromey  <tom@tromey.com>
13894
13895         * target.h (memory_write_request_s): Remove typedef.  Don't define
13896         VEC.
13897         (target_write_memory_blocks): Change argument to std::vector.
13898         (struct memory_write_request): Add constructor.
13899         * target-memory.c (compare_block_starting_address): Return bool.
13900         Change argument types.
13901         (claim_memory): Change arguments to use std::vector.
13902         (split_regular_and_flash_blocks, blocks_to_erase)
13903         (compute_garbled_blocks): Likewise.
13904         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13905         (target_write_memory_blocks): Change argument to std::vector.
13906         * symfile.c (struct load_section_data): Add constructor and
13907         destructor.  Use std::vector for "requests".
13908         (struct load_progress_data): Add initializers.
13909         (load_section_callback): Update.  Use "new".
13910         (clear_memory_write_data): Remove.
13911         (generic_load): Update.
13912
13913 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13914
13915         * arch/aarch64.h: Use common/tdesc.h.
13916
13917 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13918
13919         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13920         architecture with a 64-bit ABI.
13921
13922 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13923
13924         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13925         ahead of target description loading.
13926
13927 2018-02-26  Tom Tromey  <tom@tromey.com>
13928
13929         * stack.c (backtrace_command_1): Update.
13930         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13931         of "flags".
13932         * python/py-framefilter.c (py_print_frame)
13933         (gdbpy_apply_frame_filter): Change type of "flags".
13934         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13935         of "flags".
13936         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13937         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13938         * extension.h (enum frame_filter_flag): Rename from
13939         frame_filter_flags.
13940         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13941         (apply_ext_lang_frame_filter): Change type of "flags".
13942         * extension.c (apply_ext_lang_frame_filter): Change type of
13943         "flags".
13944         * extension-priv.h (struct extension_language_ops)
13945         <apply_frame_filter>: Change type of "flags".
13946
13947 2018-02-26  Tom Tromey  <tom@tromey.com>
13948
13949         PR python/16497:
13950         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13951         off-by-one in py_end computation.
13952         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13953         PRINT_MORE_FRAMES.
13954         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13955         constant.
13956
13957 2018-02-26  Tom Tromey  <tom@tromey.com>
13958
13959         * dwarf2read.c (struct variant_field): New.
13960         (struct nextfield) <variant>: New field.
13961         (dwarf2_add_field): Handle DW_TAG_variant_part.
13962         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13963         discriminated union.
13964         (read_structure_type): Handle DW_TAG_variant_part.
13965         (handle_struct_member_die): New function, extracted from
13966         process_structure_scope.  Handle DW_TAG_variant.
13967         (process_structure_scope): Handle discriminated unions.  Call
13968         handle_struct_member_die.
13969
13970 2018-02-26  Tom Tromey  <tom@tromey.com>
13971
13972         * rust-lang.h (rust_last_path_segment): Declare.
13973         * rust-lang.c (rust_last_path_segment): Now public.  Change
13974         contract.
13975         (struct disr_info): Remove.
13976         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13977         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13978         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13979         (rust_enum_p, rust_enum_variant): New function.
13980         (rust_underscore_fields): Remove "offset" parameter.
13981         (rust_print_enum): New function.
13982         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13983         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13984         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13985         enums.
13986         (rust_internal_print_type): New function, from rust_print_type.
13987         Remove enum code.
13988         (rust_print_type): Call rust_internal_print_type.
13989         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13990         Update enum handling.
13991         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13992         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13993         (rust_union_quirks): New functions.
13994         (process_full_comp_unit, process_full_type_unit): Call
13995         rust_union_quirks.
13996         (process_structure_scope): Update rust_unions if necessary.
13997
13998 2018-02-26  Tom Tromey  <tom@tromey.com>
13999
14000         * value.h (value_union_variant): Declare.
14001         * valops.c (value_union_variant): New function.
14002         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14003         (struct discriminant_info): New.
14004         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14005         enumerator.
14006         (struct main_type) <flag_discriminated_union>: New field.
14007
14008 2018-02-26  Tom Tromey  <tom@tromey.com>
14009
14010         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14011         unittests/unpack-selftests.c.
14012         * unittests/unpack-selftests.c: New file.
14013         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14014
14015 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14016
14017         * dwarf2read.c (struct partial_die_info) <read>: New method.
14018         (read_partial_die): Remove the declaration.
14019         (load_partial_dies): Update.
14020         (partial_die_info::partial_die_info):
14021         (read_partial_die): Change it to partial_die_info::read.
14022
14023 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14024
14025         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14026         (fixup_partial_die): Remove declaration.
14027         (scan_partial_symbols): Update.
14028         (partial_die_parent_scope): Likewise.
14029         (partial_die_full_name): Likewise.
14030         (fixup_partial_die): Change it to partial_die_info::fixup.
14031
14032 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14033
14034         * dwarf2read.c (read_partial_die): Update the declaration.
14035         (load_partial_dies): Caller update.
14036         (read_partial_die): Remove one argument abbrev_len.
14037
14038 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14039
14040         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14041         assignment operator.
14042         (load_partial_dies): Use ctor and copy ctor.
14043         (read_partial_die): Update.
14044         (dwarf2_cu::find_partial_die): Use ctor.
14045
14046 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14047
14048         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14049         (find_partial_die_in_comp_unit): Change it to
14050         dwarf2_cu::find_partial_die.
14051         (find_partial_die): Update.
14052
14053 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14054
14055         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14056         is NULL.
14057
14058 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14059
14060         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14061
14062 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14063
14064         * arch/amd64.h: Use common/tdesc.h.
14065         * arch/i386.c: Likewise.
14066         * arch/i386.h: Likewise.
14067         * arch/tic6x.c: Likewise.
14068         * arch/tdesc.h: Move file from here...
14069         * common/tdesc.h: ...to here.
14070         * features/aarch64-core.c: Regenerate.
14071         * features/aarch64-fpu.c: Regenerate.
14072         * features/i386/32bit-avx.c: Regenerate.
14073         * features/i386/32bit-avx512.c: Regenerate.
14074         * features/i386/32bit-core.c: Regenerate.
14075         * features/i386/32bit-linux.c: Regenerate.
14076         * features/i386/32bit-mpx.c: Regenerate.
14077         * features/i386/32bit-pkeys.c: Regenerate.
14078         * features/i386/32bit-sse.c: Regenerate.
14079         * features/i386/64bit-avx.c: Regenerate.
14080         * features/i386/64bit-avx512.c: Regenerate.
14081         * features/i386/64bit-core.c: Regenerate.
14082         * features/i386/64bit-linux.c: Regenerate.
14083         * features/i386/64bit-mpx.c: Regenerate.
14084         * features/i386/64bit-pkeys.c: Regenerate.
14085         * features/i386/64bit-segments.c: Regenerate.
14086         * features/i386/64bit-sse.c: Regenerate.
14087         * features/i386/x32-core.c: Regenerate.
14088         * features/tic6x-c6xp.c: Regenerate.
14089         * features/tic6x-core.c: Regenerate.
14090         * features/tic6x-gp.c: Regenerate.
14091         * target-descriptions.c: Use common/tdesc.h.
14092         * target-descriptions.h: Likewise.
14093
14094 2018-02-24  Tom Tromey  <tom@tromey.com>
14095
14096         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14097         (try_thread_db_load_from_dir, thread_db_load_search): Use
14098         std::string.
14099         (info_auto_load_libthread_db_compare): Return bool.  Change
14100         argument types.
14101         (info_auto_load_libthread_db): Use std::vector, std::string.
14102         Remove cleanups.
14103
14104 2018-02-24  Tom Tromey  <tom@tromey.com>
14105
14106         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14107         std::string.
14108         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14109         std::string*.
14110         * gdbarch.c: Rebuild.
14111         * gdbarch.h: Rebuild.
14112         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14113         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14114         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14115         std::string*.
14116
14117 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14118
14119         * gdbtypes.h (sect_offset): Change type to uint64_t.
14120         (sect_offset_str): New function.
14121         * dwarf2read.c (create_addrmap_from_aranges): Use
14122         sect_offset_str.
14123         (error_check_comp_unit_head): Likewise.
14124         (create_debug_type_hash_table): Likewise.
14125         (read_cutu_die_from_dwo): Likewise.
14126         (init_cutu_and_read_dies): Likewise.
14127         (init_cutu_and_read_dies_no_follow): Likewise.
14128         (process_psymtab_comp_unit_reader): Likewise.
14129         (partial_die_parent_scope): Likewise.
14130         (peek_die_abbrev): Likewise.
14131         (process_queue): Likewise.
14132         (dwarf2_physname): Likewise.
14133         (read_namespace_alias): Likewise.
14134         (read_import_statement): Likewise.
14135         (create_dwo_cu_reader): Likewise.
14136         (create_cus_hash_table): Likewise.
14137         (lookup_dwo_cutu): Likewise.
14138         (inherit_abstract_dies): Likewise.
14139         (read_func_scope): Likewise.
14140         (read_call_site_scope): Likewise.
14141         (dwarf2_add_member_fn): Likewise.
14142         (read_common_block): Likewise.
14143         (read_module_type): Likewise.
14144         (read_typedef): Likewise.
14145         (read_subrange_type): Likewise.
14146         (load_partial_dies): Likewise.
14147         (read_partial_die): Likewise.
14148         (find_partial_die): Likewise.
14149         (read_str_index): Likewise.
14150         (dwarf2_string_attr): Likewise.
14151         (build_error_marker_type): Likewise.
14152         (lookup_die_type): Likewise.
14153         (dump_die_shallow): Likewise.
14154         (follow_die_ref): Likewise.
14155         (dwarf2_fetch_die_loc_sect_off): Likewise.
14156         (dwarf2_fetch_constant_bytes): Likewise.
14157         (follow_die_sig): Likewise.
14158         (get_signatured_type): Likewise.
14159         (get_DW_AT_signature_type): Likewise.
14160         (dwarf2_find_containing_comp_unit): Likewise.
14161         (set_die_type): Likewise.
14162
14163 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14164
14165         * arch/aarch64.c: Include "common-defs.h".
14166         * arch/amd64.c: Likewise.
14167         * arch/i386.c: Likewise.
14168
14169 2018-02-21  Tom Tromey  <tom@tromey.com>
14170
14171         * value.h: (extract_field_op): Update.
14172         * eval.c (extract_field_op): Return a const char *.
14173         * expression.h (parse_expression_for_completion): Update.
14174         * completer.c (complete_expression): Update.
14175         (add_struct_fields): Make fieldname const.
14176         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14177         (mark_completion_tag, parse_exp_in_context_1): Update.
14178         (parse_expression_for_completion): Change "name" to
14179         unique_xmalloc_ptr*.
14180
14181 2018-02-21  Tom Tromey  <tom@tromey.com>
14182
14183         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14184
14185 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14186
14187         * avr-tdep.c (avr_read_pc): Change parameter type to
14188         readable_regcache.
14189         * gdbarch.sh (read_pc): Likewise.
14190         * gdbarch.c: Re-generated.
14191         * gdbarch.h: Re-generated.
14192         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14193         readable_regcache.
14194         * ia64-tdep.c (ia64_read_pc): Likewise.
14195         * mips-tdep.c (mips_read_pc): Likewise.
14196         * spu-tdep.c (spu_read_pc): Likewise.
14197
14198 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14199
14200         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14201         * regcache-dump.c: New file.
14202         * regcache.c: Move register_dump to regcache-dump.c.
14203         (maintenance_print_registers): Likewise.
14204         (maintenance_print_raw_registers): Likewise.
14205         (maintenance_print_cooked_registers): Likewise.
14206         (maintenance_print_register_groups): Likewise.
14207         (maintenance_print_remote_registers): Likewise.
14208         (_initialize_regcache): Likewise.
14209         * regcache.h (register_dump): Moved from regcache.c.
14210
14211 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14212
14213         * regcache.c (regcache::regcache): Update.
14214         (regcache::invalidate): Move it to detached_regcache::invalidate.
14215         (get_thread_arch_aspace_regcache): Update.
14216         (regcache::raw_update): Update.
14217         (regcache::cooked_read): Remove some code.
14218         (regcache::cooked_read_value): Likewise.
14219         (regcache::raw_write): Remove assert on m_readonly_p.
14220         (regcache::raw_supply_integer): Move it to
14221         detached_regcache::raw_supply_integer.
14222         (regcache::raw_supply_zeroed): Likewise.
14223         * regcache.h (detached_regcache) <raw_supply_integer>: New
14224         declaration.
14225         <raw_supply_zeroed, invalidate>: Likewise.
14226         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14227         <invalidate>: Likewise.
14228         <m_readonly_p>: Removed.
14229
14230 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14231
14232         * infcmd.c (get_return_value): Let stop_regs point to
14233         get_current_regcache.
14234         * regcache.c (regcache::regcache): Remove.
14235         (register_dump_reg_buffer): New class.
14236         (regcache_print): Adjust.
14237         * regcache.h (regcache): Remove constructors.
14238
14239 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14240
14241         * regcache.c (class register_dump): New class.
14242         (register_dump_regcache, register_dump_none): New class.
14243         (register_dump_remote, register_dump_groups): New class.
14244         (regcache_print): Update.
14245         * regcache.h (regcache_dump_what): Move it to regcache.c.
14246         (regcache) <dump>: Remove.
14247
14248 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14249
14250         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14251          reg_buffer_rw *.
14252         (jit_unwind_reg_set_impl): Call raw_supply.
14253         (jit_frame_sniffer): Use reg_buffer_rw.
14254         * record-full.c (record_full_core_regbuf): Change its type.
14255         (record_full_core_open_1): Use reg_buffer_rw.
14256         (record_full_close): Likewise.
14257         (record_full_core_fetch_registers): Use regcache->raw_supply.
14258         (record_full_core_store_registers): Likewise.
14259         * regcache.c (regcache::get_register_status): Move it to
14260         reg_buffer.
14261         (regcache_raw_set_cached_value): Remove.
14262         (regcache::raw_set_cached_value): Remove.
14263         (regcache::raw_write): Call raw_supply.
14264         (regcache::raw_supply): Move it to reg_buffer_rw.
14265         * regcache.h (regcache_raw_set_cached_value): Remove.
14266         (reg_buffer_rw): New class.
14267
14268 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14269
14270         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14271         readonly_detached_regcache.
14272         (dummy_frame_prev_register): Use regcache->cooked_read.
14273         * frame.c (frame_save_as_regcache): Change return type.
14274         (frame_pop): Update.
14275         * frame.h (frame_save_as_regcache): Update declaration.
14276         * inferior.h (get_infcall_suspend_state_regcache): Update
14277         declaration.
14278         * infrun.c (infcall_suspend_state) <registers>: use
14279         readonly_detached_regcache.
14280         (save_infcall_suspend_state): Don't use regcache_dup.
14281         (get_infcall_suspend_state_regcache): Change return type.
14282         * linux-fork.c (struct fork_info) <savedregs>: Change to
14283         readonly_detached_regcache.
14284         <pc>: New field.
14285         (fork_save_infrun_state): Don't use regcache_dup.
14286         (info_checkpoints_command): Adjust.
14287         * mi/mi-main.c (register_changed_p): Update declaration.
14288         (mi_cmd_data_list_changed_registers): Use
14289         readonly_detached_regcache.
14290         (register_changed_p): Change parameter type to
14291         readonly_detached_regcache.
14292         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14293         readonly_detached_regcache.
14294         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14295         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14296         New.
14297         (regcache::save): Move it to reg_buffer.
14298         (regcache::restore): Change parameter type.
14299         (regcache_dup): Remove.
14300         * regcache.h (reg_buffer) <save>: New method.
14301         (readonly_detached_regcache): New class.
14302         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14303         readonly_detached_regcache.
14304         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14305
14306 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14307
14308         * frame.c (frame_save_as_regcache): Use regcache method save.
14309         (frame_pop): Use regcache method restore.
14310         * infrun.c (restore_infcall_suspend_state): Likewise.
14311         * linux-fork.c (fork_load_infrun_state): Likewise.
14312         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14313         save.
14314         * regcache.c (regcache_save): Remove.
14315         (regcache::restore): More asserts.
14316         (regcache_cpy): Remove.
14317         * regcache.h (regcache_save): Remove the declaration.
14318         (regcache::restore): Move from private to public.
14319         Remove the friend declaration of regcache_cpy.
14320         (regcache_cpy): Remove declaration.
14321
14322 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14323
14324         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14325         parameter type to 'readable_regcache *'.
14326         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14327         * arm-tdep.c (arm_neon_quad_read): Likewise.
14328         (arm_pseudo_read): Likewise.
14329         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14330         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14331         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14332         * gdbarch.c: Re-generated.
14333         * gdbarch.h: Re-generated.
14334         * gdbarch.sh (pseudo_register_read): Change parameter type to
14335         'readable_regcache *'.
14336         (pseudo_register_read_value): Likewise.
14337         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14338         (h8300_pseudo_register_read): Likewise.
14339         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14340         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14341         (i386_pseudo_register_read_into_value): Likewise.
14342         (i386_pseudo_register_read_value): Likewise.
14343         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14344         declaration.
14345         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14346         * m32c-tdep.c (m32c_raw_read): Likewise.
14347         (m32c_read_flg): Likewise.
14348         (m32c_banked_register): Likewise.
14349         (m32c_banked_read): Likewise.
14350         (m32c_sb_read): Likewise.
14351         (m32c_part_read): Likewise.
14352         (m32c_cat_read): Likewise.
14353         (m32c_r3r2r1r0_read): Likewise.
14354         (m32c_pseudo_register_read): Likewise.
14355         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14356         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14357         (mep_pseudo_cr64_read): Likewise.
14358         (mep_pseudo_register_read): Likewise.
14359         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14360         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14361         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14362         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14363         (regcache::cooked_read): Likewise.
14364         (regcache::cooked_read_value): Likewise.
14365         (regcache_cooked_read_signed):
14366         (regcache::cooked_read): Likewise.
14367         * regcache.h (readable_regcache): New class.
14368         (regcache): Inherit readable_regcache.  Move some methods to
14369         readable_regcache.
14370         * rl78-tdep.c (rl78_pseudo_register_read): Change
14371         parameter type to 'readable_regcache *'.
14372         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14373         (e500_pseudo_register_read): Change parameter type to
14374         'readable_regcache *'.
14375         (dfp_pseudo_register_read): Likewise.
14376         (vsx_pseudo_register_read): Likewise.
14377         (efpr_pseudo_register_read): Likewise.
14378         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14379         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14380         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14381         (sh64_pseudo_register_read): Likewise.
14382         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14383         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14384         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14385         (spu_pseudo_register_read): Likewise.
14386         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14387         (xtensa_pseudo_register_read): Likewise.
14388
14389 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14390
14391         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14392         (regcache::arch): Move it to reg_buffer::arch.
14393         (regcache::register_buffer): Likewise.
14394         (regcache::assert_regnum): Likewise.
14395         (regcache::num_raw_registers): Likewise.
14396         * regcache.h (reg_buffer): New class.
14397         (regcache): Inherit reg_buffer.
14398
14399 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14400
14401         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14402         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14403
14404 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14405
14406         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14407
14408 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14409
14410         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14411         (SFILES): Remove common/*.c files.
14412         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14413         * common/common.host: Add common reference.
14414         * configure.ac: Likewise.
14415         * configure: Regenerate.
14416
14417 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14418
14419         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14420         (block_initialize_namespace): Use new.
14421         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14422         (dwarf2_free_objfile): Use delete.
14423         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14424         (copy_type_recursive): Use new.
14425         * gdb_obstack.h (allocate_on_obstack): New.
14426
14427 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14428
14429         PR gdb/22849
14430         * inferior.c (exit_inferior_1): Reset inf->control.
14431
14432 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14433
14434         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14435         declaration.
14436
14437 2018-02-14  Pedro Alves  <palves@redhat.com>
14438
14439         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14440         frame_cleanup_after_sniffer on exception.
14441
14442 2018-02-14  Tom Tromey  <tom@tromey.com>
14443
14444         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14445         const.
14446         (solib_bfd_open): Make pathname const.
14447         * solib.c (solib_bfd_open): Make pathname const.
14448         * solib-spu.c (spu_bfd_fopen): Make name const.
14449         (spu_bfd_open): Make pathname const.
14450         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14451         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14452
14453 2018-02-14  Tom Tromey  <tom@tromey.com>
14454
14455         * symfile.c (symfile_bfd_open): Update.
14456         * source.h (openp, source_full_path_of, find_and_open_source):
14457         Change argument type to unique_xmalloc_ptr.
14458         * source.c (openp): Take a unique_xmalloc_ptr.
14459         (source_full_path_of, find_and_open_source): Likewise.
14460         (open_source_file, symtab_to_fullname): Update.
14461         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14462         unique_xmalloc_ptr.
14463         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14464         (exec_file_find): Update.
14465         * psymtab.c (psymtab_to_fullname): Update.
14466         * nto-tdep.h (nto_find_and_open_solib): Update.
14467         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14468         unique_xmalloc_ptr.
14469         * exec.c (exec_file_attach): Update.
14470         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14471         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14472
14473 2018-02-14  Tom Tromey  <tom@tromey.com>
14474
14475         * solib.c: Include source.h.
14476         * nto-tdep.c: Include source.h.
14477         * mi/mi-cmd-env.c: Include source.h.
14478         * infcmd.c: Include source.h.
14479         * exec.c: Include source.h.
14480         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14481         (add_path, directory_switch, source_path, init_source_path): Move
14482         declarations...
14483         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14484         (add_path, directory_switch, source_path, init_source_path):
14485         ...here.
14486
14487 2018-02-14  Tom Tromey  <tom@tromey.com>
14488
14489         * solist.h (exec_file_find, solib_find): Return
14490         unique_xmalloc_ptr.
14491         (solib_bfd_fopen): Take a const char *.
14492         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14493         (exec_file_find, solib_find): Likewise.
14494         (solib_bfd_fopen): Do not take ownership of "pathname".
14495         (solib_bfd_open): Use unique_xmalloc_ptr.
14496         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14497         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14498         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14499         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14500
14501 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14502
14503         * ada-lang.c (name_match_type_from_name): Remove reference to
14504         ada_name_for_lookup in function's documentation.
14505         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14506
14507 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14508
14509         * defs.h (enum openp_flags): New enum.
14510         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14511         Move to enum openp_flags.
14512         (openp_flags): New enum flags.
14513         (openp): Change parameter type to openp_flags.
14514         * source.c (openp): Change parameter type to openp_flags.
14515         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14516         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14517
14518 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14519
14520         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14521         per-command.
14522
14523 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14524
14525         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14526         into...
14527         (class dwarf2_queue_guard): ...the destructor of this new class.
14528         (dw2_do_instantiate_symtab): Create instance of the new class
14529         dwarf2_queue_guard, remove cleanup.
14530
14531 2018-02-09  Tom Tromey  <tom@tromey.com>
14532
14533         * source.c (find_source_lines): Don't reference past the end of
14534         the vector.
14535
14536 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14537
14538         * remote.c (remote_btrace_maybe_reopen): Change error message.
14539         * btrace.c (btrace_enable): Likewise.
14540         (parse_xml_btrace): Likewise.
14541         (parse_xml_btrace_conf): Likewise.
14542
14543 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14544
14545         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14546         (linux_enable_pt, linux_enable_bts): Call
14547         diagnose_perf_event_open_fail.
14548
14549 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14550
14551         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14552         Remove parameter and change return type.  Update callers.  Move it.
14553         (linux_enable_bts, linux_enable_pt): Improve error message.
14554         (linux_enable_pt): Remove zero buffer size check.
14555         (linux_enable_btrace): Improve error messages.  Remove NULL return
14556         check.
14557
14558 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14559
14560         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14561         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14562         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14563         (linux_supports_pt, linux_supports_btrace): Remove.
14564         (linux_enable_bts): Call cpu_supports_bts.
14565         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14566         * remote.c (remote_supports_btrace): Remove.
14567         (init_remote_ops): Remove remote_supports_btrace.
14568         * target-delegates.c: Regenerated.
14569         * target.c (target_supports_btrace): Remove.
14570         * target.h (target_ops) <to_supports_btrace>: Remove
14571         (target_supports_btrace): Remove.
14572         * x86-linux-nat.c (x86_linux_create_target): Remove
14573         linux_supports_btrace.
14574
14575 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14576
14577         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14578         btrace failed.
14579         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14580         exception and use message in own exception.
14581
14582 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14583
14584         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14585         (perf_event_pt_event_type): Use gdb_file_up.
14586         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14587         scoped_fd, and scoped_mmap.
14588
14589 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14590
14591         * common/scoped_mmap.h: New.
14592         * unittests/scoped_mmap-selftest.c: New.
14593         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14594         unittests/scoped_mmap-selftest.c.
14595
14596 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14597
14598         * common/scoped_fd.h: New.
14599         * unittests/scoped_fd-selftest.c: New.
14600         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14601         unittests/scoped_fd-selftest.c.
14602
14603 2018-02-09  Tom Tromey  <tom@tromey.com>
14604
14605         * auto-load.c (auto_load_section_scripts): Use
14606         gdb::unique_xmalloc_ptr.
14607
14608 2018-02-09  Tom Tromey  <tom@tromey.com>
14609
14610         * auto-load.c (execute_script_contents): Use std::string.
14611
14612 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14613
14614         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14615         Python function, rather than a new command.
14616
14617 2018-02-08  Tom Tromey  <tom@tromey.com>
14618
14619         * solib.c (solib_find_1): Use std::string.
14620         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14621
14622 2018-02-08  Tom Tromey  <tom@tromey.com>
14623
14624         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14625
14626 2018-02-08  Tom Tromey  <tom@tromey.com>
14627
14628         * source.c (find_source_lines): Use gdb::def_vector.
14629
14630 2018-02-08  Tom Tromey  <tom@tromey.com>
14631
14632         * macrocmd.c (struct temporary_macro_definition): New.
14633         (macro_define_command): Use temporary_macro_definition.  Remove
14634         cleanups.
14635         (free_macro_definition_ptr): Remove.
14636
14637 2018-02-08  Tom Tromey  <tom@tromey.com>
14638
14639         * macroexp.c (maybe_expand): Use std::string.
14640
14641 2018-02-08  Tom Tromey  <tom@tromey.com>
14642
14643         * macroexp.c (struct macro_buffer): Add initializers for some
14644         members.
14645         (init_buffer, init_shared_buffer, free_buffer)
14646         (free_buffer_return_text): Remove.
14647         (macro_buffer): New constructors.
14648         (~macro_buffer): New destructor.
14649         (macro_buffer::set_shared): New method.
14650         (macro_buffer::resize_buffer, macro_buffer::appendc)
14651         (macro_buffer::appendmem): Now methods, not free functions.
14652         (set_token, append_tokens_without_splicing, stringify)
14653         (macro_stringify): Update.
14654         (gather_arguments): Change return type.  Remove argc_p argument,
14655         add args_ptr argument.  Use std::vector.
14656         (substitute_args): Remove argc argument.  Accept std::vector.
14657         (expand): Update.  Use std::vector.
14658         (scan, macro_expand, macro_expand_next): Update.
14659
14660 2018-02-08  Tom Tromey  <tom@tromey.com>
14661
14662         * symtab.c (default_collect_symbol_completion_matches_break_on):
14663         Use unique_xmalloc_ptr.
14664         * macroscope.h: (sal_macro_scope, user_macro_scope)
14665         (default_macro_scope): Return unique_xmalloc_ptr.
14666         * macroscope.c (sal_macro_scope, user_macro_scope)
14667         (default_macro_scope): Return unique_xmalloc_ptr.
14668         * macroexp.h (macro_expand, macro_expand_once): Return
14669         unique_xmalloc_ptr.
14670         * macroexp.c (macro_expand, macro_expand_once): Return
14671         unique_xmalloc_ptr.
14672         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14673         (info_macro_command, info_macros_command): Use
14674         unique_xmalloc_ptr.
14675         * compile/compile-c-support.c (write_macro_definitions): Use
14676         unique_xmalloc_ptr.
14677         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14678
14679 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14680
14681         * value.c (value_static_field): Assign field type instead of
14682         containing type when returning an optimized out value.
14683
14684 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14685
14686         * ft32-tdep.c (ft32_read_pc): Remove.
14687         (ft32_write_pc): Remove.
14688         (ft32_gdbarch_init): Update.
14689         * m32r-tdep.c (m32r_read_pc): Remove.
14690         (m32r_gdbarch_init): Update.
14691         * mep-tdep.c (mep_read_pc): Remove.
14692         (mep_gdbarch_init): Update.
14693         * microblaze-tdep.c (microblaze_write_pc): Remove.
14694         (microblaze_gdbarch_init): Update.
14695         * mn10300-tdep.c (mn10300_read_pc): Remove.
14696         (mn10300_write_pc): Remove.
14697         (mn10300_gdbarch_init): Update.
14698         * moxie-tdep.c (moxie_read_pc): Remove.
14699         (moxie_write_pc): Remove.
14700         (moxie_gdbarch_init): Update.
14701
14702 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14703
14704         * expprint.c (print_subexp_standard): Handle
14705         OP_F77_UNDETERMINED_ARGLIST.
14706         (dump_subexp_body_standard): Likewise.
14707
14708 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14709
14710         * target-descriptions.c (tdesc_element_visitor) Add empty
14711         implementations.
14712         (tdesc_type): Move make_gdb_type from here.
14713         (tdesc_type_builtin): Likewise.
14714         (tdesc_type_vector): Likewise.
14715         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14716         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14717         (make_gdb_type_union): Likewise.
14718         (make_gdb_type_flags): Likewise.
14719         (make_gdb_type_enum): Likewise.
14720         (make_gdb_type): New function.
14721         (tdesc_register_type): Use static make_gdb_type.
14722
14723 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14724
14725         * infcmd.c (default_print_one_register_info): Align natural-format
14726         column values consistently one under another.
14727         (pad_to_column): New function.
14728
14729 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14730
14731         * dwarf2read.c (dwarf2_physname): Move commment.
14732
14733 2018-02-01  Leszek Swirski  <leszeks@google.com>
14734
14735         * varobj.c (varobj_formatted_print_options): Allow recursive
14736         pretty printing if pretty printing is enabled.
14737
14738 2018-02-01  Leszek Swirski  <leszeks@google.com>
14739
14740         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14741         names after a structop as a filename.
14742
14743 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14744
14745         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14746         (arm_record_coproc_data_proc): Likewise.
14747
14748 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14749
14750         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14751
14752 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14753
14754         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14755         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14756
14757 2018-01-31  Pedro Alves  <palves@redhat.com>
14758
14759         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14760         * inflow.c (child_terminal_save_inferior): Wrap reference to
14761         tcgetpgrp in HAVE_TERMIOS_H.
14762         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14763         _WIN32.
14764         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14765         always iterate over all inferiors.
14766         (gdbsim_cntrl_c): Adjust.
14767         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14768
14769 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14770
14771         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14772         index type is objfile-owned if the element type is as well.
14773
14774 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14775
14776         GDB 8.1 released.
14777
14778 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14779
14780         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14781         "features/s390x-linux64.c".
14782         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14783         s390_linux32 and s390x_linux64.
14784         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14785         default tdesc.
14786         * s390-tdep.c: Include "features/s390-linux32.c" and
14787         "features/s390x-linux64.c".
14788         (s390_tdesc_valid): Add check for tdesc_has_registers.
14789         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14790         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14791         tdesc_s390x_linux64.
14792         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14793         tdesc_s390x_linux64 to...
14794         * s390-tdep.h: ...here.
14795
14796 2018-01-30  Pedro Alves  <palves@redhat.com>
14797
14798         PR gdb/13211
14799         * config.in, configure: Regenerate.
14800         * configure.ac: Check for getpgid.
14801         * go32-nat.c (go32_pass_ctrlc): New.
14802         (go32_target): Install it.
14803         * inf-child.c (inf_child_target): Install
14804         child_terminal_save_inferior, child_pass_ctrlc and
14805         child_interrupt.
14806         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14807         (inf_ptrace_target): No longer install it.
14808         * infcmd.c (interrupt_target_1): Adjust.
14809         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14810         (child_interrupt): Declare.
14811         (inferior::terminal_state): New.
14812         * inflow.c (struct terminal_info): Update comments.
14813         (inferior_process_group): Delete.
14814         (terminal_is_ours): Delete.
14815         (gdb_tty_state): New.
14816         (child_terminal_init): Adjust.
14817         (is_gdb_terminal, sharing_input_terminal_1)
14818         (sharing_input_terminal): New functions.
14819         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14820         Set the process's actual process group in the foreground if
14821         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14822         mark terminal as the inferior's if not sharing GDB's terminal.
14823         Don't check attach_flag.
14824         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14825         pass down a target_terminal_state.
14826         (child_terminal_save_inferior): New, factored out from ...
14827         (child_terminal_ours_1): ... this.  Handle
14828         target_terminal_state::is_ours_for_output.
14829         (child_interrupt, child_pass_ctrlc): New.
14830         (inflow_inferior_exit): Clear the inferior's terminal_state.
14831         (copy_terminal_info): Copy the inferior's terminal state.
14832         (_initialize_inflow): Remove reference to terminal_is_ours.
14833         * inflow.h (inferior_process_group): Delete.
14834         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14835         * procfs.c (procfs_target): Don't install procfs_interrupt.
14836         (procfs_interrupt): Delete.
14837         * remote.c (remote_serial_quit_handler): Adjust.
14838         (remote_interrupt): Remove ptid parameter.  Adjust.
14839         * target-delegates.c: Regenerate.
14840         * target.c: Include "terminal.h".
14841         (target_terminal::terminal_state): Rename to ...
14842         (target_terminal::m_terminal_state): ... this.
14843         (target_terminal::init): Adjust.
14844         (target_terminal::inferior): Adjust to per-inferior
14845         terminal_state.
14846         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14847         (target_terminal::ours, target_terminal::ours_for_output): Use
14848         target_terminal_is_ours_kind.
14849         (target_interrupt): Remove ptid parameter.  Adjust.
14850         (default_target_pass_ctrlc): Adjust.
14851         * target.h (target_ops::to_terminal_save_inferior): New field.
14852         (target_ops::to_interrupt): Remove ptid_t parameter.
14853         (target_interrupt): Remove ptid_t parameter.  Update comment.
14854         (target_pass_ctrlc): Update comment.
14855         * target/target.h (target_terminal_state): New scoped enum,
14856         factored out of ...
14857         (target_terminal::terminal_state): ... here.
14858         (target_terminal::inferior): Update comments.
14859         (target_terminal::restore_inferior): New.
14860         (target_terminal::is_inferior, target_terminal::is_ours)
14861         (target_terminal::is_ours_for_output): Adjust.
14862         (target_terminal::scoped_restore_terminal_state): Adjust to
14863         rename, and call restore_inferior() instead of inferior().
14864         (target_terminal::scoped_restore_terminal_state::m_state): Change
14865         type.
14866         (target_terminal::terminal_state): Rename to ...
14867         (target_terminal::m_terminal_state): ... this and change type.
14868
14869 2018-01-30  Pedro Alves  <palves@redhat.com>
14870
14871         * linux-nat.c (wait_for_signal): New function.
14872         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14873         directly.
14874         (async_terminal_is_ours)
14875         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14876         (linux_nat_add_target): Don't override
14877         to_terminal_inferior/to_terminal_ours.
14878
14879 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14880
14881         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14882
14883 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14884
14885         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14886         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14887         dwarf2_per_objfile_free here.
14888         (dwarf2_per_objfile_free): Remove.
14889         (_initialize_dwarf2_read): Don't register
14890         dwarf2_per_objfile_free as a registry cleanup.
14891
14892 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14893
14894         Avoid compilation errors in MinGW native builds
14895
14896         The error is triggered by including python-internal.h, and the
14897         error message is:
14898
14899              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14900                       from build-gnulib/import/math.h:27,
14901                       from d:/usr/Python26/include/pyport.h:235,
14902                       from d:/usr/Python26/include/Python.h:58,
14903                       from python/python-internal.h:94,
14904                       from python/py-arch.c:24:
14905              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14906         using ::hypot;
14907                 ^~~~~
14908
14909         This happens because Python headers define 'hypot' to expand t
14910         '_hypot' in the Windows builds.
14911         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14912         'hypoth'.  This avoids a compilation error.
14913
14914 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14915
14916         * MAINTAINERS (Write After Approval): Fix ordering.
14917
14918 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14919
14920         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14921
14922 2018-01-26  Alan Modra  <amodra@gmail.com>
14923
14924         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14925         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14926         Remove nop.  Make const.  Comment.
14927         (powerpc32_plt_stub_so_2): New.
14928         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14929         Correct count.  Update uses.
14930         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14931         Move common code reading PLT entry word.  Correct
14932         powerpc32_plt_stub PLT address calculation.
14933         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14934         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14935         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14936         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14937         (ppc64_standard_linkage8): Likewise.
14938         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14939         Correct insns description.
14940         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14941
14942 2018-01-24  Pedro Alves  <palves@redhat.com>
14943
14944         GCC PR libstdc++/83906
14945         * gdbtypes.c (operator==(const dynamic_prop &,
14946         const dynamic_prop &)): New.
14947         (operator==(const range_bounds &, const range_bounds &)): New.
14948         (check_types_equal): Use them instead of memcmp.
14949         * gdbtypes.h (operator==(const dynamic_prop &,
14950         const dynamic_prop &)): Declare.
14951         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14952         (operator==(const range_bounds &, const range_bounds &)): Declare.
14953         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14954
14955 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14956
14957         * s390-linux-tdep.c (s390_record_address_mask)
14958         (s390_record_calc_disp_common, s390_record_calc_disp)
14959         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14960         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14961         (s390_process_record): Move to s390-tdep.c.
14962         (s390_linux_init_abi_any): Adjust.
14963         * s390-tdep.c (s390_record_address_mask)
14964         (s390_record_calc_disp_common, s390_record_calc_disp)
14965         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14966         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14967         (s390_process_record): Moved from s390-linux-tdep.c
14968         (s390_gdbarch_init): Adjust.
14969
14970 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14971
14972         * s390-linux-nat.c (s390-tdep.h): New include.
14973         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14974         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14975         (ALLDEPFILES): Add s390-tdep.c.
14976         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14977         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14978         * s390-tdep.h: ...this.  New file.
14979         * s390-linux-tdep.c (s390-tdep.h): New include.
14980         (_initialize_s390_tdep): Rename to...
14981         (_initialize_s390_linux_tdep): ...this and adjust.
14982         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14983         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14984         s390-tdep.h.
14985         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14986         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14987         (s390_is_partial_instruction, s390_software_single_step)
14988         (is_non_branch_ril, s390_displaced_step_copy_insn)
14989         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14990         (s390_prologue_data, s390_addr, s390_store, s390_load)
14991         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14992         (s390_register_call_saved, s390_guess_tracepoint_registers)
14993         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14994         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14995         (s390_pseudo_register_name, s390_pseudo_register_type)
14996         (s390_pseudo_register_read, s390_pseudo_register_write)
14997         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14998         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14999         (s390_addr_bits_remove, s390_address_class_type_flags)
15000         (s390_address_class_type_flags_to_name)
15001         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15002         (s390_function_arg_float, s390_function_arg_vector)
15003         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15004         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15005         (s390_frame_align, s390_register_return_value, s390_return_value)
15006         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15007         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15008         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15009         (s390_trad_frame_prev_register, s390_unwind_cache)
15010         (s390_prologue_frame_unwind_cache)
15011         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15012         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15013         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15014         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15015         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15016         (s390_frame_base_address, s390_local_base_address)
15017         (s390_frame_base, s390_gcc_target_options)
15018         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15019         (s390_validate_reg_range, s390_tdesc_valid)
15020         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15021         * s390-tdep.c: ...this.  New file.
15022
15023 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15024
15025         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15026         (s390_process_record, s390_gdbarch_tdep_alloc)
15027         (s390_linux_init_abi_any): Use/set new hook.
15028
15029 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15030
15031         * s390-linux-tdep.c (osabi.h): New include.
15032         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15033         (s390_linux_init_abi_any): New functions.
15034         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15035
15036 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15037
15038         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15039         tdesc_has_registers check
15040
15041 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15042
15043         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15044         (s390_validate_reg_range): New macro.
15045         (s390_gdbarch_init): Adjust.
15046
15047 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15048
15049         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15050         (s390_gdbarch_tdep_alloc): Adjust.
15051         (s390_gdbarch_init): Adjust.
15052
15053 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15054
15055         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15056         <have_tdb>: Change type to bool.
15057         (s390_gdbarch_tdep_alloc): Adjust.
15058         (s390_gdbarch_init): Adjust.
15059
15060 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15061
15062         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15063         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15064         (s390_gdbarch_tdep_alloc): New function.
15065         (s390_gdbarch_init): Allocate tdep at start and use its fields
15066         instead of separate variables.
15067
15068 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15069
15070         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15071         when looking for cached gdbarch and add comment for remaining.
15072
15073 2018-01-22  Pedro Alves  <palves@redhat.com>
15074             Sergio Durigan Junior  <sergiodj@redhat.com>
15075
15076         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15077         case.
15078
15079 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15080
15081         * MAINTAINERS: Update my company e-mail address.
15082
15083 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15084
15085         * regcache.c (cooked_write_test): New function.
15086         (_initialize_regcache): Register the test.
15087
15088 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15089
15090         * ia64-tdep.c (ia64_pseudo_register_read): Call
15091         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15092         * m32c-tdep.c (m32c_cat_read): Likewise.
15093         (m32c_r3r2r1r0_read): Likewise.
15094         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15095         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15096
15097 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15098
15099         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15100         method raw_read instead of regcache_raw_read.
15101         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15102         * arm-tdep.c (arm_neon_quad_read): Likewise.
15103         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15104         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15105         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15106         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15107         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15108         (i386_pseudo_register_read_into_value): Likewise.
15109         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15110         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15111         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15112         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15113         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15114         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15115         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15116         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15117         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15118
15119 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15120
15121         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15122         * configure.tgt: Remove target mt.
15123         * mt-tdep.c: Remove.
15124         * regcache.c (cooked_read_test): Remove the check for mt.
15125
15126 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15127
15128         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15129         instead of gdbarch_pseudo_register_read_value.
15130
15131 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15132
15133         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15134         language is Ada.
15135
15136 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15137
15138         * linespec.c (create_sals_line_offset): Remove code that preserved
15139         the symtab_and_line's line number.
15140
15141 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15142
15143         * varobj.c (varobj_create): Don't set valid_block when creating a
15144         floating varobj.
15145
15146 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15147
15148         * varobj.c (varobj_create): Remove out of date comment.
15149
15150 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15151
15152         PR mi/20395
15153         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15154         updating innermost block.
15155         * parse.c (innermost_block_tracker::update): Take extra type
15156         parameter, and check types match before updating innermost block.
15157         (write_dollar_variable): Update innermost block for registers.
15158         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15159         (innermost_block_tracker::innermost_block_tracker): Initialise
15160         m_types member.
15161         (innermost_block_tracker::reset): Take type parameter.
15162         (innermost_block_tracker::update): Take type parameter, and pass
15163         type through as needed.
15164         (innermost_block_tracker::m_types): New member.
15165         * varobj.c (varobj_create): Pass type when reseting innermost
15166         block.
15167
15168 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15169
15170         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15171         * ada-lang.c (resolve_subexp): Likewise.
15172         * breakpoint.c (set_breakpoint_condition) Likewise.
15173         (watch_command_1) Likewise.
15174         * c-exp.y (variable): Likewise.
15175         * d-exp.y (PrimaryExpression): Likewise.
15176         * f-exp.y (variable): Likewise.
15177         * go-exp.y (variable): Likewise.
15178         * m2-exp.y (variable): Likewise.
15179         * objfiles.c (objfile::~objfile): Likewise.
15180         * p-exp.y (variable): Likewise.
15181         * parse.c (innermost_block): Change type.
15182         * parser-defs.h (class innermost_block_tracker): New.
15183         (innermost_block): Change to innermost_block_tracker.
15184         * printcmd.c (display_command): Switch to innermost_block API.
15185         (do_one_display): Likewise.
15186         * rust-exp.y (do_one_display): Likewise.
15187         * symfile.c (clear_symtab_users): Likewise.
15188         * varobj.c (varobj_create): Switch to innermost_block API, replace
15189         use of innermost_block with block stored on varobj object.
15190
15191 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15192
15193         * expression.h (innermost_block): Remove declaration.
15194         * varobj.c: Add 'parser-defs.h' include.
15195
15196 2018-01-19  Tom Tromey  <tom@tromey.com>
15197
15198         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15199         symbols in the static and global blocks.
15200
15201 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15202
15203         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15204         gdb_ptrace.h, and move including gdb_wait.h ...
15205         * nat/linux-ptrace.h: ... to here.
15206
15207 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15208
15209         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15210         inf_ptrace_detach_success.
15211         (inf_ptrace_detach_success): Add inferior parameter, use it
15212         instead of inferior_ptid, pass it to detach_inferior.
15213         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15214         parameter.
15215         * inferior.c (detach_inferior): Add overload that takes an
15216         inferior object.
15217         * inferior.h (detach_inferior): Likewise.
15218         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15219         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15220         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15221
15222 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15223
15224         * target.h (struct target_ops) <to_detach>: Add inferior
15225         parameter.
15226         (target_detach): Likewise.
15227         * target.c (dispose_inferior): Pass inferior down.
15228         (target_detach): Pass inferior down.  Assert that it is equal to
15229         the current inferior.
15230         * aix-thread.c (aix_thread_detach): Pass inferior down.
15231         * corefile.c (core_file_command): Pass current_inferior() down.
15232         * corelow.c (core_detach): Add inferior parameter.
15233         * darwin-nat.c (darwin_detach): Likewise.
15234         * gnu-nat.c (gnu_detach): Likewise.
15235         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15236         * infcmd.c (detach_command): Pass current_inferior() down to
15237         target_detach.
15238         * infrun.c (follow_fork_inferior): Pass parent_inf to
15239         target_detach.
15240         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15241         target_detach.
15242         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15243         * linux-thread-db.c (thread_db_detach): Likewise.
15244         * nto-procfs.c (procfs_detach): Likewise.
15245         * procfs.c (procfs_detach): Likewise.
15246         * record.c (record_detach): Likewise.
15247         * record.h (struct inferior): Forward-declare.
15248         (record_detach): Add inferior parameter.
15249         * remote-sim.c (gdbsim_detach): Likewise.
15250         * remote.c (remote_detach_1): Likewise.
15251         (remote_detach): Likewise.
15252         (extended_remote_detach): Likewise.
15253         * sol-thread.c (sol_thread_detach): Likewise.
15254         * target-debug.h (target_debug_print_inferior_p): New macro.
15255         * target-delegates.c: Re-generate.
15256         * top.c (kill_or_detach): Pass inferior down to target_detach.
15257         * windows-nat.c (windows_detach): Add inferior parameter.
15258
15259 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15260
15261         * target.h (struct target_ops) <to_detach>: Remove args
15262         parameter.
15263         (target_detach): Likewise.
15264         * target.c (dispose_inferior): Adjust.
15265         (target_detach): Remove args parameter, adjust.
15266         * aix-thread.c (aix_thread_detach): Adjust.
15267         * corefile.c (core_file_command): Adjust.
15268         * corelow.c (core_detach): Adjust.
15269         * darwin-nat.c (darwin_detach): Adjust.
15270         * gnu-nat.c (gnu_detach): Adjust.
15271         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15272         * infcmd.c (detach_command): Adjust
15273         * infrun.c (follow_fork_inferior): Adjust.
15274         (handle_vfork_child_exec_or_exit): Adjust.
15275         * linux-fork.c (linux_fork_detach): Remove args parameter.
15276         * linux-fork.h (linux_fork_detach): Likewise.
15277         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15278         * linux-thread-db.c (thread_db_detach): Likewise.
15279         * nto-procfs.c (procfs_detach): Likewise.
15280         * procfs.c (procfs_detach): Likewise.
15281         (do_detach): Remove signo parameter.
15282         * record.c (record_detach): Remove args parameter.
15283         * record.h (record_detach): Likewise.
15284         * remote-sim.c (gdbsim_detach): Likewise.
15285         * remote.c (remote_detach_1): Likewise.
15286         (remote_detach): Likewise.
15287         (extended_remote_detach): Likewise.
15288         * sol-thread.c (sol_thread_detach): Likewise.
15289         * target-delegates.c: Re-generate.
15290         * top.c (struct qt_args) <args>: Remove field.
15291         (kill_or_detach): Don't pass args.
15292         (quit_force): Don't set args.
15293         * windows-nat.c (windows_detach): Remove args parameter.
15294
15295 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15296
15297         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15298         (arm_linux_init_abi): Install it.
15299
15300 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15301
15302         * osabi.c (gdb_osabi_names): Extend the regexp for
15303         arm-linux-gnueabihf.
15304
15305 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15306
15307         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15308         m_abbrevs.
15309         (abbrev_table::add_abbrev): Update.
15310         (abbrev_table::lookup_abbrev): Update.
15311
15312 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15313
15314         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15315
15316 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15317
15318         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15319         to "std::string".
15320
15321 2018-01-17  Tom Tromey  <tom@tromey.com>
15322
15323         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15324
15325 2018-01-17  Tom Tromey  <tom@tromey.com>
15326
15327         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15328         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15329         (create_array_type_with_stride): Update.
15330         * dwarf2read.c (set_die_type): Update.
15331
15332 2018-01-17  Tom Tromey  <tom@tromey.com>
15333
15334         * dwarf2read.c (delayed_method_info): Remove typedef.
15335         (dwarf2_cu::method_info): Now a std::vector.
15336         (add_to_method_list): Update.
15337         (free_delayed_list): Remove.
15338         (compute_delayed_physnames): Update.
15339         (process_full_comp_unit, process_full_type_unit): Clear the method
15340         list.  Remove cleanups.
15341         (psymtab_include_file_name): Add name_holder parameter.  Use
15342         unique_xmalloc_ptr.
15343         (dwarf_decode_lines): Update.
15344
15345 2018-01-17  Tom Tromey  <tom@tromey.com>
15346             Simon Marchi  <simon.marchi@ericsson.com>
15347
15348         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15349         (dwarf2_per_objfile::free_cached_comp_units)
15350         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15351         (init_cutu_and_read_dies_no_follow): Update.
15352         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15353         (dwarf2_cu::~dwarf2_cu): New.
15354         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15355         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15356
15357 2018-01-17  Tom Tromey  <tom@tromey.com>
15358             Simon Marchi  <simon.marchi@ericsson.com>
15359
15360         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15361         (struct die_reader_specs) <abbrev_table>: New member.
15362         (struct abbrev_table): Add constructor.
15363         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15364         <abbrev_obstack>: Now an auto_obstack.
15365         (abbrev_table_up): New typedef.
15366         (init_cu_die_reader): Add abbrev_table parameter.
15367         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15368         Add result_dwo_abbrev_table.
15369         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15370         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15371         Update.
15372         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15373         parameter.
15374         (skip_children): Update.
15375         (abbrev_table::alloc_abbrev): Rename from
15376         abbrev_table_alloc_abbrev.
15377         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15378         (abbrev_table::lookup_abbrev): Rename from
15379         abbrev_table_lookup_abbrev.
15380         (abbrev_table_read_table): Return abbrev_table_up.
15381         (abbrev_table_free, abbrev_table_free_cleanup)
15382         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15383         (load_partial_dies): Update.
15384
15385 2018-01-17  Tom Tromey  <tom@tromey.com>
15386
15387         * dwarf2read.c (dwarf2_compute_name): Update comment.
15388         (read_func_scope, read_variable): Update.
15389         (new_symbol): Remove.
15390         (new_symbol_full): Rename to new_symbol.
15391
15392 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15393
15394         PR gdb/16577
15395         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15396         a warning instead of throwing an error, set section size to 0 and return
15397         NULL.
15398         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15399
15400 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15401
15402         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15403         std::string.
15404         (linux_ptrace_attach_fail_reason_string): Likewise.
15405         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15406         Likewise.
15407         (linux_ptrace_attach_fail_reason_string): Likewise.
15408         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15409
15410 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15411
15412         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15413
15414 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15415
15416         PR gdb/21559
15417         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15418         checking for fs_base/gs_base fields in struct user_regs_struct.
15419         * configure: Regenerate.
15420
15421 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15422
15423         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15424         function.
15425         (aarch64_linux_init_abi): Install it to gdbarch hook
15426         gcc_target_options.
15427
15428 2018-01-15  Pedro Alves  <palves@redhat.com>
15429
15430         * common/signals-state-save-restore.c
15431         (save_original_signals_state): Fix typos.
15432
15433 2017-01-12  Tom Tromey  <tom@tromey.com>
15434             Sergio Durigan Junior  <sergiodj@redhat.com>
15435
15436         * Makefile.in (install-only): Install gdb-add-index.
15437
15438 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15439
15440         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15441
15442 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15443
15444         * infrun.c (keep_going_pass_signal): Clear step-over info when
15445         insert_breakpoints fails.
15446
15447 2018-01-11  Pedro Alves  <palves@redhat.com>
15448
15449         PR gdb/22583
15450         * infrun.c (resume): Rename to ...
15451         (resume_1): ... this.
15452         (resume): Reimplement as wrapper around resume_1.
15453
15454 2018-01-11  Pedro Alves  <palves@redhat.com>
15455
15456         PR remote/22597
15457         * remote.c (remote_parse_stop_reply): Default to the last-set
15458         general thread instead of to 'magic_null_ptid'.
15459
15460 2018-01-10  Pedro Alves  <palves@redhat.com>
15461
15462         * language.h (language_get_symbol_name_matcher): Rename ...
15463         (get_symbol_name_matcher): ... this.
15464         * language.c (language_get_symbol_name_matcher): Ditto.
15465         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15466         callers adjusted.
15467
15468 2018-01-10  Pedro Alves  <palves@redhat.com>
15469
15470         PR gdb/22670
15471         * dwarf2read.c
15472         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15473         Adjust to use language_get_symbol_name_matcher instead of
15474         language_defn::la_get_symbol_name_matcher.
15475         * language.c (language_get_symbol_name_matcher): If in Ada mode
15476         and the lookup name is a verbatim match, return Ada's matcher.
15477         * language.h (language_get_symbol_name_matcher): Adjust comment.
15478         (ada_lookup_name_info::verbatim_p):: New method.
15479
15480 2018-01-10  Pedro Alves  <palves@redhat.com>
15481
15482         PR gdb/22670
15483         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15484         minsym's language is language_auto or language_cplus, pass down
15485         language_ada instead.
15486         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15487
15488 2018-01-10  Pedro Alves  <palves@redhat.com>
15489
15490         PR gdb/22670
15491         * minsyms.c (linkage_name_str): New function.
15492         (iterate_over_minimal_symbols): Use it.
15493
15494 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15495
15496         * NEWS: Document that 'info proc' now works on FreeBSD.
15497
15498 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15499
15500         * configure.ac: Check for kinfo_getfile in libutil.
15501         * configure: Regenerate.
15502         * config.in: Regenerate.
15503         * fbsd-nat.c: Include "fbsd-tdep.h".
15504         (fbsd_fetch_cmdline): New.
15505         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15506         rather than calling error.
15507         (fbsd_info_proc): New.
15508         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15509         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15510         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15511
15512 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15513
15514         * fbsd-nat.c (struct free_deleter): Remove.
15515         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15516
15517 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15518
15519         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15520         NULL for an empty pathname.
15521
15522 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15523
15524         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15525         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15526         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15527         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15528         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15529         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15530         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15531         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15532         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15533         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15534         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15535         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15536         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15537         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15538         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15539
15540 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15541
15542         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15543         (gnu_xfer_auxv): New function.
15544         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15545         TARGET_OBJECT_AUXV.
15546
15547 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15548             Simon Marchi  <simon.marchi@ericsson.com>
15549
15550         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15551         common/selftest.c.
15552         (COMMON_OBS): Remove selftest.o.
15553         * configure.ac: Append selftest-arch.c and common/selftest.c to
15554         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15555         * configure: Re-generated.
15556         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15557         GDB_SELF_TEST.
15558         (maintenance_info_selftests): Likewise.
15559
15560 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15561
15562         * ada-valprint.c (val_print_packed_array_elements): Use
15563         proper number of elements when printing an array indexed
15564         by an enumeration type.
15565
15566 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15567
15568         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15569         (dw2_get_file_names_reader): Adjust.
15570         (lookup_dwo_signatured_type): Adjust.
15571         (lookup_dwp_signatured_type): Adjust.
15572         (lookup_signatured_type): Adjust.
15573         (create_type_unit_group): Adjust.
15574         (get_type_unit_group): Adjust.
15575         (process_psymtab_comp_unit_reader): Adjust.
15576         (build_type_psymtabs_reader): Adjust.
15577         (scan_partial_symbols): Adjust.
15578         (add_partial_symbol): Adjust.
15579         (add_partial_subprogram): Adjust.
15580         (peek_die_abbrev): Adjust.
15581         (fixup_go_packaging): Adjust.
15582         (process_imported_unit_die): Adjust.
15583         (dwarf2_compute_name): Adjust.
15584         (dwarf2_physname): Adjust.
15585         (read_import_statement): Adjust.
15586         (handle_DW_AT_stmt_list): Adjust.
15587         (read_file_scope): Adjust.
15588         (read_func_scope): Adjust.
15589         (read_lexical_block_scope): Adjust.
15590         (read_call_site_scope): Adjust.
15591         (read_variable): Adjust.
15592         (dwarf2_rnglists_process): Adjust.
15593         (dwarf2_ranges_process): Adjust.
15594         (dwarf2_ranges_read): Adjust.
15595         (dwarf2_get_pc_bounds): Adjust.
15596         (dwarf2_record_block_ranges): Adjust.
15597         (dwarf2_add_field): Adjust.
15598         (dwarf2_add_member_fn): Adjust.
15599         (read_structure_type): Adjust.
15600         (process_structure_scope): Adjust.
15601         (read_enumeration_type): Adjust.
15602         (read_array_type): Adjust.
15603         (mark_common_block_symbol_computed): Adjust.
15604         (read_common_block): Adjust.
15605         (read_namespace_type): Adjust.
15606         (read_namespace): Adjust.
15607         (read_module_type): Adjust.
15608         (read_tag_pointer_type): Adjust.
15609         (read_tag_ptr_to_member_type): Adjust.
15610         (read_tag_string_type): Adjust.
15611         (read_subroutine_type): Adjust.
15612         (read_typedef): Adjust.
15613         (read_base_type): Adjust.
15614         (attr_to_dynamic_prop): Adjust.
15615         (read_subrange_type): Adjust.
15616         (read_unspecified_type): Adjust.
15617         (dwarf2_read_abbrevs): Adjust.
15618         (load_partial_dies): Adjust.
15619         (read_partial_die): Adjust.
15620         (find_partial_die): Adjust.
15621         (guess_partial_die_structure_name): Adjust.
15622         (fixup_partial_die): Adjust.
15623         (read_attribute_value): Adjust.
15624         (read_addr_index): Adjust.
15625         (read_addr_index_from_leb128): Adjust.
15626         (read_str_index): Adjust.
15627         (dwarf2_string_attr): Adjust.
15628         (get_debug_line_section): Adjust.
15629         (dwarf_decode_line_header): Adjust.
15630         (lnp_state_machine::check_line_address): Adjust.
15631         (dwarf_decode_lines_1): Adjust.
15632         (dwarf_decode_lines): Adjust.
15633         (dwarf2_start_symtab): Adjust.
15634         (var_decode_location): Adjust.
15635         (new_symbol_full): Adjust.
15636         (dwarf2_const_value_data): Adjust.
15637         (dwarf2_const_value_attr): Adjust.
15638         (dwarf2_const_value): Adjust.
15639         (die_type): Adjust.
15640         (die_containing_type): Adjust.
15641         (build_error_marker_type): Adjust.
15642         (lookup_die_type): Adjust.
15643         (guess_full_die_structure_name): Adjust.
15644         (anonymous_struct_prefix): Adjust.
15645         (determine_prefix): Adjust.
15646         (dwarf2_name): Adjust.
15647         (follow_die_ref_or_sig): Adjust.
15648         (follow_die_offset): Adjust.
15649         (follow_die_ref): Adjust.
15650         (follow_die_sig_1): Adjust.
15651         (follow_die_sig): Adjust.
15652         (get_signatured_type): Adjust.
15653         (get_DW_AT_signature_type): Adjust.
15654         (decode_locdesc): Adjust.
15655         (dwarf_decode_macros): Adjust.
15656         (cu_debug_loc_section): Adjust.
15657         (fill_in_loclist_baton): Adjust.
15658         (dwarf2_symbol_mark_computed): Adjust.
15659         (init_one_comp_unit): Don't assign
15660         dwarf2_cu::dwarf2_per_objfile.
15661         (set_die_type): Adjust.
15662
15663 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15664
15665         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15666         <dwarf2_per_objfile>: New field.
15667         (dwarf2_per_objfile): Remove global.
15668         (get_dwarf2_per_objfile): New function.
15669         (set_dwarf2_per_objfile): New function.
15670         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15671         dwarf2_per_objfile.
15672         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15673         (read_abbrev_offset): Likewise.
15674         (read_indirect_string): Likewise.
15675         (read_indirect_line_string): Likewise.
15676         (read_indirect_string_at_offset): Likewise.
15677         (read_indirect_string_from_dwz): Likewise.
15678         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15679         dwarf2_per_objfile.
15680         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15681         (create_all_comp_units): Change objfile parameter to
15682         dwarf2_per_objfile.
15683         (create_all_type_units): Likewise.
15684         (process_queue): Add dwarf2_per_objfile parameter.
15685         (read_and_check_comp_unit_head): Likewise.
15686         (lookup_dwo_unit_in_dwp): Likewise.
15687         (get_dwp_file): Likewise.
15688         (process_cu_includes): Likewise.
15689         (struct free_dwo_file_cleanup_data): New struct.
15690         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15691         set_dwarf2_per_objfile.
15692         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15693         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15694         context, adjust calls.
15695         (dw2_instantiate_symtab): Likewise.
15696         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15697         (dw2_get_cu): Likewise.
15698         (create_cu_from_index_list): Change objfile parameter to
15699         dwarf2_per_objfile.
15700         (create_cus_from_index_list): Get dwarf2_per_objfile from
15701         context, adjust calls.
15702         (create_cus_from_index): Likewise.
15703         (create_signatured_type_table_from_index): Change objfile
15704         parameter to dwarf2_per_objfile.
15705         (create_signatured_type_table_from_debug_names): Change objfile
15706         parameter to dwarf2_per_objfile.
15707         (create_addrmap_from_index): Likewise.
15708         (create_addrmap_from_aranges): Likewise.
15709         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15710         (dw2_setup): Remove.
15711         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15712         context.
15713         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15714         get_dwarf2_per_objfile.
15715         (dw2_forget_cached_source_info): Likewise.
15716         (dw2_map_symtabs_matching_filename): Likewise.
15717         (struct dw2_symtab_iterator) <index>: Remove.
15718         <dwarf2_per_objfile>: New field.
15719         (dw2_symtab_iter_init): Replace index parameter with
15720         dwarf2_per_objfile.
15721         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15722         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15723         (dw2_print_stats): Likewise.
15724         (dw2_dump): Likewise.
15725         (dw2_expand_symtabs_for_function): Likewise.
15726         (dw2_expand_all_symtabs): Likewise.
15727         (dw2_expand_symtabs_with_fullname): Likewise.
15728         (dw2_expand_marked_cus): Replace index and objfile parameters
15729         with dwarf2_per_objfile.
15730         (dw_expand_symtabs_matching_file_matcher): Add
15731         dwarf2_per_objfile parameter and adjust calls.
15732         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15733         adjust calls.
15734         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15735         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15736         adjust calls.
15737         (create_cus_from_debug_names_list): Replace objfile parameter
15738         with dwarf2_per_objfile and adjust calls.
15739         (create_cus_from_debug_names): Likewise.
15740         (dwarf2_read_debug_names): Likewise.
15741         (mapped_debug_names::namei_to_name): Adjust call.
15742         (dw2_debug_names_iterator::next): Likewise.
15743         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15744         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15745         (dw2_debug_names_dump): Likewise.
15746         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15747         (dw2_debug_names_expand_symtabs_matching): Likewise.
15748         (dwarf2_initialize_objfile): Likewise.
15749         (dwarf2_build_psymtabs): Likewise.
15750         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15751         this_cu.
15752         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15753         (read_and_check_comp_unit_head): Likewise.
15754         (read_abbrev_offset): Likewise.
15755         (create_debug_type_hash_table): Likewise.
15756         (create_debug_types_hash_table): Likewise.
15757         (create_all_type_units): Replace objfile parameter with
15758         dwarf2_per_objfile.
15759         (add_type_unit): Add dwarf2_per_objfile parameter.
15760         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15761         with dwarf2_per_objfile.
15762         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15763         (lookup_dwp_signatured_type): Likewise.
15764         (lookup_signatured_type): Likewise.
15765         (read_cutu_die_from_dwo): Likewise.
15766         (init_tu_and_read_dwo_dies): Likewise.
15767         (init_cutu_and_read_dies): Likewise.
15768         (init_cutu_and_read_dies_no_follow): Likewise.
15769         (allocate_type_unit_groups_table): Add objfile parameter.
15770         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15771         (get_type_unit_group): Likewise.
15772         (process_psymtab_comp_unit): Update call.
15773         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15774         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15775         (print_tu_stats): Likewise.
15776         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15777         in void* parameter.
15778         (build_type_psymtabs): Change objfile parameter to
15779         dwarf2_per_objfile.
15780         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15781         passed in void* parameter.
15782         (process_skeletonless_type_units): Change objfile parameter to
15783         dwarf2_per_objfile.
15784         (set_partial_user): Likewise.
15785         (dwarf2_build_psymtabs_hard): Likewise.
15786         (read_comp_units_from_section): Likewise.
15787         (create_all_comp_units): Likewise.
15788         (scan_partial_symbols): Update calls.
15789         (add_partial_symbol): Likewise.
15790         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15791         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15792         (process_queue): Add dwarf2_per_objfile parameter.
15793         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15794         (compute_compunit_symtab_includes): Likewise.
15795         (process_cu_includes): Add dwarf2_per_objfile parameter.
15796         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15797         (process_full_type_unit): Likewise.
15798         (process_imported_unit_die): Update call.
15799         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15800         (read_file_scope): Likewise.
15801         (allocate_dwo_file_hash_table): Add objfile parameter.
15802         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15803         (create_cus_hash_table): Likewise.
15804         (create_dwp_hash_table): Likewise.
15805         (create_dwo_unit_in_dwp_v1): Likewise.
15806         (create_dwp_v2_section): Likewise.
15807         (create_dwo_unit_in_dwp_v2): Likewise.
15808         (lookup_dwo_unit_in_dwp): Likewise.
15809         (try_open_dwop_file): Likewise.
15810         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15811         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15812         cleanup to include a reference to dwarf2_per_objfile.
15813         (open_dwp_file): Add dwarf2_per_objfile parameter.
15814         (open_and_init_dwp_file): Likewise.
15815         (get_dwp_file): Likewise.
15816         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15817         (queue_and_load_all_dwo_tus): Update call.
15818         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15819         data.
15820         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15821         (dwarf2_ranges_process): Likewise.
15822         (dwarf2_get_pc_bounds): Likewise.
15823         (mark_common_block_symbol_computed): Likewise.
15824         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15825         (dwarf2_read_abbrevs): Update call.
15826         (read_partial_die): Use dwarf2_per_objfile from cu.
15827         (find_partial_die): Likewise.
15828         (fixup_partial_die): Likewise.
15829         (read_attribute_value): Likewise.
15830         (read_indirect_string_at_offset_from): Add objfile parameter.
15831         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15832         parameter.
15833         (read_indirect_string_from_dwz): Add objfile parameter.
15834         (read_indirect_string): Add objfile parameter.
15835         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15836         (read_addr_index): Use dwarf2_per_objfile from cu.
15837         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15838         call dw2_setup.
15839         (read_str_index): Use dwarf2_per_objfile from cu.
15840         (get_debug_line_section): Likewise.
15841         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15842         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15843         (new_symbol_full): Use dwarf2_per_objfile from cu.
15844         (build_error_marker_type): Likewise.
15845         (lookup_die_type): Likewise.
15846         (determine_prefix): Likewise.
15847         (follow_die_offset): Likewise.
15848         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15849         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15850         (dwarf2_fetch_die_type_sect_off): Likewise.
15851         (dwarf2_get_die_type): Likewise.
15852         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15853         (get_signatured_type): Likewise.
15854         (get_DW_AT_signature_type): Likewise.
15855         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15856         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15857         (cu_debug_loc_section): Likewise.
15858         (fill_in_loclist_baton): Likewise.
15859         (dwarf2_symbol_mark_computed): Likewise.
15860         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15861         dwarf2_per_objfile.
15862         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15863         parameter.
15864         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15865         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15866         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15867         (set_die_type): Use dwarf2_free_objfile from cu.
15868         (get_die_type_at_offset): Likewise.
15869         (dwarf2_per_objfile_free): Don't assign global variable.
15870         (debug_names) <constructor>: Add dwarf2_per_objfile
15871         parameter, update m_debugstrlookup construction.
15872         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15873         parameter.
15874         <m_dwarf2_per_objfile>: New field.
15875         <lookup>: Use m_dwarf2_per_objfile.
15876         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15877         (psyms_seen_size): Likewise.
15878         (write_gdbindex): Replace objfile parameter with
15879         dwarf2_per_objfile.
15880         (write_debug_names): Likewise.
15881         (write_psymtabs_to_index): Likewise.
15882         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15883         calls.
15884
15885 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15886
15887         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15888         <dwarf2_per_objfile>: New field.
15889         (struct dwarf2_per_cu_data) <objfile>: Remove.
15890         <dwarf2_per_objfile>: New field.
15891         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15892         of objfile.
15893         (create_signatured_type_table_from_index): Likewise.
15894         (create_debug_type_hash_table): Likewise.
15895         (fill_in_sig_entry_from_dwo_entry): Likewise.
15896         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15897         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15898         objfile.
15899         (create_partial_symtab): Access objfile through
15900         dwarf2_per_objfile.
15901         (process_psymtab_comp_unit_reader): Likewise.
15902         (read_comp_units_from_section): Likewise.
15903         (scan_partial_symbols): Likewise.
15904         (add_partial_symbol): Likewise.
15905         (add_partial_subprogram): Likewise.
15906         (peek_die_abbrev): Likewise.
15907         (fixup_go_packaging): Likewise.
15908         (process_full_comp_unit): Likewise.
15909         (process_full_type_unit): Likewise.
15910         (process_imported_unit_die): Likewise.
15911         (dwarf2_compute_name): Likewise.
15912         (dwarf2_physname): Likewise.
15913         (read_import_statement): Likewise.
15914         (create_cus_hash_table): Assign dwarf2_physname instead of
15915         objfile.
15916         (read_func_scope): Access objfile through dwarf2_per_objfile.
15917         (read_lexical_block_scope): Likewise.
15918         (read_call_site_scope): Likewise.
15919         (read_variable): Likewise.
15920         (dwarf2_rnglists_process): Likewise.
15921         (dwarf2_ranges_process): Likewise.
15922         (dwarf2_ranges_read): Likewise.
15923         (dwarf2_record_block_ranges): Likewise.
15924         (dwarf2_add_field): Likewise.
15925         (dwarf2_add_member_fn): Likewise.
15926         (read_structure_type): Likewise.
15927         (process_structure_scope): Likewise.
15928         (read_enumeration_type): Likewise.
15929         (read_array_type): Likewise.
15930         (read_common_block): Likewise.
15931         (read_namespace_type): Likewise.
15932         (read_namespace): Likewise.
15933         (read_module_type): Likewise.
15934         (read_tag_pointer_type): Likewise.
15935         (read_tag_ptr_to_member_type): Likewise.
15936         (read_tag_string_type): Likewise.
15937         (read_subroutine_type): Likewise.
15938         (read_typedef): Likewise.
15939         (read_base_type): Likewise.
15940         (attr_to_dynamic_prop): Likewise.
15941         (read_subrange_type): Likewise.
15942         (read_unspecified_type): Likewise.
15943         (load_partial_dies): Likewise.
15944         (read_partial_die): Likewise.
15945         (find_partial_die): Likewise.
15946         (guess_partial_die_structure_name): Likewise.
15947         (fixup_partial_die): Likewise.
15948         (read_attribute_value): Likewise.
15949         (read_addr_index_from_leb128): Likewise.
15950         (dwarf2_read_addr_index): Likewise.
15951         (dwarf2_string_attr): Likewise.
15952         (lnp_state_machine::check_line_address): Likewise.
15953         (dwarf_decode_lines_1): Likewise.
15954         (dwarf_decode_lines): Likewise.
15955         (dwarf2_start_symtab): Likewise.
15956         (var_decode_location): Likewise.
15957         (new_symbol_full): Likewise.
15958         (dwarf2_const_value_data): Likewise.
15959         (dwarf2_const_value_attr): Likewise.
15960         (dwarf2_const_value): Likewise.
15961         (die_type): Likewise.
15962         (die_containing_type): Likewise.
15963         (lookup_die_type): Likewise.
15964         (guess_full_die_structure_name): Likewise.
15965         (anonymous_struct_prefix): Likewise.
15966         (dwarf2_name): Likewise.
15967         (follow_die_ref_or_sig): Likewise.
15968         (follow_die_offset): Likewise.
15969         (follow_die_ref): Likewise.
15970         (dwarf2_fetch_die_loc_sect_off): Likewise.
15971         (dwarf2_fetch_constant_bytes): Likewise.
15972         (dwarf2_fetch_die_type_sect_off): Likewise.
15973         (dwarf2_get_die_type): Likewise.
15974         (follow_die_sig): Likewise.
15975         (decode_locdesc): Likewise.
15976         (dwarf2_per_cu_objfile): Likewise.
15977         (dwarf2_per_cu_text_offset): Likewise.
15978         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15979         objfile.
15980         (set_die_type): Access objfile through
15981         dwarf2_per_objfile.
15982
15983 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15984
15985         * valprint.c (converted_character_d): Remove typedef.
15986         (DEF_VEC_O (converted_character_d)): Remove.
15987         (count_next_character): Use std::vector.
15988         (print_converted_chars_to_obstack): Likewise.
15989         (generic_printstr): Likewise.
15990
15991 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15992
15993         * xml-support.h (struct gdb_xml_value): Add constructor.
15994         <value>: Change type to unique_xmalloc_ptr.
15995         (gdb_xml_value_s): Remove typedef.
15996         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15997         (gdb_xml_element_start_handler): Change parameter type to
15998         std::vector.
15999         (xml_find_attribute): Likewise.
16000         * xml-support.c (xml_find_attribute): Change parameter type to
16001         std::vector and adjust.
16002         (gdb_xml_values_cleanup): Remove.
16003         (gdb_xml_parser::start_element): Adjust to std::vector.
16004         (xinclude_start_include): Change paraeter type to std::vector
16005         and adjust.
16006         * btrace.c (check_xml_btrace_version): Likewise.
16007         (parse_xml_btrace_block): Likewise.
16008         (parse_xml_btrace_pt_config_cpu): Likewise.
16009         (parse_xml_btrace_pt): Likewise.
16010         (parse_xml_btrace_conf_bts): Likewise.
16011         (parse_xml_btrace_conf_pt): Likewise.
16012         * memory-map.c (memory_map_start_memory): Likewise.
16013         (memory_map_start_property): Likewise.
16014         * osdata.c (osdata_start_osdata): Likewise.
16015         (osdata_start_item): Likewise.
16016         (osdata_start_column): Likewise.
16017         * remote.c (start_thread): Likewise.
16018         * solib-aix.c (library_list_start_library): Likewise.
16019         (library_list_start_list): Likewise.
16020         * solib-svr4.c (library_list_start_library): Likewise.
16021         (svr4_library_list_start_list): Likewise.
16022         * solib-target.c (library_list_start_segment): Likewise.
16023         (library_list_start_section): Likewise.
16024         (library_list_start_library): Likewise.
16025         (library_list_start_list): Likewise.
16026         * tracepoint.c (traceframe_info_start_memory): Likewise.
16027         (traceframe_info_start_tvar): Likewise.
16028         * xml-syscall.c (syscall_start_syscall): Likewise.
16029         * xml-tdesc.c (tdesc_start_target): Likewise.
16030         (tdesc_start_feature): Likewise.
16031         (tdesc_start_reg): Likewise.
16032         (tdesc_start_union): Likewise.
16033         (tdesc_start_struct): Likewise.
16034         (tdesc_start_flags): Likewise.
16035         (tdesc_start_enum): Likewise.
16036         (tdesc_start_field): Likewise.
16037         (tdesc_start_enum_value): Likewise.
16038         (tdesc_start_vector): Likewise.
16039
16040 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16041
16042         * extension.h (struct xmethod_worker) <clone>: Remove.
16043         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16044         Remove.
16045         (python_xmethod_worker::clone): Remove.
16046         * valops.c (find_overload_match): Use std::move instead of
16047         clone.
16048
16049 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16050
16051         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16052         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16053         <free_xmethod_worker_data>: Remove.
16054         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16055         <get_xmethod_arg_types>: Remove.
16056         <get_xmethod_result_type>: Remove.
16057         <invoke_xmethod>: Remove.
16058         * extension.c (new_xmethod_worker): Remove.
16059         (clone_xmethod_worker): Remove.
16060         (get_matching_xmethod_workers): Return void, pass std::vector by
16061         pointer.
16062         (get_xmethod_arg_types): Rename to...
16063         (xmethod_worker::get_arg_types): ... this, and adjust.
16064         (get_xmethod_result_type): Rename to...
16065         (xmethod_worker::get_result_type): ... this, and adjust.
16066         (invoke_xmethod): Remove.
16067         (free_xmethod_worker): Remove.
16068         (free_xmethod_worker_vec): Remove.
16069         * extension.h (enum ext_lang_rc): Move here from
16070         extension-priv.h.
16071         (struct xmethod_worker): Add constructor and destructor.
16072         <data>: Remove.
16073         <value>: Remove.
16074         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16075         virtual pure methods.
16076         <get_arg_types, get_result_type>: New methods.
16077         (xmethod_worker_ptr): Remove typedef.
16078         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16079         (xmethod_worker_vec): Remove typedef.
16080         (xmethod_worker_up): New typedef.
16081         (invoke_xmethod): Remove.
16082         (clone_xmethod_worker): Remove.
16083         (free_xmethod_worker): Remove.
16084         (free_xmethod_worker_vec): Remove.
16085         (get_xmethod_arg_types): Remove.
16086         (get_xmethod_result_type): Remove.
16087         * valops.c (find_method_list): Use std::vector, don't use
16088         intermediate vector.
16089         (value_find_oload_method_list): Use std::vector.
16090         (find_overload_match): Use std::vector.
16091         (find_oload_champ): Use std::vector.
16092         * value.c (value_free): Use operator delete.
16093         (value_of_xmethod): Rename to...
16094         (value_from_xmethod): ... this.  Don't assign
16095         xmethod_worker::value, take rvalue-reference.
16096         (result_type_of_xmethod): Adjust.
16097         (call_xmethod): Adjust.
16098         * value.h: Include extension.h.
16099         (struct xmethod_worker): Don't forward-declare.
16100         (value_of_xmethod): Rename to...
16101         (value_from_xmethod): ... this, take rvalue-reference.
16102         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16103         (struct python_xmethod_worker): ... this, add constructor and
16104         destructor.
16105         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16106         (gdbpy_free_xmethod_worker_data): Rename to...
16107         (python_xmethod_worker::~python_xmethod_worker): ... this and
16108         adjust.
16109         (gdbpy_clone_xmethod_worker_data): Rename to...
16110         (python_xmethod_worker::clone): ... this and adjust.
16111         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16112         temporary vector.
16113         (gdbpy_get_xmethod_arg_types): Rename to...
16114         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16115         (gdbpy_get_xmethod_result_type): Rename to...
16116         (python_xmethod_worker::do_get_result_type): ... this and
16117         adjust.
16118         (gdbpy_invoke_xmethod): Rename to...
16119         (python_xmethod_worker::invoke): ... this and adjust.
16120         (new_python_xmethod_worker): Rename to...
16121         (python_xmethod_worker::python_xmethod_worker): ... this and
16122         adjust.
16123         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16124         Remove.
16125         (gdbpy_free_xmethod_worker_data): Remove.
16126         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16127         (gdbpy_get_xmethod_arg_types): Remove.
16128         (gdbpy_get_xmethod_result_type): Remove.
16129         (gdbpy_invoke_xmethod): Remove.
16130         * python/python.c (python_extension_ops): Remove obsolete
16131         callbacks.
16132
16133 2018-01-05  Pedro Alves  <palves@redhat.com>
16134
16135         PR gdb/18653
16136         * common/signals-state-save-restore.c
16137         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16138         find a custom handler preinstalled, instead of internal erroring.
16139         But only warn if !quiet.
16140         * common/signals-state-save-restore.h
16141         (save_original_signals_state): New parameter 'quiet'.
16142         * main.c (captured_main_1): Move save_original_signals_state call
16143         after option handling, and pass QUIET.
16144
16145 2018-01-05  Pedro Alves  <palves@redhat.com>
16146
16147         * spu-tdep.c (spu_catch_start): Pass
16148         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16149
16150 2018-01-05  Pedro Alves  <palves@redhat.com>
16151
16152         PR gdb/22670
16153         * ada-lang.c (literal_symbol_name_matcher): New function.
16154         (ada_get_symbol_name_matcher): Use it for
16155         symbol_name_match_type::SEARCH_NAME.
16156         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16157         it down instead of assuming symbol_name_match_type::FULL.
16158         * block.h (block_lookup_symbol): New parameter 'match_type'.
16159         * c-valprint.c (print_unpacked_pointer): Use
16160         lookup_symbol_search_name instead of lookup_symbol.
16161         * compile/compile-object-load.c (get_out_value_type): Pass down
16162         symbol_name_match_type::SEARCH_NAME.
16163         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16164         symbol_name_match_type::FULL.
16165         * cp-support.c (cp_get_symbol_name_matcher): Handle
16166         symbol_name_match_type::SEARCH_NAME.
16167         * infrun.c (insert_exception_resume_breakpoint): Use
16168         lookup_symbol_search_name.
16169         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16170         * psymtab.c (maintenance_check_psymtabs): Use
16171         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16172         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16173         SYMBOL_SEARCH_NAME.
16174         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16175         if symbol_name_match_type::SEARCH_NAME.
16176         (lookup_symbol_in_language): Pass down
16177         symbol_name_match_type::FULL.
16178         (lookup_symbol_search_name): New.
16179         (lookup_language_this): Pass down
16180         symbol_name_match_type::SEARCH_NAME.
16181         (lookup_symbol_aux, lookup_local_symbol): New parameter
16182         'match_type'.  Pass it down.
16183         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16184         (lookup_symbol_search_name): New declaration.
16185         (lookup_symbol_in_block): New 'match_type' parameter.
16186
16187 2018-01-05  Pedro Alves  <palves@redhat.com>
16188
16189         PR gdb/22670
16190         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16191         ada_lookup_symbol.
16192         (ada_lookup_symbol): Reimplement in terms of
16193         ada_lookup_symbol_list, bits factored out from
16194         ada_lookup_encoded_symbol.
16195
16196 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16197
16198         * ada-exp.y (write_object_renaming): When subscripting an array
16199         using a symbol as the index, pass the block in call to
16200         ada_lookup_encoded_symbol when looking that symbol up.
16201
16202 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16203
16204         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16205         TYPE_INDEX_TYPE.
16206
16207 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16208
16209         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16210         the case where VALUE_LVAL (val0) is not lval_memory.
16211
16212 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16213
16214         * ada-valprint.c (print_optional_low_bound): Handle
16215         character-indexed array printing like boolean-indexed array
16216         printing.
16217
16218 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16219
16220         * NEWS: Create a new section for the next release branch.
16221         Rename the section of the current branch, now that it has
16222         been cut.
16223
16224 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16225
16226         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16227         * version.in: Bump version to 8.1.50.DATE-git.
16228
16229 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16230
16231         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16232         Add field.
16233         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16234         Add field.
16235         (default_exception_support_info) <catch_handlers_sym>: Add field.
16236         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16237         (ada_exception_name_addr_1): Add "catch handlers" handling.
16238         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16239         Update all callers.
16240         (create_excep_cond_exprs) <ex>: Add parameter.
16241         (re_set_exception): Update create_excep_cond_exprs call.
16242         (print_it_exception, print_one_exception, print_mention_exception)
16243         (print_recreate_exception): Add "catch handler" handling.
16244         (allocate_location_catch_handlers, re_set_catch_handlers)
16245         (check_status_catch_handlers, print_it_catch_handlers)
16246         (print_one_catch_handlers, print_mention_catch_handlers)
16247         (print_recreate_catch_handlers): New function.
16248         (catch_handlers_breakpoint_ops): New variable.
16249         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16250         Add parameter.  Add "catch handler" handling.
16251         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16252         Add "catch handler" handling.
16253         (ada_exception_catchpoint_cond_string): Add "catch handler"
16254         handling.
16255         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16256         call.
16257         (catch_ada_handlers_command): New function.
16258         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16259         operations structure.
16260         (_initialize_ada_language): Add "catch handlers" command entry.
16261         * NEWS: Document "catch handlers" feature.
16262
16263 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16264
16265         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16266         account when creating the array type of the slice.
16267         (ada_value_slice): Likewise.
16268
16269 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16270
16271         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16272         New enum value.
16273         (create_array_type_with_stride): Add byte_stride_prop parameter.
16274         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16275         New parameter.  Update all callers in this file.
16276         (array_type_has_dynamic_stride): New function.
16277         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16278         of arrays with dynamic byte strides.
16279         * dwarf2read.c (read_array_type): Add support for dynamic
16280         DW_AT_byte_stride attributes.
16281
16282 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16283
16284         * dwarf2read.c (read_unspecified_type): Treat
16285         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16286
16287 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16288
16289         Update copyright year range in all GDB files.
16290
16291 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16292
16293         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16294         and gdb/testsuite/gdb.base/step-line.c.
16295
16296 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16297
16298         * copyright.py (main): Dump the contents of
16299         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16300         even if BY_HAND is empty.
16301
16302 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16303
16304         * top.c (print_gdb_version): Update Copyright year in version
16305         message.
16306
16307 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16308
16309         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16310
16311 For older changes see ChangeLog-2017.
16312 \f
16313 Local Variables:
16314 mode: change-log
16315 left-margin: 8
16316 fill-column: 74
16317 version-control: never
16318 coding: utf-8
16319 End: