Remove obsolete comments from field_fmt
[external/binutils.git] / gdb / ChangeLog
1 2018-11-25  Tom Tromey  <tom@tromey.com>
2
3         * ui-out.c (ui_out::field_fmt): Remove comment.
4         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
5         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
6
7 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8
9         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
10         leak in open_source_file' has been partially undone by '2179fbc36d23
11         Return scoped_fd from open_source_file'. Re-add the transfer of
12         current s->fullname to the unique_xmalloc_ptr fullname given
13         to find_and_open_source.
14
15 2018-11-23  Pedro Alves  <palves@redhat.com>
16
17         * gdbthread.h (enum thread_state): Move comments here.
18         (is_running, is_stopped, is_exited): Remove declarations.
19
20 2018-11-22  Pedro Alves  <palves@redhat.com>
21
22         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
23         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
24         ALL_NON_EXITED_THREADS with all_non_exited_threads.
25         (print_one_breakpoint_location): Replace ALL_INFERIORS with
26         all_inferiors.
27         * bsd-kvm.c: Include inferior.h.
28         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
29         with all_non_exited_threads.
30         * common/filtered-iterator.h: New.
31         * common/safe-iterator.h: New.
32         * corelow.c (core_target_open): Don't call init_thread_list here.
33         * darwin-nat.c (thread_info_from_private_thread_info): Replace
34         ALL_THREADS with all_threads.
35         * fbsd-nat.c (fbsd_nat_target::resume): Replace
36         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
37         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
38         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
39         * fork-child.c (postfork_hook): Don't call init_thread_list here.
40         * gdbarch-selftests.c (register_to_value_test): Adjust.
41         * gdbthread.h: Don't include "inferior.h" here.
42         (struct inferior): Forward declare.
43         (enum step_over_calls_kind): Moved here from inferior.h.
44         (thread_info::deletable): Definition moved to thread.c.
45         (find_thread_ptid (inferior *, ptid_t)): Declare.
46         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
47         Include "thread-iter.h".
48         (all_threads, all_non_exited_threads, all_threads_safe): New.
49         (any_thread_p): Declare.
50         (thread_list): Delete.
51         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
52         all_non_exited_threads.
53         (proceed_after_attach_callback): Delete.
54         (proceed_after_attach): Take an inferior pointer instead of an
55         integer PID.  Adjust to use range-for.
56         (attach_post_wait): Pass down inferior pointer instead of pid.
57         Use range-for instead of ALL_NON_EXITED_THREADS.
58         (detach_command): Remove init_thread_list call.
59         * inferior-iter.h: New.
60         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
61         (delete_thread_of_inferior): Delete.
62         (delete_inferior, exit_inferior_1): Use range-for with
63         inf->threads_safe() instead of iterate_over_threads.
64         (inferior_appeared): Call init_thread_list here.
65         (discard_all_inferiors): Use all_non_exited_inferiors.
66         (find_inferior_id, find_inferior_pid): Use all_inferiors.
67         (iterate_over_inferiors): Use all_inferiors_safe.
68         (have_inferiors, number_of_live_inferiors): Use
69         all_non_exited_inferiors.
70         (number_of_inferiors): Use all_inferiors and std::distance.
71         (print_inferior): Use all_inferiors.
72         * inferior.h: Include gdbthread.h.
73         (enum step_over_calls_kind): Moved to gdbthread.h.
74         (struct inferior) <thread_list>: New field.
75         <threads, non_exited_threads, threads_safe>: New methods.
76         (ALL_INFERIORS): Delete.
77         Include "inferior-iter.h".
78         (ALL_NON_EXITED_INFERIORS): Delete.
79         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
80         functions.
81         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
82         ALL_NON_EXITED_THREADS with all_non_exited_threads.
83         * infrun.c (follow_exec): Use all_threads_safe.
84         (clear_proceed_status, proceed): Use all_non_exited_threads.
85         (init_wait_for_inferior): Don't clear inline frame state here.
86         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
87         all_threads instead of ALL_NON_EXITED_THREADS.
88         (random_pending_event_thread): Use all_non_exited_threads instead
89         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
90         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
91         instead of ALL_NON_EXITED_THREADS.
92         (handle_no_resumed): Use all_non_exited_threads instead of
93         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
94         ALL_INFERIORS.
95         (restart_threads, switch_back_to_stepped_thread): Use
96         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
97         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
98         all_inferiors.
99         (kill_unfollowed_fork_children): Use inf->non_exited_threads
100         instead of ALL_NON_EXITED_THREADS.
101         * linux-tdep.c (linux_make_corefile_notes): Use
102         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
103         * linux-thread-db.c (thread_db_target::update_thread_list):
104         Replace ALL_INFERIORS with all_inferiors.
105         (thread_db_target::thread_handle_to_thread_info): Use
106         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
107         * mi/mi-interp.c (multiple_inferiors_p): New.
108         (mi_on_resume_1): Simplify using all_non_exited_threads and
109         multiple_inferiors_p.
110         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
111         instead of ALL_NON_EXITED_THREADS.
112         * nto-procfs.c (nto_procfs_target::open): Don't call
113         init_thread_list here.
114         * record-btrace.c (record_btrace_target_open)
115         (record_btrace_target::stop_recording)
116         (record_btrace_target::close)
117         (record_btrace_target::record_is_replaying)
118         (record_btrace_target::resume, record_btrace_target::wait)
119         (record_btrace_target::record_stop_replaying): Use
120         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
121         * record-full.c (record_full_wait_1): Use all_non_exited_threads
122         instead of ALL_NON_EXITED_THREADS.
123         * regcache.c (cooked_read_test): Remove reference to global
124         thread_list.
125         * remote-sim.c (gdbsim_target::create_inferior): Don't call
126         init_thread_list here.
127         * remote.c (remote_target::update_thread_list): Use
128         all_threads_safe instead of ALL_NON_EXITED_THREADS.
129         (remote_target::process_initial_stop_replies): Replace
130         ALL_INFERIORS with all_non_exited_inferiors and use
131         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
132         (remote_target::open_1): Don't call init_thread_list here.
133         (remote_target::append_pending_thread_resumptions)
134         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
135         instead of ALL_NON_EXITED_THREADS.
136         (remote_target::commit_resume)
137         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
138         with all_non_exited_inferiors and use all_non_exited_threads
139         instead of ALL_NON_EXITED_THREADS.
140         (remote_target::kill_new_fork_children): Use
141         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
142         init_thread_list and init_wait_for_inferior calls.
143         (remote_target::remote_btrace_maybe_reopen)
144         (remote_target::thread_handle_to_thread_info): Use
145         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
146         * target.c (target_terminal::restore_inferior)
147         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
148         all_non_exited_inferiors.
149         * thread-iter.c: New file.
150         * thread-iter.h: New file.
151         * thread.c: Include "inline-frame.h".
152         (thread_list): Delete.
153         (clear_thread_inferior_resources): Call clear_inline_frame_state.
154         (init_thread_list): Use all_threads_safe instead of
155         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
156         (new_thread): Adjust to per-inferior thread lists.
157         (add_thread_silent): Pass inferior to find_thread_ptid.
158         (thread_info::deletable): New, moved from the header.
159         (delete_thread_1): Adjust to per-inferior thread lists.
160         (find_thread_global_id): Use inf->threads().
161         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
162         find_thread_ptid.
163         (find_thread_ptid(inferior*, ptid_t)): New overload.
164         (iterate_over_threads): Use all_threads_safe.
165         (any_thread_p): New.
166         (thread_count): Use all_threads and std::distance.
167         (live_threads_count): Use all_non_exited_threads and
168         std::distance.
169         (valid_global_thread_id): Use all_threads.
170         (in_thread_list): Use find_thread_ptid.
171         (first_thread_of_inferior): Adjust to per-inferior thread lists.
172         (any_thread_of_inferior, any_live_thread_of_inferior): Use
173         inf->non_exited_threads().
174         (prune_threads, delete_exited_threads): Use all_threads_safe.
175         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
176         (set_resumed, set_running): Use all_non_exited_threads.
177         (is_thread_state, is_stopped, is_exited, is_running)
178         (is_executing): Delete.
179         (set_executing, set_stop_requested, finish_thread_state): Use
180         all_non_exited_threads.
181         (print_thread_info_1): Use all_inferiors and all_threads.
182         (thread_apply_all_command): Use all_non_exited_threads.
183         (thread_find_command): Use all_threads.
184         (update_threads_executing): Use all_non_exited_threads.
185         * tid-parse.c (parse_thread_id): Use inf->threads.
186         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
187
188 2018-11-22  Pedro Alves  <palves@redhat.com>
189
190         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
191         switch to it before calling into try_open_exec_file.
192
193 2018-11-22  Pedro Alves  <palves@redhat.com>
194
195         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
196         inferior_thread instead of find_thread_ptid, and only when
197         inferior_ptid is not null_ptid.
198         * inferior.c (add_inferior): Don't include target_pid_to_str
199         output when the inferior is not started.
200         * python/py-inferior.c (python_on_normal_stop): Don't use
201         find_thread_ptid.
202         (tui_on_user_selected_context_changed): Use inferior_thread
203         instead of find_thread_ptid, and only when inferior_ptid is not
204         null_ptid.
205
206 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
207
208         PR python/23714
209         * gdb/python/python.c (execute_gdb_command): Call
210         prevent_dont_repeat earlier to avoid affecting dont_repeat.
211
212 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
213
214         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
215         (HFILES_NO_SRCDIR): Add arch/riscv.h.
216         * arch/riscv.c: New file.
217         * arch/riscv.h: New file.
218         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
219         this list, and add arch/riscv.o.
220         * features/Makefile: Add riscv features.
221         * features/riscv/32bit-cpu.c: New file.
222         * features/riscv/32bit-cpu.xml: New file.
223         * features/riscv/32bit-csr.c: New file.
224         * features/riscv/32bit-csr.xml: New file.
225         * features/riscv/32bit-fpu.c: New file.
226         * features/riscv/32bit-fpu.xml: New file.
227         * features/riscv/64bit-cpu.c: New file.
228         * features/riscv/64bit-cpu.xml: New file.
229         * features/riscv/64bit-csr.c: New file.
230         * features/riscv/64bit-csr.xml: New file.
231         * features/riscv/64bit-fpu.c: New file.
232         * features/riscv/64bit-fpu.xml: New file.
233         * features/riscv/rebuild-csr-xml.sh: New file.
234         * riscv-tdep.c: Add 'arch/riscv.h' include.
235         (riscv_gdb_reg_names): Delete.
236         (csr_reggroup): New global.
237         (struct riscv_register_alias): Delete.
238         (struct riscv_register_feature): New structure.
239         (riscv_register_aliases): Delete.
240         (riscv_xreg_feature): New global.
241         (riscv_freg_feature): New global.
242         (riscv_virtual_feature): New global.
243         (riscv_csr_feature): New global.
244         (riscv_create_csr_aliases): New function.
245         (riscv_read_misa_reg): Delete.
246         (riscv_has_feature): Delete.
247         (riscv_isa_xlen): Simplify, just return cached xlen.
248         (riscv_isa_flen): Simplify, just return cached flen.
249         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
250         (riscv_register_name): Update to make use of tdesc_register_name.
251         Look up xreg and freg names in the new globals riscv_xreg_feature
252         and riscv_freg_feature.  Don't supply csr aliases here.
253         (riscv_fpreg_q_type): Delete.
254         (riscv_register_type): Use tdesc_register_type in almost all
255         cases, override the returned type in a few specific cases only.
256         (riscv_print_one_register_info): Handle errors reading registers.
257         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
258         registers that are otherwise unknown to GDB.  Also check the
259         csr_reggroup.
260         (riscv_print_registers_info): Remove assert about upper register
261         number, and use gdbarch_register_reggroup_p instead of
262         short-cutting.
263         (riscv_find_default_target_description): New function.
264         (riscv_check_tdesc_feature): New function.
265         (riscv_add_reggroups): New function.
266         (riscv_setup_register_aliases): New function.
267         (riscv_init_reggroups): New function.
268         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
269         setup register groups.  Register new riscv debug variable.
270         * riscv-tdep.h: Add 'arch/riscv.h' include.
271         (struct gdbarch_tdep): Remove abi union, and add
272         riscv_gdbarch_features field.  Remove cached quad floating point
273         type, and provide initialisation for double type field.
274         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
275         the list of targets using the feature based target descriptions.
276         * NEWS: Mention target description support.
277
278 2018-11-21  Pedro Alves  <palves@redhat.com>
279
280         * valops.c (find_method_list, value_find_oload_method_list)
281         (find_overload_match, find_oload_champ): Rename parameters and
282         locals.
283
284 2018-11-21  Pedro Alves  <palves@redhat.com>
285
286         * valops.c (find_method_list): Replace pointer and length
287         parameters with an gdb::array_view.  Adjust.
288         (value_find_oload_method_list): Likewise.
289         (find_overload_match): Use gdb::array_view for methods list.
290         Adjust to find_oload_champ interface change.
291         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
292         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
293
294 2018-11-21  Pedro Alves  <palves@redhat.com>
295
296         * gdbtypes.c (compare_badness): Change type of parameters to const
297         reference.  Adjust to badness_vector being a std::vector now.
298         (rank_function): Adjust to badness_vector being a std::vector now.
299         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
300         (LENGTH_MATCH): Delete.
301         (compare_badness): Change type of parameters to const reference.
302         (rank_function): Return a badness_vector by value now.
303         (find_overload_match): Adjust to badness_vector being a
304         std::vector now.  Remove cleanups.
305         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
306         badness_vector pointer.
307         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
308         a badness_vector pointer.  Adjust to badness_vector being a
309         std::vector now.  Remove cleanups.
310         (find_oload_champ): 'oload_champ_bv' parameter now
311         a badness_vector pointer.  Adjust to badness_vector being a
312         std::vector now.  Remove cleanups.
313
314 2018-11-21  Pedro Alves  <palves@redhat.com>
315
316         * cp-support.c (sym_return_val_size, sym_return_val_index)
317         (sym_return_val): Delete.
318         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
319         add to the vector.
320         (make_symbol_overload_list): Adjust to return a std::vector
321         instead of maintaining a global open coded vector.
322         (make_symbol_overload_list_block): Add std::vector parameter.
323         (make_symbol_overload_list_block): Rename to ...
324         (add_symbol_overload_list_block): ... this and add std::vector
325         parameter.
326         (make_symbol_overload_list_namespace): Rename to ...
327         (add_symbol_overload_list_namespace): ... this and add std::vector
328         parameter.
329         (make_symbol_overload_list_adl_namespace): Rename to ...
330         (add_symbol_overload_list_adl_namespace): ... this and add
331         std::vector parameter.
332         (make_symbol_overload_list_adl): Delete.
333         (add_symbol_overload_list_adl): New.
334         (make_symbol_overload_list_using): Rename to ...
335         (add_symbol_overload_list_using): ... this and add std::vector
336         parameter.
337         (make_symbol_overload_list_qualified): Rename to ...
338         (add_symbol_overload_list_qualified): ... this and add std::vector
339         parameter.
340         * cp-support.h: Include "common/array-view.h" and <vector>.
341         (make_symbol_overload_list): Change return type to std::vector.
342         (make_symbol_overload_list_adl): Delete declaration.
343         (add_symbol_overload_list_adl): New declaration.
344         * valops.c (find_overload_match): Local 'oload_syms' now a
345         std::vector.
346         (find_oload_champ_namespace): 'oload_syms' parameter now a
347         std::vector pointer.
348         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
349         std::vector pointer.  Adjust to new make_symbol_overload_list
350         interface.
351
352 2018-11-21  Pedro Alves  <palves@redhat.com>
353
354         * common/array-view.h (array_view::splice(size_type, size_t)): New.
355         (array_view::splice(size_type)): New.
356         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
357         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
358         std::vector.
359         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
360         * extension.h: Include "common/array-view.h".
361         (xmethod_worker::invoke): Adjust to use gdb::array_view.
362         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
363         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
364         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
365         (xmethod_worker::do_get_result_type): Adjust to use
366         gdb::array_view.
367         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
368         * gdbtypes.h: Include "common/array-view.h".
369         (rank_function): Adjust to use gdb::array_view.
370         * python/py-xmethods.c (python_xmethod_worker::invoke)
371         (python_xmethod_worker::do_get_arg_types)
372         (python_xmethod_worker::do_get_result_type)
373         (python_xmethod_worker::invoke): Adjust to new interfaces.
374         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
375         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
376         * valops.c (find_overload_match, find_oload_champ_namespace)
377         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
378         gdb:array_view and the new xmethod_worker interfaces.
379         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
380         gdb::array_view.
381         * value.h (find_overload_match, result_type_of_xmethod)
382         (call_xmethod): Adjust to use gdb::array_view.
383         * unittests/array-view-selftests.c: Add slicing tests.
384
385 2018-11-21  Pedro Alves  <palves@redhat.com>
386
387         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
388         * common/array-view.h (make_array_view): New.
389         * compile/compile-object-run.c (compile_object_run): Adjust to
390         pass an array_view.
391         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
392         * eval.c (eval_call): Adjust to pass an array_view.
393         (evaluate_subexp_standard): Adjust to pass an array_view.
394         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
395         * guile/scm-value.c (gdbscm_value_call): Likewise.
396         * infcall.c (push_dummy_code): Replace pointer + size parameters
397         with an array_view parameter.
398         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
399         adjust.
400         * infcall.h: Include "common/array-view.h".
401         (call_function_by_hand, call_function_by_hand_dummy): Replace
402         pointer + size parameters with an array_view parameter.
403         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
404         * linux-tdep.c (linux_infcall_mmap): Likewise.
405         * objc-lang.c (lookup_objc_class, lookup_child_selector)
406         (value_nsstring, print_object_command): Likewise.
407         * python/py-value.c (valpy_call): Likewise.
408         * rust-lang.c (rust_evaluate_funcall): Likewise.
409         * spu-tdep.c (flush_ea_cache): Likewise.
410         * valarith.c (value_x_binop, value_x_unop): Likewise.
411         * valops.c (value_allocate_space_in_inferior): Likewise.
412         * unittests/array-view-selftests.c (run_tests): Add
413         gdb::make_array_view test.
414
415 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
416
417         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
418         than a fixed size buffer.
419
420 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
421
422         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
423         and remove insertion of extra spaces in GDB's output.
424         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
425         Layout field into a temporary buffer, and then output it as a
426         string field.
427
428 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
429
430         * NEWS: Document the language choice done by
431         'info [types|functions|variables]|rbreak'.
432
433 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
434
435         * symtab.c (treg_matches_sym_type_name): Use
436         scoped_switch_to_sym_language_if_auto instead of local logic.
437         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
438         to switch to SYM language when language mode is auto.
439
440 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
441
442         * language.h (scoped_switch_to_sym_language_if_auto): New class.
443
444 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
445
446         * symtab.c (search_symbols): Properly check absence of type regexp
447         before entering the loop scanning the minimal symbols.
448
449 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
450
451         * s12z-tdep.c (s12z_extract_return_value): New function.
452         (inv_reg_perm) New array.
453         (s12z_return_value): Populate readbuf if non-null.
454
455 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
456
457         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
458         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
459         to MinGW fixed by Gnulib.
460         (O_NOINHERIT): Define if not defined.
461
462 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
463
464         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
465
466 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
467
468         * infrun.c (displaced_step_inferior_state) <next>: Remove.
469
470 2018-11-19  Tom Tromey  <tom@tromey.com>
471
472         * source.c (get_filename_and_charpos): Return void.
473
474 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
475
476         * skip.c (_initialize_step_skip): Fix "info skip" help.
477
478 2018-11-16  Tom Tromey  <tom@tromey.com>
479
480         PR rust/23625:
481         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
482
483 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
484
485         * infrun.c (displaced_step_inferior_states): Change type to
486         std::forward_list.
487         (get_displaced_stepping_state): Adjust.
488         (displaced_step_in_progress_any_inferior): Adjust.
489         (add_displaced_stepping_state): Adjust.
490         (remove_displaced_stepping_state): Adjust.
491
492 2018-11-18  Tom Tromey  <tom@tromey.com>
493
494         PR build/23814:
495         * target-delegates.c: Rebuild.
496         * ia64-linux-nat.c (class ia64_linux_nat_target)
497         <have_steppable_watchpoint>: Use override.  Return true, not 1.
498         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
499         "self" argument.
500         (ia64_linux_nat_target::low_new_thread): Rename.
501         (class ia64_linux_nat_target) <read_description>: Don't declare.
502         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
503         bool.
504
505 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
506
507         PR gdb/22736:
508         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
509         lang_struct_return code.
510
511 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
512
513         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
514         return_method.
515         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
516         * amd64-tdep.c (amd64_push_arguments): Likewise.
517         (amd64_push_dummy_call): Likewise.
518         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
519         * arc-tdep.c (arc_push_dummy_call): Likewise.
520         * arm-tdep.c (arm_push_dummy_call): Likewise.
521         * avr-tdep.c (avr_push_dummy_call): Likewise.
522         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
523         * cris-tdep.c (cris_push_dummy_call): Likewise.
524         * csky-tdep.c (csky_push_dummy_call): Likewise.
525         * frv-tdep.c (frv_push_dummy_call): Likewise.
526         * gdbarch.c: Regenerate.
527         * gdbarch.h: Regenerate.
528         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
529         return_method.
530         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
531         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
532         (hppa64_push_dummy_call): Likewise.
533         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
534         * i386-tdep.c (i386_push_dummy_call): Likewise.
535         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
536         * infcall.c (call_function_by_hand_dummy): Likewise.
537         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
538         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
539         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
540         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
541         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
542         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
543         * mep-tdep.c (mep_push_dummy_call): Likewise.
544         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
545         (mips_n32n64_push_dummy_call): Likewise.
546         (mips_o32_push_dummy_call): Likewise.
547         (mips_o64_push_dummy_call): Likewise.
548         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
549         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
550         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
551         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
552         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
553         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
554         (ppc64_sysv_abi_push_dummy_call): Likewise.
555         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
556         (ppc64_sysv_abi_push_dummy_call): Likewise.
557         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
558         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
559         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
560         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
561         * rx-tdep.c (rx_push_dummy_call): Likewise.
562         * s390-tdep.c (s390_push_dummy_call): Likewise.
563         * score-tdep.c (score_push_dummy_call): Likewise.
564         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
565         (sh_push_dummy_call_nofpu): Likewise.
566         * sparc-tdep.c (sparc32_store_arguments): Likewise.
567         (sparc32_push_dummy_call): Likewise.
568         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
569         (sparc64_push_dummy_call): Likewise.
570         * spu-tdep.c (spu_push_dummy_call): Likewise.
571         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
572         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
573         * v850-tdep.c (v850_push_dummy_call): Likewise.
574         * vax-tdep.c (vax_push_dummy_call): Likewise.
575         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
576         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
577
578 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
579
580         * gdbarch.sh (enum function_call_return_method): Add enum.
581         * gdbarch.h: Regenerate.
582         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
583
584 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
585
586         * unittests/copy_bitwise-selftests.c: New file.
587         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
588         (selftests::copy_bitwise_tests): Delete, moving this code to
589         unittests/copy_bitwise-selftests.c instead.
590         (_initialize_utils): Do not register copy_bitwise tests.
591         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
592         unittests/copy_bitwise-selftests.c.
593
594 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
595
596         * ada-lang.c (move_bits): Delete. Update all callers to use
597         copy_bitwise instead.
598         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
599         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
600         Move from here to utils.c.
601         (_initialize_dwarf2loc): Remove call to register copy_bitwise
602         selftests.
603         * utils.h (copy_bitwise): Add declaration.
604         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
605         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
606         Moved here from dwarf2loc.c.
607         (_initialize_utils): Register copy_bitwise selftests.
608
609 2018-11-14  Jim Wilson  <jimw@sifive.com>
610
611         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
612         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
613         then increment next_regnum if odd.
614         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
615         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
616         function type.  Pass new arg to riscv_arg_location based on function
617         type.
618         (riscv_return_value): Pass new arg to riscv_arg_location.
619
620         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
621         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
622         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
623
624         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
625         setting len.  New local align, set to max of arg align and xlen,
626         and pass to first riscv_assign_stack_location call.
627
628 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
629
630         * skip.c (complete_skip_number): New function.
631         (_initialize_step_skip): Add completers to some skip commands.
632
633 2018-11-09  Tom Tromey  <tom@tromey.com>
634
635         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
636         (struct remote_g_packet_data): Derive from allocate_on_obstack.
637         <guesses>: Now a std::vector.
638         (remote_g_packet_data_init, register_remote_g_packet_guess):
639         Update.
640         (remote_read_description_p): Update.  Return bool.
641         (remote_target::read_description): Update.
642         (struct remote_g_packet_guess): Add constructor.
643
644 2018-11-09  Tom Tromey  <tom@tromey.com>
645
646         * common/scoped_fd.h (class scoped_fd): Add move constructor and
647         move assignment operator.
648         * psymtab.c (psymtab_to_fullname): Update.
649         * source.h (open_source_file): Return scoped_fd.
650         (find_and_open_source): Likewise.
651         * source.c (open_source_file): Return scoped_fd.
652         (get_filename_and_charpos): Update.
653         (print_source_lines_base): Update.  Use scoped_fd::to_file.
654         (forward_search_command): Likewise.
655         (reverse_search_command): Likewise.
656         (find_and_open_source): Return scoped_fd.
657         * tui/tui-source.c (tui_set_source_content): Update.  Use
658         gdb_file_up.
659
660 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
661
662         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
663         overflow.
664
665 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
666
667         * configure: Regenerate.
668
669 2018-11-09  Tom de Vries  <tdevries@suse.de>
670
671         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
672         unconditionally, to set the language of the symbol.  Manage freeing
673         returned pointer using gdb::unique_xmalloc_ptr.
674
675 2018-11-08  Tom Tromey  <tom@tromey.com>
676
677         * record.c (require_record_target): Upper-case "<TAB>".
678
679 2018-11-08  Tom Tromey  <tom@tromey.com>
680
681         * python/lib/gdb/command/pretty_printers.py
682         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
683
684 2018-11-08  Tom Tromey  <tom@tromey.com>
685
686         PR gdb/23555:
687         PR gdb/23838:
688         * target.h (target_supports_terminal_ours): Return bool.
689         * target.c (target_supports_terminal_ours): Handle case where
690         current_top_target returns nullptr.  Return bool.
691
692 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
693
694         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
695         return the correct count for potential HFAs.
696
697 2018-11-08  Jan Beulich  <jbeulich@suse.com>
698
699         * i387-tdep.c (i387_supply_xsave): Split handling of
700         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
701         (i387_collect_xsave): Likewise.
702
703 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
704
705         * riscv-tdep.c (riscv_insn::decode): Update header comment.
706         (riscv_frame_this_id): Catch errors thrown while building the
707         frame cache, leave the frame id as the default, which is the outer
708         frame id.
709
710 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
711
712         * ada-lang.c (read_atcb): Only set task_info->called_task if
713         task_info->state == Entry_Caller_Sleep.
714         (print_ada_task_info): Do not check task_info->state before
715         checking task_info->called_task.
716         (info_task): Likewise.
717
718 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
719
720         * ada-tasks.c (read_atcb): Clear task_info before computing
721         the value of each of its fields.
722
723 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
724
725         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
726         NULL before dereferencing it.
727
728 2018-11-06  Tom de Vries  <tdevries@suse.de>
729
730         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
731         program headers.
732
733 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
734
735         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
736         so that it applies to uclinux as well.
737
738 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
739
740         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
741         when on AAPCS.
742
743 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
744
745         * riscv-fbsd-nat.c (getregs_supplies): Return true for
746         RISCV_CSR_SSTATUS_REGNUM.
747
748 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
749
750         * source.c (open_source_file): Fix leak by transferring the
751         current s->fullname to the unique_xmalloc_ptr fullname given
752         to find_and_open_source.
753
754 2018-11-04  Tom Tromey  <tom@tromey.com>
755
756         * varobj.c (install_default_visualizer): Update.
757         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
758         Return gdbpy_ref.
759         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
760         (find_pretty_printer_from_progspace)
761         (find_pretty_printer_from_gdb, find_pretty_printer)
762         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
763         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
764         Update.
765
766 2018-11-04  Tom Tromey  <tom@tromey.com>
767
768         * python/python.c (gdbpy_parameter_value): Update.
769         * python/python-internal.h (python_string_to_unicode)
770         (python_string_to_target_python_string)
771         (host_string_to_python_string): Return gdbpy_ref.
772         * python/py-utils.c (python_string_to_unicode)
773         (unicode_to_encoded_python_string)
774         (unicode_to_target_python_string)
775         (python_string_to_target_string)
776         (python_string_to_target_python_string): Return gdbpy_ref.
777         (python_string_to_host_string): Update.
778         (host_string_to_python_string): Return gdbpy_ref.
779         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
780         (stpy_fullname): Update.
781         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
782         Update.
783         * python/py-prettyprint.c (print_string_repr): Update.
784         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
785         (objfpy_get_build_id): Update.
786         * python/py-breakpoint.c (bppy_get_location)
787         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
788         Update.
789
790 2018-11-04  Tom Tromey  <tom@tromey.com>
791
792         * python/python-internal.h (gdb_py_object_from_longest)
793         (gdb_py_object_from_ulongest): Return gdbpy_ref.
794         * python/py-value.c (valpy_int): Update.
795         * python/py-utils.c (gdb_py_object_from_longest): Return
796         gdbpy_ref.
797         (gdb_py_object_from_ulongest): Likewise.
798         * python/py-type.c (typy_get_alignof): Update.
799         * python/py-linetable.c (ltpy_get_all_source_lines)
800         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
801         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
802
803 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
804
805         * ada-lang.c (_initialize_ada_language): Fix typo.
806
807 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
808
809         * language.c (type): Remove.
810         (_initialize_language): Remove assignment to type.
811
812 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
813
814         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
815         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
816         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
817         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
818         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
819         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
820         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
821         and aarch64-ravenscar-thread.o.
822         * NEWS: Add entry documenting Ravenscar tasking support
823         on AArch64 ELF.
824
825 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
826
827         * symtab.c (info_functions_command): Initialize quiet flag.
828         * stack.c (info_args_command): Likewise.
829
830 2018-11-01  Jim Wilson  <jimw@sifive.com>
831
832         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
833         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
834         debugging messages.
835
836 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
837
838         * ada-lang.c (ada_watch_location_expression): New function.
839         (ada_language_defn): Set la_watch_location_expression to
840         ada_watch_location_expression.
841
842 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
843
844         * print-utils.c (int_string): Remove unnecessary trailing spaces.
845
846 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
847
848         * rs6000-tdep.c (skip_prologue): Fix potential negative left
849         shifting.
850
851 2018-11-01  Jerome Guitton  <guitton@adacore.com>
852             Joel Brobecker  <brobecker@adacore.com>
853
854         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
855         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
856         * arm-pikeos-tdep.c: New file.
857         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
858         embedded system.
859         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
860
861 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
862
863         * common/pathstuff.c (get_standard_temp_dir): New.
864         * common/pathstuff.h (get_standard_temp_dir): New.
865         * config.in: Re-generate.
866         * configure: Re-generate.
867         * configure.ac: Don't check for mkdtemp.
868         * gnulib/aclocal-m4-deps.mk: Re-generate.
869         * gnulib/aclocal.m4: Re-generate.
870         * gnulib/config.in: Re-generate.
871         * gnulib/configure: Re-generate.
872         * gnulib/import/Makefile.am: Re-generate.
873         * gnulib/import/Makefile.in: Re-generate.
874         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
875         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
876         * gnulib/import/m4/mkdtemp.m4: New file.
877         * gnulib/import/mkdtemp.c: New file.
878         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
879         Add mkdtemp module.
880         * unittests/mkdir-recursive-selftests.c (test): Use
881         get_standard_temp_dir.
882         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
883         ifdef.
884         * compile/compile.c (get_compile_file_tempdir): Likewise.
885
886 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
887
888         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
889         (SIG_FRAME_LR_OFFSET64): New define.
890         (SIG_FRAME_FP_OFFSET64): New define.
891         (aix_sighandle_frame_cache): New Function.
892         (aix_sighandle_frame_this_id): New Function.
893         (aix_sighandle_frame_prev_register): New Function.
894         (aix_sighandle_frame_sniffer): New Function.
895         (aix_sighandle_frame_unwind): New global variable.
896         (rs6000_aix_init_osabi): Install new frame unwinder.
897
898 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
899
900         PR gdb/23835
901         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
902         already defined.
903
904 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
905
906         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
907
908 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
909
910         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
911         (producer_is_icc): New function.
912         (check_producer): Set producer_is_icc field on dwarf2_cu.
913         (dwarf2_init_integer_type): New function.
914         (read_base_type): Call dwarf2_init_integer_type instead of
915         init_integer_type in all cases.
916         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
917         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
918         LEN is greater than 0.
919
920 2018-10-30  Tom Tromey  <tom@tromey.com>
921
922         * main.c (captured_main_1): Check return value of bfd_init.
923
924 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
925
926         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
927         Adjust comments.
928
929 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
930
931         * procfs.c: Include common/pathstuff.h.
932
933 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
934
935         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
936         Add missing braces.  No functional change.
937
938 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
939
940         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
941         to report a bad option and fix indentation.
942         * demangle.c (demangle_command): Use report_unrecognized_option_error
943         to report a bad option and correctly report the bad option.
944
945 2018-10-27  Tom Tromey  <tom@tromey.com>
946
947         PR cli/23364:
948         * darwin-nat.c (copied_shell): New global.
949         (may_have_sip): Rename from should_disable_startup_with_shell.
950         (copy_shell_to_cache, maybe_cache_shell): New functions.
951         (darwin_nat_target::create_inferior): Update.  Use
952         copied_shell.
953
954 2018-10-27  Tom Tromey  <tom@tromey.com>
955
956         * unittests/scoped_fd-selftests.c (test_to_file): New function.
957         (run_tests): Call test_to_file.
958         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
959         temporary files.
960         * common/scoped_fd.h (scoped_fd::to_file): New method.
961
962 2018-10-27  Tom Tromey  <tom@tromey.com>
963
964         * unittests/scoped_mmap-selftests.c (test_normal): Use
965         gdb_mkostemp_cloexec.
966         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
967         Use gdb_mkostemp_cloexec.
968         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
969         gnulib/config.in, gnulib/configure,
970         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
971         gnulib/import/m4/gnulib-cache.m4,
972         gnulib/import/m4/gnulib-comp.m4: Update.
973         * gnulib/import/m4/mkostemp.m4: New file.
974         * gnulib/import/m4/mkstemp.m4: Remove.
975         * gnulib/import/mkostemp.c: New file.
976         * gnulib/import/mkstemp.m4: Remove.
977         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
978         mkstemp, add mkostemp.  Apply new patch.
979         * gnulib/import/stdlib.in.h: Apply patch.
980         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
981         New file.
982         * dwarf-index-write.c (write_psymtabs_to_index): Use
983         gdb_mkostemp_cloexec.
984         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
985
986 2018-10-27  Tom Tromey  <tom@tromey.com>
987
988         * unittests/mkdir-recursive-selftests.c: New file.
989         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
990         unittests/mkdir-recursive-selftests.c.
991         * dwarf-index-cache.c (mkdir_recursive): Move to
992         common/filestuff.c.
993         (index_cache::store): Check return value of mkdir_recursive.
994         (create_dir_and_check, test_mkdir_recursive): Move to new file.
995         (_initialize_index_cache): Don't register test.
996         * common/filestuff.h (mkdir_recursive): Declare.
997         * common/filestuff.c (mkdir_recursive): Move from
998         dwarf-index-cache.c.  Return bool.
999
1000 2018-10-27  Tom Tromey  <tom@tromey.com>
1001
1002         * dwarf-index-write.c (write_psymtabs_to_index): Move
1003         make_temp_filename to common/pathstuff.c.
1004         * common/pathstuff.h (make_temp_filename): Declare.
1005         * common/pathstuff.c (make_temp_filename): New function, moved
1006         from dwarf-index-write.c.
1007
1008 2018-10-27  Tom Tromey  <tom@tromey.com>
1009
1010         * procfs.c (procfs_target::create_inferior): Use get_shell.
1011         * cli/cli-cmds.c (shell_escape): Use get_shell.
1012         * windows-nat.c (windows_nat_target::create_inferior): Use
1013         get_shell.
1014         * common/pathstuff.c (get_shell): New function.
1015         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1016         (fork_inferior): Use get_shell.
1017         * common/pathstuff.h (get_shell): Declare.
1018
1019 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1020
1021         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1022
1023 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1024
1025         * stack.c (print_variable_and_value_data): Add preg and treg.
1026         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1027         and update callers.
1028         (print_frame_arg_vars): Likewise.
1029         (prepare_reg): New function.
1030         (info_locals_command): Extract info print args and use them.
1031         (info_args_command): Likewise.
1032         (_initialize_stack): Modify on-line help.
1033         * symtab.c (treg_matches_sym_type_name): New function.
1034         (search_symbols): New arg t_regexp.
1035         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1036         (info_variables_command): Extract info print args and use them.
1037         (info_functions_command): Likewise.
1038         (info_types_command): Update call to symtab_symbol_info.
1039         (_initialize_symtab): Modify on-line help.
1040         * symtab.h (treg_matches_sym_type_name): New function.
1041         (search_symbols): New t_regexp arg.
1042
1043 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1044
1045         * cli-utils.c (extract_arg_maybe_quoted): New function.
1046         (extract_info_print_args): New function.
1047         (info_print_args_help): New function.
1048         (report_unrecognized_option_error): New function.
1049         * cli-utils.h (extract_arg_maybe_quoted): New function.
1050         (extract_info_print_args): New function.
1051         (info_print_args_help): New function.
1052         (report_unrecognized_option_error): New function.
1053
1054 2018-10-26  Tom Tromey  <tom@tromey.com>
1055
1056         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1057         (compute_compunit_symtab_includes): Update.
1058         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1059         (compunit_symtab_ptr): Likewise.
1060
1061 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1062
1063         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1064         default_print_auxv_entry for specific tag values.
1065
1066 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1067
1068         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1069
1070 2018-10-26  Jim Wilson  <jimw@sifive.com>
1071
1072         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1073         (riscv_linux_sigframe_init): Declare.
1074         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1075         (riscv_linux_sigframe): New.
1076         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1077         (riscv_linux_sigframe_init): Define.
1078         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1079
1080         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1081         (riscv_isa_flen): Likewise.  Drop static.
1082         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1083         (riscv_isa_flen): Likewise.  Declare.
1084
1085 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1086             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1087
1088         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1089         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1090         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1091         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1092         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1093         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1094         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1095         Define.
1096         (struct ppc_linux_features) <htm>: New field.
1097         (ppc_linux_no_features): Add initializer for htm field.
1098         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1099         new tdescs.
1100         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1101         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1102         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1103         Define if not already defined.
1104         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1105         and rs6000/powerpc-isa207-htm-vsx64l.
1106         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1107         rs6000/powerpc-isa207-htm-vsx64l.xml.
1108         * features/rs6000/power-htm-spr.xml: New file.
1109         * features/rs6000/power-htm-core.xml: New file.
1110         * features/rs6000/power64-htm-core.xml: New file.
1111         * features/rs6000/power-htm-fpu.xml: New file.
1112         * features/rs6000/power-htm-altivec.xml: New file.
1113         * features/rs6000/power-htm-vsx.xml: New file.
1114         * features/rs6000/power-htm-ppr.xml: New file.
1115         * features/rs6000/power-htm-dscr.xml: New file.
1116         * features/rs6000/power-htm-tar.xml: New file.
1117         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1118         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1119         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1120         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1121         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1122         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1123         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1124         fetch_regset with HTM regsets.
1125         (store_register, store_ppc_registers): Call store_regset with HTM
1126         regsets.
1127         (ppc_linux_nat_target::read_description): Set htm field in the
1128         features struct if needed.
1129         * ppc-linux-tdep.c: Include
1130         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1131         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1132         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1133         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1134         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1135         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1136         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1137         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1138         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1139         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1140         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1141         (ppc32_linux_ctarregset): New globals.
1142         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1143         (ppc_linux_collect_core_cpgrregset): New function.
1144         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1145         regsets.
1146         (ppc_linux_core_read_description): Check if the tm spr section is
1147         present and set htm in the features struct.
1148         (_initialize_ppc_linux_tdep): Call
1149         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1150         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1151         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1152         Declare.
1153         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1154         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1155         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1156         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1157         New fields.
1158         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1159         Likewise.
1160         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1161         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1162         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1163         New enum fields.
1164         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1165         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1166         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1167         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1168         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1169         <PPC_CTAR_REGNUM>: Likewise.
1170         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1171         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1172         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1173         (IS_CEFP_PSEUDOREG): Define.
1174         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1175         registers.  Return names for the checkpointed DFP, VSX, and EFP
1176         pseudo registers.
1177         (rs6000_pseudo_register_type): Remove initial assert and raise an
1178         internal error in the else clause instead.  Return types for the
1179         checkpointed DFP, VSX, and EFP pseudo registers.
1180         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1181         checkpointed DFP pseudo registers.
1182         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1183         checkpointed VSX pseudo registers.
1184         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1185         from efpr_pseudo_register_read and
1186         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1187         registers.
1188         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1189         Handle checkpointed DFP, VSX, and EFP registers.
1190         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1191         (efp_ax_pseudo_register_collect): New functions.
1192         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1193         register logic to new functions.  Handle checkpointed DFP, VSX,
1194         and EFP pseudo registers.
1195         (rs6000_gdbarch_init): Look for and validate the htm features.
1196         Include checkpointed DFP, VSX and EFP pseudo-registers.
1197         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1198         HTM registers.
1199
1200 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1201
1202         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1203         without altivec or fpu.
1204
1205 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1206             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1207
1208         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1209         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1210         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1211         Define if not already defined.
1212         * features/rs6000/power-ebb.xml: New file.
1213         * features/rs6000/power-linux-pmu.xml: New file.
1214         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1215         features.
1216         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1217         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1218         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1219         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1220         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1221         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1222         fetch_regset with ebb and pmu regsets.
1223         (store_register, store_ppc_registers): Call store_regset with ebb
1224         and pmu regsets.
1225         (ppc_linux_nat_target::read_description): Set isa207 field in the
1226         features struct if ebb and pmu are avaiable.
1227         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1228         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1229         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1230         and pmu regsets.
1231         (ppc_linux_core_read_description): Check if the pmu section is
1232         present and set isa207 in the features struct.
1233         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1234         (ppc32_linux_pmuregset): Declare.
1235         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1236         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1237         <ppc_sier_regnum>: New field.
1238         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1239         New enum values.
1240         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1241         values.
1242         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1243         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1244         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1245         ebb and pmu features.
1246
1247 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1248             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1249
1250         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1251         (tdesc_powerpc_isa207_vsx64l): Declare.
1252         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1253         (struct ppc_linux_features) <isa207>: New field.
1254         (ppc_linux_no_features): Add initializer for isa207 field.
1255         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1256         new tdescs.
1257         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1258         (NT_PPC_TAR): Define if not already defined.
1259         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1260         rs6000/powerpc-isa207-vsx64l.
1261         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1262         rs6000/powerpc-isa207-vsx64l.xml.
1263         * features/rs6000/power-tar.xml: New file.
1264         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1265         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1266         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1267         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1268         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1269         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1270         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1271         fetch_regset with the TAR regset.
1272         (store_register, store_ppc_registers): Call store_regset with the
1273         TAR regset.
1274         (ppc_linux_nat_target::read_description): Set isa207 field in the
1275         features struct if needed.
1276         * ppc-linux-tdep.c: Include
1277         features/rs6000/powerpc-isa207-vsx32l.c and
1278         features/rs6000/powerpc-isa207-vsx64l.c.
1279         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1280         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1281         regset.
1282         (ppc_linux_core_read_description): Check if the tar section is
1283         present and set isa207 in the features struct.
1284         (_initialize_ppc_linux_tdep): Call
1285         initialize_tdesc_powerpc_isa207_vsx32l and
1286         initialize_tdesc_powerpc_isa207_vsx64l.
1287         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1288         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1289         (enum) <PPC_TAR_REGNUM>: New enum value.
1290         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1291         feature.
1292         (ppc_process_record_op31): Record changes to TAR.
1293
1294 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1295             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1296
1297         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1298         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1299         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1300         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1301         (struct ppc_linux_features) <ppr_dscr>: New field.
1302         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1303         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1304         new tdescs.
1305         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1306         Define if not already defined.
1307         * features/Makefile (WHICH): Add
1308         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1309         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1310         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1311         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1312         * features/rs6000/power-dscr.xml: New file.
1313         * features/rs6000/power-ppr.xml: New file.
1314         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1315         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1316         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1317         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1318         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1319         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1320         * ppc-linux-nat.c: Include <sys/uio.h>.
1321         (fetch_regset, store_regset, check_regset): New functions.
1322         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1323         DSCR and PPR regsets.
1324         (store_register, store_ppc_registers): Call store_regset with
1325         DSCR and PPR regsets.
1326         (ppc_linux_get_hwcap2): New function.
1327         (ppc_linux_nat_target::read_description): Call
1328         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1329         features struct if needed.
1330         * ppc-linux-tdep.c: Include
1331         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1332         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1333         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1334         (ppc32_linux_dscrregset): New globals.
1335         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1336         and dscr regsets.
1337         (ppc_linux_core_read_description): Check if the ppr and dscr
1338         sections are present and set ppr_dscr in the features struct.
1339         (_initialize_ppc_linux_tdep): Call
1340         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1341         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1342         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1343         (ppc32_linux_dscrregset): Declare.
1344         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1345         <ppc_dscr_regnum>: New field.
1346         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1347         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1348         and dscr features.
1349         (ppc_process_record_op31): Record changes to PPR and DSCR.
1350
1351 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1352
1353         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1354         second initializer line for the have_* variables.  Initialize
1355         have_fpu to 0 instead of 1.
1356
1357 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1358
1359         * arch/ppc-linux-common.c (ppc_linux_match_description):
1360         Parenthesize tdesc assignements and indent them properly.
1361
1362 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1363
1364         * ppc-linux-nat.c (fetch_register): Change if statement to else
1365         if.
1366         (store_register): Likewise.
1367
1368 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1369
1370         * rs6000-tdep.c: Remove reggroups.h include.
1371         (rs6000_pseudo_register_reggroup_p): Remove.
1372         (rs6000_gdbarch_init): Remove call to
1373         set_tdesc_pseudo_register_reggroup_p.
1374
1375 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1376
1377         * reggroups.c (default_register_reggroup_p): Return true for
1378         decfloat registers and float_reggroup.
1379
1380 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1381
1382         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1383         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1384         ppc_linux_collect_vrregset by regcache_collect_regset.
1385
1386 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1387
1388         * linux-tdep.c (linux_collect_regset_section_cb): Use
1389         std::vector<gdb_byte> instead of char * and malloc for buf.
1390         Remove xfree.
1391
1392 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1393
1394         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1395         symtab_start instead of always using language_unknown.
1396
1397 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1398
1399         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1400         READ_P parameter, catch and ignore register access errors from
1401         either the old or new MISA location.
1402         (riscv_has_feature): Update call to riscv_read_misa_reg.
1403
1404 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1405
1406         * python/py-function.c (convert_values_to_python): Return
1407         gdbpy_ref<>.  Add header comment.
1408         (fnpy_call): Adjust.
1409
1410 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1411
1412         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1413         (cmdpy_completer_handle_brkchars): Adjust.
1414         (cmdpy_completer): Adjust.
1415
1416 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1417
1418         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1419         Pass correct regnum to raw_supply_zeroed.
1420
1421 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1422
1423         * regcache.c (cooked_read_test): Add CSKY to the list of
1424         architectures with a save_reggroup
1425
1426 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1427
1428         PR gdb/23368
1429         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1430         transfer terminal state from old new new inferior.
1431         * terminal.h (swap_terminal_info): New function.
1432         * inflow.c (swap_terminal_info): New function.
1433
1434 2018-10-23  Tom Tromey  <tom@tromey.com>
1435
1436         * record-btrace.c (get_thread_current_frame_id): Rename from
1437         get_thread_current_frame.  Return a frame_id.
1438         (record_btrace_start_replaying): Update.
1439
1440 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1441
1442         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1443         for CSRs.
1444
1445 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1446
1447         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1448         have_nonsteppable_watchpoint attribute to 1.
1449
1450 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1451
1452         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1453         register names.
1454         (struct register_alias): Rename to...
1455         (struct riscv_register_alias): ...this, and update comment.
1456         (riscv_register_aliases): Update type, and alias names.  Remove
1457         CSR names from this list.
1458         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1459         register names.  Add an extra assertion.
1460         (riscv_is_regnum_a_named_csr): New function.
1461         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1462
1463 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1464
1465         * configure.tgt: Add configuration for s12z.
1466         * s12z-tdep.c:  New file.
1467         * NEWS: Mention new target.
1468
1469 2018-10-22  Jim Wilson  <jimw@sifive.com>
1470
1471         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1472         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1473
1474         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1475         (riscv_register_type): Use them.
1476         (riscv_print_one_register_info): Handle union of floats same as float.
1477         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1478         riscv_fpreg_q_type fields.
1479
1480 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1481
1482         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1483         * gdbarch.h: Re-generate.
1484         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1485         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1486         * eval.c (evaluate_subexp_standard): Likewise.
1487         * findvar.c (value_of_register): Likewise.
1488         (value_of_register_lazy): Likewise.
1489         (address_from_register): Likewise.
1490         * frame.c (get_frame_register_bytes): Likewise.
1491         * gdbarch-selftests.c (register_to_value_test): Likewise.
1492         * h8300-tdep.c (h8300_register_type): Likewise.
1493         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1494         (i386_svr4_reg_to_regnum): Likewise.
1495         * infcmd.c (default_print_registers_info): Likewise.
1496         (registers_info): Likewise.
1497         (print_vector_info): Likewise.
1498         (default_print_float_info): Likewise.
1499         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1500         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1501         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1502         (mi_cmd_data_list_changed_registers): Likewise.
1503         (mi_cmd_data_list_register_values): Likewise.
1504         (mi_cmd_data_write_register_values): Likewise.
1505         (mi_cmd_trace_frame_collected): Likewise.
1506         * mips-tdep.c (print_gp_register_row): Likewise.
1507         (mips_print_registers_info): Likewise.
1508         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1509         * regcache.c (init_regcache_descr): Likewise.
1510         (register_size): Likewise.
1511         (register_dump::dump): Likewise.
1512         (cooked_read_test): Likewise.
1513         (cooked_write_test): Likewise.
1514         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1515         (rs6000_gdbarch_init): Likewise.
1516         * stabsread.c (stab_reg_to_regnum): Likewise.
1517         * stack.c (info_frame_command): Likewise.
1518         * target-descriptions.c (tdesc_register_name): Likewise.
1519         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1520         * tui/tui-regs.c (tui_show_register_group): Likewise.
1521         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1522         (user_reg_map_regnum_to_name): Likewise.
1523         (value_of_user_reg): Likewise.
1524         (maintenance_print_user_registers): Likewise.
1525         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1526         (xtensa_register_name): Likewise.
1527         (xtensa_register_type): Likewise.
1528         (xtensa_reg_to_regnum): Likewise.
1529         (xtensa_pseudo_register_read): Likewise.
1530         (xtensa_pseudo_register_write): Likewise.
1531
1532 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1533
1534         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1535         correctly-sized buffer with raw_read.
1536         (amd64_pseudo_register_write): Use correctly-sized buffer for
1537         raw_read/raw_write.
1538
1539 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1540
1541         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1542         in add_prefix_cmd of set print type.
1543
1544 2018-10-19  Tom Tromey  <tom@tromey.com>
1545
1546         PR tui/18388:
1547         * NEWS: Mention tabset deprecation.
1548         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1549         (update_tab_width): New function.
1550         (tui_set_tab_width, tui_show_tab_width): New functions.
1551         (tui_set_tab_width_command): Use update_tab_width.
1552         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1553         Add new "set tui tab-width" command.
1554         * tui/tui-source.c (tui_set_source_content): Update.
1555         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1556         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1557         Don't declare.
1558         (tui_tab_width): Declare.
1559         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1560         (tui_set_default_tab_len): Remove.
1561
1562 2018-10-19  Tom Tromey  <tom@tromey.com>
1563
1564         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1565         (key_is_backspace, tui_getc): Don't declare.
1566         * tui/tui-io.c (key_is_start_sequence): Now static.
1567         (key_is_end_sequence, key_is_backspace): Remove.
1568         (tui_getc): Now static.
1569
1570 2018-10-19  Tom Tromey  <tom@tromey.com>
1571
1572         * symfile.c (reread_symbols): Clear "static_links".
1573
1574 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1575
1576         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1577         define.
1578         (aarch64_linux_sigframe_init): Extra boundary checks.
1579
1580 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1581
1582         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1583         the possibly non-existent tdesc type 'vec128', but the type of raw
1584         register v16 instead.
1585
1586 2018-10-19  Gary Benson <gbenson@redhat.com>
1587
1588         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1589
1590 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1591
1592         PR cli/23785
1593         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1594         NULL.
1595
1596 2018-10-17  Paul Koning  <paul_koning@dell.com>
1597
1598         * charset.c (convert_between_encodings): Fix unsigned overflow.
1599
1600 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1601
1602         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1603         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1604         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1605         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1606         New functions.
1607         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1608         and fbsd_info_proc_mappings_header.
1609         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1610         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1611         New.
1612
1613 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1614
1615         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1616         Solaris Maintainer.
1617
1618 2018-10-15  Tom Tromey  <tom@tromey.com>
1619
1620         * tui/tui.c (strcat_to_buf): Remove casts.
1621         * tui/tui-winsource.c (tui_show_source_line)
1622         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1623         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1624         * tui/tui-windata.c (tui_first_data_item_displayed)
1625         (tui_delete_data_content_windows, tui_erase_data_content)
1626         (tui_display_all_data, tui_display_data_from)
1627         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1628         * tui/tui-win.c (tui_set_win_height)
1629         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1630         casts.
1631         * tui/tui-win.c (tui_resize_all): Remove casts.
1632         (tui_scroll_backward_command, tui_set_focus)
1633         (tui_set_tab_width_command): Likewise.
1634         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1635         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1636         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1637         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1638         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1639         Remove casts.
1640
1641 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1642
1643         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1644         AArch64/ARM maintainer.
1645
1646 2018-10-11  Gary Benson <gbenson@redhat.com>
1647
1648         * interps.h (interp::m_name): Make private and mutable.
1649         * interps.c (interp::~interp): Free m_name.
1650
1651 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1652             Simon Marchi <simark@simark.ca>
1653
1654         * README (`configure' options): Add documentation for new
1655         "--enable-unit-tests" option.
1656         * acinclude.m4: Include "selftest.m4".
1657         * configure: Regenerate.
1658         * configure.ac: Use "GDB_AC_SELFTEST".
1659         * maint.c (maintenance_selftest): Update message informing
1660         that selftests have been disabled.
1661         (maintenance_info_selftests): Likewise.
1662         * selftest.m4: New file.
1663
1664 2018-10-10  Gary Benson <gbenson@redhat.com>
1665
1666         * remote.c (remote_target::remote_send_printf): Add
1667         missing va_end found by Coverity.
1668
1669 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1670
1671         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1672
1673 2018-10-09  Tom Tromey  <tom@tromey.com>
1674
1675         * configure: Rebuild.
1676         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1677         * NEWS: Update --enable-ubsan documentation.
1678
1679 2018-10-09  Gary Benson <gbenson@redhat.com>
1680
1681         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1682         found by Coverity.
1683
1684 2018-10-08  Tom Tromey  <tom@tromey.com>
1685
1686         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1687         variable.
1688         (riscv_fbsd_init_abi): Likewise.
1689
1690 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1691         * valops.c (value_struct_elt_for_reference): Rename local variable
1692         to work around the shadowing a previous local warning.
1693
1694 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1695
1696         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1697         * NEWS: Mention new FreeBSD/riscv native configuration.
1698         * configure.host: Add riscv*-*-freebsd*.
1699         * configure.nat: Likewise.
1700         * riscv-fbsd-nat.c: New file.
1701
1702 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1703
1704         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1705         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1706         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1707         * NEWS: Mention new FreeBSD/riscv target.
1708         * configure.tgt: Add riscv*-*-freebsd*.
1709         * riscv-fbsd-tdep.c: New file.
1710         * riscv-fbsd-tdep.h: New file.
1711
1712 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1713
1714         * regcache.h (struct regcache_map_entry): Note that this type can
1715         be used with traditional frame caches.
1716         * trad-frame.c (trad_frame_set_reg_regmap): New.
1717         * trad-frame.h (trad_frame_set_reg_regmap): New.
1718
1719 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1720
1721         PR c++/16841
1722         * valops.c (get_virtual_base_offset): New function.
1723         (value_struct_elt_for_reference): Use it to get virtual base offset
1724         and add it in calculating class member address.
1725
1726 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1727
1728         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1729         (check_producer): Check if the producer is codewarrior.
1730         (producer_is_codewarrior): New function.
1731         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1732         produced by codewarrior.
1733         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1734
1735 2018-10-06  Tom Tromey  <tom@tromey.com>
1736
1737         PR python/19399:
1738         * python/py-inferior.c: Add "architecture" entry.
1739         (infpy_architecture): New function.
1740
1741 2018-10-06  Tom Tromey  <tom@tromey.com>
1742
1743         PR python/21765:
1744         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1745         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1746         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1747         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1748
1749 2018-10-06  Tom Tromey  <tom@tromey.com>
1750
1751         PR build/17077:
1752         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1753         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1754         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1755         #include.
1756
1757 2018-10-06  Tom Tromey  <tom@tromey.com>
1758
1759         * python/py-breakpoint.c (bppy_get_location): Handle a
1760         bp_breakpoint without a location.
1761
1762 2018-10-06  Tom Tromey  <tom@tromey.com>
1763
1764         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1765         (_RegEx): Reformat help text.
1766         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1767         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1768         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1769         text.
1770         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1771         (EnableXMethod, DisableXMethod): Remove help indentation.
1772         Capitalize meta-syntactic variables.
1773         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1774         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1775         Capitalize meta-syntactic variables.
1776         * python/lib/gdb/command/explore.py (ExploreCommand)
1777         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1778         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1779         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1780         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1781         Remove help indentation.
1782         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1783         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1784         (DisableFrameFilter, SetFrameFilterPriority)
1785         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1786
1787 2018-10-06  Tom Tromey  <tom@tromey.com>
1788
1789         PR tui/28819:
1790         * tui/tui-io.c (gdb_wgetch): New function.
1791         (tui_mld_getc, tui_getc): Use it.
1792
1793 2018-10-05  Tom Tromey  <tom@tromey.com>
1794
1795         * sol-thread.c (sol_thread_target::wait): Rename inner
1796         "save_ptid".
1797
1798 2018-10-04  Tom Tromey  <tom@tromey.com>
1799
1800         * configure: Rebuild.
1801         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1802
1803 2018-10-04  Tom Tromey  <tom@tromey.com>
1804
1805         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1806         declaration of "block".
1807
1808 2018-10-04  Tom Tromey  <tom@tromey.com>
1809
1810         * common/filestuff.c (fdwalk): Remove inner declaration of
1811         "result".
1812
1813 2018-10-04  Tom Tromey  <tom@tromey.com>
1814
1815         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1816         "structs_addr" and hoist declaration.
1817
1818 2018-10-04  Tom Tromey  <tom@tromey.com>
1819
1820         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1821         variable "size".
1822
1823 2018-10-04  Tom Tromey  <tom@tromey.com>
1824
1825         * mdebugread.c (parse_partial_symbols): Use std::string.
1826
1827 2018-10-04  Tom Tromey  <tom@tromey.com>
1828
1829         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1830         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1831         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1832         header.
1833         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1834         more inner scope.
1835         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1836         * varobj.c (varobj_update): Rename inner "newobj",
1837         "type_changed".
1838         * valprint.c (generic_emit_char): Rename inner "buf".
1839         * valops.c (find_overload_match): Rename inner "temp".
1840         (value_struct_elt_for_reference): Declare "v" in more inner
1841         scope.
1842         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1843         * unittests/array-view-selftests.c (run_tests): Rename inner
1844         "vec".
1845         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1846         header.
1847         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1848         "tsv" in more inner scope.
1849         (print_one_static_tracepoint_marker): Rename inner
1850         "tuple_emitter".
1851         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1852         (tic6x_push_dummy_call): Don't redeclare "addr".
1853         * target-float.c: Declare "dto" lower.
1854         * symtab.c (lookup_local_symbol): Rename inner "sym".
1855         (find_pc_sect_line): Rename inner "pc".
1856         * stack.c (print_frame): Don't redeclare "gdbarch".
1857         (return_command): Rename inner "gdbarch".
1858         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1859         "sp".
1860         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1861         header.
1862         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1863         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1864         scope.
1865         * remote.c (remote_target::update_thread_list): Don't redeclare
1866         "tp".
1867         (remote_target::process_initial_stop_replies): Rename inner
1868         "thread".
1869         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1870         (remote_target::wait_as): Don't redeclare "stop_reply".
1871         (remote_target::get_thread_local_address): Rename inner
1872         "result".
1873         (remote_target::get_tib_address): Likewise.
1874
1875         * regcache.c (cooked_read_test): Rename "regnum".
1876         * record-btrace.c (cmd_record_btrace_start): Rename inner
1877         "exception".
1878         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1879         loop header.
1880         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1881         header.
1882         (ppu2spu_sniffer): Rename inner "buf".
1883         * parse.c (operator_check_standard): Rename inner "type",
1884         "objfile".
1885         * p-valprint.c (pascal_val_print): Introduce new scope for
1886         "low_bound", "high_bound".
1887         * p-exp.y (yylex): Declare "i" in loop header.
1888         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1889         Lower declaration of "s".
1890         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1891         header.
1892         (nios2_push_dummy_call): Rename "len".
1893         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1894         "buf".
1895         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1896         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1897         (linux_xfer_osdata_modules): Likewise.
1898         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1899         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1900         (mips_o64_push_dummy_call): Likewise.
1901         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1902         "op".
1903         * mi/mi-main.c (list_available_thread_groups): Rename inner
1904         "tuple_emitter".
1905         (mi_cmd_data_read_memory): Rename inner "opts".
1906         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1907         "tuple_emitter".
1908         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1909         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1910         more inner scope.
1911         (parse_partial_symbols): Rename inner "pst", "p", "name"
1912         * main.c (captured_main_1): Rename inner "i"s.
1913         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1914         "oso2".
1915         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1916         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1917         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1918         (handle_signal_stop): Rename inner "gdbarch".
1919         (handle_command): Declare "signum" in loop header.
1920         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1921         "status".
1922         (examine_prologue): Rename inner "sol" and "sof".
1923         (ia64_extract_return_value): Rename inner "val".  Declare another
1924         "val" in a more inner scope.
1925         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1926         inner scope.
1927         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1928         "except".
1929         * findvar.c (default_read_var_value): Don't redeclare "addr".
1930         * f-exp.y (yylex): Declare "i" in loop header.
1931         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1932         Rename inner "type", "expect_type".
1933         (evaluate_subexp_for_sizeof): Rename inner "pc".
1934         * elfread.c (elf_symfile_read): Rename inner "abfd".
1935         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1936         "bytes_read".
1937         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1938         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1939         (dwarf_decode_line_header): Rename inner "lh".
1940         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1941         "offset".  Declare "i" in loop header.
1942         (disassemble_dwarf_expression): Rename inner "addr_size".
1943         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1944         inner "result".
1945         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1946         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1947         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1948         "inner_list_emitter".
1949         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1950         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1951         declaration in a block.
1952         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1953         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1954         "obstack_final_size".
1955         * cp-support.c (inspect_type): Declare "i" in loop header.
1956         * compile/compile.c (compile_instance::insert_symbol_error):
1957         Rename inner "e".
1958         * common/agent.c (agent_run_command): Remove inner "ret"
1959         declaration.
1960         * coffread.c (coff_symfile_read): Rename inner "name".
1961         (coff_symfile_read): Rename inner "abfd".
1962         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1963         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1964         "high".
1965         * c-exp.y (lex_one_token): Move "len" declaration lower.
1966         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1967         "gdbarch".
1968         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1969         "b".
1970         (watch_command_1): Declare "mark" later.
1971         (clear_command): Don't shadow "a" or "b".
1972         (delete_command): Rename inner "b".
1973         (delete_trace_command): Likewise.
1974         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1975         "op".
1976         (arm_gdbarch_init): Remove inner "e_flags".
1977         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1978         "offset" in inner blocks.
1979
1980 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1981
1982         * dwarf-index-write.c (file_write): Don't write if the vector is
1983         empty.
1984
1985 2018-10-05  Tom de Vries  <tdevries@suse.de>
1986
1987         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1988         PyArg_ParseTuple call.
1989
1990 2018-10-05  Tom de Vries  <tdevries@suse.de>
1991
1992         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1993         PyArg_ParseTuple call.
1994
1995 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1996
1997         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1998         to avoid exceeding 80 characters per line limit.
1999
2000 2018-10-04  Tom Tromey  <tom@tromey.com>
2001
2002         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2003         (reread_symbols): Update.
2004         * complaints.h (clear_complaints): Remove argument.
2005         * complaints.c (enum complaint_series): Remove.
2006         (series): Remove global.
2007         (complaint_internal): Update.
2008         (clear_complaints): Remove argument.
2009
2010 2018-10-04  Tom Tromey  <tom@tromey.com>
2011
2012         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2013         debugging symbols" message if there is a separate debug objfile.
2014
2015 2018-10-04  Tom Tromey  <tom@tromey.com>
2016
2017         PR cli/19551:
2018         * symfile.c (symbol_file_add_with_addrs): Update output.
2019         * psymtab.c (require_partial_symbols): Update output.
2020
2021 2018-10-04  Tom Tromey  <tom@tromey.com>
2022
2023         PR cli/22234:
2024         * complaints.c: Emit \n.
2025
2026 2018-10-04  Tom Tromey  <tom@tromey.com>
2027
2028         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2029         (separate_debug_file_exists, find_separate_debug_file)
2030         (add_symbol_file_command, reread_symbols, allocate_symtab)
2031         (allocate_compunit_symtab): Use filtered printing, not
2032         unfiltered.
2033         * psymtab.c (require_partial_symbols, dump_psymtab)
2034         (allocate_psymtab): Use filtered printing, not unfiltered.
2035
2036 2018-10-04  Tom Tromey  <tom@tromey.com>
2037
2038         * complaints.c (complaint_internal): Correctly check complaint
2039         count.
2040
2041 2018-10-04  Tom Tromey  <tom@tromey.com>
2042
2043         * complaints.h (struct complaints): Remove declaration.
2044         * complaints.c (clear_complaints): Remove an unused variable.
2045
2046 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2047
2048         * MAINTAINERS (Write After Approval): Add self.
2049
2050 2018-10-03  Tom Tromey  <tom@tromey.com>
2051
2052         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2053         "buffer_contents".
2054         * coffread.c (coff_symtab_read): Initialize "newobj".
2055
2056 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2057
2058         * dwarf2read.c (read_func_scope): Remove struct keyword in
2059         range-based for.
2060
2061 2018-10-03  Tom Tromey  <tom@tromey.com>
2062
2063         * README: Mention --enable-ubsan.
2064         * NEWS: Mention --enable-ubsan.
2065         * acinclude.m4: Include sanitize.m4.
2066         * configure: Rebuild.
2067         * configure.ac: Call AM_GDB_UBSAN.
2068         * sanitize.m4: New file.
2069
2070 2018-10-03  Tom Tromey  <tom@tromey.com>
2071
2072         * expression.h (enum exp_opcode): Use uint8_t as base type.
2073         * expprint.c (op_name): Handle invalid opcodes.
2074
2075 2018-10-03  Tom Tromey  <tom@tromey.com>
2076
2077         * parse.c (prefixify_expression): Add assert.
2078         (parse_exp_in_context_1): Throw exception if the expression is
2079         empty.
2080
2081 2018-10-03  Tom Tromey  <tom@tromey.com>
2082
2083         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2084
2085 2018-10-03  Tom Tromey  <tom@tromey.com>
2086
2087         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2088
2089 2018-10-03  Tom Tromey  <tom@tromey.com>
2090
2091         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2092         unsigned.
2093
2094 2018-10-03  Tom Tromey  <tom@tromey.com>
2095
2096         * findvar.c (extract_integer): Do work in an unsigned type.
2097
2098 2018-10-03  Tom Tromey  <tom@tromey.com>
2099
2100         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2101         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2102         base type.
2103         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2104         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2105         type.
2106         * c-lang.h (enum c_string_type_values): Use unsigned as base
2107         type.
2108         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2109
2110 2018-10-03  Tom Tromey  <tom@tromey.com>
2111
2112         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2113         <~dwarf2_frame_state_reg_info>: Update.
2114         <dwarf2_frame_state_reg_info>: Update.
2115         <alloc_regs>: Add assertion.  Update.
2116         <reg>: Now a std::vector.
2117         <num_regs>: Remove.
2118         <swap>: Update.
2119         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2120         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2121
2122 2018-10-03  Tom Tromey  <tom@tromey.com>
2123
2124         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2125
2126 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2127
2128         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2129
2130 2018-10-02  Tom Tromey  <tom@tromey.com>
2131
2132         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2133
2134 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2135
2136         * NEWS: Mention changed commands.
2137         * ser-uds.c: New file.
2138         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2139         * configure: Regenerate.
2140         * Makefile.in: Add new file.
2141         * serial.c (serial_open): Check if filename is a socket
2142         and lookup the appropriate interface accordingly.
2143
2144 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2145
2146         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2147         define.
2148         (AARCH64_EXTRA_MAGIC): Likewise.
2149         (AARCH64_FPSIMD_MAGIC): Likewise.
2150         (AARCH64_SVE_MAGIC): Likewise.
2151         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2152         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2153         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2154         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2155         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2156         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2157         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2158         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2159         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2160         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2161         (read_aarch64_ctx): Add function.
2162         (aarch64_linux_sigframe_init): Detect FP registers.
2163
2164 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2165
2166         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2167         (AARCH64_D0_REGNUM): Likewise.
2168         (AARCH64_S0_REGNUM): Likewise.
2169         (AARCH64_H0_REGNUM): Likewise.
2170         (AARCH64_B0_REGNUM): Likewise.
2171         (AARCH64_SVE_V0_REGNUM): Likewise.
2172         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2173         (AARCH64_D0_REGNUM): Likewise.
2174         (AARCH64_S0_REGNUM): Likewise.
2175         (AARCH64_H0_REGNUM): Likewise.
2176         (AARCH64_B0_REGNUM): Likewise.
2177         (AARCH64_SVE_V0_REGNUM): Likewise.
2178
2179 2018-10-01  Gary Benson <gbenson@redhat.com>
2180
2181         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2182         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2183         prfpregset_t instead of gdb_prfpregset_t.
2184         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2185         * configure, config.in: Rebuild.
2186
2187 2018-10-01  Gary Benson <gbenson@redhat.com>
2188
2189         * common/gdb_proc_service.h: New file, factored out from...
2190         * gdb_proc_service.h: Moved common code to the above file.
2191         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2192
2193 2018-10-01  Gary Benson <gbenson@redhat.com>
2194
2195         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2196         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2197
2198 2018-10-01  Gary Benson <gbenson@redhat.com>
2199
2200         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2201         (AC_CHECK_HEADERS): Check for linux/elf.h.
2202         * configure, config.in: Rebuild.
2203         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2204         doesn't define elf_fpregset_t.
2205
2206 2018-10-01  Gary Benson <gbenson@redhat.com>
2207
2208         * gdb_proc_service.h: Whitespace change.
2209
2210 2018-10-01  Tom Tromey  <tom@tromey.com>
2211
2212         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2213         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2214         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2215
2216 2018-10-01  Tom Tromey  <tom@tromey.com>
2217
2218         * README: Minor change.
2219
2220 2018-09-30  Pedro Alves  <palves@redhat.com>
2221
2222         * darwin-nat-info.c (darwin_debug_regions_recurse)
2223         (info_mach_exceptions_command): Remove unused local variables.
2224         * darwin-nat.c (darwin_decode_notify_message)
2225         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2226         (darwin_stop_inferior, darwin_setup_exceptions)
2227         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2228         (darwin_nat_target::attach, darwin_nat_target::detach)
2229         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2230         local variables.
2231         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2232         variables.
2233
2234 2018-09-29  Tom Tromey  <tom@tromey.com>
2235
2236         * README: Remove some leftover text.
2237
2238 2018-09-29  Tom Tromey  <tom@tromey.com>
2239
2240         * PROBLEMS: Rewrite.
2241         * README: Update.
2242
2243 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2244
2245         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2246         case with explicit breakpoint kind.
2247         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2248         'additional_info' and related logic.
2249         (riscv_debug_breakpoints): New variable.
2250         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2251         instruction to determine the breakpoint kind.
2252         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2253         flag.  Update description of 'set/show riscv
2254         use-compressed-breakpoints' flag.
2255
2256 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2257
2258         (NEWS): Mention changes to frame related commands.
2259         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2260         (add_prefix_cmd_suppress_notification): New function.
2261         (add_com_suppress_notification): Call
2262         add_cmd_suppress_notification.
2263         * command.h (add_cmd_suppress_notification): Declare.
2264         (add_prefix_cmd_suppress_notification): Declare.
2265         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2266         (parse_frame_specification): Moved from stack.c, with
2267         simplification to handle a single argument.
2268         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2269         switch to the selected frame.  Add a header comment.
2270         * stack.c: Remove 'safe-ctype.h' include.
2271         (find_frame_for_function): Add declaration.
2272         (find_frame_for_address): New function.
2273         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2274         (frame_selection_by_function_completer): New function.
2275         (info_frame_command): Rename to...
2276         (info_frame_command_core): ...this, and update parameter types.
2277         (select_frame_command): Rename to...
2278         (select_frame_command_core): ...this, and update parameter types.
2279         (frame_command): Rename to...
2280         (frame_command_core): ...this, and update parameter types.
2281         (class frame_command_helper): New class to wrap implementations of
2282         frame related sub-commands.
2283         (frame_apply_cmd_list): New static global.
2284         (frame_cmd_list): Make static.
2285         (select_frame_cmd_list): New global for sub-commands.
2286         (info_frame_cmd_list): New global for sub-commands.
2287         (_initialize_stack): Register sub-commands for 'frame',
2288         'select-frame', and 'info frame'.  Update 'frame apply' commands
2289         to use frame_apply_cmd_list.  Move function local static
2290         frame_apply_list to file static frame_apply_cmd_list for
2291         consistency.
2292         * stack.h (select_frame_command): Delete declarationn.
2293         (select_frame_for_mi): Declare new function.
2294
2295 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2296
2297         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2298         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2299         and NOP.
2300
2301 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2302
2303         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2304
2305 2018-09-26  Tom Tromey  <tom@tromey.com>
2306
2307         * valops.c (auto_abandon): Remove dead code.
2308
2309 2018-09-26  Tom Tromey  <tom@tromey.com>
2310
2311         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2312
2313 2018-09-24  Tom Tromey  <tom@tromey.com>
2314
2315         * common/pathstuff.c (get_standard_cache_dir): Make
2316         "xdg_cache_home" and "home" const.
2317         * top.c (init_history): Make "tmpenv" const.
2318         * main.c (get_init_files): Make "homedir" const.
2319
2320 2018-09-23  Tom Tromey  <tom@tromey.com>
2321
2322         PR python/18852:
2323         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2324
2325 2018-09-23  Tom Tromey  <tom@tromey.com>
2326
2327         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2328         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2329         * python/python-internal.h (gdbpy_handle_exception): Declare.
2330         * python/py-utils.c (gdbpy_handle_exception): New function.
2331
2332 2018-09-23  Tom Tromey  <tom@tromey.com>
2333
2334         PR python/17284:
2335         * python/py-type.c (typy_template_argument): Check for negative
2336         argument number.
2337
2338 2018-09-23  Tom Tromey  <tom@tromey.com>
2339
2340         PR python/14062:
2341         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2342
2343 2018-09-23  Tom Tromey  <tom@tromey.com>
2344
2345         PR python/18170:
2346         * python/py-value.c (valpy_int): Allow conversion from pointer
2347         type.
2348
2349 2018-09-23  Tom Tromey  <tom@tromey.com>
2350
2351         PR python/20126:
2352         * python/py-value.c (valpy_int): Respect type sign.
2353
2354 2018-09-23  Tom Tromey  <tom@tromey.com>
2355
2356         PR python/18352;
2357         * python/py-value.c (valpy_float): Allow conversions from int or
2358         char.
2359         (valpy_int, valpy_long): Allow conversions from float.
2360
2361 2018-09-23  Tom Tromey  <tom@tromey.com>
2362
2363         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2364         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2365
2366 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2367
2368         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2369         __sighndlr.
2370         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2371
2372 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2373
2374         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2375         target_terminal::ours().
2376
2377 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2378
2379         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2380         of vl to ULONGEST.
2381
2382 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2383
2384         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2385         redundant condition.
2386
2387 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2388
2389         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2390
2391         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2392         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2393         * sol-thread.c (ps_pdmodel): Don't guard definition.
2394
2395         * procfs.c: Fix formatting.
2396
2397         * procfs.c (sysset_t_alloc): Remove.
2398         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2399         (procfs_debug_inferior): Likewise.
2400         (procfs_set_exec_trap): Likewise.
2401         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2402         (proc_set_traced_sysexit): Likewise.
2403
2404         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2405         (dead_procinfo): Likewise.
2406         (proc_warn): Likewise.
2407         (proc_error): Likewise.
2408         (proc_get_LDT_entry): Likewise.
2409         (do_attach): Likewise.
2410         (procfs_target::pid_to_str): Likewise.
2411         (iterate_over_mappings): Likewise.
2412
2413         * procfs.c (create_procinfo): Fix ARI warning.
2414         (proc_get_status): Likewise.
2415         (proc_stop_process): Likewise.
2416         (proc_run_process): Likewise.
2417         (proc_kill): Likewise.
2418         (proc_get_LDT_entry): Likewise.
2419         (procfs_find_LDT_entry): Likewise.
2420         (proc_update_threads): Likewise.
2421         (proc_iterate_over_threads): Likewise.
2422         (do_attach): Likewise.
2423         (procfs_xfer_memory): Likewise.
2424         (invalidate_cache): Likewise.
2425         (procfs_target::resume): Likewise.
2426         (procfs_init_inferior): Likewise.
2427         (procfs_set_exec_trap): Likewise.
2428         (procfs_target::thread_alive): Likewise.
2429         (procfs_target::pid_to_exec_file): Likewise.
2430         (iterate_over_mappings): Likewise.
2431         (procfs_target::make_corefile_notes): Likewise.
2432         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2433
2434         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2435         (procfs_find_LDT_entry): Likewise.
2436         * sol-thread.c (ps_lgetLDT): Likewise.
2437
2438 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2439
2440         PR tdep/17903
2441         * procfs.c (procfs_target): Declare pid_to_exec_file.
2442         (procfs_target::pid_to_exec_file): New.
2443
2444 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2445
2446         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2447         renaming.
2448         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2449         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2450
2451 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2452
2453         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2454         (supply_fpregset, fill_fpregset): Move ...
2455         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2456         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2457         Remove references to ioctl-based procfs.
2458         Include <sys/reg.h>.
2459         Remove PR_MODEL_NATIVE guards.
2460         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2461         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2462
2463 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2464
2465         PR gdb/20981:
2466         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2467         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2468         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2469
2470 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2471
2472         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2473         (fbsd_print_sockaddr_in6): Likewise.
2474
2475 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2476             Chris January  <chris.january@arm.com>
2477
2478         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2479         (evaluate_subexp_standard): Return a dummy type when
2480         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2481         OP_F77_UNDETERMINED_ARGLIST case.
2482         * expression.h (enum noside): Update comment.
2483
2484 2018-09-19  George Vasick <george.vasick@oracle.com>
2485
2486         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2487
2488 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2489             April Chin <april.chin@oracle.com>
2490             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2491
2492         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2493         uint_t lwpid_t.
2494         (create_procinfo): Print pids in /proc without leading zeros.
2495
2496 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2497
2498         * nios2-tdep.c (nios2_gcc_target_options): New.
2499         (nios2_gdb_arch_init): Install new hook.
2500
2501 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2502
2503         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2504         New file.
2505         * update-gnulib.sh: Apply patch.
2506         * configure: Re-generate.
2507
2508 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2509
2510         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2511         description.  Make "info proc" command descriptions more
2512         consistent.
2513
2514 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2515
2516         * NEWS: Mention 'info proc files' command.
2517
2518 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2519
2520         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2521         descriptors for IP_FILES and IP_ALL.
2522
2523 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2524
2525         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2526         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2527         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2528         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2529         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2530         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2531         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2532         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2533         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2534         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2535         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2536         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2537         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2538         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2539         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2540         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2541         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2542         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2543         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2544         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2545         (struct fbsd_sockaddr_un): New types.
2546         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2547         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2548         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2549         (fbsd_core_info_proc_files): New functions.
2550         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2551         IP_ALL.
2552         * fbsd-tdep.h (fbsd_info_proc_files_header)
2553         (fbsd_info_proc_files_entry): New.
2554
2555 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2556
2557         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2558         * infcmd.c (info_proc_cmd_files): New function.
2559         (_initialize_infcmd): Register 'info proc files' command.
2560
2561 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2562
2563         * gnulib/aclocal-m4-deps.mk: Re-generate.
2564         * gnulib/aclocal.m4: Re-generate.
2565         * gnulib/config.in: Re-generate.
2566         * gnulib/configure: Re-generate.
2567         * gnulib/import/Makefile.am: Re-generate.
2568         * gnulib/import/Makefile.in: Re-generate.
2569         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2570         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2571         * gnulib/import/arpa_inet.in.h: New file.
2572         * gnulib/import/inet_ntop.c: New file.
2573         * gnulib/import/m4/arpa_inet_h.m4: New file.
2574         * gnulib/import/m4/inet_ntop.m4: New file.
2575         * gnulib/import/m4/netinet_in_h.m4: New file.
2576         * gnulib/import/m4/socklen.m4: New file.
2577         * gnulib/import/m4/sockpfaf.m4: New file.
2578         * gnulib/import/m4/stdalign.m4: New file.
2579         * gnulib/import/m4/sys_uio_h.m4: New file.
2580         * gnulib/import/netinet_in.in.h: New file.
2581         * gnulib/import/stdalign.in.h: New file.
2582         * gnulib/import/sys_socket.c: New file.
2583         * gnulib/import/sys_socket.in.h: New file.
2584         * gnulib/import/sys_uio.in.h: New file.
2585         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2586         module.
2587
2588 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2589
2590         * gnulib/aclocal-m4-deps.mk: New file.
2591         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2592         deterministically.
2593
2594 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2595
2596         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2597         KVE_PATH.
2598
2599 2018-09-18  Tom Tromey  <tom@tromey.com>
2600
2601         * compile/compile-object-load.c (struct
2602         link_hash_table_cleanup_data): Add constructor and destructor.
2603         Use DISABLE_COPY_AND_ASSIGN.
2604         (~link_hash_table_cleanup_data): Rename from
2605         link_hash_table_free.  Now a destructor.
2606         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2607
2608 2018-09-18  Tom Tromey  <tom@tromey.com>
2609
2610         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2611         * compile/compile-object-load.c (struct munmap_list): Move to
2612         header file.
2613         (munmap_list::add): Rename from munmap_list_add; rewrite.
2614         (munmap_list::~munmap_list): Rename from munmap_list_free.
2615         (munmap_listp_free_cleanup): Remove.
2616         (compile_object_load): Update.
2617         * compile/compile-object-load.h (struct munmap_list): Move from
2618         compile-object-load.c.  Rewrite.
2619
2620 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2621
2622         * aarch64-tdep.c (pass_in_v): Use register size.
2623         (aarch64_extract_return_value): Likewise.
2624         (aarch64_store_return_value): Likewise.
2625
2626 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2627
2628         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2629         rlim_t.
2630
2631 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2632
2633         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2634         Fix short help line.
2635
2636 2018-09-17  Tom Tromey  <tom@tromey.com>
2637
2638         PR python/20445:
2639         * configure: Rebuild.
2640         * configure.ac: Conditionally use -DNDEBUG for Python.
2641
2642 2018-09-17  Tom Tromey  <tom@tromey.com>
2643
2644         * configure: Rebuild.
2645         * configure.ac: Use gmp as a library dependency when checking for
2646         mpfr.
2647
2648 2018-09-17  Pedro Alves  <palves@redhat.com>
2649
2650         * python/py-inferior.c (find_inferior_object): Delete.
2651
2652 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2653
2654         * compile/compile-cplus-types.c
2655         (compile_cplus_instance::enter_scope): Don't use new_scope after
2656         std::move.
2657
2658 2018-09-17  Tom Tromey  <tom@tromey.com>
2659
2660         * common/pathstuff.c (get_standard_cache_dir): Use
2661         ~/Library/Caches on macOS.
2662         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2663
2664 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2665
2666         PR python/23669
2667         * breakpoint.c (commands_cmd_element): New.
2668         (_initialize_breakpoint): Assign commands_cmd_element.
2669         * breakpoint.h (commands_cmd_element): New.
2670         * cli/cli-script.c (while_cmd_element, if_command,
2671         define_cmd_element): New.
2672         (command_name_equals): Remove.
2673         (process_next_line): Compare commands by pointer, not by name.
2674         (_initialize_cli_script): Assign the various cmd_list_element
2675         variables.
2676         * compile/compile.c (compile_cmd_element): New.
2677         (_initialize_compile): Assign compile_cmd_element.
2678         * compile/compile.h (compile_cmd_element): New.
2679         * guile/guile.c (guile_cmd_element): New.
2680         (install_gdb_commands): Assign guile_cmd_element.
2681         * guile/guile.h (guile_cmd_element): New.
2682         * python/python.c (python_cmd_element): New.
2683         (_initialize_python): Assign python_cmd_element.
2684         * python/python.h (python_cmd_element): New.
2685         * tracepoint.c (while_stepping_cmd_element): New.
2686         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2687         * tracepoint.h (while_stepping_cmd_element): New.
2688
2689 2018-09-17  Tom Tromey  <tom@tromey.com>
2690
2691         * infrun.c (save_infcall_suspend_state): Return
2692         infcall_suspend_state_up.
2693         (save_infcall_control_state): Return infcall_control_state_up.
2694         * inferior.h (save_infcall_suspend_state)
2695         (save_infcall_control_state): Declare later.  Return unique
2696         pointers.
2697
2698 2018-09-17  Tom Tromey  <tom@tromey.com>
2699
2700         * infrun.c (struct stop_context): Declare constructor,
2701         destructor, "changed" method.
2702         (stop_context::stop_context): Rename from save_stop_context.
2703         (stop_context::~stop_context): Rename from
2704         release_stop_context_cleanup.
2705         (normal_stop): Update.
2706         (stop_context::changed): Rename from stop_context_changed.  Return
2707         bool.
2708
2709 2018-09-17  Tom Tromey  <tom@tromey.com>
2710
2711         * inferior.h (struct infcall_suspend_state_deleter): New.
2712         (infcall_suspend_state_up): New typedef.
2713         (struct infcall_control_state_deleter): New.
2714         (infcall_control_state_up): New typedef.
2715         (make_cleanup_restore_infcall_suspend_state)
2716         (make_cleanup_restore_infcall_control_state): Don't declare.
2717         * infcall.c (call_function_by_hand_dummy): Update.
2718         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2719         (make_cleanup_restore_infcall_suspend_state): Remove.
2720         (do_restore_infcall_control_state_cleanup)
2721         (make_cleanup_restore_infcall_control_state): Remove.
2722
2723 2018-09-17  Tom Tromey  <tom@tromey.com>
2724
2725         * gdbthread.h (struct thread_control_state): Add initializer.
2726         (class thread_info) <control>: Remove initializer.
2727         * inferior.h (struct inferior_control_state): Add initializer.
2728         (class inferior) <control>: Remove initializer.
2729         (exit_inferior_1): Update.
2730         * infrun.c (struct infcall_control_state): Add constructors.
2731         (save_infcall_control_state): Use new.
2732         (restore_infcall_control_state, discard_infcall_control_state):
2733         Use delete.
2734
2735 2018-09-17  Tom Tromey  <tom@tromey.com>
2736
2737         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2738         unique_ptr.
2739         <siginfo_data>: Now a unique_xmalloc_ptr.
2740         (save_infcall_suspend_state, restore_infcall_suspend_state)
2741         (discard_infcall_suspend_state)
2742         (get_infcall_suspend_state_regcache): Update.
2743
2744 2018-09-17  Tom Tromey  <tom@tromey.com>
2745
2746         * gdbthread.h (struct thread_suspend_state): Add initializers.
2747         (class thread_info) <suspend>: Remove initializer.
2748         * infrun.c (struct infcall_suspend_state): Add initializers.
2749         (save_infcall_suspend_state): Use new.
2750         (discard_infcall_suspend_state): Use delete.
2751
2752 2018-09-16  Tom Tromey  <tom@tromey.com>
2753
2754         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2755         Remove.
2756         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2757         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2758         (py_varobj_iter_new): Likewise.
2759         (py_varobj_get_iterator): Use gdbpy_ref.
2760
2761 2018-09-16  Tom Tromey  <tom@tromey.com>
2762
2763         * python/py-threadevent.c (py_get_event_thread): Simplify.
2764         * python/py-inferior.c (infpy_thread_from_thread_handle):
2765         Return immediately after calling thread_to_thread_object.  Use
2766         Py_RETURN_NONE.
2767         (thread_to_thread_object): Set the exception on a NULL return.
2768
2769 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2770
2771         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2772
2773 2018-09-16  Tom Tromey  <tom@tromey.com>
2774
2775         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2776         Remove.
2777
2778 2018-09-16  Tom Tromey  <tom@tromey.com>
2779
2780         * python/python-internal.h (thread_to_thread_object): Change
2781         return type.
2782         * python/py-inferior.c (thread_to_thread_object): Return a new
2783         reference.
2784         (infpy_thread_from_thread_handle): Update.
2785         * python/py-infthread.c (gdbpy_selected_thread): Update.
2786         * python/py-stopevent.c (create_stop_event_object): Update.
2787         * python/py-threadevent.c (py_get_event_thread): Return a new
2788         reference.
2789         (py_get_event_thread): Update.
2790         * python/py-event.h (py_get_event_thread): Change return type.
2791         * python/py-continueevent.c (create_continue_event_object):
2792         Update.
2793
2794 2018-09-16  Tom Tromey  <tom@tromey.com>
2795
2796         * python/py-progspace.c (pspy_get_objfiles): Update.
2797         * python/python-internal.h (objfile_to_objfile_object): Change
2798         return type.
2799         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2800         Update.
2801         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2802         Update.
2803         * python/python.c (gdbpy_get_current_objfile): Update.
2804         (gdbpy_objfiles): Update.
2805         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2806         Update.
2807         (objfile_to_objfile_object): Return a new reference.
2808         * python/py-symtab.c (stpy_get_objfile): Update.
2809         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2810         Update.
2811
2812 2018-09-16  Tom Tromey  <tom@tromey.com>
2813
2814         * python/py-inferior.c (infpy_get_progspace): Update.
2815         * python/python-internal.h (pspace_to_pspace_object): Change
2816         return type.
2817         * python/py-newobjfileevent.c
2818         (create_clear_objfiles_event_object): Update.
2819         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2820         Update.
2821         * python/python.c (gdbpy_get_current_progspace): Update.
2822         (gdbpy_progspaces): Update.
2823         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2824         reference.
2825         * python/py-objfile.c (objfpy_get_progspace): Update.
2826         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2827         Update.
2828
2829 2018-09-16  Tom Tromey  <tom@tromey.com>
2830
2831         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2832         (solib_name, block_for_pc, find_pc_line): New functions.
2833         (execute_unwinders): Update.
2834         * python/py-block.c (gdbpy_block_for_pc): Remove.
2835         * python/py-inferior.c (infpy_get_progspace): New function.
2836         (inferior_object_getset) <progspace>: Add.
2837         * python/py-progspace.c (pspy_objfiles): Rewrite.
2838         (pspy_solib_name, pspy_block_for_pc)
2839         (pspy_find_pc_line, pspy_is_valid): New functions.
2840         (progspace_object_methods): Add entries for solib_name,
2841         block_for_pc, find_pc_line, is_valid.
2842         * python/python-internal.h (gdbpy_block_for_pc)
2843         (build_objfiles_list): Don't declare.
2844         * python/python.c: Don't include solib.h.
2845         (gdbpy_solib_name, gdbpy_find_pc_line)
2846         (gdbpy_get_current_progspace, build_objfiles_list)
2847         (gdbpy_objfiles): Remove.
2848         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2849         solib_name, find_pc_line>: Remove entries.
2850
2851 2018-09-16  Tom Tromey  <tom@tromey.com>
2852
2853         * top.c (new_ui_command): Use GNU style for metasyntactic
2854         variables.
2855         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2856         variables.
2857         * maint.c (maintenance_translate_address): Remove "<>" around
2858         text.
2859         * interps.c (interpreter_exec_cmd): Use GNU style for
2860         metasyntactic variables.
2861         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2862         metasyntactic variables.
2863         * tracepoint.c (tfind_range_command): Use GNU style for
2864         metasyntactic variables.
2865         (tfind_outside_command): Likewise.
2866         (_initialize_tracepoint): Likewise.
2867         * remote.c (extended_remote_target::create_inferior): Use GNU
2868         style for metasyntactic variables.
2869         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2870         metasyntactic variables.
2871         (adi_assign_command): Likewise.
2872
2873 2018-09-16  Tom Tromey  <tom@tromey.com>
2874
2875         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2876         metasyntactic variables.  Print message if no disassembler options
2877         are available.
2878
2879 2018-09-15  Tom Tromey  <tom@tromey.com>
2880
2881         * infcmd.c (get_inferior_args): Return const char *.
2882         * inferior.h (get_inferior_args): Return type now const.
2883         * linux-tdep.c (linux_fill_prpsinfo): Update.
2884         * procfs.c (procfs_target::make_corefile_notes): Update.
2885
2886 2018-09-07  Tom Tromey  <tom@tromey.com>
2887
2888         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2889         inside the TRY.
2890
2891 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2892
2893         * nios2-tdep.c (nios2_type_align): New.
2894         (nios2_gdb_arch_init): Install type_align hook.
2895
2896 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2897
2898         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2899         type that is neither object file owned, nor gdbarch owned.
2900         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2901         gdbarch is non-NULL.
2902         (alloc_type_instance): Allocate non-objfile owned types on the
2903         gdbarch obstack.
2904         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2905         using TYPE_ALLOC to ensure memory is allocated on the correct
2906         obstack.
2907         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2908         obstack, or the gdbarch obstack.
2909         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2910
2911 2018-09-14  Tom Tromey  <tom@tromey.com>
2912
2913         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2914         block.
2915
2916 2018-09-14  Tom Tromey  <tom@tromey.com>
2917
2918         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2919
2920 2018-09-13  Tom Tromey  <tom@tromey.com>
2921
2922         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2923         static.
2924
2925 2018-09-13  Tom Tromey  <tom@tromey.com>
2926
2927         * exec.c (try_open_exec_file): Use std::string.
2928
2929 2018-09-13  Tom Tromey  <tom@tromey.com>
2930
2931         * utils.h (gdb_bfd_errmsg): Return std::string.
2932         * exec.c (exec_file_attach): Update.
2933         * compile/compile-object-load.c (compile_object_load): Update.
2934         * utils.c (gdb_bfd_errmsg): Return std::string.
2935
2936 2018-09-13  Tom Tromey  <tom@tromey.com>
2937
2938         * procfs.c (struct procinfo_deleter): New.
2939         (procinfo_up): New typedef.
2940         (do_destroy_procinfo_cleanup): Remove.
2941         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2942
2943 2018-09-13  Tom Tromey  <tom@tromey.com>
2944
2945         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2946
2947 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2948 2018-09-13  Tom Tromey  <tom@tromey.com>
2949
2950         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2951         (pspy_get_objfiles): New function.
2952         (progspace_object_methods): New.
2953         (pspace_object_type): Add tp_methods callback.
2954         * python/python-internal.h (build_objfiles_list): New
2955         declaration.
2956         * python/python.c (build_objfiles_list): New function.
2957         (gdbpy_objfiles): Implement using build_objfiles_list.
2958         * NEWS: Mention the Progspace.objfiles method.
2959
2960 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2961
2962         * python/py-inferior.c (infpy_get_progspace): New function.
2963         (inferior_object_getset): Add progspace property.
2964         * NEWS: Mention the new property.
2965
2966 2018-09-13  Tom Tromey  <tom@tromey.com>
2967
2968         PR rust/23650:
2969         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2970
2971 2018-09-13  Tom Tromey  <tom@tromey.com>
2972
2973         PR rust/23626:
2974         * rust-lang.c (rust_enum_variant): Now static.
2975         (rust_empty_enum_p): New function.
2976         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2977         Handle empty enum.
2978
2979 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2980
2981         * python/py-inferior.c (infpy_repr): New.
2982         (inferior_object_type): Register infpy_repr.
2983         * python/py-objfile.c (objfpy_repr): New.
2984         (objfile_object_type): Register objfpy_repr.
2985
2986 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2987
2988         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2989
2990 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2991
2992         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2993         typo.
2994
2995 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2996
2997         * common/common-utils.c: Don't include '<sys/stat.h>'.
2998         (is_regular_file): Move to...
2999         * common/filestuff.c (is_regular_file): ... here.
3000         * common/common-utils.h (is_regular_file): Move to...
3001         * common/filestuff.h (is_regular_file): ... here.
3002
3003 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3004
3005         * skip.c (debug_skip): New variable.
3006         (skiplist_entry::do_skip_file_p): Add debug output.
3007         (skiplist_entry::do_skip_gfile_p): Likewise.
3008         (skiplist_entry::skip_function_p): Likewise.
3009         (_initialize_step_skip): Create debug command.
3010         * NEWS: Mention set/show debug skip.
3011
3012 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3013
3014         * darwin-nat.c (should_disable_startup_with_shell):
3015         New function.
3016         (darwin_nat_target::create_inferior): Add call.
3017
3018 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3019
3020         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3021         inf_port, msg_state>: Initialize.
3022         (struct darwin_thread_info) <signaled, single_step>: Change
3023         type and initialize.
3024         (struct darwin_thread_info) <event>: Initialize.
3025
3026 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3027
3028         PR gdb/23555
3029         PR gdb/23558
3030         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3031         guesses.
3032
3033 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3034
3035         Revert:
3036         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3037
3038         PR gdb/23555
3039         PR gdb/23558
3040         * gnulib/aclocal.m4: Regenerate.
3041         * gnulib/config.in: Regenerate.
3042         * gnulib/configure: Regenerate.
3043         * gnulib/import/Makefile.am: Update.
3044         * gnulib/import/Makefile.in: Update.
3045         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3046         * gnulib/import/_Noreturn.h: ... this.
3047         * gnulib/import/alloca.in.h: Update.
3048         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3049         * gnulib/import/arg-nonnull.h: ... this.
3050         * gnulib/import/assure.h: Update.
3051         * gnulib/import/at-func.c: Update.
3052         * gnulib/import/basename-lgpl.c: Update.
3053         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3054         * gnulib/import/c++defs.h: ... this.
3055         * gnulib/import/canonicalize-lgpl.c: Update.
3056         * gnulib/import/cdefs.h: Update.
3057         * gnulib/import/chdir-long.c: Update.
3058         * gnulib/import/chdir-long.h: Update.
3059         * gnulib/import/cloexec.c: Update.
3060         * gnulib/import/cloexec.h: Update.
3061         * gnulib/import/close.c: Update.
3062         * gnulib/import/closedir.c: Update.
3063         * gnulib/import/config.charset: Update.
3064         * gnulib/import/dirent-private.h: Update.
3065         * gnulib/import/dirent.in.h: Update.
3066         * gnulib/import/dirfd.c: Update.
3067         * gnulib/import/dirname-lgpl.c: Update.
3068         * gnulib/import/dirname.h: Update.
3069         * gnulib/import/dosname.h: Update.
3070         * gnulib/import/dup-safer-flag.c: Update.
3071         * gnulib/import/dup-safer.c: Update.
3072         * gnulib/import/dup.c: Update.
3073         * gnulib/import/dup2.c: Update.
3074         * gnulib/import/errno.in.h: Update.
3075         * gnulib/import/error.c: Update.
3076         * gnulib/import/error.h: Update.
3077         * gnulib/import/exitfail.c: Update.
3078         * gnulib/import/exitfail.h: Update.
3079         * gnulib/import/extra/update-copyright: Update.
3080         * gnulib/import/fchdir.c: Update.
3081         * gnulib/import/fcntl.c: Update.
3082         * gnulib/import/fcntl.in.h: Update.
3083         * gnulib/import/fd-hook.c: Update.
3084         * gnulib/import/fd-hook.h: Update.
3085         * gnulib/import/fd-safer-flag.c: Update.
3086         * gnulib/import/fd-safer.c: Update.
3087         * gnulib/import/fdopendir.c: Update.
3088         * gnulib/import/filename.h: Update.
3089         * gnulib/import/filenamecat-lgpl.c: Update.
3090         * gnulib/import/filenamecat.h: Update.
3091         * gnulib/import/flexmember.h: Update.
3092         * gnulib/import/float+.h: Update.
3093         * gnulib/import/float.c: Update.
3094         * gnulib/import/float.in.h: Update.
3095         * gnulib/import/fnmatch.c: Update.
3096         * gnulib/import/fnmatch.in.h: Update.
3097         * gnulib/import/fnmatch_loop.c: Update.
3098         * gnulib/import/fpucw.h: Update.
3099         * gnulib/import/frexp.c: Update.
3100         * gnulib/import/frexpl.c: Update.
3101         * gnulib/import/fstat.c: Update.
3102         * gnulib/import/fstatat.c: Update.
3103         * gnulib/import/getcwd-lgpl.c: Update.
3104         * gnulib/import/getcwd.c: Update.
3105         * gnulib/import/getdtablesize.c: Update.
3106         * gnulib/import/getlogin_r.c: Update.
3107         * gnulib/import/getprogname.c: Update.
3108         * gnulib/import/getprogname.h: Update.
3109         * gnulib/import/gettext.h: Update.
3110         * gnulib/import/gettimeofday.c: Update.
3111         * gnulib/import/glob-libc.h: Update.
3112         * gnulib/import/glob.c: Update.
3113         * gnulib/import/glob.in.h: Update.
3114         * gnulib/import/glob_internal.h: Update.
3115         * gnulib/import/glob_pattern_p.c: Update.
3116         * gnulib/import/globfree.c: Update.
3117         * gnulib/import/hard-locale.c: Update.
3118         * gnulib/import/hard-locale.h: Update.
3119         * gnulib/import/intprops.h: Update.
3120         * gnulib/import/inttypes.in.h: Update.
3121         * gnulib/import/isnan.c: Update.
3122         * gnulib/import/isnand-nolibm.h: Update.
3123         * gnulib/import/isnand.c: Update.
3124         * gnulib/import/isnanl-nolibm.h: Update.
3125         * gnulib/import/isnanl.c: Update.
3126         * gnulib/import/itold.c: Update.
3127         * gnulib/import/libc-config.h: Update.
3128         * gnulib/import/limits.in.h: Update.
3129         * gnulib/import/localcharset.c: Update.
3130         * gnulib/import/localcharset.h: Update.
3131         * gnulib/import/localtime-buffer.c: Update.
3132         * gnulib/import/localtime-buffer.h: Update.
3133         * gnulib/import/lstat.c: Update.
3134         * gnulib/import/m4/00gnulib.m4: Update.
3135         * gnulib/import/m4/__inline.m4: Update.
3136         * gnulib/import/m4/absolute-header.m4: Update.
3137         * gnulib/import/m4/alloca.m4: Update.
3138         * gnulib/import/m4/builtin-expect.m4: Update.
3139         * gnulib/import/m4/canonicalize.m4: Update.
3140         * gnulib/import/m4/chdir-long.m4: Update.
3141         * gnulib/import/m4/close.m4: Update.
3142         * gnulib/import/m4/closedir.m4: Update.
3143         * gnulib/import/m4/configmake.m4: Update.
3144         * gnulib/import/m4/d-ino.m4: Update.
3145         * gnulib/import/m4/d-type.m4: Update.
3146         * gnulib/import/m4/dirent_h.m4: Update.
3147         * gnulib/import/m4/dirfd.m4: Update.
3148         * gnulib/import/m4/dirname.m4: Update.
3149         * gnulib/import/m4/double-slash-root.m4: Update.
3150         * gnulib/import/m4/dup.m4: Update.
3151         * gnulib/import/m4/dup2.m4: Update.
3152         * gnulib/import/m4/eealloc.m4: Update.
3153         * gnulib/import/m4/environ.m4: Update.
3154         * gnulib/import/m4/errno_h.m4: Update.
3155         * gnulib/import/m4/error.m4: Update.
3156         * gnulib/import/m4/exponentd.m4: Update.
3157         * gnulib/import/m4/exponentl.m4: Update.
3158         * gnulib/import/m4/extensions.m4: Update.
3159         * gnulib/import/m4/extern-inline.m4: Update.
3160         * gnulib/import/m4/fchdir.m4: Update.
3161         * gnulib/import/m4/fcntl-o.m4: Update.
3162         * gnulib/import/m4/fcntl.m4: Update.
3163         * gnulib/import/m4/fcntl_h.m4: Update.
3164         * gnulib/import/m4/fdopendir.m4: Update.
3165         * gnulib/import/m4/filenamecat.m4: Update.
3166         * gnulib/import/m4/flexmember.m4: Update.
3167         * gnulib/import/m4/float_h.m4: Update.
3168         * gnulib/import/m4/fnmatch.m4: Update.
3169         * gnulib/import/m4/fnmatch_h.m4: Update.
3170         * gnulib/import/m4/fpieee.m4: Update.
3171         * gnulib/import/m4/frexp.m4: Update.
3172         * gnulib/import/m4/frexpl.m4: Update.
3173         * gnulib/import/m4/fstat.m4: Update.
3174         * gnulib/import/m4/fstatat.m4: Update.
3175         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3176         * gnulib/import/m4/getcwd-path-max.m4: Update.
3177         * gnulib/import/m4/getcwd.m4: Update.
3178         * gnulib/import/m4/getdtablesize.m4: Update.
3179         * gnulib/import/m4/getlogin.m4: Update.
3180         * gnulib/import/m4/getlogin_r.m4: Update.
3181         * gnulib/import/m4/getpagesize.m4: Update.
3182         * gnulib/import/m4/getprogname.m4: Update.
3183         * gnulib/import/m4/gettimeofday.m4: Update.
3184         * gnulib/import/m4/glibc21.m4: Update.
3185         * gnulib/import/m4/glob.m4: Update.
3186         * gnulib/import/m4/glob_h.m4: Update.
3187         * gnulib/import/m4/gnulib-cache.m4: Update.
3188         * gnulib/import/m4/gnulib-common.m4: Update.
3189         * gnulib/import/m4/gnulib-comp.m4: Update.
3190         * gnulib/import/m4/gnulib-tool.m4: Update.
3191         * gnulib/import/m4/hard-locale.m4: Update.
3192         * gnulib/import/m4/include_next.m4: Update.
3193         * gnulib/import/m4/inttypes-pri.m4: Update.
3194         * gnulib/import/m4/inttypes.m4: Update.
3195         * gnulib/import/m4/isnand.m4: Update.
3196         * gnulib/import/m4/isnanl.m4: Update.
3197         * gnulib/import/m4/largefile.m4: Update.
3198         * gnulib/import/m4/limits-h.m4: Update.
3199         * gnulib/import/m4/localcharset.m4: Update.
3200         * gnulib/import/m4/locale-fr.m4: Update.
3201         * gnulib/import/m4/locale-ja.m4: Update.
3202         * gnulib/import/m4/locale-zh.m4: Update.
3203         * gnulib/import/m4/localtime-buffer.m4: Update.
3204         * gnulib/import/m4/longlong.m4: Update.
3205         * gnulib/import/m4/lstat.m4: Update.
3206         * gnulib/import/m4/malloc.m4: Update.
3207         * gnulib/import/m4/malloca.m4: Update.
3208         * gnulib/import/m4/math_h.m4: Update.
3209         * gnulib/import/m4/mbrtowc.m4: Update.
3210         * gnulib/import/m4/mbsinit.m4: Update.
3211         * gnulib/import/m4/mbsrtowcs.m4: Update.
3212         * gnulib/import/m4/mbstate_t.m4: Update.
3213         * gnulib/import/m4/memchr.m4: Update.
3214         * gnulib/import/m4/memmem.m4: Update.
3215         * gnulib/import/m4/mempcpy.m4: Update.
3216         * gnulib/import/m4/memrchr.m4: Update.
3217         * gnulib/import/m4/mkdir.m4: Update.
3218         * gnulib/import/m4/mkstemp.m4: Update.
3219         * gnulib/import/m4/mmap-anon.m4: Update.
3220         * gnulib/import/m4/mode_t.m4: Update.
3221         * gnulib/import/m4/msvc-inval.m4: Update.
3222         * gnulib/import/m4/msvc-nothrow.m4: Update.
3223         * gnulib/import/m4/multiarch.m4: Update.
3224         * gnulib/import/m4/nocrash.m4: Update.
3225         * gnulib/import/m4/off_t.m4: Update.
3226         * gnulib/import/m4/onceonly.m4: Update.
3227         * gnulib/import/m4/open-cloexec.m4: Update.
3228         * gnulib/import/m4/open.m4: Update.
3229         * gnulib/import/m4/openat.m4: Update.
3230         * gnulib/import/m4/opendir.m4: Update.
3231         * gnulib/import/m4/pathmax.m4: Update.
3232         * gnulib/import/m4/rawmemchr.m4: Update.
3233         * gnulib/import/m4/readdir.m4: Update.
3234         * gnulib/import/m4/readlink.m4: Update.
3235         * gnulib/import/m4/realloc.m4: Update.
3236         * gnulib/import/m4/rename.m4: Update.
3237         * gnulib/import/m4/rewinddir.m4: Update.
3238         * gnulib/import/m4/rmdir.m4: Update.
3239         * gnulib/import/m4/save-cwd.m4: Update.
3240         * gnulib/import/m4/secure_getenv.m4: Update.
3241         * gnulib/import/m4/setenv.m4: Update.
3242         * gnulib/import/m4/signal_h.m4: Update.
3243         * gnulib/import/m4/ssize_t.m4: Update.
3244         * gnulib/import/m4/stat-time.m4: Update.
3245         * gnulib/import/m4/stat.m4: Update.
3246         * gnulib/import/m4/std-gnu11.m4: Update.
3247         * gnulib/import/m4/stdbool.m4: Update.
3248         * gnulib/import/m4/stddef_h.m4: Update.
3249         * gnulib/import/m4/stdint.m4: Update.
3250         * gnulib/import/m4/stdio_h.m4: Update.
3251         * gnulib/import/m4/stdlib_h.m4: Update.
3252         * gnulib/import/m4/strchrnul.m4: Update.
3253         * gnulib/import/m4/strdup.m4: Update.
3254         * gnulib/import/m4/strerror.m4: Update.
3255         * gnulib/import/m4/string_h.m4: Update.
3256         * gnulib/import/m4/strstr.m4: Update.
3257         * gnulib/import/m4/strtok_r.m4: Update.
3258         * gnulib/import/m4/sys_socket_h.m4: Update.
3259         * gnulib/import/m4/sys_stat_h.m4: Update.
3260         * gnulib/import/m4/sys_time_h.m4: Update.
3261         * gnulib/import/m4/sys_types_h.m4: Update.
3262         * gnulib/import/m4/tempname.m4: Update.
3263         * gnulib/import/m4/time_h.m4: Update.
3264         * gnulib/import/m4/unistd-safer.m4: Update.
3265         * gnulib/import/m4/unistd_h.m4: Update.
3266         * gnulib/import/m4/warn-on-use.m4: Update.
3267         * gnulib/import/m4/wchar_h.m4: Update.
3268         * gnulib/import/m4/wchar_t.m4: Update.
3269         * gnulib/import/m4/wctype_h.m4: Update.
3270         * gnulib/import/m4/wint_t.m4: Update.
3271         * gnulib/import/malloc.c: Update.
3272         * gnulib/import/malloc/scratch_buffer.h: Update.
3273         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3274         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3275         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3276         * gnulib/import/malloca.c: Update.
3277         * gnulib/import/malloca.h: Update.
3278         * gnulib/import/malloca.valgrind: Update.
3279         * gnulib/import/math.in.h: Update.
3280         * gnulib/import/mbrtowc.c: Update.
3281         * gnulib/import/mbsinit.c: Update.
3282         * gnulib/import/mbsrtowcs-impl.h: Update.
3283         * gnulib/import/mbsrtowcs-state.c: Update.
3284         * gnulib/import/mbsrtowcs.c: Update.
3285         * gnulib/import/memchr.c: Update.
3286         * gnulib/import/memmem.c: Update.
3287         * gnulib/import/mempcpy.c: Update.
3288         * gnulib/import/memrchr.c: Update.
3289         * gnulib/import/mkdir.c: Update.
3290         * gnulib/import/mkstemp.c: Update.
3291         * gnulib/import/msvc-inval.c: Update.
3292         * gnulib/import/msvc-inval.h: Update.
3293         * gnulib/import/msvc-nothrow.c: Update.
3294         * gnulib/import/msvc-nothrow.h: Update.
3295         * gnulib/import/open.c: Update.
3296         * gnulib/import/openat-die.c: Update.
3297         * gnulib/import/openat-priv.h: Update.
3298         * gnulib/import/openat-proc.c: Update.
3299         * gnulib/import/openat.c: Update.
3300         * gnulib/import/openat.h: Update.
3301         * gnulib/import/opendir.c: Update.
3302         * gnulib/import/pathmax.h: Update.
3303         * gnulib/import/pipe-safer.c: Update.
3304         * gnulib/import/rawmemchr.c: Update.
3305         * gnulib/import/readdir.c: Update.
3306         * gnulib/import/readlink.c: Update.
3307         * gnulib/import/realloc.c: Update.
3308         * gnulib/import/ref-add.sin: Update.
3309         * gnulib/import/ref-del.sin: Update.
3310         * gnulib/import/rename.c: Update.
3311         * gnulib/import/rewinddir.c: Update.
3312         * gnulib/import/rmdir.c: Update.
3313         * gnulib/import/same-inode.h: Update.
3314         * gnulib/import/save-cwd.c: Update.
3315         * gnulib/import/save-cwd.h: Update.
3316         * gnulib/import/scratch_buffer.h: Update.
3317         * gnulib/import/secure_getenv.c: Update.
3318         * gnulib/import/setenv.c: Update.
3319         * gnulib/import/signal.in.h: Update.
3320         * gnulib/import/stat-time.c: Update.
3321         * gnulib/import/stat-time.h: Update.
3322         * gnulib/import/stat-w32.c: Update.
3323         * gnulib/import/stat-w32.h: Update.
3324         * gnulib/import/stat.c: Update.
3325         * gnulib/import/stdbool.in.h: Update.
3326         * gnulib/import/stddef.in.h: Update.
3327         * gnulib/import/stdint.in.h: Update.
3328         * gnulib/import/stdio.in.h: Update.
3329         * gnulib/import/stdlib.in.h: Update.
3330         * gnulib/import/str-two-way.h: Update.
3331         * gnulib/import/strchrnul.c: Update.
3332         * gnulib/import/strdup.c: Update.
3333         * gnulib/import/streq.h: Update.
3334         * gnulib/import/strerror-override.c: Update.
3335         * gnulib/import/strerror-override.h: Update.
3336         * gnulib/import/strerror.c: Update.
3337         * gnulib/import/string.in.h: Update.
3338         * gnulib/import/stripslash.c: Update.
3339         * gnulib/import/strnlen1.c: Update.
3340         * gnulib/import/strnlen1.h: Update.
3341         * gnulib/import/strstr.c: Update.
3342         * gnulib/import/strtok_r.c: Update.
3343         * gnulib/import/sys_stat.in.h: Update.
3344         * gnulib/import/sys_time.in.h: Update.
3345         * gnulib/import/sys_types.in.h: Update.
3346         * gnulib/import/tempname.c: Update.
3347         * gnulib/import/tempname.h: Update.
3348         * gnulib/import/time.in.h: Update.
3349         * gnulib/import/unistd--.h: Update.
3350         * gnulib/import/unistd-safer.h: Update.
3351         * gnulib/import/unistd.in.h: Update.
3352         * gnulib/import/unsetenv.c: Update.
3353         * gnulib/import/verify.h: Update.
3354         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3355         * gnulib/import/wchar.in.h: Update.
3356         * gnulib/import/wctype.in.h: Update.
3357         * gnulib/import/xalloc-oversized.h: Update.
3358         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3359         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3360
3361 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3362
3363         * record-btrace.c (get_thread_current_frame): Remove
3364         old_inferior_ptid.
3365
3366 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3367
3368         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3369         with check_tag to 1 if and only if the type is tagged and the
3370         component being searched cannot been found in the current
3371         view. Otherwise, always call ada_to_fixed_type with
3372         check_tag to 0.
3373
3374 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3375
3376         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3377         declaration.
3378         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3379         * ada-varobj.c (ada_varobj_get_number_of_children,
3380         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3381
3382 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3383
3384         * ada-valprint.c (ada_value_print): Use type instead of
3385         enclosing type.
3386
3387 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3388
3389         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3390         an array of access to unconstrained array.
3391
3392 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3393
3394         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3395         (ada_check_typedef): Use it.
3396
3397 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3398
3399         * ada-varobj.c (ada_varobj_describe_struct_child)
3400         (ada_varobj_describe_child): Handle union case like struct one.
3401
3402 2018-09-10  Tom Tromey  <tom@tromey.com>
3403
3404         PR python/18380:
3405         * python/python.c (_initialize_python): Make example in "python"
3406         help work in Python 3.
3407
3408 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3409
3410         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3411         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3412         $(EXEEXT) to the script, as it is not a program.
3413
3414 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3415
3416         * python/py-prettyprint.c (pretty_print_one_value): Return
3417         gdbpy_ref<>.
3418         (print_string_repr): Adjust.
3419         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3420         * python/python-internal.h (apply_varobj_pretty_printer): Return
3421         gdbpy_ref<>.
3422         * varobj.c (varobj_value_get_print_value): Adjust.
3423
3424 2018-09-08  Tom Tromey  <tom@tromey.com>
3425
3426         PR python/16047:
3427         * python/py-prettyprint.c (pretty_print_one_value): Check for
3428         to_string method.
3429
3430 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3431
3432         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3433         replace_operator_with_call.
3434
3435 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3436
3437         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3438
3439 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3440
3441         * ada-typeprint.c (print_range): Print the bounds using TYPE
3442         rather than its TYPE_TARGET_TYPE.
3443
3444 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3445
3446         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3447         call to ada_to_fixed_value_create.
3448
3449 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3450
3451         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3452
3453 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3454
3455         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3456         by calls to error.
3457
3458 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3459
3460         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3461         Move update of loop variable "fi".
3462
3463 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3464
3465         * ada-lang.c (value_assign_to_component): In the case of
3466         big-endian targets, extract the bits of the given VAL
3467         using an src_offset of zero if container is not a scalar.
3468
3469 2018-09-06  Simon Ser  <contact@emersion.fr>
3470
3471         PR gdb/23105
3472         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3473         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3474         * fbsd-tdep.c (fbsd_make_note_desc): New.
3475         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3476         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3477         * target.h (enum target_object) Add FreeBSD-specific
3478         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3479
3480 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3481
3482         * compile/compile-c.h (generate_c_for_variable_locations):
3483         Change reference to pointer.
3484         * compile/compile-c-support.c (compile_program) <compute>:
3485         Likewise.
3486         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3487         (generate_c_for_for_one_variable): Likewise
3488         (generate_c_for_variable_locations): Likewise
3489         * compile/compile-c-types.c (compile_c_instance::convert_type):
3490         Likewise
3491         * compile/compile-cplus-symbols.c (convert_one_symbol):
3492         std::move the scope passed to enter_scope.
3493         * compile/compile-cplus-types.c
3494         (compile_cplus_instance::enter_scope): Make parameter
3495         rvalue-reference.
3496         (compile_cplus_instance::new_scope): Change reference to
3497         pointer.
3498         (compile_cplus_instance::convert_type): Likewise
3499         (compile_cplus_convert_typedef): std::move the scope passed to
3500         enter_scope.
3501         (compile_cplus_convert_struct_or_union): Likewise.
3502         (compile_cplus_convert_enum): Likewise.
3503         (compile_cplus_convert_namespace): Likewise.
3504         * compile/compile-cplus.h (compile_cplus_instance)
3505         <enter_scope>: Make parameter rvalue-reference.
3506         * compile/compile-internal.h (compile_instance)
3507         <get_cached_type>: Likewise
3508         * compile/compile-loc2c.c (push): Likewise
3509         (pushf): Likewise
3510         (unary): Likewise
3511         (binary): Likewise
3512         (print_label): Likewise
3513         (pushf_register_address): Likewise
3514         (pushf_register): Likewise
3515         (do_compile_dwarf_expr_to_c): Likewise
3516         (compile_dwarf_expr_to_c): Likewise
3517         (compile_dwarf_bounds_to_c): Likewise
3518         * compile/compile.c (compile_instance::get_cached_type):
3519         Likewise
3520         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3521         (compile_dwarf_bounds_to_c): Likewise
3522         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3523         (dwarf2_compile_property_to_c): Likewise
3524         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3525         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3526         Likewise
3527
3528 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3529
3530         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3531         * tui/tui-data.c (init_content_element): Don't initialize it.
3532
3533 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3534
3535         * tui/tui-data.h (struct tui_win_info)
3536         <detail::opaque>: Remove.
3537         * tui/tui-data.c (init_win_info): Remove assignment.
3538
3539 2018-09-05  Tom Tromey  <tom@tromey.com>
3540
3541         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3542         -Wformat-nonliteral.
3543         * target-float.c (host_float_ops<T>::to_string)
3544         (host_float_ops<T>::from_string): Use
3545         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3546         * configure: Rebuild.
3547
3548 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3549
3550         * printcmd.c (printf_c_string): Use
3551         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3552         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3553
3554 2018-09-05  Tom Tromey  <tom@tromey.com>
3555
3556         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3557
3558 2018-09-05  Tom de Vries  <tdevries@suse.de>
3559
3560         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3561         with resolve_abstract_p == true.
3562         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3563         defaulting to false. Propagate resolve_abstract_p to
3564         dwarf2_fetch_die_loc_sect_off.
3565         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3566         parameter, defaulting to false.
3567         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3568         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3569         parameter.
3570         * dwarf2read.h (struct die_info): Forward-declare.
3571         (die_info_ptr): New typedef.
3572         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3573
3574 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3575
3576         GDB 8.2 released.
3577
3578 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3579             Pedro Alves  <palves@redhat.com>
3580
3581         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3582         "aclocal-m4-deps.mk".  Include file here.
3583         $(srcdir)/aclocal.m4: Add "configure.ac".
3584         * gnulib/aclocal-m4-deps.mk: New file.
3585         * gnulib/update-gnulib.sh: Automatically update
3586         "aclocal-m4-deps.mk".
3587
3588 2018-09-04  Tom Tromey  <tom@tromey.com>
3589
3590         * configure: Rebuild.
3591         * configure.ac: Remove multi-ice code.
3592
3593 2018-09-04  Tom Tromey  <tom@tromey.com>
3594
3595         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3596         (ada-exp.o): Update.
3597
3598 2018-09-04  Tom Tromey  <tom@tromey.com>
3599
3600         * Makefile.in (printcmd.o, target-float.o): Remove.
3601         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3602
3603 2018-09-04  Tom Tromey  <tom@tromey.com>
3604
3605         * gnulib/Makefile.in: Remove obsolete comment.
3606         * Makefile.in: Remove obsolete comment.
3607
3608 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3609
3610         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3611         line with '+'.
3612
3613 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3614
3615         * riscv-tdep.c: Add 'prologue-value.h' include.
3616         (struct riscv_unwind_cache): New struct.
3617         (riscv_debug_unwinder): New global.
3618         (riscv_scan_prologue): Update arguments, capture register details
3619         from prologue scan.
3620         (riscv_skip_prologue): Reformat arguments line, move end of
3621         prologue calculation into riscv_scan_prologue.
3622         (riscv_frame_cache): Update return type, create
3623         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3624         details.
3625         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3626         (riscv_frame_prev_register): Use the trad_frame within the
3627         riscv_unwind_cache.
3628         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3629         flag.
3630
3631 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3632
3633         * trad-frame.h (trad_frame_set_realreg): Declare.
3634         (trad_frame_set_addr): Declare.
3635         * trad-frame.c (trad_frame_set_realreg): Define new function.
3636         (trad_frame_set_addr): Define new function.
3637         (trad_frame_set_reg_realreg): Use new function.
3638         (trad_frame_set_reg_addr): Use new function.
3639
3640 2018-09-01  Keith Seitz  <keiths@redhat.com>
3641
3642         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3643         pulongest instead of "%lld".
3644         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3645         ATTRIBUTE_UNUSED.
3646
3647 2018-08-31  Tom Tromey  <tom@tromey.com>
3648
3649         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3650         variant part type.
3651
3652 2018-08-31  Pedro Alves  <palves@redhat.com>
3653
3654         * gdbarch.h: Regenerate.
3655
3656 2018-08-31  Pedro Alves  <palves@redhat.com>
3657
3658         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3659         * target.h (Hardware watchpoint interfaces): Describe
3660         continuable/steppable/non-steppable watchpoints.
3661         * gdbarch.h, gdbarch.c: Regenerate.
3662
3663 2018-08-31  Pedro Alves  <palves@redhat.com>
3664
3665         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3666         Delete.
3667         * s390-linux-nat.c
3668         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3669         * target.h (target_ops::have_continuable_watchpoint): Delete.
3670         (target_have_continuable_watchpoint): Delete.
3671         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3672         * target-delegates.c: Regenerate.
3673
3674 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3675
3676         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3677         the files present in "gnulib/import/m4/".
3678
3679 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3680
3681         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3682         c.sw, c.swsp, and c.sdsp.
3683
3684 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3685
3686         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3687         (riscv_read_misa_reg): Don't cache value read into inferior data.
3688         (riscv_new_inferior_data): Delete.
3689         (riscv_inferior_data_cleanup): Delete.
3690         (riscv_inferior_data): Delete.
3691         (riscv_invalidate_inferior_data): Delete.
3692         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3693
3694 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3695
3696         * compile/compile-cplus-types.c
3697         (compile_cplus_instance::leave_scope): Take the address of scope
3698         object.
3699         (compile_cplus_instance::convert_qualified_base): Compare quals
3700         to 0.
3701
3702 2018-08-30  Keith Seitz  <keiths@redhat.com>
3703
3704         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3705         Use "%s" and host_address_to_string instead of "%p" in printf.
3706
3707 2018-08-29  Keith Seitz  <keiths@redhat.com>
3708
3709         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3710         and compile-cplus-types.c.
3711         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3712         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3713         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3714         Declare.
3715         * compile/compile-c-support.c: Include compile-cplus.h.
3716         (load_libcompile): Templatize.
3717         (get_compile_context): "New" function.
3718         (c_get_compile_context): Use get_compile_context.
3719         (cplus_get_compile_context): New function.
3720         (cplus_push_user_expression, cplus_pop_user_expression)
3721         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3722         (cplus_compute_program): Define new structs/functions.
3723         * compile/compile-cplus-symmbols.c: New file.
3724         * compile/compile-cplus-types.c: New file.
3725         * compile/compile-cplus.h: New file.
3726         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3727         Declare.
3728         * compile/compile-object-load.c (get_out_value_type): Use
3729         strncmp_iw when comparing symbol names.
3730         (compile_object_load): Add mst_bss and mst_data.
3731         * compile/compile.c (_initialize_compile): Remove
3732         -Wno-implicit-function-declaration from `compile_args'.
3733         * compile/gcc-cp-plugin.h: New file.
3734         * NEWS: Mention C++ compile support and new debug options.
3735
3736 2018-08-29  Keith Seitz  <keiths@redhat.com>
3737
3738         * linespec.c (collect_info::add_symbol): Make virtual.
3739         (struct symbol_searcher_collect_info): New struct.
3740         (symbol_searcher::find_all_symbols): New method.
3741         * symtab.h (class symbol_searcher): New class.
3742
3743 2018-08-29  Keith Seitz  <keiths@redhat.com>
3744
3745         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3746         Change to vector of block_symbol.  Update all users.
3747         (struct collect_info) <symbols>: Likewise.
3748         (collect_info::add_symbol): Take block_symbol as argument.
3749         Update all callers.
3750         (decode_compound_collector) <m_symbols>: Change type to vector
3751         of block_symbol.  Update all users.
3752         (decode_compound_collector::operator ()): Change parameter type
3753         to block_symbol.
3754         (find_method, find_function_symbols, find_linespec_symbols)
3755         (find_label_symbols_in_block, find_label_symbols): Change symbol
3756         vectors to block_symbol vectors.
3757         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3758         block_symbol.
3759
3760 2018-08-29  Keith Seitz  <keiths@redhat.com>
3761
3762         * linespec.c (symbolp): Remove typedef and VEC definitions.
3763         (bound_minimal_symbol_d): Likewise.
3764
3765 2018-08-29  Keith Seitz  <keiths@redhat.com>
3766
3767         * linespec.c (decode_compound_collector::decode_compound_collector):
3768         Remove initialization for `m_symtabs'.
3769         (decode_compound_collector::release_symbols): Change return type
3770         to std::vector.  Update all callers.
3771         (class decode_compound_collector) <m_symbols>: Change type to
3772         std::vector.
3773         (lookup_prefix_sym): Change return type to std::vector.  Update all
3774         callers.
3775         (compare_symbols): Remove.
3776         (std_compare_symbols): Rename to `compare_symbols'.
3777         (find_method): Change `sym_classes' parameter to std::vector.
3778         Update all callers.  Use std::sort to sort sym_classes.
3779         (find_linespec_symbols): Remove cleanup.
3780
3781 2018-08-29  Keith Seitz  <keiths@redhat.com>
3782
3783         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3784         std::vector.  Update all users.
3785         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3786         (struct collect_info) <minimal_symbols>: Likewise.
3787         (compare_msymbols): Return bool.  Change parameters to const
3788         bound_minimal_symbol references.
3789         (find_method, find_function_symbols, find_linespec_symbols): Change
3790         `minsyms' parameter to std::vector.  Update all callers.
3791
3792 2018-08-29  Keith Seitz  <keiths@redhat.com>
3793
3794         * linespec.c (struct linespec) <label_symbols>: Change type to
3795         std::vector.  Update all users.
3796         (find_label_symbols_in_block): Change `result' parameter to
3797         std::vector.  Update all callers.
3798         (find_label_symbols): Return std::vector.  Update all callers.
3799
3800 2018-08-29  Keith Seitz  <keiths@redhat.com>
3801
3802         * linespec.c (struct linespec) <function_symbols>: Change type to
3803         std::vector.  Update all users.
3804         (struct collect_info) <function_symbols>: Likewise.
3805         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3806         (std_compare_symbols): New function.
3807         (find_method, find_function_symbols, find_linespec_symbols)
3808         (find_label_symbols_in_block): Change `symbols' parameter to
3809         std::vector.  Update all callers.
3810         (find_label_symbols): Likewise for `function_symbols' and
3811         `label_funcs_ret'.
3812
3813 2018-08-29  Keith Seitz  <keiths@redhat.com>
3814
3815         * linespec.c (symtab_vector_up): Define.
3816         (struct linespec) <file_symtabs>: Change type to std::vector *.
3817         Update all uses.
3818         (struct collect_info) <file_symtabs>: Likewise.
3819         (collect_symtabs_from_filename): Return symtab_vector_up.
3820         Update all callers.
3821         (decode_objc): Remove cleanup.
3822         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3823         (symtab_collector::release_symtabs): Return symtab_vector_up.
3824         Update all callers.
3825         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3826         Update all users.
3827         (collect_symtabs_from_filename, symtabs_from_filename): Return
3828         symtab_vector_up.  Update all callers.
3829
3830 2018-08-29  Tom Tromey  <tom@tromey.com>
3831
3832         * csky-tdep.c (csky_analyze_prologue): Use
3833         core_addr_to_string_nz.
3834
3835 2018-08-29  Tom Tromey  <tom@tromey.com>
3836
3837         * windows-nat.c (struct xlate_exception) <them>: Change type to
3838         DWORD.
3839         (xlate): Fix formatting.  Remove last entry.
3840         (struct xlate_exception, xlate): Comment out.
3841         (windows_nat_target::resume): Use ranged for.
3842
3843 2018-08-29  Jim Wilson  <jimw@sifive.com>
3844
3845         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3846         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3847         of NT_PRFPREG.
3848         (riscv_linux_nat_target::store_registers): Likewise.
3849
3850 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3851
3852         PR gdb/23555
3853         PR gdb/23558
3854         * gnulib/aclocal.m4: Regenerate.
3855         * gnulib/config.in: Regenerate.
3856         * gnulib/configure: Regenerate.
3857         * gnulib/import/Makefile.am: Update.
3858         * gnulib/import/Makefile.in: Update.
3859         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3860         * gnulib/import/_Noreturn.h: ... this.
3861         * gnulib/import/alloca.in.h: Update.
3862         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3863         * gnulib/import/arg-nonnull.h: ... this.
3864         * gnulib/import/assure.h: Update.
3865         * gnulib/import/at-func.c: Update.
3866         * gnulib/import/basename-lgpl.c: Update.
3867         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3868         * gnulib/import/c++defs.h: ... this.
3869         * gnulib/import/canonicalize-lgpl.c: Update.
3870         * gnulib/import/cdefs.h: Update.
3871         * gnulib/import/chdir-long.c: Update.
3872         * gnulib/import/chdir-long.h: Update.
3873         * gnulib/import/cloexec.c: Update.
3874         * gnulib/import/cloexec.h: Update.
3875         * gnulib/import/close.c: Update.
3876         * gnulib/import/closedir.c: Update.
3877         * gnulib/import/config.charset: Update.
3878         * gnulib/import/dirent-private.h: Update.
3879         * gnulib/import/dirent.in.h: Update.
3880         * gnulib/import/dirfd.c: Update.
3881         * gnulib/import/dirname-lgpl.c: Update.
3882         * gnulib/import/dirname.h: Update.
3883         * gnulib/import/dosname.h: Update.
3884         * gnulib/import/dup-safer-flag.c: Update.
3885         * gnulib/import/dup-safer.c: Update.
3886         * gnulib/import/dup.c: Update.
3887         * gnulib/import/dup2.c: Update.
3888         * gnulib/import/errno.in.h: Update.
3889         * gnulib/import/error.c: Update.
3890         * gnulib/import/error.h: Update.
3891         * gnulib/import/exitfail.c: Update.
3892         * gnulib/import/exitfail.h: Update.
3893         * gnulib/import/extra/update-copyright: Update.
3894         * gnulib/import/fchdir.c: Update.
3895         * gnulib/import/fcntl.c: Update.
3896         * gnulib/import/fcntl.in.h: Update.
3897         * gnulib/import/fd-hook.c: Update.
3898         * gnulib/import/fd-hook.h: Update.
3899         * gnulib/import/fd-safer-flag.c: Update.
3900         * gnulib/import/fd-safer.c: Update.
3901         * gnulib/import/fdopendir.c: Update.
3902         * gnulib/import/filename.h: Update.
3903         * gnulib/import/filenamecat-lgpl.c: Update.
3904         * gnulib/import/filenamecat.h: Update.
3905         * gnulib/import/flexmember.h: Update.
3906         * gnulib/import/float+.h: Update.
3907         * gnulib/import/float.c: Update.
3908         * gnulib/import/float.in.h: Update.
3909         * gnulib/import/fnmatch.c: Update.
3910         * gnulib/import/fnmatch.in.h: Update.
3911         * gnulib/import/fnmatch_loop.c: Update.
3912         * gnulib/import/fpucw.h: Update.
3913         * gnulib/import/frexp.c: Update.
3914         * gnulib/import/frexpl.c: Update.
3915         * gnulib/import/fstat.c: Update.
3916         * gnulib/import/fstatat.c: Update.
3917         * gnulib/import/getcwd-lgpl.c: Update.
3918         * gnulib/import/getcwd.c: Update.
3919         * gnulib/import/getdtablesize.c: Update.
3920         * gnulib/import/getlogin_r.c: Update.
3921         * gnulib/import/getprogname.c: Update.
3922         * gnulib/import/getprogname.h: Update.
3923         * gnulib/import/gettext.h: Update.
3924         * gnulib/import/gettimeofday.c: Update.
3925         * gnulib/import/glob-libc.h: Update.
3926         * gnulib/import/glob.c: Update.
3927         * gnulib/import/glob.in.h: Update.
3928         * gnulib/import/glob_internal.h: Update.
3929         * gnulib/import/glob_pattern_p.c: Update.
3930         * gnulib/import/globfree.c: Update.
3931         * gnulib/import/hard-locale.c: Update.
3932         * gnulib/import/hard-locale.h: Update.
3933         * gnulib/import/intprops.h: Update.
3934         * gnulib/import/inttypes.in.h: Update.
3935         * gnulib/import/isnan.c: Update.
3936         * gnulib/import/isnand-nolibm.h: Update.
3937         * gnulib/import/isnand.c: Update.
3938         * gnulib/import/isnanl-nolibm.h: Update.
3939         * gnulib/import/isnanl.c: Update.
3940         * gnulib/import/itold.c: Update.
3941         * gnulib/import/libc-config.h: Update.
3942         * gnulib/import/limits.in.h: Update.
3943         * gnulib/import/localcharset.c: Update.
3944         * gnulib/import/localcharset.h: Update.
3945         * gnulib/import/localtime-buffer.c: Update.
3946         * gnulib/import/localtime-buffer.h: Update.
3947         * gnulib/import/lstat.c: Update.
3948         * gnulib/import/m4/00gnulib.m4: Update.
3949         * gnulib/import/m4/__inline.m4: Update.
3950         * gnulib/import/m4/absolute-header.m4: Update.
3951         * gnulib/import/m4/alloca.m4: Update.
3952         * gnulib/import/m4/builtin-expect.m4: Update.
3953         * gnulib/import/m4/canonicalize.m4: Update.
3954         * gnulib/import/m4/chdir-long.m4: Update.
3955         * gnulib/import/m4/close.m4: Update.
3956         * gnulib/import/m4/closedir.m4: Update.
3957         * gnulib/import/m4/configmake.m4: Update.
3958         * gnulib/import/m4/d-ino.m4: Update.
3959         * gnulib/import/m4/d-type.m4: Update.
3960         * gnulib/import/m4/dirent_h.m4: Update.
3961         * gnulib/import/m4/dirfd.m4: Update.
3962         * gnulib/import/m4/dirname.m4: Update.
3963         * gnulib/import/m4/double-slash-root.m4: Update.
3964         * gnulib/import/m4/dup.m4: Update.
3965         * gnulib/import/m4/dup2.m4: Update.
3966         * gnulib/import/m4/eealloc.m4: Update.
3967         * gnulib/import/m4/environ.m4: Update.
3968         * gnulib/import/m4/errno_h.m4: Update.
3969         * gnulib/import/m4/error.m4: Update.
3970         * gnulib/import/m4/exponentd.m4: Update.
3971         * gnulib/import/m4/exponentl.m4: Update.
3972         * gnulib/import/m4/extensions.m4: Update.
3973         * gnulib/import/m4/extern-inline.m4: Update.
3974         * gnulib/import/m4/fchdir.m4: Update.
3975         * gnulib/import/m4/fcntl-o.m4: Update.
3976         * gnulib/import/m4/fcntl.m4: Update.
3977         * gnulib/import/m4/fcntl_h.m4: Update.
3978         * gnulib/import/m4/fdopendir.m4: Update.
3979         * gnulib/import/m4/filenamecat.m4: Update.
3980         * gnulib/import/m4/flexmember.m4: Update.
3981         * gnulib/import/m4/float_h.m4: Update.
3982         * gnulib/import/m4/fnmatch.m4: Update.
3983         * gnulib/import/m4/fnmatch_h.m4: Update.
3984         * gnulib/import/m4/fpieee.m4: Update.
3985         * gnulib/import/m4/frexp.m4: Update.
3986         * gnulib/import/m4/frexpl.m4: Update.
3987         * gnulib/import/m4/fstat.m4: Update.
3988         * gnulib/import/m4/fstatat.m4: Update.
3989         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3990         * gnulib/import/m4/getcwd-path-max.m4: Update.
3991         * gnulib/import/m4/getcwd.m4: Update.
3992         * gnulib/import/m4/getdtablesize.m4: Update.
3993         * gnulib/import/m4/getlogin.m4: Update.
3994         * gnulib/import/m4/getlogin_r.m4: Update.
3995         * gnulib/import/m4/getpagesize.m4: Update.
3996         * gnulib/import/m4/getprogname.m4: Update.
3997         * gnulib/import/m4/gettimeofday.m4: Update.
3998         * gnulib/import/m4/glibc21.m4: Update.
3999         * gnulib/import/m4/glob.m4: Update.
4000         * gnulib/import/m4/glob_h.m4: Update.
4001         * gnulib/import/m4/gnulib-cache.m4: Update.
4002         * gnulib/import/m4/gnulib-common.m4: Update.
4003         * gnulib/import/m4/gnulib-comp.m4: Update.
4004         * gnulib/import/m4/gnulib-tool.m4: Update.
4005         * gnulib/import/m4/hard-locale.m4: Update.
4006         * gnulib/import/m4/include_next.m4: Update.
4007         * gnulib/import/m4/inttypes-pri.m4: Update.
4008         * gnulib/import/m4/inttypes.m4: Update.
4009         * gnulib/import/m4/isnand.m4: Update.
4010         * gnulib/import/m4/isnanl.m4: Update.
4011         * gnulib/import/m4/largefile.m4: Update.
4012         * gnulib/import/m4/limits-h.m4: Update.
4013         * gnulib/import/m4/localcharset.m4: Update.
4014         * gnulib/import/m4/locale-fr.m4: Update.
4015         * gnulib/import/m4/locale-ja.m4: Update.
4016         * gnulib/import/m4/locale-zh.m4: Update.
4017         * gnulib/import/m4/localtime-buffer.m4: Update.
4018         * gnulib/import/m4/longlong.m4: Update.
4019         * gnulib/import/m4/lstat.m4: Update.
4020         * gnulib/import/m4/malloc.m4: Update.
4021         * gnulib/import/m4/malloca.m4: Update.
4022         * gnulib/import/m4/math_h.m4: Update.
4023         * gnulib/import/m4/mbrtowc.m4: Update.
4024         * gnulib/import/m4/mbsinit.m4: Update.
4025         * gnulib/import/m4/mbsrtowcs.m4: Update.
4026         * gnulib/import/m4/mbstate_t.m4: Update.
4027         * gnulib/import/m4/memchr.m4: Update.
4028         * gnulib/import/m4/memmem.m4: Update.
4029         * gnulib/import/m4/mempcpy.m4: Update.
4030         * gnulib/import/m4/memrchr.m4: Update.
4031         * gnulib/import/m4/mkdir.m4: Update.
4032         * gnulib/import/m4/mkstemp.m4: Update.
4033         * gnulib/import/m4/mmap-anon.m4: Update.
4034         * gnulib/import/m4/mode_t.m4: Update.
4035         * gnulib/import/m4/msvc-inval.m4: Update.
4036         * gnulib/import/m4/msvc-nothrow.m4: Update.
4037         * gnulib/import/m4/multiarch.m4: Update.
4038         * gnulib/import/m4/nocrash.m4: Update.
4039         * gnulib/import/m4/off_t.m4: Update.
4040         * gnulib/import/m4/onceonly.m4: Update.
4041         * gnulib/import/m4/open-cloexec.m4: Update.
4042         * gnulib/import/m4/open.m4: Update.
4043         * gnulib/import/m4/openat.m4: Update.
4044         * gnulib/import/m4/opendir.m4: Update.
4045         * gnulib/import/m4/pathmax.m4: Update.
4046         * gnulib/import/m4/rawmemchr.m4: Update.
4047         * gnulib/import/m4/readdir.m4: Update.
4048         * gnulib/import/m4/readlink.m4: Update.
4049         * gnulib/import/m4/realloc.m4: Update.
4050         * gnulib/import/m4/rename.m4: Update.
4051         * gnulib/import/m4/rewinddir.m4: Update.
4052         * gnulib/import/m4/rmdir.m4: Update.
4053         * gnulib/import/m4/save-cwd.m4: Update.
4054         * gnulib/import/m4/secure_getenv.m4: Update.
4055         * gnulib/import/m4/setenv.m4: Update.
4056         * gnulib/import/m4/signal_h.m4: Update.
4057         * gnulib/import/m4/ssize_t.m4: Update.
4058         * gnulib/import/m4/stat-time.m4: Update.
4059         * gnulib/import/m4/stat.m4: Update.
4060         * gnulib/import/m4/std-gnu11.m4: Update.
4061         * gnulib/import/m4/stdbool.m4: Update.
4062         * gnulib/import/m4/stddef_h.m4: Update.
4063         * gnulib/import/m4/stdint.m4: Update.
4064         * gnulib/import/m4/stdio_h.m4: Update.
4065         * gnulib/import/m4/stdlib_h.m4: Update.
4066         * gnulib/import/m4/strchrnul.m4: Update.
4067         * gnulib/import/m4/strdup.m4: Update.
4068         * gnulib/import/m4/strerror.m4: Update.
4069         * gnulib/import/m4/string_h.m4: Update.
4070         * gnulib/import/m4/strstr.m4: Update.
4071         * gnulib/import/m4/strtok_r.m4: Update.
4072         * gnulib/import/m4/sys_socket_h.m4: Update.
4073         * gnulib/import/m4/sys_stat_h.m4: Update.
4074         * gnulib/import/m4/sys_time_h.m4: Update.
4075         * gnulib/import/m4/sys_types_h.m4: Update.
4076         * gnulib/import/m4/tempname.m4: Update.
4077         * gnulib/import/m4/time_h.m4: Update.
4078         * gnulib/import/m4/unistd-safer.m4: Update.
4079         * gnulib/import/m4/unistd_h.m4: Update.
4080         * gnulib/import/m4/warn-on-use.m4: Update.
4081         * gnulib/import/m4/wchar_h.m4: Update.
4082         * gnulib/import/m4/wchar_t.m4: Update.
4083         * gnulib/import/m4/wctype_h.m4: Update.
4084         * gnulib/import/m4/wint_t.m4: Update.
4085         * gnulib/import/malloc.c: Update.
4086         * gnulib/import/malloc/scratch_buffer.h: Update.
4087         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4088         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4089         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4090         * gnulib/import/malloca.c: Update.
4091         * gnulib/import/malloca.h: Update.
4092         * gnulib/import/malloca.valgrind: Update.
4093         * gnulib/import/math.in.h: Update.
4094         * gnulib/import/mbrtowc.c: Update.
4095         * gnulib/import/mbsinit.c: Update.
4096         * gnulib/import/mbsrtowcs-impl.h: Update.
4097         * gnulib/import/mbsrtowcs-state.c: Update.
4098         * gnulib/import/mbsrtowcs.c: Update.
4099         * gnulib/import/memchr.c: Update.
4100         * gnulib/import/memmem.c: Update.
4101         * gnulib/import/mempcpy.c: Update.
4102         * gnulib/import/memrchr.c: Update.
4103         * gnulib/import/mkdir.c: Update.
4104         * gnulib/import/mkstemp.c: Update.
4105         * gnulib/import/msvc-inval.c: Update.
4106         * gnulib/import/msvc-inval.h: Update.
4107         * gnulib/import/msvc-nothrow.c: Update.
4108         * gnulib/import/msvc-nothrow.h: Update.
4109         * gnulib/import/open.c: Update.
4110         * gnulib/import/openat-die.c: Update.
4111         * gnulib/import/openat-priv.h: Update.
4112         * gnulib/import/openat-proc.c: Update.
4113         * gnulib/import/openat.c: Update.
4114         * gnulib/import/openat.h: Update.
4115         * gnulib/import/opendir.c: Update.
4116         * gnulib/import/pathmax.h: Update.
4117         * gnulib/import/pipe-safer.c: Update.
4118         * gnulib/import/rawmemchr.c: Update.
4119         * gnulib/import/readdir.c: Update.
4120         * gnulib/import/readlink.c: Update.
4121         * gnulib/import/realloc.c: Update.
4122         * gnulib/import/ref-add.sin: Update.
4123         * gnulib/import/ref-del.sin: Update.
4124         * gnulib/import/rename.c: Update.
4125         * gnulib/import/rewinddir.c: Update.
4126         * gnulib/import/rmdir.c: Update.
4127         * gnulib/import/same-inode.h: Update.
4128         * gnulib/import/save-cwd.c: Update.
4129         * gnulib/import/save-cwd.h: Update.
4130         * gnulib/import/scratch_buffer.h: Update.
4131         * gnulib/import/secure_getenv.c: Update.
4132         * gnulib/import/setenv.c: Update.
4133         * gnulib/import/signal.in.h: Update.
4134         * gnulib/import/stat-time.c: Update.
4135         * gnulib/import/stat-time.h: Update.
4136         * gnulib/import/stat-w32.c: Update.
4137         * gnulib/import/stat-w32.h: Update.
4138         * gnulib/import/stat.c: Update.
4139         * gnulib/import/stdbool.in.h: Update.
4140         * gnulib/import/stddef.in.h: Update.
4141         * gnulib/import/stdint.in.h: Update.
4142         * gnulib/import/stdio.in.h: Update.
4143         * gnulib/import/stdlib.in.h: Update.
4144         * gnulib/import/str-two-way.h: Update.
4145         * gnulib/import/strchrnul.c: Update.
4146         * gnulib/import/strdup.c: Update.
4147         * gnulib/import/streq.h: Update.
4148         * gnulib/import/strerror-override.c: Update.
4149         * gnulib/import/strerror-override.h: Update.
4150         * gnulib/import/strerror.c: Update.
4151         * gnulib/import/string.in.h: Update.
4152         * gnulib/import/stripslash.c: Update.
4153         * gnulib/import/strnlen1.c: Update.
4154         * gnulib/import/strnlen1.h: Update.
4155         * gnulib/import/strstr.c: Update.
4156         * gnulib/import/strtok_r.c: Update.
4157         * gnulib/import/sys_stat.in.h: Update.
4158         * gnulib/import/sys_time.in.h: Update.
4159         * gnulib/import/sys_types.in.h: Update.
4160         * gnulib/import/tempname.c: Update.
4161         * gnulib/import/tempname.h: Update.
4162         * gnulib/import/time.in.h: Update.
4163         * gnulib/import/unistd--.h: Update.
4164         * gnulib/import/unistd-safer.h: Update.
4165         * gnulib/import/unistd.in.h: Update.
4166         * gnulib/import/unsetenv.c: Update.
4167         * gnulib/import/verify.h: Update.
4168         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4169         * gnulib/import/wchar.in.h: Update.
4170         * gnulib/import/wctype.in.h: Update.
4171         * gnulib/import/xalloc-oversized.h: Update.
4172         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4173         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4174
4175 2018-08-16  Gary Benson <gbenson@redhat.com>
4176
4177         PR gdb/13000:
4178         * gdb/main.c (captured_main_1): Exit with nonzero status
4179         in batch mode if the last command to be executed failed.
4180         * NEWS: Mention the above.
4181
4182 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4183
4184         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4185         end of warning message.
4186
4187 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4188
4189         PR gdb/22943:
4190         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4191         (aarch64_extract_return_value): Use
4192         aapcs_is_vfp_call_or_return_candidate.
4193         (aarch64_return_in_memory): Likewise.
4194         (aarch64_store_return_value): Likewise.
4195
4196 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4197
4198         * aarch64-tdep.c
4199         (aapcs_is_vfp_call_or_return_candidate): Make static
4200         (pass_in_v_or_stack): Remove function.
4201         (pass_in_v_vfp_candidate): New function.
4202         (aarch64_push_dummy_call): Check for float register candidates.
4203
4204 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4205
4206         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4207         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4208         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4209
4210 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4211
4212         PR build/23399
4213         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4214         (struct ipa_sym_addresses): Rename to...
4215         (struct ipa_sym_addresses_common): ... this.
4216         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4217
4218 2018-08-28  Tom Tromey  <tom@tromey.com>
4219
4220         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4221         (token_fifo): Now a std::vector.
4222         (yylex, c_parse): Update.
4223         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4224         (token_fifo): Now a std::vector.
4225         (yylex, d_parse): Update.
4226         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4227         (token_fifo): Now a std::vector.
4228         (yylex, go_parse): Update.
4229
4230 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4231
4232         * parser-defs.h (struct type_stack) <elements>: Change type to
4233         std::vector<union type_stack_elt>.
4234         <depth, size>: Remove.
4235         * parse.c (parse_exp_in_context_1): Adjust.
4236         (type_stack_reserve): Remove.
4237         (check_type_stack_depth): Remove.
4238         (insert_into_type_stack): Adjust to std::vector.
4239         (insert_type): Likewise.
4240         (push_type): Likewise.
4241         (push_type_int): Likewise.
4242         (insert_type_address_space): Likewise.
4243         (pop_type): Likewise.
4244         (pop_type_int): Likewise.
4245         (pop_typelist): Likewise.
4246         (pop_type_stack): Likewise.
4247         (append_type_stack): Likewise.
4248         (push_type_stack): Likewise.
4249         (get_type_stack): Likewise.
4250         (type_stack_cleanup): Likewise.
4251         (push_typelist): Likewise.
4252         (follow_types): Likewise.
4253         (_initialize_parse): Likewise.
4254
4255 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4256
4257         * NEWS: Mention csky target.
4258
4259 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4260             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4261             Don Breazeal  <donb@codesourcery.com>
4262
4263         * csky-linux-tdep.c: New file.
4264         * csky-tdep.c: Likewise.
4265         * csky-tdep.h: Likewise.
4266         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4267         csky-tdep.o.
4268         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4269         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4270         * configure.tgt: Add csky support.
4271
4272 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4273
4274         * python/py-framefilter.c (py_print_frame): Print frame architecture
4275         when printing on an MI output.
4276
4277 2018-08-27  Tom Tromey  <tom@tromey.com>
4278
4279         PR build/23087:
4280         * configure: Rebuild.
4281         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4282
4283 2018-08-27  Tom Tromey  <tom@tromey.com>
4284
4285         * aarch64-linux-tdep.c
4286         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4287         casts to int.
4288
4289 2018-08-27  Tom Tromey  <tom@tromey.com>
4290
4291         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4292         unsigned.
4293         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4294         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4295         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4296         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4297         unsigned.
4298
4299 2018-08-27  Tom Tromey  <tom@tromey.com>
4300
4301         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4302         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4303
4304 2018-08-27  Tom Tromey  <tom@tromey.com>
4305
4306         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4307         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4308         ULONGEST_MAX.
4309         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4310         ULONGEST_MAX.
4311         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4312         ULONGEST_MAX.
4313         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4314         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4315         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4316         ULONGEST_MAX.
4317         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4318         (ppc64_linux_sigaction_tramp_frame)
4319         (ppc32_linux_sighandler_tramp_frame)
4320         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4321         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4322         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4323         * mn10300-linux-tdep.c (am33_linux_sigframe)
4324         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4325         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4326         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4327         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4328         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4329         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4330         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4331         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4332         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4333         * microblaze-linux-tdep.c
4334         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4335         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4336         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4337         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4338         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4339         * common/common-types.h (ULONGEST_MAX): New define.
4340         (CORE_ADDR_MAX): Fix formatting.
4341         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4342         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4343         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4344         (arm_linux_rt_sigreturn_tramp_frame)
4345         (arm_eabi_linux_sigreturn_tramp_frame)
4346         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4347         (thumb2_eabi_linux_sigreturn_tramp_frame)
4348         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4349         (arm_linux_restart_syscall_tramp_frame)
4350         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4351         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4352         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4353         ULONGEST_MAX.
4354         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4355
4356 2018-08-27  Tom Tromey  <tom@tromey.com>
4357
4358         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4359         CORE_ADDR_MAX.
4360         * mips-tdep.c (mips_deal_with_atomic_sequence)
4361         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4362         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4363         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4364         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4365         CORE_ADDR_MAX.
4366         * aarch64-tdep.c (aarch64_software_single_step): Use
4367         CORE_ADDR_MAX.
4368
4369 2018-08-27  Tom Tromey  <tom@tromey.com>
4370
4371         * linespec.c (complete_linespec_component): Add cast to "char".
4372         * completer.c (completion_tracker::build_completion_result): Add
4373         cast to "char".
4374
4375 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4376
4377         * solist.h (struct solist, struct target_so_ops): Fix
4378         indentation.
4379
4380 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4381
4382         * ada-tasks.c (ada_task_info_s): Remove typedef.
4383         (DEF_VEC_O(ada_task_info_s)): Remove.
4384         (struct ada_tasks_inferior_data): Initialize fields.
4385         <task_list>: Make an std::vector.
4386         (get_ada_tasks_inferior_data): Allocate with new.
4387         (ada_get_task_number): Adjust.
4388         (get_task_number_from_id): Likewise.
4389         (valid_task_id): Likewise.
4390         (ada_get_task_info_from_ptid): Likewise.
4391         (iterate_over_live_ada_tasks): Likewise.
4392         (add_ada_task): Likewise.
4393         (read_known_tasks): Likewise.
4394         (ada_build_task_list): Likewise.
4395         (print_ada_task_info): Likewise.
4396         (info_task): Likewise.
4397         (task_command_1): Likewise.
4398
4399 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4400
4401         * ada-lang.c (add_angle_brackets): Return std::string.
4402
4403 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4404
4405         * python/py-threadevent.c (py_get_event_thread): Initialize
4406         pythread.
4407
4408 2018-08-24  Pedro Alves  <palves@redhat.com>
4409
4410         * python/py-bpevent.c (create_breakpoint_event_object): Use
4411         copy-initialization.
4412         * python/py-continueevent.c (emit_continue_event): Use
4413         copy-initialization.
4414         * python/py-exitedevent.c (create_exited_event_object): Return a
4415         gdbpy_ref<>.
4416         (emit_exited_event): Use copy-initialization.
4417         * python/py-inferior.c (python_new_inferior)
4418         (python_inferior_deleted, add_thread_object): Use
4419         copy-initialization.
4420         * python/py-infevents.c (create_inferior_call_event_object)
4421         (create_register_changed_event_object)
4422         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4423         (emit_inferior_call_event, emit_memory_changed_event)
4424         (emit_register_changed_event): Use copy-initialization.
4425         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4426         Return a gdbpy_ref<>.
4427         (emit_new_objfile_event): Use copy-initialization.
4428         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4429         (emit_clear_objfiles_event): Use copy-initialization.
4430         * python/py-signalevent.c (create_signal_event_object): Use
4431         copy-initialization.
4432         * python/py-threadevent.c (create_thread_event_object): Use
4433         copy-initialization.
4434
4435 2018-08-24  Pedro Alves  <palves@redhat.com>
4436             Simon Marchi  <simon.marchi@ericsson.com>
4437
4438         PR gdb/23379
4439         * python/py-continueevent.c: Include "gdbthread.h".
4440         (create_continue_event_object): Add intro comment.  Add 'ptid'
4441         parameter.  Use it to find thread to pass to
4442         create_thread_event_object.
4443         (emit_continue_event): Pass PTID down to
4444         create_continue_event_object.
4445         * python/py-event.h (py_get_event_thread): Declare.
4446         (create_thread_event_object): Remove default from 'thread'
4447         parameter.
4448         * python/py-stopevent.c (create_stop_event_object): Use
4449         py_get_event_thread.
4450         * python/py-threadevent.c (get_event_thread): Rename to ...
4451         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4452         and use it to find the thread.
4453         (create_thread_event_object): Assert that THREAD isn't null.
4454         Don't find the event thread here.
4455
4456 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4457
4458         * block.h (blockrange, blockranges): New struct declarations.
4459         (struct block): Add new field named `ranges'.
4460         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4461         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4462         macros for accessing ranges in struct block.
4463         (make_blockranges): New declaration.
4464         block.c (make_blockranges): New function.
4465         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4466         for block.
4467         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4468         * blockframe.c (cache_pc_function_block): New static global.
4469         (clear_pc_function_cache): Clear cache_pc_function_block.
4470         (find_pc_partial_function): Move comment to symtab.h.  Add
4471         support for non-contiguous blocks.
4472         * cli/cli-cmds.c (block.h): Include.
4473         (print_disassembly): Handle printing of non-contiguous blocks.
4474         (disassemble_current_function): Likewise.
4475         (disassemble_command): Likewise.
4476
4477         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4478         BLOCK_START.
4479         * blockframe.c (get_pc_function_start): Likewise.
4480         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4481         (gcc_symbol_address): Likewise.
4482         * compile/compile-object-run.c (compile_object_run): Likewise.
4483         * compile/compile.c (get_expr_block_and_pc): Likewise.
4484         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4485         (func_addr_to_tail_call_list): Likewise.
4486         * findvar.c (default_read_var_value): Likewise.
4487         * inline-frame.c (inline_frame_this_id): Likewise.
4488         (skip-inline_frames): Likewise.
4489         * infcmd.c (until_next_command): Likewise.
4490         * linespec.c (convert_linespec_to_sals): Likewise.
4491         * parse.c (parse_exp_in_context_1): Likewise.
4492         * printcmd.c (build_address_symbolic): likewise.
4493         (info_address_command): Likewise.
4494         symtab.c (find_function_start_sal): Likewise.
4495         (skip_prologue_sal): Likewise.
4496         (find_function_alias_target): Likewise.
4497         (find_gnu_ifunc): Likewise.
4498         * stack.c (find_frame_funname): Likewise.
4499         * symtab.c (fixup_symbol_section): Likewise.
4500         (find_function_start_sal): Likewise.
4501         (skip_prologue_sal): Likewsie.
4502         (find_function_alias_target): Likewise.
4503         (find_gnu_ifunc): Likewise.
4504         * tracepoint.c (info_scope_command): Likewise.
4505         * value.c (value_fn_field): Likewise.
4506
4507         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4508         in place of find_pc_partial_function.
4509         * blockframe.c (find_function_entry_range_from_pc): New function.
4510         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4511         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4512         for each range in a block.
4513
4514
4515 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4516
4517         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4518         incrementation.
4519
4520 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4521
4522         * solib-svr4.c (read_program_headers_from_bfd): Return
4523         gdb::optional<gdb::byte_vector>.
4524         (svr4_exec_displacement): Adjust.
4525
4526 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4527
4528         * solib-svr4.c (read_program_header): Return
4529         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4530         (find_program_interpreter): Return
4531         gdb::optional<gdb::byte_vector>.
4532         (scan_dyntag_auxv): Adjust.
4533         (enable_break): Adjust.
4534         (svr4_exec_displacement): Adjust.
4535
4536 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4537
4538         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4539         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4540
4541 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4542
4543         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4544         string_vprintf.
4545         * guile/scm-utils.c (gdbscm_printf): Likewise.
4546         * serial.c (serial_printf): Likewise.
4547         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4548
4549 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4550
4551         * stack.c (print_frame): Print frame architecture when printing on
4552         an MI output.
4553         * NEWS: Mention new "arch" attribute in frame output.
4554
4555 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4556
4557         * arch/aarch64.h (aarch64_regnum): Update comment.
4558
4559 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4560
4561         * NEWS: Add SVE to 8.2 section.
4562
4563 2018-08-21  Pedro Alves  <palves@redhat.com>
4564
4565         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4566         out from gdbscm_parse_function_args.
4567         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4568         gdbscm_parse_function_args_1.
4569
4570 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4571
4572         PR gdb/17816
4573         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4574         operator.
4575
4576 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4577
4578         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4579
4580 2018-08-19  Michael Spang  <spang@google.com>
4581
4582         PR gdb/11786
4583         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4584         for PT_TLS segments.
4585
4586 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4587
4588         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4589         dwarf_variable_value.
4590         * dwarf2-frame.c (class dwarf_expr_executor):
4591         Add override for dwarf_variable_value.
4592         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4593         (class symbol_needs_eval_context): Likewise.
4594         (indirect_synthetic_pointer): Add forward declaration.
4595         (sect_variable_value): New function.
4596         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4597         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4598         for DW_OP_GNU_variable_value.
4599
4600 2018-08-16  Tom Tromey  <tom@tromey.com>
4601
4602         * top.c (read_command_file): Update.
4603         (command_line_input): Remove "repeat" argument.
4604         * ada-lang.c (get_selections): Update.
4605         * linespec.c (decode_line_2): Update.
4606         * defs.h (command_line_input): Remove argument.
4607         * cli/cli-script.c (read_next_line): Update.
4608         * python/py-gdb-readline.c: Update.
4609
4610 2018-08-17  Tom Tromey  <tom@tromey.com>
4611
4612         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4613         command_line_input.
4614
4615 2018-08-15  Tom Tromey  <tom@tromey.com>
4616
4617         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4618
4619 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4620
4621         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4622         If used, use find_pc_partial_function to find address range
4623         to disassemble.
4624         * mi/mi-main.c (mi_cmd_list_features): Report
4625         "data-disassemble-a-option" feature.
4626         * NEWS: Mention new -data-disassemble option -a.
4627
4628 2018-08-13  Tom Tromey  <tom@tromey.com>
4629
4630         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4631
4632 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4633
4634         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4635         (aarch64_linux_collect_sve_regset): Likewise.
4636         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4637         * regcache.h (regcache_map_entry_size): New function.
4638
4639 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4640
4641         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4642         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4643         (SVE_HEADER_VL_LENGTH): Likewise.
4644         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4645         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4646         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4647         (SVE_HEADER_SIZE_OFFSET): Likewise.
4648         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4649         (SVE_HEADER_VL_OFFSET): Likewise.
4650         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4651         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4652         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4653         (SVE_HEADER_SIZE): Likewise.
4654         (aarch64_linux_core_read_vq): Add function.
4655         (aarch64_linux_core_read_description): Check for SVE section.
4656
4657 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4658
4659         * aarch64-fbsd-tdep.c
4660         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4661         collect_size.
4662         * aarch64-linux-tdep.c
4663         (aarch64_linux_iterate_over_regset_sections): Likewise.
4664         * alpha-linux-tdep.c
4665         (alpha_linux_iterate_over_regset_sections):
4666         * alpha-nbsd-tdep.c
4667         (alphanbsd_iterate_over_regset_sections): Likewise.
4668         * amd64-fbsd-tdep.c
4669         (amd64fbsd_iterate_over_regset_sections): Likewise.
4670         * amd64-linux-tdep.c
4671         (amd64_linux_iterate_over_regset_sections): Likewise.
4672         * arm-bsd-tdep.c
4673         (armbsd_iterate_over_regset_sections): Likewise.
4674         * arm-fbsd-tdep.c
4675         (arm_fbsd_iterate_over_regset_sections): Likewise.
4676         * arm-linux-tdep.c
4677         (arm_linux_iterate_over_regset_sections): Likewise.
4678         * corelow.c (get_core_registers_cb): Likewise.
4679         (core_target::fetch_registers): Likewise.
4680         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4681         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4682         * gdbarch.h (void): Regenerate.
4683         * gdbarch.sh: Add supply_size and collect_size.
4684         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4685         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4686         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4687         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4688         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4689         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4690         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4691         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4692         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4693         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4694         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4695         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4696         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4697         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4698         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4699         Likewise.
4700         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4701         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4702         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4703         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4704         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4705         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4706         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4707         Likewise.
4708         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4709         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4710         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4711         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4712         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4713         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4714         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4715         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4716
4717 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4718
4719         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4720         with string_printf.
4721
4722 2018-08-10  Keith Seitz  <keiths@redhat.com>
4723
4724         * compile/compile-c-support.c (add_code_header, add_code_footer):
4725         Move into policy class.
4726         (c_push_user_expression, pop_user_expression_nop)
4727         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4728         (compile_program): New host class.
4729         (c_compile_program): New typedef.
4730         (c_compute_porgram): Use c_compile_program.
4731
4732 2018-08-10  Keith Seitz  <keiths@redhat.com>
4733
4734         * compile/compile-internal.h (compile_instance::~compile_instance):
4735         Remove calls to htab_delete.
4736         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4737         * compile.c (compile_instance::compile_instance): Initialize
4738         htab unique pointers.
4739         (compile_instance::get_cached_type, compile_instance::insert_type)
4740         (compile_instance::error_symbol_once): Update for unique_ptr.
4741
4742 2018-08-10  Keith Seitz  <keiths@redhat.com>
4743
4744         * compile/compile-c-symbols.c (struct symbol_error)
4745         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4746         (compile_instance::insert_symbol_error)
4747         (compile_instance::error_symbol_once): Move to ...
4748         * compile/compile.c: ... here.
4749
4750 2018-08-10  Keith Seitz  <keiths@redhat.com>
4751
4752         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4753         instead of `new_compile_instance'.
4754         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4755         Update description.
4756         If the symbol error map is not initialized, create it.
4757         (generate_c_for_for_one_symbol): Do not check/initialize
4758         the symbol error map.
4759         * compile/compile-c-types.c (compile_c_instance): Make a class.
4760         Update all callers.
4761         (compile_instance::compile_instance): Initialize the type cache.
4762         (get_cached_type): New function.
4763         (insert_type): Update description.
4764         (compile_c_instance::m_default_cflags): Define.
4765         (convert_type): Update description.  Use get_cached_type.
4766         (delete_instance): Moved to destructor.
4767         (new_compile_instance): Moved to constructor.
4768         * compile/compile-c.h (compile_c_instance): Make class inheriting
4769         from compile_instance.
4770         <base>: Remove field.
4771         <type_map, symbol_err_map>: Move to base class.
4772         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4773         * compile/compile-internal.h (compile_instance): Make class.
4774         <type_map_t, symbol_err_map_t>: Define.
4775         <fe>: Rename to `m_gcc_fe'.
4776         <scope, block, gcc_target_options>: Add `m_' prefix.
4777         <m_type_map, m_symbol_err_map>: New fields, moved from
4778         compile_c_instance.
4779         <destroy>: Remove.
4780         (convert_type, new_compile_instance): Remove.
4781         * compile/compile.c (cleanup_compile_instance): Remove.
4782         (compile_to_object): Use unique_ptr to eliminate cleanups.
4783         (compile_instance::set_print_callback, compile_instance::version)
4784         (compile_instance::set_verbose)
4785         (compile_instance::set_driver_filename)
4786         (compile_instance::set_triplet_regexp)
4787         (compile_instance::set_arguments)
4788         (compile_instance::set_source_file)
4789         (compile_instance::compile): Define.
4790
4791 2018-08-10  Keith Seitz  <keiths@redhat.com>
4792
4793         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4794         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4795         gcc-c-fe.def to define C plugin.
4796         (delete_instance): Delete `c_plugin'.
4797         (new_compile_instance): Initialize `c_plugin'.
4798         * compile/compile-c.h: Include gcc_c_plugin.h.
4799         (struct compile_c_instance) <c_plugin>: New member.
4800         * gcc-c-plugin.h: New file.
4801         Update all callers with API change.
4802
4803 2018-08-10  Keith Seitz  <keiths@redhat.com>
4804
4805         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4806         (HFILES_NO_SRCDIR): ... to here.
4807         Add compile-internal.h and compile-c.h.
4808         * compile/compile-c-support.c: Include compile-c.h.
4809         * compile/compile-c-symbols.c: Include compile-c.h.
4810         (generate_c_for_variable_locations): Update comment.
4811         * compile/compile-c-types.c: Include compile-c.h.
4812         * compile/compile-c.h: New file -- moved C language declarations
4813         from other files here.
4814         * compile/compile-internal.h: Do not include hashtab.h or
4815         common/enum-flags.h.
4816         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4817         (gcc_convert_symbol, gcc_symbol_address)
4818         (generate_c_for_variable_locations, c_get_mode_for_size)
4819         (c_get_range_decl_name): Definitions moved to compile-c.h.
4820         * compile/compile-loc2c.c: Include compile-c.h.
4821
4822 2018-08-10  Keith Seitz  <keiths@redhat.com>
4823
4824         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4825         (c_symbol_substitution_name): ... this.
4826         Update all callers.
4827
4828 2018-08-10  Keith Seitz  <keiths@redhat.com>
4829
4830         * compile/compile-c-support.c (c_compute_program): Use
4831         unique_xmalloc_ptr to eliminate cleanup.
4832         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4833         Return a unique_xmalloc_ptr and eliminate cleanup.
4834         * compile/compile-internal.h (generate_c_for_variable_locations):
4835         Return unique_xmalloc_ptr and update description.
4836
4837 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4838
4839         * corelow.c (core_target::get_core_register_section): Rename
4840         min_size to section_min_size.
4841
4842 2018-08-09  Jim Wilson  <jimw@sifive.com>
4843
4844         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4845         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4846         * NEWS: Mention new GNU/Linux RISC-V target.
4847         * configure.host: Add riscv*-*-linux*.
4848         * configure.nat: Add riscv*.
4849         * configure.tgt: Add riscv*-*-linux*.
4850         * riscv-linux-nat.c: New file.
4851         * riscv-linux-tdep.c: New file.
4852
4853 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4854
4855         * infrun.c (resume): Make static, add forward declaration.
4856         (proceed): Update header comment.
4857         * infrun.h (resume): Delete declaration.
4858
4859 2018-08-09  Tom Tromey  <tom@tromey.com>
4860
4861         * riscv-tdep.h: Minor formatting fixes.
4862
4863 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4864
4865         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4866         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4867         (test_mkdir_recursive): Likewise.
4868         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4869
4870 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4871
4872         * valarith.c (value_subscripted_rvalue): If an array is not in
4873         memory, and we don't know the upper bound, then we can't know that
4874         the requested element exists or not.
4875
4876 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4877
4878         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4879         (target_options_to_string): Add comment.
4880
4881 2018-08-08  Tom Tromey  <tom@tromey.com>
4882
4883         * unittests/scoped_mmap-selftests.c: Check result of "write".
4884
4885 2018-08-08  Jim Wilson  <jimw@sifive.com>
4886
4887         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4888         (decode_register_index_short): New.
4889         (decode_j_type_insn, decode_cj_type_insn): New.
4890         (decode_b_type_insn, decode_cb_type_insn): New.
4891         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4892         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4893         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4894         is_c_sw_insn instead of is_sw_insn.
4895         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4896         (riscv_software_single_step): New.
4897         * riscv-tdep.h (riscv_software_single_step): Declare.
4898
4899         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4900         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4901
4902 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4903
4904         PR gdb/18050:
4905         * target.c (dispose_inferior): Don't dispose of inferiors that are
4906         already killed.
4907
4908 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4909
4910         * remote.c (remote_target::download_tracepoint): Change char* to
4911         const char*.
4912
4913 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4914
4915         * target.h (target_options_to_string): Return an std::string.
4916         * target.c (str_comma_list_concat_elem): Return void, use
4917         std::string.
4918         (do_option): Likewise.
4919         (target_options_to_string): Return an std::string.
4920         * linux-nat.c (linux_nat_target::wait): Adjust.
4921         * target-debug.h (target_debug_print_options): Adjust.
4922
4923 2018-08-07  Tom Tromey  <tom@tromey.com>
4924
4925         * Makefile.in (CPPFLAGS): New variable.
4926         (INTERNAL_CPPFLAGS): Use it.
4927
4928 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4929
4930         * NEWS: Mention the index cache.
4931
4932 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4933
4934         * common/pathstuff.h (get_standard_cache_dir): New.
4935         * common/pathstuff.c (get_standard_cache_dir): New.
4936         * build-id.h (build_id_to_string): New.
4937         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4938         DEBUG_STR_SUFFIX): Move to here.
4939         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4940         DEBUG_STR_SUFFIX): Move from there.
4941         (write_psymtabs_to_index): Make non-static, add basename
4942         parameter.  Write to temporary files, rename when done.
4943         (save_gdb_index_command): Adjust call to
4944         write_psymtabs_to_index.
4945         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4946         field.
4947         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4948         (get_gdb_index_contents_from_cache): New.
4949         (get_gdb_index_contents_from_cache_dwz): New.
4950         (dwarf2_initialize_objfile): Read index from cache.
4951         (dwarf2_build_psymtabs): Save to index.
4952         * dwarf-index-cache.h: New file.
4953         * dwarf-index-cache.c: New file.
4954         * dwarf-index-write.h: New file.
4955
4956 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4957
4958         * gnulib/aclocal.m4: Re-generate.
4959         * gnulib/config.in: Re-generate.
4960         * gnulib/configure: Re-generate.
4961         * gnulib/import/Makefile.am: Re-generate.
4962         * gnulib/import/Makefile.in: Re-generate.
4963         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4964         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4965         * gnulib/import/m4/mkdir.m4: New file.
4966         * gnulib/import/mkdir.c: New file.
4967         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4968         module.
4969
4970 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4971
4972         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4973         * common/scoped_mmap.c: New file.
4974         * common/scoped_mmap.h (destroy): New method.
4975         (~scoped_mmap, reset): Use destroy.
4976         (scoped_mmap): New move constructor.
4977         (mmap_file): New declaration.
4978         * unittests/scoped_mmap-selftests.c (test_normal,
4979         test_invalid_filename, run_tests): New functions.
4980         (_initialize_scoped_mmap_selftests): Register selftest.
4981
4982 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4983
4984         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4985         (read_gdb_index_from_buffer): ... this.  Remove section
4986         parameter, add buffer parameter.
4987         (get_gdb_index_contents_ftype,
4988         get_gdb_index_contents_dwz_ftype): New typedefs.
4989         (dwarf2_read_gdb_index): Add callback parameters to get the
4990         index contents.
4991         (get_gdb_index_contents_from_section): New.
4992         (dwarf2_initialize_objfile): Update call to
4993         dwarf2_read_gdb_index.
4994
4995 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4996
4997         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4998         (gdb_open_cloexec): Likewise.
4999         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5000         (commandline_from_pid): Likewise.
5001         (linux_xfer_osdata_threads): Likewise.
5002         (linux_xfer_osdata_fds): Likewise.
5003         * ada-lang.c (is_package_name): Likewise.
5004         * auxv.c (procfs_xfer_auxv): Likewise.
5005         * breakpoint.c (print_one_breakpoint_location): Use
5006         uiout::field_fmt.
5007         (print_one_catch_solib): Use string_printf.
5008         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5009         (add_pe_forwarded_sym): Likewise.
5010         * dwarf2read.c (create_type_unit_group): Likewise.
5011         (build_error_marker_type): Likewise.
5012         * infcall.c (get_function_name): Likewise.
5013         * valprint.c (print_converted_chars_to_obstack): Likewise.
5014         * xtensa-tdep.c (xtensa_register_type): Likewise.
5015
5016 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5017
5018         * remote.c (remote_target::download_tracepoint): Fix format
5019         string errors.
5020
5021 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5022
5023         * tracefile.c: Include common/byte-vector.h.
5024         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5025         with trace_regblock_size if needed.  Update uses of buf.
5026
5027 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5028
5029         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5030         std::vector<unsigned char>.
5031         * tracepoint.c (collection_list::collection_list): Remove
5032         m_regs_mask initializer from initializer list.  Resize
5033         m_regs_mask using the largest remote register number.
5034         (collection_list::add_remote_register): Remove size check on
5035         m_regs_mask.  Use at to access element.
5036         (collection_list::stringify): Change type of temp_buf to
5037         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5038         stringify the register mask.  Use pack_hex_byte for the register
5039         mask.
5040
5041 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5042
5043         * tracepoint.h (class collection_list) <add_register>: Remove.
5044         <add_remote_register, add_ax_registers, add_local_register>:
5045         Declare.
5046         <add_memrange>: Add scope parameter.
5047         * tracepoint.c (encode_actions_1): Likewise.
5048         (collection_list::add_register): Rename to ...
5049         (collection_list::add_remote_register): ... this.  Update
5050         comment.
5051         (collection_list::add_ax_registers, add_local_register): New
5052         methods.
5053         (collection_list::add_memrange): Add scope parameter.  Call
5054         add_local_register instead of add_register.
5055         (finalize_tracepoint_aexpr): New function.
5056         (collection_list::collect_symbol): Update calls to add_memrange.
5057         Call add_local_register instead of add_register.  Call
5058         add_ax_registers.  Call finalize_tracepoint_aexpr.
5059         (encode_actions_1): Get remote regnos for $reg action.  Call
5060         add_remote_register, add_ax_registers, and add_local_register.
5061         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5062         (validate_actionline): Call finalize_tracepoint_aexpr.
5063
5064 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5065
5066         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5067         Replace array buf with gdb::char_vector buf, of size
5068         get_remote_packet_size ().  Replace references to buf and
5069         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5070         and xsnprintf with snprintf.  Raise errors if the buffer is too
5071         small.
5072
5073 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5074
5075         * remote.c (remote_target::download_tracepoint): Fix the has_more
5076         predicate in the QTDP action list iteration.
5077
5078 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5079
5080         * remote.c (remote_target::download_tracepoint): Fix indentation
5081         in for block.
5082
5083 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5084
5085         * proc-api.c (_initialize_proc_api): Remove c, unused.
5086         * procfs.c (procfs_init_inferior): Remove signals, unused.
5087         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5088         unused.
5089
5090 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5091             Andrew Burgess  <andrew.burgess@embecosm.com>
5092
5093         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5094         'W_STOPCODE (0)' as this could be ambiguous.
5095
5096 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5097
5098         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5099         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5100         "ai_socktype").
5101
5102 2018-08-02  Tom Tromey  <tom@tromey.com>
5103
5104         PR symtab/16842.
5105         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5106         symbols.
5107         (process_structure_scope): Likewise.
5108
5109 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5110
5111         PR gdb/22629:
5112         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5113         kill inferior.
5114
5115 2018-08-02  Tom Tromey  <tom@tromey.com>
5116
5117         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5118         (darwin_suspend_inferior, darwin_resume_inferior)
5119         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5120         (darwin_check_new_threads): Check result of get_darwin_inferior.
5121
5122 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5123
5124         GDB 8.1.1 released.
5125
5126 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5127
5128         * varobj.c (varobj_get_path_expr_parent): Report an error if
5129         parent is a dynamic varobj.
5130
5131 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5132
5133         * gnulib/aclocal.m4: Re-generate.
5134         * gnulib/config.in: Re-generate.
5135         * gnulib/configure: Re-generate.
5136         * gnulib/import/Makefile.in: Re-generate.
5137         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5138         * gnulib/import/m4/onceonly.m4: Re-generate.
5139
5140 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5141
5142         * target-descriptions.c (struct xml_test_tdesc): New.
5143         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5144         (record_xml_tdesc): Update.
5145         (maintenance_check_xml_descriptions): Update.
5146         * target-descriptions.h (record_xml_tdesc): Update comment.
5147
5148 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5149
5150         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5151         checking array bounds are defined.
5152
5153 2018-07-30  Tom Tromey  <tom@tromey.com>
5154
5155         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5156         irreflexivity violation.
5157
5158 2018-07-30  Tom Tromey  <tom@tromey.com>
5159
5160         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5161         * value.c (unpack_long): Remove lint code.
5162         * valops.c (value_ind): Remove lint code.
5163         * valarith.c (value_x_binop, value_x_unop, value_equal)
5164         (value_pos): Remove lint code.
5165
5166 2018-07-28  Tom de Vries  <tdevries@suse.de>
5167
5168         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5169         with undefined upper bound as <optimized out>.
5170
5171 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5172
5173         * gcore.in: Rename variable "name" to "prefix".  Expand
5174         "usage" text.
5175
5176 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5177
5178         * windows-nat.c (windows_nat_target::create_inferior): Update to
5179         call close() in global namespace.
5180
5181 2018-07-26  Tom Tromey  <tom@tromey.com>
5182
5183         * dwarf-index-write.c (add_address_entry): Don't add objfile
5184         offsets.
5185         * dbxread.c (find_stab_function): Rename from
5186         find_stab_function_addr.  Return a bound_minimal_symbol.
5187         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5188         Don't add objfile offsets.
5189         (end_psymtab): Use raw_text_low, raw_text_high,
5190         MSYMBOL_VALUE_RAW_ADDRESS.
5191         (read_ofile_symtab): Update.
5192         (process_one_symbol): Update.
5193         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5194         offsets.
5195         (dw2_relocate): Remove.
5196         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5197         searching addrmap.
5198         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5199         Update.
5200         (process_psymtab_comp_unit_reader, add_partial_symbol)
5201         (add_partial_subprogram, dwarf2_ranges_read): Update.
5202         (load_partial_dies): Update.
5203         (add_address_entry): Don't add objfile offsets.
5204         (dwarf2_build_include_psymtabs): Update.
5205         (create_addrmap_from_aranges): Don't add objfile offsets.
5206         (dw2_find_pc_sect_compunit_symtab): Update.
5207         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5208         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5209         Update.
5210         (parse_partial_symbols): Don't add objfile offsets.  Use
5211         raw_text_low, raw_text_high.  Update.
5212         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5213         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5214         or call 'relocate' quick function.  Clear psymbol_map.
5215         * psympriv.h (struct partial_symbol) <address>: Add section
5216         offset.
5217         <set_unrelocated_address>: Rename from set_address.
5218         <raw_text_low, raw_text_high>: New methods.
5219         <text_low, text_high>: Add objfile parameter.
5220         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5221         set_unrelocated_address.
5222         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5223         (find_pc_psymbol): Update.
5224         (fixup_psymbol_section, relocate_psymtabs): Remove.
5225         (dump_psymtab, psym_functions): Update.
5226         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5227         parameter.
5228         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5229         (start_psymtab_common): Update.
5230         * symfile-debug.c (debug_qf_relocate): Remove.
5231         (debug_sym_quick_functions): Update.
5232         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5233         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5234         Update.
5235
5236 2018-07-26  Tom Tromey  <tromey@redhat.com>
5237
5238         * dbxread.c (end_psymtab): Use text_high_valid and
5239         text_low_valid.
5240         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5241         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5242         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5243         Update comment.
5244         <text_low_valid, text_high_valid>: New fields.
5245         <set_text_low, set_text_high>: Update.
5246         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5247
5248 2018-07-26  Tom Tromey  <tom@tromey.com>
5249
5250         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5251         Update.
5252         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5253         textlow and texthigh fields.
5254         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5255         Update.
5256         * mdebugread.c (parse_lines, parse_partial_symbols)
5257         (psymtab_to_symtab_1): Update.
5258         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5259         Rename fields.  Update comment.  Now private.
5260         <text_low, text_high, set_text_low, set_text_high>: New methods.
5261         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5262         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5263         (start_psymtab_common, maintenance_info_psymtabs)
5264         (maintenance_check_psymtabs): Update.
5265         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5266         texthigh fields.
5267         (scan_xcoff_symtab): Update.
5268
5269 2018-07-26  Tom Tromey  <tromey@redhat.com>
5270
5271         * psympriv.h (struct partial_symbol) <unrelocated_address,
5272         address, set_address>: New methods.
5273         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5274         (fixup_psymbol_section, relocate_psymtabs): Update.
5275         (print_partial_symbols): Add 'objfile' parameter.  Update.
5276         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5277         Update.
5278
5279 2018-07-26  Tom Tromey  <tom@tromey.com>
5280
5281         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5282         (debug_names::write_psymbols): Update.
5283         * psympriv.h (struct partial_symbol): Derive from
5284         general_symbol_info.
5285         <obj_section>: New method.
5286         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5287         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5288         (find_pc_sect_psymbol, fixup_psymbol_section)
5289         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5290         (print_partial_symbols, recursively_search_psymtabs)
5291         (compare_psymbols, psymbol_hash, psymbol_compare)
5292         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5293         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5294
5295 2018-07-26  Tom Tromey  <tromey@redhat.com>
5296
5297         * dbxread.c (end_psymtab): Remove dead code.
5298
5299 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5300
5301         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5302         DWARF unwinders are disabled.
5303         * dwarf2-frame.c: Add dwarf2read.h include.
5304         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5305         disabled.
5306         (dwarf2_frame_unwinders_enabled_p): Define.
5307         (show_dwarf_unwinders_enabled_p): New function.
5308         (_initialize_dwarf2_frame): Register switch to control DWARF
5309         unwinder use.
5310         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5311         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5312         (show_dwarf_cmdlist): Remove static keyword.
5313         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5314         (show_dwarf_cmdlist): Declare.
5315         * NEWS: Document new feature.
5316
5317 2018-07-26  Tom de Vries  <tdevries@suse.de>
5318
5319         PR breakpoints/23366
5320         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5321
5322 2018-07-26  Tom de Vries  <tdevries@suse.de>
5323
5324         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5325         DW_AT_count can't be translated to a dynamic prop.
5326
5327 2018-07-25  Tom de Vries  <tdevries@suse.de>
5328
5329         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5330         try/catch.
5331
5332 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5333
5334         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5335
5336 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5337
5338         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5339
5340 2018-07-24  Keith Seitz  <keiths@redhat.comt
5341
5342         PR symtab/23010
5343         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5344         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5345         instead of add_symbol_to_list.
5346         (read_file_scope): Call prepare_one_comp_unit before reading
5347         any other DIEs.
5348
5349 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5350
5351         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5352
5353 2018-07-24  Tom Tromey  <tom@tromey.com>
5354
5355         * utils.c (malloc, realloc, free): Don't declare.
5356         * configure, config.in: Rebuild.
5357         * configure.ac: Don't check for declarations of free, malloc, or
5358         realloc.
5359
5360 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5361
5362         * aarch64-linux-nat.c
5363         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5364         variable.
5365         * arm-linux-nat.c (fetch_regs): Likewise.
5366         (store_regs): Likewise.
5367         (fetch_vfp_regs): Likewise.
5368         (store_vfp_regs): Likewise.
5369         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5370         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5371         (arm_linux_nat_target::insert_watchpoint): Likewise.
5372         (arm_linux_nat_target::remove_watchpoint): Likewise.
5373         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5374         Likewise.
5375         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5376         Likewise.
5377         * ppc-linux-nat.c (fetch_register): Likewise.
5378         (fetch_all_gp_regs): Likewise.
5379         (fetch_ppc_registers): Likewise.
5380         (store_all_gp_regs): Likewise.
5381         (store_ppc_registers): Likewise.
5382         (hwdebug_insert_point): Likewise.
5383         (can_use_watchpoint_cond_accel): Likewise.
5384         * remote-sim.c (gdb_os_write_stdout): Likewise.
5385
5386 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5387             Tom Tromey  <tom@tromey.com>
5388
5389         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5390         test for it.
5391         * configure: Rebuild.
5392
5393 2018-07-22  Tom Tromey  <tom@tromey.com>
5394
5395         * regformats/regdat.sh: Define xmltarget_${name} inside
5396         #ifndef IN_PROCESS_AGENT.
5397
5398 2018-07-22  Tom Tromey  <tom@tromey.com>
5399
5400         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5401
5402 2018-07-22  Tom Tromey  <tom@tromey.com>
5403
5404         * symfile.c (reread_symbols): Notify iter, not objfile.
5405
5406 2018-07-22  Tom Tromey  <tom@tromey.com>
5407
5408         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5409         Use arch_ops.
5410         (ravenscar_thread_target::prepare_to_store): Likewise.
5411
5412 2018-07-22  Tom Tromey  <tom@tromey.com>
5413
5414         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5415         unused variable.  Call value_fetch_lazy when needed.
5416         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5417         Remove unused variable.  Call value_fetch_lazy when needed.
5418
5419 2018-07-22  Tom Tromey  <tom@tromey.com>
5420
5421         * m32c-tdep.c (mark_dma): Return void.
5422         (make_regs): Remove unused declarations.
5423
5424 2018-07-22  Tom Tromey  <tom@tromey.com>
5425
5426         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5427         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5428         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5429         bkscm_get_valid_block_smob_arg_unsafe for effect.
5430
5431 2018-07-22  Tom Tromey  <tom@tromey.com>
5432
5433         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5434         value_type.
5435
5436 2018-07-22  Tom Tromey  <tom@tromey.com>
5437
5438         * windows-nat.c (saved_context): Conditionally define.
5439         * remote.c (remote_target::remote_btrace_maybe_reopen):
5440         Conditionally declare "warned".
5441         * inflow.c (sigquit_ours): Conditionally define.
5442         (new_tty): Move "tty" declaration inside #if.
5443         * guile/guile.c (guile_datadir): Conditionally define.
5444         * charset.c (set_be_le_names): Move some declarations inside #if.
5445         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5446         #if.
5447         (parse_xml_btrace_conf): Likewise.
5448
5449 2018-07-22  Tom Tromey  <tom@tromey.com>
5450
5451         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5452
5453 2018-07-22  Tom Tromey  <tom@tromey.com>
5454
5455         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5456         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5457         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5458         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5459         * stack.c (frame_apply_level_command): Remove unused variable.
5460         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5461         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5462         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5463         unused variable.
5464         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5465         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5466         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5467         variable.
5468         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5469         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5470         variable.
5471         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5472         Remove unused variable.
5473         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5474         variable.
5475         * common/tdesc.c (print_xml_feature::visit): Remove unused
5476         variable.
5477         * compile/compile-object-load.c (store_regs): Remove unused
5478         variables.
5479         * complaints.c (clear_complaints): Remove unused variable.
5480         * corelow.c (core_target_open): Remove unused variable.
5481         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5482         variable.
5483         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5484         variable.
5485         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5486         variable.
5487         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5488         variable.
5489         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5490         variable.
5491         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5492         variable.
5493         * ia64-tdep.c (examine_prologue): Remove unused variable.
5494         * infcall.c (run_inferior_call): Remove unused variable.
5495         * inferior.c (exit_inferior): Remove unused variable.
5496         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5497         * linespec.c (decode_line_2): Remove unused variable.
5498         * linux-nat.c (super_close): Remove.
5499         * linux-tdep.c (linux_info_proc): Remove unused variable.
5500         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5501         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5502         Remove unused variable.
5503         * parse.c (find_minsym_type_and_address): Remove unused variable.
5504         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5505         variable.
5506         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5507         variable.
5508         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5509         variables.
5510         * record-btrace.c (record_btrace_target::store_registers): Remove
5511         unused variable.
5512         (cmd_show_record_btrace_cpu): Remove unused variable.
5513         * riscv-tdep.c (riscv_register_reggroup_p)
5514         (riscv_push_dummy_call, riscv_return_value): Remove unused
5515         variable.
5516         * rust-exp.y (literal): Remove unused variable.
5517         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5518         unused variable.
5519         <STRUCTOP_ANONYMOUS>: Likewise.
5520         * s390-linux-tdep.c (s390_linux_init_abi_31)
5521         (s390_linux_init_abi_64): Remove unused variable.
5522         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5523         (file_select_thread, net_windows_open, _initialize_ser_windows):
5524         Remove unused variables.
5525         * symtab.c (find_pc_sect_line): Remove unused variable.
5526         * target-memory.c (compute_garbled_blocks): Remove unused
5527         variable.
5528         (target_write_memory_blocks): Remove unused variable.
5529         * target.c (target_stack::unpush): Remove unused variables.
5530         * tracepoint.c (start_tracing, all_tracepoint_actions)
5531         (merge_uploaded_trace_state_variables)
5532         (print_one_static_tracepoint_marker): Remove unused variable.
5533         * unittests/basic_string_view/element_access/char/1.cc (test01):
5534         Remove unused variable.
5535         * windows-nat.c (windows_continue, windows_add_all_dlls)
5536         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5537         Remove unused variables.
5538
5539 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5540
5541         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5542         attr_profile in HAVE_ELF.
5543         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5544         HAVE_ELF.
5545
5546 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5547
5548         * frame.c (frame_register_unwind): Change parameter name.
5549         (frame_unwind_register): Likewise.
5550         (frame_unwind_register_value): Likewise.
5551         (frame_unwind_register_signed): Likewise.
5552         (frame_unwind_register_unsigned): Likewise.
5553         * frame.h (frame_register_unwind): Likewise.
5554         (frame_unwind_register): Likewise.
5555         (frame_unwind_register_value): Likewise.
5556         (frame_unwind_register_signed): Likewise.
5557         (frame_unwind_register_unsigned): Likewise.
5558         (frame_unwind_arch): Likewise.
5559
5560 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5561
5562         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5563         ISA maintenance.
5564
5565 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5566
5567         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5568         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5569         hand.
5570
5571 2018-07-20  Keith Seitz  <keiths@redhat.com>
5572
5573         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5574         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5575         m_compunit_symtab, m_language>: Add "m_" prefix.
5576         Update all uses.
5577         * buildsym.c: Update all uses.
5578
5579 2018-07-20  Tom Tromey  <tom@tromey.com>
5580
5581         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5582         * buildsym.h (record_line_ftype): Remove typedef.
5583
5584 2018-07-20  Tom Tromey  <tom@tromey.com>
5585
5586         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5587         (end_expandable_symtab): Likewise.
5588         (end_symtab_get_static_block): Likewise.
5589         (end_symtab_from_static_block): Likewise.
5590         * buildsym-legacy.c (augment_type_symtab): Remove.
5591         (end_expandable_symtab): Remove.
5592         (end_symtab_get_static_block): Remove.
5593         (end_symtab_from_static_block): Remove.
5594
5595 2018-07-20  Tom Tromey  <tom@tromey.com>
5596
5597         * dwarf2read.c: Include buildsym.h.
5598         (struct dwarf2_cu) <builder>: New method.
5599         (fixup_go_packaging): Update.
5600         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5601         use scoped_free_pendings.
5602         (using_directives): Add "cu" parameter, remove "language".
5603         (read_import_statement, setup_type_unit_groups, )
5604         (read_func_scope, read_lexical_block_scope)
5605         (dwarf2_record_block_ranges, read_namespace): Update.
5606         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5607         (lnp_state_machine::handle_end_sequence): Update.
5608         (class lnp_state_machine) <m_cu>: New member.
5609         <m_record_line_callback>: Remove.
5610         <m_currently_recording_lines>: New member.
5611         (lnp_state_machine::handle_set_file): Update.
5612         (noop_record_line): Remove.
5613         (dwarf_record_line_p): Add cu parameter.
5614         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5615         (lnp_state_machine::record_line)
5616         (lnp_state_machine::lnp_state_machine)
5617         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5618         (dwarf_decode_lines): Update.
5619         (dwarf2_start_subfile): Add cu parameter.
5620         (dwarf2_start_symtab, new_symbol): Update.
5621         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5622         Remove dwarf2_per_objfile parameter.
5623         (dwarf_decode_macros): Update.
5624
5625 2018-07-20  Tom Tromey  <tom@tromey.com>
5626
5627         * stabsread.c (define_symbol): Update.
5628         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5629         * dwarf2read.c (new_symbol): Update.
5630         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5631         * cp-namespace.c: Include buildsym.h.
5632         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5633         * buildsym-legacy.c (get_buildsym_compunit): New function.
5634
5635 2018-07-20  Tom Tromey  <tom@tromey.com>
5636
5637         * xcoffread.c: Include buildsym-legacy.h.
5638         * windows-nat.c: Include buildsym-legacy.h.
5639         * stabsread.c: Include buildsym-legacy.h.
5640         * mdebugread.c: Include buildsym-legacy.h.
5641         * buildsym-legacy.h: New file.
5642         * buildsym-legacy.c: New file, from buildsym.c.
5643         * go32-nat.c: Include buildsym-legacy.h.
5644         * dwarf2read.c: Include buildsym-legacy.h.
5645         * dbxread.c: Include buildsym-legacy.h.
5646         * cp-namespace.c: Include buildsym-legacy.h.
5647         * coffread.c: Include buildsym-legacy.h.
5648         * buildsym.h: Move some contents to buildsym-legacy.h.
5649         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5650         buildsym-legacy.c.
5651         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5652
5653 2018-07-20  Tom Tromey  <tom@tromey.com>
5654
5655         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5656         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5657         (buildsym_compunit::buildsym_compunit)
5658         (buildsym_compunit::~buildsym_compunit)
5659         (buildsym_compunit::get_macro_table): Define.
5660
5661 2018-07-20  Tom Tromey  <tom@tromey.com>
5662
5663         * buildsym.c (reset_symtab_globals): Remove.
5664         (buildsym_compunit::end_symtab_from_static_block): Update.
5665         (buildsym_compunit::augment_type_symtab): Update.
5666         (end_symtab_from_static_block): Call free_buildsym_compunit.
5667         (augment_type_symtab, end_symtab, end_expandable_symtab):
5668         Likewise.
5669
5670 2018-07-20  Tom Tromey  <tom@tromey.com>
5671
5672         * arch-utils.c: Do not include buildsym.h.
5673         * mipsread.c: Do not include buildsym.h.
5674         * machoread.c: Do not include buildsym.h.
5675         * elfread.c: Do not include buildsym.h.
5676
5677 2018-07-20  Tom Tromey  <tom@tromey.com>
5678
5679         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5680         initialization.
5681         (buildsym_compunit): Add new constructor.
5682         (struct buildsym_compunit) <get_last_source_file, finish_block,
5683         record_block_range, start_subfile, patch_subfile_names,
5684         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5685         set_last_source_start_addr, get_last_source_start_addr,
5686         get_local_using_directives, set_local_using_directives,
5687         get_global_using_directives, outermost_context_p,
5688         get_current_context_stack, get_context_stack_depth,
5689         get_current_subfile, get_local_symbols, get_file_symbols,
5690         get_global_symbols, record_debugformat, record_producer,
5691         push_context, pop_context, end_symtab_get_static_block,
5692         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5693         New public methods.
5694         <record_pending_block, finish_block_internal, make_blockvector,
5695         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5696         private methods.
5697         Update all users.
5698
5699 2018-05-22  Tom Tromey  <tom@tromey.com>
5700
5701         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5702         parameter.
5703         (finish_block_internal): Update.
5704
5705 2018-07-20  Tom Tromey  <tom@tromey.com>
5706
5707         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5708         parameter.
5709         (finish_block_internal): Update.
5710
5711 2018-07-20  Tom Tromey  <tom@tromey.com>
5712
5713         * buildsym.h (EXTERN): Don't define or undef.
5714         * buildsym.c (EXTERN): Don't define.
5715
5716 2018-07-20  Tom Tromey  <tom@tromey.com>
5717
5718         * buildsym.c: Remove TODO comment.
5719
5720 2018-07-20  Tom Tromey  <tom@tromey.com>
5721
5722         * coffread.c (coff_symtab_read): Update.
5723         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5724         (xcoff_new_init): Update.
5725         * mipsread.c (mipscoff_new_init): Update.
5726         * mdebugread.c (mdebug_build_psymtabs): Update.
5727         * elfread.c (elf_new_init): Update.
5728         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5729         Update.
5730         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5731         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5732         (stabsect_build_psymtabs): Update.
5733         * buildsym.h (buildsym_init): Don't declare.
5734         * buildsym.c: Update comment.
5735         (prepare_for_building): Remove.
5736         (start_symtab, restart_symtab): Update.
5737         (reset_symtab_globals): Update comment.
5738         (buildsym_init): Remove.
5739
5740 2018-07-20  Tom Tromey  <tom@tromey.com>
5741
5742         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5743         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5744         (read_enum_type, common_block_start, common_block_end)
5745         (cleanup_undefined_types_1, finish_global_stabs): Update.
5746         * mdebugread.c (psymtab_to_symtab_1): Update.
5747         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5748         (read_lexical_block_scope, new_symbol): Update.
5749         * dbxread.c (process_one_symbol): Update.
5750         * coffread.c (coff_symtab_read, process_coff_symbol)
5751         (coff_read_enum_type): Update.
5752         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5753         declare.
5754         (get_local_symbols, get_file_symbols, get_global_symbols): New
5755         functions.
5756         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5757         m_global_symbols.
5758         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5759         (~scoped_free_pendings): Update.
5760         (finish_block, prepare_for_building, reset_symtab_globals)
5761         (end_symtab_get_static_block, end_symtab_with_blockvector)
5762         (augment_type_symtab, push_context): Update.
5763         (get_local_symbols, get_file_symbols, get_global_symbols): New
5764         functions.
5765         (buildsym_init): Update.
5766
5767 2018-07-20  Tom Tromey  <tom@tromey.com>
5768
5769         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5770         (process_full_type_unit): Likewise.
5771         (dwarf2_start_symtab): Set list_in_scope.
5772
5773 2018-07-20  Tom Tromey  <tom@tromey.com>
5774
5775         * dwarf2read.c (process_psymtab_comp_unit_reader)
5776         (build_type_psymtabs_reader): Do not set list_in_scope.
5777
5778 2018-07-20  Tom Tromey  <tom@tromey.com>
5779
5780         * buildsym.c (free_pendings): Remove.
5781         (add_symbol_to_list, scoped_free_pendings)
5782         (finish_block_internal, buildsym_init): Update.
5783
5784 2018-07-20  Tom Tromey  <tom@tromey.com>
5785
5786         * xcoffread.c (read_xcoff_symtab): Update.
5787         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5788         Update.
5789         * dbxread.c (process_one_symbol): Update.
5790         * coffread.c (coff_symtab_read): Update.
5791         * buildsym.h (finish_block): Update.
5792         * buildsym.c (finish_block): Remove "listhead" argument.
5793         (end_symtab_get_static_block): Update.
5794
5795 2018-07-20  Tom Tromey  <tom@tromey.com>
5796
5797         * buildsym.h (class scoped_free_pendings): Remove constructor.
5798         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5799         method.
5800         <m_pending_block_obstack, m_pending_blocks>: New members.
5801         (pending_block_obstack, pending_blocks): Remove.
5802         (scoped_free_pendings::scoped_free_pendings): Default.
5803         (~scoped_free_pendings): Update.
5804         (free_pending_blocks): Remove.
5805         (finish_block_internal, record_pending_block, make_blockvector)
5806         (end_symtab_get_static_block, augment_type_symtab, push_context)
5807         (buildsym_init): Update.
5808
5809 2018-07-20  Tom Tromey  <tom@tromey.com>
5810
5811         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5812         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5813         members.
5814         (pending_addrmap, pending_addrmap_obstack)
5815         (pending_addrmap_interesting): Remove.
5816         (scoped_free_pendings, record_block_range, make_blockvector)
5817         (prepare_for_building, reset_symtab_globals, buildsym_init):
5818         Update.
5819
5820 2018-07-20  Tom Tromey  <tom@tromey.com>
5821
5822         * xcoffread.c (process_linenos): Update.
5823         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5824         * mdebugread.c (psymtab_to_symtab_1): Update.
5825         * dwarf2read.c (setup_type_unit_groups)
5826         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5827         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5828         * dbxread.c (process_one_symbol): Update.
5829         * coffread.c (coff_symtab_read, enter_linenos)
5830         (process_coff_symbol): Update.
5831         * buildsym.h (current_subfile): Don't declare.
5832         (get_current_subfile): Declare.
5833         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5834         member.
5835         (start_subfile, free_buildsym_compunit, push_subfile)
5836         (prepare_for_building, start_symtab): Update.
5837         (get_current_subfile): New function.
5838
5839 2018-07-20  Tom Tromey  <tom@tromey.com>
5840
5841         * coffread.c (coff_symtab_read): Update.
5842         * xcoffread.c (read_xcoff_symtab): Update.
5843         * dwarf2read.c (new_symbol): Update.
5844         (read_func_scope, read_lexical_block_scope): Update.
5845         * dbxread.c (process_one_symbol): Update.
5846         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5847         (outermost_context_p): Remove macro.
5848         (outermost_context_p, get_current_context_stack)
5849         (get_context_stack_depth): Declare.
5850         (pop_context): Return struct context_stack.
5851         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5852         member.
5853         (context_stack_size): Remove.
5854         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5855         (prepare_for_building, end_symtab_get_static_block)
5856         (augment_type_symtab, push_context): Update.
5857         (pop_context): Return struct context_stack.
5858         (outermost_context_p, get_current_context_stack)
5859         (get_context_stack_depth): New functions.
5860         (buildsym_init): Update.
5861
5862 2018-07-20  Tom Tromey  <tom@tromey.com>
5863
5864         * rust-exp.y: Now a pure parser.  Update all rules.
5865         (%union): Move earlier.
5866         (current_parser, work_obstack): Remove globals.
5867         (rust_parser, ~rust_parser): Update.
5868         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5869         lex_character, lex_number, lex_string, lex_identifier,
5870         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5871         convert_name, convert_params_to_expression,
5872         convert_ast_to_expression, ast_basic_type, ast_operation,
5873         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5874         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5875         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5876         ast_array_type, ast_slice_type, ast_reference_type,
5877         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5878         (rust_parse): Update.
5879         (rustyyerror, rustyylex): Add parser parameter.
5880         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5881         (rust_lex_stringish_test, rust_lex_test_sequence)
5882         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5883         (rust_lex_test_push_back, rust_lex_tests): Update.
5884
5885 2018-07-19  Pedro Alves  <palves@redhat.com>
5886
5887         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5888         gdb::unique_xmalloc_ptr.
5889         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5890         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5891         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5892         copy-initialization.
5893         * guile/scm-pretty-print.c (ppscm_print_children): Use
5894         gdb::unique_xmalloc_ptr instead of cleanups.
5895         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5896         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5897         gdb::unique_xmalloc_ptr.
5898         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5899         Adjust to use gdb::unique_xmalloc_ptr.
5900         * guile/scm-utils.c (extract_arg): Adjust.
5901         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5902         gdb::unique_xmalloc_ptr instead of a cleanup.
5903
5904 2018-07-19  Tom Tromey  <tom@tromey.com>
5905
5906         * utils.c (do_value_free_to_mark)
5907         (make_cleanup_value_free_to_mark): Remove.
5908         * utils.h (make_cleanup_value_free_to_mark): Remove.
5909
5910 2018-07-19  Pedro Alves  <palves@redhat.com>
5911
5912         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5913         forwarding reference.
5914
5915 2018-07-18  Pedro Alves  <palves@redhat.com>
5916
5917         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5918         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5919         cleanup.
5920
5921 2018-07-18  Pedro Alves  <palves@redhat.com>
5922
5923         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5924         exceptions.
5925         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5926         (gdbscm_wrap): New.
5927         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5928         directly instead of a cleanup.
5929         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5930         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5931         (vlscm_binop_gdbthrow): New, factored out from ...
5932         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5933         (vlscm_rich_compare): Use gdbscm_wrap.
5934         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5935         instead of a cleanup.
5936         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5937         cleanup.
5938         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5939         Use xfree directly instead of a cleanup.
5940         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5941         Adjust to use gdbscm_wrap and scoped_value_mark.
5942         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5943         (gdbscm_value_address, gdbscm_value_dereference)
5944         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5945         scoped_value_mark.
5946         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5947         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5948         scoped_value_mark.
5949         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5950         gdbscm_wrap and scoped_value_mark.
5951         (gdbscm_value_to_string): Use xfree directly instead of a
5952         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5953         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5954         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5955         scoped_value_mark.
5956         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5957         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5958         scoped_value_mark.
5959         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5960         gdbscm_wrap.
5961
5962 2018-07-18  Tom de Vries  <tdevries@suse.de>
5963
5964         * findvar.c (default_read_var_value): Also resolve dynamic type for
5965         LOC_OPTIMIZED_OUT vars.
5966
5967 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5968
5969         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5970         decoding.
5971
5972 2018-07-17  Tom Tromey  <tom@tromey.com>
5973
5974         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5975         (compute_enum_list, pascm_set_param_value_x)
5976         (gdbscm_parameter_value): Update.
5977         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5978         (gdbscm_scm_to_host_string): Update.
5979         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5980         Update.
5981         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5982         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5983         * guile/scm-string.c (gdbscm_scm_to_string): Return
5984         unique_xmalloc_ptr.
5985         (gdbscm_scm_to_host_string): Likewise.
5986
5987 2018-07-17  Tom Tromey  <tom@tromey.com>
5988
5989         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5990         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5991         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5992         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5993         unique_xmalloc_ptr.
5994
5995 2018-07-17  Tom Tromey  <tom@tromey.com>
5996
5997         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5998         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5999         Update.
6000         * guile/scm-cmd.c (cmdscm_function): Update.
6001         * guile/scm-pretty-print.c
6002         (ppscm_print_exception_unless_memory_error): Update.
6003         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6004         Return unique_xmalloc_ptr.
6005
6006 2018-07-17  Tom Tromey  <tom@tromey.com>
6007
6008         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6009         Use string_printf.
6010
6011 2018-07-17  Jim Wilson  <jimw@sifive.com>
6012
6013         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6014         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6015         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6016         unecessary braces after EF_RISCV_RVC test.  Delete call to
6017         set_gdbarch_decr_pc_after_break.
6018
6019         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6020         RISCV_LAST_FP_REGNUM + 1.
6021         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6022
6023 2018-07-17  Tom Tromey  <tom@tromey.com>
6024
6025         * configure.ac: Remove --disable-gdbcli.
6026         * configure: Rebuild.
6027         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6028         (SUBDIR_CLI_CFLAGS): Remove.
6029         (SFILES): Use SUBDIR_CLI_SRCS.
6030         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6031
6032 2018-07-17  Tom Tromey  <tom@tromey.com>
6033
6034         PR gdb/18624:
6035         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6036
6037 2018-07-16  Jim Wilson  <jimw@sifive.com>
6038
6039         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6040
6041 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6042
6043         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6044         variable.
6045         (libunwind_frame_sniffer): Likewise.
6046         (libunwind_frame_prev_register): Likewise.
6047         (libunwind_sigtramp_frame_sniffer): Likewise.
6048         * ia64-tdep.c (ia64_access_reg): Likewise.
6049         (ia64_access_rse_reg): Likewise.
6050         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6051         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6052
6053 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6054
6055         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6056
6057 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6058
6059         * remote-sim.c (gdbsim_target::close,
6060         gdbsim_target::mourn_inferior): Remove unused variables.
6061
6062 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6063
6064         * ia64-tdep.c (ktab_buf): New global.
6065         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6066         (get_kernel_table): Adjust.
6067
6068 2018-07-16  Tom Tromey  <tom@tromey.com>
6069
6070         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6071         * dwarf2read.c (using_directives, new_symbol): Use
6072         outermost_context_p.
6073         * dbxread.c (process_one_symbol): Use outermost_context_p.
6074         * coffread.c (coff_symtab_read): Use outermost_context_p.
6075
6076 2018-07-16  Tom Tromey  <tom@tromey.com>
6077
6078         * dwarf2read.c (using_directives, read_func_scope)
6079         (read_lexical_block_scope): Update.
6080         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6081         * buildsym.h (local_using_directives, global_using_directives):
6082         Don't declare.
6083         (get_local_using_directives, set_local_using_directives)
6084         (get_global_using_directives): Declare.
6085         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6086         m_global_using_directives>: New members.
6087         (finish_block_internal, prepare_for_building)
6088         (reset_symtab_globals, end_symtab_get_static_block)
6089         (push_context): Update.
6090         (get_local_using_directives, set_local_using_directives)
6091         (get_global_using_directives): New functions.
6092         (buildsym_init): Update.
6093
6094 2018-07-16  Tom Tromey  <tom@tromey.com>
6095
6096         * xcoffread.c (xcoff_initial_scan): Don't call
6097         free_pending_blocks.
6098         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6099         * buildsym.h (class scoped_free_pendings): Add constructor.
6100         (free_pending_blocks): Don't declare.
6101         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6102         (free_pending_blocks): Now static.
6103
6104 2018-07-16  Tom Tromey  <tom@tromey.com>
6105
6106         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6107         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6108         member.
6109         (struct subfile_stack): Remove.
6110         (subfile_stack): Remove.
6111         (push_subfile, pop_subfile, buildsym_init): Update.
6112
6113 2018-07-16  Tom Tromey  <tom@tromey.com>
6114
6115         * buildsym.c (push_subfile): Use gdb_assert.
6116         (pop_subfile): Use gdb_assert.
6117
6118 2018-07-16  Tom Tromey  <tom@tromey.com>
6119
6120         * buildsym.h (merge_symbol_lists): Remove.
6121         * buildsym.c (merge_symbol_lists): Remove.
6122
6123 2018-07-16  Tom Tromey  <tom@tromey.com>
6124
6125         * stabsread.c (scan_file_globals): Update comment.
6126         * stabsread.h (scan_file_globals): Move from buildsym.h.
6127         * buildsym.h (scan_file_globals): Move to stabsread.h.
6128
6129 2018-07-16  Tom Tromey  <tom@tromey.com>
6130
6131         * xcoffread.c (xcoff_new_init): Update.
6132         * mipsread.c (mipscoff_new_init): Update.
6133         * mdebugread.c (mdebug_build_psymtabs): Update.
6134         * elfread.c (elf_new_init): Update.
6135         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6136         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6137         * buildsym.h (buildsym_new_init): Don't declare.
6138         * buildsym.c (buildsym_new_init): Remove.
6139
6140 2018-07-16  Tom Tromey  <tom@tromey.com>
6141
6142         * stabsread.h (within_function): Move from buildsym.h.
6143         * stabsread.c (start_stabs): Clear within_function.
6144         * coffread.c (coff_start_symtab): Clear within_function.
6145         * buildsym.h (within_function): Move to stabsread.h.
6146         * buildsym.c (prepare_for_building): Update.
6147
6148 2018-07-16  Tom Tromey  <tom@tromey.com>
6149
6150         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6151         * dwarf2read.c (dwarf2_start_symtab): Don't set
6152         processing_gcc_compilation.
6153         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6154
6155 2018-07-16  Tom Tromey  <tom@tromey.com>
6156
6157         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6158         (next_symbol_text_func): Move from buildsym.h.
6159         * stabsread.c (hashname): Move from buildsym.c.
6160         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6161         (next_symbol_text_func, hashname): Move to stabsread.h.
6162         * buildsym.c: Don't include bcache.h
6163         (hashname): Move to stasbread.c.
6164
6165 2018-07-16  Tom Tromey  <tom@tromey.com>
6166
6167         * buildsym.h (context_stack_size): Don't declare.
6168         * buildsym.c (context_stack_size): New global.
6169
6170 2018-07-16  Tom Tromey  <tom@tromey.com>
6171
6172         * dbxread.c (processing_acc_compilation): New global.
6173         * buildsym.h (processing_acc_compilation): Don't declare.
6174
6175 2018-07-16  Tom Tromey  <tom@tromey.com>
6176
6177         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6178         * dbxread.c (read_ofile_symtab): Update.
6179         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6180         * buildsym.h (last_source_start_addr): Remove.
6181         (set_last_source_start_addr, get_last_source_start_addr):
6182         Declare.
6183         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6184         parameter.
6185         (struct buildsym_compunit) <m_last_source_start_addr>: New
6186         member.
6187         (prepare_for_building): Remove start_addr parameter.
6188         (start_symtab, restart_symtab, end_symtab_get_static_block)
6189         (end_symtab_with_blockvector): Update.
6190         (set_last_source_start_addr, get_last_source_start_addr): New
6191         functions.
6192
6193 2018-07-16  Tom Tromey  <tom@tromey.com>
6194
6195         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6196         member.
6197         (have_line_numbers): Remove.
6198         (record_line, prepare_for_building, end_symtab_get_static_block)
6199         (augment_type_symtab): Update.
6200
6201 2018-07-16  Tom Tromey  <tom@tromey.com>
6202
6203         * buildsym.c (~buildsym_compunit): Free the macro table.
6204         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6205         methods.
6206         <m_pending_macros>: New member.
6207         (pending_macros): Remove.
6208         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6209         (reset_symtab_globals, end_symtab_get_static_block)
6210         (end_symtab_with_blockvector, augment_type_symtab)
6211         (buildsym_init): Update.
6212
6213 2018-07-16  Tom Tromey  <tom@tromey.com>
6214
6215         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6216         parameter.
6217         (buildsym_compunit::set_last_source_file): New method.
6218         <m_last_source_file>: New member.
6219         (prepare_for_building): Remove "name" parameter.
6220         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6221         (last_source_file): Remove.
6222         (set_last_source_file, get_last_source_file): Update.
6223
6224 2018-07-16  Tom Tromey  <tom@tromey.com>
6225
6226         * buildsym.c (prepare_for_building): Add assert.
6227
6228 2018-07-16  Tom Tromey  <tom@tromey.com>
6229
6230         * buildsym.c (~buildsym_compunit): Update.
6231         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6232         (start_subfile, patch_subfile_names)
6233         (end_symtab_with_blockvector): Update.
6234
6235 2018-07-16  Tom Tromey  <tom@tromey.com>
6236
6237         * buildsym.c (struct buildsym_compunit): Add constructor,
6238         destructor, initializers.
6239         (start_buildsym_compunit): Remove.
6240         (free_buildsym_compunit): Use "delete".
6241         (start_symtab, restart_symtab): Use "new".
6242
6243 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6244
6245         * symfile.c (set_objfile_default_section_offset): Remove struct
6246         keyword.
6247
6248 2018-07-14  Stafford Horne  <shorne@gmail.com>
6249
6250         * (Responsible Maintainers): Add myself as or1k maintainer.
6251
6252 2018-07-13  Tom Tromey  <tom@tromey.com>
6253
6254         * symfile.c (set_objfile_default_section_offset): Use extra braces
6255         around initializer.
6256
6257 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6258
6259         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6260         non-branching basr.
6261
6262 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6263
6264         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6265         unittests/cli-utils-selftests.c
6266         * unittests/cli-utils-selftests.c: New file.
6267
6268 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6269
6270         * NEWS: Mention new commands. Mention change to 'thread apply'.
6271
6272 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6273
6274         * thread.c (thr_try_catch_cmd): New function.
6275         (thread_apply_all_command): Handle qcs flags.
6276         (thread_apply_command): Handle qcs flags.
6277         (taas_command): New function.
6278         (tfaas_command): New function.
6279         (_initialize_thread): Update to setup the new commands 'taas
6280         and 'tfaas'. Change doc string for 'thread apply'.
6281
6282 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6283
6284         * stack.c: (trailing_outermost_frame): New function, mostly
6285         extracted from backtrace_command_1.
6286         (leading_innermost_frame): New function.
6287         (backtrace_command_1): Update to call trailing_outermost_frame.
6288         (frame_apply_command_count): New function.
6289         (frame_apply_level_command): New function.
6290         (frame_apply_all_command): New function.
6291         (frame_apply_command): New function.
6292         (faas_command): New function.
6293         (frame_cmd_list): New variable.
6294         (_initialize_stack): Update to setup the new commands 'frame apply'
6295         and 'faas'.
6296
6297 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6298
6299         * cli-utils.c (number_or_range_parser::get_number): Only handle
6300         numbers or convenience var as numbers.
6301         (parse_flags): New function.
6302         (parse_flags_qcs): New function.
6303         (number_or_range_parser::finished): Ensure parsing end is detected
6304         before end of string.
6305         * cli-utils.h (parse_flags): New function.
6306         (parse_flags_qcs): New function.
6307         (number_or_range_parser): Remove m_finished bool.
6308         (number_or_range_parser::skip_range): Set m_in_range to false.
6309
6310 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6311
6312         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6313         on Windows.
6314
6315 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6316             Jan Kratochvil  <jan.kratochvil@redhat.com>
6317             Paul Fertser  <fercerpav@gmail.com>
6318             Tsutomu Seki  <sekiriki@gmail.com>
6319             Pedro Alves  <palves@redhat.com>
6320
6321         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6322         'unittests/parse-connection-spec-selftests.c'.
6323         (COMMON_SFILES): Add 'common/netstuff.c'.
6324         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6325         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6326         * common/netstuff.c: New file.
6327         * common/netstuff.h: New file.
6328         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6329         (wait_for_connect): Update comment.  New parameter
6330         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6331         Use 'sock' directly instead of 'scb->fd'.
6332         (try_connect): New function, with code from 'net_open'.
6333         (net_open): Rewrite main loop to deal with multiple
6334         sockets/addresses.  Handle IPv6-style hostnames; implement
6335         support for IPv6 connections.
6336         * unittests/parse-connection-spec-selftests.c: New file.
6337
6338 2018-07-11  Pedro Alves  <palves@redhat.com>
6339
6340         PR gdb/23377
6341         * remote.c (remote_target::remote_detach_pid): Call
6342         set_current_process.
6343
6344 2018-07-11  Pedro Alves  <palves@redhat.com>
6345
6346         * h8300-tdep.c (h8300_gdbarch_init): Remove
6347         set_gdbarch_ecoff_reg_to_regnum calls.
6348
6349 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6350
6351         PR c++/23373
6352         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6353         offsets/sizes for static members of a class/struct.
6354
6355 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6356
6357         * target-descriptions.c (tdesc_register_bitsize): Rename.
6358         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6359         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6360         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6361
6362 2018-07-10  Tom Tromey  <tom@tromey.com>
6363
6364         * breakpoint.c (moribund_locations): Now static and a
6365         std::vector.
6366         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6367         (build_bpstat_chain, update_global_location_list)
6368         (breakpoint_retire_moribund): Update.
6369         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6370         VEC.
6371
6372 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6373
6374         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6375         (riscv_register_reggroup_p): Use new function, remove unneeded
6376         parenthesis.
6377         (riscv_push_dummy_call): Extend assert to compare against xlen or
6378         flen based on register type.
6379
6380 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6381
6382         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6383
6384 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6385
6386         * remote.c (show_hardware_watchpoint_limit): New function.
6387         (show_hardware_watchpoint_length_limit): New function.
6388         (show_hardware_breakpoint_limit): New function.
6389         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6390         where appropriate, update help text.
6391
6392 2018-07-09  Tom Tromey  <tom@tromey.com>
6393
6394         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6395         (CLIBS): Don't mention NAT_CLIBS.
6396
6397 2018-07-09  Tom Tromey  <tom@tromey.com>
6398
6399         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6400         (LIBGDB_OBS, clean mostlyclean): Update.
6401         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6402
6403 2018-07-09  Tom Tromey  <tom@tromey.com>
6404
6405         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6406         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6407         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6408
6409 2018-07-09  Tom Tromey  <tom@tromey.com>
6410
6411         * Makefile.in (ALLDEPFILES): Remove exec.c.
6412         (COMMON_OBS): Remove exec.o.
6413         (COMMON_SFILES): Add exec.c.
6414
6415 2018-07-09  Tom Tromey  <tom@tromey.com>
6416
6417         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6418
6419 2018-07-09  Tom Tromey  <tom@tromey.com>
6420
6421         * Makefile.in (clean mostlyclean): Remove stamp-version.
6422         (version.c): Depend on stamp-version.
6423         (stamp-version): New rule, from version.c rule.
6424
6425 2018-07-09  Tom Tromey  <tom@tromey.com>
6426
6427         * Makefile.in (init.c): Depend on stamp-init.
6428         (stamp-init): New rule, from init.c rule.
6429         (clean mostlyclean): Remove stamp-init.
6430
6431 2018-07-09  Tom Tromey  <tom@tromey.com>
6432
6433         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6434         SUBDIR_GCC_COMPILE_SRCS.
6435
6436 2018-07-09  Tom Tromey  <tom@tromey.com>
6437
6438         * Makefile.in (init.c): Remove some unused sed rules.
6439
6440 2018-07-09  Tom Tromey  <tom@tromey.com>
6441
6442         * Makefile.in (TSOBS): Remove.
6443         (INIT_FILES): Update.
6444         (LIBGDB_OBS): Update.
6445         (COMMON_SFILES): Add inflow.c.
6446         (SFILES): Remove inflow.c.
6447
6448 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6449
6450         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6451
6452 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6453
6454         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6455         get_saveloc_name, is_signal_frame_name, step_name,
6456         init_remote_name, create_addr_space_name,
6457         destroy_addr_space_name, search_unwind_table_name,
6458         find_dyn_list_name): Constify.
6459
6460 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6461
6462         * darwin-nat.c (darwin_pthread_kill): New function.
6463         (darwin_resume_thread): Use darwin_pthread_kill.
6464
6465 2018-07-05  Tom de Vries  <tdevries@suse.de>
6466
6467         * macroexp.c (macro_buffer) <operator=>: New member function.
6468
6469 2018-07-04  Tom Tromey  <tom@tromey.com>
6470
6471         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6472
6473 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6474
6475         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6476         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6477         * maint.c: Likewise.
6478         * top.c: Likewise.
6479
6480 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6481
6482         * NEWS: Create a new section for the next release branch.
6483         Rename the section of the current branch, now that it has
6484         been cut.
6485
6486 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6487
6488         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6489         * version.in: Bump version to 8.2.50.DATE-git.
6490
6491 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6492             Pedro Alves  <palves@redhat.com>
6493
6494         * linux-nat.c (linux_init_ptrace): Rename to ...
6495         (linux_init_ptrace_procfs): ... this.  Call
6496         linux_proc_init_warnings.
6497         (linux_nat_target::post_attach)
6498         (linux_nat_target::post_startup_inferior): Adjust.
6499         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6500         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6501
6502 2018-07-04  Tom de Vries  <tdevries@suse.de>
6503
6504         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6505         check ...
6506         (read_comp_unit_head): ... here.
6507
6508 2018-07-03  Tom Tromey  <tom@tromey.com>
6509
6510         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6511         (stop_tracing, tstatus_command)
6512         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6513         (print_one_static_tracepoint_marker): Update.
6514         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6515         std::vector.
6516         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6517         VEC.
6518         (all_tracepoints, static_tracepoints_here): Return std::vector.
6519
6520 2018-07-03  Tom Tromey  <tom@tromey.com>
6521
6522         * common/ptid.c (ptid_equal): Remove.
6523         * common/ptid.h (ptid_equal): Don't declare.
6524         * ada-tasks.c: Update.
6525         * breakpoint.c: Update.
6526         * common/agent.c: Update.
6527         * corelow.c: Update.
6528         * darwin-nat-info.c: Update.
6529         * darwin-nat.c: Update.
6530         * dcache.c: Update.
6531         * dtrace-probe.c: Update.
6532         * dummy-frame.c: Update.
6533         * fbsd-nat.c: Update.
6534         * frame.c: Update.
6535         * gdbthread.h: Update.
6536         * gnu-nat.c: Update.
6537         * go32-nat.c: Update.
6538         * inf-loop.c: Update.
6539         * inf-ptrace.c: Update.
6540         * infcall.c: Update.
6541         * infcmd.c: Update.
6542         * inflow.c: Update.
6543         * infrun.c: Update.
6544         * linux-fork.c: Update.
6545         * linux-nat.c: Update.
6546         * linux-thread-db.c: Update.
6547         * mi/mi-cmd-var.c: Update.
6548         * mi/mi-interp.c: Update.
6549         * mi/mi-main.c: Update.
6550         * nto-procfs.c: Update.
6551         * ppc-linux-tdep.c: Update.
6552         * procfs.c: Update.
6553         * python/py-inferior.c: Update.
6554         * python/py-record-btrace.c: Update.
6555         * python/py-record.c: Update.
6556         * ravenscar-thread.c: Update.
6557         * regcache.c: Update.
6558         * remote-sim.c: Update.
6559         * remote.c: Update.
6560         * sol-thread.c: Update.
6561         * solib.c: Update.
6562         * target.c: Update.
6563         * tui/tui-stack.c: Update.
6564         * varobj.c: Update.
6565         * windows-nat.c: Update.
6566         * windows-tdep.c: Update.
6567
6568 2018-07-03  Tom Tromey  <tom@tromey.com>
6569
6570         * common/ptid.c (ptid_match): Remove.
6571         * common/ptid.h (ptid_match): Don't declare.
6572         * fbsd-nat.c: Update.
6573         * infcmd.c: Update.
6574         * infrun.c: Update.
6575         * linux-nat.c: Update.
6576         * record-btrace.c: Update.
6577         * regcache.c: Update.
6578         * remote.c: Update.
6579
6580 2018-07-03  Tom Tromey  <tom@tromey.com>
6581
6582         * common/ptid.c (ptid_tid_p): Remove.
6583         * common/ptid.h (ptid_tid_p): Don't declare.
6584         * sol-thread.c: Update.
6585
6586 2018-07-03  Tom Tromey  <tom@tromey.com>
6587
6588         * common/ptid.c (ptid_lwp_p): Remove.
6589         * common/ptid.h (ptid_lwp_p): Don't declare.
6590         * fbsd-nat.c: Update.
6591         * linux-nat.c: Update.
6592         * nat/linux-procfs.c: Update.
6593         * nat/x86-linux-dregs.c: Update.
6594         * sol-thread.c: Update.
6595
6596 2018-07-03  Tom Tromey  <tom@tromey.com>
6597
6598         * common/ptid.c (ptid_is_pid): Remove.
6599         * common/ptid.h (ptid_is_pid): Don't declare.
6600         * infrun.c: Update.
6601         * linux-nat.c: Update.
6602         * mi/mi-interp.c: Update.
6603         * remote.c: Update.
6604         * thread.c: Update.
6605
6606 2018-07-03  Tom Tromey  <tom@tromey.com>
6607
6608         * common/ptid.c (ptid_get_tid): Remove.
6609         * common/ptid.h (ptid_get_tid): Don't declare.
6610         * ada-tasks.c: Update.
6611         * aix-thread.c: Update.
6612         * bsd-uthread.c: Update.
6613         * darwin-nat.c: Update.
6614         * fbsd-nat.c: Update.
6615         * i386-darwin-nat.c: Update.
6616         * infrun.c: Update.
6617         * linux-tdep.c: Update.
6618         * nto-procfs.c: Update.
6619         * ppc-ravenscar-thread.c: Update.
6620         * python/py-infthread.c: Update.
6621         * ravenscar-thread.c: Update.
6622         * sol-thread.c: Update.
6623         * sparc-ravenscar-thread.c: Update.
6624         * windows-nat.c: Update.
6625
6626 2018-07-03  Tom Tromey  <tom@tromey.com>
6627
6628         * common/ptid.c (ptid_get_lwp): Remove.
6629         * common/ptid.h (ptid_get_lwp): Don't declare.
6630         * aarch64-linux-nat.c: Update.
6631         * ada-tasks.c: Update.
6632         * aix-thread.c: Update.
6633         * amd64-linux-nat.c: Update.
6634         * arm-linux-nat.c: Update.
6635         * corelow.c: Update.
6636         * fbsd-nat.c: Update.
6637         * fbsd-tdep.c: Update.
6638         * gnu-nat.c: Update.
6639         * i386-cygwin-tdep.c: Update.
6640         * i386-gnu-nat.c: Update.
6641         * i386-linux-nat.c: Update.
6642         * ia64-linux-nat.c: Update.
6643         * inf-ptrace.c: Update.
6644         * infrun.c: Update.
6645         * linux-fork.c: Update.
6646         * linux-nat.c: Update.
6647         * linux-tdep.c: Update.
6648         * linux-thread-db.c: Update.
6649         * mips-linux-nat.c: Update.
6650         * nat/aarch64-linux-hw-point.c: Update.
6651         * nat/aarch64-linux.c: Update.
6652         * nat/linux-btrace.c: Update.
6653         * nat/linux-osdata.c: Update.
6654         * nat/linux-procfs.c: Update.
6655         * nat/x86-linux-dregs.c: Update.
6656         * obsd-nat.c: Update.
6657         * ppc-fbsd-nat.c: Update.
6658         * ppc-linux-nat.c: Update.
6659         * procfs.c: Update.
6660         * python/py-infthread.c: Update.
6661         * ravenscar-thread.c: Update.
6662         * remote.c: Update.
6663         * s390-linux-nat.c: Update.
6664         * sol-thread.c: Update.
6665         * sol2-tdep.c: Update.
6666         * spu-linux-nat.c: Update.
6667         * x86-linux-nat.c: Update.
6668         * xtensa-linux-nat.c: Update.
6669
6670 2018-07-03  Tom Tromey  <tom@tromey.com>
6671
6672         * common/ptid.c (ptid_get_pid): Remove.
6673         * common/ptid.h (ptid_get_pid): Don't declare.
6674         * aarch64-linux-nat.c: Update.
6675         * ada-lang.c: Update.
6676         * aix-thread.c: Update.
6677         * alpha-bsd-nat.c: Update.
6678         * amd64-fbsd-nat.c: Update.
6679         * amd64-linux-nat.c: Update.
6680         * arm-linux-nat.c: Update.
6681         * arm-nbsd-nat.c: Update.
6682         * auxv.c: Update.
6683         * break-catch-syscall.c: Update.
6684         * breakpoint.c: Update.
6685         * bsd-uthread.c: Update.
6686         * corelow.c: Update.
6687         * ctf.c: Update.
6688         * darwin-nat.c: Update.
6689         * fbsd-nat.c: Update.
6690         * fbsd-tdep.c: Update.
6691         * gcore.c: Update.
6692         * gnu-nat.c: Update.
6693         * hppa-nbsd-nat.c: Update.
6694         * hppa-obsd-nat.c: Update.
6695         * i386-fbsd-nat.c: Update.
6696         * ia64-linux-nat.c: Update.
6697         * inf-ptrace.c: Update.
6698         * infcmd.c: Update.
6699         * inferior.c: Update.
6700         * inferior.h: Update.
6701         * inflow.c: Update.
6702         * infrun.c: Update.
6703         * linux-fork.c: Update.
6704         * linux-nat.c: Update.
6705         * linux-tdep.c: Update.
6706         * linux-thread-db.c: Update.
6707         * m68k-bsd-nat.c: Update.
6708         * mi/mi-interp.c: Update.
6709         * mi/mi-main.c: Update.
6710         * mips-linux-nat.c: Update.
6711         * mips-nbsd-nat.c: Update.
6712         * mips64-obsd-nat.c: Update.
6713         * nat/aarch64-linux-hw-point.c: Update.
6714         * nat/aarch64-linux.c: Update.
6715         * nat/linux-btrace.c: Update.
6716         * nat/linux-osdata.c: Update.
6717         * nat/linux-procfs.c: Update.
6718         * nat/x86-linux-dregs.c: Update.
6719         * nto-procfs.c: Update.
6720         * obsd-nat.c: Update.
6721         * ppc-linux-nat.c: Update.
6722         * ppc-nbsd-nat.c: Update.
6723         * ppc-obsd-nat.c: Update.
6724         * proc-service.c: Update.
6725         * procfs.c: Update.
6726         * python/py-inferior.c: Update.
6727         * python/py-infthread.c: Update.
6728         * ravenscar-thread.c: Update.
6729         * record.c: Update.
6730         * remote-sim.c: Update.
6731         * remote.c: Update.
6732         * rs6000-nat.c: Update.
6733         * s390-linux-nat.c: Update.
6734         * sh-nbsd-nat.c: Update.
6735         * sol-thread.c: Update.
6736         * sparc-nat.c: Update.
6737         * sparc64-tdep.c: Update.
6738         * spu-linux-nat.c: Update.
6739         * spu-tdep.c: Update.
6740         * target-debug.h: Update.
6741         * target.c: Update.
6742         * thread.c: Update.
6743         * tid-parse.c: Update.
6744         * tracefile-tfile.c: Update.
6745         * vax-bsd-nat.c: Update.
6746         * windows-nat.c: Update.
6747         * x86-linux-nat.c: Update.
6748         * x86-nat.c: Update.
6749
6750 2018-07-03  Tom Tromey  <tom@tromey.com>
6751
6752         * common/ptid.c (pid_to_ptid): Remove.
6753         * common/ptid.h (pid_to_ptid): Don't declare.
6754         * aix-thread.c: Update.
6755         * arm-linux-nat.c: Update.
6756         * common/ptid.c: Update.
6757         * common/ptid.h: Update.
6758         * corelow.c: Update.
6759         * ctf.c: Update.
6760         * darwin-nat.c: Update.
6761         * fbsd-nat.c: Update.
6762         * fork-child.c: Update.
6763         * gnu-nat.c: Update.
6764         * go32-nat.c: Update.
6765         * inf-ptrace.c: Update.
6766         * infcmd.c: Update.
6767         * inferior.c: Update.
6768         * infrun.c: Update.
6769         * linux-fork.c: Update.
6770         * linux-nat.c: Update.
6771         * nat/aarch64-linux-hw-point.c: Update.
6772         * nat/fork-inferior.c: Update.
6773         * nat/x86-linux-dregs.c: Update.
6774         * nto-procfs.c: Update.
6775         * obsd-nat.c: Update.
6776         * procfs.c: Update.
6777         * progspace.c: Update.
6778         * remote.c: Update.
6779         * rs6000-nat.c: Update.
6780         * s390-linux-nat.c: Update.
6781         * sol-thread.c: Update.
6782         * spu-linux-nat.c: Update.
6783         * target.c: Update.
6784         * top.c: Update.
6785         * tracefile-tfile.c: Update.
6786         * windows-nat.c: Update.
6787
6788 2018-07-03  Tom Tromey  <tom@tromey.com>
6789
6790         * common/ptid.h (ptid_build): Don't declare.
6791         * common/ptid.c (ptid_build): Remove.
6792         * aix-thread.c: Update.
6793         * bsd-kvm.c: Update.
6794         * bsd-uthread.c: Update.
6795         * common/agent.c: Update.
6796         * common/ptid.c: Update.
6797         * common/ptid.h: Update.
6798         * corelow.c: Update.
6799         * darwin-nat.c: Update.
6800         * fbsd-nat.c: Update.
6801         * gnu-nat.c: Update.
6802         * linux-fork.c: Update.
6803         * linux-nat.c: Update.
6804         * linux-thread-db.c: Update.
6805         * nat/linux-osdata.c: Update.
6806         * nat/linux-procfs.c: Update.
6807         * nto-procfs.c: Update.
6808         * obsd-nat.c: Update.
6809         * proc-service.c: Update.
6810         * procfs.c: Update.
6811         * ravenscar-thread.c: Update.
6812         * remote-sim.c: Update.
6813         * remote.c: Update.
6814         * sol-thread.c: Update.
6815         * target.c: Update.
6816         * windows-nat.c: Update.
6817
6818 2018-07-03  Tom Tromey  <tom@tromey.com>
6819
6820         * infrun.c (follow_exec): Use exit_inferior_silent.
6821         * inferior.c (exit_inferior_num_silent): Remove.
6822         * inferior.h (exit_inferior_num_silent): Don't declare.
6823
6824 2018-07-03  Tom Tromey  <tom@tromey.com>
6825
6826         PR cli/23340:
6827         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6828         inferior_ptid on error.
6829
6830 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6831             Simon Marchi  <simon.marchi@polymtl.ca>
6832
6833         PR tdep/8282
6834         * disasm.h (gdb_disassembler): Add
6835         `m_disassembler_options_holder'. member
6836         * disasm.c (get_all_disassembler_options): New function.
6837         (gdb_disassembler::gdb_disassembler): Use it.
6838         (gdb_buffered_insn_length_init_dis): Likewise.
6839         (gdb_buffered_insn_length): Adjust accordingly.
6840         (set_disassembler_options): Handle options with arguments.
6841         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6842         line if showing options with descriptions.
6843         (disassembler_options_completer): Adapt to using the
6844         `disasm_options_and_args_t' structure.
6845         * mips-tdep.c (mips_disassembler_options): New variable.
6846         (mips_disassembler_options_o32): Likewise.
6847         (mips_disassembler_options_n32): Likewise.
6848         (mips_disassembler_options_n64): Likewise.
6849         (gdb_print_insn_mips): Don't set `disassembler_options'.
6850         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6851         functions.
6852         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6853         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6854         `gdbarch_disassembler_options_implicit' and
6855         `gdbarch_valid_disassembler_options'.
6856         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6857         `disasm_options_and_args_t' structure.
6858         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6859         method.
6860         (valid_disassembler_options): Switch from `disasm_options_t' to
6861         the `disasm_options_and_args_t' structure.
6862         * NEWS: Document `set disassembler-options' support for the MIPS
6863         target.
6864         * gdbarch.h: Regenerate.
6865         * gdbarch.c: Regenerate.
6866
6867 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6868
6869         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6870
6871 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6872
6873         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6874         parameter in call to amd64_target_description.
6875         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6876         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6877         (amd64fbsd_init_abi): Likewise.
6878         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6879         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6880         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6881         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6882
6883 2018-06-29  Pedro Alves  <palves@redhat.com>
6884
6885         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6886         "segments" parameter.
6887         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6888         (_initialize_amd64_tdep): Update call to
6889         amd64_create_target_description.
6890         (amd64_target_description): Add "segments" parameter.  Adjust
6891         the implementation to use it.
6892         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6893         call to amd64_create_target_description.
6894         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6895         * gdb/arch/amd64.h (amd64_create_target_description): Add
6896         "segments" register.
6897         * gdb/arch/amd64.c (amd64_create_target_description): Add
6898         "segments" parameter.  Call create_feature_i386_64bit_segments
6899         only if SEGMENTS is true.
6900         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6901         call to amd64_create_target_description.
6902
6903 2018-06-29  Pedro Alves  <palves@redhat.com>
6904
6905         * thread.c (thread_target_id_str): New, factored out from ...
6906         (print_thread_info_1): ... here.  Use it to compute the max
6907         "Target Id" column width.
6908
6909 2018-06-29  Pedro Alves  <palves@redhat.com>
6910
6911         * remote.c (remote_target::extra_thread_info): Delete
6912         'display_buf' and 'n' locals.  from the cache, regardless of
6913         packet mechanims is in use.  Use cache for qThreadExtra and qP
6914         methods too.
6915
6916 2018-06-29  Pedro Alves  <palves@redhat.com>
6917
6918         * blockframe.c (find_pc_sect_containing_function): New function.
6919         * breakpoint.c (print_breakpoint_location): Don't call
6920         find_pc_sect_function.
6921         * linespec.c (create_sals_line_offset): Record the location's
6922         symbol in the sal.
6923         * linespec.c (convert_address_location_to_sals): Fill in sal's
6924         symbol with find_pc_sect_containing_function.
6925         * symtab.c (find_function_start_sal): Rename to ...
6926         (find_function_start_sal_1): ... this.
6927         (find_function_start_sal): Reimplement as wrapper around
6928         find_function_start_sal_1, and use
6929         find_pc_sect_containing_function to fill in the sal's symbol.
6930         (find_function_start_sal(symbol*, bool)): Adjust.
6931         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6932         comments.
6933         (find_pc_sect_containing_function): Declare.
6934
6935 2018-06-29  Pedro Alves  <palves@redhat.com>
6936
6937         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6938         true if the the location has no symbol.
6939
6940 2018-06-28  Tom Tromey  <tom@tromey.com>
6941
6942         * NEWS: Mention --enable-codesign.
6943         * silent-rules.mk (ECHO_SIGN): New variable.
6944         * configure.ac: Add --enable-codesign.
6945         * configure: Rebuild.
6946         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6947         (gdb$(EXEEXT)): Optionally invoke codesign.
6948
6949 2018-06-28  Pedro Alves  <palves@redhat.com>
6950
6951         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6952         comments.
6953         (switch_to_thread_no_regs): Adjust comment.
6954         * infcmd.c (stop_pc): Delete.
6955         (post_create_inferior, info_program_command): Replace references
6956         to stop_pc with references to thread_info->suspend.stop_pc.
6957         * inferior.h (stop_pc): Delete declaration.
6958         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6959         (handle_inferior_event_1, handle_signal_stop)
6960         (process_event_stop_test, keep_going_stepped_thread)
6961         (handle_step_into_function, handle_step_into_function_backward)
6962         (print_stop_location): Replace references to stop_pc with
6963         references to thread_info->suspend.stop_pc.
6964         (struct infcall_suspend_state) <stop_pc>: Delete field.
6965         (save_infcall_suspend_state, restore_infcall_suspend_state):
6966         Remove references to inf_stat->stop_pc.
6967         * linux-fork.c (fork_load_infrun_state): Likewise.
6968         * record-btrace.c (record_btrace_set_replay): Likewise.
6969         * record-full.c (record_full_goto_entry): Likewise.
6970         * remote.c (print_one_stopped_thread): Likewise.
6971         * target.c (target_resume): Extend comment.
6972         * thread.c (set_executing_thread): New.
6973         (set_executing): Use it.
6974         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6975         Remove references to stop_pc.
6976
6977 2018-06-28  Pedro Alves  <palves@redhat.com>
6978
6979         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6980         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6981
6982 2018-06-28  Tom Tromey  <tom@tromey.com>
6983
6984         * coffread.c (coff_symfile_finish): Update.
6985         * xcoffread.c (xcoff_symfile_finish): Update.
6986         * elfread.c (elf_symfile_finish): Update.
6987         * symfile.h (dwarf2_free_objfile): Don't declare.
6988         * dwarf2read.c (_initialize_dwarf2_read): Use
6989         register_objfile_data_with_cleanup.
6990         (dwarf2_free_objfile): Now static.  Change signature.
6991
6992 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6993
6994         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6995         option "-o" to add-symbol-file-load to add an offset to each
6996         section's load address.
6997         * symfile.c (set_objfile_default_section_offset): New function.
6998
6999 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7000
7001         * symfile.c (add_symbol_file_command): Make sure that sections
7002         with the same name are sorted in the same order.
7003
7004 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7005
7006         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7007         require the second argument.  If omitted, load sections at the
7008         addresses specified in the file.
7009
7010 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7011
7012         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7013         (_initialize_symfile): Add option "-o" to symbol-file to add an
7014         offset to each section of the symbol file.
7015
7016 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7017
7018         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7019
7020 2018-06-27  Tom Tromey  <tom@tromey.com>
7021
7022         * stack.c (_initialize_stack): Update "func" help text.
7023
7024 2018-06-27  Tom Tromey  <tom@tromey.com>
7025
7026         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7027         std::vector.
7028         (unwind_infopy_str, pyuw_create_unwind_info)
7029         (unwind_infopy_add_saved_register, pyuw_sniffer)
7030         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7031         Update.
7032         (struct saved_reg): Add constructor.
7033         <value>: Now a gdbpy_ref<>.
7034
7035 2018-06-27  Tom Tromey  <tom@tromey.com>
7036
7037         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7038
7039 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7040
7041         * gdb-gdb.py.in: Format using autopep8.
7042
7043 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7044
7045         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7046         (type_lookup_function): Recognize CORE_ADDR values.
7047
7048 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7049
7050         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7051         print tag_name.
7052
7053 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7054
7055         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7056         <__lt__>: Add.
7057
7058 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7059
7060         * gdb-gdb.py: Move to...
7061         * gdb-gdb.py.in: ... here.
7062         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7063         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7064         dependencies.
7065         (distclean): Remove gdb-gdb.py when cleaning.
7066         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7067         * configure: Re-generate.
7068
7069 2018-06-27  Pedro Alves  <palves@redhat.com>
7070
7071         * proc-service.c (get_ps_regcache): New.
7072         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7073         (ps_lsetfpregs): Use it.
7074
7075 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7076
7077         PR gdb/21695
7078         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7079         declaration.
7080         (dwarf_decode_lines_1): Adjust.
7081
7082 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7083
7084         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7085         override.
7086         <info_proc>: Likewise.
7087
7088 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7089
7090         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7091         to windows_fetch_one_register, and only handle the case of
7092         fetching one register.  Move the code that reloads the context
7093         and iterates over all registers if R is negative to...
7094         (windows_nat_target::fetch_registers): ... here.
7095         (do_windows_store_inferior_registers): Rename to
7096         windows_store_one_register, and only handle the case of storing
7097         one register.  Move the code that handles the case where r is
7098         negative to...
7099         (windows_nat_target::store_registers) ... here.
7100
7101 2018-06-26  Tom Tromey  <tom@tromey.com>
7102
7103         PR rust/22574:
7104         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7105         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7106         Update.
7107         (rust_internal_print_type): Add podata parameter.
7108         (rust_print_type): Update.
7109
7110 2018-06-26  Tom Tromey  <tom@tromey.com>
7111
7112         * typeprint.h (struct print_offset_data) <update, finish,
7113         maybe_print_hole>: New methods.
7114         <indentation>: New constant.
7115         * typeprint.c (print_offset_data::indentation): Define.
7116         (print_offset_data::maybe_print_hole, print_offset_data::update)
7117         (print_offset_data::finish): Move from c-typeprint.c and rename.
7118         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7119         (print_spaces_filtered_with_print_options): Update.
7120         (c_print_type_union_field_offset, maybe_print_hole)
7121         (c_print_type_struct_field_offset): Move to typeprint.c and
7122         rename.
7123         (c_type_print_base_struct_union): Update.
7124
7125 2018-06-25  Pedro Alves  <palves@redhat.com>
7126
7127         * gdbthread.h (thread_info_ref, delete_thread)
7128         (delete_thread_silent, first_thread_of_inferior)
7129         (any_thread_of_inferior, switch_to_thread)
7130         (enable_thread_stack_temporaries)
7131         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7132         (get_last_thread_stack_temporary)
7133         (value_in_thread_stack_temporaries, can_access_registers_thread):
7134         Spell out "struct thread_info" instead of just "thread_info".
7135         * inferior.h (notice_new_inferior): Likewise.
7136
7137 2018-06-25  Pedro Alves  <palves@redhat.com>
7138
7139         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7140         pass thread_info pointer to delete_thread.
7141         (windows_nat_target::detach): Pass inferior pointer to
7142         detach_inferior.
7143         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7144         delete_thread.
7145         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7146         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7147         and pass a thread_info pointer to delete_thread.
7148         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7149         pass thread_info pointer to delete_thread.
7150         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7151         delete_thread_silent call.
7152         * procfs.c (procfs_target::detach): Pass inferior pointer to
7153         detach_inferior.
7154         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7155         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7156         delete_thread_silent call.
7157         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7158         pass thread_info pointer to delete_thread.
7159         (windows_nat_target::detach): Pass inferior pointer to
7160         delete_inferior.
7161
7162 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7163
7164         * regcache.c (readable_regcache::read_part): Fix asserts.
7165         (reg_buffer::raw_collect_part): New function.
7166         (regcache::write_part): Fix asserts.
7167         (reg_buffer::raw_supply_part): New function.
7168         (regcache::transfer_regset_register): New helper function.
7169         (regcache::transfer_regset): Call new functions.
7170         (regcache_supply_regset): Use gdb_byte*.
7171         (regcache::supply_regset): Likewise.
7172         (regcache_collect_regset): Likewise.
7173         (regcache::collect_regset): Likewise.
7174         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7175         (reg_buffer::raw_supply_part): Likewise.
7176         (regcache::transfer_regset_register): Likewise.
7177         (regcache::transfer_regset): Use gdb_byte*.
7178
7179 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7180
7181         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7182
7183 2018-06-21  Pedro Alves  <palves@redhat.com>
7184
7185         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7186         instead of a ptid_t.  All callers adjusted.
7187         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7188         adjusted.
7189         (print_ada_task_info, display_current_task_id, task_command_1):
7190         Adjust.
7191         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7192         inferior_thread.
7193         (breakpoint_kind): Adjust.
7194         (remove_breakpoints_pid): Rename to ...
7195         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7196         pointer.  All callers adjusted.
7197         (bpstat_clear_actions): Use inferior_thread.
7198         (get_bpstat_thread): New.
7199         (bpstat_do_actions): Use it.
7200         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7201         to take a thread_info pointer.  All callers adjusted.
7202         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7203         (breakpoint_re_set_thread): Use inferior_thread.
7204         * breakpoint.h (struct inferior): Forward declare.
7205         (bpstat_stop_status): Update.
7206         (remove_breakpoints_pid): Delete.
7207         (remove_breakpoints_inf): New.
7208         * bsd-uthread.c (bsd_uthread_target::wait)
7209         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7210         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7211         (maint_btrace_packet_history_cmd)
7212         (maint_btrace_clear_packet_history_cmd): Adjust.
7213         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7214         inferior_thread.
7215         * cli/cli-interp.c: Include "inferior.h".
7216         * common/refcounted-object.h (struct
7217         refcounted_object_ref_policy): New.
7218         * compile/compile-object-load.c: Include gdbthread.h.
7219         (store_regs): Use inferior_thread.
7220         * corelow.c (core_target::close): Use current_inferior.
7221         (core_target_open): Adjust to use first_thread_of_inferior and use
7222         the current inferior.
7223         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7224         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7225         <thread>: ... this new field.  All references adjusted.
7226         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7227         Take a thread_info pointer instead of a ptid_t.
7228         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7229         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7230         thread_info pointer instead of a ptid_t.
7231         * elfread.c: Include "inferior.h".
7232         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7233         Use inferior_thread.
7234         * eval.c (evaluate_subexp): Likewise.
7235         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7236         inferior_thread.
7237         * gdb_proc_service.h (struct thread_info): Forward declare.
7238         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7239         <thread>: ... this new field.  All references adjusted.
7240         * gdbarch.h, gdbarch.c: Regenerate.
7241         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7242         'thread' parameter.  All implementations and callers adjusted.
7243         * gdbthread.h (thread_info) <set_running>: New method.
7244         (delete_thread, delete_thread_silent): Take a thread_info pointer
7245         instead of a ptid.
7246         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7247         (first_thread_of_process): Delete, replaced by ...
7248         (first_thread_of_inferior): ... this new function.  All callers
7249         adjusted.
7250         (any_live_thread_of_process): Delete, replaced by ...
7251         (any_live_thread_of_inferior): ... this new function.  All callers
7252         adjusted.
7253         (switch_to_thread, switch_to_no_thread): Declare.
7254         (is_executing): Delete.
7255         (enable_thread_stack_temporaries): Update comment.
7256         <enable_thread_stack_temporaries>: Take a thread_info pointer
7257         instead of a ptid_t.  Incref the thread.
7258         <~enable_thread_stack_temporaries>: Decref the thread.
7259         <m_ptid>: Delete
7260         <m_thr>: New.
7261         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7262         (get_last_thread_stack_temporary)
7263         (value_in_thread_stack_temporaries, can_access_registers_thread):
7264         Take a thread_info pointer instead of a ptid_t.  All callers
7265         adjusted.
7266         * infcall.c (get_call_return_value): Use inferior_thread.
7267         (run_inferior_call): Work with thread pointers instead of ptid_t.
7268         (call_function_by_hand_dummy): Work with thread pointers instead
7269         of ptid_t.  Use thread_info_ref.
7270         * infcmd.c (proceed_thread_callback): Access thread's state
7271         directly.
7272         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7273         access thread's state directly.
7274         (continue_command): Use inferior_thread.
7275         (info_program_command): Use find_thread_ptid and access thread
7276         state directly.
7277         (proceed_after_attach_callback): Use thread state directly.
7278         (notice_new_inferior): Take a thread_info pointer instead of a
7279         ptid_t.  All callers adjusted.
7280         (exit_inferior): Take an inferior pointer instead of a pid.  All
7281         callers adjusted.
7282         (exit_inferior_silent): New.
7283         (detach_inferior): Delete.
7284         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7285         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7286         (detach_inferior_command, kill_inferior_command): Use
7287         find_inferior_id instead of valid_gdb_inferior_id and
7288         gdb_inferior_id_to_pid.
7289         (inferior_command): Use inferior and thread pointers.
7290         * inferior.h (struct thread_info): Forward declare.
7291         (notice_new_inferior): Take a thread_info pointer instead of a
7292         ptid_t.  All callers adjusted.
7293         (detach_inferior): Delete declaration.
7294         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7295         instead of a pid.  All callers adjusted.
7296         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7297         (valid_gdb_inferior_id): Delete.
7298         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7299         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7300         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7301         ...
7302         <inf>: ... this new field.
7303         <step_ptid>: Delete, replaced by ...
7304         <step_thread>: ... this new field.
7305         (get_displaced_stepping_state): Take an inferior pointer instead
7306         of a pid.  All callers adjusted.
7307         (displaced_step_in_progress_any_inferior): Adjust.
7308         (displaced_step_in_progress_thread): Take a thread pointer instead
7309         of a ptid_t.  All callers adjusted.
7310         (displaced_step_in_progress, add_displaced_stepping_state): Take
7311         an inferior pointer instead of a pid.  All callers adjusted.
7312         (get_displaced_step_closure_by_addr): Adjust.
7313         (remove_displaced_stepping_state): Take an inferior pointer
7314         instead of a pid.  All callers adjusted.
7315         (displaced_step_prepare_throw, displaced_step_prepare)
7316         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7317         All callers adjusted.
7318         (start_step_over): Adjust.
7319         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7320         displaced step queue.
7321         (do_target_resume): Adjust.
7322         (fetch_inferior_event): Use inferior_thread.
7323         (context_switch, get_inferior_stop_soon): Take an
7324         execution_control_state pointer instead of a ptid_t.  All callers
7325         adjusted.
7326         (switch_to_thread_cleanup): Delete.
7327         (stop_all_threads): Use scoped_restore_current_thread.
7328         * inline-frame.c: Include "gdbthread.h".
7329         (inline_state) <inline_state>: Take a thread pointer instead of a
7330         ptid_t.  All callers adjusted.
7331         <ptid>: Delete, replaced by ...
7332         <thread>: ... this new field.
7333         (find_inline_frame_state): Take a thread pointer instead of a
7334         ptid_t.  All callers adjusted.
7335         (skip_inline_frames, step_into_inline_frame)
7336         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7337         pointer instead of a ptid_t.  All callers adjusted.
7338         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7339         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7340         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7341         pointers directly.
7342         * linux-nat.c (get_detach_signal): Likewise.
7343         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7344         (thread_db_notice_clone): Adjust.
7345         (thread_db_find_new_threads_silently)
7346         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7347         a thread pointer instead of a ptid_t.  All callers adjusted.
7348         * mi/mi-cmd-var.c: Include "inferior.h".
7349         (mi_cmd_var_update_iter): Update to use thread pointers.
7350         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7351         inferior directly.
7352         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7353         out to ...
7354         (mi_output_running): ... this new function.
7355         (mi_on_resume_1): Adjust to use it.
7356         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7357         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7358         directly.
7359         (interrupt_thread_callback): : Adjust to use thread and inferior
7360         pointers.
7361         * proc-service.c: Include "gdbthread.h".
7362         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7363         * progspace-and-thread.c: Include "inferior.h".
7364         * progspace.c: Include "inferior.h".
7365         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7366         hold a reference to an inferior_object.
7367         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7368         inferior_thread.
7369         * python/py-inferior.c (struct inferior_object): Give the type a
7370         tag name instead of a typedef.
7371         (python_on_normal_stop): No need to check if the current thread is
7372         listed.
7373         (inferior_to_inferior_object): Change return type to
7374         inferior_object.  All callers adjusted.
7375         (find_thread_object): Delete, bits factored out to ...
7376         (thread_to_thread_object): ... this new function.
7377         * python/py-infthread.c (create_thread_object): Use
7378         inferior_to_inferior_object.
7379         (thpy_is_stopped): Use thread pointer directly.
7380         (gdbpy_selected_thread): Use inferior_thread.
7381         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7382         field, replaced with ...
7383         <thread>: ... this new field.  All users adjusted.
7384         (btpy_insn_or_gap_new): Drop const.
7385         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7386         callers adjusted.
7387         * python/py-record.c: Include "gdbthread.h".
7388         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7389         a ptid_t.  All callers adjusted.
7390         (gdbpy_current_recording): Use inferior_thread.
7391         * python/py-record.h (recpy_record_object) <ptid>: Delete
7392         field, replaced with ...
7393         <thread>: ... this new field.  All users adjusted.
7394         (recpy_element_object) <ptid>: Delete
7395         field, replaced with ...
7396         <thread>: ... this new field.  All users adjusted.
7397         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7398         a ptid_t.  All callers adjusted.
7399         * python/py-threadevent.c: Include "gdbthread.h".
7400         (get_event_thread): Use thread_to_thread_object.
7401         * python/python-internal.h (struct inferior_object): Forward
7402         declare.
7403         (find_thread_object, find_inferior_object): Delete declarations.
7404         (thread_to_thread_object, inferior_to_inferior_object): New
7405         declarations.
7406         * record-btrace.c: Include "inferior.h".
7407         (require_btrace_thread): Use inferior_thread.
7408         (record_btrace_frame_sniffer)
7409         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7410         (get_thread_current_frame): Use scoped_restore_current_thread and
7411         switch_to_thread.
7412         (get_thread_current_frame): Use thread pointer directly.
7413         (record_btrace_replay_at_breakpoint): Use thread's inferior
7414         pointer directly.
7415         * record-full.c: Include "inferior.h".
7416         * regcache.c: Include "gdbthread.h".
7417         (get_thread_arch_regcache): Use the inferior's address space
7418         directly.
7419         (get_thread_regcache, registers_changed_thread): New.
7420         * regcache.h (get_thread_regcache(thread_info *thread)): New
7421         overload.
7422         (registers_changed_thread): New.
7423         (remote_target) <remote_detach_1>: Swap order of parameters.
7424         (remote_add_thread): <remote_add_thread>: Return the new thread.
7425         (get_remote_thread_info(ptid_t)): New overload.
7426         (remote_target::remote_notice_new_inferior): Use thread pointers
7427         directly.
7428         (remote_target::process_initial_stop_replies): Use
7429         thread_info::set_running.
7430         (remote_target::remote_detach_1, remote_target::detach)
7431         (extended_remote_target::detach): Adjust.
7432         * stack.c (frame_show_address): Use inferior_thread.
7433         * target-debug.h (target_debug_print_thread_info_pp): New.
7434         * target-delegates.c: Regenerate.
7435         * target.c (default_thread_address_space): Delete.
7436         (memory_xfer_partial_1): Use current_inferior.
7437         (target_detach): Use current_inferior.
7438         (target_thread_address_space): Delete.
7439         (generic_mourn_inferior): Use current_inferior.
7440         * target.h (struct target_ops) <thread_address_space>: Delete.
7441         (target_thread_address_space): Delete.
7442         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7443         pointers directly.
7444         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7445         thread pointer instead of a ptid_t.  Adjust all callers.
7446         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7447         (first_thread_of_process): Delete, replaced by ...
7448         (first_thread_of_inferior): ... this new function.  All callers
7449         adjusted.
7450         (any_thread_of_process): Rename to ...
7451         (any_thread_of_inferior): ... this, and take an inferior pointer.
7452         (any_live_thread_of_process): Rename to ...
7453         (any_live_thread_of_inferior): ... this, and take an inferior
7454         pointer.
7455         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7456         (value_in_thread_stack_temporaries)
7457         (get_last_thread_stack_temporary): Take a thread pointer instead
7458         of a ptid_t.  Adjust all callers.
7459         (thread_info::set_running): New.
7460         (validate_registers_access): Use inferior_thread.
7461         (can_access_registers_ptid): Rename to ...
7462         (can_access_registers_thread): ... this, and take a thread
7463         pointer.
7464         (print_thread_info_1): Adjust to compare thread pointers instead
7465         of ptids.
7466         (switch_to_no_thread, switch_to_thread): Make extern.
7467         (scoped_restore_current_thread::~scoped_restore_current_thread):
7468         Use m_thread pointer directly.
7469         (scoped_restore_current_thread::scoped_restore_current_thread):
7470         Use inferior_thread.
7471         (thread_command): Use thread pointer directly.
7472         (thread_num_make_value_helper): Use inferior_thread.
7473         * top.c (execute_command): Use inferior_thread.
7474         * tui/tui-interp.c: Include "inferior.h".
7475         * varobj.c (varobj_create): Use inferior_thread.
7476         (value_of_root_1): Use find_thread_global_id instead of
7477         global_thread_id_to_ptid.
7478
7479 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7480
7481         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7482         possible.
7483         (regcache::write_part): Likewise.
7484         (readable_regcache::cooked_read_part): Update comment.
7485         (readable_regcache::cooked_write_part): Likewise.
7486         * regcache.h: (readable_regcache::read_part): Likewise.
7487         (regcache::write_part): Likewise.
7488
7489 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7490             Dirk Schubert  <dirk.schubert@arm.com>
7491
7492         * aarch64-linux-nat.c (post_attach): New.
7493         (aarch64_linux_nat_target::post_attach): Override post_attach to
7494         record the number of hardware debug registers.
7495
7496 2018-06-20  Tom Tromey  <tom@tromey.com>
7497
7498         * python/py-param.c (add_setshow_generic): Make parameters const.
7499         (parmpy_init): Update.
7500
7501 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7502
7503         * regcache.h (regcache_cooked_read_ftype): Rename to...
7504         (register_read_ftype): ...this, change type to function_view.
7505         (class reg_buffer) <save>: Remove src parameter.
7506         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7507         parameter non-const in first overload.  Remove src parameter in
7508         second overload.
7509         * regcache.c (do_cooked_read): Remove.
7510         (readonly_detached_regcache::readonly_detached_regcache): Make
7511         parameter non-const, adjust call to other constructor.
7512         (reg_buffer::save): Remove src parameter.
7513         * frame.c (do_frame_register_read): Remove.
7514         (frame_save_as_regcache): Use lambda function.
7515         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7516         parameter to ppu2spu_data *.
7517         (ppu2spu_sniffer): Use lambda function.
7518
7519 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7520
7521         * record-full.c (record_full_target::insert_breakpoint): Remove
7522         "struct" keyword, add const.
7523
7524 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7525
7526         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7527         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7528         * configure.ac: Remove AC_PREREQ, add missing quoting.
7529         * gnulib/configure.ac: Modernize usage of
7530         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7531         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7532         (AUTOMAKE_VERSION): Bump to 1.15.1.
7533         * configure: Re-generate.
7534         * config.in: Re-generate.
7535         * aclocal.m4: Re-generate.
7536         * gnulib/aclocal.m4: Re-generate.
7537         * gnulib/config.in: Re-generate.
7538         * gnulib/configure: Re-generate.
7539         * gnulib/import/Makefile.in: Re-generate.
7540
7541 2018-06-19  Pedro Alves  <palves@redhat.com>
7542
7543         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7544         (lookup_minimal_symbol_by_pc_section): ... here with
7545         gdb_assert_not_reached added.
7546
7547 2018-06-19  Pedro Alves  <palves@redhat.com>
7548
7549         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7550         parameter with a block parameter.  Compare location's block symbol
7551         with the frame's block instead of addresses.
7552         (skip_inline_frames): Pass the current block instead of the
7553         frame's address.  Break out as soon as we determine the frame
7554         should not be skipped.
7555
7556 2018-06-18  Tom Tromey  <tom@tromey.com>
7557
7558         * solib-aix.c (solib_aix_get_section_offsets): Return
7559         unique_xmalloc_ptr.
7560         (solib_aix_solib_create_inferior_hook): Update.
7561
7562 2018-06-18  Tom Tromey  <tom@tromey.com>
7563
7564         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7565
7566 2018-06-18  Tom Tromey  <tom@tromey.com>
7567
7568         * solib-frv.c (frv_relocate_main_executable): Use
7569         unique_xmalloc_ptr.
7570         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7571         unique_xmalloc_ptr.
7572
7573 2018-06-18  Tom Tromey  <tom@tromey.com>
7574
7575         * objfiles.h (inhibit_section_map_updates): Update.
7576         (resume_section_map_updates, resume_section_map_updates_cleanup):
7577         Remove.
7578         * solib-svr4.c (svr4_handle_solib_event): Update.
7579         * objfiles.c (inhibit_section_map_updates): Return
7580         scoped_restore_tmpl<int>.
7581         (resume_section_map_updates, resume_section_map_updates_cleanup):
7582         Remove.
7583
7584 2018-06-18  Tom Tromey  <tom@tromey.com>
7585
7586         * valprint.h (read_string): Update.
7587         * valprint.c (read_string): Change type of "buffer".
7588         (val_print_string): Update.
7589         * python/py-value.c (valpy_string): Update.
7590         * language.h (struct language_defn) <la_get_string>: Change
7591         type of "buffer".
7592         (default_get_string, c_get_string): Update.
7593         * language.c (default_get_string): Change type of "buffer".
7594         * guile/scm-value.c (gdbscm_value_to_string): Update.
7595         * c-lang.c (c_get_string): Change type of "buffer".
7596
7597 2018-06-18  Tom Tromey  <tom@tromey.com>
7598
7599         * ser-mingw.c (struct pipe_state_destroyer): New.
7600         (pipe_state_up): New typedef.
7601         (cleanup_pipe_state): Remove.
7602         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7603
7604 2018-06-18  Tom Tromey  <tom@tromey.com>
7605
7606         * rust-lang.h (rust_yyerror): Don't declare.
7607         * rust-lang.c (rust_language_defn): Update.
7608         * rust-exp.y (yyerror): Now static.
7609         * parse.c (parse_exp_in_context_1): Update.
7610         * p-lang.h (p_yyerror): Don't declare.
7611         * p-lang.c (p_language_defn): Update.
7612         * p-exp.y (yyerror): Now static.
7613         * opencl-lang.c (opencl_language_defn): Update.
7614         * objc-lang.c (objc_language_defn): Update.
7615         * m2-lang.h (m2_yyerror): Don't declare.
7616         * m2-lang.c (m2_language_defn): Update.
7617         * m2-exp.y (yyerror): Now static.
7618         * language.h (struct language_defn) <la_error>: Remove.
7619         * language.c (unk_lang_error): Remove.
7620         (unknown_language_defn, auto_language_defn): Remove.
7621         * go-lang.h (go_yyerror): Don't declare.
7622         * go-lang.c (go_language_defn): Update.
7623         * go-exp.y (yyerror): Now static.
7624         * f-lang.h (f_yyerror): Don't declare.
7625         * f-lang.c (f_language_defn): Update.
7626         * f-exp.y (yyerror): Now static.
7627         * d-lang.h (d_yyerror): Don't declare.
7628         * d-lang.c (d_language_defn): Update.
7629         * d-exp.y (yyerror): Now static.
7630         * c-lang.h (c_yyerror): Don't declare.
7631         * c-lang.c (c_language_defn, cplus_language_defn)
7632         (asm_language_defn, minimal_language_defn): Update.
7633         * c-exp.y (yyerror): Now static.
7634         * ada-lang.h (ada_yyerror): Don't declare.
7635         * ada-lang.c (ada_language_defn): Update.
7636         * ada-exp.y (yyerror): Now static.
7637
7638 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7639
7640         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7641         (store_sveregs_to_thread): Likewise.
7642         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7643         (aarch64_linux_store_inferior_registers): Likewise.
7644         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7645         function.
7646         (aarch64_sve_regs_copy_to_regcache): Likewise.
7647         (aarch64_sve_regs_copy_from_regcache): Likewise.
7648         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7649         declaration.
7650         (aarch64_sve_regs_copy_to_regcache): Likewise.
7651         (aarch64_sve_regs_copy_from_regcache): Likewise.
7652         (sve_context): Structure from Linux headers.
7653         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7654         (SVE_SIG_ZREG_SIZE): Likewise.
7655         (SVE_SIG_PREG_SIZE): Likewise.
7656         (SVE_SIG_FFR_SIZE): Likewise.
7657         (SVE_SIG_REGS_OFFSET): Likewise.
7658         (SVE_SIG_ZREGS_OFFSET): Likewise.
7659         (SVE_SIG_ZREG_OFFSET): Likewise.
7660         (SVE_SIG_ZREGS_SIZE): Likewise.
7661         (SVE_SIG_PREGS_OFFSET): Likewise.
7662         (SVE_SIG_PREG_OFFSET): Likewise.
7663         (SVE_SIG_PREGS_SIZE): Likewise.
7664         (SVE_SIG_FFR_OFFSET): Likewise.
7665         (SVE_SIG_REGS_SIZE): Likewise.
7666         (SVE_SIG_CONTEXT_SIZE): Likewise.
7667         (SVE_PT_REGS_MASK): Likewise.
7668         (SVE_PT_REGS_FPSIMD): Likewise.
7669         (SVE_PT_REGS_SVE): Likewise.
7670         (SVE_PT_VL_INHERIT): Likewise.
7671         (SVE_PT_VL_ONEXEC): Likewise.
7672         (SVE_PT_REGS_OFFSET): Likewise.
7673         (SVE_PT_FPSIMD_OFFSET): Likewise.
7674         (SVE_PT_FPSIMD_SIZE): Likewise.
7675         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7676         (SVE_PT_SVE_PREG_SIZE): Likewise.
7677         (SVE_PT_SVE_FFR_SIZE): Likewise.
7678         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7679         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7680         (__SVE_SIG_TO_PT): Likewise.
7681         (SVE_PT_SVE_OFFSET): Likewise.
7682         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7683         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7684         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7685         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7686         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7687         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7688         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7689         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7690         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7691         (SVE_PT_SVE_SIZE): Likewise.
7692         (SVE_PT_SIZE): Likewise.
7693         (HAS_SVE_STATE): New define.
7694
7695 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7696
7697         * nat/aarch64-sve-linux-sigcontext.h: New file.
7698         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7699         new files.
7700         (SVE_VQ_MIN): Likewise.
7701         (SVE_VQ_MAX): Likewise.
7702         (SVE_VL_MIN): Likewise.
7703         (SVE_VL_MAX): Likewise.
7704         (SVE_NUM_ZREGS): Likewise.
7705         (SVE_NUM_PREGS): Likewise.
7706         (sve_vl_valid): Likewise.
7707         (struct user_sve_header): Likewise.
7708
7709 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7710             Richard Bunt <Richard.Bunt@arm.com>
7711
7712         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7713         was requested by GDB.
7714
7715 2018-06-15  Tom de Vries  <tdevries@suse.de>
7716
7717         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7718
7719 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7720
7721         * gnulib/update-gnulib.sh: Print expected versions of
7722         autoconf/aclocal.
7723
7724 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7725
7726         * arch-utils.c (default_type_align): Use type_length_units.
7727         * gdbtypes.c (type_align): Use type_length_units.
7728
7729 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7730
7731         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7732         of 'define' command.
7733
7734 2018-06-14  Tom de Vries  <tdevries@suse.de>
7735
7736         PR cli/22573
7737         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7738         get_no_prettyformat_print_options.
7739
7740 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7741
7742         * sparc-nat.h: Include target.h.
7743         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7744         <fetch_registers>: Remove this argument in function call.
7745         <store_registers>: Remove this argument in function call, remove
7746         extra semicolon.
7747         <low_forget_process>: Call sparc64_forget_process instead of
7748         sparc_forget_process.
7749
7750 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7751
7752         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7753         (procfs_target::make_corefile_notes): Adjust to new
7754         target_read_alloc return type.
7755
7756 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7757             Stephen Roberts  <stephen.roberts@arm.com>
7758
7759         PR gdb/22882
7760         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7761         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7762         Move should_notify_stop local into more inner scope.
7763
7764 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7765             Stephen Roberts  <stephen.roberts@arm.com>
7766
7767         PR gdb/22882
7768         * infrun.c (resume_1): Add call to mark_async_event_handler.
7769
7770 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7771
7772         * infrun.c (do_target_wait): Change old version of $pc printed.
7773
7774 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7775
7776         * dwarf2read.c (read_index_from_section): Rename to...
7777         (read_gdb_index_from_section): ... this, update all callers.
7778         (dwarf2_read_index): Rename to...
7779         (dwarf2_read_gdb_index): ... this, update all callers.
7780
7781 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7782
7783         * hppa-linux-nat.c
7784         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7785         hppa_linux_nat_target::fetch_registers.
7786
7787 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7788
7789         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7790         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7791         (AARCH64_DWARF_SVE_FFR): Likewise.
7792         (AARCH64_DWARF_SVE_P0): Likewise.
7793         (AARCH64_DWARF_SVE_Z0): Likewise.
7794
7795 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7796
7797         * common/common-regcache.h (raw_compare): New function.
7798         * regcache.c (regcache::raw_compare): Likewise.
7799         * regcache.h (regcache::raw_compare): New declaration.
7800
7801 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7802
7803         * common/common-regcache.h (reg_buffer_common): New structure.
7804         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7805         (reg_buffer::raw_supply): Likewise.
7806         (reg_buffer::raw_supply_integer): Likewise.
7807         (reg_buffer::raw_supply_zeroed): Likewise.
7808         (reg_buffer::raw_collect): Likewise.
7809         (reg_buffer::raw_collect_integer): Likewise.
7810         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7811         (reg_buffer::raw_supply): Likewise.
7812         (reg_buffer::raw_supply_integer): Likewise.
7813         (reg_buffer::raw_supply_zeroed): Likewise.
7814         (reg_buffer::raw_collect): Likewise.
7815         (reg_buffer::raw_collect_integer): Likewise.
7816
7817 2018-06-10  Tom Tromey  <tom@tromey.com>
7818
7819         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7820         (class remote_state) <stop_reply_queue>: Now std::vector.
7821         (remote_state::~remote_state)
7822         (remote_target::stop_reply_queue_length): Update.
7823         (struct queue_iter_param, remove_child_of_pending_fork)
7824         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7825         (check_pending_event_prevents_wildcard_vcont_callback)
7826         (remove_stop_reply_for_inferior)
7827         (remove_stop_reply_of_remote_state)
7828         (remote_notif_remove_once_on_match)
7829         (stop_reply_match_ptid_and_ws)
7830         (remote_kill_child_of_pending_fork): Remove.
7831         (remote_target::remove_new_fork_children)
7832         (remote_target::check_pending_events_prevent_wildcard_vcont)
7833         (remote_target::discard_pending_stop_replies)
7834         (remote_target::discard_pending_stop_replies_in_queue)
7835         (remote_target::remote_notif_remove_queued_reply)
7836         (remote_target::queued_stop_reply)
7837         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7838         (remote_target::wait, remote_target::kill_new_fork_children)
7839         (remote_target::async): Update.
7840
7841 2018-06-10  Tom Tromey  <tom@tromey.com>
7842
7843         * record-full.c (record_full_arch_list_cleanups): Remove.
7844         (record_full_message): Use try/catch.
7845         (record_full_wait_cleanups): Remove.
7846         (record_full_wait_1): Use try/catch.
7847         (record_full_restore): Likewise.
7848
7849 2018-06-10  Tom Tromey  <tom@tromey.com>
7850
7851         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7852         declare VEC.  Add constructor.
7853         <in_target_beneath>: Now bool.
7854         (record_full_breakpoints): Now a std::vector, static.
7855         (record_full_sync_record_breakpoints)
7856         (record_full_init_record_breakpoints)
7857         (record_full_target::insert_breakpoint)
7858         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7859
7860 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7861
7862         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7863         * serial.c (serial_interface_lookup): Remove struct keyword.
7864
7865 2018-06-10  Tom Tromey  <tom@tromey.com>
7866
7867         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7868         method.
7869         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7870         a method.
7871         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7872         method.
7873         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7874         "beneath" as a method.
7875         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7876         Use "beneath" as a method.
7877
7878 2018-06-10  Tom Tromey  <tom@tromey.com>
7879
7880         * tracefile.c (struct trace_file_writer_deleter): New.
7881         <operator()>: Rename from trace_file_writer_xfree.
7882         (trace_file_writer_up): New typedef.
7883         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7884
7885 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7886
7887         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7888         <m_registers, m_register_status>: Change type to
7889         std::unique_ptr.
7890         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7891         XCNEWVEC.
7892
7893 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7894
7895         * common/common-regcache.h (enum register_status): Add
7896         underlying type "signed char".
7897         * regcache.h (reg_buffer) <m_register_status>: Change type to
7898         register_status *.
7899         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7900         register_status instead of signed char.
7901         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7902         (reg_buffer::get_register_status): Remove cast.
7903         (readable_regcache::raw_read): Remove cast.
7904         (readable_regcache::cooked_read): Remove cast.
7905
7906 2018-06-09  Tom Tromey  <tom@tromey.com>
7907
7908         * source.c (reverse_search_command, forward_search_command): Use
7909         scoped_fd.
7910
7911 2018-06-09  Tom Tromey  <tom@tromey.com>
7912
7913         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7914         (serial_ops_list): Now static, std::vector.
7915         (serial_interface_lookup, serial_add_interface): Update.
7916
7917 2018-06-09  Tom Tromey  <tom@tromey.com>
7918
7919         * dwarf2read.c (process_cu_includes): Update.
7920         (process_full_comp_unit): Update.
7921         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7922         std::vector.
7923
7924 2018-06-08  Paul Koning  <paul_koning@dell.com>
7925
7926         PR gdb/23252
7927
7928         * python/python.c (do_start_initialization):
7929         Avoid call to internal Python API.
7930         (init__gdb_module): New function.
7931
7932 2018-06-08  Gary Benson <gbenson@redhat.com>
7933
7934         * linux-thread-db.c (valprint.h): New include.
7935         (struct check_thread_db_info): New structure.
7936         (check_thread_db_on_load, tdb_testinfo): New static globals.
7937         (check_thread_db, check_thread_db_callback): New functions.
7938         (try_thread_db_load_1): Run integrity checks if requested.
7939         (maintenance_check_libthread_db): New function.
7940         (_initialize_thread_db): Register "maint check libthread-db"
7941         and "maint set/show check-libthread-db".
7942         * NEWS: Mention the above new commands.
7943
7944 2018-06-08  Tom Tromey  <tom@tromey.com>
7945
7946         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7947         now a method.
7948
7949 2018-06-08  Tom Tromey  <tom@tromey.com>
7950
7951         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7952
7953 2018-06-08  Tom Tromey  <tom@tromey.com>
7954
7955         * common/btrace-common.h (struct btrace_data): Add constructor,
7956         destructor, move assignment operator.
7957         <empty, clear, fini>: New methods.
7958         <format>: Initialize.
7959         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7960         (btrace_data_empty): Don't declare.
7961         * common/btrace-common.c (btrace_data_init): Remove.
7962         (btrace_data::fini): Rename from btrace_data_fini.
7963         (btrace_data::empty): Rename from btrace_data_empty.
7964         (btrace_data::clear): Rename from btrace_data_clear.  Return
7965         bool.
7966         * btrace.h (make_cleanup_btrace_data): Don't declare.
7967         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7968         (parse_xml_btrace): Update.
7969         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7970         (maint_btrace_clear_packet_history_cmd): Update.
7971
7972 2018-06-07  Pedro Alves  <palves@redhat.com>
7973
7974         * target.h (target_ops) <beneath>: Now a method.  All references
7975         updated.
7976         (class target_stack): New.
7977         * target.c (g_target_stack): New.
7978         (g_current_top_target): Delete.
7979         (current_top_target): Get the top target out of g_target_stack.
7980         (target_stack::push, target_stack::unpush): New.
7981         (push_target, unpush_target): Reimplement.
7982         (target_is_pushed): Reimplement in terms of g_target_stack.
7983         (target_ops::beneath, target_stack::find_beneath): New.
7984
7985 2018-06-07  Pedro Alves  <palves@redhat.com>
7986
7987         * target.h (find_target_beneath): Delete declaration.
7988         * target.c (find_target_beneath): Delete definition.
7989         * aix-thread.c: All callers of find_target_beneath adjusted to
7990         call target_ops::beneath instead.
7991         * bsd-uthread.c: Likewise.
7992         * linux-thread-db.c: Likewise.
7993         * ravenscar-thread.c: Likewise.
7994         * sol-thread.c: Likewise.
7995         * spu-multiarch.c: Likewise.
7996
7997 2018-06-07  Pedro Alves  <palves@redhat.com>
7998
7999         * target.h (target_ops) <beneath>: Now a method.  All references
8000         updated.
8001         (target_ops) <m_beneath>: New.
8002         * target.c (target_ops::beneath): New.
8003         * corelow.c: Adjust all references to target_ops::beneath.
8004         * linux-thread-db.c: Likewise.
8005         * make-target-delegates: Likewise.
8006         * record-btrace.c: Likewise.
8007         * record-full.c: Likewise.
8008         * remote.c: Likewise.
8009         * target.c: Likewise.
8010         * target-delegates.c: Regenerate.
8011
8012 2018-06-07  Pedro Alves  <palves@redhat.com>
8013
8014         * target.h (target_stack): Delete.
8015         (current_top_target): Declare function.
8016         * target.c (target_stack): Delete.
8017         (g_current_top_target): New.
8018         (current_top_target): New function.
8019         * auxv.c: Use current_top_target instead of target_stack
8020         throughout.
8021         * avr-tdep.c: Likewise.
8022         * breakpoint.c: Likewise.
8023         * corefile.c: Likewise.
8024         * elfread.c: Likewise.
8025         * eval.c: Likewise.
8026         * exceptions.c: Likewise.
8027         * frame.c: Likewise.
8028         * gdbarch-selftests.c: Likewise.
8029         * gnu-v3-abi.c: Likewise.
8030         * ia64-tdep.c: Likewise.
8031         * ia64-vms-tdep.c: Likewise.
8032         * infcall.c: Likewise.
8033         * infcmd.c: Likewise.
8034         * infrun.c: Likewise.
8035         * linespec.c: Likewise.
8036         * linux-tdep.c: Likewise.
8037         * minsyms.c: Likewise.
8038         * ppc-linux-nat.c: Likewise.
8039         * ppc-linux-tdep.c: Likewise.
8040         * procfs.c: Likewise.
8041         * regcache.c: Likewise.
8042         * remote.c: Likewise.
8043         * rs6000-tdep.c: Likewise.
8044         * s390-linux-nat.c: Likewise.
8045         * s390-tdep.c: Likewise.
8046         * solib-aix.c: Likewise.
8047         * solib-darwin.c: Likewise.
8048         * solib-dsbt.c: Likewise.
8049         * solib-spu.c: Likewise.
8050         * solib-svr4.c: Likewise.
8051         * solib-target.c: Likewise.
8052         * sparc-tdep.c: Likewise.
8053         * sparc64-tdep.c: Likewise.
8054         * spu-tdep.c: Likewise.
8055         * symfile.c: Likewise.
8056         * symtab.c: Likewise.
8057         * target-descriptions.c: Likewise.
8058         * target-memory.c: Likewise.
8059         * target.c: Likewise.
8060         * target.h: Likewise.
8061         * tracefile-tfile.c: Likewise.
8062         * tracepoint.c: Likewise.
8063         * valops.c: Likewise.
8064         * valprint.c: Likewise.
8065         * value.c: Likewise.
8066         * windows-tdep.c: Likewise.
8067         * mi/mi-main.c: Likewise.
8068
8069 2018-06-07  Tom Tromey  <tom@tromey.com>
8070
8071         * valprint.h (build_address_symbolic): Declare.
8072         * printcmd.c (print_address_symbolic): Update.
8073         (build_address_symbolic): Change "name" and "filename" to
8074         std::string.
8075         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8076         Update.
8077         * defs.h (build_address_symbolic): Remove declaration.
8078
8079 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8080
8081         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8082         (aarch64_vnv_type): Add function.
8083         (aarch64_pseudo_register_name): Add V regs for SVE.
8084         (aarch64_pseudo_register_type): Likewise.
8085         (aarch64_pseudo_register_reggroup_p): Likewise.
8086         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8087         (aarch64_pseudo_read_value): Add V regs for SVE.
8088         (aarch64_pseudo_write_2): Use V0 offset for SVE
8089         (aarch64_pseudo_write): Add V regs for SVE.
8090         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8091
8092 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8093
8094         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8095         (sve_vl_from_vq): Likewise.
8096
8097 2018-06-05  Tom Tromey  <tom@tromey.com>
8098
8099         * cli/cli-cmds.c (show_version): Update.
8100         * top.c (print_gdb_version): Add "interactive" parameter.
8101         Update.
8102         * main.c (captured_main_1): Update.
8103         * top.h (print_gdb_version): Add "interactive" parameter and a
8104         comment.
8105
8106 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8107
8108         * common/enum-flags.h: Add trailing semicolon to example in
8109         comment.
8110
8111 2018-06-05  Tom Tromey  <tom@tromey.com>
8112
8113         PR cli/12326:
8114         * NEWS: Add entry about pager.
8115         * utils.c (pagination_disabled_for_command): New global.
8116         (prompt_for_continue): Allow "c" response to prompt.
8117         (reinitialize_more_filter): Clear
8118         pagination_disabled_for_command.
8119         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8120
8121 2018-06-04  Tom Tromey  <tom@tromey.com>
8122
8123         * ada-lang.h (ada_lookup_symbol_list): Update.
8124         * ada-lang.c (resolve_subexp): Update.
8125         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8126         parameter.
8127         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8128         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8129         results parameter to std::vector.
8130         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8131         Update.
8132         * ada-exp.y (block_lookup): Update.
8133         (select_possible_type_sym): Change type of syms.  Remove nsyms
8134         parameter.
8135         (write_var_or_type, write_name_assoc): Update.
8136
8137 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8138
8139         * windows-nat.c (windows_nat_target::xfer_partial): Return
8140         TARGET_XFER_E_IO if we need to delegate to the target beneath
8141         but BENEATH is NULL.
8142
8143 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8144
8145         * Makefile.in (config.status): Add configure.nat as a
8146         dependency.
8147
8148 2018-06-04  Tom Tromey  <tom@tromey.com>
8149
8150         * cp-name-parser.y (cpname_state): Add method declarations.
8151         (HANDLE_QUAL): Update.
8152         (cpname_state::d_grab, cpname_state::fill_comp)
8153         (cpname_state::make_operator, cpname_state::make_dtor)
8154         (cpname_state::make_builtin_type, cpname_state::make_name)
8155         (cpname_state::d_qualify, cpname_state::d_int_type)
8156         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8157         (%union): Move earlier.
8158
8159 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8160
8161         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8162
8163 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8164
8165         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8166         (aarch64_pseudo_write_1): Likewise.
8167         (aarch64_pseudo_read_value): Use helper.
8168         (aarch64_pseudo_write): Likewise.
8169
8170 2018-06-04  Pedro Alves  <palves@redhat.com>
8171
8172         * darwin-nat.c (darwin_ops): Delete.
8173         (darwin_attach_pid): Use get_native_target.
8174
8175 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8176
8177         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8178         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8179
8180 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8181
8182         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8183         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8184         (aarch64_gdbarch_init): Check for SVE.
8185         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8186
8187 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8188
8189         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8190         * aarch64-tdep.h (aarch64_read_description): Likewise.
8191         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8192         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8193         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8194         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8195         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8196
8197 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8198
8199         * value.c (value_fetch_lazy_bitfield): New.
8200         (value_fetch_lazy_memory): New.
8201         (value_fetch_lazy_register): New.
8202         (value_fetch_lazy): Factor out to smaller functions.
8203
8204 2018-06-01  Tom Tromey  <tom@tromey.com>
8205
8206         * cp-name-parser.y (backslashable, represented): Now const.
8207
8208 2018-06-01  Tom Tromey  <tom@tromey.com>
8209
8210         * cp-name-parser.y: Include parser-defs.h.
8211         (parser_fprintf): Remove declaration.
8212
8213 2018-06-01  Tom Tromey  <tom@tromey.com>
8214
8215         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8216         %parse-param.
8217         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8218         (global_result): Remove globals.
8219         (struct cpname_state): New.
8220         (yyparse): Don't declare.
8221         (yylex, yyerror): Move declarations after %union.
8222         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8223         (make_name): Add state parameter.
8224         Update all callers.
8225         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8226         parameter.
8227         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8228         Update.
8229         (yylex): Add lvalp, state parameters.
8230         (yyerror): Add state parameter.
8231         (cp_demangled_name_to_comp): Update.
8232
8233 2018-06-01  Tom Tromey  <tom@tromey.com>
8234
8235         * cp-name-parser.y (parser_fprintf): Declare.
8236         (GDB_YY_REMAP_PREFIX): Define.
8237         Include yy-remap.h.  Don't redefine yy* identifiers.
8238
8239 2018-06-01  Tom Tromey  <tom@tromey.com>
8240
8241         * python/py-type.c (typy_legacy_template_argument): Update.
8242         * cp-support.h (cp_demangled_name_to_comp): Update.
8243         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8244         parameter to be a "std::string *".
8245         (main): Update.
8246
8247 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8248
8249         * ada-lex.l: Include "diagnostics.h" instead of
8250         "common/diagnostics.h".
8251         * unittests/environ-selftests.c: Likewise.
8252         * common/diagnostics.h: Moved to ../include.
8253
8254 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8255
8256         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8257         to language_mode_manual while calling breakpoint_re_set_one.
8258
8259 2018-06-01  Tom Tromey  <tom@tromey.com>
8260
8261         * valops.c (value_cast_structs, destructor_name_p): Update.
8262         * symtab.c (gdb_mangle_name): Update.
8263         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8264         Update.
8265         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8266         (pascal_object_print_value_fields, pascal_object_print_value):
8267         Update.
8268         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8269         * linespec.c (find_methods): Update.
8270         * gdbtypes.h (type_name_no_tag): Remove.
8271         (type_name_or_error): Rename from type_name_no_tag_or_error.
8272         * gdbtypes.c (type_name_no_tag): Remove.
8273         (type_name_or_error): Rename from type_name_no_tag_or_error.
8274         (lookup_struct_elt_type, check_typedef): Update.
8275         * expprint.c (print_subexp_standard): Update.
8276         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8277         * d-namespace.c (d_lookup_nested_symbol): Update.
8278         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8279         (cp_print_class_member): Update.
8280         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8281         * completer.c (add_struct_fields): Update.
8282         * c-typeprint.c (cp_type_print_derivation_info)
8283         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8284         Update.
8285         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8286         (ada_prefer_type, ada_is_exception_sym): Update.
8287
8288 2018-06-01  Tom Tromey  <tom@tromey.com>
8289
8290         * valops.c (enum_constant_from_type, value_namespace_elt)
8291         (value_maybe_namespace_elt): Update.
8292         * valarith.c (find_size_for_pointer_math): Update.
8293         * target-descriptions.c (make_gdb_type): Update.
8294         * symmisc.c (print_symbol): Update.
8295         * stabsread.c (define_symbol, read_type)
8296         (complain_about_struct_wipeout, add_undefined_type)
8297         (cleanup_undefined_types_1): Update.
8298         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8299         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8300         (rust_internal_print_type, rust_composite_type)
8301         (rust_evaluate_funcall, rust_evaluate_subexp)
8302         (rust_inclusive_range_type_p): Update.
8303         * python/py-type.c (typy_get_tag): Update.
8304         * p-typeprint.c (pascal_type_print_base): Update.
8305         * mdebugread.c (parse_symbol, parse_type): Update.
8306         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8307         Update.
8308         * guile/scm-type.c (gdbscm_type_tag): Update.
8309         * go-lang.c (sixg_string_p): Update.
8310         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8311         Update.
8312         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8313         (TYPE_TAG_NAME): Remove.
8314         * gdbtypes.c (type_name_no_tag): Simplify.
8315         (check_typedef, check_types_equal, recursive_dump_type)
8316         (copy_type_recursive, arch_composite_type): Update.
8317         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8318         in summary mode when needed.
8319         * eval.c (evaluate_funcall): Update.
8320         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8321         (process_structure_scope, read_enumeration_type)
8322         (read_namespace_type, read_module_type, determine_prefix): Update.
8323         * cp-support.c (inspect_type): Update.
8324         * coffread.c (process_coff_symbol, decode_base_type): Update.
8325         * c-varobj.c (c_is_path_expr_parent): Update.
8326         * c-typeprint.c (c_type_print_base_struct_union): Update.
8327         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8328         summary when using C language.
8329         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8330         (gen_maybe_namespace_elt): Update.
8331         * ada-lang.c (ada_type_name): Simplify.
8332         (empty_record, ada_template_to_fixed_record_type_1)
8333         (template_to_static_fixed_type)
8334         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8335
8336 2018-06-01  Tom Tromey  <tom@tromey.com>
8337
8338         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8339         c_print_type.
8340         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8341         (c_print_type): Update.
8342         (c_print_type): New overload.
8343         (c_type_print_varspec_prefix, c_type_print_args)
8344         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8345         (c_type_print_base_struct_union, c_type_print_base_1)
8346         (cp_type_print_method_args): Add "language" parameter.
8347         (c_type_print_base): Update.
8348         * c-lang.h (c_print_type): Add new overload.
8349
8350 2018-06-01  Tom Tromey  <tom@tromey.com>
8351
8352         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8353         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8354
8355 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8356
8357         * aarch64-tdep.c (aarch64_sve_register_names): New const
8358         var.
8359         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8360         (AARCH64_SVE_Z_REGS_NUM): New define.
8361         (AARCH64_SVE_P_REGS_NUM): Likewise.
8362         (AARCH64_SVE_NUM_REGS): Likewise.
8363
8364 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8365
8366         * nat/linux-ptrace.h [__alpha__]
8367         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8368         definitions.
8369
8370 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8371
8372         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8373         the endianness selected.
8374         * NEWS: Document `set endian auto' mode operation update.
8375
8376 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8377
8378         * Makefile.in: Add new header.
8379         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8380         (sve_vl_from_vg): Likewise.
8381         (sve_vq_from_vl): Likewise.
8382         (sve_vl_from_vq): Likewise.
8383         (sve_vq_from_vg): Likewise.
8384         (sve_vg_from_vq): Likewise.
8385         * configure.nat: Add new c file.
8386         * nat/aarch64-sve-linux-ptrace.c: New file.
8387         * nat/aarch64-sve-linux-ptrace.h: New file.
8388
8389 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8390
8391         * aarch64-linux-nat.c (aarch64_linux_read_description):
8392         Add parmeter zero.
8393         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8394         Likewise.
8395         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8396         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8397         (aarch64_gdbarch_init): Add parmeter zero.
8398         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8399         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8400         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8401         parmeter.
8402         * doc/gdb.texinfo: Describe SVE feature
8403         * features/aarch64-sve.c: New file.
8404
8405 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8406
8407         PR gdb/23210
8408         * gdbarch.sh (significant_addr_bit): Default to zero when
8409         not set by target architecture.
8410         * gdbarch.c: Re-generated.
8411         * utils.c (address_significant): Update.
8412
8413 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8414
8415         * stack.c (func_command): Remove trailing newline in call to error.
8416
8417 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8418
8419         * regcache.h (regcache_raw_collect): Remove, update callers to
8420         use regcache::raw_collect.
8421         * regcache.c (regcache_raw_collect): Remove.
8422
8423 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8424
8425         * regcache.h (regcache_raw_supply): Remove, update callers to
8426         use detached_regcache::raw_supply.
8427         * regcache.c (regcache_raw_supply): Remove.
8428
8429 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8430
8431         * regcache.h (regcache_cooked_write_part): Remove, update
8432         callers to use regcache::cooked_write_part.
8433         * regcache.c (regcache_cooked_write_part): Remove.
8434
8435 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8436
8437         * regcache.h (regcache_cooked_read_part): Remove, update callers
8438         to use readable_regcache::cooked_read_part.
8439         * regcache.c (regcache_cooked_read_part): Remove.
8440
8441 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8442
8443         * regcache.h (regcache_cooked_read_value): Remove, update
8444         callers to use readable_regcache::cooked_read_value.
8445         * regcache.c (regcache_cooked_read_value): Remove.
8446
8447 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8448
8449         * regcache.h (regcache_cooked_write): Remove, update callers to
8450         use regcache::cooked_write.
8451         * regcache.c (regcache_cooked_write): Remove.
8452
8453 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8454
8455         * regcache.h (regcache_invalidate): Remove, update callers to
8456         use detached_regcache::invalidate instead.
8457         * regcache.c (regcache_invalidate): Remove.
8458
8459 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8460
8461         * regcache.h (regcache_raw_write_part): Remove, update callers
8462         to use regcache::raw_write_part instead.
8463         * regcache.c (regcache_raw_write_part): Remove.
8464
8465 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8466
8467         * regcache.h (regcache_raw_read_part): Remove, update callers to
8468         use readable_regcache::raw_read_part instead.
8469         * regcache.c (regcache_raw_read_part): Remove.
8470
8471 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8472
8473         * regcache.h (regcache_cooked_read): Remove, update callers to
8474         use readable_regcache::cooked_read instead.
8475         * regcache.c (regcache_cooked_read): Remove.
8476
8477 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8478
8479         * regcache.h (regcache_raw_write): Remove, update callers to use
8480         regcache::raw_write instead.
8481         * regcache.c (regcache_raw_write): Remove.
8482
8483 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8484
8485         * regcache.h (regcache_raw_read): Remove, update callers to use
8486         readable_regcache::raw_read instead.
8487         * regcache.c (regcache_raw_read): Remove.
8488
8489 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8490
8491         * regcache.h (regcache_raw_update): Remove, update callers to
8492         use readable_regcache::raw_update instead.
8493         * regcache.c (regcache_raw_update): Remove.
8494
8495 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8496
8497         * regcache.h (regcache_register_status): Remove, update callers
8498         to use reg_buffer::get_register_status directly instead.
8499         * regcache.c (regcache_register_status): Remove.
8500
8501 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8502
8503         * regcache.h (regcache_get_ptid): Remove, update all callers to
8504         call regcache::ptid instead.
8505         * regcache.c (regcache_get_ptid): Remove.
8506
8507 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8508
8509         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8510
8511 2018-05-30  Pedro Alves  <palves@redhat.com>
8512
8513         * common/common-exceptions.h (exception_rethrow): Use
8514         ATTRIBUTE_NORETURN.
8515
8516 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8517
8518         * breakpoint.c (print_solib_event, check_status_catch_solib):
8519         Remove struct keyword in range-based for loops.
8520         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8521         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8522         Likewise.
8523         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8524         Likewise.
8525         * symfile.c (addr_info_make_relative): Likewise.
8526         * thread.c (value_in_thread_stack_temporaries): Likewise.
8527
8528 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8529
8530         PR gdb/16841
8531         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8532         aggregate type to get its real type before accessing it.
8533
8534 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8535
8536         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8537         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8538         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8539         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8540         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8541         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8542         * printcmd.c (info_address_command): Likewise.
8543
8544 2018-05-29  Tom Tromey  <tom@tromey.com>
8545
8546         * windows-nat.c (handle_exception): Update fall-through comment.
8547
8548 2018-05-29  Tom Tromey  <tom@tromey.com>
8549
8550         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8551         (struct program_space) <added_solibs>: Now a std::vector.
8552         * breakpoint.c (print_solib_event): Update.
8553         (check_status_catch_solib): Update.
8554         * progspace.c (clear_program_space_solib_cache): Update.
8555         * solib.c (update_solib_list): Update.
8556
8557 2018-05-29  Tom Tromey  <tom@tromey.com>
8558
8559         * python/py-type.c (typy_richcompare): Update.
8560         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8561         * gdbtypes.h (types_deeply_equal): Return bool.
8562         (types_equal): Likewise.
8563         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8564         declare VEC.
8565         (check_types_equal): Change worklist to std::vector.  Return
8566         bool.
8567         (struct type_equality_entry): Add constructor.
8568         (compare_maybe_null_strings): Return bool.
8569         (check_types_worklist): Return bool.  Change worklist to
8570         std::vector.
8571         (types_deeply_equal): Use std::vector.
8572         (types_equal): Return bool.
8573         (compare_maybe_null_strings): Simplify.
8574
8575 2018-05-29  Tom Tromey  <tom@tromey.com>
8576
8577         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8578
8579 2018-05-29  Tom Tromey  <tom@tromey.com>
8580
8581         * objc-lang.h: Don't include cp-support.h.
8582         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8583         declare VEC.
8584
8585 2018-05-27  Tom Tromey  <tom@tromey.com>
8586
8587         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8588
8589 2018-05-25  Tom Tromey  <tom@tromey.com>
8590
8591         * value.c (value::location): Initialize.
8592
8593 2018-05-25  Tom Tromey  <tom@tromey.com>
8594
8595         * dbxread.c (init_bincl_list): Remove.
8596         (bincl_list): Now a std::vector.
8597         (bincls_allocated, next_bincl): Remove.
8598         (free_bincl_list, do_free_bincl_list_cleanup)
8599         (make_cleanup_free_bincl_list): Remove.
8600         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8601         unique_xmalloc_ptr.
8602         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8603         (struct header_file_location): Add constructor.
8604         (add_bincl_to_list): Remove.
8605
8606 2018-05-25  Tom Tromey  <tom@tromey.com>
8607
8608         * tui/tui.c (tui_enable): Update.
8609         * mi/mi-interp.c (mi_interp::init): Update.
8610         * interps.h (class interp) <name>: New method.
8611         <m_name>: Rename from name.
8612         (~scoped_restore_interp): Update.
8613         * interps.c (interp::interp): Update.
8614         (interp_add, interp_set, interp_lookup_existing)
8615         (current_interp_named_p): Update.
8616
8617 2018-05-25  Tom Tromey  <tom@tromey.com>
8618
8619         * interps.c (interp_name): Remove.
8620         * mi/mi-interp.c (mi_interp::init): Update.
8621         * interps.h (interp_name): Remove.
8622         (~scoped_restore_interp): Update.
8623         * tui/tui.c (tui_enable): Update.
8624
8625 2018-05-25  Tom Tromey  <tom@tromey.com>
8626
8627         * utils.c (fputs_maybe_filtered): Update.
8628         * linespec.c (decode_line_full): Update.
8629         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8630         (mi_print_breakpoint_for_event, mi_solib_loaded)
8631         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8632         (mi_user_selected_context_changed): Update.
8633         * mi/mi-main.c (mi_execute_command): Update.
8634         * cli/cli-script.c (execute_control_command): Update.
8635         * python/python.c (execute_gdb_command): Update.
8636         * solib.c (info_sharedlibrary_command): Update.
8637         * interps.c (interp_ui_out): Remove.
8638         * interps.h (interp_ui_out): Remove.
8639
8640 2018-05-25  Tom Tromey  <tom@tromey.com>
8641
8642         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8643         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8644         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8645
8646 2018-05-25  Tom Tromey  <tom@tromey.com>
8647
8648         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8649         * interps.c (interp_exec): Use scoped_restore.
8650
8651 2018-05-25  Tom Tromey  <tom@tromey.com>
8652
8653         * remote.c (remote_target::remote_file_get): Use
8654         gdb::byte_vector.
8655         (remote_target::remote_file_put): Likewise.
8656
8657 2018-05-25  Tom Tromey  <tom@tromey.com>
8658
8659         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8660         a std::string.
8661         (get_pe_section_index, add_pe_exported_sym): Update.
8662         (read_pe_exported_syms): Use gdb::def_vector.
8663
8664 2018-05-25  Tom Tromey  <tom@tromey.com>
8665
8666         * frame.c (remove_prev_frame): Remove.
8667         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8668
8669 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8670
8671         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8672         Remove prototypes.
8673         * mips-linux-nat.c (supply_fpregset): Always call
8674         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8675         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8676         `mips_fill_fpregset'.
8677         * mips-linux-tdep.c (mips_supply_fpregset)
8678         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8679         (mips_fill_fpregset_wrapper): Remove functions.
8680         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8681         (mips_linux_fpregset): Remove variable.
8682         (mips_linux_iterate_over_regset_sections): Use
8683         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8684         (mips_linux_o32_sigframe_init): Remove comment.
8685
8686 2018-05-25  Pedro Alves  <palves@redhat.com>
8687
8688         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8689         (struct readahead_cache, struct packet_reg, struct
8690         remote_arch_state, class remote_state): Move higher up in the
8691         file.
8692         (remote_target::m_remote_state): Now an object instead of a pointer.
8693         (remote_target::get_remote_state): Adjust.
8694
8695 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8696
8697         * stack.c (select_and_print_frame): Delete.
8698         (struct function_bounds): Move struct within function.
8699         (func_command): Most content moved into new function
8700         find_frame_for_function, use new function, print result, add
8701         function comment.
8702         (find_frame_for_function): New function, now returns a result.
8703
8704 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8705
8706         * stack.c (iterate_over_block_arg_vars): Fix comment.
8707         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8708
8709 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8710
8711         PR gdb/23203
8712         * frame.c
8713         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8714         Define.
8715         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8716         Define.
8717         * frame.h (class scoped_restore_selected_frame): New class.
8718         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8719         of any exception, use scoped_restore_selected_frame to restore the
8720         frame instead.
8721
8722 2018-05-24  Pedro Alves  <palves@redhat.com>
8723
8724         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8725         override.
8726
8727 2018-05-23  Tom Tromey  <tom@tromey.com>
8728
8729         * complaints.c (struct complaints): Remove.
8730         (symfile_complaint_book): Remove.
8731         (series): New global.
8732         (complaint_internal): Update.
8733         (clear_complaints): Update.
8734
8735 2018-05-23  Tom Tromey  <tom@tromey.com>
8736
8737         * complaints.c (counters): New global.
8738         (struct complain): Remove.
8739         (struct complaints) <root>: Remove.
8740         (complaint_sentinel): Remove.
8741         (symfile_complaint_book): Update.
8742         (find_complaint) Remove.
8743         (complaint_internal, clear_complaints): Update.
8744
8745 2018-05-23  Tom Tromey  <tom@tromey.com>
8746
8747         * complaints.c (struct complain) <file, line>: Remove.
8748         (find_complaint): Remove file, line parameters.
8749         (complaint_internal): Update.
8750
8751 2018-05-23  Tom Tromey  <tom@tromey.com>
8752
8753         * complaints.c (vcomplaint): Remove.
8754         (complaint_internal) Merge in contents of vcomplaint.
8755
8756 2018-05-23  Tom Tromey  <tom@tromey.com>
8757
8758         * complaints.c (struct complaints) <explanation>: Remove.
8759         (symfile_explanations): Remove.
8760         (symfile_complaint_book): Update.
8761         (vcomplaint): Update.
8762         (struct explanation): Remove.
8763
8764 2018-05-23  Tom Tromey  <tom@tromey.com>
8765
8766         * complaints.c (symfile_complaints): Remove.
8767         (complaint_internal): Remove "complaints" parameter.
8768         (clear_complaints, vcomplaint): Remove "c" parameter.
8769         (get_complaints): Remove.
8770         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8771         (dwarf2_debug_line_missing_file_complaint)
8772         (dwarf2_debug_line_missing_end_sequence_complaint)
8773         (dwarf2_complex_location_expr_complaint)
8774         (dwarf2_const_value_length_mismatch_complaint)
8775         (dwarf2_section_buffer_overflow_complaint)
8776         (dwarf2_macro_malformed_definition_complaint)
8777         (dwarf2_invalid_attrib_class_complaint)
8778         (create_addrmap_from_index, dw2_symtab_iter_next)
8779         (dw2_expand_marked_cus)
8780         (dw2_debug_names_iterator::find_vec_in_debug_names)
8781         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8782         (create_debug_type_hash_table, init_cutu_and_read_dies)
8783         (partial_die_parent_scope, add_partial_enumeration)
8784         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8785         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8786         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8787         (create_cus_hash_table, create_dwp_hash_table)
8788         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8789         (dwarf2_rnglists_process, dwarf2_ranges_process)
8790         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8791         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8792         (handle_struct_member_die, process_structure_scope)
8793         (read_array_type, read_common_block, read_module_type)
8794         (read_tag_pointer_type, read_typedef, read_base_type)
8795         (read_subrange_type, load_partial_dies, partial_die_info::read)
8796         (partial_die_info::read, partial_die_info::read)
8797         (partial_die_info::read, read_checked_initial_length_and_offset)
8798         (dwarf2_string_attr, read_formatted_entries)
8799         (dwarf_decode_line_header)
8800         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8801         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8802         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8803         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8804         (get_signatured_type, get_DW_AT_signature_type)
8805         (decode_locdesc, file_file_name, consume_improper_spaces)
8806         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8807         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8808         (dwarf2_symbol_mark_computed, set_die_type)
8809         (read_attribute_value): Update.
8810         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8811         Update.
8812         * dbxread.c (unknown_symtype_complaint)
8813         (lbrac_mismatch_complaint, repeated_header_complaint)
8814         (set_namestring, function_outside_compilation_unit_complaint)
8815         (read_dbx_symtab, process_one_symbol): Update.
8816         * gdbtypes.c (stub_noname_complaint): Update.
8817         * windows-nat.c (handle_unload_dll): Update.
8818         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8819         (decode_base_type): Update.
8820         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8821         (eb_complaint, record_include_begin, record_include_end)
8822         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8823         (process_xcoff_symbol, read_symbol)
8824         (function_outside_compilation_unit_complaint)
8825         (scan_xcoff_symtab): Update.
8826         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8827         * buildsym.c (finish_block_internal, make_blockvector)
8828         (end_symtab_get_static_block, augment_type_symtab): Update.
8829         * dtrace-probe.c (dtrace_process_dof)
8830         (dtrace_static_probe_ops::get_probes): Update.
8831         * complaints.h (struct complaint): Don't declare.
8832         (symfile_complaints): Remove.
8833         (complaint_internal): Remove "complaints" parameter.
8834         (complaint): Likewise.
8835         (clear_complaints): Likewise.
8836         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8837         (reread_symbols): Update.
8838         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8839         (dwarf2_frame_cache, decode_frame_entry): Update.
8840         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8841         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8842         (info_selectors_command): Update.
8843         * macrotab.c (macro_include, check_for_redefinition)
8844         (macro_undef): Update.
8845         * objfiles.c (filter_overlapping_sections): Update.
8846         * stabsread.c (invalid_cpp_abbrev_complaint)
8847         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8848         (define_symbol, error_type, read_type, rs6000_builtin_type)
8849         (stabs_method_name_from_physname, read_member_functions)
8850         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8851         (attach_fields_to_type, complain_about_struct_wipeout)
8852         (read_range_type, read_args, common_block_start)
8853         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8854         Update.
8855         * mdebugread.c (index_complaint, unknown_ext_complaint)
8856         (basic_type_complaint, bad_tag_guess_complaint)
8857         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8858         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8859         (parse_procedure, parse_lines)
8860         (function_outside_compilation_unit_complaint)
8861         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8862         (bad_tag_guess_complaint, reg_value_complaint): Update.
8863         * cp-support.c (demangled_name_complaint): Update.
8864         * macroscope.c (sal_macro_scope): Update.
8865         * dwarf-index-write.c (class debug_names): Update.
8866
8867 2018-05-23  Tom Tromey  <tom@tromey.com>
8868
8869         * complaints.c (clear_complaints): Remove "noisy" parameter.
8870         * complaints.h (clear_complaints): Update.
8871         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8872         (reread_symbols): Update.
8873
8874 2018-05-23  Tom Tromey  <tom@tromey.com>
8875
8876         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8877         SUBSEQUENT_MESSAGE.
8878         (vcomplaint, clear_complaints): Update.
8879         (symfile_explanations): Remove some messages.
8880
8881 2018-05-23  Tom Tromey  <tom@tromey.com>
8882
8883         * complaints.c (internal_complaint): Remove.
8884         * complaints.h (internal_complaint): Remove.
8885
8886 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8887
8888         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8889
8890 2018-05-22  Pedro Alves  <palves@redhat.com>
8891
8892         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8893         (remote_fileio_badfd, remote_fileio_return_errno)
8894         (remote_fileio_return_success, remote_fileio_func_open)
8895         (remote_fileio_func_open, remote_fileio_func_close)
8896         (remote_fileio_func_read, remote_fileio_func_write)
8897         (remote_fileio_func_lseek, remote_fileio_func_rename)
8898         (remote_fileio_func_unlink, remote_fileio_func_stat)
8899         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8900         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8901         remote_target parameter.
8902         (remote_fio_func_map) <func>: Add remote_target parameter.
8903         (do_remote_fileio_request, remote_fileio_request):
8904         * remote-fileio.h (remote_fileio_request):
8905         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8906         remote_target parameter.
8907         (remote_notif_process, handle_notification): Adjust to pass down
8908         the remote.
8909         (remote_notif_state_allocate): Add remote_target parameter.  Save
8910         it.
8911         * remote-notif.h (struct remote_target): Forward declare.
8912         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8913         remote_target parameter.
8914         (struct remote_notif_state) <remote>: New field.
8915         (remote_notif_ack, remote_notif_parse): Add remote_target
8916         parameter.
8917         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8918         remote_target parameter.
8919         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8920         (threads_listing_context, rmt_thread_action, protocol_feature)
8921         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8922         (packet_result, struct threads_listing_context, remote_state):
8923         Move definitions and declarations higher up.
8924         (remote_target) <~remote_target>: Declare.
8925         (remote_download_command_source, remote_file_put, remote_file_get)
8926         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8927         (remote_hostio_pread_vFile, remote_hostio_send_command)
8928         (remote_hostio_set_filesystem, remote_hostio_open)
8929         (remote_hostio_close, remote_hostio_unlink, remote_state)
8930         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8931         (get_memory_write_packet_size, get_memory_read_packet_size)
8932         (append_pending_thread_resumptions, remote_detach_1)
8933         (append_resumption, remote_resume_with_vcont)
8934         (add_current_inferior_and_thread, wait_ns, wait_as)
8935         (process_stop_reply, remote_notice_new_inferior)
8936         (process_initial_stop_replies, remote_add_thread)
8937         (btrace_sync_conf, remote_btrace_maybe_reopen)
8938         (remove_new_fork_children, kill_new_fork_children)
8939         (discard_pending_stop_replies, stop_reply_queue_length)
8940         (check_pending_events_prevent_wildcard_vcont)
8941         (discard_pending_stop_replies_in_queue, stop_reply)
8942         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8943         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8944         (remote_interrupt_as, remote_interrupt_ns)
8945         (remote_get_noisy_reply, remote_query_attached)
8946         (remote_add_inferior, remote_current_thread, get_current_thread)
8947         (set_thread, set_general_thread, set_continue_thread)
8948         (set_general_process, write_ptid)
8949         (remote_unpack_thread_info_response, remote_get_threadinfo)
8950         (parse_threadlist_response, remote_get_threadlist)
8951         (remote_threadlist_iterator, remote_get_threads_with_ql)
8952         (remote_get_threads_with_qxfer)
8953         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8954         (get_offsets, remote_check_symbols, remote_supported_packet)
8955         (remote_query_supported, remote_packet_size)
8956         (remote_serial_quit_handler, remote_detach_pid)
8957         (remote_vcont_probe, remote_resume_with_hc)
8958         (send_interrupt_sequence, interrupt_query)
8959         (remote_notif_get_pending_events, fetch_register_using_p)
8960         (send_g_packet, process_g_packet, fetch_registers_using_g)
8961         (store_register_using_P, store_registers_using_G)
8962         (set_remote_traceframe, check_binary_download)
8963         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8964         (remote_xfer_live_readonly_partial, remote_read_bytes)
8965         (remote_send_printf, remote_flash_write, readchar)
8966         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8967         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8968         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8969         (extended_remote_disable_randomization, extended_remote_run)
8970         (send_environment_packet, extended_remote_environment_support)
8971         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8972         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8973         (packet_command): Now methods of ...
8974         (remote_target): ... this class.
8975         (m_remote_state) <remote_target>: New field.
8976         (struct remote_state) <stop_reply_queue,
8977         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8978         fields.
8979         (remote_state::remote_state): Allocate stop_reply_queue.
8980         (remote_state): Delete global.
8981         (get_remote_state_raw): Delete.
8982         (remote_target::get_remote_state): Allocate m_remote_state on
8983         demand.
8984         (get_current_remote_target): New.
8985         (remote_ops, extended_remote_ops): Delete.
8986         (wait_forever_enabled_p, remote_async_inferior_event_token):
8987         Delete, moved to struct remote_state.
8988         (remote_target::close): Delete self.  Destruction bits split to
8989         ...
8990         (remote_target::~remote_target): ... this.
8991         (show_memory_packet_size): Adjust to use
8992         get_current_remote_target.
8993         (struct protocol_feature) <func>: Add remote_target parameter.
8994         All callers adjusted.
8995         (curr_quit_handler_target): New.
8996         (remote_serial_quit_handler): Reimplement.
8997         (remote_target::open_1): Adjust to use get_current_remote_target.
8998         Heap-allocate remote_target/extended_remote_target instances.
8999         (vcont_builder::vcont_builder): Add remote_target parameter, and
9000         save it in m_remote.  All callers adjusted.
9001         (vcont_builder::m_remote): New field.
9002         (vcont_builder::restart, vcont_builder::flush)
9003         (vcont_builder::push_action): Use it.
9004         (remote_target::commit_resume): Use it.
9005         (struct queue_iter_param) <remote>: New field.
9006         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9007         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9008         (check_pending_event_prevents_wildcard_vcont_callback)
9009         (remote_target::check_pending_events_prevent_wildcard_vcont)
9010         (remote_target::discard_pending_stop_replies)
9011         (remote_target::discard_pending_stop_replies_in_queue)
9012         (remote_target::remote_notif_remove_queued_reply): Fill in
9013         'remote' field.
9014         (remote_notif_get_pending_events): New.
9015         (remote_target::readchar, remote_target::remote_serial_write):
9016         Save/restore curr_quit_handler_target.
9017         (putpkt): New.
9018         (kill_new_fork_children): Fill in 'remote' field.
9019         (packet_command): Use get_current_remote_target, defer to
9020         remote_target method of same name.
9021         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9022         parameter, and save it in m_remote.  All callers adjusted.
9023         (scoped_remote_fd::release): Use m_remote.
9024         (scoped_remote_fd::m_remote): New field.
9025         (remote_file_put, remote_file_get, remote_file_delete): Use
9026         get_current_remote_target, defer to remote_target method of same
9027         name.
9028         (remote_btrace_reset): Add remote_state paremeter.  Update all
9029         callers.
9030         (remote_async_inferior_event_handler). Pass down 'data'.
9031         (remote_new_objfile): Use get_current_remote_target.
9032         (remote_target::vcont_r_supported): New.
9033         (set_range_stepping): Use get_current_remote_target and
9034         remote_target::vcont_r_supported.
9035         (_initialize_remote): Don't allocate 'remote_state' and
9036         'stop_reply_queue' globals.
9037         * remote.h (struct remote_target): Forward declare.
9038         (getpkt, putpkt, remote_notif_get_pending_events): Add
9039         'remote_target' parameter.
9040
9041 2018-05-22  Pedro Alves  <palves@redhat.com>
9042
9043         * remote.c (vcont_builder): Now a class.  Make all data members
9044         private.
9045         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9046         Declare methods.
9047         (vcont_builder_restart): Rename to ...
9048         (vcont_builder::restart): ... this.
9049         (vcont_builder_flush): Rename to ...
9050         (vcont_builder::flush): ... this.
9051         (vcont_builder_push_action): Rename to ...
9052         (vcont_builder::push_action): ... this.
9053         (remote_target::commit_resume): Adjust.
9054
9055 2018-05-22  Pedro Alves  <palves@redhat.com>
9056
9057         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9058         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9059         (get_fixed_memory_packet_size): New.
9060         (get_memory_packet_size): Use it.
9061         (set_memory_packet_size): Don't override the config size with
9062         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9063         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9064         Don't refer to get_memory_packet_size if not connected to a remote
9065         target.  Show "(default)" if configured size is 0.
9066
9067 2018-05-22  Pedro Alves  <palves@redhat.com>
9068
9069         * remote.c (remote_target::mourn_inferior): Move
9070         discard_pending_stop_replies call here from ...
9071         (_initialize_remote): ... here.
9072
9073 2018-05-22  Pedro Alves  <palves@redhat.com>
9074
9075         * remote.c (compare_section_command): Remove set_general_process
9076         call.
9077
9078 2018-05-22  Pedro Alves  <palves@redhat.com>
9079
9080         * remote.c (struct packet_reg, struct remote_arch_state):
9081         Move higher up in the file.
9082         (remote_state) <m_arch_states>: Store remote_arch_state values
9083         instead of remote_arch_state pointers.
9084         (remote_state::get_remote_arch_state): Adjust.
9085
9086 2018-05-22  Pedro Alves  <palves@redhat.com>
9087
9088         * remote.c: Include <unordered_map>.
9089         (remote_state): Now a class.
9090         (remote_state) <get_remote_arch_state>: Declare method.
9091         <get_remote_arch_state>: New field.
9092         (remote_arch_state) <remote_arch_state>: Declare ctor.
9093         <regs>: Now a unique_ptr.
9094         (remote_gdbarch_data_handle): Delete.
9095         (get_remote_arch_state): Delete.
9096         (remote_state::get_remote_arch_state): New.
9097         (get_remote_state): Adjust to call remote_state's
9098         get_remote_arch_state method.
9099         (init_remote_state): Delete, bits factored out to ...
9100         (remote_arch_state::remote_arch_state): ... this new method.
9101         (get_remote_packet_size, get_memory_packet_size)
9102         (process_g_packet, remote_target::fetch_registers)
9103         (remote_target::prepare_to_store, store_registers_using_G)
9104         (remote_target::store_registers, remote_target::get_trace_status):
9105         Adjust to call remote_state's method.
9106         (_initialize_remote): Remove reference to
9107         remote_gdbarch_data_handle.
9108
9109 2018-05-22  Pedro Alves  <palves@redhat.com>
9110
9111         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9112         pread>: New method declarations.
9113         (remote_target::open_1): Adjust.
9114         (readahead_cache_invalidate): Rename to ...
9115         (readahead_cache::invalidate): ... this, and adjust to be a class
9116         method.
9117         (readahead_cache_invalidate_fd): Rename to ...
9118         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9119         class method.
9120         (remote_hostio_pwrite): Adjust.
9121         (remote_hostio_pread_from_cache): Rename to ...
9122         (readahead_cache::pread): ... this, and adjust to be a class
9123         method.
9124         (remote_hostio_close): Adjust.
9125
9126 2018-05-22  Pedro Alves  <palves@redhat.com>
9127
9128         * remote.c (remote_hostio_close_cleanup): Delete.
9129         (class scoped_remote_fd): New.
9130         (remote_file_put, remote_file_get): Use it.
9131
9132 2018-05-22  Pedro Alves  <palves@redhat.com>
9133
9134         (struct vCont_action_support): Use bool and initialize all fields.
9135         (struct readahead_cache): Initialize all fields.
9136         (remote_state): Use bool and initialize all fields.
9137         (remote_state::remote_state, remote_state::~remote_state): New.
9138         (new_remote_state): Delete.
9139         (_initialize_remote): Use new to allocate remote_state.
9140
9141 2018-05-22  Pedro Alves  <palves@redhat.com>
9142             張俊芝  <zjz@zjz.name>
9143
9144         PR gdb/22973
9145         * c-exp.y: Include "c-support.h".
9146         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9147         of tolower.  Use c_ident_is_alpha to scan names.
9148         * c-lang.c: Include "c-support.h".
9149         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9150         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9151         * c-support.h: New file, with bits factored out from ...
9152         * cp-name-parser.y: ... this file.
9153         Include "c-support.h".
9154         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9155         c-support.h and renamed.
9156         (symbol_end, yylex): Adjust.
9157
9158 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9159
9160         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9161         parameter type to CORE_ADDR.
9162         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9163         parameter type in declaration to CORE_ADDR.
9164         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9165         target_auxv_search to get AT_HWCAP and use the result to get the
9166         target description.
9167         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9168         to CORE_ADDR. Remove the cast of the return value to unsigned
9169         long. Fix error predicate of target_auxv_search.
9170         (ppc_linux_nat_target::read_description): Change the type of the
9171         hwcap variable to CORE_ADDR.
9172
9173 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9174
9175         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9176         if the size of fpscr is larger than 32 bits.
9177
9178 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9179
9180         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9181         (ppc32_linux_vsxregmap): New global.
9182         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9183         regcache_supply_regset, and regcache_collect_regset.
9184         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9185         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9186         (fetch_vsx_register, store_vsx_register): Remove.
9187         (fetch_vsx_registers): Add regno parameter. Get regset using
9188         ppc_linux_vsxregset. Use regset to supply registers.
9189         (store_vsx_registers): Add regno parameter. Get regset using
9190         ppc_linux_vsxregset. Use regset to collect registers.
9191         (fetch_register): Call fetch_vsx_registers instead of
9192         fetch_vsx_register.
9193         (store_register): Call store_vsx_registers instead of
9194         store_vsx_register.
9195         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9196         new regno parameter.
9197         (store_ppc_registers): Call store_vsx_registers with -1 for the
9198         new regno parameter.
9199         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9200         (ppc_collect_vsxregset): Remove.
9201
9202 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9203
9204         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9205         offset fields.
9206         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9207         for vector register offset fields.
9208         (ppc64_fbsd_reg_offsets): Likewise.
9209         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9210         to vector register offset fields.
9211         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9212         to vector register offset fields.
9213         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9214         vector register offset fields.
9215         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9216         initializers for vector register offset fields.
9217         (rs6000_aix64_reg_offsets): Likewise.
9218         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9219         (ppc_supply_vrregset): Remove.
9220         (ppc_collect_vrregset): Remove.
9221         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9222         (ppc_linux_vrregset) : New function.
9223         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9224         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9225         (ppc32_linux_vrregset): Remove.
9226         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9227         and use result instead of ppc32_linux_vrregset.
9228         (ppc32_linux_reg_offsets): Remove initializers for vector register
9229         offset fields.
9230         (ppc64_linux_reg_offsets): Likewise.
9231         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9232         * ppc-linux-nat.c: Include regset.h.
9233         (gdb_vrregset_t): Adjust comment to account for little-endian
9234         mode.
9235         (supply_vrregset, fill_vrregset): Remove.
9236         (fetch_altivec_register, store_altivec_register): Remove.
9237         (fetch_altivec_registers): Add regno parameter. Get regset using
9238         ppc_linux_vrregset. Use regset to supply registers.
9239         (store_altivec_registers): Add regno parameter. Get regset using
9240         ppc_linux_vrregset. Use regset to collect registers.
9241         (fetch_register): Call fetch_altivec_registers instead of
9242         fetch_altivec_register.
9243         (store_register): Call store_altivec_registers instead of
9244         store_altivec_register.
9245         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9246         the new regno parameter.
9247         (store_ppc_registers): Call store_altivec_registers with -1 for
9248         the new regno parameter.
9249
9250 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9251
9252         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9253         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9254         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9255         (gdb_vrregset_t): Change array type size to
9256         PPC_LINUX_SIZEOF_VRREGSET.
9257         (gdb_vsxregset_t): Change array type size to
9258         PPC_LINUX_SIZEOF_VSXREGSET.
9259         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9260         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9261         PPC_LINUX_SIZEOF_VSXREGSET.
9262
9263 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9264
9265         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9266         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9267         nat/ppc-linux.c.
9268         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9269         ppc_linux_target_wordsize with tid.
9270         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9271         wordsize with tid.
9272         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9273         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9274         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9275         tid parameter. Remove static specifier.
9276         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9277         (ppc_linux_target_wordsize): New declaration.
9278
9279 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9280
9281         * arch/ppc-linux-common.c: New file.
9282         * arch/ppc-linux-common.h: New file.
9283         * arch/ppc-linux-tdesc.h: New file.
9284         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9285         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9286         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9287         arch/ppc-linux-tdesc.h.
9288         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9289         arch/ppc-linux-tdesc.h.
9290         (ppc_linux_nat_target::read_description): Remove target
9291         description matching code. Fill a ppc_linux_features struct and
9292         call ppc_linux_match_description with it. Move comment about ISA
9293         2.05 to ppc-linux-common.c.
9294         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9295         arch/ppc-linux-tdesc.h.
9296         (ppc_linux_core_read_description): Remove target description
9297         matching code. Fill a ppc_linux_features struct and call
9298         ppc_linux_match_description with it.
9299         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9300         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9301         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9302         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9303         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9304         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9305         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9306         (tdesc_powerpc_e500l): Remove.
9307
9308 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9309
9310         * ada-lang.c (catch_assert_command): Pass empty string instead
9311         of NULL for excep_string argument.
9312
9313 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9314
9315         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9316         the width of the requested register exceeds the width of the
9317         `ptrace' data type.
9318
9319 2018-05-21  Tom Tromey  <tom@tromey.com>
9320
9321         * printcmd.c (output_command): Remove.
9322         (output_command_const): Rename to output_command.
9323         * valprint.h (output_command): Rename from output_command_const.
9324         * tracepoint.c (trace_dump_actions): Call output_command.
9325
9326 2018-05-21  Tom Tromey  <tom@tromey.com>
9327
9328         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9329         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9330         * ada-lang.h (create_ada_exception_catchpoint): Update.
9331         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9332         std::string.
9333         (create_excep_cond_exprs, ~ada_catchpoint)
9334         (should_stop_exception, print_one_exception)
9335         (print_mention_exception, print_recreate_exception): Update.
9336         (ada_get_next_arg): Remove.
9337         (catch_ada_exception_command_split): Use std::string.  Change type
9338         of "excep_string", "cond_string".
9339         (catch_ada_exception_command): Update.
9340         (create_ada_exception_catchpoint): Change type of excep_string.
9341         (ada_exception_sal): Remove excep_string parameter.
9342         (~ada_catchpoint): Remove.
9343
9344 2018-05-21  Tom Tromey  <tom@tromey.com>
9345
9346         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9347         cleanup.
9348
9349 2018-05-21  Tom Tromey  <tom@tromey.com>
9350
9351         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9352         Return unique_xmalloc_ptr.
9353         (print_it_exception): Update.
9354
9355 2018-05-21  Tom Tromey  <tom@tromey.com>
9356
9357         * tracepoint.c (trace_dump_actions): Use std::string.
9358
9359 2018-05-21  Tom Tromey  <tom@tromey.com>
9360
9361         * symfile.c (reread_symbols): Use std::string for original_name.
9362
9363 2018-05-21  Tom Tromey  <tom@tromey.com>
9364
9365         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9366         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9367         constructor.
9368
9369 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9370
9371         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9372         instance to...
9373         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9374         * objfiles.c (get_objfile_bfd_data): Allocate
9375         objfile_per_bfd_storage with obstack_new when allocating on
9376         obstack.
9377
9378 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9379
9380         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9381         OBSTACK_ZALLOC.
9382         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9383         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9384         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9385         (add_pending): Likewise.
9386         (parse_symbol): Likewise.
9387         (parse_partial_symbols): Likewise.
9388         (psymtab_to_symtab_1): Likewise.
9389         (new_psymtab): Likewise.
9390         (elfmdebug_build_psymtabs): Likewise.
9391         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9392         * objfiles.c (get_objfile_bfd_data): Likewise.
9393         (objfile_register_static_link): Likewise.
9394         * psymtab.c (allocate_psymtab): Likewise.
9395         * stabsread.c (read_member_functions): Likewise.
9396         * xcoffread.c (xcoff_end_psymtab): Likewise.
9397
9398 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9399
9400         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9401         compiler supports std::is_trivially_constructible.
9402         * common/poison.h: Include obstack.h.
9403         (IsMallocable): Define to is_trivially_constructible if the
9404         compiler supports it, define to true_type otherwise.
9405         (xobnew): New.
9406         (XOBNEW): Redefine.
9407         (xobnewvec): New.
9408         (XOBNEWVEC): Redefine.
9409         * gdb_obstack.h (obstack_zalloc): New.
9410         (OBSTACK_ZALLOC): Redefine.
9411         (obstack_calloc): New.
9412         (OBSTACK_CALLOC): Redefine.
9413         (obstack_new): New.
9414         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9415         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9416         gdbarch.c.
9417         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9418         obstack_calloc/obstack_zalloc.
9419         (gdbarch_obstack_zalloc): Remove.
9420         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9421
9422 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9423
9424         * stack.c (backtrace_command_1): Remove useless variable int i.
9425
9426 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9427
9428         * stack.c (print_frame_info): Fix comment.
9429
9430 2018-05-18  Tom Tromey  <tom@tromey.com>
9431
9432         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9433         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9434         (~dwarf2_per_objfile): Update
9435         (dwarf2_get_dwz_file): Use new.
9436         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9437         unique_ptr.
9438
9439 2018-05-18  Tom Tromey  <tom@tromey.com>
9440
9441         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9442         unique_ptr.
9443         * dwarf2read.c (struct dwp_file): Add constructor and
9444         initializers.
9445         (open_and_init_dwp_file): Return a unique_ptr.
9446         (dwarf2_per_objfile, create_dwp_hash_table)
9447         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9448         (lookup_dwo_unit_in_dwp): Update.
9449         (open_and_init_dwp_file, get_dwp_file): Update.
9450
9451 2018-05-18  Tom Tromey  <tom@tromey.com>
9452
9453         * dwarf2read.c (dwarf2_per_objfile): Update.
9454         (struct mapped_index): Add initializers.
9455         (dwarf2_read_index): Use new.
9456         (dw2_symtab_iter_init): Update.
9457         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9458         unique_ptr.
9459
9460 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9461
9462         * dwarf2read.c (mapped_index) <total_size>: Remove.
9463
9464 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9465
9466         * unittests/format_pieces-selftests.c (test_format_specifier):
9467         Add ARI comments.
9468
9469 2018-05-18  Tom Tromey  <tom@tromey.com>
9470
9471         * c-typeprint.c (maybe_print_hole): New function.
9472         (c_print_type_struct_field_offset): Update.
9473         (c_type_print_base_struct_union): Call maybe_print_hole.
9474
9475 2018-05-17  Keith Seitz  <keiths@redhat.com>
9476
9477         * breakpoint.c (build_bpstat_chain): New function, moved from
9478         bpstat_stop_status.
9479         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9480         If no stop chain is passed, call build_bpstat_chain to build it.
9481         * breakpoint.h (build_bpstat_chain): Declare.
9482         (bpstat_stop_status): Move documentation here from breakpoint.c.
9483         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9484         build the stop chain and pass it to skip_inline_frames.
9485         Pass this stop chain to bpstat_stop_status.
9486         * inline-frame.c: Include breakpoint.h.
9487         (stopped_by_user_bp_inline_frame): New function.
9488         (skip_inline_frames): Add parameter `stop_chain'.
9489         Move documention to inline-frame.h.
9490         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9491         whether the frame should be elided.
9492         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9493         Add moved documentation and update for new parameter.
9494
9495 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9496
9497         PR cli/14975
9498         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9499         unittests/format_pieces-selftests.c.
9500         * common/format.h (format_piece) <operator==>: New.
9501         (format_pieces) <operator[]>: Remove.
9502         * common/format.c (format_pieces::format_pieces): Handle \e.
9503         * unittests/format_pieces-selftests.c: New.
9504
9505 2018-05-17  Tom Tromey  <tom@tromey.com>
9506
9507         PR symtab/23010:
9508         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9509         (dw2_instantiate_symtab): Add skip_partial parameter.
9510         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9511         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9512         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9513         (dw2_expand_symtabs_matching_one)
9514         (dw2_find_pc_sect_compunit_symtab)
9515         (dw2_debug_names_lookup_symbol)
9516         (dw2_debug_names_expand_symtabs_for_function): Update.
9517         (init_cutu_and_read_dies): Add skip_partial parameter.
9518         (process_psymtab_comp_unit, build_type_psymtabs_1)
9519         (process_skeletonless_type_unit, load_partial_comp_unit)
9520         (psymtab_to_symtab_1): Update.
9521         (load_full_comp_unit): Add skip_partial parameter.
9522         (process_imported_unit_die, dwarf2_read_addr_index)
9523         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9524         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9525         (read_signatured_type): Update.
9526
9527 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9528
9529         * value.c (release_value): Remove unused variable.
9530         (record_latest_value): Likewise.
9531         (access_value_history): Likewise.
9532         (preserve_values): Likewise.
9533
9534 2018-05-17  Tom Tromey  <tom@tromey.com>
9535
9536         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9537         Initialize.
9538
9539 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9540
9541         PR gdb/22286
9542         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9543         Also handle registers whose width is not a multiple of
9544         PTRACE_TYPE_RET.
9545         (linux_nat_trad_target::store_register): Likewise.
9546
9547 2018-05-16  Tom Tromey  <tom@tromey.com>
9548
9549         * gdbcore.h (core_bfd): Redefine.
9550         * corelow.c (core_target::close): Update.
9551         (core_target_open): Update.
9552         * progspace.h (struct program_space) <cbfd>: Now a
9553         gdb_bfd_ref_ptr.
9554
9555 2018-05-16  Tom Tromey  <tom@tromey.com>
9556
9557         PR cli/19551:
9558         * symfile-add-flags.h (enum symfile_add_flags)
9559         <SYMFILE_NOT_FILENAME>: New constant.
9560         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9561         objfile name from BFD.
9562         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9563         * minidebug.c (find_separate_debug_file_in_section): Put
9564         ".gnu_debugdata" into BFD's file name.
9565
9566 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9567
9568         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9569         Remove.
9570
9571 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9572
9573         PR binutils/21446
9574         * aarch64-tdep.c (aarch64_analyze_prologue,
9575         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9576         Indicate not interested in errors.
9577
9578 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9579
9580         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9581         Supply the MIPS_ZERO_REGNUM register.
9582
9583 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9584
9585         * mips-tdep.c (mask_address_var): Make variable static.
9586
9587 2018-05-14  Tom Tromey  <tom@tromey.com>
9588
9589         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9590
9591 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9592
9593         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9594         FXSAVE_ADDR for the mxcsr register.
9595
9596 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9597
9598         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9599
9600 2018-05-11  Pedro Alves  <palves@redhat.com>
9601
9602         * corelow.c (core_target) <core_target>: No longer inline.
9603         Initialize m_core_gdbarch, m_core_vec and build the section table
9604         here.
9605         <~core_target>: New.
9606         <core_gdbarch, get_core_register_section>: New methods.
9607         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9608         factored out from ...
9609         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9610         (core_ops): Delete.
9611         (sniff_core_bfd): Add gdbarch parameter.
9612         (core_close): Delete, merged into ...
9613         (core_target::close): ... here.  Delete self.
9614         (core_close_cleanup): Delete.
9615         (core_target_open): Allocate a core_target on the heap.  Use a
9616         unique_ptr instead of a cleanup.  Bits moved into the core_target
9617         ctor.  Adjust to use core_target methods instead of globals.
9618         (get_core_register_section): Rename to ...
9619         (core_target::get_core_register_section): ... this and adjust.
9620         (struct get_core_registers_cb_data): New.
9621         (get_core_registers_cb): Use it.  Use bool.
9622         (core_target::fetch_registers, core_target::files_info)
9623         (core_target::xfer_partial, core_target::read_description)
9624         (core_target::pid_to, core_target::thread_name): Adjust to
9625         reference class fields instead of globals.
9626         * target.h (struct target_ops_deleter, target_ops_up): New.
9627
9628 2018-05-11  Pedro Alves  <palves@redhat.com>
9629
9630         * corefile.c (core_file_command): Move to corelow.c.
9631         * corelow.c (the_core_target): Delete.
9632         (core_file_command): Moved from corefile.c.  Check exec_bfd
9633         instead of the_core_target.  Use target_detach instead of calling
9634         into the_core_target directly.
9635         (maybe_say_no_core_file_now): New.
9636         (core_target::detach): Use it.
9637         (_initialize_corelow): Remove references to the_core_target.
9638         * gdbcore.h (the_core_target): Delete.
9639
9640 2018-05-11  Tom Tromey  <tromey@redhat.com>
9641             Pedro Alves  <palves@redhat.com>
9642
9643         * corefile.c (core_bfd): Remove.
9644         * gdbcore.h (core_bfd): Now a macro.
9645         * progspace.h (struct program_space) <cbfd>: New field.
9646
9647 2018-05-11  Tom Tromey  <tom@tromey.com>
9648
9649         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9650         gdb::def_vector.
9651
9652 2018-05-10  Tom Tromey  <tom@tromey.com>
9653
9654         * configure: Rebuild.
9655         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9656
9657 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9658
9659         PR server/23158:
9660         * regformats/regdat.sh: Adjust script, following the addition
9661         of the new expedite_regs parameter to init_target_desc.
9662
9663 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9664     
9665         PR gdb/23127
9666         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9667         set_gdbarch_significant_addr_bit.
9668         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9669         set_gdbarch_significant_addr_bit.
9670         * utils.c (address_significant): Update to sign extend addr.
9671
9672 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9673
9674         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9675         (xtensa_linux_init_abi): Limit tdep->num_regs by
9676         tdep->num_nopriv_regs.
9677         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9678         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9679         not initialized.
9680
9681 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9682
9683         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9684
9685 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9686
9687         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9688         (I387_MXCSR_INIT_VAL): New constant.
9689         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9690         buffer if it was supplied by the inferior.
9691         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9692         (i387_xsave_get_clear_bv): New function.
9693         (i387_supply_xsave): Only read x87 control registers from the
9694         xsave buffer if the feature is enabled, and the state will have
9695         been written, otherwise, provide a suitable default.
9696         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9697         including x87 control registers.  Update control registers if they
9698         have changed from the default value, and mark features as enabled
9699         as required.
9700         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9701
9702 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9703
9704         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9705
9706 2018-05-07  Tom Tromey  <tom@tromey.com>
9707
9708         * configure: Rebuild.
9709         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9710
9711 2018-05-07  Tom Tromey  <tom@tromey.com>
9712
9713         PR tdep/20362:
9714         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9715         bit.  Use correct value for VDIV.
9716
9717 2018-05-04  Tom Tromey  <tom@tromey.com>
9718
9719         * configure: Rebuild.
9720         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9721
9722 2018-05-04  Tom Tromey  <tom@tromey.com>
9723
9724         * linux-record.c (record_linux_system_call) <case
9725         RECORD_SYS_RECVFROM>: Add "break".
9726
9727 2018-05-04  Tom Tromey  <tom@tromey.com>
9728
9729         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9730         Add missing "break".
9731         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9732         Add missing "break".
9733
9734 2018-05-04  Tom Tromey  <tom@tromey.com>
9735
9736         * rs6000-tdep.c (ppc_process_record_op4)
9737         (ppc_process_record_op63): Add fall-through comment.
9738
9739 2018-05-04  Tom Tromey  <tom@tromey.com>
9740
9741         * i386-tdep.c (i386_process_record): Add fall-through comment.
9742
9743 2018-05-04  Tom Tromey  <tom@tromey.com>
9744
9745         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9746         comment.
9747
9748 2018-05-04  Tom Tromey  <tom@tromey.com>
9749
9750         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9751         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9752         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9753         comment.
9754         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9755         comment.
9756         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9757         comment.
9758
9759 2018-05-04  Tom Tromey  <tom@tromey.com>
9760
9761         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9762
9763 2018-05-04  Tom Tromey  <tom@tromey.com>
9764
9765         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9766         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9767         * symfile.c (section_is_mapped): Fix fall-through comment.
9768         * stabsread.c (define_symbol, read_member_functions): Fix
9769         fall-through comment.
9770         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9771         comment.
9772         * remote.c (remote_wait_as): Fix fall-through comment.
9773         * p-exp.y (yylex): Fix fall-through comment.
9774         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9775         comment.
9776         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9777         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9778         * jv-exp.y (yylex): Fix fall-through comment.
9779         * go-exp.y (lex_one_token): Fix fall-through comment.
9780         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9781         fall-through comment.
9782         * f-exp.y (yylex): Fix fall-through comment.
9783         * dwarf2read.c (process_die): Fix fall-through comments.
9784         * dbxread.c (process_one_symbol): Fix fall-through comment.
9785         * d-exp.y (lex_one_token): Fix fall-through comment.
9786         * cp-name-parser.y (yylex): Fix fall-through comment.
9787         * coffread.c (coff_symtab_read): Fix fall-through comment.
9788         * c-exp.y (lex_one_token): Fix fall-through comment.
9789         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9790         comment.
9791         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9792         comment.
9793
9794 2018-05-04  Tom Tromey  <tom@tromey.com>
9795
9796         PR python/22730:
9797         * NEWS: Mention gdb.execute change.
9798         * gdbcmd.h (execute_control_command): Don't declare.
9799         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9800         execute_control_commands, execute_control_commands_to_string.
9801         * cli/cli-script.h (execute_control_commands)
9802         (execute_control_commands_to_string): Declare.
9803         (execute_control_command): Add from_tty parameter.
9804         * cli/cli-script.c (execute_control_commands)
9805         (execute_control_commands_to_string): New functions.
9806         (execute_user_command): Use execute_control_commands.
9807         (execute_control_command_1): Add "from_tty" parameter.  Update.
9808         (execute_control_command): Likewise.
9809
9810 2018-05-04  Tom Tromey  <tom@tromey.com>
9811
9812         PR python/22731:
9813         * NEWS: Mention that breakpoint commands are writable.
9814         * python/py-breakpoint.c (bppy_set_commands): New function.
9815         (breakpoint_object_getset) <"commands">: Use it.
9816
9817 2018-05-04  Tom Tromey  <tom@tromey.com>
9818
9819         * tracepoint.c (actions_command): Update.
9820         * mi/mi-cmd-break.c (mi_command_line_array)
9821         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9822         (mi_read_next_line): Remove.
9823         (mi_cmd_break_commands): Update.
9824         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9825         function_view.
9826         * cli/cli-script.c (get_command_line): Update.
9827         (process_next_line): Use function_view.  Constify.
9828         (recurse_read_control_structure, read_command_lines)
9829         (read_command_lines_1): Change argument types to function_view.
9830         (do_define_command, document_command): Update.
9831         * breakpoint.h (check_tracepoint_command): Don't declare.
9832         * breakpoint.c (check_tracepoint_command): Remove.
9833         (commands_command_1, create_tracepoint_from_upload): Update.
9834
9835 2018-05-04  Tom Tromey  <tom@tromey.com>
9836
9837         PR gdb/11750:
9838         * cli/cli-script.h (enum command_control_type) <define_control>:
9839         New constant.
9840         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9841         (build_command_line, execute_control_command_1)
9842         (process_next_line): Likewise.
9843         (do_define_command): New function, extracted from define_command.
9844         (define_command): Use it.
9845
9846 2018-05-04  Tom Tromey  <tom@tromey.com>
9847
9848         * tracepoint.c (actions_command): Update.
9849         * cli/cli-script.h (read_command_lines): Update.
9850         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9851         (MAX_TMPBUF): Remove define.
9852         (define_command): Use string_printf.
9853         (document_command): Likewise.
9854         * breakpoint.c (commands_command_1): Update.
9855
9856 2018-05-04  Tom Tromey  <tom@tromey.com>
9857
9858         * top.c (execute_command): Update.
9859         * cli/cli-script.h (print_command_lines): Now varargs.
9860         * cli/cli-script.c (print_command_lines): Now varargs.
9861         (execute_control_command_1) <case while_control, case if_control>:
9862         Update.
9863
9864 2018-05-04  Tom Tromey  <tom@tromey.com>
9865
9866         * tracepoint.c (all_tracepoint_actions): Rename from
9867         all_tracepoint_actions_and_cleanup.  Change return type.
9868         (actions_command, encode_actions_1, encode_actions)
9869         (trace_dump_actions, tdump_command): Update.
9870         * remote.c (remote_download_command_source): Update.
9871         * python/python.c (gdbpy_eval_from_control_command)
9872         (python_command, python_interactive_command): Update.
9873         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9874         * guile/guile.c (guile_command)
9875         (gdbscm_eval_from_control_command, guile_command): Update.
9876         * compile/compile.c (compile_code_command)
9877         (compile_print_command, compile_to_object): Update.
9878         * cli/cli-script.h (struct command_lines_deleter): New.
9879         (counted_command_line): New typedef.
9880         (struct command_line): Add constructor, destructor.
9881         <body_list>: Remove.
9882         <body_list_0, body_list_1>: New members.
9883         (command_line_up): Remove typedef.
9884         (read_command_lines, read_command_lines_1, get_command_line):
9885         Update.
9886         (copy_command_lines): Don't declare.
9887         * cli/cli-script.c (build_command_line): Use "new".
9888         (get_command_line): Return counted_command_line.
9889         (print_command_lines, execute_user_command)
9890         (execute_control_command_1, while_command, if_command): Update.
9891         (realloc_body_list): Remove.
9892         (process_next_line, recurse_read_control_structure): Update.
9893         (read_command_lines, read_command_lines_1): Return counted_command_line.
9894         (free_command_lines): Use "delete".
9895         (copy_command_lines): Remove.
9896         (define_command, document_command, show_user_1): Update.
9897         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9898         a counted_command_line.
9899         * breakpoint.h (counted_command_line): Remove typedef.
9900         (breakpoint_set_commands): Update.
9901         * breakpoint.c (check_no_tracepoint_commands)
9902         (validate_commands_for_breakpoint): Update.
9903         (breakpoint_set_commands): Change commands to be a
9904         counted_command_line.
9905         (commands_command_1, update_dprintf_command_list)
9906         (create_tracepoint_from_upload): Update.
9907
9908 2018-05-04  Tom Tromey  <tom@tromey.com>
9909
9910         * cli/cli-decode.h (cmd_list_element): New constructor.
9911         (~cmd_list_element): New destructor.
9912         (struct cmd_list_element): Add initializers.
9913         * cli/cli-decode.c (do_add_cmd): Use "new".
9914         (delete_cmd): Use "delete".
9915
9916 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9917             Pedro Alves <palves@redhat.com>
9918
9919         PR breakpoints/19806 and support for PR external/20207.
9920         * NEWS: Mention Aarch64 watchpoint improvements.
9921         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9922         watchpoints and PR external/20207 watchpoints.
9923         * nat/aarch64-linux-hw-point.c
9924         (kernel_supports_any_contiguous_range): New.
9925         (aarch64_watchpoint_offset): New.
9926         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9927         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9928         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9929         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9930         next_addr_orig_p.  Support PR external/20207 watchpoints.
9931         (aarch64_downgrade_regs): New.
9932         (aarch64_dr_state_insert_one_point): New parameters offset and
9933         addr_orig.
9934         (aarch64_dr_state_remove_one_point): Likewise.
9935         (aarch64_handle_breakpoint): Update caller.
9936         (aarch64_handle_aligned_watchpoint): Likewise.
9937         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9938         aligned_offset.
9939         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9940         aarch64_downgrade_regs.
9941         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9942         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9943         (DR_CONTROL_MASK): ... this.
9944         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9945         (unsigned int aarch64_watchpoint_offset): New prototype.
9946         (aarch64_linux_set_debug_regs): Remove const from state.
9947         * utils.c (align_up, align_down): Move to ...
9948         * common/common-utils.c (align_up, align_down): ... here.
9949         * utils.h (align_up, align_down): Move to ...
9950         * common/common-utils.h (align_up, align_down): ... here.
9951
9952 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9953
9954         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9955         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9956         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9957         Re-implement to match the ABI as summarized in GCC's
9958         gcc/config/sparc/sparc.c.  All callers updated.
9959         (sparc32_store_arguments): Remove assertion.
9960
9961 2018-05-04  Tom Tromey  <tom@tromey.com>
9962
9963         * printcmd.c: Don't include tui.h.
9964         (decode_format): Use skip_spaces.
9965
9966 2018-05-04  Tom Tromey  <tom@tromey.com>
9967
9968         PR gdb/22619:
9969         * printcmd.c (last_count): New global.
9970         (x_command): Use saved count when repeating.
9971
9972 2018-05-04  Tom Tromey  <tom@tromey.com>
9973
9974         * nto-procfs.c (do_closedir_cleanup): Remove.
9975         (procfs_pidlist): Use gdb_dir_up.
9976         * procfs.c (do_closedir_cleanup): Remove.
9977         (proc_update_threads): Use gdb_dir_up.
9978         * common/filestuff.h (struct gdb_dir_deleter): New.
9979         (gdb_dir_up): New typedef.
9980
9981 2018-05-04  Tom Tromey  <tom@tromey.com>
9982
9983         * ada-lang.c (print_mention_exception): Use std::string.
9984
9985 2018-05-04  Tom Tromey  <tom@tromey.com>
9986
9987         * ada-lang.c (create_excep_cond_exprs): Update.
9988         (ada_exception_catchpoint_cond_string): Use std::string.
9989
9990 2018-05-04  Tom Tromey  <tom@tromey.com>
9991
9992         * ada-lang.c (xget_renaming_scope): Return std::string.
9993         (old_renaming_is_invisible): Update.
9994
9995 2018-05-04  Tom Tromey  <tom@tromey.com>
9996
9997         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9998         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9999
10000 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10001
10002         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10003
10004 2018-05-04  Tom Tromey  <tom@tromey.com>
10005
10006         * remote.c (remote_query_supported_append): Change type.
10007         (remote_check_symbols): Update.
10008
10009 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10010
10011         PR gdb/11420
10012         * configure.ac: Prepend libpython.
10013         * python/python-config.py: Likewise.
10014         * configure: Regenerate.
10015
10016 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10017
10018         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10019
10020 2018-05-03  Pedro Alves  <palves@redhat.com>
10021
10022         * s390-linux-nat.c
10023         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10024         override.  Write 'true' instead of '1'.
10025         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10026         declaration.
10027
10028 2018-05-02  Pedro Alves  <palves@redhat.com>
10029
10030         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10031         add_inf_child_target.
10032         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10033         add_inf_child_target.
10034         * aix-thread.c (aix_thread_target_info): New.
10035         (aix_thread_target) <shortname, longname, doc>: Delete.
10036         <info>: New.
10037         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10038         add_inf_child_target.
10039         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10040         add_inf_child_target.
10041         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10042         add_inf_child_target.
10043         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10044         add_inf_child_target.
10045         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10046         add_inf_child_target.
10047         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10048         add_inf_child_target.
10049         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10050         add_inf_child_target.
10051         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10052         add_inf_child_target.
10053         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10054         add_inf_child_target.
10055         * bfd-target.c (target_bfd_target_info): New.
10056         (target_bfd) <shortname, longname, doc>: Delete.
10057         <info>: New.
10058         * bsd-kvm.c (bsd_kvm_target_info): New.
10059         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10060         <info>: New.
10061         (bsd_kvm_target::open): Rename to ...
10062         (bsd_kvm_target_open): ... this.  Adjust.
10063         * bsd-uthread.c (bsd_uthread_target_info): New.
10064         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10065         <info>: New.
10066         * corefile.c (core_file_command): Adjust.
10067         * corelow.c (core_target_info): New.
10068         (core_target) <shortname, longname, doc>: Delete.
10069         <info>: New.
10070         (core_target::open): Rename to ...
10071         (core_target_open): ... this.  Adjust.
10072         * ctf.c (ctf_target_info): New.
10073         (ctf_target) <shortname, longname, doc>: Delete.
10074         <info>: New.
10075         (ctf_target::open): Rename to ...
10076         (ctf_target_open): ... this.
10077         (_initialize_ctf): Adjust.
10078         * exec.c (exec_target_info): New.
10079         (exec_target) <shortname, longname, doc>: Delete.
10080         <info>: New.
10081         (exec_target::open): Rename to ...
10082         (exec_target_open): ... this.
10083         * gdbcore.h (core_target_open): Declare.
10084         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10085         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10086         add_inf_child_target.
10087         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10088         add_inf_child_target.
10089         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10090         add_inf_child_target.
10091         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10092         add_inf_child_target.
10093         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10094         add_inf_child_target.
10095         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10096         add_inf_child_target.
10097         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10098         add_inf_child_target.
10099         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10100         add_inf_child_target.
10101         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10102         add_inf_child_target.
10103         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10104         add_inf_child_target.
10105         * inf-child.c (inf_child_target_info): New.
10106         (inf_child_target::info): New.
10107         (inf_child_open_target): Remove 'target' parameter.  Use
10108         get_native_target instead.
10109         (inf_child_target::open): Delete.
10110         (add_inf_child_target): New.
10111         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10112         Delete.
10113         <info>: New.
10114         (add_inf_child_target): Declare.
10115         (inf_child_open_target): Declare.
10116         * linux-thread-db.c (thread_db_target_info): New.
10117         (thread_db_target) <shortname, longname, doc>: Delete.
10118         <info>: New.
10119         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10120         add_inf_child_target.
10121         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10122         add_inf_child_target.
10123         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10124         add_inf_child_target.
10125         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10126         add_inf_child_target.
10127         * make-target-delegates (print_class): Adjust.
10128         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10129         add_inf_child_target.
10130         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10131         add_inf_child_target.
10132         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10133         add_inf_child_target.
10134         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10135         add_inf_child_target.
10136         * nto-procfs.c (nto_native_target_info): New.
10137         (nto_procfs_target_native) <shortname, longname, doc>:
10138         Delete.
10139         <info>: New.
10140         (nto_procfs_target_info): New.
10141         (nto_procfs_target_procfs) <shortname, longname, doc>:
10142         Delete.
10143         <info>: New.
10144         (init_procfs_targets): Adjust.
10145         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10146         add_inf_child_target.
10147         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10148         add_inf_child_target.
10149         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10150         add_inf_child_target.
10151         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10152         add_inf_child_target.
10153         * ravenscar-thread.c (ravenscar_target_info): New.
10154         (ravenscar_thread_target) <shortname, longname, doc>:
10155         Delete.
10156         <info>: New.
10157         * record-btrace.c (record_btrace_target_info):
10158         (record_btrace_target) <shortname, longname, doc>: Delete.
10159         <info>: New.
10160         (record_btrace_target::open): Rename to ...
10161         (record_btrace_target_open): ... this.  Adjust.
10162         * record-full.c (record_longname, record_doc): New.
10163         (record_full_base_target) <shortname, longname, doc>: Delete.
10164         <info>: New.
10165         (record_full_target_info): New.
10166         (record_full_target): <shortname>: Delete.
10167         <info>: New.
10168         (record_full_core_open_1, record_full_open_1): Update comments.
10169         (record_full_base_target::open): Rename to ...
10170         (record_full_open): ... this.
10171         (cmd_record_full_restore): Update.
10172         (_initialize_record_full): Update.
10173         * remote-sim.c (remote_sim_target_info): New.
10174         (gdbsim_target) <shortname, longname, doc>: Delete.
10175         <info>: New.
10176         (gdbsim_target::open): Rename to ...
10177         (gdbsim_target_open): ... this.
10178         (_initialize_remote_sim): Adjust.
10179         * remote.c (remote_doc): New.
10180         (remote_target_info): New.
10181         (remote_target) <shortname, longname, doc>: Delete.
10182         <info>: New.
10183         (extended_remote_target_info): New.
10184         (extended_remote_target) <shortname, longname, doc>: Delete.
10185         <info>: New.
10186         (remote_target::open_1): Make static.  Adjust.
10187         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10188         * s390-linux-nat.c (_initialize_s390_nat): Use
10189         add_inf_child_target.
10190         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10191         add_inf_child_target.
10192         * sol-thread.c (thread_db_target_info): New.
10193         (sol_thread_target) <shortname, longname, doc>: Delete.
10194         <info>: New.
10195         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10196         add_inf_child_target.
10197         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10198         add_inf_child_target.
10199         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10200         add_inf_child_target.
10201         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10202         add_inf_child_target.
10203         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10204         add_inf_child_target.
10205         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10206         add_inf_child_target.
10207         * spu-linux-nat.c (_initialize_spu_nat): Use
10208         add_inf_child_target.
10209         * spu-multiarch.c (spu_multiarch_target_info): New.
10210         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10211         <info>: New.
10212         * target-delegates.c: Regenerate.
10213         * target.c: Include <unordered_map>.
10214         (target_ops_p): Delete.
10215         (DEF_VEC_P(target_ops_p)): Delete.
10216         (target_factories): New.
10217         (test_target_info): New.
10218         (test_target_ops::info): New.
10219         (open_target): Adjust to use target_factories.
10220         (add_target_with_completer): Rename to ...
10221         (add_target): ... this.  Change prototype.  Register target_info
10222         and open callback in target_factories.  Register target_info in
10223         command context instead of target_ops.
10224         (add_target): Delete old implementation.
10225         (add_deprecated_target_alias): Change prototype.  Adjust.
10226         (the_native_target): New.
10227         (set_native_target, get_native_target): New.
10228         (find_default_run_target): Use the_native_target.
10229         (find_attach_target, find_run_target): Simplify.
10230         (target_ops::open): Delete.
10231         (dummy_target_info): New.
10232         (dummy_target::shortname, dummy_target::longname)
10233         (dummy_target::doc): Delete.
10234         (dummy_target::info): New.
10235         (debug_target::shortname, debug_target::longname)
10236         (debug_target::doc): Delete.
10237         (debug_target::info): New.
10238         * target.h (struct target_info): New.
10239         (target_ops::~target_ops): Add comment.
10240         (target_ops::info): New.
10241         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10242         longer virtual.  Implement in terms of target_info.
10243         (set_native_target, get_native_target): Declare.
10244         (target_open_ftype): New.
10245         (add_target, add_target_with_completer)
10246         (add_deprecated_target_alias): Change prototype.
10247         (test_target) <shortname, longname, doc>: Delete.
10248         <info>: New.
10249         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10250         add_inf_child_target.
10251         * tracefile-tfile.c (tfile_target_info): New.
10252         (tfile_target) <shortname, longname, doc>: Delete.
10253         <info>: New.
10254         (tfile_target::open): Rename to ...
10255         (tfile_target_open): ... this.
10256         (_initialize_tracefile_tfile): Adjust.
10257         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10258         add_inf_child_target.
10259         * windows-nat.c (_initialize_windows_nat): Use
10260         add_inf_child_target.
10261         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10262         add_inf_child_target.
10263
10264 2018-05-02  Pedro Alves  <palves@redhat.com>
10265
10266         * linux-nat.h (linux_nat_target) <low_new_thread,
10267         low_delete_thread, low_new_fork, low_forget_process,
10268         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10269         New virtual methods.
10270         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10271         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10272         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10273         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10274         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10275         Delete.
10276         * linux-fork.c (delete_fork): Adjust to call low method.
10277         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10278         (linux_nat_new_fork, linux_nat_forget_process_hook)
10279         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10280         (linux_nat_status_is_event):
10281         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10282         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10283         to call low method.
10284         (sigtrap_is_event): Rename to ...
10285         (linux_nat_target::low_status_is_event): ... this.
10286         (linux_nat_set_status_is_event): Delete.
10287         (save_stop_reason, linux_nat_wait_1)
10288         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10289         low methods.
10290         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10291         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10292         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10293         (linux_nat_set_prepare_to_resume): Delete.
10294         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10295         low virtual methods.
10296         * amd64-linux-nat.c: Likewise.
10297         * arm-linux-nat.c: Likewise.
10298         * i386-linux-nat.c: Likewise.
10299         * ia64-linux-nat.c: Likewise.
10300         * mips-linux-nat.c: Likewise.
10301         * ppc-linux-nat.c: Likewise.
10302         * s390-linux-nat.c: Likewise.
10303         * sparc64-linux-nat.c: Likewise.
10304         * x86-linux-nat.c: Likewise.
10305         * x86-linux-nat.h: Include "nat/x86-linux.h".
10306         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10307         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10308         Override methods.
10309
10310 2018-05-02  Pedro Alves  <palves@redhat.com>
10311
10312         * target.h (target_ops)
10313         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10314         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10315         stopped_by_watchpoint, have_continuable_watchpoint,
10316         stopped_data_address, watchpoint_addr_within_range,
10317         can_accel_watchpoint_condition, can_run, thread_alive,
10318         has_all_memory, has_memory, has_stack, has_registers,
10319         has_execution, can_async_p, is_async_p, supports_non_stop,
10320         always_non_stop_p, can_execute_reverse, supports_multi_process,
10321         supports_enable_disable_tracepoint,
10322         supports_disable_randomization, supports_string_tracing,
10323         supports_evaluation_of_breakpoint_conditions,
10324         can_run_breakpoint_commands, filesystem_is_local,
10325         can_download_tracepoint, get_trace_state_variable_value,
10326         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10327         record_is_replaying, record_will_replay,
10328         augmented_libraries_svr4_read>: Adjust to return bool.
10329         * aarch64-linux-nat.c: All implementations adjusted.
10330         * aix-thread.c: All implementations adjusted.
10331         * arm-linux-nat.c: All implementations adjusted.
10332         * breakpoint.c: All implementations adjusted.
10333         * bsd-kvm.c: All implementations adjusted.
10334         * bsd-uthread.c: All implementations adjusted.
10335         * corelow.c: All implementations adjusted.
10336         * ctf.c: All implementations adjusted.
10337         * darwin-nat.c: All implementations adjusted.
10338         * darwin-nat.h: All implementations adjusted.
10339         * exec.c: All implementations adjusted.
10340         * fbsd-nat.c: All implementations adjusted.
10341         * fbsd-nat.h: All implementations adjusted.
10342         * gnu-nat.c: All implementations adjusted.
10343         * gnu-nat.h: All implementations adjusted.
10344         * go32-nat.c: All implementations adjusted.
10345         * ia64-linux-nat.c: All implementations adjusted.
10346         * inf-child.c: All implementations adjusted.
10347         * inf-child.h: All implementations adjusted.
10348         * inf-ptrace.c: All implementations adjusted.
10349         * inf-ptrace.h: All implementations adjusted.
10350         * linux-nat.c: All implementations adjusted.
10351         * linux-nat.h: All implementations adjusted.
10352         * mips-linux-nat.c: All implementations adjusted.
10353         * nto-procfs.c: All implementations adjusted.
10354         * ppc-linux-nat.c: All implementations adjusted.
10355         * procfs.c: All implementations adjusted.
10356         * ravenscar-thread.c: All implementations adjusted.
10357         * record-btrace.c: All implementations adjusted.
10358         * record-full.c: All implementations adjusted.
10359         * remote-sim.c: All implementations adjusted.
10360         * remote.c: All implementations adjusted.
10361         * s390-linux-nat.c: All implementations adjusted.
10362         * sol-thread.c: All implementations adjusted.
10363         * spu-multiarch.c: All implementations adjusted.
10364         * target-delegates.c: All implementations adjusted.
10365         * target.c: All implementations adjusted.
10366         * target.h: All implementations adjusted.
10367         * tracefile-tfile.c: All implementations adjusted.
10368         * tracefile.c: All implementations adjusted.
10369         * tracefile.h: All implementations adjusted.
10370         * windows-nat.c: All implementations adjusted.
10371         * x86-linux-nat.h: All implementations adjusted.
10372         * x86-nat.h: All implementations adjusted.
10373
10374 2018-05-02  Pedro Alves  <palves@redhat.com>
10375
10376         * make-target-delegates (scan_target_h): Don't trim lines here.
10377         Replace sequences of tabs and/or whitespace with a single
10378         whitespace.
10379         (top level, parsing methods): Trim each line before processing it
10380         here.
10381
10382 2018-05-02  Pedro Alves  <palves@redhat.com>
10383             John Baldwin  <jhb@freebsd.org>
10384
10385         * target.h (enum strata) <debug_stratum>: New.
10386         (struct target_ops) <all delegation methods>: Replace by C++
10387         virtual methods, and drop "to_" prefix.  All references updated
10388         throughout.
10389         <to_shortname, to_longname, to_doc, to_data,
10390         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10391         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10392         virtual methods.  All references updated throughout.
10393         <can_attach, supports_terminal_ours, can_create_inferior,
10394         get_thread_control_capabilities, attach_no_wait>: New
10395         virtual methods.
10396         <insert_breakpoint, remove_breakpoint>: Now
10397         TARGET_DEFAULT_NORETURN methods.
10398         <info_proc>: Now returns bool.
10399         <to_magic>: Delete.
10400         (OPS_MAGIC): Delete.
10401         (current_target): Delete.  All references replaced by references
10402         to ...
10403         (target_stack): ... this.  New.
10404         (target_shortname, target_longname): Adjust.
10405         (target_can_run): Now a function declaration.
10406         (default_child_has_all_memory, default_child_has_memory)
10407         (default_child_has_stack, default_child_has_registers)
10408         (default_child_has_execution): Remove target_ops parameter.
10409         (complete_target_initialization): Delete.
10410         (memory_breakpoint_target): New template class.
10411         (test_target_ops): Refactor as a C++ class with virtual methods.
10412         * make-target-delegates (NAME_PART): Tighten.
10413         (POINTER_PART, CP_SYMBOL): New.
10414         (SIMPLE_RETURN_PART): Reimplement.
10415         (VEC_RETURN_PART): Expect less.
10416         (RETURN_PART, VIRTUAL_PART): New.
10417         (METHOD): Adjust to C++ virtual methods.
10418         (scan_target_h): Remove reference to C99.
10419         (dname): Output "target_ops::" prefix.
10420         (write_function_header): Adjust to output a C++ class method.
10421         (write_declaration): New.
10422         (write_delegator): Adjust to output a C++ class method.
10423         (tdname): Output "dummy_target::" prefix.
10424         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10425         method.
10426         (tdefault_names, debug_names): Delete.
10427         (return_types, tdefaults, styles, argtypes_array): New.
10428         (top level): All methods are delegators.
10429         (print_class): New.
10430         (top level): Print dummy_target and debug_target classes.
10431         * target-delegates.c: Regenerate.
10432         * target-debug.h (target_debug_print_enum_info_proc_what)
10433         (target_debug_print_thread_control_capabilities)
10434         (target_debug_print_thread_info_p): New.
10435         * target.c (dummy_target): Delete.
10436         (the_dummy_target, the_debug_target): New.
10437         (target_stack): Now extern.
10438         (set_targetdebug): Push/unpush debug target.
10439         (default_child_has_all_memory, default_child_has_memory)
10440         (default_child_has_stack, default_child_has_registers)
10441         (default_child_has_execution): Remove target_ops parameter.
10442         (complete_target_initialization): Delete.
10443         (add_target_with_completer): No longer call
10444         complete_target_initialization.
10445         (target_supports_terminal_ours): Use regular delegation.
10446         (update_current_target): Delete.
10447         (push_target): No longer check magic number.  Don't call
10448         update_current_target.
10449         (unpush_target): Don't call update_current_target.
10450         (target_is_pushed): No longer check magic number.
10451         (target_require_runnable): Skip for all stratums over
10452         process_stratum.
10453         (target_ops::info_proc): New.
10454         (target_info_proc): Use find_target_at and
10455         find_default_run_target.
10456         (target_supports_disable_randomization): Use regular delegation.
10457         (target_get_osdata): Use find_target_at.
10458         (target_ops::open, target_ops::close, target_ops::can_attach)
10459         (target_ops::attach, target_ops::can_create_inferior)
10460         (target_ops::create_inferior, target_ops::can_run)
10461         (target_can_run): New.
10462         (default_fileio_target): Use regular delegation.
10463         (target_ops::fileio_open, target_ops::fileio_pwrite)
10464         (target_ops::fileio_pread, target_ops::fileio_fstat)
10465         (target_ops::fileio_close, target_ops::fileio_unlink)
10466         (target_ops::fileio_readlink): New.
10467         (target_fileio_open_1, target_fileio_unlink)
10468         (target_fileio_readlink): Always call the target method.  Handle
10469         FILEIO_ENOSYS.
10470         (return_zero, return_zero_has_execution): Delete.
10471         (init_dummy_target): Delete.
10472         (dummy_target::dummy_target, dummy_target::shortname)
10473         (dummy_target::longname, dummy_target::doc)
10474         (debug_target::debug_target, debug_target::shortname)
10475         (debug_target::longname, debug_target::doc): New.
10476         (target_supports_delete_record): Use regular delegation.
10477         (setup_target_debug): Delete.
10478         (maintenance_print_target_stack): Skip debug_stratum.
10479         (initialize_targets): Instantiate the_dummy_target and
10480         the_debug_target.
10481         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10482         use target_stack.
10483         (target_auxv_search, fprint_target_auxv): Adjust.
10484         (info_auxv_command): Adjust to use target_stack.
10485         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10486         * exceptions.c (print_flush): Handle a NULL target_stack.
10487         * regcache.c (target_ops_no_register): Refactor as class with
10488         virtual methods.
10489
10490         * exec.c (exec_target): New class.
10491         (exec_ops): Now an exec_target.
10492         (exec_open, exec_close_1, exec_get_section_table)
10493         (exec_xfer_partial, exec_files_info, exec_has_memory)
10494         (exec_make_note_section): Refactor as exec_target methods.
10495         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10496         Delete.
10497         (exec_target::find_memory_regions): New.
10498         (_initialize_exec): Don't call init_exec_ops.
10499         * gdbcore.h (exec_file_clear): Delete.
10500
10501         * corefile.c (core_target): Delete.
10502         (core_file_command): Adjust.
10503         * corelow.c (core_target): New class.
10504         (the_core_target): New.
10505         (core_close): Remove target_ops parameter.
10506         (core_close_cleanup): Adjust.
10507         (core_target::close): New.
10508         (core_open, core_detach, get_core_registers, core_files_info)
10509         (core_xfer_partial, core_thread_alive, core_read_description)
10510         (core_pid_to_str, core_thread_name, core_has_memory)
10511         (core_has_stack, core_has_registers, core_info_proc): Rework as
10512         core_target methods.
10513         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10514         (_initialize_corelow): Initialize the_core_target.
10515         * gdbcore.h (core_target): Delete.
10516         (the_core_target): New.
10517
10518         * ctf.c: (ctf_target): New class.
10519         (ctf_ops): Now a ctf_target.
10520         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10521         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10522         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10523         methods.
10524         (init_ctf_ops): Delete.
10525         (_initialize_ctf): Don't call it.
10526         * tracefile-tfile.c (tfile_target): New class.
10527         (tfile_ops): Now a tfile_target.
10528         (tfile_open, tfile_close, tfile_files_info)
10529         (tfile_get_tracepoint_status, tfile_trace_find)
10530         (tfile_fetch_registers, tfile_xfer_partial)
10531         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10532         Refactor as tfile_target methods.
10533         (tfile_xfer_partial_features): Remove target_ops parameter.
10534         (init_tfile_ops): Delete.
10535         (_initialize_tracefile_tfile): Don't call it.
10536         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10537         (tracefile_has_stack, tracefile_has_registers)
10538         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10539         tracefile_target methods.
10540         (init_tracefile_ops): Delete.
10541         (tracefile_target::tracefile_target): New.
10542         * tracefile.h: Include "target.h".
10543         (tracefile_target): New class.
10544         (init_tracefile_ops): Delete.
10545
10546         * spu-multiarch.c (spu_multiarch_target): New class.
10547         (spu_ops): Now a spu_multiarch_target.
10548         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10549         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10550         (spu_search_memory, spu_mourn_inferior): Refactor as
10551         spu_multiarch_target methods.
10552         (init_spu_ops): Delete.
10553         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10554         complete_target_initialization.
10555
10556         * ravenscar-thread.c (ravenscar_thread_target): New class.
10557         (ravenscar_ops): Now a ravenscar_thread_target.
10558         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10559         (ravenscar_thread_alive, ravenscar_pid_to_str)
10560         (ravenscar_fetch_registers, ravenscar_store_registers)
10561         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10562         (ravenscar_stopped_by_hw_breakpoint)
10563         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10564         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10565         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10566         methods.
10567         (init_ravenscar_thread_ops): Delete.
10568         (_initialize_ravenscar): Remove references to
10569         init_ravenscar_thread_ops and complete_target_initialization.
10570
10571         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10572         (bsd_uthread_target): New class.
10573         (bsd_uthread_ops): Now a bsd_uthread_target.
10574         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10575         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10576         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10577         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10578         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10579         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10580         (bsd_uthread_target): Delete function.
10581         (_initialize_bsd_uthread): Remove reference to
10582         complete_target_initialization.
10583
10584         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10585         (target_bfd): ... this new class.
10586         (target_bfd_xfer_partial, target_bfd_get_section_table)
10587         (target_bfd_close): Refactor as target_bfd methods.
10588         (target_bfd::~target_bfd): New.
10589         (target_bfd_reopen): Adjust.
10590         (target_bfd::close): New.
10591
10592         * record-btrace.c (record_btrace_target): New class.
10593         (record_btrace_ops): Now a record_btrace_target.
10594         (record_btrace_open, record_btrace_stop_recording)
10595         (record_btrace_disconnect, record_btrace_close)
10596         (record_btrace_async, record_btrace_info)
10597         (record_btrace_insn_history, record_btrace_insn_history_range)
10598         (record_btrace_insn_history_from, record_btrace_call_history)
10599         (record_btrace_call_history_range)
10600         (record_btrace_call_history_from, record_btrace_record_method)
10601         (record_btrace_is_replaying, record_btrace_will_replay)
10602         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10603         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10604         (record_btrace_store_registers, record_btrace_prepare_to_store)
10605         (record_btrace_to_get_unwinder)
10606         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10607         (record_btrace_commit_resume, record_btrace_wait)
10608         (record_btrace_stop, record_btrace_can_execute_reverse)
10609         (record_btrace_stopped_by_sw_breakpoint)
10610         (record_btrace_supports_stopped_by_sw_breakpoint)
10611         (record_btrace_stopped_by_hw_breakpoint)
10612         (record_btrace_supports_stopped_by_hw_breakpoint)
10613         (record_btrace_update_thread_list, record_btrace_thread_alive)
10614         (record_btrace_goto_begin, record_btrace_goto_end)
10615         (record_btrace_goto, record_btrace_stop_replaying_all)
10616         (record_btrace_execution_direction)
10617         (record_btrace_prepare_to_generate_core)
10618         (record_btrace_done_generating_core): Refactor as
10619         record_btrace_target methods.
10620         (init_record_btrace_ops): Delete.
10621         (_initialize_record_btrace): Remove reference to
10622         init_record_btrace_ops.
10623         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10624         the execution_direction global.
10625         (record_full_base_target, record_full_target)
10626         (record_full_core_target): New classes.
10627         (record_full_ops): Now a record_full_target.
10628         (record_full_core_ops): Now a record_full_core_target.
10629         (record_full_target::detach, record_full_target::disconnect)
10630         (record_full_core_target::disconnect)
10631         (record_full_target::mourn_inferior, record_full_target::kill):
10632         New.
10633         (record_full_open, record_full_close, record_full_async): Refactor
10634         as methods of the record_full_base_target class.
10635         (record_full_resume, record_full_commit_resume): Refactor
10636         as methods of the record_full_target class.
10637         (record_full_wait, record_full_stopped_by_watchpoint)
10638         (record_full_stopped_data_address)
10639         (record_full_stopped_by_sw_breakpoint)
10640         (record_full_supports_stopped_by_sw_breakpoint)
10641         (record_full_stopped_by_hw_breakpoint)
10642         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10643         methods of the record_full_base_target class.
10644         (record_full_store_registers, record_full_xfer_partial)
10645         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10646         Refactor as methods of the record_full_target class.
10647         (record_full_can_execute_reverse, record_full_get_bookmark)
10648         (record_full_goto_bookmark, record_full_execution_direction)
10649         (record_full_record_method, record_full_info, record_full_delete)
10650         (record_full_is_replaying, record_full_will_replay)
10651         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10652         (record_full_stop_replaying): Refactor as methods of the
10653         record_full_base_target class.
10654         (record_full_core_resume, record_full_core_kill)
10655         (record_full_core_fetch_registers)
10656         (record_full_core_prepare_to_store)
10657         (record_full_core_store_registers, record_full_core_xfer_partial)
10658         (record_full_core_insert_breakpoint)
10659         (record_full_core_remove_breakpoint)
10660         (record_full_core_has_execution): Refactor
10661         as methods of the record_full_core_target class.
10662         (record_full_base_target::supports_delete_record): New.
10663         (init_record_full_ops): Delete.
10664         (init_record_full_core_ops): Delete.
10665         (record_full_save): Refactor as method of the
10666         record_full_base_target class.
10667         (_initialize_record_full): Remove references to
10668         init_record_full_ops and init_record_full_core_ops.
10669
10670         * remote.c (remote_target, extended_remote_target): New classes.
10671         (remote_ops): Now a remote_target.
10672         (extended_remote_ops): Now an extended_remote_target.
10673         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10674         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10675         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10676         (remote_pass_signals, remote_set_syscall_catchpoint)
10677         (remote_program_signals, )
10678         (remote_thread_always_alive): Remove target_ops parameter.
10679         (remote_thread_alive, remote_thread_name)
10680         (remote_update_thread_list, remote_threads_extra_info)
10681         (remote_static_tracepoint_marker_at)
10682         (remote_static_tracepoint_markers_by_strid)
10683         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10684         (remote_open): Refactor as methods of remote_target.
10685         (extended_remote_open, extended_remote_detach)
10686         (extended_remote_attach, extended_remote_post_attach):
10687         (extended_remote_supports_disable_randomization)
10688         (extended_remote_create_inferior): : Refactor as method of
10689         extended_remote_target.
10690         (remote_set_permissions, remote_open_1, remote_detach)
10691         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10692         (remote_resume, remote_commit_resume, remote_stop)
10693         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10694         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10695         (remote_prepare_to_store, remote_store_registers)
10696         (remote_flash_erase, remote_flash_done, remote_files_info)
10697         (remote_kill, remote_mourn, remote_insert_breakpoint)
10698         (remote_remove_breakpoint, remote_insert_watchpoint)
10699         (remote_watchpoint_addr_within_range)
10700         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10701         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10702         (remote_supports_stopped_by_sw_breakpoint)
10703         (remote_stopped_by_hw_breakpoint)
10704         (remote_supports_stopped_by_hw_breakpoint)
10705         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10706         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10707         (remote_verify_memory): Refactor as methods of remote_target.
10708         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10709         parameter.
10710         (remote_xfer_partial, remote_get_memory_xfer_limit)
10711         (remote_search_memory, remote_rcmd, remote_memory_map)
10712         (remote_pid_to_str, remote_get_thread_local_address)
10713         (remote_get_tib_address, remote_read_description): Refactor as
10714         methods of remote_target.
10715         (remote_target::fileio_open, remote_target::fileio_pwrite)
10716         (remote_target::fileio_pread, remote_target::fileio_close): New.
10717         (remote_hostio_readlink, remote_hostio_fstat)
10718         (remote_filesystem_is_local, remote_can_execute_reverse)
10719         (remote_supports_non_stop, remote_supports_disable_randomization)
10720         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10721         (remote_supports_enable_disable_tracepoint)
10722         (remote_supports_string_tracing)
10723         (remote_can_run_breakpoint_commands, remote_trace_init)
10724         (remote_download_tracepoint, remote_can_download_tracepoint)
10725         (remote_download_trace_state_variable, remote_enable_tracepoint)
10726         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10727         (remote_trace_start, remote_get_trace_status)
10728         (remote_get_tracepoint_status, remote_trace_stop)
10729         (remote_trace_find, remote_get_trace_state_variable_value)
10730         (remote_save_trace_data, remote_get_raw_trace_data)
10731         (remote_set_disconnected_tracing, remote_core_of_thread)
10732         (remote_set_circular_trace_buffer, remote_traceframe_info)
10733         (remote_get_min_fast_tracepoint_insn_len)
10734         (remote_set_trace_buffer_size, remote_set_trace_notes)
10735         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10736         (remote_disable_btrace, remote_teardown_btrace)
10737         (remote_read_btrace, remote_btrace_conf)
10738         (remote_augmented_libraries_svr4_read, remote_load)
10739         (remote_pid_to_exec_file, remote_can_do_single_step)
10740         (remote_execution_direction, remote_thread_handle_to_thread_info):
10741         Refactor as methods of remote_target.
10742         (init_remote_ops, init_extended_remote_ops): Delete.
10743         (remote_can_async_p, remote_is_async_p, remote_async)
10744         (remote_thread_events, remote_upload_tracepoints)
10745         (remote_upload_trace_state_variables): Refactor as methods of
10746         remote_target.
10747         (_initialize_remote): Remove references to init_remote_ops and
10748         init_extended_remote_ops.
10749
10750         * remote-sim.c (gdbsim_target): New class.
10751         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10752         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10753         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10754         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10755         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10756         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10757         Refactor as methods of gdbsim_target.
10758         (gdbsim_ops): Now a gdbsim_target.
10759         (init_gdbsim_ops): Delete.
10760         (gdbsim_cntrl_c): Adjust.
10761         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10762
10763         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10764         (the_amd64_linux_nat_target): New.
10765         (amd64_linux_fetch_inferior_registers)
10766         (amd64_linux_store_inferior_registers): Refactor as methods of
10767         amd64_linux_nat_target.
10768         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10769         * i386-linux-nat.c: Don't include "linux-nat.h".
10770         (i386_linux_nat_target): New class.
10771         (the_i386_linux_nat_target): New.
10772         (i386_linux_fetch_inferior_registers)
10773         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10774         as methods of i386_linux_nat_target.
10775         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10776         * inf-child.c (inf_child_ops): Delete.
10777         (inf_child_fetch_inferior_registers)
10778         (inf_child_store_inferior_registers): Delete.
10779         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10780         methods of inf_child_target.
10781         (inf_child_target::supports_terminal_ours)
10782         (inf_child_target::terminal_init)
10783         (inf_child_target::terminal_inferior)
10784         (inf_child_target::terminal_ours_for_output)
10785         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10786         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10787         New.
10788         (inf_child_open, inf_child_disconnect, inf_child_close)
10789         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10790         (inf_child_post_startup_inferior, inf_child_can_run)
10791         (inf_child_pid_to_exec_file): Refactor as methods of
10792         inf_child_target.
10793         (inf_child_follow_fork): Delete.
10794         (inf_child_target::can_create_inferior)
10795         (inf_child_target::can_attach): New.
10796         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10797         (inf_child_target::has_stack, inf_child_target::has_registers)
10798         (inf_child_target::has_execution): New.
10799         (inf_child_fileio_open, inf_child_fileio_pwrite)
10800         (inf_child_fileio_pread, inf_child_fileio_fstat)
10801         (inf_child_fileio_close, inf_child_fileio_unlink)
10802         (inf_child_fileio_readlink, inf_child_use_agent)
10803         (inf_child_can_use_agent): Refactor as methods of
10804         inf_child_target.
10805         (return_zero, inf_child_target): Delete.
10806         (inf_child_target::inf_child_target): New.
10807         * inf-child.h: Include "target.h".
10808         (inf_child_target): Delete function prototype.
10809         (inf_child_target): New class.
10810         (inf_child_open_target, inf_child_mourn_inferior)
10811         (inf_child_maybe_unpush_target): Delete.
10812         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10813         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10814         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10815         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10816         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10817         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10818         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10819         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10820         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10821         methods of inf_ptrace_target.
10822         (inf_ptrace_target): Delete function.
10823         * inf-ptrace.h: Include "inf-child.h".
10824         (inf_ptrace_target): Delete function declaration.
10825         (inf_ptrace_target): New class.
10826         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10827         * linux-nat.c (linux_target): New.
10828         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10829         (linux_nat_target::~linux_nat_target): New.
10830         (linux_child_post_attach, linux_child_post_startup_inferior)
10831         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10832         (linux_child_remove_fork_catchpoint)
10833         (linux_child_insert_vfork_catchpoint)
10834         (linux_child_remove_vfork_catchpoint)
10835         (linux_child_insert_exec_catchpoint)
10836         (linux_child_remove_exec_catchpoint)
10837         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10838         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10839         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10840         (linux_nat_stopped_data_address)
10841         (linux_nat_stopped_by_sw_breakpoint)
10842         (linux_nat_supports_stopped_by_sw_breakpoint)
10843         (linux_nat_stopped_by_hw_breakpoint)
10844         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10845         (linux_nat_kill, linux_nat_mourn_inferior)
10846         (linux_nat_xfer_partial, linux_nat_thread_alive)
10847         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10848         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10849         (linux_child_static_tracepoint_markers_by_strid)
10850         (linux_nat_is_async_p, linux_nat_can_async_p)
10851         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10852         (linux_nat_supports_multi_process)
10853         (linux_nat_supports_disable_randomization, linux_nat_async)
10854         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10855         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10856         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10857         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10858         methods of linux_nat_target.
10859         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10860         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10861         parameter.
10862         (check_stopped_by_watchpoint): Adjust.
10863         (linux_xfer_partial): Delete.
10864         (linux_target_install_ops, linux_target, linux_nat_add_target):
10865         Delete.
10866         (linux_nat_target::linux_nat_target): New.
10867         * linux-nat.h: Include "inf-ptrace.h".
10868         (linux_nat_target): New.
10869         (linux_target, linux_target_install_ops, linux_nat_add_target):
10870         Delete function declarations.
10871         (linux_target): Declare global.
10872         * linux-thread-db.c (thread_db_target): New.
10873         (thread_db_target::thread_db_target): New.
10874         (thread_db_ops): Delete.
10875         (the_thread_db_target): New.
10876         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10877         (thread_db_update_thread_list, thread_db_pid_to_str)
10878         (thread_db_extra_thread_info)
10879         (thread_db_thread_handle_to_thread_info)
10880         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10881         (thread_db_resume): Refactor as methods of thread_db_target.
10882         (init_thread_db_ops): Delete.
10883         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10884         * x86-linux-nat.c: Don't include "linux-nat.h".
10885         (super_post_startup_inferior): Delete.
10886         (x86_linux_nat_target::~x86_linux_nat_target): New.
10887         (x86_linux_child_post_startup_inferior)
10888         (x86_linux_read_description, x86_linux_enable_btrace)
10889         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10890         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10891         methods of x86_linux_nat_target.
10892         (x86_linux_create_target): Delete.  Bits folded ...
10893         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10894         pointer.
10895         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10896         (x86_linux_nat_target): New class.
10897         (x86_linux_create_target): Delete.
10898         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10899         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10900         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10901         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10902         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10903         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10904         make extern.
10905         (x86_use_watchpoints): Delete.
10906         * x86-nat.h: Include "breakpoint.h" and "target.h".
10907         (x86_use_watchpoints): Delete.
10908         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10909         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10910         (x86_insert_watchpoint, x86_remove_watchpoint)
10911         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10912         (x86_stopped_by_hw_breakpoint): New declarations.
10913         (x86_nat_target): New template class.
10914
10915         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10916         (the_ppc_linux_nat_target): New.
10917         (ppc_linux_fetch_inferior_registers)
10918         (ppc_linux_can_use_hw_breakpoint)
10919         (ppc_linux_region_ok_for_hw_watchpoint)
10920         (ppc_linux_ranged_break_num_registers)
10921         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10922         (ppc_linux_insert_mask_watchpoint)
10923         (ppc_linux_remove_mask_watchpoint)
10924         (ppc_linux_can_accel_watchpoint_condition)
10925         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10926         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10927         (ppc_linux_watchpoint_addr_within_range)
10928         (ppc_linux_masked_watch_num_registers)
10929         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10930         (ppc_linux_read_description): Refactor as methods of
10931         ppc_linux_nat_target.
10932         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10933
10934         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10935         (procfs_target): New class.
10936         (the_procfs_target): New.
10937         (procfs_target): Delete function.
10938         (procfs_auxv_parse, procfs_attach, procfs_detach)
10939         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10940         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10941         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10942         (procfs_create_inferior, procfs_update_thread_list)
10943         (procfs_thread_alive, procfs_pid_to_str)
10944         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10945         (procfs_stopped_data_address, procfs_insert_watchpoint)
10946         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10947         (proc_find_memory_regions, procfs_info_proc)
10948         (procfs_make_note_section): Refactor as methods of procfs_target.
10949         (_initialize_procfs): Adjust.
10950         * sol-thread.c (sol_thread_target): New class.
10951         (sol_thread_ops): Now a sol_thread_target.
10952         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10953         (sol_thread_fetch_registers, sol_thread_store_registers)
10954         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10955         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10956         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10957         (init_sol_thread_ops): Delete.
10958         (_initialize_sol_thread): Adjust.  Remove references to
10959         init_sol_thread_ops and complete_target_initialization.
10960
10961         * windows-nat.c (windows_nat_target): New class.
10962         (windows_fetch_inferior_registers)
10963         (windows_store_inferior_registers, windows_resume, windows_wait)
10964         (windows_attach, windows_detach, windows_pid_to_exec_file)
10965         (windows_files_info, windows_create_inferior)
10966         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10967         (windows_close, windows_pid_to_str, windows_xfer_partial)
10968         (windows_get_tib_address, windows_get_ada_task_ptid)
10969         (windows_thread_name, windows_thread_alive): Refactor as
10970         windows_nat_target methods.
10971         (do_initial_windows_stuff): Adjust.
10972         (windows_target): Delete function.
10973         (_initialize_windows_nat): Adjust.
10974
10975         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10976         (darwin_mourn_inferior, darwin_kill_inferior)
10977         (darwin_create_inferior, darwin_attach, darwin_detach)
10978         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10979         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10980         (darwin_supports_multi_process): Refactor as darwin_nat_target
10981         methods.
10982         (darwin_resume_to, darwin_files_info): Delete.
10983         (_initialize_darwin_inferior): Rename to ...
10984         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10985         * darwin-nat.h: Include "inf-child.h".
10986         (darwin_nat_target): New class.
10987         (darwin_complete_target): Delete.
10988         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10989         (darwin_target): New.
10990         (i386_darwin_fetch_inferior_registers)
10991         (i386_darwin_store_inferior_registers): Refactor as methods of
10992         darwin_nat_target.
10993         (darwin_complete_target): Delete, with ...
10994         (_initialize_i386_darwin_nat): ... bits factored out here.
10995
10996         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10997         (the_alpha_linux_nat_target): New.
10998         (alpha_linux_register_u_offset): Refactor as
10999         alpha_linux_nat_target method.
11000         (_initialize_alpha_linux_nat): Adjust.
11001         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11002         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11003         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11004         methods of linux_nat_trad_target.
11005         (linux_trad_target): Delete.
11006         * linux-nat-trad.h (linux_trad_target): Delete function.
11007         (linux_nat_trad_target): New class.
11008         * mips-linux-nat.c (mips_linux_nat_target): New class.
11009         (super_fetch_registers, super_store_registers, super_close):
11010         Delete.
11011         (the_mips_linux_nat_target): New.
11012         (mips64_linux_regsets_fetch_registers)
11013         (mips64_linux_regsets_store_registers)
11014         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11015         (mips_linux_register_u_offset, mips_linux_read_description)
11016         (mips_linux_can_use_hw_breakpoint)
11017         (mips_linux_stopped_by_watchpoint)
11018         (mips_linux_stopped_data_address)
11019         (mips_linux_region_ok_for_hw_watchpoint)
11020         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11021         (mips_linux_close): Refactor as methods of mips_linux_nat.
11022         (_initialize_mips_linux_nat): Adjust to C++ification.
11023
11024         * aix-thread.c (aix_thread_target): New class.
11025         (aix_thread_ops): Now an aix_thread_target.
11026         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11027         (aix_thread_fetch_registers, aix_thread_store_registers)
11028         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11029         (aix_thread_thread_alive, aix_thread_pid_to_str)
11030         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11031         Refactor as methods of aix_thread_target.
11032         (init_aix_thread_ops): Delete.
11033         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11034         and complete_target_initialization.
11035         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11036         (rs6000_nat_target): New class.
11037         (the_rs6000_nat_target): New.
11038         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11039         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11040         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11041         (super_create_inferior): Delete.
11042         (_initialize_rs6000_nat): Adjust to C++ification.
11043
11044         * arm-linux-nat.c (arm_linux_nat_target): New class.
11045         (the_arm_linux_nat_target): New.
11046         (arm_linux_fetch_inferior_registers)
11047         (arm_linux_store_inferior_registers, arm_linux_read_description)
11048         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11049         (arm_linux_remove_hw_breakpoint)
11050         (arm_linux_region_ok_for_hw_watchpoint)
11051         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11052         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11053         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11054         arm_linux_nat_target.
11055         (_initialize_arm_linux_nat): Adjust to C++ification.
11056
11057         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11058         (the_aarch64_linux_nat_target): New.
11059         (aarch64_linux_fetch_inferior_registers)
11060         (aarch64_linux_store_inferior_registers)
11061         (aarch64_linux_child_post_startup_inferior)
11062         (aarch64_linux_read_description)
11063         (aarch64_linux_can_use_hw_breakpoint)
11064         (aarch64_linux_insert_hw_breakpoint)
11065         (aarch64_linux_remove_hw_breakpoint)
11066         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11067         (aarch64_linux_region_ok_for_hw_watchpoint)
11068         (aarch64_linux_stopped_data_address)
11069         (aarch64_linux_stopped_by_watchpoint)
11070         (aarch64_linux_watchpoint_addr_within_range)
11071         (aarch64_linux_can_do_single_step): Refactor as methods of
11072         aarch64_linux_nat_target.
11073         (super_post_startup_inferior): Delete.
11074         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11075
11076         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11077         (the_hppa_linux_nat_target): New.
11078         (hppa_linux_fetch_inferior_registers)
11079         (hppa_linux_store_inferior_registers): Refactor as methods of
11080         hppa_linux_nat_target.
11081         (_initialize_hppa_linux_nat): Adjust to C++ification.
11082
11083         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11084         (the_ia64_linux_nat_target): New.
11085         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11086         (ia64_linux_stopped_data_address)
11087         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11088         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11089         ia64_linux_nat_target methods.
11090         (super_xfer_partial): Delete.
11091         (_initialize_ia64_linux_nat): Adjust to C++ification.
11092
11093         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11094         (the_m32r_linux_nat_target): New.
11095         (m32r_linux_fetch_inferior_registers)
11096         (m32r_linux_store_inferior_registers): Refactor as
11097         m32r_linux_nat_target methods.
11098         (_initialize_m32r_linux_nat): Adjust to C++ification.
11099
11100         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11101         (the_m68k_linux_nat_target): New.
11102         (m68k_linux_fetch_inferior_registers)
11103         (m68k_linux_store_inferior_registers): Refactor as
11104         m68k_linux_nat_target methods.
11105         (_initialize_m68k_linux_nat): Adjust to C++ification.
11106
11107         * s390-linux-nat.c (s390_linux_nat_target): New class.
11108         (the_s390_linux_nat_target): New.
11109         (s390_linux_fetch_inferior_registers)
11110         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11111         (s390_insert_watchpoint, s390_remove_watchpoint)
11112         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11113         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11114         (s390_auxv_parse, s390_read_description): Refactor as methods of
11115         s390_linux_nat_target.
11116         (_initialize_s390_nat): Adjust to C++ification.
11117
11118         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11119         (the_sparc_linux_nat_target): New.
11120         (_initialize_sparc_linux_nat): Adjust to C++ification.
11121         * sparc-nat.c (sparc_fetch_inferior_registers)
11122         (sparc_store_inferior_registers): Remove target_ops parameter.
11123         * sparc-nat.h (sparc_fetch_inferior_registers)
11124         (sparc_store_inferior_registers): Remove target_ops parameter.
11125         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11126         (the_sparc64_linux_nat_target): New.
11127         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11128
11129         * spu-linux-nat.c (spu_linux_nat_target): New class.
11130         (the_spu_linux_nat_target): New.
11131         (spu_child_post_startup_inferior, spu_child_post_attach)
11132         (spu_child_wait, spu_fetch_inferior_registers)
11133         (spu_store_inferior_registers, spu_xfer_partial)
11134         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11135         methods.
11136         (_initialize_spu_nat): Adjust to C++ification.
11137
11138         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11139         (the_tilegx_linux_nat_target): New.
11140         (fetch_inferior_registers, store_inferior_registers):
11141         Refactor as methods.
11142         (_initialize_tile_linux_nat): Adjust to C++ification.
11143
11144         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11145         (the_xtensa_linux_nat_target): New.
11146         (xtensa_linux_fetch_inferior_registers)
11147         (xtensa_linux_store_inferior_registers): Refactor as
11148         xtensa_linux_nat_target methods.
11149         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11150
11151         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11152         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11153         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11154         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11155         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11156         (fbsd_stopped_by_sw_breakpoint)
11157         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11158         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11159         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11160         (fbsd_post_startup_inferior, fbsd_post_attach)
11161         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11162         (fbsd_set_syscall_catchpoint)
11163         (super_xfer_partial, super_resume, super_wait)
11164         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11165         (fbsd_handle_debug_trap): Remove target_ops parameter.
11166         (fbsd_nat_add_target): Delete.
11167         * fbsd-nat.h: Include "inf-ptrace.h".
11168         (fbsd_nat_add_target): Delete.
11169         (USE_SIGTRAP_SIGINFO): Define.
11170         (fbsd_nat_target): New class.
11171
11172         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11173         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11174         (amd64bsd_target): Delete.
11175         * amd64-bsd-nat.h: New file.
11176         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11177         "x86-bsd-nat.h".
11178         (amd64_fbsd_nat_target): New class.
11179         (the_amd64_fbsd_nat_target): New.
11180         (amd64fbsd_read_description): Refactor as method of
11181         amd64_fbsd_nat_target.
11182         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11183         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11184         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11185         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11186         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11187         (i386bsd_target): Delete.
11188         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11189         (i386bsd_fetch_inferior_registers)
11190         (i386bsd_store_inferior_registers): Declare.
11191         (i386_bsd_nat_target): New class.
11192         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11193         (the_i386_fbsd_nat_target): New.
11194         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11195         i386_fbsd_nat_target methods.
11196         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11197         (_initialize_i386fbsd_nat): Adjust to C++ification.
11198         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11199         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11200         (_initialize_x86_bsd_nat): Adjust to C++ification.
11201         * x86-bsd-nat.h: Include "x86-nat.h".
11202         (x86bsd_target): Delete declaration.
11203         (x86bsd_nat_target): New class.
11204
11205         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11206         (the_aarch64_fbsd_nat_target): New.
11207         (aarch64_fbsd_fetch_inferior_registers)
11208         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11209         aarch64_fbsd_nat_target.
11210         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11211         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11212         (the_alpha_bsd_nat_target): New.
11213         (alphabsd_fetch_inferior_registers)
11214         (alphabsd_store_inferior_registers): Refactor as
11215         alpha_bsd_nat_target methods.
11216         (_initialize_alphabsd_nat): Refactor as methods of
11217         alpha_bsd_nat_target.
11218         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11219         (the_amd64_nbsd_nat_target): New.
11220         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11221         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11222         (the_amd64_obsd_nat_target): New.
11223         (_initialize_amd64obsd_nat): Adjust to C++ification.
11224         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11225         (the_arm_fbsd_nat_target): New.
11226         (arm_fbsd_fetch_inferior_registers)
11227         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11228         (_initialize_arm_fbsd_nat): Refactor as methods of
11229         arm_fbsd_nat_target.
11230         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11231         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11232         (the_arm_netbsd_nat_target): New.
11233         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11234         arm_netbsd_nat_target.
11235         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11236         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11237         (the_hppa_nbsd_nat_target): New.
11238         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11239         hppa_nbsd_nat_target methods.
11240         (_initialize_hppanbsd_nat): Adjust to C++ification.
11241         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11242         (the_hppa_obsd_nat_target): New.
11243         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11244         methods of hppa_obsd_nat_target.
11245         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11246         add_target.
11247         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11248         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11249         add_target.
11250         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11251         (_initialize_i386obsd_nat): Use add_target.
11252         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11253         (the_m68k_bsd_nat_target): New.
11254         (m68kbsd_fetch_inferior_registers)
11255         (m68kbsd_store_inferior_registers): Refactor as methods of
11256         m68k_bsd_nat_target.
11257         (_initialize_m68kbsd_nat): Adjust to C++ification.
11258         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11259         (the_mips_fbsd_nat_target): New.
11260         (mips_fbsd_fetch_inferior_registers)
11261         (mips_fbsd_store_inferior_registers): Refactor as methods of
11262         mips_fbsd_nat_target.
11263         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11264         add_target.
11265         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11266         (the_mips_nbsd_nat_target): New.
11267         (mipsnbsd_fetch_inferior_registers)
11268         (mipsnbsd_store_inferior_registers): Refactor as methods of
11269         mips_nbsd_nat_target.
11270         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11271         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11272         (the_mips64_obsd_nat_target): New.
11273         (mips64obsd_fetch_inferior_registers)
11274         (mips64obsd_store_inferior_registers): Refactor as methods of
11275         mips64_obsd_nat_target.
11276         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11277         add_target.
11278         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11279         nbsd_nat_target.
11280         * nbsd-nat.h: Include "inf-ptrace.h".
11281         (nbsd_nat_target): New class.
11282         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11283         (obsd_wait): Refactor as methods of obsd_nat_target.
11284         (obsd_add_target): Delete.
11285         * obsd-nat.h: Include "inf-ptrace.h".
11286         (obsd_nat_target): New class.
11287         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11288         (the_ppc_fbsd_nat_target): New.
11289         (ppcfbsd_fetch_inferior_registers)
11290         (ppcfbsd_store_inferior_registers): Refactor as methods of
11291         ppc_fbsd_nat_target.
11292         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11293         add_target.
11294         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11295         (the_ppc_nbsd_nat_target): New.
11296         (ppcnbsd_fetch_inferior_registers)
11297         (ppcnbsd_store_inferior_registers): Refactor as methods of
11298         ppc_nbsd_nat_target.
11299         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11300         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11301         (the_ppc_obsd_nat_target): New.
11302         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11303         methods of ppc_obsd_nat_target.
11304         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11305         add_target.
11306         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11307         (the_sh_nbsd_nat_target): New.
11308         (shnbsd_fetch_inferior_registers)
11309         (shnbsd_store_inferior_registers): Refactor as methods of
11310         sh_nbsd_nat_target.
11311         (_initialize_shnbsd_nat): Adjust to C++ification.
11312         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11313         (inf_ptrace_xfer_partial): Delete.
11314         (sparc_xfer_partial, sparc_target): Delete.
11315         * sparc-nat.h (sparc_fetch_inferior_registers)
11316         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11317         (sparc_target): Delete function declaration.
11318         (sparc_target): New template class.
11319         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11320         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11321         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11322         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11323         add_target.
11324         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11325         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11326         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11327         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11328         add_target.
11329         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11330         (the_vax_bsd_nat_target): New.
11331         (vaxbsd_fetch_inferior_registers)
11332         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11333         methods.
11334         (_initialize_vaxbsd_nat): Adjust to C++ification.
11335
11336         * bsd-kvm.c (bsd_kvm_target): New class.
11337         (bsd_kvm_ops): Now a bsd_kvm_target.
11338         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11339         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11340         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11341         bsd_kvm_target.
11342         (bsd_kvm_return_one): Delete.
11343         (bsd_kvm_add_target): Adjust to C++ification.
11344
11345         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11346         (nto_procfs_target_procfs): New classes.
11347         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11348         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11349         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11350         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11351         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11352         (procfs_remove_hw_breakpoint, procfs_resume)
11353         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11354         (procfs_kill_inferior, procfs_store_registers)
11355         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11356         as methods of nto_procfs_target.
11357         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11358         (nto_native_ops): Delete.
11359         (procfs_open, procfs_native_open): Delete.
11360         (nto_native_ops): Now an nto_procfs_target_native.
11361         (init_procfs_targets): Adjust to C++ification.
11362         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11363         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11364         Refactor as methods of nto_procfs_target.
11365
11366         * go32-nat.c (go32_nat_target): New class.
11367         (the_go32_nat_target): New.
11368         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11369         (go32_store_registers, go32_xfer_partial, go32_files_info)
11370         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11371         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11372         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11373         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11374         (go32_target): Delete.
11375         (_initialize_go32_nat): Adjust to C++ification.
11376
11377         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11378         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11379         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11380         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11381         gnu_nat_target.
11382         (gnu_target): Delete.
11383         * gnu-nat.h (gnu_target): Delete.
11384         (gnu_nat_target): New class.
11385         * i386-gnu-nat.c (gnu_base_target): New.
11386         (i386_gnu_nat_target): New class.
11387         (the_i386_gnu_nat_target): New.
11388         (_initialize_i386gnu_nat): Adjust to C++ification.
11389
11390 2018-05-02  Pedro Alves  <palves@redhat.com>
11391
11392         * bfd-target.c (target_bfd_xclose): Rename to ...
11393         (target_bfd_close): ... this.
11394         (target_bfd_reopen): Adjust.
11395         * target.c (target_close): Remove references to to_xclose.
11396         * target.h (target_ops::to_xclose): Delete.
11397         (target_ops::to_close): Update comments.
11398
11399 2018-05-02  Pedro Alves  <palves@redhat.com>
11400
11401         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11402         "linux-nat.h".
11403         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11404         * inf-ptrace.c (inf_ptrace_register_u_offset)
11405         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11406         (inf_ptrace_store_register, inf_ptrace_store_registers)
11407         (inf_ptrace_trad_target): Move to ...
11408         * linux-nat-trad.c: ... this new file.
11409         * linux-nat-trad.h: New file.
11410         * linux-nat.c (linux_target_install_ops): Make extern.
11411         (linux_trad_target): Delete.
11412         * linux-nat.h (linux_trad_target): Delete declaration.
11413         (linux_target_install_ops): Declare.
11414         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11415         "linux-nat.h".
11416
11417 2018-05-02  Pedro Alves  <palves@redhat.com>
11418
11419         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11420         procfs_target/add_target here.
11421         * procfs.c (procfs_target): Make static.
11422         (_initialize_procfs): Call add_target here.
11423         * procfs.h (struct target_ops): Remove forward declaration.
11424         (procfs_target): Remove declaration.
11425         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11426
11427 2018-05-02  Pedro Alves  <palves@redhat.com>
11428
11429         * procfs.c (procfs_stopped_by_watchpoint)
11430         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11431         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11432         Forward declare.
11433         (procfs_use_watchpoints): Delete, move contents...
11434         (procfs_target): ... here.
11435         * procfs.h (procfs_use_watchpoints): Delete declaration.
11436         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11437         procfs_use_watchpoints.
11438         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11439         procfs_use_watchpoints.
11440
11441 2018-05-02  Tom Tromey  <tom@tromey.com>
11442
11443         PR python/20084:
11444         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11445         and var_zuinteger_unlimited.
11446         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11447         and PARAM_ZUINTEGER_UNLIMITED.
11448         (set_parameter_value): Handle var_zuinteger and
11449         var_zuinteger_unlimited.
11450         (add_setshow_generic): Likewise.
11451         (parmpy_init): Likewise.
11452
11453 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11454
11455         PR rust/23124
11456         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11457         pointer is not null before dereferencing it.
11458
11459 2018-04-30  Tom Tromey  <tom@tromey.com>
11460
11461         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11462         is_mi_like_p.
11463
11464 2018-04-30  Tom Tromey  <tom@tromey.com>
11465
11466         * breakpoint.c (mention): Remove use of is_mi_like_p.
11467         (print_mention_ranged_breakpoint): Likewise.
11468         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11469         of is_mi_like_p.
11470
11471 2018-04-30  Tom Tromey  <tom@tromey.com>
11472
11473         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11474
11475 2018-04-30  Tom Tromey  <tom@tromey.com>
11476
11477         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11478         (info_spu_event_command): Remove some uses of is_mi_like_p.
11479
11480 2018-04-30  Tom Tromey  <tom@tromey.com>
11481
11482         * python/py-framefilter.c (py_print_single_arg)
11483         (enumerate_locals, py_print_args, py_print_frame): Remove some
11484         uses of is_mi_like_p.
11485
11486 2018-04-30  Tom Tromey  <tom@tromey.com>
11487
11488         * ui-out.c: Update.
11489         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11490         * ui-out.h (ui_out::is_mi_like_p): Now const.
11491         (ui_out::do_is_mi_like_p): Now const.
11492         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11493
11494 2018-04-30  Tom Tromey  <tom@tromey.com>
11495
11496         * varobj.c (varobj_set_visualizer): Use new_reference.
11497         * python/python.c (gdbpy_decode_line): Use new_reference.
11498         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11499         new_reference.
11500
11501 2018-04-30  Tom Tromey  <tom@tromey.com>
11502
11503         * varobj.c (install_new_value): Use new_reference.
11504         * value.h (value_incref): Return void.  Swap intro comment with
11505         value_decref.
11506         * value.c (set_value_parent): Use new_reference.
11507         (value_incref): Return void.  Update intro comment.
11508         (release_value): Use new_reference.
11509         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11510
11511 2018-04-30  Tom Tromey  <tom@tromey.com>
11512
11513         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11514         * gdb_bfd.h (new_bfd_ref): Remove.
11515         (gdb_bfd_open): Update comment.
11516         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11517         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11518         (gdb_bfd_fdopenr): Use new_reference.
11519         * exec.c (exec_file_attach): Use new_reference.
11520
11521 2018-04-30  Tom Tromey  <tom@tromey.com>
11522
11523         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11524         method.
11525
11526 2018-04-30  Tom Tromey  <tom@tromey.com>
11527
11528         * jit.c (jit_read_code_entry): Use type_align.
11529         * i386-tdep.c (i386_gdbarch_init): Don't call
11530         set_gdbarch_long_long_align_bit.
11531         * gdbarch.sh: Remove long_long_align_bit.
11532         * gdbarch.c, gdbarch.h: Rebuild.
11533         * arc-tdep.c (arc_type_align): New function.
11534         (arc_gdbarch_init): Use arc_type_align.  Don't call
11535         set_gdbarch_long_long_align_bit.
11536
11537 2018-04-30  Tom Tromey  <tom@tromey.com>
11538
11539         * rust-lang.c (rust_type_alignment): Remove.
11540         (rust_composite_type): Use type_align.
11541
11542 2018-04-30  Tom Tromey  <tom@tromey.com>
11543
11544         * NEWS: Mention Type.align.
11545         * python/py-type.c (typy_get_alignof): New function.
11546         (type_object_getset): Add "alignof".
11547
11548 2018-04-30  Tom Tromey  <tom@tromey.com>
11549
11550         PR exp/17095:
11551         * NEWS: Update.
11552         * std-operator.def (UNOP_ALIGNOF): New operator.
11553         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11554         New.
11555         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11556         * c-lang.c (c_op_print_tab): Add alignof.
11557         * c-exp.y (ALIGNOF): New token.
11558         (exp): Add "ALIGNOF" production.
11559         (ident_tokens): Add _Alignof and alignof.
11560
11561 2018-04-30  Tom Tromey  <tom@tromey.com>
11562
11563         * i386-tdep.c (i386_type_align): New function.
11564         (i386_gdbarch_init): Update.
11565         * gdbarch.sh (type_align): New method.
11566         * gdbarch.c, gdbarch.h: Rebuild.
11567         * arch-utils.h (default_type_align): Declare.
11568         * arch-utils.c (default_type_align): New function.
11569         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11570         (struct type) <align_log2>: New field.
11571         <instance_flags>: Now a bitfield.
11572         (TYPE_RAW_ALIGN): New macro.
11573         (type_align, type_raw_align, set_type_align): Declare.
11574         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11575         functions.
11576         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11577         (get_alignment, maybe_set_alignment): New functions.
11578         (read_structure_type, read_enumeration_type, read_array_type)
11579         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11580         (read_subrange_type, read_base_type): Set type alignment.
11581
11582 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11583
11584         * dwarf2read.c (read_index_from_section): Use bool.
11585
11586 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11587
11588         PR gdb/22950
11589         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11590         with #ifdef.
11591
11592 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11593
11594         PR build/22873
11595         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11596         last step, and do it atomically.
11597
11598 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11599
11600         * compile/compile-c-types.c (convert_int, convert_float):
11601         Update for C FE v1.
11602
11603 2018-04-27  Tom Tromey  <tom@tromey.com>
11604
11605         PR rust/22545:
11606         * rust-lang.c (rust_inclusive_range_type_p): New function.
11607         (rust_range): Handle inclusive ranges.
11608         (rust_compute_range): Likewise.
11609         * rust-exp.y (struct rust_op) <inclusive>: New field.
11610         (DOTDOTEQ): New constant.
11611         (range_expr): Add "..=" productions.
11612         (operator_tokens): Add "..=" token.
11613         (ast_range): Add "inclusive" parameter.
11614         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11615         ranges.
11616         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11617         bounds values.
11618         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11619         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11620         Update comments.
11621         * expprint.c (print_subexp_standard): Handle new bounds values.
11622         (dump_subexp_body_standard): Likewise.
11623
11624 2018-04-27  Tom Tromey  <tom@tromey.com>
11625
11626         * configure: Rebuild.
11627         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11628         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11629         "OVERRIDE".
11630         (class symbol_needs_eval_context): Likewise.
11631         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11632         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11633         "virtual".
11634         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11635         "override".
11636         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11637         * aarch64-tdep.c (instruction_reader::read): Use "override".
11638         (instruction_reader_test::read): Likewise.
11639         * arm-tdep.c (instruction_reader::read): Use "override".
11640         (instruction_reader_thumb::read): Likewise.
11641
11642 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11643
11644         PR remote/9665
11645         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11646         instead of remote_send.
11647         (remote_send): Remove.
11648
11649 2018-04-26  Pedro Alves  <palves@redhat.com>
11650
11651         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11652         find_function_start_sal instead of find_pc_line.
11653
11654 2018-04-26  Pedro Alves  <palves@redhat.com>
11655
11656         * breakpoint.c (set_breakpoint_location_function): Handle
11657         mst_data_gnu_ifunc.
11658         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11659         * elfread.c (elf_symtab_read): Give data symbols with
11660         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11661         (elf_rel_plt_read): Update comment.
11662         * linespec.c (convert_linespec_to_sals): Handle
11663         mst_data_gnu_ifunc.
11664         (minsym_found): Handle mst_data_gnu_ifunc.
11665         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11666         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11667         * parse.c (find_minsym_type_and_address): Handle
11668         mst_data_gnu_ifunc.
11669         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11670         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11671         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11672         comment.
11673         <mst_data_gnu_ifunc>: New enumerator.
11674
11675 2018-04-26  Pedro Alves  <palves@redhat.com>
11676
11677         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11678         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11679         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11680         Handle it.
11681         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11682         (lookup_minimal_symbol_by_pc): Adjust.
11683         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11684         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11685         * minsyms.h (lookup_msym_prefer): New enum.
11686         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11687         parameter by a lookup_msym_prefer parameter.
11688
11689 2018-04-26  Pedro Alves  <palves@redhat.com>
11690
11691         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11692         ends in "@plt" instead of looking at the symbol's section.
11693
11694 2018-04-26  Pedro Alves  <palves@redhat.com>
11695
11696         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11697         all references.
11698         (find_pc_partial_function_gnu_ifunc): Rename to ...
11699         (find_pc_partial_function): ... this, and remove references to
11700         'is_gnu_ifunc_p'.
11701         (find_pc_partial_function): Delete old implementation.
11702         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11703
11704 2018-04-26  Pedro Alves  <palves@redhat.com>
11705
11706         * linespec.c (struct bound_minimal_symbol_search_key): New.
11707         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11708         skip first line if we found a GNU ifunc minimal symbol by name.
11709         (compare_msymbols): Change parameters to work with a destructured
11710         lhs minsym.
11711         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11712         functions.
11713
11714 2018-04-26  Pedro Alves  <palves@redhat.com>
11715
11716         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11717         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11718         address/name.
11719         (add_location_to_breakpoint): Store the minsym and the objfile in
11720         the breakpoint location.
11721         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11722         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11723         Record the minsym in the sal.
11724         * symtab.h (symtab_and_line) <msymbol>: New field.
11725
11726 2018-04-26  Pedro Alves  <palves@redhat.com>
11727
11728         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11729         unless we actually resolved the ifunc.
11730
11731 2018-04-26  Pedro Alves  <palves@redhat.com>
11732
11733         * c-exp.y (variable production): Prefer ifunc minsyms over
11734         regular function symbols.
11735         * symtab.c (find_gnu_ifunc): New function.
11736         * minsyms.h (lookup_msym_prefer): New enum.
11737         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11738         parameter by a lookup_msym_prefer parameter.
11739         * symtab.h (find_gnu_ifunc): New declaration.
11740
11741 2018-04-26  Pedro Alves  <palves@redhat.com>
11742
11743         * blockframe.c (find_gnu_ifunc_target_type): New function.
11744         (find_function_type): New.
11745         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11746         return a value with a memory address.
11747         (eval_call): For calls to GNU ifunc functions, try to find the
11748         type of the target function from the type that the resolver
11749         returns.
11750         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11751         symbols.
11752         * infcall.c (find_function_return_type): Delete.
11753         (find_function_addr): Add 'function_type' parameter.  For calls to
11754         GNU ifunc functions, try to find the type of the target function
11755         from the type that the resolver returns, and return it via
11756         FUNCTION_TYPE.
11757         (call_function_by_hand_dummy): Adjust to use the function type
11758         returned by find_function_addr.
11759         (find_function_addr): Add 'function_type' parameter and move
11760         description here.
11761         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11762         declarations.
11763
11764 2018-04-26  Pedro Alves  <palves@redhat.com>
11765
11766         * c-exp.y (variable production): Skip finding an alias for ifunc
11767         symbols.
11768
11769 2018-04-26  Pedro Alves  <palves@redhat.com>
11770
11771         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11772
11773 2018-04-25  Pedro Alves  <palves@redhat.com>
11774
11775         * infcmd.c (kill_command): Print the pid as string, not the whole
11776         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11777         message.
11778         * remote.c (remote_detach_1): Print the pid as string, not the
11779         whole thread's ptid.
11780
11781 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11782             Sergio Durigan Junior  <sergiodj@redhat.com>
11783             Pedro Alves  <palves@redhat.com>
11784
11785         * infcmd.c (kill_command): Print message when inferior has
11786         been killed.
11787         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11788         '1'.
11789         (add_inferior): Improve message printed when
11790         'print_inferior_events' is on.
11791         (exit_inferior): Remove message printed when
11792         'print_inferior_events' is on.
11793         (detach_inferior): Improve message printed when
11794         'print_inferior_events' is on.
11795         (initialize_inferiors): Use 'add_inferior_silent' to set
11796         'current_inferior_'.
11797         * inferior.h (print_inferior_events): Declare here as
11798         'extern'.
11799         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11800         '[Detaching...]' messages when 'print_inferior_events' is on.
11801         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11802         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11803         'Detaching after fork from child...', replace it by '... from
11804         parent...'.
11805         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11806         prefix/suffix when printing 'Detaching...' messages.  Print
11807         them when 'print_inferior_events' is on.
11808         * remote.c (remote_detach_1): Print message when detaching
11809         from inferior and '!is_fork_parent'.
11810
11811 2018-04-24  Tom Tromey  <tom@tromey.com>
11812
11813         * cli-out.h: Reindent.
11814
11815 2018-04-24  Tom Tromey  <tom@tromey.com>
11816
11817         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11818         (cli_ui_out::do_field_string): Use fputs_filtered.
11819         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11820
11821 2018-04-23  Tom Tromey  <tom@tromey.com>
11822
11823         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11824         gdb::unique_xmalloc_ptr.
11825
11826 2018-04-23  Tom Tromey  <tom@tromey.com>
11827
11828         * configure: Rebuild.
11829
11830 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11831
11832         PR gdb/23095
11833         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11834         prepare_for_testing.  Set normal_bp to r_debug_state if target
11835         is bsd.
11836
11837 2018-04-21  Pedro Alves  <palves@redhat.com>
11838             Rajendra SY  <rajendra.sy@gmail.com>
11839
11840         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11841         * remote.c (extended_remote_attach): In all-stop mode, mark the
11842         thread as executing.
11843
11844 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11845
11846         * thread.c (thread_apply_all_command): Fix comment.
11847         (thread_command): Fix comment.
11848
11849 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11850
11851         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11852         parameter.
11853         * features/aarch64-core.c (create_feature_aarch64_core):
11854         Regenerate.
11855         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11856         Likewise.
11857         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11858         Likewise.
11859         * features/i386/32bit-avx512.c
11860         (create_feature_i386_32bit_avx512): Likewise.
11861         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11862         Likewise.
11863         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11864         Likewise.
11865         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11866         Likewise.
11867         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11868         Likewise.
11869         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11870         Likewise.
11871         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11872         Likewise.
11873         * features/i386/64bit-avx512.c
11874         (create_feature_i386_64bit_avx512): Likewise.
11875         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11876         Likewise.
11877         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11878         Likewise.
11879         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11880         Likewise.
11881         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11882         Likewise.
11883         * features/i386/64bit-segments.c
11884         (create_feature_i386_64bit_segments): Likewise.
11885         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11886         Likewise.
11887         * features/i386/x32-core.c
11888         (create_feature_i386_x32_core): Likewise.
11889         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11890         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11891         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11892         * target-descriptions.c: In generated code, don't pass xml
11893         filename.
11894
11895 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11896
11897         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11898         (print_xml_feature::visit_post): Likewise.
11899         (print_xml_feature::visit): Likewise.
11900         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11901         (print_xml_feature): Add new class.
11902         * regformats/regdat.sh: Null xmltarget on feature targets.
11903         * target-descriptions.c (struct target_desc): Add xmltarget.
11904         (maintenance_check_tdesc_xml_convert): Add unittest function.
11905         (tdesc_get_features_xml): Add function to get xml.
11906         (maintenance_check_xml_descriptions): Test xml generation.
11907         * xml-tdesc.c (string_read_description_xml): Add function.
11908         * xml-tdesc.h (string_read_description_xml): Add declaration.
11909
11910 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11911
11912         * features/Makefile: Add feature marker to targets with new style
11913         target descriptions.
11914         * regformats/aarch64.dat: Regenerate.
11915         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11916         * regformats/i386/amd64-avx-linux.dat: Likewise.
11917         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11918         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11919         * regformats/i386/amd64-linux.dat: Likewise.
11920         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11921         * regformats/i386/amd64.dat: Likewise.
11922         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11923         * regformats/i386/i386-avx-linux.dat: Likewise.
11924         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11925         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11926         * regformats/i386/i386-linux.dat: Likewise.
11927         * regformats/i386/i386-mmx-linux.dat: Likewise.
11928         * regformats/i386/i386-mpx-linux.dat: Likewise.
11929         * regformats/i386/i386.dat: Likewise.
11930         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11931         * regformats/i386/x32-avx-linux.dat: Likewise.
11932         * regformats/i386/x32-linux.dat: Likewise.
11933         * regformats/tic6x-c62x-linux.dat: Likewise.
11934         * regformats/tic6x-c64x-linux.dat: Likewise.
11935         * regformats/tic6x-c64xp-linux.dat: Likewise.
11936         * regformats/regdat.sh: Parse feature marker.
11937
11938 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11939
11940         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11941         (tdesc_osabi_name): Likewise.
11942         * target-descriptions.c (tdesc_architecture_name): Add new
11943         function.
11944         (tdesc_osabi_name): Likewise.
11945
11946 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11947
11948         * common/tdesc.c (tdesc_predefined_type): Move to here.
11949         (tdesc_named_type): Likewise.
11950         (tdesc_create_vector): Likewise.
11951         (tdesc_create_struct): Likewise.
11952         (tdesc_set_struct_size): Likewise.
11953         (tdesc_create_union): Likewise.
11954         (tdesc_create_flags): Likewise.
11955         (tdesc_create_enum): Likewise.
11956         (tdesc_add_field): Likewise.
11957         (tdesc_add_typed_bitfield): Likewise.
11958         (tdesc_add_bitfield): Likewise.
11959         (tdesc_add_flag): Likewise.
11960         (tdesc_add_enum_value): Likewise.
11961         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11962         (struct tdesc_type_vector): Likewise.
11963         (struct tdesc_type_field): Likewise.
11964         (struct tdesc_type_with_fields): Likewise.
11965         (tdesc_create_enum): Add declaration.
11966         (tdesc_add_typed_bitfield): Likewise.
11967         (tdesc_add_enum_value): Likewise.
11968         * target-descriptions.c (tdesc_type_field): Move from here.
11969         (tdesc_type_builtin): Likewise.
11970         (tdesc_type_vector): Likewise.
11971         (tdesc_type_with_fields): Likewise.
11972         (tdesc_predefined_types): Likewise.
11973         (tdesc_named_type): Likewise.
11974         (tdesc_create_vector): Likewise.
11975         (tdesc_create_struct): Likewise.
11976         (tdesc_set_struct_size): Likewise.
11977         (tdesc_create_union): Likewise.
11978         (tdesc_create_flags): Likewise.
11979         (tdesc_create_enum): Likewise.
11980         (tdesc_add_field): Likewise.
11981         (tdesc_add_typed_bitfield): Likewise.
11982         (tdesc_add_bitfield): Likewise.
11983         (tdesc_add_flag): Likewise.
11984         (tdesc_add_enum_value): Likewise.
11985         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11986         (tdesc_add_typed_bitfield): Likewise.
11987         (tdesc_add_enum_value): Likewise.
11988
11989 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11990
11991         * common/tdesc.c (tdesc_feature::accept): Move to here.
11992         (tdesc_feature::operator==): Likewise.
11993         (tdesc_create_reg): Likewise.
11994         * common/tdesc.h (tdesc_type_kind): Likewise.
11995         (struct tdesc_type): Likewise.
11996         (struct tdesc_feature): Likewise.
11997         * regformats/regdat.sh: Create a feature.
11998         * target-descriptions.c (tdesc_type_kind): Move from here.
11999         (tdesc_type): Likewise.
12000         (tdesc_type_up): Likewise.
12001         (tdesc_feature): Likewise.
12002         (tdesc_create_reg): Likewise.
12003
12004 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12005
12006         * Makefile.in: Add arch/tdesc.c
12007         * common/tdesc.c: New file.
12008         * common/tdesc.h (tdesc_element_visitor): Move to here.
12009         (tdesc_element): Likewise.
12010         (tdesc_reg): Likewise.
12011         (tdesc_reg_up): Likewise.
12012         * regformats/regdef.h (reg): Add offset to constructors.
12013         * target-descriptions.c (tdesc_element_visitor): Move from here.
12014         (tdesc_element): Likewise.
12015         (tdesc_reg): Likewise.
12016         (tdesc_reg_up): Likewise.
12017
12018 2018-04-17  Tom Tromey  <tom@tromey.com>
12019
12020         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12021         discriminant field.
12022
12023 2018-04-17  Tom Tromey  <tom@tromey.com>
12024
12025         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12026
12027 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12028
12029         * symtab.c (print_symbol_info): Skip printing filename and line
12030         number when `last' is NULL.
12031         (symtab_symbol_info): Use empty string instead of NULL for first
12032         invocation of print_symbol_info.
12033         (rbreak_command): Pass NULL to `last' parameter of
12034         print_symbol_info.
12035
12036 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12037
12038         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12039         instead of nullptr.
12040
12041 2018-04-16  Pedro Alves  <palves@redhat.com>
12042
12043         * MAINTAINERS (sh): Remove.
12044         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12045         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12046         (ALLDEPFILES): Remove sh64-tdep.c.
12047         * NEWS: Mentions that support for SH-5/SH64 is removed.
12048         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12049         (sh*-*-openbsd*): Ditto.
12050         (sh64-*-elf*): Remove.
12051         (sh*): Remove.
12052         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12053         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12054         * sh-tdep.c: No longer include "sh64-tdep.h".
12055         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12056         * sh64-tdep.c, sh64-tdep.h: Remove files.
12057
12058 2018-04-16  Pedro Alves  <palves@redhat.com>
12059
12060         * MAINTAINERS: Remove m88k.
12061         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12062         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12063         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12064         * NEWS: Mention that support for m88k was removed.
12065         * configure.host (m88*-*-*): Remove support.
12066         * configure.nat (m88k-*-*): Remove support.
12067         * configure.tgt (m88*-*-openbsd*): Remove.
12068         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12069
12070 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12071
12072         * configure.tgt (x86_tobjs): New variable.
12073         (amd64_tobjs, i386_tobjs): Use it.
12074
12075 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12076
12077         * symtab.c (print_symbol_info): Precede the symbol definition by
12078         the line number when available.
12079         * NEWS: Advertise this enhancement.
12080
12081 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12082
12083         * NEWS (New options): announce set/show record btrace cpu.
12084         * btrace.c: Include record-btrace.h.
12085         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12086         the vendor is unknown.
12087         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12088         Maybe overwrite the btrace configuration's cpu.
12089         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12090         (btrace_fetch): Add cpu parameter.  Update callers.
12091         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12092         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12093         errata workarounds if the vendor is unknown.
12094         * python/py-record-btrace.c: Include record-btrace.h.
12095         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12096         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12097         * record-btrace.c (record_btrace_cpu_state_kind): New.
12098         (record_btrace_cpu): New.
12099         (set_record_btrace_cpu_cmdlist): New.
12100         (record_btrace_get_cpu): New.
12101         (require_btrace_thread, record_btrace_info)
12102         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12103         (cmd_set_record_btrace_cpu_none): New.
12104         (cmd_set_record_btrace_cpu_auto): New.
12105         (cmd_set_record_btrace_cpu): New.
12106         (cmd_show_record_btrace_cpu): New.
12107         (_initialize_record_btrace): Initialize set/show record btrace cpu
12108         commands.
12109         * record-btrace.h (record_btrace_get_cpu): New.
12110
12111 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12112
12113         * record.c (set_record_command): Fix typo in message.
12114
12115 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12116
12117         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12118
12119 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12120
12121         * infrun.c (process_event_stop_test): Call
12122         gdbarch_in_indirect_branch_thunk.
12123         * gdbarch.sh (in_indirect_branch_thunk): New.
12124         * gdbarch.c: Regenerated.
12125         * gdbarch.h: Regenerated.
12126         * x86-tdep.h: New.
12127         * x86-tdep.c: New.
12128         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12129         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12130         (ALLDEPFILES): Add x86-tdep.c.
12131         * arch-utils.h (default_in_indirect_branch_thunk): New.
12132         * arch-utils.c (default_in_indirect_branch_thunk): New.
12133         * i386-tdep: Include x86-tdep.h.
12134         (i386_in_indirect_branch_thunk): New.
12135         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12136         function.
12137         * amd64-tdep: Include x86-tdep.h.
12138         (amd64_in_indirect_branch_thunk): New.
12139         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12140
12141 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12142
12143         PR gdb/23053
12144         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12145         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12146         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12147         regression.
12148
12149 2018-04-12  Tom Tromey  <tom@tromey.com>
12150
12151         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12152         (rust_evaluate_subexp): Likewise.
12153
12154 2018-04-12  Pedro Alves  <palves@redhat.com>
12155
12156         * procfs.c (procfs_detach): Make forward declaration's prototype
12157         match definition's protototype.
12158         (proc_get_LDT_entry): Remove stale do_cleanups call.
12159
12160 2018-04-12  Pedro Alves  <palves@redhat.com>
12161
12162         * target.h (target_ops::to_has_exited): Delete.
12163         (target_has_exited): Delete.
12164         * target-delegates.c: Regenerate.
12165
12166 2018-04-11  Pedro Alves  <palves@redhat.com>
12167
12168         * target.c (fileio_fh_t::t): Add comment.
12169         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12170         (target_fileio_close): Handle a NULL target.
12171         (invalidate_fileio_fh): New.
12172         (target_close): Call it.
12173         * remote.c (remote_hostio_send_command): No longer check whether
12174         remote_desc is open.
12175
12176 2018-04-11  Pedro Alves  <palves@redhat.com>
12177
12178         * target.c (fileio_fh_t): Make it a named struct instead of a
12179         typedef.
12180         (fileio_fh_t::is_closed): New method.
12181         (DEF_VEC_O (fileio_fh_t)): Remove.
12182         (fileio_fhandles): Now a std::vector.
12183         (is_closed_fileio_fh): Delete.
12184         (acquire_fileio_fd): Adjust.  Rename parameters.
12185         (release_fileio_fd): Adjust.
12186         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12187         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12188         (target_fileio_close): Adjust.
12189
12190 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12191
12192         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12193         index.
12194
12195 2018-04-10  Pedro Alves  <palves@redhat.com>
12196
12197         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12198         (scoped_finish_thread_state): New class.
12199         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12200         cleanup.
12201         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12202         (fetch_inferior_event, normal_stop): Likewise.
12203         * thread.c (finish_thread_state_cleanup): Delete.
12204
12205 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12206             Pedro Alves  <palves@redhat.com>
12207
12208         * value.c: Include "selftest.h" and "common/array-view.h".
12209         (struct range) <operator ==>: New.
12210         (test_ranges_contain): New.
12211         (check_ranges_vector): New.
12212         (test_insert_into_bit_range_vector): New.
12213         (_initialize_values): Register selftests.
12214         * common/array-view.h (operator==, operator!=): New.
12215
12216 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12217
12218         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12219         an iterator.
12220         * inline-frame.c: Include <algorithm>.
12221         (struct inline_state): Add constructor.
12222         (inline_state_s): Remove.
12223         (DEF_VEC_O(inline_state_s)): Remove.
12224         (inline_states): Change type to std::vector.
12225         (find_inline_frame_state): Adjust to std::vector.
12226         (allocate_inline_frame_state): Remove.
12227         (clear_inline_frame_state): Adjust to std::vector.
12228         (skip_inline_frames): Adjust to std::vector.
12229
12230 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12231
12232         * tracepoint.h (struct trace_state_variable): Add constructor.
12233         <name>: Change type to std::string.
12234         * tracepoint.c (tsv_s): Remove.
12235         (DEF_VEC_O(tsv_s)): Remove.
12236         (tvariables): Change to std::vector.
12237         (create_trace_state_variable): Adjust to std::vector.
12238         (find_trace_state_variable): Likewise.
12239         (find_trace_state_variable_by_number): Likewise.
12240         (delete_trace_state_variable): Likewise.
12241         (trace_variable_command): Adjust to std::string.
12242         (delete_trace_variable_command): Likewise.
12243         (tvariables_info_1): Adjust to std::vector.
12244         (save_trace_state_variables): Likewise.
12245         (start_tracing): Likewise.
12246         (merge_uploaded_trace_state_variables): Adjust to std::vector
12247         and std::string.
12248         * target.h (struct target_ops)
12249         <to_download_trace_state_variable>: Pass reference to
12250         trace_state_variable.
12251         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12252         * target-delegates.c: Re-generate.
12253         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12254         (mi_tsv_deleted): Likewise.
12255         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12256         * remote.c (remote_download_trace_state_variable): Change
12257         pointer to reference and adjust.
12258         * make-target-delegates (parse_argtypes): Handle references.
12259         (write_function_header): Likewise.
12260         (munge_type): Likewise.
12261
12262 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12263
12264         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12265         string_view-selftests.c.
12266         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12267         testsuite.
12268         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12269         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12270         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12271         * unittests/basic_string_view/element_access/char/1.cc:
12272         Likewise.
12273         * unittests/basic_string_view/element_access/char/empty.cc:
12274         Likewise.
12275         * unittests/basic_string_view/element_access/char/front_back.cc:
12276         Likewise.
12277         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12278         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12279         Likewise.
12280         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12281         Likewise.
12282         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12283         Likewise.
12284         * unittests/basic_string_view/operations/compare/char/1.cc:
12285         Likewise.
12286         * unittests/basic_string_view/operations/compare/char/13650.cc:
12287         Likewise.
12288         * unittests/basic_string_view/operations/copy/char/1.cc:
12289         Likewise.
12290         * unittests/basic_string_view/operations/data/char/1.cc:
12291         Likewise.
12292         * unittests/basic_string_view/operations/find/char/1.cc:
12293         Likewise.
12294         * unittests/basic_string_view/operations/find/char/2.cc:
12295         Likewise.
12296         * unittests/basic_string_view/operations/find/char/3.cc:
12297         Likewise.
12298         * unittests/basic_string_view/operations/find/char/4.cc:
12299         Likewise.
12300         * unittests/basic_string_view/operations/rfind/char/1.cc:
12301         Likewise.
12302         * unittests/basic_string_view/operations/rfind/char/2.cc:
12303         Likewise.
12304         * unittests/basic_string_view/operations/rfind/char/3.cc:
12305         Likewise.
12306         * unittests/basic_string_view/operations/substr/char/1.cc:
12307         Likewise.
12308         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12309         * unittests/string_view-selftests.c: New file.
12310
12311 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12312
12313         * unittests/basic_string_view/capacity/1.cc: New file.
12314         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12315         * unittests/basic_string_view/cons/char/1.cc: New file.
12316         * unittests/basic_string_view/cons/char/2.cc: New file.
12317         * unittests/basic_string_view/cons/char/3.cc: New file.
12318         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12319         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12320         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12321         * unittests/basic_string_view/element_access/char/1.cc: New file.
12322         * unittests/basic_string_view/element_access/char/2.cc: New file.
12323         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12324         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12325         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12326         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12327         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12328         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12329         * unittests/basic_string_view/include.cc: New file.
12330         * unittests/basic_string_view/inserters/char/1.cc: New file.
12331         * unittests/basic_string_view/inserters/char/2.cc: New file.
12332         * unittests/basic_string_view/inserters/char/3.cc: New file.
12333         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12334         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12335         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12336         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12337         * unittests/basic_string_view/literals/types.cc: New file.
12338         * unittests/basic_string_view/literals/values.cc: New file.
12339         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12340         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12341         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12342         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12343         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12344         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12345         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12346         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12347         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12348         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12349         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12350         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12351         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12352         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12353         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12354         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12355         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12356         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12357         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12358         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12359         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12360         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12361         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12362         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12363         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12364         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12365         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12366         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12367         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12368         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12369         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12370         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12371         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12372         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12373         * unittests/basic_string_view/operators/char/2.cc: New file.
12374         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12375         * unittests/basic_string_view/range_access/char/1.cc: New file.
12376         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12377         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12378         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12379         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12380         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12381         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12382         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12383         * unittests/basic_string_view/typedefs.cc: New file.
12384         * unittests/basic_string_view/types/1.cc: New file.
12385
12386 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12387
12388         * common/gdb_string_view.h: Remove libstdc++ implementation
12389         details, adjust to gdb reality.
12390         * common/gdb_string_view.tcc: Likewise.
12391         * cli/cli-script.c (struct string_view): Remove.
12392         (user_args) <m_args>: Change element type to gdb::string_view.
12393         (user_args::insert_args): Adjust.
12394
12395 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12396
12397         * common/gdb_string_view.h: New file.
12398         * common/gdb_string_view.tcc: New file.
12399
12400 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12401
12402         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12403         * configure: Re-generate.
12404
12405 2018-04-09  Pedro Alves  <palves@redhat.com>
12406
12407         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12408         (set_target_gdbarch): Call
12409         gdb::observers::architecture_changed.notify instead of
12410         observer_notify_architecture_changed.
12411
12412 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12413
12414         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12415         (do_restore_current_traceframe_cleanup): Remove.
12416         (restore_current_traceframe_cleanup_dtor): Remove.
12417         (make_cleanup_restore_current_traceframe): Remove.
12418         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12419         New.
12420         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12421         * infrun.c (fetch_inferior_event): Use
12422         scoped_restore_current_traceframe.
12423
12424 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12425
12426         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12427         Remove.
12428         <n_allocated_type_units>: Remove.
12429         <all_type_units>: Change to std::vector.
12430         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12431         to std::vector change.
12432         (dwarf2_per_objfile::get_cutu): Likewise.
12433         (dwarf2_per_objfile::get_tu): Likewise.
12434         (create_signatured_type_table_from_index): Likewise.
12435         (create_signatured_type_table_from_debug_names): Likewise.
12436         (dw2_symtab_iter_next): Likewise.
12437         (dw2_print_stats): Likewise.
12438         (dw2_expand_all_symtabs): Likewise.
12439         (dw2_expand_marked_cus): Likewise.
12440         (dw2_debug_names_iterator::next): Likewise.
12441         (dwarf2_initialize_objfile): Likewise.
12442         (add_signatured_type_cu_to_table): Likewise.
12443         (create_all_type_units): Likewise.
12444         (add_type_unit): Likewise.
12445         (struct tu_abbrev_offset): Add constructor.
12446         (build_type_psymtabs_1): Adjust to std::vector change.
12447         (print_tu_stats): Likewise.
12448         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12449         (write_debug_names): Likewise.
12450
12451 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12452
12453         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12454         Make an std::vector.
12455         <n_comp_units>: Remove.
12456         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12457         to std::vector change.
12458         (dwarf2_per_objfile::get_cutu): Likewise.
12459         (dwarf2_per_objfile::get_cu): Likewise.
12460         (create_cus_from_index): Likewise.
12461         (create_addrmap_from_index): Likewise.
12462         (create_addrmap_from_aranges): Likewise.
12463         (dwarf2_read_index): Likewise.
12464         (dw2_find_last_source_symtab): Likewise.
12465         (dw2_map_symtabs_matching_filename): Likewise.
12466         (dw2_symtab_iter_next): Likewise.
12467         (dw2_print_stats): Likewise.
12468         (dw2_expand_all_symtabs): Likewise.
12469         (dw2_expand_symtabs_with_fullname): Likewise.
12470         (dw2_expand_marked_cus): Likewise.
12471         (dw2_map_symbol_filenames): Likewise.
12472         (create_cus_from_debug_names): Likewise.
12473         (dwarf2_read_debug_names): Likewise.
12474         (dw2_debug_names_iterator::next): Likewise.
12475         (dwarf2_initialize_objfile): Likewise.
12476         (set_partial_user): Likewise.
12477         (dwarf2_build_psymtabs_hard): Likewise.
12478         (read_comp_units_from_section): Remove arguments, adjust to
12479         std::vector change.
12480         (create_all_comp_units): Adjust to std::vector and
12481         read_comp_units_from_section changes.
12482         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12483         change.
12484         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12485         (psyms_seen_size): Likewise.
12486         (write_gdbindex): Likewise.
12487         (write_debug_names): Likewise.
12488
12489 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12490
12491         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12492         with dwarf2_per_objfile.
12493         (create_cus_from_index): Likewise.
12494         (create_signatured_type_table_from_index): Likewise.
12495         (dwarf2_read_index): Likewise.
12496         (dwarf2_initialize_objfile): Likewise.
12497         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12498         per_cu rather than get_dwarf2_per_objfile.
12499
12500 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12501
12502         * dwarf2read.h (struct signatured_type): Forward declare.
12503         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12504         New methods.
12505         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12506         (dw2_get_cutu): ...this.
12507         (dwarf2_per_objfile::get_cu): Rename from...
12508         (dw2_get_cu): ...this.
12509         (dwarf2_per_objfile::get_tu): New.
12510         (create_addrmap_from_index): Adjust.
12511         (create_addrmap_from_aranges): Adjust.
12512         (dw2_find_last_source_symtab): Adjust.
12513         (dw2_map_symtabs_matching_filename): Adjust.
12514         (dw2_symtab_iter_next): Adjust.
12515         (dw2_print_stats): Adjust.
12516         (dw2_expand_all_symtabs): Adjust.
12517         (dw2_expand_symtabs_with_fullname): Adjust.
12518         (dw2_expand_marked_cus): Adjust.
12519         (dw_expand_symtabs_matching_file_matcher): Adjust.
12520         (dw2_map_symbol_filenames): Adjust.
12521         (dw2_debug_names_iterator::next): Adjust.
12522         (dwarf2_initialize_objfile): Adjust.
12523         (set_partial_user): Adjust.
12524         (dwarf2_build_psymtabs_hard): Adjust.
12525
12526 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12527
12528         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12529         Remove unused variables.
12530         (dw2_map_symtabs_matching_filename): Likewise.
12531         (dwarf2_record_block_ranges): Likewise.
12532         (dwarf2_read_addr_index): Likewise.
12533         (follow_die_offset): Likewise.
12534
12535 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12536
12537         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12538         to symbol_file_add_main.
12539
12540 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12541
12542         PR mi/22299
12543         * mi/mi-console.c (do_fputc_async_safe): New.
12544         (mi_console_file::write_async_safe): New.
12545         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12546         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12547         New.
12548         * ui-file.c (ui_file::putstrn): Adjust call to
12549         fputstrn_unfiltered.
12550         * utils.c (printchar): Replace do_fputs and do_fprintf
12551         parameters by do_fputc.
12552         (fputstr_filtered): Adjust call to printchar.
12553         (fputstr_unfiltered): Likewise.
12554         (fputstrn_filtered): Likewise.
12555         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12556         printchar.
12557         * utils.h (do_fputc_ftype): New typedef.
12558         (fputstrn_unfiltered): Add do_fputc parameter.
12559
12560 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12561
12562         * regformats/i386/i386-avx.dat: Remove.
12563
12564 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12565
12566         PR gdb/22979
12567         * amd64-tdep.c (amd64_none_init_abi): New function.
12568         (amd64_x32_none_init_abi): New function.
12569         (_initialize_amd64_tdep): Register handlers for x86-64 and
12570         x64_32 with GDB_OSABI_NONE.
12571         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12572         GDB_OSABI_NONE osabi.
12573
12574 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12575
12576         PR gdb/22980
12577         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12578         GDB_OSABI_NONE.
12579         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12580         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12581
12582 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12583
12584         * common/byte-vector.h (char_vector): New type.
12585         * target.h (target_read_alloc): Return
12586         gdb::optional<byte_vector>.
12587         (target_read_stralloc): Return gdb::optional<char_vector>.
12588         (target_get_osdata): Return gdb::optional<char_vector>.
12589         * target.c (target_read_alloc_1): Templatize.  Replacement
12590         manual memory management with vector.
12591         (target_read_alloc): Change return type, adjust.
12592         (target_read_stralloc): Change return type, adjust.
12593         (target_get_osdata): Change return type, adjust.
12594         * auxv.c (struct auxv_info) <length>: Remove.
12595         <data>: Change type to gdb::optional<byte_vector>.
12596         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12597         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12598         (target_auxv_search): Adjust.
12599         (fprint_target_auxv): Adjust.
12600         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12601         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12602         (linux_make_corefile_notes): Adjust.
12603         * osdata.c (get_osdata): Adjust.
12604         * remote.c (remote_get_threads_with_qxfer): Adjust.
12605         (remote_memory_map): Adjust.
12606         (remote_traceframe_info): Adjust.
12607         (btrace_read_config): Adjust.
12608         (remote_read_btrace): Adjust.
12609         (remote_pid_to_exec_file): Adjust.
12610         * solib-aix.c (solib_aix_get_library_list): Adjust.
12611         * solib-dsbt.c (decode_loadmap): Don't free buf.
12612         (dsbt_get_initial_loadmaps): Adjust.
12613         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12614         * solib-target.c (solib_target_current_sos): Adjust.
12615         * tracepoint.c (sdata_make_value): Adjust.
12616         * xml-support.c (xinclude_start_include): Adjust.
12617         (xml_fetch_content_from_file): Adjust.
12618         * xml-support.h (xml_fetch_another): Change return type.
12619         (xml_fetch_content_from_file): Change return type.
12620         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12621         * xml-tdesc.c (file_read_description_xml): Adjust.
12622         (fetch_available_features_from_target): Change return type.
12623         (target_fetch_description_xml): Adjust.
12624         (target_read_description_xml): Adjust.
12625
12626 2018-04-06  Tom Tromey  <tom@tromey.com>
12627
12628         * value.c (~value): Update.
12629         (struct value) <contents>: Now unique_xmalloc_ptr.
12630         (value_contents_bits_eq, allocate_value_contents)
12631         (value_contents_raw, value_contents_all_raw)
12632         (value_contents_for_printing, value_contents_for_printing_const)
12633         (set_value_enclosing_type): Update.
12634
12635 2018-04-06  Tom Tromey  <tom@tromey.com>
12636
12637         * value.c (range_s): Remove typedef, VEC.
12638         (struct range): Add operator<.
12639         (range_lessthan): Remove.
12640         (ranges_contain): Change type.
12641         (~value): Update.
12642         (struct value) <unavailable, optimized_out>: Now std::vector.
12643         (value_entirely_available)
12644         (value_entirely_covered_by_range_vector)
12645         (value_entirely_unavailable, value_entirely_optimized_out):
12646         Update.
12647         (insert_into_bit_range_vector): Change argument type.
12648         (find_first_range_overlap): Likewise.
12649         (struct ranges_and_idx, value_contents_bits_eq)
12650         (require_not_optimized_out, require_available): Update.
12651         (ranges_copy_adjusted): Change argument types.
12652         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12653
12654 2018-04-06  Tom Tromey  <tom@tromey.com>
12655
12656         * value.c (~value): Update.
12657         (struct value) <parent>: Now a value_ref_ptr.
12658         (value_parent, set_value_parent, value_address, value_copy):
12659         Update.
12660
12661 2018-04-06  Tom Tromey  <tom@tromey.com>
12662
12663         * value.c (struct value): Add constructor, destructor, and member
12664         initializers.
12665         (allocate_value_lazy, value_decref): Update.
12666
12667 2018-04-06  Tom Tromey  <tom@tromey.com>
12668
12669         * value.c (struct value) <released, next>: Remove.
12670         (all_values): Now a std::vector.
12671         (allocate_value_lazy): Update.
12672         (value_next): Remove.
12673         (value_mark, value_free_to_mark, release_value)
12674         (value_release_to_mark): Update.
12675
12676 2018-04-06  Tom Tromey  <tom@tromey.com>
12677
12678         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12679         (free_value_chain): Remove.
12680         * value.c (free_value_chain): Remove.
12681         (value_release_to_mark): Return a std::vector.
12682         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12683         std::vector.
12684         (check_condition): Update.
12685         * eval.c (fetch_subexp_value): Change "val_chain" to a
12686         std::vector.
12687         * breakpoint.c (update_watchpoint): Update.
12688         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12689
12690 2018-04-06  Tom Tromey  <tom@tromey.com>
12691
12692         * value.h (free_all_values): Remove.
12693         * value.c (free_all_values): Remove.
12694
12695 2018-04-06  Tom Tromey  <tom@tromey.com>
12696
12697         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12698         (value_history_chain, value_history_count): Remove.
12699         (value_history): New global.
12700         (record_latest_value, access_value_history, show_values)
12701         (preserve_values): Update.
12702
12703 2018-04-06  Tom Tromey  <tom@tromey.com>
12704
12705         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12706         * varobj.c (varobj_set_display_format, varobj_set_value)
12707         (install_default_visualizer, construct_visualizer)
12708         (install_new_value, ~varobj, varobj_get_value_type)
12709         (my_value_of_variable, varobj_editable_p): Update.
12710         * c-varobj.c (c_describe_child, c_value_of_variable)
12711         (cplus_number_of_children, cplus_describe_child): Update.
12712         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12713         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12714         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12715
12716 2018-04-06  Tom Tromey  <tom@tromey.com>
12717
12718         * printcmd.c (last_examine_address): Change type to
12719         value_ref_ptr.
12720         (do_examine, x_command): Update.
12721
12722 2018-04-06  Tom Tromey  <tom@tromey.com>
12723
12724         * value.c (release_value): Update.
12725         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12726         (struct bpstats) <val>: Now a value_ref_ptr.
12727         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12728         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12729         (~watchpoint, print_it_watchpoint, watch_command_1)
12730         (invalidate_bp_value_on_memory_change): Update.
12731
12732 2018-04-06  Tom Tromey  <tom@tromey.com>
12733
12734         * varobj.c (varobj_clear_saved_item)
12735         (update_dynamic_varobj_children, install_new_value, ~varobj):
12736         Update.
12737         * value.h (value_incref): Move declaration earlier.
12738         (value_decref): Rename from value_free.
12739         (struct value_ref_policy): New.
12740         (value_ref_ptr): New typedef.
12741         (struct value_deleter): Remove.
12742         (gdb_value_up): Remove typedef.
12743         (release_value): Change return type.
12744         (release_value_or_incref): Remove.
12745         * value.c (set_value_parent): Update.
12746         (value_incref): Change return type.
12747         (value_decref): Rename from value_free.
12748         (value_free_to_mark, free_all_values, free_value_chain): Update.
12749         (release_value): Return value_ref_ptr.
12750         (release_value_or_incref): Remove.
12751         (record_latest_value, set_internalvar, clear_internalvar):
12752         Update.
12753         * stack.c (info_frame_command): Don't call value_free.
12754         * python/py-value.c (valpy_dealloc, valpy_new)
12755         (value_to_value_object): Update.
12756         * printcmd.c (do_examine): Update.
12757         * opencl-lang.c (lval_func_free_closure): Update.
12758         * mi/mi-main.c (register_changed_p): Don't call value_free.
12759         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12760         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12761         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12762         value_free.
12763         * guile/scm-value.c (vlscm_free_value_smob)
12764         (vlscm_scm_from_value): Update.
12765         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12766         (frame_unwind_register_unsigned, get_frame_register_bytes)
12767         (put_frame_register_bytes): Don't call value_free.
12768         * findvar.c (address_from_register): Don't call value_free.
12769         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12770         * dwarf2loc.c (entry_data_value_free_closure)
12771         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12772         (dwarf2_evaluate_loc_desc_full): Update.
12773         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12774         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12775         (~watchpoint, watch_command_1)
12776         (invalidate_bp_value_on_memory_change): Update.
12777         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12778
12779 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12780
12781         PR gdb/23022
12782         * warning.m4: Add -Wno-error=deprecated-register.
12783         * configure: Re-generate.
12784
12785 2018-04-05  Tom Tromey  <tom@tromey.com>
12786
12787         * linespec.h: Remove include of "vec.h".
12788
12789 2018-04-05  Tom Tromey  <tom@tromey.com>
12790
12791         * linespec.c (typep): Remove typedef.
12792         (find_methods, find_superclass_methods): Take a std::vector.
12793         (find_method): Use std::vector.
12794
12795 2018-04-05  Tom Tromey  <tom@tromey.com>
12796
12797         * utils.c (compare_strings): Remove.
12798         * utils.h (compare_strings): Remove.
12799         * objc-lang.h (find_imps): Update.
12800         * objc-lang.c (find_methods): Take a std::vector.
12801         (uniquify_strings, find_imps): Likewise.
12802         * linespec.c (find_methods): Take a std::vector.
12803         (decode_objc): Use std::vector.
12804         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12805         a std::vector.
12806         (find_method, find_function_symbols): Use std::vector.
12807
12808 2018-04-05  Tom Tromey  <tom@tromey.com>
12809
12810         * completer.c (completion_tracker::completion_tracker): Remove
12811         cast.
12812         (completion_tracker::discard_completions): Likewise.
12813         * breakpoint.c (ambiguous_names_p): Remove cast.
12814         * ada-lang.c (_initialize_ada_language): Remove cast.
12815         * utils.h (streq): Update.
12816         (streq_hash): Add new declaration.
12817         * utils.c (streq): Return bool.
12818         (streq_hash): New function.
12819
12820 2018-04-05  Tom Tromey  <tom@tromey.com>
12821
12822         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12823         Remove a string copy.
12824
12825 2018-04-05  Tom Tromey  <tom@tromey.com>
12826
12827         * linespec.c (filter_results): Use std::vector.
12828         (decode_line_2, decode_line_full): Update.
12829
12830 2018-04-05  Tom Tromey  <tom@tromey.com>
12831
12832         * linespec.c (canonical_to_fullform): Return std::string.
12833         (filter_results): Update.
12834         (struct decode_line_2_item): Add constructor.
12835         <fullform, displayform>: Now std::string.
12836         (decode_line_2_compare_items): Now a std::sort comparator.
12837         (decode_line_2): Update.
12838
12839 2018-04-05  Tom Tromey  <tom@tromey.com>
12840
12841         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12842         (unexpected_linespec_error): Update.
12843         (linespec_parse_basic, parse_linespec): Update.
12844
12845 2018-04-05  Tom Tromey  <tom@tromey.com>
12846
12847         * linespec.c (linespec_parse_basic): Reindent.
12848
12849 2018-04-05  Tom Tromey  <tom@tromey.com>
12850
12851         * minsyms.h (iterate_over_minimal_symbols): Update.
12852         * minsyms.c (iterate_over_minimal_symbols): Take a
12853         gdb::function_view.
12854         * linespec.c (struct collect_minsyms): Remove.
12855         (compare_msyms): Now a std::sort comparator.
12856         (add_minsym): Add parameters.
12857         (search_minsyms_for_name): Update.  Use std::vector.
12858
12859 2018-04-03  Tom Tromey  <tom@tromey.com>
12860
12861         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12862         gdb::byte_vector.
12863
12864 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12865
12866         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12867
12868 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12869
12870         PR gdb/16959
12871         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12872         printing static type.
12873
12874 2018-04-01  Tom Tromey  <tom@tromey.com>
12875
12876         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12877         (rs6000_xfer_shared_libraries): Update.
12878
12879 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12880
12881         * common/gdb_vecs.h (char_ptr): Remove.
12882         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12883
12884 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12885
12886         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12887         with std::vector.
12888         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12889
12890 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12891
12892         * tracepoint.h (struct uploaded_tp): Initialize fields.
12893         <actions, step_actions, cmd_strings>: Change type to
12894         std::vector<char *>.
12895         * tracepoint.c (get_uploaded_tp): Allocate with new.
12896         (free_uploaded_tps): Free with delete.
12897         (parse_tracepoint_definition): Adjust to std::vector change.
12898         * breakpoint.c (read_uploaded_action): Likewise.
12899         (create_tracepoint_from_upload): Likewise.
12900         * ctf.c (ctf_write_uploaded_tp): Likewise.
12901         (SET_ARRAY_FIELD): Likewise.
12902         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12903
12904 2018-03-30  Tom Tromey  <tom@tromey.com>
12905
12906         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12907         std::unique_ptr.
12908         (svr4_keep_data_in_core): Update.
12909         (svr4_read_so_list): Update.
12910
12911 2018-03-30  Tom Tromey  <tom@tromey.com>
12912
12913         * windows-nat.c (handle_output_debug_string, handle_exception):
12914         Update.
12915         * target.h (target_read_string): Update.
12916         * target.c (target_read_string): Change "string" to
12917         unique_xmalloc_ptr.
12918         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12919         Update.
12920         * solib-frv.c (frv_current_sos): Update.
12921         * solib-dsbt.c (dsbt_current_sos): Update.
12922         * solib-darwin.c (darwin_current_sos): Update.
12923         * linux-thread-db.c (inferior_has_bug): Update.
12924         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12925         Update.  Remove alloca.
12926         * ada-lang.c (ada_main_name): Update.
12927
12928 2018-03-30  Tom Tromey  <tom@tromey.com>
12929
12930         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12931         (struct dwo_file_deleter): New.
12932         (dwo_file_up): New typedef.
12933         (open_and_init_dwo_file): Use dwo_file_up.
12934         (free_dwo_file_cleanup): Remove.
12935
12936 2018-03-30  Tom Tromey  <tom@tromey.com>
12937
12938         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12939         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12940
12941 2018-03-30  Tom Tromey  <tom@tromey.com>
12942
12943         * dwarf2read.c (class free_cached_comp_units): New class.
12944         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12945         (free_cached_comp_units): Remove function.
12946
12947 2018-03-30  Tom Tromey  <tom@tromey.com>
12948
12949         * utils.h (make_cleanup_unpush_target): Remove.
12950         * inf-ptrace.c (struct target_unpusher): New.
12951         (target_unpush_up) New typedef.
12952         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12953         target_unpush_up.
12954         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12955
12956 2018-03-27  Tom Tromey  <tom@tromey.com>
12957
12958         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12959
12960 2018-03-27  Pedro Alves  <palves@redhat.com>
12961             Tom Tromey  <tom@tromey.com>
12962
12963         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12964         destructor.  Now a class.
12965         (gdb_readline_wrapper_cleanup): Remove function.
12966         (gdb_readline_wrapper): Remove cleanups.
12967
12968 2018-03-27  Tom Tromey  <tom@tromey.com>
12969
12970         * typeprint.h (struct type_print_options) <local_typedefs,
12971         global_typedefs>: Remove "struct" keyword.
12972         (class typedef_hash_table): New class.
12973         (recursively_update_typedef_hash, add_template_parameters)
12974         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12975         (find_typedef_in_hash): Don't declare.
12976         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12977         (typedef_hash_table::recursively_update): Rename from
12978         recursively_update_typedef_hash.  Now a member.
12979         (typedef_hash_table::add_template_parameters): Rename from
12980         add_template_parameters.  Now a member.
12981         (typedef_hash_table::typedef_hash_table): Now a constructor;
12982         rename from create_typedef_hash.
12983         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12984         rename from free_typedef_hash.
12985         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12986         (do_free_global_table): Remove.
12987         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12988         from copy_type_recursive.
12989         (create_global_typedef_table): Remove.
12990         (typedef_hash_table::find_global_typedef): Now a member of
12991         typedef_hash_table.
12992         (typedef_hash_table::find_typedef): Rename from
12993         find_typedef_in_hash; now a member.
12994         (whatis_exp): Update.
12995         * extension.h (struct ext_lang_type_printers): Add constructor and
12996         destructor.
12997         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12998         declare.
12999         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13000         Now a constructor; rename from start_ext_lang_type_printers.
13001         (ext_lang_type_printers): Now a destructor; rename from
13002         free_ext_lang_type_printers.
13003         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13004         Update.
13005         (c_type_print_base_struct_union): Update.  Remove cleanups.
13006
13007 2018-03-27  Tom Tromey  <tom@tromey.com>
13008
13009         * dwarf-index-write.c: Include <cmath>.
13010
13011 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13012
13013         * NEWS: Add entry describing new "set|show varsize-limit" command.
13014         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13015         command.
13016         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13017         "set variable".
13018
13019 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13020
13021         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13022         dwarf-index-write.c
13023         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13024         * dwarf-index-common.c: New file.
13025         * dwarf-index-common.h: New file.
13026         * dwarf-index-write.c: New file.
13027         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13028         (struct dwarf2_section_info): Move from here.
13029         (dwarf2_section_info_def): Likewise.
13030         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13031         (offset_type): Likewise.
13032         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13033         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13034         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13035         (byte_swap): Likewise.
13036         (MAYBE_SWAP): Likewise.
13037         (dwarf2_per_cu_ptr): Likewise.
13038         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13039         (struct tu_stats): Likewise.
13040         (struct dwarf2_per_objfile): Likewise.
13041         (struct dwarf2_per_cu_data): Likewise.
13042         (struct signatured_type): Likewise.
13043         (sig_type_ptr): Likewise.
13044         (DEF_VEC_P (sig_type_ptr)): Likewise.
13045         (INDEX4_SUFFIX): Likewise.
13046         (INDEX5_SUFFIX): Likewise.
13047         (DEBUG_STR_SUFFIX): Likewise.
13048         (dwarf2_read_section): Make non-static.
13049         (mapped_index_string_hash): Move from here.
13050         (dwarf5_djb_hash): Likewise.
13051         (file_write): Likewise.
13052         (class data_buf): Likewise.
13053         (struct symtab_index_entry): Likewise.
13054         (struct mapped_symtab): Likewise.
13055         (find_slot): Likewise.
13056         (hash_expand): Likewise.
13057         (add_index_entry): Likewise.
13058         (uniquify_cu_indices): Likewise.
13059         (class c_str_view): Likewise.
13060         (class c_str_view_hasher): Likewise.
13061         (class vector_hasher): Likewise.
13062         (write_hash_table): Likewise.
13063         (psym_index_map): Likewise.
13064         (struct addrmap_index_data): Likewise.
13065         (add_address_entry): Likewise.
13066         (add_address_entry_worker): Likewise.
13067         (write_address_map): Likewise.
13068         (symbol_kind): Likewise.
13069         (write_psymbols): Likewise.
13070         (struct signatured_type_index_data): Likewise.
13071         (write_one_signatured_type): Likewise.
13072         (recursively_count_psymbols): Likewise.
13073         (recursively_write_psymbols): Likewise.
13074         (class debug_names): Likewise.
13075         (check_dwarf64_offsets): Likewise.
13076         (psyms_seen_size): Likewise.
13077         (write_gdbindex): Likewise.
13078         (write_debug_names): Likewise.
13079         (assert_file_size): Likewise.
13080         (write_psymtabs_to_index): Likewise.
13081         (save_gdb_index_command): Likewise.
13082         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13083         command.
13084         * dwarf2read.h: New file.
13085
13086 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13087
13088         PR gdb/22670
13089         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13090         symbol name if the CU's language stores symbol names in linkage
13091         format.
13092         * language.h (struct language_defn)
13093         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13094         all instances of this struct.
13095
13096 2018-03-26  Tom Tromey  <tom@tromey.com>
13097
13098         * stack.c (backtrace_command_1): Remove verbose code.
13099
13100 2018-03-26  Tom Tromey  <tom@tromey.com>
13101
13102         * python/py-framefilter.c (py_print_type): Don't catch
13103         exceptions.  Return void.
13104         (py_print_value): Likewise.
13105         (py_print_single_arg): Likewise.
13106         (enumerate_args): Don't catch exceptions.
13107         (py_print_args): Likewise.
13108         (py_print_frame): Likewise.
13109         (gdbpy_apply_frame_filter): Catch exceptions here.
13110
13111 2018-03-26  Tom Tromey  <tom@tromey.com>
13112
13113         * stack.c (_initialize_stack): Remove trailing newlines from help
13114         text.  Add "Usage" line to "backtrace" help.
13115
13116 2018-03-26  Tom Tromey  <tom@tromey.com>
13117
13118         PR python/16486:
13119         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13120
13121 2018-03-26  Tom Tromey  <tom@tromey.com>
13122
13123         * python/py-framefilter.c (py_print_single_arg): Return
13124         EXT_LANG_BT_ERROR from catch.
13125
13126 2018-03-26  Tom Tromey  <tom@tromey.com>
13127
13128         PR backtrace/15584:
13129         * stack.c (backtrace_command_1): Move some code into no-filters
13130         "if".
13131
13132 2018-03-26  Tom Tromey  <tom@tromey.com>
13133
13134         * python/py-framefilter.c (throw_quit_or_print_exception): New
13135         function.
13136         (gdbpy_apply_frame_filter): Use it.
13137
13138 2018-03-26  Tom Tromey  <tom@tromey.com>
13139
13140         PR cli/17716:
13141         * python/py-framefilter.c (py_print_type, py_print_value)
13142         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13143         RETURN_MASK_ERROR.
13144
13145 2018-03-26  Tom Tromey  <tom@tromey.com>
13146
13147         * python/py-framefilter.c (enumerate_args): Use
13148         gdb::unique_xmalloc_ptr.
13149
13150 2018-03-26  Tom Tromey  <tom@tromey.com>
13151
13152         * python/py-framefilter.c (py_print_frame): Return
13153         EXT_LANG_BT_OK.
13154         (gdbpy_apply_frame_filter): Update comment.
13155         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13156         Remove.
13157         <EXT_LANG_BT_NO_FILTERS>: Change value.
13158
13159 2018-03-26  Tom Tromey  <tom@tromey.com>
13160
13161         PR backtrace/15582:
13162         * stack.c (backtrace_command): Parse "hide" argument.
13163         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13164         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13165         constant.
13166
13167 2018-03-26  Tom Tromey  <tom@tromey.com>
13168
13169         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13170         add "flags".
13171         (backtrace_command): Remove "fulltrace", add "flags".
13172
13173 2018-03-26  Tom Tromey  <tom@tromey.com>
13174
13175         * stack.c (backtrace_command): Rewrite command line parsing.
13176
13177 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13178
13179         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13180
13181 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13182
13183         * filename-seen-cache.h: Add include guard.
13184
13185 2018-03-26  Keith Seitz  <keiths@redhat.com>
13186
13187         * symfile.c (place_section): Remove "struct" from section_addr_info
13188         in comment.
13189         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13190         "struct" keyword from section_addr_info.
13191
13192 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13193
13194         * regformats/regdef.h (reg): Add constructors.
13195
13196 2018-03-25  Pedro Alves  <palves@redhat.com>
13197
13198         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13199         if then/else bodies in var_func_name extraction.
13200
13201 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13202
13203         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13204         lookup_minimal_symbol() to find symbol entry.
13205         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13206
13207 2018-03-23  Keith Seitz  <keiths@redhat.com>
13208
13209         PR c++/22968
13210         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13211         nested type definitions for C++, too.
13212
13213 2018-03-23  Tom Tromey  <tom@tromey.com>
13214
13215         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13216         a typedef.
13217         (macho_register_oso): Remove.
13218         (macho_symtab_read): Take a std::vector.
13219         (oso_el_compare_name): Now a std::sort comparator.
13220         (macho_symfile_read_all_oso): Take a std::vector.
13221         (macho_symfile_read): Use std::vector.  Remove cleanups.
13222
13223 2018-03-22  Tom Tromey  <tom@tromey.com>
13224
13225         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13226         (record_full_goto_bookmark): Use std::string.
13227
13228 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13229
13230         PR tdep/18295
13231         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13232         a single mask.
13233
13234 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13235
13236         * rs6000-tdep.c (store_insn_p): New function.
13237         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13238         and cr_reg to their unshifted values. Use store_insn_p to
13239         match LR saves using either R1 or fdata->alloca_reg. Use
13240         store_insn_p to match CR saves. Set alloca_reg_offset
13241         when alloca_reg and framep are set. Remove lr_reg shift
13242         when assigning to fdata->lr_register.
13243
13244 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13245
13246         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13247         command line args instead of emitting a warning.
13248
13249 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13250
13251         * tracepoint.h (struct static_tracepoint_marker): Initialize
13252         fields, define default constructor, move constructor and move
13253         assignment, disable the rest.
13254         <str_id, extra>: Make std::string.
13255         (release_static_tracepoint_marker): Remove.
13256         (free_current_marker): Remove.
13257         * tracepoint.c (free_current_marker): Remove.
13258         (parse_static_tracepoint_marker_definition): Adjust to
13259         std::string, use new hex2str overload.
13260         (release_static_tracepoint_marker): Remove.
13261         (print_one_static_tracepoint_marker): Get marker by reference
13262         and adjust to std::string.
13263         (info_static_tracepoint_markers_command): Adjust to std::vector
13264         changes
13265         * target.h (static_tracepoint_marker_p): Remove typedef.
13266         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13267         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13268         bool.
13269         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13270         * target-debug.h
13271         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13272         (target_debug_print_std_vector_static_tracepoint_marker): New.
13273         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13274         to...
13275         (target_debug_print_static_tracepoint_marker_p): ... this.
13276         * target-delegates.c: Re-generate.
13277         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13278         Make std::string.
13279         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13280         (decode_static_tracepoint_spec): Adjust to std::vector.
13281         (tracepoint_print_one_detail): Adjust to std::string.
13282         (strace_marker_decode_location): Adjust to std::string.
13283         (update_static_tracepoint): Adjust to std::string, remove call
13284         to release_static_tracepoint_marker.
13285         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13286         Adjust to std::vector.
13287         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13288         (remote_static_tracepoint_markers_by_strid): Adjust to
13289         std::vector.
13290         * common/rsp-low.h (hex2str): New overload with explicit count
13291         of bytes.
13292         * common/rsp-low.c (hex2str): New overload with explicit count
13293         of bytes.
13294         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13295         (_initialize_rsp_low_selftests): Add test_hex2str test.
13296         * unittests/tracepoint-selftests.c
13297         (test_parse_static_tracepoint_marker_definition): Adjust to
13298         std::string.
13299
13300 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13301
13302         * tracepoint.c (parse_static_tracepoint_marker_definition):
13303         Consider case where the definition is followed by more
13304         definitions.
13305         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13306         tracepoint-selftests.c.
13307         * unittests/tracepoint-selftests.c: New.
13308
13309 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13310
13311         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13312         Carvalho.
13313
13314 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13315
13316         * symtab.c (find_pc_sect_line): fixed indentation.
13317
13318 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13319
13320         * symtab.c (find_pc_sect_line): now uses binary search.
13321
13322 2018-03-19  Tom Tromey  <tom@tromey.com>
13323
13324         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13325         "IDENT" production.
13326
13327 2018-03-19  Pedro Alves  <palves@redhat.com>
13328             Tom Tromey  <tom@tromey.com>
13329
13330         * unittests/observable-selftests.c: New file.
13331         * common/observable.h: New file.
13332         * observable.h: New file.
13333         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13334         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13335         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13336         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13337         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13338         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13339         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13340         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13341         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13342         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13343         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13344         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13345         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13346         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13347         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13348         tui/tui-interp.c, valops.c: Update all users.
13349         * tui/tui-hooks.c (tui_bp_created_observer)
13350         (tui_bp_deleted_observer, tui_bp_modified_observer)
13351         (tui_inferior_exit_observer, tui_before_prompt_observer)
13352         (tui_normal_stop_observer, tui_register_changed_observer):
13353         Remove.
13354         (tui_observers_token): New global.
13355         (attach_or_detach, tui_attach_detach_observers): New functions.
13356         (tui_install_hooks, tui_remove_hooks): Use
13357         tui_attach_detach_observers.
13358         * record-btrace.c (record_btrace_thread_observer): Remove.
13359         (record_btrace_thread_observer_token): New global.
13360         * observer.sh: Remove.
13361         * observer.c: Rename to observable.c.
13362         * observable.c (namespace gdb_observers): Define new objects.
13363         (observer_debug): Move into gdb_observers namespace.
13364         (struct observer, struct observer_list, xalloc_observer_list_node)
13365         (xfree_observer_list_node, generic_observer_attach)
13366         (generic_observer_detach, generic_observer_notify): Remove.
13367         (_initialize_observer): Update.
13368         Don't include observer.inc.
13369         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13370         (clean mostlyclean): Likewise.
13371         (observer.h, observer.inc): Remove targets.
13372         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13373         (COMMON_SFILES): Use observable.c, not observer.c.
13374         * .gitignore: Remove observer.h.
13375
13376 2018-03-18  Tom Tromey  <tom@tromey.com>
13377
13378         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13379         gdb::def_vector.
13380         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13381
13382 2018-03-17  Tom Tromey  <tom@tromey.com>
13383
13384         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13385
13386 2018-03-17  Tom Tromey  <tom@tromey.com>
13387
13388         * target.c (class scoped_target_fd): New.
13389         (target_fileio_close_cleanup): Remove.
13390         (target_fileio_read_alloc_1): Use scoped_target_fd.
13391
13392 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13393
13394         * silent-rules.mk: New.
13395         * Makefile.in: Include silent-rules.mk
13396         (srcdir, VPATH, top_srcdir): Move up.
13397         (COMPILE): Add ECHO_CXX.
13398         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13399         (init.c): Add ECHO_INIT_C.
13400         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13401         (version.c): Add ECHO_GEN.
13402         (printcmd.o): Add ECHO_CXX.
13403         (target-float.o): Add ECHO_CXX.
13404         (ada-exp.o): Add ECHO_CXX.
13405         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13406         (insight$(EXEEXT)): Add ECHO_CXXLD.
13407         * gnulib/configure.ac: Add AM_SILENT_RULES.
13408         * gnulib/aclocal.m4: Re-generate.
13409         * gnulib/configure: Re-generate.
13410         * gnulib/import/Makefile.in: Re-generate.
13411
13412 2018-03-16  Tom Tromey  <tom@tromey.com>
13413
13414         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13415         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13416         * utils.c (do_free_section_addr_info)
13417         (make_cleanup_free_section_addr_info): Remove.
13418         * symfile.h (struct other_sections): Add constructor.
13419         (struct section_addr_info): Remove.
13420         (section_addr_info): New typedef.
13421         (struct sym_fns) <sym_offsets>: Change type of parameter.
13422         (build_section_addr_info_from_objfile)
13423         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13424         (default_symfile_offsets, symbol_file_add)
13425         (symbol_file_add_from_bfd)
13426         (build_section_addr_info_from_section_table): Update.
13427         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13428         * symfile.c (alloc_section_addr_info): Remove.
13429         (build_section_addr_info_from_section_table): Change return type.
13430         Update.
13431         (build_section_addr_info_from_bfd)
13432         (build_section_addr_info_from_objfile): Likewise.
13433         (free_section_addr_info): Remove.
13434         (relative_addr_info_to_section_offsets): Change type of "addrs".
13435         (addrs_section_compar): Now a std::sort comparator.
13436         (addrs_section_sort): Change return type.
13437         (addr_info_make_relative): Change type of "addrs".  Update.
13438         (default_symfile_offsets, syms_from_objfile_1)
13439         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13440         (symbol_file_add_separate): Update.
13441         (symbol_file_add): Change type of "addrs".  Update.
13442         (add_symbol_file_command): Update.  Remove cleanups.
13443         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13444         cleanups.
13445         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13446         * solib.c (solib_read_symbols): Update.
13447         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13448         * machoread.c (macho_symfile_offsets): Update.
13449         * jit.c (jit_bfd_try_read_symtab): Update.
13450
13451 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13452
13453         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13454         unittests/utils-selftests.c.
13455         * unittests/utils-selftests.c: New file.
13456
13457 2018-03-14  Tom Tromey  <tom@tromey.com>
13458
13459         PR cli/14977:
13460         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13461         for NULL.
13462
13463 2018-03-14  Tom Tromey  <tom@tromey.com>
13464
13465         PR cli/19918:
13466         * printcmd.c (printf_pointer): Allow "-" in format.
13467
13468 2018-03-14  Tom Tromey  <tom@tromey.com>
13469
13470         * printcmd.c (_initialize_printcmd): Add usage to printf.
13471
13472 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13473
13474         * MAINTAINERS: Update my email address.
13475
13476 2018-03-13  Tom Tromey  <tom@tromey.com>
13477
13478         * machoread.c (macho_check_dsym): Change filenamep to a
13479         std::string*.
13480         (macho_symfile_read): Update.
13481         * symfile.c (load_command): Use std::string.
13482
13483 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13484
13485         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13486         to error message string.
13487         (riscv_register_name): Use xsnprintf instead of sprintf.
13488         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13489         internal_error.
13490         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13491         error.
13492         (riscv_push_dummy_call): Likewise.
13493
13494 2018-03-12  Tom Tromey  <tom@tromey.com>
13495
13496         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13497         Use gdb::byte_vector.
13498         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13499
13500 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13501
13502         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13503         parameter type to readable_regcache.
13504         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13505         the declaration.
13506
13507 2018-03-11  Tom Tromey  <tom@tromey.com>
13508
13509         * dwarf2read.c (struct nextfield): Add initializers.
13510         (struct nextfnfield): Remove.
13511         (struct fnfieldlist): Add initializers.  Remove "length" and
13512         "head", use std::vector.
13513         (struct decl_field_list): Remove.
13514         (struct field_info): Add initializers.
13515         <fields, baseclasses>: Now std::vector.
13516         <nbaseclasses, nfnfields, typedef_field_list_count,
13517         nested_types_list_count>: Remove.
13518         (dwarf2_add_field, dwarf2_add_type_defn)
13519         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13520         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13521         (process_structure_scope): Update.
13522
13523 2018-03-11  Tom Tromey  <tom@tromey.com>
13524
13525         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13526         for use by std::sort.
13527         (build_type_psymtabs_1): Use std::vector.
13528
13529 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13530
13531         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13532         and LIBMPFR in the printed configuration.
13533
13534 2018-03-08  Tom Tromey  <tom@tromey.com>
13535
13536         * source.c (get_filename_and_charpos): Use scoped_fd.
13537         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13538         (procfs_pidlist): Likewise.
13539         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13540         (iterate_over_mappings): Likewise.
13541
13542 2018-03-08  Tom Tromey  <tom@tromey.com>
13543
13544         * infcall.c (struct call_return_meta_info)
13545         <stack_temporaries_enabled>: Remove.
13546         (get_call_return_value, call_function_by_hand_dummy): Update.
13547         * thread.c (disable_thread_stack_temporaries): Remove.
13548         (enable_thread_stack_temporaries): Remove.
13549         (thread_stack_temporaries_enabled_p): Return bool.
13550         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13551         (get_last_thread_stack_temporary): Update.
13552         * eval.c (evaluate_subexp): Update.
13553         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13554         class, not a function.
13555         (value_ptr, value_vec): Remove typedefs.
13556         (class thread_info) <stack_temporaries_enabled>: Now bool.
13557         <stack_temporaries>: Now a std::vector.
13558         (thread_stack_temporaries_enabled_p)
13559         (value_in_thread_stack_temporaries): Return bool.
13560
13561 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13562
13563         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13564         (getpkt_or_notif_sane_1): Likewise.
13565
13566 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13567
13568         * build-id.c (build_id_to_debug_bfd): Use std::string.
13569
13570 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13571
13572         * build-id.c (find_separate_debug_file_by_buildid): Return
13573         std::string.
13574         * build-id.h (find_separate_debug_file_by_buildid): Return
13575         std::string.
13576         * coffread.c (coff_symfile_read): Adjust to std::string.
13577         * elfread.c (elf_symfile_read): Adjust to std::string.
13578         * symfile.c (separate_debug_file_exists): Change parameter to
13579         std::string.
13580         (find_separate_debug_file): Return std::string.
13581         (find_separate_debug_file_by_debuglink): Return std::string.
13582         * symfile.h (find_separate_debug_file_by_debuglink): Return
13583         std::string.
13584
13585 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13586
13587         * common/xml-utils.c (xml_escape_text): Move code to...
13588         (xml_escape_text_append): ... this new function.
13589         * common/xml-utils.h (xml_escape_text_append): New declaration.
13590         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13591         New function.
13592         (_initialize_xml_utils): register test_xml_escape_text_append as
13593         a selftest.
13594
13595 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13596
13597         * defs.h: Remove MAX_REGISTER_SIZE.
13598         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13599         asserts.
13600         * python/py-unwind.c (pyuw_sniffer): Likewise.
13601
13602 2018-03-07  Tom Tromey  <tom@tromey.com>
13603
13604         * linux-tdep.c (linux_info_proc): Update.
13605         * target.h (struct target_ops) <to_fileio_readlink>: Return
13606         optional<string>.
13607         (target_fileio_readlink): Return optional<string>.
13608         * remote.c (remote_hostio_readlink): Return optional<string>.
13609         * inf-child.c (inf_child_fileio_readlink): Return
13610         optional<string>.
13611         * target.c (target_fileio_readlink): Return optional<string>.
13612
13613 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13614
13615         * regcache.c (cooked_read_test): Add riscv to the list of
13616         architectures that have a save_reggroup.
13617
13618 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13619
13620         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13621         value is not a dynamic class object.
13622
13623 2018-03-06  Tom Tromey  <tom@tromey.com>
13624
13625         * rust-exp.y: Formatting fixes.
13626
13627 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13628
13629         * riscv-tdep.c (riscv_register_name): Remove target description
13630         support.
13631         (riscv_gdbarch_init): Remove target description check.
13632
13633 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13634
13635         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13636         comment.
13637         * riscv-tdep.h: Likewise.
13638
13639 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13640
13641         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13642         (riscv_pseudo_register_write): Delete.
13643         (riscv_gdbarch_init): Remove all use of pseudo registers.
13644
13645 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13646
13647         * record-btrace.c (btrace_print_lines): Replace cleanup
13648         parameter with RAII equivalents.
13649         (btrace_insn_history): Replace cleanup with RAII equivalents.
13650         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13651         make_cleanup_ui_out_tuple_begin_end): Remove.
13652         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13653         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13654         make_cleanup_ui_out_list_begin_end): Remove.
13655
13656 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13657
13658         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13659         parameter types to std::vector.  Use bool.
13660         (record_btrace_wait): Replace VEC(tp_t) with
13661         std::vector<thread_info *>.
13662         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13663
13664 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13665
13666         * record-btrace.c (record_btrace_disable_callback): Remove.
13667         (struct scoped_btrace_disable): New.
13668         (record_btrace_open): Use scoped_btrace_disable.
13669
13670 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13671
13672         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13673         reading values from registers.
13674
13675 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13676
13677         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13678         where appropriate.
13679
13680 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13681
13682         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13683         change parameter type.  Use GDB's print functions, and use
13684         core_addr_to_string where appropriate.
13685         (riscv_push_dummy_call): Use core_addr_to_string where
13686         appropriate, update call to riscv_print_arg_location, and reindent
13687         a few lines.
13688         (riscv_return_value): Update call to riscv_print_arg_location.
13689
13690 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13691             Tim Newsome <tim@sifive.com>
13692             Albert Ou <a0u@eecs.berkeley.edu>
13693             Darius Rad <darius@bluespec.com>
13694
13695         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13696         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13697         (ALLDEPFILES): Add riscv-tdep.c
13698         * configure.tgt: Add riscv support.
13699         * riscv-tdep.c: New file.
13700         * riscv-tdep.h: New file.
13701         * NEWS: Mention new target.
13702         * MAINTAINERS: Add entry for riscv.
13703
13704 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13705
13706         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13707         fields within aggregates.
13708
13709 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13710
13711         * record-btrace.c (btrace_print_lines): Change type of flags to
13712         gdb_disassembly_flags.
13713
13714 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13715
13716         * fbsd-nat.c: Include "inf-ptrace.h".
13717         (USE_SIGTRAP_SIGINFO): Conditionally define.
13718         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13719         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13720         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13721         function.
13722         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13723         Likewise.
13724         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13725         Likewise.
13726         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13727         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13728         "supports_stopped_by_hw_breakpoint" target methods.
13729
13730 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13731
13732         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13733         * fbsd-nat.c (debug_fbsd_nat): New variable.
13734         (show_fbsd_nat_debug): New function.
13735         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13736         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13737
13738 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13739
13740         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13741         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13742         prototype.
13743         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13744         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13745         method.
13746
13747 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13748
13749         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13750         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13751
13752 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13753
13754         * charset.c (struct charset_vector): New.
13755         (charsets): Change type to charset_vector.
13756         (find_charset_names): Adjust.
13757         (add_one): Adjust.
13758         (_initialize_charset): Adjust.
13759
13760 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13761
13762         * progspace.h (struct program_space) <deleted_solibs>: Change
13763         type to std::vector<std::string>.
13764         * progspace.c (clear_program_space_solib_cache): Adjust.
13765         * breakpoint.c (print_solib_event): Adjust.
13766         (check_status_catch_solib): Adjust.
13767         * solib.c (update_solib_list): Adjust.
13768         * ui-out.h (class ui_out) <field_string>: New overload.
13769         * ui-out.c (ui_out::field_string): New overload.
13770
13771 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13772
13773         * progspace.h (struct program_space): Add constructor and
13774         destructor, initialize fields.
13775         (add_program_space): Remove.
13776         * progspace.c (add_program_space): Rename to...
13777         (program_space::program_space): ... this.
13778         (release_program_space): Rename to...
13779         (program_space::~program_space): ... this.
13780         (delete_program_space): Use delete to delete program_space.
13781         (initialize_progspace): Use new to allocate program_space.
13782         * inferior.c (add_inferior_with_spaces): Likewise.
13783         (clone_inferior_command): Likewise.
13784         * infrun.c (follow_fork_inferior): Likewise.
13785         (handle_vfork_child_exec_or_exit): Likewise.
13786
13787 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13788
13789         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13790         (delim_string_to_char_ptr_vec): Return std::vector of
13791         gdb::unique_xmalloc_ptr.
13792         (dirnames_to_char_ptr_vec_append): Take std::vector of
13793         gdb::unique_xmalloc_ptr.
13794         (dirnames_to_char_ptr_vec): Return std::vector of
13795         gdb::unique_xmalloc_ptr.
13796         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13797         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13798         (delim_string_to_char_ptr_vec): Return an std::vector of
13799         gdb::unique_xmalloc_ptr, adjust the code.
13800         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13801         gdb::unique_xmalloc_ptr, adjust the code.
13802         (dirnames_to_char_ptr_vec): Return an std::vector of
13803         gdb::unique_xmalloc_ptr, adjust the code.
13804         * auto-load.c (auto_load_safe_path_vec): Change type to
13805         std::vector of gdb::unique_xmalloc_ptr.
13806         (auto_load_expand_dir_vars): Return an std::vector of
13807         gdb::unique_xmalloc_ptr, adjust the code.
13808         (auto_load_safe_path_vec_update): Adjust.
13809         (filename_is_in_auto_load_safe_path_vec): Adjust.
13810         (auto_load_objfile_script_1): Adjust.
13811         * build-id.c (build_id_to_debug_bfd): Adjust.
13812         * linux-thread-db.c (thread_db_load_search): Adjust.
13813         * source.c (add_path): Adjust.
13814         (openp): Adjust.
13815         * symfile.c (find_separate_debug_file): Adjust.
13816         * utils.c (do_free_char_ptr_vec): Remove.
13817         (make_cleanup_free_char_ptr_vec): Remove.
13818
13819 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13820
13821         PR gdb/22907
13822         * common/pathstuff.c: Conditionally include "<windows.h>".
13823
13824 2018-03-01  Georg Sauthoff  <mail@georg.so>
13825
13826         PR gdb/22888
13827         * gcore.in: Quote variables and switch interpreter to bash.
13828
13829 2018-03-01  Tom Tromey  <tom@tromey.com>
13830
13831         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13832         assertion.  Add assertion for discriminant_index.
13833         (quirk_rust_enum): Use correct base type name in univariant case.
13834
13835 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13836
13837         * record.c (get_call_history_modifiers): Return a
13838         record_print_flags.
13839         (cmd_record_call_history): Adjust.
13840         * record-btrace.c (record_btrace_call_history): Adjust.
13841         (record_btrace_call_history_range): Adjust.
13842         (record_btrace_call_history_from): Adjust.
13843         * target-debug.h (target_debug_print_record_print_flags): New.
13844         * target-delegates.c: Re-generate.
13845         * target.c (target_call_history): Change flags type.
13846         (target_call_history_from): Likewise.
13847         (target_call_history_range): Likewise.
13848         * target.h (struct target_ops) <target_call_history>: Likewise.
13849         (target_call_history_from): Likewise.
13850         (target_call_history_range): Likewise.
13851
13852 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13853             Simon Marchi  <simon.marchi@polymtl.ca>
13854
13855         * common/common-utils.c: Include "sys/stat.h".
13856         (is_regular_file): Move here from "source.c"; change return
13857         type to "bool".
13858         * common/common-utils.h (is_regular_file): New prototype.
13859         * common/pathstuff.c (contains_dir_separator): New function.
13860         * common/pathstuff.h (contains_dir_separator): New prototype.
13861         * source.c: Don't include "sys/stat.h".
13862         (is_regular_file): Move to "common/common-utils.c".
13863
13864 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13865
13866         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13867         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13868         * auto-load.c: Include "common/pathstuff.h".
13869         * common/common-def.h (current_directory): Move here.
13870         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13871         function.
13872         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13873         prototype.
13874         * common/pathstuff.c: New file.
13875         * common/pathstuff.h: New file.
13876         * compile/compile.c: Include "common/pathstuff.h".
13877         * defs.h (current_directory): Move to "common/common-defs.h".
13878         * dwarf2read.c: Include "common/pathstuff.h".
13879         * exec.c: Likewise.
13880         * guile/scm-safe-call.c: Likewise.
13881         * linux-thread-db.c: Likewise.
13882         * main.c: Likewise.
13883         * nto-tdep.c: Likewise.
13884         * objfiles.c: Likewise.
13885         * source.c: Likewise.
13886         * symtab.c: Likewise.
13887         * utils.c: Include "common/pathstuff.h".
13888         (gdb_realpath): Move to "common/pathstuff.c".
13889         (gdb_realpath_keepfile): Likewise.
13890         (gdb_abspath): Likewise.
13891         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13892         (gdb_realpath_keepfile): Likewise.
13893         (gdb_abspath): Likewise.
13894
13895 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13896
13897         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13898         wildcard process pid for super_resume for kernels with a
13899         specific bug.
13900
13901 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13902
13903         * compile/compile.c (get_args): Add additional comments
13904         explaining function.
13905
13906 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13907             Tom Tromey  <tom@tromey.com>
13908
13909         * target.h (memory_write_request_s): Remove typedef.  Don't define
13910         VEC.
13911         (target_write_memory_blocks): Change argument to std::vector.
13912         (struct memory_write_request): Add constructor.
13913         * target-memory.c (compare_block_starting_address): Return bool.
13914         Change argument types.
13915         (claim_memory): Change arguments to use std::vector.
13916         (split_regular_and_flash_blocks, blocks_to_erase)
13917         (compute_garbled_blocks): Likewise.
13918         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13919         (target_write_memory_blocks): Change argument to std::vector.
13920         * symfile.c (struct load_section_data): Add constructor and
13921         destructor.  Use std::vector for "requests".
13922         (struct load_progress_data): Add initializers.
13923         (load_section_callback): Update.  Use "new".
13924         (clear_memory_write_data): Remove.
13925         (generic_load): Update.
13926
13927 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13928
13929         * arch/aarch64.h: Use common/tdesc.h.
13930
13931 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13932
13933         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13934         architecture with a 64-bit ABI.
13935
13936 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13937
13938         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13939         ahead of target description loading.
13940
13941 2018-02-26  Tom Tromey  <tom@tromey.com>
13942
13943         * stack.c (backtrace_command_1): Update.
13944         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13945         of "flags".
13946         * python/py-framefilter.c (py_print_frame)
13947         (gdbpy_apply_frame_filter): Change type of "flags".
13948         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13949         of "flags".
13950         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13951         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13952         * extension.h (enum frame_filter_flag): Rename from
13953         frame_filter_flags.
13954         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13955         (apply_ext_lang_frame_filter): Change type of "flags".
13956         * extension.c (apply_ext_lang_frame_filter): Change type of
13957         "flags".
13958         * extension-priv.h (struct extension_language_ops)
13959         <apply_frame_filter>: Change type of "flags".
13960
13961 2018-02-26  Tom Tromey  <tom@tromey.com>
13962
13963         PR python/16497:
13964         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13965         off-by-one in py_end computation.
13966         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13967         PRINT_MORE_FRAMES.
13968         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13969         constant.
13970
13971 2018-02-26  Tom Tromey  <tom@tromey.com>
13972
13973         * dwarf2read.c (struct variant_field): New.
13974         (struct nextfield) <variant>: New field.
13975         (dwarf2_add_field): Handle DW_TAG_variant_part.
13976         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13977         discriminated union.
13978         (read_structure_type): Handle DW_TAG_variant_part.
13979         (handle_struct_member_die): New function, extracted from
13980         process_structure_scope.  Handle DW_TAG_variant.
13981         (process_structure_scope): Handle discriminated unions.  Call
13982         handle_struct_member_die.
13983
13984 2018-02-26  Tom Tromey  <tom@tromey.com>
13985
13986         * rust-lang.h (rust_last_path_segment): Declare.
13987         * rust-lang.c (rust_last_path_segment): Now public.  Change
13988         contract.
13989         (struct disr_info): Remove.
13990         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13991         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13992         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13993         (rust_enum_p, rust_enum_variant): New function.
13994         (rust_underscore_fields): Remove "offset" parameter.
13995         (rust_print_enum): New function.
13996         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13997         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13998         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13999         enums.
14000         (rust_internal_print_type): New function, from rust_print_type.
14001         Remove enum code.
14002         (rust_print_type): Call rust_internal_print_type.
14003         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14004         Update enum handling.
14005         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14006         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14007         (rust_union_quirks): New functions.
14008         (process_full_comp_unit, process_full_type_unit): Call
14009         rust_union_quirks.
14010         (process_structure_scope): Update rust_unions if necessary.
14011
14012 2018-02-26  Tom Tromey  <tom@tromey.com>
14013
14014         * value.h (value_union_variant): Declare.
14015         * valops.c (value_union_variant): New function.
14016         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14017         (struct discriminant_info): New.
14018         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14019         enumerator.
14020         (struct main_type) <flag_discriminated_union>: New field.
14021
14022 2018-02-26  Tom Tromey  <tom@tromey.com>
14023
14024         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14025         unittests/unpack-selftests.c.
14026         * unittests/unpack-selftests.c: New file.
14027         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14028
14029 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14030
14031         * dwarf2read.c (struct partial_die_info) <read>: New method.
14032         (read_partial_die): Remove the declaration.
14033         (load_partial_dies): Update.
14034         (partial_die_info::partial_die_info):
14035         (read_partial_die): Change it to partial_die_info::read.
14036
14037 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14038
14039         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14040         (fixup_partial_die): Remove declaration.
14041         (scan_partial_symbols): Update.
14042         (partial_die_parent_scope): Likewise.
14043         (partial_die_full_name): Likewise.
14044         (fixup_partial_die): Change it to partial_die_info::fixup.
14045
14046 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14047
14048         * dwarf2read.c (read_partial_die): Update the declaration.
14049         (load_partial_dies): Caller update.
14050         (read_partial_die): Remove one argument abbrev_len.
14051
14052 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14053
14054         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14055         assignment operator.
14056         (load_partial_dies): Use ctor and copy ctor.
14057         (read_partial_die): Update.
14058         (dwarf2_cu::find_partial_die): Use ctor.
14059
14060 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14061
14062         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14063         (find_partial_die_in_comp_unit): Change it to
14064         dwarf2_cu::find_partial_die.
14065         (find_partial_die): Update.
14066
14067 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14068
14069         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14070         is NULL.
14071
14072 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14073
14074         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14075
14076 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14077
14078         * arch/amd64.h: Use common/tdesc.h.
14079         * arch/i386.c: Likewise.
14080         * arch/i386.h: Likewise.
14081         * arch/tic6x.c: Likewise.
14082         * arch/tdesc.h: Move file from here...
14083         * common/tdesc.h: ...to here.
14084         * features/aarch64-core.c: Regenerate.
14085         * features/aarch64-fpu.c: Regenerate.
14086         * features/i386/32bit-avx.c: Regenerate.
14087         * features/i386/32bit-avx512.c: Regenerate.
14088         * features/i386/32bit-core.c: Regenerate.
14089         * features/i386/32bit-linux.c: Regenerate.
14090         * features/i386/32bit-mpx.c: Regenerate.
14091         * features/i386/32bit-pkeys.c: Regenerate.
14092         * features/i386/32bit-sse.c: Regenerate.
14093         * features/i386/64bit-avx.c: Regenerate.
14094         * features/i386/64bit-avx512.c: Regenerate.
14095         * features/i386/64bit-core.c: Regenerate.
14096         * features/i386/64bit-linux.c: Regenerate.
14097         * features/i386/64bit-mpx.c: Regenerate.
14098         * features/i386/64bit-pkeys.c: Regenerate.
14099         * features/i386/64bit-segments.c: Regenerate.
14100         * features/i386/64bit-sse.c: Regenerate.
14101         * features/i386/x32-core.c: Regenerate.
14102         * features/tic6x-c6xp.c: Regenerate.
14103         * features/tic6x-core.c: Regenerate.
14104         * features/tic6x-gp.c: Regenerate.
14105         * target-descriptions.c: Use common/tdesc.h.
14106         * target-descriptions.h: Likewise.
14107
14108 2018-02-24  Tom Tromey  <tom@tromey.com>
14109
14110         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14111         (try_thread_db_load_from_dir, thread_db_load_search): Use
14112         std::string.
14113         (info_auto_load_libthread_db_compare): Return bool.  Change
14114         argument types.
14115         (info_auto_load_libthread_db): Use std::vector, std::string.
14116         Remove cleanups.
14117
14118 2018-02-24  Tom Tromey  <tom@tromey.com>
14119
14120         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14121         std::string.
14122         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14123         std::string*.
14124         * gdbarch.c: Rebuild.
14125         * gdbarch.h: Rebuild.
14126         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14127         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14128         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14129         std::string*.
14130
14131 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14132
14133         * gdbtypes.h (sect_offset): Change type to uint64_t.
14134         (sect_offset_str): New function.
14135         * dwarf2read.c (create_addrmap_from_aranges): Use
14136         sect_offset_str.
14137         (error_check_comp_unit_head): Likewise.
14138         (create_debug_type_hash_table): Likewise.
14139         (read_cutu_die_from_dwo): Likewise.
14140         (init_cutu_and_read_dies): Likewise.
14141         (init_cutu_and_read_dies_no_follow): Likewise.
14142         (process_psymtab_comp_unit_reader): Likewise.
14143         (partial_die_parent_scope): Likewise.
14144         (peek_die_abbrev): Likewise.
14145         (process_queue): Likewise.
14146         (dwarf2_physname): Likewise.
14147         (read_namespace_alias): Likewise.
14148         (read_import_statement): Likewise.
14149         (create_dwo_cu_reader): Likewise.
14150         (create_cus_hash_table): Likewise.
14151         (lookup_dwo_cutu): Likewise.
14152         (inherit_abstract_dies): Likewise.
14153         (read_func_scope): Likewise.
14154         (read_call_site_scope): Likewise.
14155         (dwarf2_add_member_fn): Likewise.
14156         (read_common_block): Likewise.
14157         (read_module_type): Likewise.
14158         (read_typedef): Likewise.
14159         (read_subrange_type): Likewise.
14160         (load_partial_dies): Likewise.
14161         (read_partial_die): Likewise.
14162         (find_partial_die): Likewise.
14163         (read_str_index): Likewise.
14164         (dwarf2_string_attr): Likewise.
14165         (build_error_marker_type): Likewise.
14166         (lookup_die_type): Likewise.
14167         (dump_die_shallow): Likewise.
14168         (follow_die_ref): Likewise.
14169         (dwarf2_fetch_die_loc_sect_off): Likewise.
14170         (dwarf2_fetch_constant_bytes): Likewise.
14171         (follow_die_sig): Likewise.
14172         (get_signatured_type): Likewise.
14173         (get_DW_AT_signature_type): Likewise.
14174         (dwarf2_find_containing_comp_unit): Likewise.
14175         (set_die_type): Likewise.
14176
14177 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14178
14179         * arch/aarch64.c: Include "common-defs.h".
14180         * arch/amd64.c: Likewise.
14181         * arch/i386.c: Likewise.
14182
14183 2018-02-21  Tom Tromey  <tom@tromey.com>
14184
14185         * value.h: (extract_field_op): Update.
14186         * eval.c (extract_field_op): Return a const char *.
14187         * expression.h (parse_expression_for_completion): Update.
14188         * completer.c (complete_expression): Update.
14189         (add_struct_fields): Make fieldname const.
14190         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14191         (mark_completion_tag, parse_exp_in_context_1): Update.
14192         (parse_expression_for_completion): Change "name" to
14193         unique_xmalloc_ptr*.
14194
14195 2018-02-21  Tom Tromey  <tom@tromey.com>
14196
14197         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14198
14199 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14200
14201         * avr-tdep.c (avr_read_pc): Change parameter type to
14202         readable_regcache.
14203         * gdbarch.sh (read_pc): Likewise.
14204         * gdbarch.c: Re-generated.
14205         * gdbarch.h: Re-generated.
14206         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14207         readable_regcache.
14208         * ia64-tdep.c (ia64_read_pc): Likewise.
14209         * mips-tdep.c (mips_read_pc): Likewise.
14210         * spu-tdep.c (spu_read_pc): Likewise.
14211
14212 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14213
14214         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14215         * regcache-dump.c: New file.
14216         * regcache.c: Move register_dump to regcache-dump.c.
14217         (maintenance_print_registers): Likewise.
14218         (maintenance_print_raw_registers): Likewise.
14219         (maintenance_print_cooked_registers): Likewise.
14220         (maintenance_print_register_groups): Likewise.
14221         (maintenance_print_remote_registers): Likewise.
14222         (_initialize_regcache): Likewise.
14223         * regcache.h (register_dump): Moved from regcache.c.
14224
14225 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14226
14227         * regcache.c (regcache::regcache): Update.
14228         (regcache::invalidate): Move it to detached_regcache::invalidate.
14229         (get_thread_arch_aspace_regcache): Update.
14230         (regcache::raw_update): Update.
14231         (regcache::cooked_read): Remove some code.
14232         (regcache::cooked_read_value): Likewise.
14233         (regcache::raw_write): Remove assert on m_readonly_p.
14234         (regcache::raw_supply_integer): Move it to
14235         detached_regcache::raw_supply_integer.
14236         (regcache::raw_supply_zeroed): Likewise.
14237         * regcache.h (detached_regcache) <raw_supply_integer>: New
14238         declaration.
14239         <raw_supply_zeroed, invalidate>: Likewise.
14240         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14241         <invalidate>: Likewise.
14242         <m_readonly_p>: Removed.
14243
14244 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14245
14246         * infcmd.c (get_return_value): Let stop_regs point to
14247         get_current_regcache.
14248         * regcache.c (regcache::regcache): Remove.
14249         (register_dump_reg_buffer): New class.
14250         (regcache_print): Adjust.
14251         * regcache.h (regcache): Remove constructors.
14252
14253 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14254
14255         * regcache.c (class register_dump): New class.
14256         (register_dump_regcache, register_dump_none): New class.
14257         (register_dump_remote, register_dump_groups): New class.
14258         (regcache_print): Update.
14259         * regcache.h (regcache_dump_what): Move it to regcache.c.
14260         (regcache) <dump>: Remove.
14261
14262 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14263
14264         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14265          reg_buffer_rw *.
14266         (jit_unwind_reg_set_impl): Call raw_supply.
14267         (jit_frame_sniffer): Use reg_buffer_rw.
14268         * record-full.c (record_full_core_regbuf): Change its type.
14269         (record_full_core_open_1): Use reg_buffer_rw.
14270         (record_full_close): Likewise.
14271         (record_full_core_fetch_registers): Use regcache->raw_supply.
14272         (record_full_core_store_registers): Likewise.
14273         * regcache.c (regcache::get_register_status): Move it to
14274         reg_buffer.
14275         (regcache_raw_set_cached_value): Remove.
14276         (regcache::raw_set_cached_value): Remove.
14277         (regcache::raw_write): Call raw_supply.
14278         (regcache::raw_supply): Move it to reg_buffer_rw.
14279         * regcache.h (regcache_raw_set_cached_value): Remove.
14280         (reg_buffer_rw): New class.
14281
14282 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14283
14284         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14285         readonly_detached_regcache.
14286         (dummy_frame_prev_register): Use regcache->cooked_read.
14287         * frame.c (frame_save_as_regcache): Change return type.
14288         (frame_pop): Update.
14289         * frame.h (frame_save_as_regcache): Update declaration.
14290         * inferior.h (get_infcall_suspend_state_regcache): Update
14291         declaration.
14292         * infrun.c (infcall_suspend_state) <registers>: use
14293         readonly_detached_regcache.
14294         (save_infcall_suspend_state): Don't use regcache_dup.
14295         (get_infcall_suspend_state_regcache): Change return type.
14296         * linux-fork.c (struct fork_info) <savedregs>: Change to
14297         readonly_detached_regcache.
14298         <pc>: New field.
14299         (fork_save_infrun_state): Don't use regcache_dup.
14300         (info_checkpoints_command): Adjust.
14301         * mi/mi-main.c (register_changed_p): Update declaration.
14302         (mi_cmd_data_list_changed_registers): Use
14303         readonly_detached_regcache.
14304         (register_changed_p): Change parameter type to
14305         readonly_detached_regcache.
14306         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14307         readonly_detached_regcache.
14308         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14309         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14310         New.
14311         (regcache::save): Move it to reg_buffer.
14312         (regcache::restore): Change parameter type.
14313         (regcache_dup): Remove.
14314         * regcache.h (reg_buffer) <save>: New method.
14315         (readonly_detached_regcache): New class.
14316         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14317         readonly_detached_regcache.
14318         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14319
14320 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14321
14322         * frame.c (frame_save_as_regcache): Use regcache method save.
14323         (frame_pop): Use regcache method restore.
14324         * infrun.c (restore_infcall_suspend_state): Likewise.
14325         * linux-fork.c (fork_load_infrun_state): Likewise.
14326         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14327         save.
14328         * regcache.c (regcache_save): Remove.
14329         (regcache::restore): More asserts.
14330         (regcache_cpy): Remove.
14331         * regcache.h (regcache_save): Remove the declaration.
14332         (regcache::restore): Move from private to public.
14333         Remove the friend declaration of regcache_cpy.
14334         (regcache_cpy): Remove declaration.
14335
14336 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14337
14338         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14339         parameter type to 'readable_regcache *'.
14340         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14341         * arm-tdep.c (arm_neon_quad_read): Likewise.
14342         (arm_pseudo_read): Likewise.
14343         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14344         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14345         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14346         * gdbarch.c: Re-generated.
14347         * gdbarch.h: Re-generated.
14348         * gdbarch.sh (pseudo_register_read): Change parameter type to
14349         'readable_regcache *'.
14350         (pseudo_register_read_value): Likewise.
14351         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14352         (h8300_pseudo_register_read): Likewise.
14353         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14354         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14355         (i386_pseudo_register_read_into_value): Likewise.
14356         (i386_pseudo_register_read_value): Likewise.
14357         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14358         declaration.
14359         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14360         * m32c-tdep.c (m32c_raw_read): Likewise.
14361         (m32c_read_flg): Likewise.
14362         (m32c_banked_register): Likewise.
14363         (m32c_banked_read): Likewise.
14364         (m32c_sb_read): Likewise.
14365         (m32c_part_read): Likewise.
14366         (m32c_cat_read): Likewise.
14367         (m32c_r3r2r1r0_read): Likewise.
14368         (m32c_pseudo_register_read): Likewise.
14369         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14370         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14371         (mep_pseudo_cr64_read): Likewise.
14372         (mep_pseudo_register_read): Likewise.
14373         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14374         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14375         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14376         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14377         (regcache::cooked_read): Likewise.
14378         (regcache::cooked_read_value): Likewise.
14379         (regcache_cooked_read_signed):
14380         (regcache::cooked_read): Likewise.
14381         * regcache.h (readable_regcache): New class.
14382         (regcache): Inherit readable_regcache.  Move some methods to
14383         readable_regcache.
14384         * rl78-tdep.c (rl78_pseudo_register_read): Change
14385         parameter type to 'readable_regcache *'.
14386         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14387         (e500_pseudo_register_read): Change parameter type to
14388         'readable_regcache *'.
14389         (dfp_pseudo_register_read): Likewise.
14390         (vsx_pseudo_register_read): Likewise.
14391         (efpr_pseudo_register_read): Likewise.
14392         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14393         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14394         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14395         (sh64_pseudo_register_read): Likewise.
14396         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14397         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14398         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14399         (spu_pseudo_register_read): Likewise.
14400         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14401         (xtensa_pseudo_register_read): Likewise.
14402
14403 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14404
14405         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14406         (regcache::arch): Move it to reg_buffer::arch.
14407         (regcache::register_buffer): Likewise.
14408         (regcache::assert_regnum): Likewise.
14409         (regcache::num_raw_registers): Likewise.
14410         * regcache.h (reg_buffer): New class.
14411         (regcache): Inherit reg_buffer.
14412
14413 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14414
14415         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14416         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14417
14418 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14419
14420         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14421
14422 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14423
14424         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14425         (SFILES): Remove common/*.c files.
14426         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14427         * common/common.host: Add common reference.
14428         * configure.ac: Likewise.
14429         * configure: Regenerate.
14430
14431 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14432
14433         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14434         (block_initialize_namespace): Use new.
14435         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14436         (dwarf2_free_objfile): Use delete.
14437         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14438         (copy_type_recursive): Use new.
14439         * gdb_obstack.h (allocate_on_obstack): New.
14440
14441 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14442
14443         PR gdb/22849
14444         * inferior.c (exit_inferior_1): Reset inf->control.
14445
14446 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14447
14448         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14449         declaration.
14450
14451 2018-02-14  Pedro Alves  <palves@redhat.com>
14452
14453         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14454         frame_cleanup_after_sniffer on exception.
14455
14456 2018-02-14  Tom Tromey  <tom@tromey.com>
14457
14458         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14459         const.
14460         (solib_bfd_open): Make pathname const.
14461         * solib.c (solib_bfd_open): Make pathname const.
14462         * solib-spu.c (spu_bfd_fopen): Make name const.
14463         (spu_bfd_open): Make pathname const.
14464         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14465         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14466
14467 2018-02-14  Tom Tromey  <tom@tromey.com>
14468
14469         * symfile.c (symfile_bfd_open): Update.
14470         * source.h (openp, source_full_path_of, find_and_open_source):
14471         Change argument type to unique_xmalloc_ptr.
14472         * source.c (openp): Take a unique_xmalloc_ptr.
14473         (source_full_path_of, find_and_open_source): Likewise.
14474         (open_source_file, symtab_to_fullname): Update.
14475         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14476         unique_xmalloc_ptr.
14477         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14478         (exec_file_find): Update.
14479         * psymtab.c (psymtab_to_fullname): Update.
14480         * nto-tdep.h (nto_find_and_open_solib): Update.
14481         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14482         unique_xmalloc_ptr.
14483         * exec.c (exec_file_attach): Update.
14484         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14485         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14486
14487 2018-02-14  Tom Tromey  <tom@tromey.com>
14488
14489         * solib.c: Include source.h.
14490         * nto-tdep.c: Include source.h.
14491         * mi/mi-cmd-env.c: Include source.h.
14492         * infcmd.c: Include source.h.
14493         * exec.c: Include source.h.
14494         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14495         (add_path, directory_switch, source_path, init_source_path): Move
14496         declarations...
14497         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14498         (add_path, directory_switch, source_path, init_source_path):
14499         ...here.
14500
14501 2018-02-14  Tom Tromey  <tom@tromey.com>
14502
14503         * solist.h (exec_file_find, solib_find): Return
14504         unique_xmalloc_ptr.
14505         (solib_bfd_fopen): Take a const char *.
14506         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14507         (exec_file_find, solib_find): Likewise.
14508         (solib_bfd_fopen): Do not take ownership of "pathname".
14509         (solib_bfd_open): Use unique_xmalloc_ptr.
14510         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14511         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14512         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14513         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14514
14515 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14516
14517         * ada-lang.c (name_match_type_from_name): Remove reference to
14518         ada_name_for_lookup in function's documentation.
14519         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14520
14521 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14522
14523         * defs.h (enum openp_flags): New enum.
14524         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14525         Move to enum openp_flags.
14526         (openp_flags): New enum flags.
14527         (openp): Change parameter type to openp_flags.
14528         * source.c (openp): Change parameter type to openp_flags.
14529         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14530         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14531
14532 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14533
14534         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14535         per-command.
14536
14537 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14538
14539         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14540         into...
14541         (class dwarf2_queue_guard): ...the destructor of this new class.
14542         (dw2_do_instantiate_symtab): Create instance of the new class
14543         dwarf2_queue_guard, remove cleanup.
14544
14545 2018-02-09  Tom Tromey  <tom@tromey.com>
14546
14547         * source.c (find_source_lines): Don't reference past the end of
14548         the vector.
14549
14550 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14551
14552         * remote.c (remote_btrace_maybe_reopen): Change error message.
14553         * btrace.c (btrace_enable): Likewise.
14554         (parse_xml_btrace): Likewise.
14555         (parse_xml_btrace_conf): Likewise.
14556
14557 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14558
14559         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14560         (linux_enable_pt, linux_enable_bts): Call
14561         diagnose_perf_event_open_fail.
14562
14563 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14564
14565         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14566         Remove parameter and change return type.  Update callers.  Move it.
14567         (linux_enable_bts, linux_enable_pt): Improve error message.
14568         (linux_enable_pt): Remove zero buffer size check.
14569         (linux_enable_btrace): Improve error messages.  Remove NULL return
14570         check.
14571
14572 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14573
14574         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14575         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14576         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14577         (linux_supports_pt, linux_supports_btrace): Remove.
14578         (linux_enable_bts): Call cpu_supports_bts.
14579         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14580         * remote.c (remote_supports_btrace): Remove.
14581         (init_remote_ops): Remove remote_supports_btrace.
14582         * target-delegates.c: Regenerated.
14583         * target.c (target_supports_btrace): Remove.
14584         * target.h (target_ops) <to_supports_btrace>: Remove
14585         (target_supports_btrace): Remove.
14586         * x86-linux-nat.c (x86_linux_create_target): Remove
14587         linux_supports_btrace.
14588
14589 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14590
14591         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14592         btrace failed.
14593         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14594         exception and use message in own exception.
14595
14596 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14597
14598         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14599         (perf_event_pt_event_type): Use gdb_file_up.
14600         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14601         scoped_fd, and scoped_mmap.
14602
14603 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14604
14605         * common/scoped_mmap.h: New.
14606         * unittests/scoped_mmap-selftest.c: New.
14607         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14608         unittests/scoped_mmap-selftest.c.
14609
14610 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14611
14612         * common/scoped_fd.h: New.
14613         * unittests/scoped_fd-selftest.c: New.
14614         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14615         unittests/scoped_fd-selftest.c.
14616
14617 2018-02-09  Tom Tromey  <tom@tromey.com>
14618
14619         * auto-load.c (auto_load_section_scripts): Use
14620         gdb::unique_xmalloc_ptr.
14621
14622 2018-02-09  Tom Tromey  <tom@tromey.com>
14623
14624         * auto-load.c (execute_script_contents): Use std::string.
14625
14626 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14627
14628         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14629         Python function, rather than a new command.
14630
14631 2018-02-08  Tom Tromey  <tom@tromey.com>
14632
14633         * solib.c (solib_find_1): Use std::string.
14634         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14635
14636 2018-02-08  Tom Tromey  <tom@tromey.com>
14637
14638         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14639
14640 2018-02-08  Tom Tromey  <tom@tromey.com>
14641
14642         * source.c (find_source_lines): Use gdb::def_vector.
14643
14644 2018-02-08  Tom Tromey  <tom@tromey.com>
14645
14646         * macrocmd.c (struct temporary_macro_definition): New.
14647         (macro_define_command): Use temporary_macro_definition.  Remove
14648         cleanups.
14649         (free_macro_definition_ptr): Remove.
14650
14651 2018-02-08  Tom Tromey  <tom@tromey.com>
14652
14653         * macroexp.c (maybe_expand): Use std::string.
14654
14655 2018-02-08  Tom Tromey  <tom@tromey.com>
14656
14657         * macroexp.c (struct macro_buffer): Add initializers for some
14658         members.
14659         (init_buffer, init_shared_buffer, free_buffer)
14660         (free_buffer_return_text): Remove.
14661         (macro_buffer): New constructors.
14662         (~macro_buffer): New destructor.
14663         (macro_buffer::set_shared): New method.
14664         (macro_buffer::resize_buffer, macro_buffer::appendc)
14665         (macro_buffer::appendmem): Now methods, not free functions.
14666         (set_token, append_tokens_without_splicing, stringify)
14667         (macro_stringify): Update.
14668         (gather_arguments): Change return type.  Remove argc_p argument,
14669         add args_ptr argument.  Use std::vector.
14670         (substitute_args): Remove argc argument.  Accept std::vector.
14671         (expand): Update.  Use std::vector.
14672         (scan, macro_expand, macro_expand_next): Update.
14673
14674 2018-02-08  Tom Tromey  <tom@tromey.com>
14675
14676         * symtab.c (default_collect_symbol_completion_matches_break_on):
14677         Use unique_xmalloc_ptr.
14678         * macroscope.h: (sal_macro_scope, user_macro_scope)
14679         (default_macro_scope): Return unique_xmalloc_ptr.
14680         * macroscope.c (sal_macro_scope, user_macro_scope)
14681         (default_macro_scope): Return unique_xmalloc_ptr.
14682         * macroexp.h (macro_expand, macro_expand_once): Return
14683         unique_xmalloc_ptr.
14684         * macroexp.c (macro_expand, macro_expand_once): Return
14685         unique_xmalloc_ptr.
14686         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14687         (info_macro_command, info_macros_command): Use
14688         unique_xmalloc_ptr.
14689         * compile/compile-c-support.c (write_macro_definitions): Use
14690         unique_xmalloc_ptr.
14691         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14692
14693 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14694
14695         * value.c (value_static_field): Assign field type instead of
14696         containing type when returning an optimized out value.
14697
14698 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14699
14700         * ft32-tdep.c (ft32_read_pc): Remove.
14701         (ft32_write_pc): Remove.
14702         (ft32_gdbarch_init): Update.
14703         * m32r-tdep.c (m32r_read_pc): Remove.
14704         (m32r_gdbarch_init): Update.
14705         * mep-tdep.c (mep_read_pc): Remove.
14706         (mep_gdbarch_init): Update.
14707         * microblaze-tdep.c (microblaze_write_pc): Remove.
14708         (microblaze_gdbarch_init): Update.
14709         * mn10300-tdep.c (mn10300_read_pc): Remove.
14710         (mn10300_write_pc): Remove.
14711         (mn10300_gdbarch_init): Update.
14712         * moxie-tdep.c (moxie_read_pc): Remove.
14713         (moxie_write_pc): Remove.
14714         (moxie_gdbarch_init): Update.
14715
14716 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14717
14718         * expprint.c (print_subexp_standard): Handle
14719         OP_F77_UNDETERMINED_ARGLIST.
14720         (dump_subexp_body_standard): Likewise.
14721
14722 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14723
14724         * target-descriptions.c (tdesc_element_visitor) Add empty
14725         implementations.
14726         (tdesc_type): Move make_gdb_type from here.
14727         (tdesc_type_builtin): Likewise.
14728         (tdesc_type_vector): Likewise.
14729         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14730         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14731         (make_gdb_type_union): Likewise.
14732         (make_gdb_type_flags): Likewise.
14733         (make_gdb_type_enum): Likewise.
14734         (make_gdb_type): New function.
14735         (tdesc_register_type): Use static make_gdb_type.
14736
14737 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14738
14739         * infcmd.c (default_print_one_register_info): Align natural-format
14740         column values consistently one under another.
14741         (pad_to_column): New function.
14742
14743 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14744
14745         * dwarf2read.c (dwarf2_physname): Move commment.
14746
14747 2018-02-01  Leszek Swirski  <leszeks@google.com>
14748
14749         * varobj.c (varobj_formatted_print_options): Allow recursive
14750         pretty printing if pretty printing is enabled.
14751
14752 2018-02-01  Leszek Swirski  <leszeks@google.com>
14753
14754         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14755         names after a structop as a filename.
14756
14757 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14758
14759         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14760         (arm_record_coproc_data_proc): Likewise.
14761
14762 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14763
14764         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14765
14766 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14767
14768         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14769         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14770
14771 2018-01-31  Pedro Alves  <palves@redhat.com>
14772
14773         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14774         * inflow.c (child_terminal_save_inferior): Wrap reference to
14775         tcgetpgrp in HAVE_TERMIOS_H.
14776         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14777         _WIN32.
14778         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14779         always iterate over all inferiors.
14780         (gdbsim_cntrl_c): Adjust.
14781         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14782
14783 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14784
14785         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14786         index type is objfile-owned if the element type is as well.
14787
14788 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14789
14790         GDB 8.1 released.
14791
14792 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14793
14794         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14795         "features/s390x-linux64.c".
14796         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14797         s390_linux32 and s390x_linux64.
14798         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14799         default tdesc.
14800         * s390-tdep.c: Include "features/s390-linux32.c" and
14801         "features/s390x-linux64.c".
14802         (s390_tdesc_valid): Add check for tdesc_has_registers.
14803         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14804         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14805         tdesc_s390x_linux64.
14806         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14807         tdesc_s390x_linux64 to...
14808         * s390-tdep.h: ...here.
14809
14810 2018-01-30  Pedro Alves  <palves@redhat.com>
14811
14812         PR gdb/13211
14813         * config.in, configure: Regenerate.
14814         * configure.ac: Check for getpgid.
14815         * go32-nat.c (go32_pass_ctrlc): New.
14816         (go32_target): Install it.
14817         * inf-child.c (inf_child_target): Install
14818         child_terminal_save_inferior, child_pass_ctrlc and
14819         child_interrupt.
14820         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14821         (inf_ptrace_target): No longer install it.
14822         * infcmd.c (interrupt_target_1): Adjust.
14823         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14824         (child_interrupt): Declare.
14825         (inferior::terminal_state): New.
14826         * inflow.c (struct terminal_info): Update comments.
14827         (inferior_process_group): Delete.
14828         (terminal_is_ours): Delete.
14829         (gdb_tty_state): New.
14830         (child_terminal_init): Adjust.
14831         (is_gdb_terminal, sharing_input_terminal_1)
14832         (sharing_input_terminal): New functions.
14833         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14834         Set the process's actual process group in the foreground if
14835         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14836         mark terminal as the inferior's if not sharing GDB's terminal.
14837         Don't check attach_flag.
14838         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14839         pass down a target_terminal_state.
14840         (child_terminal_save_inferior): New, factored out from ...
14841         (child_terminal_ours_1): ... this.  Handle
14842         target_terminal_state::is_ours_for_output.
14843         (child_interrupt, child_pass_ctrlc): New.
14844         (inflow_inferior_exit): Clear the inferior's terminal_state.
14845         (copy_terminal_info): Copy the inferior's terminal state.
14846         (_initialize_inflow): Remove reference to terminal_is_ours.
14847         * inflow.h (inferior_process_group): Delete.
14848         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14849         * procfs.c (procfs_target): Don't install procfs_interrupt.
14850         (procfs_interrupt): Delete.
14851         * remote.c (remote_serial_quit_handler): Adjust.
14852         (remote_interrupt): Remove ptid parameter.  Adjust.
14853         * target-delegates.c: Regenerate.
14854         * target.c: Include "terminal.h".
14855         (target_terminal::terminal_state): Rename to ...
14856         (target_terminal::m_terminal_state): ... this.
14857         (target_terminal::init): Adjust.
14858         (target_terminal::inferior): Adjust to per-inferior
14859         terminal_state.
14860         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14861         (target_terminal::ours, target_terminal::ours_for_output): Use
14862         target_terminal_is_ours_kind.
14863         (target_interrupt): Remove ptid parameter.  Adjust.
14864         (default_target_pass_ctrlc): Adjust.
14865         * target.h (target_ops::to_terminal_save_inferior): New field.
14866         (target_ops::to_interrupt): Remove ptid_t parameter.
14867         (target_interrupt): Remove ptid_t parameter.  Update comment.
14868         (target_pass_ctrlc): Update comment.
14869         * target/target.h (target_terminal_state): New scoped enum,
14870         factored out of ...
14871         (target_terminal::terminal_state): ... here.
14872         (target_terminal::inferior): Update comments.
14873         (target_terminal::restore_inferior): New.
14874         (target_terminal::is_inferior, target_terminal::is_ours)
14875         (target_terminal::is_ours_for_output): Adjust.
14876         (target_terminal::scoped_restore_terminal_state): Adjust to
14877         rename, and call restore_inferior() instead of inferior().
14878         (target_terminal::scoped_restore_terminal_state::m_state): Change
14879         type.
14880         (target_terminal::terminal_state): Rename to ...
14881         (target_terminal::m_terminal_state): ... this and change type.
14882
14883 2018-01-30  Pedro Alves  <palves@redhat.com>
14884
14885         * linux-nat.c (wait_for_signal): New function.
14886         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14887         directly.
14888         (async_terminal_is_ours)
14889         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14890         (linux_nat_add_target): Don't override
14891         to_terminal_inferior/to_terminal_ours.
14892
14893 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14894
14895         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14896
14897 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14898
14899         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14900         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14901         dwarf2_per_objfile_free here.
14902         (dwarf2_per_objfile_free): Remove.
14903         (_initialize_dwarf2_read): Don't register
14904         dwarf2_per_objfile_free as a registry cleanup.
14905
14906 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14907
14908         Avoid compilation errors in MinGW native builds
14909
14910         The error is triggered by including python-internal.h, and the
14911         error message is:
14912
14913              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14914                       from build-gnulib/import/math.h:27,
14915                       from d:/usr/Python26/include/pyport.h:235,
14916                       from d:/usr/Python26/include/Python.h:58,
14917                       from python/python-internal.h:94,
14918                       from python/py-arch.c:24:
14919              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14920         using ::hypot;
14921                 ^~~~~
14922
14923         This happens because Python headers define 'hypot' to expand t
14924         '_hypot' in the Windows builds.
14925         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14926         'hypoth'.  This avoids a compilation error.
14927
14928 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14929
14930         * MAINTAINERS (Write After Approval): Fix ordering.
14931
14932 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14933
14934         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14935
14936 2018-01-26  Alan Modra  <amodra@gmail.com>
14937
14938         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14939         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14940         Remove nop.  Make const.  Comment.
14941         (powerpc32_plt_stub_so_2): New.
14942         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14943         Correct count.  Update uses.
14944         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14945         Move common code reading PLT entry word.  Correct
14946         powerpc32_plt_stub PLT address calculation.
14947         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14948         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14949         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14950         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14951         (ppc64_standard_linkage8): Likewise.
14952         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14953         Correct insns description.
14954         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14955
14956 2018-01-24  Pedro Alves  <palves@redhat.com>
14957
14958         GCC PR libstdc++/83906
14959         * gdbtypes.c (operator==(const dynamic_prop &,
14960         const dynamic_prop &)): New.
14961         (operator==(const range_bounds &, const range_bounds &)): New.
14962         (check_types_equal): Use them instead of memcmp.
14963         * gdbtypes.h (operator==(const dynamic_prop &,
14964         const dynamic_prop &)): Declare.
14965         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14966         (operator==(const range_bounds &, const range_bounds &)): Declare.
14967         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14968
14969 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14970
14971         * s390-linux-tdep.c (s390_record_address_mask)
14972         (s390_record_calc_disp_common, s390_record_calc_disp)
14973         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14974         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14975         (s390_process_record): Move to s390-tdep.c.
14976         (s390_linux_init_abi_any): Adjust.
14977         * s390-tdep.c (s390_record_address_mask)
14978         (s390_record_calc_disp_common, s390_record_calc_disp)
14979         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14980         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14981         (s390_process_record): Moved from s390-linux-tdep.c
14982         (s390_gdbarch_init): Adjust.
14983
14984 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14985
14986         * s390-linux-nat.c (s390-tdep.h): New include.
14987         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14988         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14989         (ALLDEPFILES): Add s390-tdep.c.
14990         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14991         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14992         * s390-tdep.h: ...this.  New file.
14993         * s390-linux-tdep.c (s390-tdep.h): New include.
14994         (_initialize_s390_tdep): Rename to...
14995         (_initialize_s390_linux_tdep): ...this and adjust.
14996         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14997         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14998         s390-tdep.h.
14999         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15000         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15001         (s390_is_partial_instruction, s390_software_single_step)
15002         (is_non_branch_ril, s390_displaced_step_copy_insn)
15003         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15004         (s390_prologue_data, s390_addr, s390_store, s390_load)
15005         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15006         (s390_register_call_saved, s390_guess_tracepoint_registers)
15007         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15008         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15009         (s390_pseudo_register_name, s390_pseudo_register_type)
15010         (s390_pseudo_register_read, s390_pseudo_register_write)
15011         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15012         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15013         (s390_addr_bits_remove, s390_address_class_type_flags)
15014         (s390_address_class_type_flags_to_name)
15015         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15016         (s390_function_arg_float, s390_function_arg_vector)
15017         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15018         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15019         (s390_frame_align, s390_register_return_value, s390_return_value)
15020         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15021         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15022         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15023         (s390_trad_frame_prev_register, s390_unwind_cache)
15024         (s390_prologue_frame_unwind_cache)
15025         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15026         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15027         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15028         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15029         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15030         (s390_frame_base_address, s390_local_base_address)
15031         (s390_frame_base, s390_gcc_target_options)
15032         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15033         (s390_validate_reg_range, s390_tdesc_valid)
15034         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15035         * s390-tdep.c: ...this.  New file.
15036
15037 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15038
15039         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15040         (s390_process_record, s390_gdbarch_tdep_alloc)
15041         (s390_linux_init_abi_any): Use/set new hook.
15042
15043 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15044
15045         * s390-linux-tdep.c (osabi.h): New include.
15046         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15047         (s390_linux_init_abi_any): New functions.
15048         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15049
15050 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15051
15052         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15053         tdesc_has_registers check
15054
15055 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15056
15057         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15058         (s390_validate_reg_range): New macro.
15059         (s390_gdbarch_init): Adjust.
15060
15061 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15062
15063         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15064         (s390_gdbarch_tdep_alloc): Adjust.
15065         (s390_gdbarch_init): Adjust.
15066
15067 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15068
15069         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15070         <have_tdb>: Change type to bool.
15071         (s390_gdbarch_tdep_alloc): Adjust.
15072         (s390_gdbarch_init): Adjust.
15073
15074 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15075
15076         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15077         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15078         (s390_gdbarch_tdep_alloc): New function.
15079         (s390_gdbarch_init): Allocate tdep at start and use its fields
15080         instead of separate variables.
15081
15082 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15083
15084         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15085         when looking for cached gdbarch and add comment for remaining.
15086
15087 2018-01-22  Pedro Alves  <palves@redhat.com>
15088             Sergio Durigan Junior  <sergiodj@redhat.com>
15089
15090         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15091         case.
15092
15093 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15094
15095         * MAINTAINERS: Update my company e-mail address.
15096
15097 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15098
15099         * regcache.c (cooked_write_test): New function.
15100         (_initialize_regcache): Register the test.
15101
15102 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15103
15104         * ia64-tdep.c (ia64_pseudo_register_read): Call
15105         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15106         * m32c-tdep.c (m32c_cat_read): Likewise.
15107         (m32c_r3r2r1r0_read): Likewise.
15108         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15109         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15110
15111 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15112
15113         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15114         method raw_read instead of regcache_raw_read.
15115         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15116         * arm-tdep.c (arm_neon_quad_read): Likewise.
15117         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15118         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15119         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15120         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15121         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15122         (i386_pseudo_register_read_into_value): Likewise.
15123         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15124         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15125         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15126         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15127         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15128         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15129         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15130         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15131         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15132
15133 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15134
15135         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15136         * configure.tgt: Remove target mt.
15137         * mt-tdep.c: Remove.
15138         * regcache.c (cooked_read_test): Remove the check for mt.
15139
15140 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15141
15142         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15143         instead of gdbarch_pseudo_register_read_value.
15144
15145 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15146
15147         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15148         language is Ada.
15149
15150 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15151
15152         * linespec.c (create_sals_line_offset): Remove code that preserved
15153         the symtab_and_line's line number.
15154
15155 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15156
15157         * varobj.c (varobj_create): Don't set valid_block when creating a
15158         floating varobj.
15159
15160 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15161
15162         * varobj.c (varobj_create): Remove out of date comment.
15163
15164 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15165
15166         PR mi/20395
15167         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15168         updating innermost block.
15169         * parse.c (innermost_block_tracker::update): Take extra type
15170         parameter, and check types match before updating innermost block.
15171         (write_dollar_variable): Update innermost block for registers.
15172         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15173         (innermost_block_tracker::innermost_block_tracker): Initialise
15174         m_types member.
15175         (innermost_block_tracker::reset): Take type parameter.
15176         (innermost_block_tracker::update): Take type parameter, and pass
15177         type through as needed.
15178         (innermost_block_tracker::m_types): New member.
15179         * varobj.c (varobj_create): Pass type when reseting innermost
15180         block.
15181
15182 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15183
15184         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15185         * ada-lang.c (resolve_subexp): Likewise.
15186         * breakpoint.c (set_breakpoint_condition) Likewise.
15187         (watch_command_1) Likewise.
15188         * c-exp.y (variable): Likewise.
15189         * d-exp.y (PrimaryExpression): Likewise.
15190         * f-exp.y (variable): Likewise.
15191         * go-exp.y (variable): Likewise.
15192         * m2-exp.y (variable): Likewise.
15193         * objfiles.c (objfile::~objfile): Likewise.
15194         * p-exp.y (variable): Likewise.
15195         * parse.c (innermost_block): Change type.
15196         * parser-defs.h (class innermost_block_tracker): New.
15197         (innermost_block): Change to innermost_block_tracker.
15198         * printcmd.c (display_command): Switch to innermost_block API.
15199         (do_one_display): Likewise.
15200         * rust-exp.y (do_one_display): Likewise.
15201         * symfile.c (clear_symtab_users): Likewise.
15202         * varobj.c (varobj_create): Switch to innermost_block API, replace
15203         use of innermost_block with block stored on varobj object.
15204
15205 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15206
15207         * expression.h (innermost_block): Remove declaration.
15208         * varobj.c: Add 'parser-defs.h' include.
15209
15210 2018-01-19  Tom Tromey  <tom@tromey.com>
15211
15212         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15213         symbols in the static and global blocks.
15214
15215 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15216
15217         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15218         gdb_ptrace.h, and move including gdb_wait.h ...
15219         * nat/linux-ptrace.h: ... to here.
15220
15221 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15222
15223         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15224         inf_ptrace_detach_success.
15225         (inf_ptrace_detach_success): Add inferior parameter, use it
15226         instead of inferior_ptid, pass it to detach_inferior.
15227         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15228         parameter.
15229         * inferior.c (detach_inferior): Add overload that takes an
15230         inferior object.
15231         * inferior.h (detach_inferior): Likewise.
15232         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15233         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15234         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15235
15236 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15237
15238         * target.h (struct target_ops) <to_detach>: Add inferior
15239         parameter.
15240         (target_detach): Likewise.
15241         * target.c (dispose_inferior): Pass inferior down.
15242         (target_detach): Pass inferior down.  Assert that it is equal to
15243         the current inferior.
15244         * aix-thread.c (aix_thread_detach): Pass inferior down.
15245         * corefile.c (core_file_command): Pass current_inferior() down.
15246         * corelow.c (core_detach): Add inferior parameter.
15247         * darwin-nat.c (darwin_detach): Likewise.
15248         * gnu-nat.c (gnu_detach): Likewise.
15249         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15250         * infcmd.c (detach_command): Pass current_inferior() down to
15251         target_detach.
15252         * infrun.c (follow_fork_inferior): Pass parent_inf to
15253         target_detach.
15254         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15255         target_detach.
15256         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15257         * linux-thread-db.c (thread_db_detach): Likewise.
15258         * nto-procfs.c (procfs_detach): Likewise.
15259         * procfs.c (procfs_detach): Likewise.
15260         * record.c (record_detach): Likewise.
15261         * record.h (struct inferior): Forward-declare.
15262         (record_detach): Add inferior parameter.
15263         * remote-sim.c (gdbsim_detach): Likewise.
15264         * remote.c (remote_detach_1): Likewise.
15265         (remote_detach): Likewise.
15266         (extended_remote_detach): Likewise.
15267         * sol-thread.c (sol_thread_detach): Likewise.
15268         * target-debug.h (target_debug_print_inferior_p): New macro.
15269         * target-delegates.c: Re-generate.
15270         * top.c (kill_or_detach): Pass inferior down to target_detach.
15271         * windows-nat.c (windows_detach): Add inferior parameter.
15272
15273 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15274
15275         * target.h (struct target_ops) <to_detach>: Remove args
15276         parameter.
15277         (target_detach): Likewise.
15278         * target.c (dispose_inferior): Adjust.
15279         (target_detach): Remove args parameter, adjust.
15280         * aix-thread.c (aix_thread_detach): Adjust.
15281         * corefile.c (core_file_command): Adjust.
15282         * corelow.c (core_detach): Adjust.
15283         * darwin-nat.c (darwin_detach): Adjust.
15284         * gnu-nat.c (gnu_detach): Adjust.
15285         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15286         * infcmd.c (detach_command): Adjust
15287         * infrun.c (follow_fork_inferior): Adjust.
15288         (handle_vfork_child_exec_or_exit): Adjust.
15289         * linux-fork.c (linux_fork_detach): Remove args parameter.
15290         * linux-fork.h (linux_fork_detach): Likewise.
15291         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15292         * linux-thread-db.c (thread_db_detach): Likewise.
15293         * nto-procfs.c (procfs_detach): Likewise.
15294         * procfs.c (procfs_detach): Likewise.
15295         (do_detach): Remove signo parameter.
15296         * record.c (record_detach): Remove args parameter.
15297         * record.h (record_detach): Likewise.
15298         * remote-sim.c (gdbsim_detach): Likewise.
15299         * remote.c (remote_detach_1): Likewise.
15300         (remote_detach): Likewise.
15301         (extended_remote_detach): Likewise.
15302         * sol-thread.c (sol_thread_detach): Likewise.
15303         * target-delegates.c: Re-generate.
15304         * top.c (struct qt_args) <args>: Remove field.
15305         (kill_or_detach): Don't pass args.
15306         (quit_force): Don't set args.
15307         * windows-nat.c (windows_detach): Remove args parameter.
15308
15309 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15310
15311         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15312         (arm_linux_init_abi): Install it.
15313
15314 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15315
15316         * osabi.c (gdb_osabi_names): Extend the regexp for
15317         arm-linux-gnueabihf.
15318
15319 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15320
15321         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15322         m_abbrevs.
15323         (abbrev_table::add_abbrev): Update.
15324         (abbrev_table::lookup_abbrev): Update.
15325
15326 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15327
15328         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15329
15330 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15331
15332         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15333         to "std::string".
15334
15335 2018-01-17  Tom Tromey  <tom@tromey.com>
15336
15337         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15338
15339 2018-01-17  Tom Tromey  <tom@tromey.com>
15340
15341         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15342         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15343         (create_array_type_with_stride): Update.
15344         * dwarf2read.c (set_die_type): Update.
15345
15346 2018-01-17  Tom Tromey  <tom@tromey.com>
15347
15348         * dwarf2read.c (delayed_method_info): Remove typedef.
15349         (dwarf2_cu::method_info): Now a std::vector.
15350         (add_to_method_list): Update.
15351         (free_delayed_list): Remove.
15352         (compute_delayed_physnames): Update.
15353         (process_full_comp_unit, process_full_type_unit): Clear the method
15354         list.  Remove cleanups.
15355         (psymtab_include_file_name): Add name_holder parameter.  Use
15356         unique_xmalloc_ptr.
15357         (dwarf_decode_lines): Update.
15358
15359 2018-01-17  Tom Tromey  <tom@tromey.com>
15360             Simon Marchi  <simon.marchi@ericsson.com>
15361
15362         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15363         (dwarf2_per_objfile::free_cached_comp_units)
15364         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15365         (init_cutu_and_read_dies_no_follow): Update.
15366         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15367         (dwarf2_cu::~dwarf2_cu): New.
15368         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15369         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15370
15371 2018-01-17  Tom Tromey  <tom@tromey.com>
15372             Simon Marchi  <simon.marchi@ericsson.com>
15373
15374         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15375         (struct die_reader_specs) <abbrev_table>: New member.
15376         (struct abbrev_table): Add constructor.
15377         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15378         <abbrev_obstack>: Now an auto_obstack.
15379         (abbrev_table_up): New typedef.
15380         (init_cu_die_reader): Add abbrev_table parameter.
15381         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15382         Add result_dwo_abbrev_table.
15383         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15384         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15385         Update.
15386         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15387         parameter.
15388         (skip_children): Update.
15389         (abbrev_table::alloc_abbrev): Rename from
15390         abbrev_table_alloc_abbrev.
15391         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15392         (abbrev_table::lookup_abbrev): Rename from
15393         abbrev_table_lookup_abbrev.
15394         (abbrev_table_read_table): Return abbrev_table_up.
15395         (abbrev_table_free, abbrev_table_free_cleanup)
15396         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15397         (load_partial_dies): Update.
15398
15399 2018-01-17  Tom Tromey  <tom@tromey.com>
15400
15401         * dwarf2read.c (dwarf2_compute_name): Update comment.
15402         (read_func_scope, read_variable): Update.
15403         (new_symbol): Remove.
15404         (new_symbol_full): Rename to new_symbol.
15405
15406 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15407
15408         PR gdb/16577
15409         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15410         a warning instead of throwing an error, set section size to 0 and return
15411         NULL.
15412         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15413
15414 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15415
15416         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15417         std::string.
15418         (linux_ptrace_attach_fail_reason_string): Likewise.
15419         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15420         Likewise.
15421         (linux_ptrace_attach_fail_reason_string): Likewise.
15422         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15423
15424 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15425
15426         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15427
15428 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15429
15430         PR gdb/21559
15431         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15432         checking for fs_base/gs_base fields in struct user_regs_struct.
15433         * configure: Regenerate.
15434
15435 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15436
15437         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15438         function.
15439         (aarch64_linux_init_abi): Install it to gdbarch hook
15440         gcc_target_options.
15441
15442 2018-01-15  Pedro Alves  <palves@redhat.com>
15443
15444         * common/signals-state-save-restore.c
15445         (save_original_signals_state): Fix typos.
15446
15447 2017-01-12  Tom Tromey  <tom@tromey.com>
15448             Sergio Durigan Junior  <sergiodj@redhat.com>
15449
15450         * Makefile.in (install-only): Install gdb-add-index.
15451
15452 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15453
15454         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15455
15456 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15457
15458         * infrun.c (keep_going_pass_signal): Clear step-over info when
15459         insert_breakpoints fails.
15460
15461 2018-01-11  Pedro Alves  <palves@redhat.com>
15462
15463         PR gdb/22583
15464         * infrun.c (resume): Rename to ...
15465         (resume_1): ... this.
15466         (resume): Reimplement as wrapper around resume_1.
15467
15468 2018-01-11  Pedro Alves  <palves@redhat.com>
15469
15470         PR remote/22597
15471         * remote.c (remote_parse_stop_reply): Default to the last-set
15472         general thread instead of to 'magic_null_ptid'.
15473
15474 2018-01-10  Pedro Alves  <palves@redhat.com>
15475
15476         * language.h (language_get_symbol_name_matcher): Rename ...
15477         (get_symbol_name_matcher): ... this.
15478         * language.c (language_get_symbol_name_matcher): Ditto.
15479         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15480         callers adjusted.
15481
15482 2018-01-10  Pedro Alves  <palves@redhat.com>
15483
15484         PR gdb/22670
15485         * dwarf2read.c
15486         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15487         Adjust to use language_get_symbol_name_matcher instead of
15488         language_defn::la_get_symbol_name_matcher.
15489         * language.c (language_get_symbol_name_matcher): If in Ada mode
15490         and the lookup name is a verbatim match, return Ada's matcher.
15491         * language.h (language_get_symbol_name_matcher): Adjust comment.
15492         (ada_lookup_name_info::verbatim_p):: New method.
15493
15494 2018-01-10  Pedro Alves  <palves@redhat.com>
15495
15496         PR gdb/22670
15497         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15498         minsym's language is language_auto or language_cplus, pass down
15499         language_ada instead.
15500         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15501
15502 2018-01-10  Pedro Alves  <palves@redhat.com>
15503
15504         PR gdb/22670
15505         * minsyms.c (linkage_name_str): New function.
15506         (iterate_over_minimal_symbols): Use it.
15507
15508 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15509
15510         * NEWS: Document that 'info proc' now works on FreeBSD.
15511
15512 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15513
15514         * configure.ac: Check for kinfo_getfile in libutil.
15515         * configure: Regenerate.
15516         * config.in: Regenerate.
15517         * fbsd-nat.c: Include "fbsd-tdep.h".
15518         (fbsd_fetch_cmdline): New.
15519         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15520         rather than calling error.
15521         (fbsd_info_proc): New.
15522         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15523         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15524         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15525
15526 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15527
15528         * fbsd-nat.c (struct free_deleter): Remove.
15529         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15530
15531 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15532
15533         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15534         NULL for an empty pathname.
15535
15536 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15537
15538         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15539         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15540         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15541         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15542         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15543         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15544         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15545         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15546         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15547         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15548         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15549         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15550         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15551         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15552         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15553
15554 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15555
15556         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15557         (gnu_xfer_auxv): New function.
15558         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15559         TARGET_OBJECT_AUXV.
15560
15561 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15562             Simon Marchi  <simon.marchi@ericsson.com>
15563
15564         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15565         common/selftest.c.
15566         (COMMON_OBS): Remove selftest.o.
15567         * configure.ac: Append selftest-arch.c and common/selftest.c to
15568         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15569         * configure: Re-generated.
15570         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15571         GDB_SELF_TEST.
15572         (maintenance_info_selftests): Likewise.
15573
15574 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15575
15576         * ada-valprint.c (val_print_packed_array_elements): Use
15577         proper number of elements when printing an array indexed
15578         by an enumeration type.
15579
15580 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15581
15582         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15583         (dw2_get_file_names_reader): Adjust.
15584         (lookup_dwo_signatured_type): Adjust.
15585         (lookup_dwp_signatured_type): Adjust.
15586         (lookup_signatured_type): Adjust.
15587         (create_type_unit_group): Adjust.
15588         (get_type_unit_group): Adjust.
15589         (process_psymtab_comp_unit_reader): Adjust.
15590         (build_type_psymtabs_reader): Adjust.
15591         (scan_partial_symbols): Adjust.
15592         (add_partial_symbol): Adjust.
15593         (add_partial_subprogram): Adjust.
15594         (peek_die_abbrev): Adjust.
15595         (fixup_go_packaging): Adjust.
15596         (process_imported_unit_die): Adjust.
15597         (dwarf2_compute_name): Adjust.
15598         (dwarf2_physname): Adjust.
15599         (read_import_statement): Adjust.
15600         (handle_DW_AT_stmt_list): Adjust.
15601         (read_file_scope): Adjust.
15602         (read_func_scope): Adjust.
15603         (read_lexical_block_scope): Adjust.
15604         (read_call_site_scope): Adjust.
15605         (read_variable): Adjust.
15606         (dwarf2_rnglists_process): Adjust.
15607         (dwarf2_ranges_process): Adjust.
15608         (dwarf2_ranges_read): Adjust.
15609         (dwarf2_get_pc_bounds): Adjust.
15610         (dwarf2_record_block_ranges): Adjust.
15611         (dwarf2_add_field): Adjust.
15612         (dwarf2_add_member_fn): Adjust.
15613         (read_structure_type): Adjust.
15614         (process_structure_scope): Adjust.
15615         (read_enumeration_type): Adjust.
15616         (read_array_type): Adjust.
15617         (mark_common_block_symbol_computed): Adjust.
15618         (read_common_block): Adjust.
15619         (read_namespace_type): Adjust.
15620         (read_namespace): Adjust.
15621         (read_module_type): Adjust.
15622         (read_tag_pointer_type): Adjust.
15623         (read_tag_ptr_to_member_type): Adjust.
15624         (read_tag_string_type): Adjust.
15625         (read_subroutine_type): Adjust.
15626         (read_typedef): Adjust.
15627         (read_base_type): Adjust.
15628         (attr_to_dynamic_prop): Adjust.
15629         (read_subrange_type): Adjust.
15630         (read_unspecified_type): Adjust.
15631         (dwarf2_read_abbrevs): Adjust.
15632         (load_partial_dies): Adjust.
15633         (read_partial_die): Adjust.
15634         (find_partial_die): Adjust.
15635         (guess_partial_die_structure_name): Adjust.
15636         (fixup_partial_die): Adjust.
15637         (read_attribute_value): Adjust.
15638         (read_addr_index): Adjust.
15639         (read_addr_index_from_leb128): Adjust.
15640         (read_str_index): Adjust.
15641         (dwarf2_string_attr): Adjust.
15642         (get_debug_line_section): Adjust.
15643         (dwarf_decode_line_header): Adjust.
15644         (lnp_state_machine::check_line_address): Adjust.
15645         (dwarf_decode_lines_1): Adjust.
15646         (dwarf_decode_lines): Adjust.
15647         (dwarf2_start_symtab): Adjust.
15648         (var_decode_location): Adjust.
15649         (new_symbol_full): Adjust.
15650         (dwarf2_const_value_data): Adjust.
15651         (dwarf2_const_value_attr): Adjust.
15652         (dwarf2_const_value): Adjust.
15653         (die_type): Adjust.
15654         (die_containing_type): Adjust.
15655         (build_error_marker_type): Adjust.
15656         (lookup_die_type): Adjust.
15657         (guess_full_die_structure_name): Adjust.
15658         (anonymous_struct_prefix): Adjust.
15659         (determine_prefix): Adjust.
15660         (dwarf2_name): Adjust.
15661         (follow_die_ref_or_sig): Adjust.
15662         (follow_die_offset): Adjust.
15663         (follow_die_ref): Adjust.
15664         (follow_die_sig_1): Adjust.
15665         (follow_die_sig): Adjust.
15666         (get_signatured_type): Adjust.
15667         (get_DW_AT_signature_type): Adjust.
15668         (decode_locdesc): Adjust.
15669         (dwarf_decode_macros): Adjust.
15670         (cu_debug_loc_section): Adjust.
15671         (fill_in_loclist_baton): Adjust.
15672         (dwarf2_symbol_mark_computed): Adjust.
15673         (init_one_comp_unit): Don't assign
15674         dwarf2_cu::dwarf2_per_objfile.
15675         (set_die_type): Adjust.
15676
15677 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15678
15679         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15680         <dwarf2_per_objfile>: New field.
15681         (dwarf2_per_objfile): Remove global.
15682         (get_dwarf2_per_objfile): New function.
15683         (set_dwarf2_per_objfile): New function.
15684         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15685         dwarf2_per_objfile.
15686         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15687         (read_abbrev_offset): Likewise.
15688         (read_indirect_string): Likewise.
15689         (read_indirect_line_string): Likewise.
15690         (read_indirect_string_at_offset): Likewise.
15691         (read_indirect_string_from_dwz): Likewise.
15692         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15693         dwarf2_per_objfile.
15694         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15695         (create_all_comp_units): Change objfile parameter to
15696         dwarf2_per_objfile.
15697         (create_all_type_units): Likewise.
15698         (process_queue): Add dwarf2_per_objfile parameter.
15699         (read_and_check_comp_unit_head): Likewise.
15700         (lookup_dwo_unit_in_dwp): Likewise.
15701         (get_dwp_file): Likewise.
15702         (process_cu_includes): Likewise.
15703         (struct free_dwo_file_cleanup_data): New struct.
15704         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15705         set_dwarf2_per_objfile.
15706         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15707         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15708         context, adjust calls.
15709         (dw2_instantiate_symtab): Likewise.
15710         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15711         (dw2_get_cu): Likewise.
15712         (create_cu_from_index_list): Change objfile parameter to
15713         dwarf2_per_objfile.
15714         (create_cus_from_index_list): Get dwarf2_per_objfile from
15715         context, adjust calls.
15716         (create_cus_from_index): Likewise.
15717         (create_signatured_type_table_from_index): Change objfile
15718         parameter to dwarf2_per_objfile.
15719         (create_signatured_type_table_from_debug_names): Change objfile
15720         parameter to dwarf2_per_objfile.
15721         (create_addrmap_from_index): Likewise.
15722         (create_addrmap_from_aranges): Likewise.
15723         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15724         (dw2_setup): Remove.
15725         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15726         context.
15727         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15728         get_dwarf2_per_objfile.
15729         (dw2_forget_cached_source_info): Likewise.
15730         (dw2_map_symtabs_matching_filename): Likewise.
15731         (struct dw2_symtab_iterator) <index>: Remove.
15732         <dwarf2_per_objfile>: New field.
15733         (dw2_symtab_iter_init): Replace index parameter with
15734         dwarf2_per_objfile.
15735         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15736         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15737         (dw2_print_stats): Likewise.
15738         (dw2_dump): Likewise.
15739         (dw2_expand_symtabs_for_function): Likewise.
15740         (dw2_expand_all_symtabs): Likewise.
15741         (dw2_expand_symtabs_with_fullname): Likewise.
15742         (dw2_expand_marked_cus): Replace index and objfile parameters
15743         with dwarf2_per_objfile.
15744         (dw_expand_symtabs_matching_file_matcher): Add
15745         dwarf2_per_objfile parameter and adjust calls.
15746         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15747         adjust calls.
15748         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15749         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15750         adjust calls.
15751         (create_cus_from_debug_names_list): Replace objfile parameter
15752         with dwarf2_per_objfile and adjust calls.
15753         (create_cus_from_debug_names): Likewise.
15754         (dwarf2_read_debug_names): Likewise.
15755         (mapped_debug_names::namei_to_name): Adjust call.
15756         (dw2_debug_names_iterator::next): Likewise.
15757         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15758         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15759         (dw2_debug_names_dump): Likewise.
15760         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15761         (dw2_debug_names_expand_symtabs_matching): Likewise.
15762         (dwarf2_initialize_objfile): Likewise.
15763         (dwarf2_build_psymtabs): Likewise.
15764         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15765         this_cu.
15766         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15767         (read_and_check_comp_unit_head): Likewise.
15768         (read_abbrev_offset): Likewise.
15769         (create_debug_type_hash_table): Likewise.
15770         (create_debug_types_hash_table): Likewise.
15771         (create_all_type_units): Replace objfile parameter with
15772         dwarf2_per_objfile.
15773         (add_type_unit): Add dwarf2_per_objfile parameter.
15774         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15775         with dwarf2_per_objfile.
15776         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15777         (lookup_dwp_signatured_type): Likewise.
15778         (lookup_signatured_type): Likewise.
15779         (read_cutu_die_from_dwo): Likewise.
15780         (init_tu_and_read_dwo_dies): Likewise.
15781         (init_cutu_and_read_dies): Likewise.
15782         (init_cutu_and_read_dies_no_follow): Likewise.
15783         (allocate_type_unit_groups_table): Add objfile parameter.
15784         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15785         (get_type_unit_group): Likewise.
15786         (process_psymtab_comp_unit): Update call.
15787         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15788         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15789         (print_tu_stats): Likewise.
15790         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15791         in void* parameter.
15792         (build_type_psymtabs): Change objfile parameter to
15793         dwarf2_per_objfile.
15794         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15795         passed in void* parameter.
15796         (process_skeletonless_type_units): Change objfile parameter to
15797         dwarf2_per_objfile.
15798         (set_partial_user): Likewise.
15799         (dwarf2_build_psymtabs_hard): Likewise.
15800         (read_comp_units_from_section): Likewise.
15801         (create_all_comp_units): Likewise.
15802         (scan_partial_symbols): Update calls.
15803         (add_partial_symbol): Likewise.
15804         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15805         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15806         (process_queue): Add dwarf2_per_objfile parameter.
15807         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15808         (compute_compunit_symtab_includes): Likewise.
15809         (process_cu_includes): Add dwarf2_per_objfile parameter.
15810         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15811         (process_full_type_unit): Likewise.
15812         (process_imported_unit_die): Update call.
15813         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15814         (read_file_scope): Likewise.
15815         (allocate_dwo_file_hash_table): Add objfile parameter.
15816         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15817         (create_cus_hash_table): Likewise.
15818         (create_dwp_hash_table): Likewise.
15819         (create_dwo_unit_in_dwp_v1): Likewise.
15820         (create_dwp_v2_section): Likewise.
15821         (create_dwo_unit_in_dwp_v2): Likewise.
15822         (lookup_dwo_unit_in_dwp): Likewise.
15823         (try_open_dwop_file): Likewise.
15824         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15825         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15826         cleanup to include a reference to dwarf2_per_objfile.
15827         (open_dwp_file): Add dwarf2_per_objfile parameter.
15828         (open_and_init_dwp_file): Likewise.
15829         (get_dwp_file): Likewise.
15830         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15831         (queue_and_load_all_dwo_tus): Update call.
15832         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15833         data.
15834         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15835         (dwarf2_ranges_process): Likewise.
15836         (dwarf2_get_pc_bounds): Likewise.
15837         (mark_common_block_symbol_computed): Likewise.
15838         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15839         (dwarf2_read_abbrevs): Update call.
15840         (read_partial_die): Use dwarf2_per_objfile from cu.
15841         (find_partial_die): Likewise.
15842         (fixup_partial_die): Likewise.
15843         (read_attribute_value): Likewise.
15844         (read_indirect_string_at_offset_from): Add objfile parameter.
15845         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15846         parameter.
15847         (read_indirect_string_from_dwz): Add objfile parameter.
15848         (read_indirect_string): Add objfile parameter.
15849         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15850         (read_addr_index): Use dwarf2_per_objfile from cu.
15851         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15852         call dw2_setup.
15853         (read_str_index): Use dwarf2_per_objfile from cu.
15854         (get_debug_line_section): Likewise.
15855         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15856         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15857         (new_symbol_full): Use dwarf2_per_objfile from cu.
15858         (build_error_marker_type): Likewise.
15859         (lookup_die_type): Likewise.
15860         (determine_prefix): Likewise.
15861         (follow_die_offset): Likewise.
15862         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15863         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15864         (dwarf2_fetch_die_type_sect_off): Likewise.
15865         (dwarf2_get_die_type): Likewise.
15866         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15867         (get_signatured_type): Likewise.
15868         (get_DW_AT_signature_type): Likewise.
15869         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15870         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15871         (cu_debug_loc_section): Likewise.
15872         (fill_in_loclist_baton): Likewise.
15873         (dwarf2_symbol_mark_computed): Likewise.
15874         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15875         dwarf2_per_objfile.
15876         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15877         parameter.
15878         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15879         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15880         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15881         (set_die_type): Use dwarf2_free_objfile from cu.
15882         (get_die_type_at_offset): Likewise.
15883         (dwarf2_per_objfile_free): Don't assign global variable.
15884         (debug_names) <constructor>: Add dwarf2_per_objfile
15885         parameter, update m_debugstrlookup construction.
15886         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15887         parameter.
15888         <m_dwarf2_per_objfile>: New field.
15889         <lookup>: Use m_dwarf2_per_objfile.
15890         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15891         (psyms_seen_size): Likewise.
15892         (write_gdbindex): Replace objfile parameter with
15893         dwarf2_per_objfile.
15894         (write_debug_names): Likewise.
15895         (write_psymtabs_to_index): Likewise.
15896         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15897         calls.
15898
15899 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15900
15901         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15902         <dwarf2_per_objfile>: New field.
15903         (struct dwarf2_per_cu_data) <objfile>: Remove.
15904         <dwarf2_per_objfile>: New field.
15905         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15906         of objfile.
15907         (create_signatured_type_table_from_index): Likewise.
15908         (create_debug_type_hash_table): Likewise.
15909         (fill_in_sig_entry_from_dwo_entry): Likewise.
15910         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15911         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15912         objfile.
15913         (create_partial_symtab): Access objfile through
15914         dwarf2_per_objfile.
15915         (process_psymtab_comp_unit_reader): Likewise.
15916         (read_comp_units_from_section): Likewise.
15917         (scan_partial_symbols): Likewise.
15918         (add_partial_symbol): Likewise.
15919         (add_partial_subprogram): Likewise.
15920         (peek_die_abbrev): Likewise.
15921         (fixup_go_packaging): Likewise.
15922         (process_full_comp_unit): Likewise.
15923         (process_full_type_unit): Likewise.
15924         (process_imported_unit_die): Likewise.
15925         (dwarf2_compute_name): Likewise.
15926         (dwarf2_physname): Likewise.
15927         (read_import_statement): Likewise.
15928         (create_cus_hash_table): Assign dwarf2_physname instead of
15929         objfile.
15930         (read_func_scope): Access objfile through dwarf2_per_objfile.
15931         (read_lexical_block_scope): Likewise.
15932         (read_call_site_scope): Likewise.
15933         (read_variable): Likewise.
15934         (dwarf2_rnglists_process): Likewise.
15935         (dwarf2_ranges_process): Likewise.
15936         (dwarf2_ranges_read): Likewise.
15937         (dwarf2_record_block_ranges): Likewise.
15938         (dwarf2_add_field): Likewise.
15939         (dwarf2_add_member_fn): Likewise.
15940         (read_structure_type): Likewise.
15941         (process_structure_scope): Likewise.
15942         (read_enumeration_type): Likewise.
15943         (read_array_type): Likewise.
15944         (read_common_block): Likewise.
15945         (read_namespace_type): Likewise.
15946         (read_namespace): Likewise.
15947         (read_module_type): Likewise.
15948         (read_tag_pointer_type): Likewise.
15949         (read_tag_ptr_to_member_type): Likewise.
15950         (read_tag_string_type): Likewise.
15951         (read_subroutine_type): Likewise.
15952         (read_typedef): Likewise.
15953         (read_base_type): Likewise.
15954         (attr_to_dynamic_prop): Likewise.
15955         (read_subrange_type): Likewise.
15956         (read_unspecified_type): Likewise.
15957         (load_partial_dies): Likewise.
15958         (read_partial_die): Likewise.
15959         (find_partial_die): Likewise.
15960         (guess_partial_die_structure_name): Likewise.
15961         (fixup_partial_die): Likewise.
15962         (read_attribute_value): Likewise.
15963         (read_addr_index_from_leb128): Likewise.
15964         (dwarf2_read_addr_index): Likewise.
15965         (dwarf2_string_attr): Likewise.
15966         (lnp_state_machine::check_line_address): Likewise.
15967         (dwarf_decode_lines_1): Likewise.
15968         (dwarf_decode_lines): Likewise.
15969         (dwarf2_start_symtab): Likewise.
15970         (var_decode_location): Likewise.
15971         (new_symbol_full): Likewise.
15972         (dwarf2_const_value_data): Likewise.
15973         (dwarf2_const_value_attr): Likewise.
15974         (dwarf2_const_value): Likewise.
15975         (die_type): Likewise.
15976         (die_containing_type): Likewise.
15977         (lookup_die_type): Likewise.
15978         (guess_full_die_structure_name): Likewise.
15979         (anonymous_struct_prefix): Likewise.
15980         (dwarf2_name): Likewise.
15981         (follow_die_ref_or_sig): Likewise.
15982         (follow_die_offset): Likewise.
15983         (follow_die_ref): Likewise.
15984         (dwarf2_fetch_die_loc_sect_off): Likewise.
15985         (dwarf2_fetch_constant_bytes): Likewise.
15986         (dwarf2_fetch_die_type_sect_off): Likewise.
15987         (dwarf2_get_die_type): Likewise.
15988         (follow_die_sig): Likewise.
15989         (decode_locdesc): Likewise.
15990         (dwarf2_per_cu_objfile): Likewise.
15991         (dwarf2_per_cu_text_offset): Likewise.
15992         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15993         objfile.
15994         (set_die_type): Access objfile through
15995         dwarf2_per_objfile.
15996
15997 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15998
15999         * valprint.c (converted_character_d): Remove typedef.
16000         (DEF_VEC_O (converted_character_d)): Remove.
16001         (count_next_character): Use std::vector.
16002         (print_converted_chars_to_obstack): Likewise.
16003         (generic_printstr): Likewise.
16004
16005 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16006
16007         * xml-support.h (struct gdb_xml_value): Add constructor.
16008         <value>: Change type to unique_xmalloc_ptr.
16009         (gdb_xml_value_s): Remove typedef.
16010         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16011         (gdb_xml_element_start_handler): Change parameter type to
16012         std::vector.
16013         (xml_find_attribute): Likewise.
16014         * xml-support.c (xml_find_attribute): Change parameter type to
16015         std::vector and adjust.
16016         (gdb_xml_values_cleanup): Remove.
16017         (gdb_xml_parser::start_element): Adjust to std::vector.
16018         (xinclude_start_include): Change paraeter type to std::vector
16019         and adjust.
16020         * btrace.c (check_xml_btrace_version): Likewise.
16021         (parse_xml_btrace_block): Likewise.
16022         (parse_xml_btrace_pt_config_cpu): Likewise.
16023         (parse_xml_btrace_pt): Likewise.
16024         (parse_xml_btrace_conf_bts): Likewise.
16025         (parse_xml_btrace_conf_pt): Likewise.
16026         * memory-map.c (memory_map_start_memory): Likewise.
16027         (memory_map_start_property): Likewise.
16028         * osdata.c (osdata_start_osdata): Likewise.
16029         (osdata_start_item): Likewise.
16030         (osdata_start_column): Likewise.
16031         * remote.c (start_thread): Likewise.
16032         * solib-aix.c (library_list_start_library): Likewise.
16033         (library_list_start_list): Likewise.
16034         * solib-svr4.c (library_list_start_library): Likewise.
16035         (svr4_library_list_start_list): Likewise.
16036         * solib-target.c (library_list_start_segment): Likewise.
16037         (library_list_start_section): Likewise.
16038         (library_list_start_library): Likewise.
16039         (library_list_start_list): Likewise.
16040         * tracepoint.c (traceframe_info_start_memory): Likewise.
16041         (traceframe_info_start_tvar): Likewise.
16042         * xml-syscall.c (syscall_start_syscall): Likewise.
16043         * xml-tdesc.c (tdesc_start_target): Likewise.
16044         (tdesc_start_feature): Likewise.
16045         (tdesc_start_reg): Likewise.
16046         (tdesc_start_union): Likewise.
16047         (tdesc_start_struct): Likewise.
16048         (tdesc_start_flags): Likewise.
16049         (tdesc_start_enum): Likewise.
16050         (tdesc_start_field): Likewise.
16051         (tdesc_start_enum_value): Likewise.
16052         (tdesc_start_vector): Likewise.
16053
16054 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16055
16056         * extension.h (struct xmethod_worker) <clone>: Remove.
16057         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16058         Remove.
16059         (python_xmethod_worker::clone): Remove.
16060         * valops.c (find_overload_match): Use std::move instead of
16061         clone.
16062
16063 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16064
16065         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16066         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16067         <free_xmethod_worker_data>: Remove.
16068         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16069         <get_xmethod_arg_types>: Remove.
16070         <get_xmethod_result_type>: Remove.
16071         <invoke_xmethod>: Remove.
16072         * extension.c (new_xmethod_worker): Remove.
16073         (clone_xmethod_worker): Remove.
16074         (get_matching_xmethod_workers): Return void, pass std::vector by
16075         pointer.
16076         (get_xmethod_arg_types): Rename to...
16077         (xmethod_worker::get_arg_types): ... this, and adjust.
16078         (get_xmethod_result_type): Rename to...
16079         (xmethod_worker::get_result_type): ... this, and adjust.
16080         (invoke_xmethod): Remove.
16081         (free_xmethod_worker): Remove.
16082         (free_xmethod_worker_vec): Remove.
16083         * extension.h (enum ext_lang_rc): Move here from
16084         extension-priv.h.
16085         (struct xmethod_worker): Add constructor and destructor.
16086         <data>: Remove.
16087         <value>: Remove.
16088         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16089         virtual pure methods.
16090         <get_arg_types, get_result_type>: New methods.
16091         (xmethod_worker_ptr): Remove typedef.
16092         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16093         (xmethod_worker_vec): Remove typedef.
16094         (xmethod_worker_up): New typedef.
16095         (invoke_xmethod): Remove.
16096         (clone_xmethod_worker): Remove.
16097         (free_xmethod_worker): Remove.
16098         (free_xmethod_worker_vec): Remove.
16099         (get_xmethod_arg_types): Remove.
16100         (get_xmethod_result_type): Remove.
16101         * valops.c (find_method_list): Use std::vector, don't use
16102         intermediate vector.
16103         (value_find_oload_method_list): Use std::vector.
16104         (find_overload_match): Use std::vector.
16105         (find_oload_champ): Use std::vector.
16106         * value.c (value_free): Use operator delete.
16107         (value_of_xmethod): Rename to...
16108         (value_from_xmethod): ... this.  Don't assign
16109         xmethod_worker::value, take rvalue-reference.
16110         (result_type_of_xmethod): Adjust.
16111         (call_xmethod): Adjust.
16112         * value.h: Include extension.h.
16113         (struct xmethod_worker): Don't forward-declare.
16114         (value_of_xmethod): Rename to...
16115         (value_from_xmethod): ... this, take rvalue-reference.
16116         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16117         (struct python_xmethod_worker): ... this, add constructor and
16118         destructor.
16119         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16120         (gdbpy_free_xmethod_worker_data): Rename to...
16121         (python_xmethod_worker::~python_xmethod_worker): ... this and
16122         adjust.
16123         (gdbpy_clone_xmethod_worker_data): Rename to...
16124         (python_xmethod_worker::clone): ... this and adjust.
16125         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16126         temporary vector.
16127         (gdbpy_get_xmethod_arg_types): Rename to...
16128         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16129         (gdbpy_get_xmethod_result_type): Rename to...
16130         (python_xmethod_worker::do_get_result_type): ... this and
16131         adjust.
16132         (gdbpy_invoke_xmethod): Rename to...
16133         (python_xmethod_worker::invoke): ... this and adjust.
16134         (new_python_xmethod_worker): Rename to...
16135         (python_xmethod_worker::python_xmethod_worker): ... this and
16136         adjust.
16137         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16138         Remove.
16139         (gdbpy_free_xmethod_worker_data): Remove.
16140         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16141         (gdbpy_get_xmethod_arg_types): Remove.
16142         (gdbpy_get_xmethod_result_type): Remove.
16143         (gdbpy_invoke_xmethod): Remove.
16144         * python/python.c (python_extension_ops): Remove obsolete
16145         callbacks.
16146
16147 2018-01-05  Pedro Alves  <palves@redhat.com>
16148
16149         PR gdb/18653
16150         * common/signals-state-save-restore.c
16151         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16152         find a custom handler preinstalled, instead of internal erroring.
16153         But only warn if !quiet.
16154         * common/signals-state-save-restore.h
16155         (save_original_signals_state): New parameter 'quiet'.
16156         * main.c (captured_main_1): Move save_original_signals_state call
16157         after option handling, and pass QUIET.
16158
16159 2018-01-05  Pedro Alves  <palves@redhat.com>
16160
16161         * spu-tdep.c (spu_catch_start): Pass
16162         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16163
16164 2018-01-05  Pedro Alves  <palves@redhat.com>
16165
16166         PR gdb/22670
16167         * ada-lang.c (literal_symbol_name_matcher): New function.
16168         (ada_get_symbol_name_matcher): Use it for
16169         symbol_name_match_type::SEARCH_NAME.
16170         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16171         it down instead of assuming symbol_name_match_type::FULL.
16172         * block.h (block_lookup_symbol): New parameter 'match_type'.
16173         * c-valprint.c (print_unpacked_pointer): Use
16174         lookup_symbol_search_name instead of lookup_symbol.
16175         * compile/compile-object-load.c (get_out_value_type): Pass down
16176         symbol_name_match_type::SEARCH_NAME.
16177         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16178         symbol_name_match_type::FULL.
16179         * cp-support.c (cp_get_symbol_name_matcher): Handle
16180         symbol_name_match_type::SEARCH_NAME.
16181         * infrun.c (insert_exception_resume_breakpoint): Use
16182         lookup_symbol_search_name.
16183         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16184         * psymtab.c (maintenance_check_psymtabs): Use
16185         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16186         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16187         SYMBOL_SEARCH_NAME.
16188         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16189         if symbol_name_match_type::SEARCH_NAME.
16190         (lookup_symbol_in_language): Pass down
16191         symbol_name_match_type::FULL.
16192         (lookup_symbol_search_name): New.
16193         (lookup_language_this): Pass down
16194         symbol_name_match_type::SEARCH_NAME.
16195         (lookup_symbol_aux, lookup_local_symbol): New parameter
16196         'match_type'.  Pass it down.
16197         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16198         (lookup_symbol_search_name): New declaration.
16199         (lookup_symbol_in_block): New 'match_type' parameter.
16200
16201 2018-01-05  Pedro Alves  <palves@redhat.com>
16202
16203         PR gdb/22670
16204         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16205         ada_lookup_symbol.
16206         (ada_lookup_symbol): Reimplement in terms of
16207         ada_lookup_symbol_list, bits factored out from
16208         ada_lookup_encoded_symbol.
16209
16210 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16211
16212         * ada-exp.y (write_object_renaming): When subscripting an array
16213         using a symbol as the index, pass the block in call to
16214         ada_lookup_encoded_symbol when looking that symbol up.
16215
16216 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16217
16218         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16219         TYPE_INDEX_TYPE.
16220
16221 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16222
16223         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16224         the case where VALUE_LVAL (val0) is not lval_memory.
16225
16226 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16227
16228         * ada-valprint.c (print_optional_low_bound): Handle
16229         character-indexed array printing like boolean-indexed array
16230         printing.
16231
16232 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16233
16234         * NEWS: Create a new section for the next release branch.
16235         Rename the section of the current branch, now that it has
16236         been cut.
16237
16238 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16239
16240         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16241         * version.in: Bump version to 8.1.50.DATE-git.
16242
16243 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16244
16245         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16246         Add field.
16247         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16248         Add field.
16249         (default_exception_support_info) <catch_handlers_sym>: Add field.
16250         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16251         (ada_exception_name_addr_1): Add "catch handlers" handling.
16252         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16253         Update all callers.
16254         (create_excep_cond_exprs) <ex>: Add parameter.
16255         (re_set_exception): Update create_excep_cond_exprs call.
16256         (print_it_exception, print_one_exception, print_mention_exception)
16257         (print_recreate_exception): Add "catch handler" handling.
16258         (allocate_location_catch_handlers, re_set_catch_handlers)
16259         (check_status_catch_handlers, print_it_catch_handlers)
16260         (print_one_catch_handlers, print_mention_catch_handlers)
16261         (print_recreate_catch_handlers): New function.
16262         (catch_handlers_breakpoint_ops): New variable.
16263         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16264         Add parameter.  Add "catch handler" handling.
16265         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16266         Add "catch handler" handling.
16267         (ada_exception_catchpoint_cond_string): Add "catch handler"
16268         handling.
16269         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16270         call.
16271         (catch_ada_handlers_command): New function.
16272         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16273         operations structure.
16274         (_initialize_ada_language): Add "catch handlers" command entry.
16275         * NEWS: Document "catch handlers" feature.
16276
16277 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16278
16279         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16280         account when creating the array type of the slice.
16281         (ada_value_slice): Likewise.
16282
16283 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16284
16285         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16286         New enum value.
16287         (create_array_type_with_stride): Add byte_stride_prop parameter.
16288         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16289         New parameter.  Update all callers in this file.
16290         (array_type_has_dynamic_stride): New function.
16291         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16292         of arrays with dynamic byte strides.
16293         * dwarf2read.c (read_array_type): Add support for dynamic
16294         DW_AT_byte_stride attributes.
16295
16296 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16297
16298         * dwarf2read.c (read_unspecified_type): Treat
16299         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16300
16301 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16302
16303         Update copyright year range in all GDB files.
16304
16305 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16306
16307         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16308         and gdb/testsuite/gdb.base/step-line.c.
16309
16310 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16311
16312         * copyright.py (main): Dump the contents of
16313         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16314         even if BY_HAND is empty.
16315
16316 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16317
16318         * top.c (print_gdb_version): Update Copyright year in version
16319         message.
16320
16321 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16322
16323         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16324
16325 For older changes see ChangeLog-2017.
16326 \f
16327 Local Variables:
16328 mode: change-log
16329 left-margin: 8
16330 fill-column: 74
16331 version-control: never
16332 coding: utf-8
16333 End: