0b8651ccefef06677b62fddaf974ba49a53844fc
[external/binutils.git] / gdb / ChangeLog
1 2018-11-22  Pedro Alves  <palves@redhat.com>
2
3         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
4         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
5         ALL_NON_EXITED_THREADS with all_non_exited_threads.
6         (print_one_breakpoint_location): Replace ALL_INFERIORS with
7         all_inferiors.
8         * bsd-kvm.c: Include inferior.h.
9         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
10         with all_non_exited_threads.
11         * common/filtered-iterator.h: New.
12         * common/safe-iterator.h: New.
13         * corelow.c (core_target_open): Don't call init_thread_list here.
14         * darwin-nat.c (thread_info_from_private_thread_info): Replace
15         ALL_THREADS with all_threads.
16         * fbsd-nat.c (fbsd_nat_target::resume): Replace
17         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
18         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
19         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
20         * fork-child.c (postfork_hook): Don't call init_thread_list here.
21         * gdbarch-selftests.c (register_to_value_test): Adjust.
22         * gdbthread.h: Don't include "inferior.h" here.
23         (struct inferior): Forward declare.
24         (enum step_over_calls_kind): Moved here from inferior.h.
25         (thread_info::deletable): Definition moved to thread.c.
26         (find_thread_ptid (inferior *, ptid_t)): Declare.
27         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
28         Include "thread-iter.h".
29         (all_threads, all_non_exited_threads, all_threads_safe): New.
30         (any_thread_p): Declare.
31         (thread_list): Delete.
32         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
33         all_non_exited_threads.
34         (proceed_after_attach_callback): Delete.
35         (proceed_after_attach): Take an inferior pointer instead of an
36         integer PID.  Adjust to use range-for.
37         (attach_post_wait): Pass down inferior pointer instead of pid.
38         Use range-for instead of ALL_NON_EXITED_THREADS.
39         (detach_command): Remove init_thread_list call.
40         * inferior-iter.h: New.
41         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
42         (delete_thread_of_inferior): Delete.
43         (delete_inferior, exit_inferior_1): Use range-for with
44         inf->threads_safe() instead of iterate_over_threads.
45         (inferior_appeared): Call init_thread_list here.
46         (discard_all_inferiors): Use all_non_exited_inferiors.
47         (find_inferior_id, find_inferior_pid): Use all_inferiors.
48         (iterate_over_inferiors): Use all_inferiors_safe.
49         (have_inferiors, number_of_live_inferiors): Use
50         all_non_exited_inferiors.
51         (number_of_inferiors): Use all_inferiors and std::distance.
52         (print_inferior): Use all_inferiors.
53         * inferior.h: Include gdbthread.h.
54         (enum step_over_calls_kind): Moved to gdbthread.h.
55         (struct inferior) <thread_list>: New field.
56         <threads, non_exited_threads, threads_safe>: New methods.
57         (ALL_INFERIORS): Delete.
58         Include "inferior-iter.h".
59         (ALL_NON_EXITED_INFERIORS): Delete.
60         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
61         functions.
62         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
63         ALL_NON_EXITED_THREADS with all_non_exited_threads.
64         * infrun.c (follow_exec): Use all_threads_safe.
65         (clear_proceed_status, proceed): Use all_non_exited_threads.
66         (init_wait_for_inferior): Don't clear inline frame state here.
67         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
68         all_threads instead of ALL_NON_EXITED_THREADS.
69         (random_pending_event_thread): Use all_non_exited_threads instead
70         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
71         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
72         instead of ALL_NON_EXITED_THREADS.
73         (handle_no_resumed): Use all_non_exited_threads instead of
74         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
75         ALL_INFERIORS.
76         (restart_threads, switch_back_to_stepped_thread): Use
77         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
78         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
79         all_inferiors.
80         (kill_unfollowed_fork_children): Use inf->non_exited_threads
81         instead of ALL_NON_EXITED_THREADS.
82         * linux-tdep.c (linux_make_corefile_notes): Use
83         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
84         * linux-thread-db.c (thread_db_target::update_thread_list):
85         Replace ALL_INFERIORS with all_inferiors.
86         (thread_db_target::thread_handle_to_thread_info): Use
87         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
88         * mi/mi-interp.c (multiple_inferiors_p): New.
89         (mi_on_resume_1): Simplify using all_non_exited_threads and
90         multiple_inferiors_p.
91         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
92         instead of ALL_NON_EXITED_THREADS.
93         * nto-procfs.c (nto_procfs_target::open): Don't call
94         init_thread_list here.
95         * record-btrace.c (record_btrace_target_open)
96         (record_btrace_target::stop_recording)
97         (record_btrace_target::close)
98         (record_btrace_target::record_is_replaying)
99         (record_btrace_target::resume, record_btrace_target::wait)
100         (record_btrace_target::record_stop_replaying): Use
101         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
102         * record-full.c (record_full_wait_1): Use all_non_exited_threads
103         instead of ALL_NON_EXITED_THREADS.
104         * regcache.c (cooked_read_test): Remove reference to global
105         thread_list.
106         * remote-sim.c (gdbsim_target::create_inferior): Don't call
107         init_thread_list here.
108         * remote.c (remote_target::update_thread_list): Use
109         all_threads_safe instead of ALL_NON_EXITED_THREADS.
110         (remote_target::process_initial_stop_replies): Replace
111         ALL_INFERIORS with all_non_exited_inferiors and use
112         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
113         (remote_target::open_1): Don't call init_thread_list here.
114         (remote_target::append_pending_thread_resumptions)
115         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
116         instead of ALL_NON_EXITED_THREADS.
117         (remote_target::commit_resume)
118         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
119         with all_non_exited_inferiors and use all_non_exited_threads
120         instead of ALL_NON_EXITED_THREADS.
121         (remote_target::kill_new_fork_children): Use
122         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
123         init_thread_list and init_wait_for_inferior calls.
124         (remote_target::remote_btrace_maybe_reopen)
125         (remote_target::thread_handle_to_thread_info): Use
126         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
127         * target.c (target_terminal::restore_inferior)
128         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
129         all_non_exited_inferiors.
130         * thread-iter.c: New file.
131         * thread-iter.h: New file.
132         * thread.c: Include "inline-frame.h".
133         (thread_list): Delete.
134         (clear_thread_inferior_resources): Call clear_inline_frame_state.
135         (init_thread_list): Use all_threads_safe instead of
136         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
137         (new_thread): Adjust to per-inferior thread lists.
138         (add_thread_silent): Pass inferior to find_thread_ptid.
139         (thread_info::deletable): New, moved from the header.
140         (delete_thread_1): Adjust to per-inferior thread lists.
141         (find_thread_global_id): Use inf->threads().
142         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
143         find_thread_ptid.
144         (find_thread_ptid(inferior*, ptid_t)): New overload.
145         (iterate_over_threads): Use all_threads_safe.
146         (any_thread_p): New.
147         (thread_count): Use all_threads and std::distance.
148         (live_threads_count): Use all_non_exited_threads and
149         std::distance.
150         (valid_global_thread_id): Use all_threads.
151         (in_thread_list): Use find_thread_ptid.
152         (first_thread_of_inferior): Adjust to per-inferior thread lists.
153         (any_thread_of_inferior, any_live_thread_of_inferior): Use
154         inf->non_exited_threads().
155         (prune_threads, delete_exited_threads): Use all_threads_safe.
156         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
157         (set_resumed, set_running): Use all_non_exited_threads.
158         (is_thread_state, is_stopped, is_exited, is_running)
159         (is_executing): Delete.
160         (set_executing, set_stop_requested, finish_thread_state): Use
161         all_non_exited_threads.
162         (print_thread_info_1): Use all_inferiors and all_threads.
163         (thread_apply_all_command): Use all_non_exited_threads.
164         (thread_find_command): Use all_threads.
165         (update_threads_executing): Use all_non_exited_threads.
166         * tid-parse.c (parse_thread_id): Use inf->threads.
167         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
168
169 2018-11-22  Pedro Alves  <palves@redhat.com>
170
171         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
172         switch to it before calling into try_open_exec_file.
173
174 2018-11-22  Pedro Alves  <palves@redhat.com>
175
176         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
177         inferior_thread instead of find_thread_ptid, and only when
178         inferior_ptid is not null_ptid.
179         * inferior.c (add_inferior): Don't include target_pid_to_str
180         output when the inferior is not started.
181         * python/py-inferior.c (python_on_normal_stop): Don't use
182         find_thread_ptid.
183         (tui_on_user_selected_context_changed): Use inferior_thread
184         instead of find_thread_ptid, and only when inferior_ptid is not
185         null_ptid.
186
187 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
188
189         PR python/23714
190         * gdb/python/python.c (execute_gdb_command): Call
191         prevent_dont_repeat earlier to avoid affecting dont_repeat.
192
193 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
194
195         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
196         (HFILES_NO_SRCDIR): Add arch/riscv.h.
197         * arch/riscv.c: New file.
198         * arch/riscv.h: New file.
199         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
200         this list, and add arch/riscv.o.
201         * features/Makefile: Add riscv features.
202         * features/riscv/32bit-cpu.c: New file.
203         * features/riscv/32bit-cpu.xml: New file.
204         * features/riscv/32bit-csr.c: New file.
205         * features/riscv/32bit-csr.xml: New file.
206         * features/riscv/32bit-fpu.c: New file.
207         * features/riscv/32bit-fpu.xml: New file.
208         * features/riscv/64bit-cpu.c: New file.
209         * features/riscv/64bit-cpu.xml: New file.
210         * features/riscv/64bit-csr.c: New file.
211         * features/riscv/64bit-csr.xml: New file.
212         * features/riscv/64bit-fpu.c: New file.
213         * features/riscv/64bit-fpu.xml: New file.
214         * features/riscv/rebuild-csr-xml.sh: New file.
215         * riscv-tdep.c: Add 'arch/riscv.h' include.
216         (riscv_gdb_reg_names): Delete.
217         (csr_reggroup): New global.
218         (struct riscv_register_alias): Delete.
219         (struct riscv_register_feature): New structure.
220         (riscv_register_aliases): Delete.
221         (riscv_xreg_feature): New global.
222         (riscv_freg_feature): New global.
223         (riscv_virtual_feature): New global.
224         (riscv_csr_feature): New global.
225         (riscv_create_csr_aliases): New function.
226         (riscv_read_misa_reg): Delete.
227         (riscv_has_feature): Delete.
228         (riscv_isa_xlen): Simplify, just return cached xlen.
229         (riscv_isa_flen): Simplify, just return cached flen.
230         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
231         (riscv_register_name): Update to make use of tdesc_register_name.
232         Look up xreg and freg names in the new globals riscv_xreg_feature
233         and riscv_freg_feature.  Don't supply csr aliases here.
234         (riscv_fpreg_q_type): Delete.
235         (riscv_register_type): Use tdesc_register_type in almost all
236         cases, override the returned type in a few specific cases only.
237         (riscv_print_one_register_info): Handle errors reading registers.
238         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
239         registers that are otherwise unknown to GDB.  Also check the
240         csr_reggroup.
241         (riscv_print_registers_info): Remove assert about upper register
242         number, and use gdbarch_register_reggroup_p instead of
243         short-cutting.
244         (riscv_find_default_target_description): New function.
245         (riscv_check_tdesc_feature): New function.
246         (riscv_add_reggroups): New function.
247         (riscv_setup_register_aliases): New function.
248         (riscv_init_reggroups): New function.
249         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
250         setup register groups.  Register new riscv debug variable.
251         * riscv-tdep.h: Add 'arch/riscv.h' include.
252         (struct gdbarch_tdep): Remove abi union, and add
253         riscv_gdbarch_features field.  Remove cached quad floating point
254         type, and provide initialisation for double type field.
255         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
256         the list of targets using the feature based target descriptions.
257         * NEWS: Mention target description support.
258
259 2018-11-21  Pedro Alves  <palves@redhat.com>
260
261         * valops.c (find_method_list, value_find_oload_method_list)
262         (find_overload_match, find_oload_champ): Rename parameters and
263         locals.
264
265 2018-11-21  Pedro Alves  <palves@redhat.com>
266
267         * valops.c (find_method_list): Replace pointer and length
268         parameters with an gdb::array_view.  Adjust.
269         (value_find_oload_method_list): Likewise.
270         (find_overload_match): Use gdb::array_view for methods list.
271         Adjust to find_oload_champ interface change.
272         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
273         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
274
275 2018-11-21  Pedro Alves  <palves@redhat.com>
276
277         * gdbtypes.c (compare_badness): Change type of parameters to const
278         reference.  Adjust to badness_vector being a std::vector now.
279         (rank_function): Adjust to badness_vector being a std::vector now.
280         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
281         (LENGTH_MATCH): Delete.
282         (compare_badness): Change type of parameters to const reference.
283         (rank_function): Return a badness_vector by value now.
284         (find_overload_match): Adjust to badness_vector being a
285         std::vector now.  Remove cleanups.
286         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
287         badness_vector pointer.
288         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
289         a badness_vector pointer.  Adjust to badness_vector being a
290         std::vector now.  Remove cleanups.
291         (find_oload_champ): 'oload_champ_bv' parameter now
292         a badness_vector pointer.  Adjust to badness_vector being a
293         std::vector now.  Remove cleanups.
294
295 2018-11-21  Pedro Alves  <palves@redhat.com>
296
297         * cp-support.c (sym_return_val_size, sym_return_val_index)
298         (sym_return_val): Delete.
299         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
300         add to the vector.
301         (make_symbol_overload_list): Adjust to return a std::vector
302         instead of maintaining a global open coded vector.
303         (make_symbol_overload_list_block): Add std::vector parameter.
304         (make_symbol_overload_list_block): Rename to ...
305         (add_symbol_overload_list_block): ... this and add std::vector
306         parameter.
307         (make_symbol_overload_list_namespace): Rename to ...
308         (add_symbol_overload_list_namespace): ... this and add std::vector
309         parameter.
310         (make_symbol_overload_list_adl_namespace): Rename to ...
311         (add_symbol_overload_list_adl_namespace): ... this and add
312         std::vector parameter.
313         (make_symbol_overload_list_adl): Delete.
314         (add_symbol_overload_list_adl): New.
315         (make_symbol_overload_list_using): Rename to ...
316         (add_symbol_overload_list_using): ... this and add std::vector
317         parameter.
318         (make_symbol_overload_list_qualified): Rename to ...
319         (add_symbol_overload_list_qualified): ... this and add std::vector
320         parameter.
321         * cp-support.h: Include "common/array-view.h" and <vector>.
322         (make_symbol_overload_list): Change return type to std::vector.
323         (make_symbol_overload_list_adl): Delete declaration.
324         (add_symbol_overload_list_adl): New declaration.
325         * valops.c (find_overload_match): Local 'oload_syms' now a
326         std::vector.
327         (find_oload_champ_namespace): 'oload_syms' parameter now a
328         std::vector pointer.
329         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
330         std::vector pointer.  Adjust to new make_symbol_overload_list
331         interface.
332
333 2018-11-21  Pedro Alves  <palves@redhat.com>
334
335         * common/array-view.h (array_view::splice(size_type, size_t)): New.
336         (array_view::splice(size_type)): New.
337         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
338         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
339         std::vector.
340         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
341         * extension.h: Include "common/array-view.h".
342         (xmethod_worker::invoke): Adjust to use gdb::array_view.
343         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
344         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
345         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
346         (xmethod_worker::do_get_result_type): Adjust to use
347         gdb::array_view.
348         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
349         * gdbtypes.h: Include "common/array-view.h".
350         (rank_function): Adjust to use gdb::array_view.
351         * python/py-xmethods.c (python_xmethod_worker::invoke)
352         (python_xmethod_worker::do_get_arg_types)
353         (python_xmethod_worker::do_get_result_type)
354         (python_xmethod_worker::invoke): Adjust to new interfaces.
355         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
356         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
357         * valops.c (find_overload_match, find_oload_champ_namespace)
358         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
359         gdb:array_view and the new xmethod_worker interfaces.
360         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
361         gdb::array_view.
362         * value.h (find_overload_match, result_type_of_xmethod)
363         (call_xmethod): Adjust to use gdb::array_view.
364         * unittests/array-view-selftests.c: Add slicing tests.
365
366 2018-11-21  Pedro Alves  <palves@redhat.com>
367
368         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
369         * common/array-view.h (make_array_view): New.
370         * compile/compile-object-run.c (compile_object_run): Adjust to
371         pass an array_view.
372         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
373         * eval.c (eval_call): Adjust to pass an array_view.
374         (evaluate_subexp_standard): Adjust to pass an array_view.
375         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
376         * guile/scm-value.c (gdbscm_value_call): Likewise.
377         * infcall.c (push_dummy_code): Replace pointer + size parameters
378         with an array_view parameter.
379         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
380         adjust.
381         * infcall.h: Include "common/array-view.h".
382         (call_function_by_hand, call_function_by_hand_dummy): Replace
383         pointer + size parameters with an array_view parameter.
384         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
385         * linux-tdep.c (linux_infcall_mmap): Likewise.
386         * objc-lang.c (lookup_objc_class, lookup_child_selector)
387         (value_nsstring, print_object_command): Likewise.
388         * python/py-value.c (valpy_call): Likewise.
389         * rust-lang.c (rust_evaluate_funcall): Likewise.
390         * spu-tdep.c (flush_ea_cache): Likewise.
391         * valarith.c (value_x_binop, value_x_unop): Likewise.
392         * valops.c (value_allocate_space_in_inferior): Likewise.
393         * unittests/array-view-selftests.c (run_tests): Add
394         gdb::make_array_view test.
395
396 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
397
398         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
399         than a fixed size buffer.
400
401 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
402
403         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
404         and remove insertion of extra spaces in GDB's output.
405         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
406         Layout field into a temporary buffer, and then output it as a
407         string field.
408
409 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
410
411         * NEWS: Document the language choice done by
412         'info [types|functions|variables]|rbreak'.
413
414 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
415
416         * symtab.c (treg_matches_sym_type_name): Use
417         scoped_switch_to_sym_language_if_auto instead of local logic.
418         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
419         to switch to SYM language when language mode is auto.
420
421 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
422
423         * language.h (scoped_switch_to_sym_language_if_auto): New class.
424
425 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
426
427         * symtab.c (search_symbols): Properly check absence of type regexp
428         before entering the loop scanning the minimal symbols.
429
430 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
431
432         * s12z-tdep.c (s12z_extract_return_value): New function.
433         (inv_reg_perm) New array.
434         (s12z_return_value): Populate readbuf if non-null.
435
436 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
437
438         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
439         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
440         to MinGW fixed by Gnulib.
441         (O_NOINHERIT): Define if not defined.
442
443 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
444
445         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
446
447 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
448
449         * infrun.c (displaced_step_inferior_state) <next>: Remove.
450
451 2018-11-19  Tom Tromey  <tom@tromey.com>
452
453         * source.c (get_filename_and_charpos): Return void.
454
455 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
456
457         * skip.c (_initialize_step_skip): Fix "info skip" help.
458
459 2018-11-16  Tom Tromey  <tom@tromey.com>
460
461         PR rust/23625:
462         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
463
464 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
465
466         * infrun.c (displaced_step_inferior_states): Change type to
467         std::forward_list.
468         (get_displaced_stepping_state): Adjust.
469         (displaced_step_in_progress_any_inferior): Adjust.
470         (add_displaced_stepping_state): Adjust.
471         (remove_displaced_stepping_state): Adjust.
472
473 2018-11-18  Tom Tromey  <tom@tromey.com>
474
475         PR build/23814:
476         * target-delegates.c: Rebuild.
477         * ia64-linux-nat.c (class ia64_linux_nat_target)
478         <have_steppable_watchpoint>: Use override.  Return true, not 1.
479         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
480         "self" argument.
481         (ia64_linux_nat_target::low_new_thread): Rename.
482         (class ia64_linux_nat_target) <read_description>: Don't declare.
483         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
484         bool.
485
486 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
487
488         PR gdb/22736:
489         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
490         lang_struct_return code.
491
492 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
493
494         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
495         return_method.
496         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
497         * amd64-tdep.c (amd64_push_arguments): Likewise.
498         (amd64_push_dummy_call): Likewise.
499         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
500         * arc-tdep.c (arc_push_dummy_call): Likewise.
501         * arm-tdep.c (arm_push_dummy_call): Likewise.
502         * avr-tdep.c (avr_push_dummy_call): Likewise.
503         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
504         * cris-tdep.c (cris_push_dummy_call): Likewise.
505         * csky-tdep.c (csky_push_dummy_call): Likewise.
506         * frv-tdep.c (frv_push_dummy_call): Likewise.
507         * gdbarch.c: Regenerate.
508         * gdbarch.h: Regenerate.
509         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
510         return_method.
511         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
512         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
513         (hppa64_push_dummy_call): Likewise.
514         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
515         * i386-tdep.c (i386_push_dummy_call): Likewise.
516         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
517         * infcall.c (call_function_by_hand_dummy): Likewise.
518         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
519         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
520         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
521         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
522         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
523         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
524         * mep-tdep.c (mep_push_dummy_call): Likewise.
525         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
526         (mips_n32n64_push_dummy_call): Likewise.
527         (mips_o32_push_dummy_call): Likewise.
528         (mips_o64_push_dummy_call): Likewise.
529         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
530         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
531         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
532         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
533         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
534         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
535         (ppc64_sysv_abi_push_dummy_call): Likewise.
536         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
537         (ppc64_sysv_abi_push_dummy_call): Likewise.
538         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
539         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
540         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
541         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
542         * rx-tdep.c (rx_push_dummy_call): Likewise.
543         * s390-tdep.c (s390_push_dummy_call): Likewise.
544         * score-tdep.c (score_push_dummy_call): Likewise.
545         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
546         (sh_push_dummy_call_nofpu): Likewise.
547         * sparc-tdep.c (sparc32_store_arguments): Likewise.
548         (sparc32_push_dummy_call): Likewise.
549         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
550         (sparc64_push_dummy_call): Likewise.
551         * spu-tdep.c (spu_push_dummy_call): Likewise.
552         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
553         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
554         * v850-tdep.c (v850_push_dummy_call): Likewise.
555         * vax-tdep.c (vax_push_dummy_call): Likewise.
556         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
557         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
558
559 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
560
561         * gdbarch.sh (enum function_call_return_method): Add enum.
562         * gdbarch.h: Regenerate.
563         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
564
565 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
566
567         * unittests/copy_bitwise-selftests.c: New file.
568         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
569         (selftests::copy_bitwise_tests): Delete, moving this code to
570         unittests/copy_bitwise-selftests.c instead.
571         (_initialize_utils): Do not register copy_bitwise tests.
572         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
573         unittests/copy_bitwise-selftests.c.
574
575 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
576
577         * ada-lang.c (move_bits): Delete. Update all callers to use
578         copy_bitwise instead.
579         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
580         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
581         Move from here to utils.c.
582         (_initialize_dwarf2loc): Remove call to register copy_bitwise
583         selftests.
584         * utils.h (copy_bitwise): Add declaration.
585         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
586         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
587         Moved here from dwarf2loc.c.
588         (_initialize_utils): Register copy_bitwise selftests.
589
590 2018-11-14  Jim Wilson  <jimw@sifive.com>
591
592         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
593         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
594         then increment next_regnum if odd.
595         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
596         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
597         function type.  Pass new arg to riscv_arg_location based on function
598         type.
599         (riscv_return_value): Pass new arg to riscv_arg_location.
600
601         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
602         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
603         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
604
605         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
606         setting len.  New local align, set to max of arg align and xlen,
607         and pass to first riscv_assign_stack_location call.
608
609 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
610
611         * skip.c (complete_skip_number): New function.
612         (_initialize_step_skip): Add completers to some skip commands.
613
614 2018-11-09  Tom Tromey  <tom@tromey.com>
615
616         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
617         (struct remote_g_packet_data): Derive from allocate_on_obstack.
618         <guesses>: Now a std::vector.
619         (remote_g_packet_data_init, register_remote_g_packet_guess):
620         Update.
621         (remote_read_description_p): Update.  Return bool.
622         (remote_target::read_description): Update.
623         (struct remote_g_packet_guess): Add constructor.
624
625 2018-11-09  Tom Tromey  <tom@tromey.com>
626
627         * common/scoped_fd.h (class scoped_fd): Add move constructor and
628         move assignment operator.
629         * psymtab.c (psymtab_to_fullname): Update.
630         * source.h (open_source_file): Return scoped_fd.
631         (find_and_open_source): Likewise.
632         * source.c (open_source_file): Return scoped_fd.
633         (get_filename_and_charpos): Update.
634         (print_source_lines_base): Update.  Use scoped_fd::to_file.
635         (forward_search_command): Likewise.
636         (reverse_search_command): Likewise.
637         (find_and_open_source): Return scoped_fd.
638         * tui/tui-source.c (tui_set_source_content): Update.  Use
639         gdb_file_up.
640
641 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
642
643         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
644         overflow.
645
646 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
647
648         * configure: Regenerate.
649
650 2018-11-09  Tom de Vries  <tdevries@suse.de>
651
652         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
653         unconditionally, to set the language of the symbol.  Manage freeing
654         returned pointer using gdb::unique_xmalloc_ptr.
655
656 2018-11-08  Tom Tromey  <tom@tromey.com>
657
658         * record.c (require_record_target): Upper-case "<TAB>".
659
660 2018-11-08  Tom Tromey  <tom@tromey.com>
661
662         * python/lib/gdb/command/pretty_printers.py
663         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
664
665 2018-11-08  Tom Tromey  <tom@tromey.com>
666
667         PR gdb/23555:
668         PR gdb/23838:
669         * target.h (target_supports_terminal_ours): Return bool.
670         * target.c (target_supports_terminal_ours): Handle case where
671         current_top_target returns nullptr.  Return bool.
672
673 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
674
675         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
676         return the correct count for potential HFAs.
677
678 2018-11-08  Jan Beulich  <jbeulich@suse.com>
679
680         * i387-tdep.c (i387_supply_xsave): Split handling of
681         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
682         (i387_collect_xsave): Likewise.
683
684 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
685
686         * riscv-tdep.c (riscv_insn::decode): Update header comment.
687         (riscv_frame_this_id): Catch errors thrown while building the
688         frame cache, leave the frame id as the default, which is the outer
689         frame id.
690
691 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
692
693         * ada-lang.c (read_atcb): Only set task_info->called_task if
694         task_info->state == Entry_Caller_Sleep.
695         (print_ada_task_info): Do not check task_info->state before
696         checking task_info->called_task.
697         (info_task): Likewise.
698
699 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
700
701         * ada-tasks.c (read_atcb): Clear task_info before computing
702         the value of each of its fields.
703
704 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
705
706         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
707         NULL before dereferencing it.
708
709 2018-11-06  Tom de Vries  <tdevries@suse.de>
710
711         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
712         program headers.
713
714 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
715
716         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
717         so that it applies to uclinux as well.
718
719 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
720
721         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
722         when on AAPCS.
723
724 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
725
726         * riscv-fbsd-nat.c (getregs_supplies): Return true for
727         RISCV_CSR_SSTATUS_REGNUM.
728
729 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
730
731         * source.c (open_source_file): Fix leak by transferring the
732         current s->fullname to the unique_xmalloc_ptr fullname given
733         to find_and_open_source.
734
735 2018-11-04  Tom Tromey  <tom@tromey.com>
736
737         * varobj.c (install_default_visualizer): Update.
738         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
739         Return gdbpy_ref.
740         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
741         (find_pretty_printer_from_progspace)
742         (find_pretty_printer_from_gdb, find_pretty_printer)
743         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
744         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
745         Update.
746
747 2018-11-04  Tom Tromey  <tom@tromey.com>
748
749         * python/python.c (gdbpy_parameter_value): Update.
750         * python/python-internal.h (python_string_to_unicode)
751         (python_string_to_target_python_string)
752         (host_string_to_python_string): Return gdbpy_ref.
753         * python/py-utils.c (python_string_to_unicode)
754         (unicode_to_encoded_python_string)
755         (unicode_to_target_python_string)
756         (python_string_to_target_string)
757         (python_string_to_target_python_string): Return gdbpy_ref.
758         (python_string_to_host_string): Update.
759         (host_string_to_python_string): Return gdbpy_ref.
760         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
761         (stpy_fullname): Update.
762         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
763         Update.
764         * python/py-prettyprint.c (print_string_repr): Update.
765         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
766         (objfpy_get_build_id): Update.
767         * python/py-breakpoint.c (bppy_get_location)
768         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
769         Update.
770
771 2018-11-04  Tom Tromey  <tom@tromey.com>
772
773         * python/python-internal.h (gdb_py_object_from_longest)
774         (gdb_py_object_from_ulongest): Return gdbpy_ref.
775         * python/py-value.c (valpy_int): Update.
776         * python/py-utils.c (gdb_py_object_from_longest): Return
777         gdbpy_ref.
778         (gdb_py_object_from_ulongest): Likewise.
779         * python/py-type.c (typy_get_alignof): Update.
780         * python/py-linetable.c (ltpy_get_all_source_lines)
781         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
782         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
783
784 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
785
786         * ada-lang.c (_initialize_ada_language): Fix typo.
787
788 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
789
790         * language.c (type): Remove.
791         (_initialize_language): Remove assignment to type.
792
793 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
794
795         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
796         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
797         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
798         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
799         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
800         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
801         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
802         and aarch64-ravenscar-thread.o.
803         * NEWS: Add entry documenting Ravenscar tasking support
804         on AArch64 ELF.
805
806 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
807
808         * symtab.c (info_functions_command): Initialize quiet flag.
809         * stack.c (info_args_command): Likewise.
810
811 2018-11-01  Jim Wilson  <jimw@sifive.com>
812
813         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
814         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
815         debugging messages.
816
817 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
818
819         * ada-lang.c (ada_watch_location_expression): New function.
820         (ada_language_defn): Set la_watch_location_expression to
821         ada_watch_location_expression.
822
823 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
824
825         * print-utils.c (int_string): Remove unnecessary trailing spaces.
826
827 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
828
829         * rs6000-tdep.c (skip_prologue): Fix potential negative left
830         shifting.
831
832 2018-11-01  Jerome Guitton  <guitton@adacore.com>
833             Joel Brobecker  <brobecker@adacore.com>
834
835         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
836         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
837         * arm-pikeos-tdep.c: New file.
838         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
839         embedded system.
840         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
841
842 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
843
844         * common/pathstuff.c (get_standard_temp_dir): New.
845         * common/pathstuff.h (get_standard_temp_dir): New.
846         * config.in: Re-generate.
847         * configure: Re-generate.
848         * configure.ac: Don't check for mkdtemp.
849         * gnulib/aclocal-m4-deps.mk: Re-generate.
850         * gnulib/aclocal.m4: Re-generate.
851         * gnulib/config.in: Re-generate.
852         * gnulib/configure: Re-generate.
853         * gnulib/import/Makefile.am: Re-generate.
854         * gnulib/import/Makefile.in: Re-generate.
855         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
856         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
857         * gnulib/import/m4/mkdtemp.m4: New file.
858         * gnulib/import/mkdtemp.c: New file.
859         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
860         Add mkdtemp module.
861         * unittests/mkdir-recursive-selftests.c (test): Use
862         get_standard_temp_dir.
863         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
864         ifdef.
865         * compile/compile.c (get_compile_file_tempdir): Likewise.
866
867 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
868
869         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
870         (SIG_FRAME_LR_OFFSET64): New define.
871         (SIG_FRAME_FP_OFFSET64): New define.
872         (aix_sighandle_frame_cache): New Function.
873         (aix_sighandle_frame_this_id): New Function.
874         (aix_sighandle_frame_prev_register): New Function.
875         (aix_sighandle_frame_sniffer): New Function.
876         (aix_sighandle_frame_unwind): New global variable.
877         (rs6000_aix_init_osabi): Install new frame unwinder.
878
879 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
880
881         PR gdb/23835
882         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
883         already defined.
884
885 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
886
887         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
888
889 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
890
891         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
892         (producer_is_icc): New function.
893         (check_producer): Set producer_is_icc field on dwarf2_cu.
894         (dwarf2_init_integer_type): New function.
895         (read_base_type): Call dwarf2_init_integer_type instead of
896         init_integer_type in all cases.
897         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
898         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
899         LEN is greater than 0.
900
901 2018-10-30  Tom Tromey  <tom@tromey.com>
902
903         * main.c (captured_main_1): Check return value of bfd_init.
904
905 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
906
907         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
908         Adjust comments.
909
910 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
911
912         * procfs.c: Include common/pathstuff.h.
913
914 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
915
916         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
917         Add missing braces.  No functional change.
918
919 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
920
921         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
922         to report a bad option and fix indentation.
923         * demangle.c (demangle_command): Use report_unrecognized_option_error
924         to report a bad option and correctly report the bad option.
925
926 2018-10-27  Tom Tromey  <tom@tromey.com>
927
928         PR cli/23364:
929         * darwin-nat.c (copied_shell): New global.
930         (may_have_sip): Rename from should_disable_startup_with_shell.
931         (copy_shell_to_cache, maybe_cache_shell): New functions.
932         (darwin_nat_target::create_inferior): Update.  Use
933         copied_shell.
934
935 2018-10-27  Tom Tromey  <tom@tromey.com>
936
937         * unittests/scoped_fd-selftests.c (test_to_file): New function.
938         (run_tests): Call test_to_file.
939         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
940         temporary files.
941         * common/scoped_fd.h (scoped_fd::to_file): New method.
942
943 2018-10-27  Tom Tromey  <tom@tromey.com>
944
945         * unittests/scoped_mmap-selftests.c (test_normal): Use
946         gdb_mkostemp_cloexec.
947         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
948         Use gdb_mkostemp_cloexec.
949         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
950         gnulib/config.in, gnulib/configure,
951         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
952         gnulib/import/m4/gnulib-cache.m4,
953         gnulib/import/m4/gnulib-comp.m4: Update.
954         * gnulib/import/m4/mkostemp.m4: New file.
955         * gnulib/import/m4/mkstemp.m4: Remove.
956         * gnulib/import/mkostemp.c: New file.
957         * gnulib/import/mkstemp.m4: Remove.
958         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
959         mkstemp, add mkostemp.  Apply new patch.
960         * gnulib/import/stdlib.in.h: Apply patch.
961         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
962         New file.
963         * dwarf-index-write.c (write_psymtabs_to_index): Use
964         gdb_mkostemp_cloexec.
965         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
966
967 2018-10-27  Tom Tromey  <tom@tromey.com>
968
969         * unittests/mkdir-recursive-selftests.c: New file.
970         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
971         unittests/mkdir-recursive-selftests.c.
972         * dwarf-index-cache.c (mkdir_recursive): Move to
973         common/filestuff.c.
974         (index_cache::store): Check return value of mkdir_recursive.
975         (create_dir_and_check, test_mkdir_recursive): Move to new file.
976         (_initialize_index_cache): Don't register test.
977         * common/filestuff.h (mkdir_recursive): Declare.
978         * common/filestuff.c (mkdir_recursive): Move from
979         dwarf-index-cache.c.  Return bool.
980
981 2018-10-27  Tom Tromey  <tom@tromey.com>
982
983         * dwarf-index-write.c (write_psymtabs_to_index): Move
984         make_temp_filename to common/pathstuff.c.
985         * common/pathstuff.h (make_temp_filename): Declare.
986         * common/pathstuff.c (make_temp_filename): New function, moved
987         from dwarf-index-write.c.
988
989 2018-10-27  Tom Tromey  <tom@tromey.com>
990
991         * procfs.c (procfs_target::create_inferior): Use get_shell.
992         * cli/cli-cmds.c (shell_escape): Use get_shell.
993         * windows-nat.c (windows_nat_target::create_inferior): Use
994         get_shell.
995         * common/pathstuff.c (get_shell): New function.
996         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
997         (fork_inferior): Use get_shell.
998         * common/pathstuff.h (get_shell): Declare.
999
1000 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1001
1002         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1003
1004 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1005
1006         * stack.c (print_variable_and_value_data): Add preg and treg.
1007         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1008         and update callers.
1009         (print_frame_arg_vars): Likewise.
1010         (prepare_reg): New function.
1011         (info_locals_command): Extract info print args and use them.
1012         (info_args_command): Likewise.
1013         (_initialize_stack): Modify on-line help.
1014         * symtab.c (treg_matches_sym_type_name): New function.
1015         (search_symbols): New arg t_regexp.
1016         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1017         (info_variables_command): Extract info print args and use them.
1018         (info_functions_command): Likewise.
1019         (info_types_command): Update call to symtab_symbol_info.
1020         (_initialize_symtab): Modify on-line help.
1021         * symtab.h (treg_matches_sym_type_name): New function.
1022         (search_symbols): New t_regexp arg.
1023
1024 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1025
1026         * cli-utils.c (extract_arg_maybe_quoted): New function.
1027         (extract_info_print_args): New function.
1028         (info_print_args_help): New function.
1029         (report_unrecognized_option_error): New function.
1030         * cli-utils.h (extract_arg_maybe_quoted): New function.
1031         (extract_info_print_args): New function.
1032         (info_print_args_help): New function.
1033         (report_unrecognized_option_error): New function.
1034
1035 2018-10-26  Tom Tromey  <tom@tromey.com>
1036
1037         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1038         (compute_compunit_symtab_includes): Update.
1039         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1040         (compunit_symtab_ptr): Likewise.
1041
1042 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1043
1044         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1045         default_print_auxv_entry for specific tag values.
1046
1047 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1048
1049         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1050
1051 2018-10-26  Jim Wilson  <jimw@sifive.com>
1052
1053         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1054         (riscv_linux_sigframe_init): Declare.
1055         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1056         (riscv_linux_sigframe): New.
1057         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1058         (riscv_linux_sigframe_init): Define.
1059         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1060
1061         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1062         (riscv_isa_flen): Likewise.  Drop static.
1063         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1064         (riscv_isa_flen): Likewise.  Declare.
1065
1066 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1067             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1068
1069         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1070         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1071         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1072         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1073         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1074         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1075         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1076         Define.
1077         (struct ppc_linux_features) <htm>: New field.
1078         (ppc_linux_no_features): Add initializer for htm field.
1079         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1080         new tdescs.
1081         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1082         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1083         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1084         Define if not already defined.
1085         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1086         and rs6000/powerpc-isa207-htm-vsx64l.
1087         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1088         rs6000/powerpc-isa207-htm-vsx64l.xml.
1089         * features/rs6000/power-htm-spr.xml: New file.
1090         * features/rs6000/power-htm-core.xml: New file.
1091         * features/rs6000/power64-htm-core.xml: New file.
1092         * features/rs6000/power-htm-fpu.xml: New file.
1093         * features/rs6000/power-htm-altivec.xml: New file.
1094         * features/rs6000/power-htm-vsx.xml: New file.
1095         * features/rs6000/power-htm-ppr.xml: New file.
1096         * features/rs6000/power-htm-dscr.xml: New file.
1097         * features/rs6000/power-htm-tar.xml: New file.
1098         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1099         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1100         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1101         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1102         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1103         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1104         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1105         fetch_regset with HTM regsets.
1106         (store_register, store_ppc_registers): Call store_regset with HTM
1107         regsets.
1108         (ppc_linux_nat_target::read_description): Set htm field in the
1109         features struct if needed.
1110         * ppc-linux-tdep.c: Include
1111         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1112         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1113         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1114         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1115         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1116         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1117         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1118         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1119         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1120         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1121         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1122         (ppc32_linux_ctarregset): New globals.
1123         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1124         (ppc_linux_collect_core_cpgrregset): New function.
1125         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1126         regsets.
1127         (ppc_linux_core_read_description): Check if the tm spr section is
1128         present and set htm in the features struct.
1129         (_initialize_ppc_linux_tdep): Call
1130         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1131         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1132         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1133         Declare.
1134         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1135         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1136         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1137         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1138         New fields.
1139         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1140         Likewise.
1141         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1142         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1143         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1144         New enum fields.
1145         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1146         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1147         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1148         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1149         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1150         <PPC_CTAR_REGNUM>: Likewise.
1151         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1152         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1153         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1154         (IS_CEFP_PSEUDOREG): Define.
1155         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1156         registers.  Return names for the checkpointed DFP, VSX, and EFP
1157         pseudo registers.
1158         (rs6000_pseudo_register_type): Remove initial assert and raise an
1159         internal error in the else clause instead.  Return types for the
1160         checkpointed DFP, VSX, and EFP pseudo registers.
1161         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1162         checkpointed DFP pseudo registers.
1163         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1164         checkpointed VSX pseudo registers.
1165         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1166         from efpr_pseudo_register_read and
1167         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1168         registers.
1169         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1170         Handle checkpointed DFP, VSX, and EFP registers.
1171         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1172         (efp_ax_pseudo_register_collect): New functions.
1173         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1174         register logic to new functions.  Handle checkpointed DFP, VSX,
1175         and EFP pseudo registers.
1176         (rs6000_gdbarch_init): Look for and validate the htm features.
1177         Include checkpointed DFP, VSX and EFP pseudo-registers.
1178         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1179         HTM registers.
1180
1181 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1182
1183         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1184         without altivec or fpu.
1185
1186 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1187             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1188
1189         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1190         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1191         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1192         Define if not already defined.
1193         * features/rs6000/power-ebb.xml: New file.
1194         * features/rs6000/power-linux-pmu.xml: New file.
1195         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1196         features.
1197         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1198         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1199         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1200         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1201         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1202         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1203         fetch_regset with ebb and pmu regsets.
1204         (store_register, store_ppc_registers): Call store_regset with ebb
1205         and pmu regsets.
1206         (ppc_linux_nat_target::read_description): Set isa207 field in the
1207         features struct if ebb and pmu are avaiable.
1208         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1209         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1210         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1211         and pmu regsets.
1212         (ppc_linux_core_read_description): Check if the pmu section is
1213         present and set isa207 in the features struct.
1214         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1215         (ppc32_linux_pmuregset): Declare.
1216         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1217         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1218         <ppc_sier_regnum>: New field.
1219         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1220         New enum values.
1221         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1222         values.
1223         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1224         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1225         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1226         ebb and pmu features.
1227
1228 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1229             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1230
1231         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1232         (tdesc_powerpc_isa207_vsx64l): Declare.
1233         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1234         (struct ppc_linux_features) <isa207>: New field.
1235         (ppc_linux_no_features): Add initializer for isa207 field.
1236         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1237         new tdescs.
1238         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1239         (NT_PPC_TAR): Define if not already defined.
1240         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1241         rs6000/powerpc-isa207-vsx64l.
1242         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1243         rs6000/powerpc-isa207-vsx64l.xml.
1244         * features/rs6000/power-tar.xml: New file.
1245         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1246         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1247         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1248         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1249         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1250         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1251         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1252         fetch_regset with the TAR regset.
1253         (store_register, store_ppc_registers): Call store_regset with the
1254         TAR regset.
1255         (ppc_linux_nat_target::read_description): Set isa207 field in the
1256         features struct if needed.
1257         * ppc-linux-tdep.c: Include
1258         features/rs6000/powerpc-isa207-vsx32l.c and
1259         features/rs6000/powerpc-isa207-vsx64l.c.
1260         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1261         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1262         regset.
1263         (ppc_linux_core_read_description): Check if the tar section is
1264         present and set isa207 in the features struct.
1265         (_initialize_ppc_linux_tdep): Call
1266         initialize_tdesc_powerpc_isa207_vsx32l and
1267         initialize_tdesc_powerpc_isa207_vsx64l.
1268         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1269         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1270         (enum) <PPC_TAR_REGNUM>: New enum value.
1271         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1272         feature.
1273         (ppc_process_record_op31): Record changes to TAR.
1274
1275 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1276             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1277
1278         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1279         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1280         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1281         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1282         (struct ppc_linux_features) <ppr_dscr>: New field.
1283         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1284         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1285         new tdescs.
1286         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1287         Define if not already defined.
1288         * features/Makefile (WHICH): Add
1289         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1290         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1291         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1292         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1293         * features/rs6000/power-dscr.xml: New file.
1294         * features/rs6000/power-ppr.xml: New file.
1295         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1296         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1297         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1298         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1299         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1300         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1301         * ppc-linux-nat.c: Include <sys/uio.h>.
1302         (fetch_regset, store_regset, check_regset): New functions.
1303         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1304         DSCR and PPR regsets.
1305         (store_register, store_ppc_registers): Call store_regset with
1306         DSCR and PPR regsets.
1307         (ppc_linux_get_hwcap2): New function.
1308         (ppc_linux_nat_target::read_description): Call
1309         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1310         features struct if needed.
1311         * ppc-linux-tdep.c: Include
1312         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1313         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1314         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1315         (ppc32_linux_dscrregset): New globals.
1316         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1317         and dscr regsets.
1318         (ppc_linux_core_read_description): Check if the ppr and dscr
1319         sections are present and set ppr_dscr in the features struct.
1320         (_initialize_ppc_linux_tdep): Call
1321         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1322         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1323         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1324         (ppc32_linux_dscrregset): Declare.
1325         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1326         <ppc_dscr_regnum>: New field.
1327         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1328         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1329         and dscr features.
1330         (ppc_process_record_op31): Record changes to PPR and DSCR.
1331
1332 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1333
1334         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1335         second initializer line for the have_* variables.  Initialize
1336         have_fpu to 0 instead of 1.
1337
1338 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1339
1340         * arch/ppc-linux-common.c (ppc_linux_match_description):
1341         Parenthesize tdesc assignements and indent them properly.
1342
1343 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1344
1345         * ppc-linux-nat.c (fetch_register): Change if statement to else
1346         if.
1347         (store_register): Likewise.
1348
1349 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1350
1351         * rs6000-tdep.c: Remove reggroups.h include.
1352         (rs6000_pseudo_register_reggroup_p): Remove.
1353         (rs6000_gdbarch_init): Remove call to
1354         set_tdesc_pseudo_register_reggroup_p.
1355
1356 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1357
1358         * reggroups.c (default_register_reggroup_p): Return true for
1359         decfloat registers and float_reggroup.
1360
1361 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1362
1363         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1364         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1365         ppc_linux_collect_vrregset by regcache_collect_regset.
1366
1367 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1368
1369         * linux-tdep.c (linux_collect_regset_section_cb): Use
1370         std::vector<gdb_byte> instead of char * and malloc for buf.
1371         Remove xfree.
1372
1373 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1374
1375         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1376         symtab_start instead of always using language_unknown.
1377
1378 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1379
1380         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1381         READ_P parameter, catch and ignore register access errors from
1382         either the old or new MISA location.
1383         (riscv_has_feature): Update call to riscv_read_misa_reg.
1384
1385 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1386
1387         * python/py-function.c (convert_values_to_python): Return
1388         gdbpy_ref<>.  Add header comment.
1389         (fnpy_call): Adjust.
1390
1391 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1392
1393         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1394         (cmdpy_completer_handle_brkchars): Adjust.
1395         (cmdpy_completer): Adjust.
1396
1397 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1398
1399         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1400         Pass correct regnum to raw_supply_zeroed.
1401
1402 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1403
1404         * regcache.c (cooked_read_test): Add CSKY to the list of
1405         architectures with a save_reggroup
1406
1407 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1408
1409         PR gdb/23368
1410         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1411         transfer terminal state from old new new inferior.
1412         * terminal.h (swap_terminal_info): New function.
1413         * inflow.c (swap_terminal_info): New function.
1414
1415 2018-10-23  Tom Tromey  <tom@tromey.com>
1416
1417         * record-btrace.c (get_thread_current_frame_id): Rename from
1418         get_thread_current_frame.  Return a frame_id.
1419         (record_btrace_start_replaying): Update.
1420
1421 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1422
1423         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1424         for CSRs.
1425
1426 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1427
1428         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1429         have_nonsteppable_watchpoint attribute to 1.
1430
1431 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1432
1433         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1434         register names.
1435         (struct register_alias): Rename to...
1436         (struct riscv_register_alias): ...this, and update comment.
1437         (riscv_register_aliases): Update type, and alias names.  Remove
1438         CSR names from this list.
1439         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1440         register names.  Add an extra assertion.
1441         (riscv_is_regnum_a_named_csr): New function.
1442         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1443
1444 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1445
1446         * configure.tgt: Add configuration for s12z.
1447         * s12z-tdep.c:  New file.
1448         * NEWS: Mention new target.
1449
1450 2018-10-22  Jim Wilson  <jimw@sifive.com>
1451
1452         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1453         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1454
1455         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1456         (riscv_register_type): Use them.
1457         (riscv_print_one_register_info): Handle union of floats same as float.
1458         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1459         riscv_fpreg_q_type fields.
1460
1461 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1462
1463         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1464         * gdbarch.h: Re-generate.
1465         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1466         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1467         * eval.c (evaluate_subexp_standard): Likewise.
1468         * findvar.c (value_of_register): Likewise.
1469         (value_of_register_lazy): Likewise.
1470         (address_from_register): Likewise.
1471         * frame.c (get_frame_register_bytes): Likewise.
1472         * gdbarch-selftests.c (register_to_value_test): Likewise.
1473         * h8300-tdep.c (h8300_register_type): Likewise.
1474         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1475         (i386_svr4_reg_to_regnum): Likewise.
1476         * infcmd.c (default_print_registers_info): Likewise.
1477         (registers_info): Likewise.
1478         (print_vector_info): Likewise.
1479         (default_print_float_info): Likewise.
1480         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1481         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1482         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1483         (mi_cmd_data_list_changed_registers): Likewise.
1484         (mi_cmd_data_list_register_values): Likewise.
1485         (mi_cmd_data_write_register_values): Likewise.
1486         (mi_cmd_trace_frame_collected): Likewise.
1487         * mips-tdep.c (print_gp_register_row): Likewise.
1488         (mips_print_registers_info): Likewise.
1489         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1490         * regcache.c (init_regcache_descr): Likewise.
1491         (register_size): Likewise.
1492         (register_dump::dump): Likewise.
1493         (cooked_read_test): Likewise.
1494         (cooked_write_test): Likewise.
1495         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1496         (rs6000_gdbarch_init): Likewise.
1497         * stabsread.c (stab_reg_to_regnum): Likewise.
1498         * stack.c (info_frame_command): Likewise.
1499         * target-descriptions.c (tdesc_register_name): Likewise.
1500         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1501         * tui/tui-regs.c (tui_show_register_group): Likewise.
1502         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1503         (user_reg_map_regnum_to_name): Likewise.
1504         (value_of_user_reg): Likewise.
1505         (maintenance_print_user_registers): Likewise.
1506         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1507         (xtensa_register_name): Likewise.
1508         (xtensa_register_type): Likewise.
1509         (xtensa_reg_to_regnum): Likewise.
1510         (xtensa_pseudo_register_read): Likewise.
1511         (xtensa_pseudo_register_write): Likewise.
1512
1513 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1514
1515         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1516         correctly-sized buffer with raw_read.
1517         (amd64_pseudo_register_write): Use correctly-sized buffer for
1518         raw_read/raw_write.
1519
1520 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1521
1522         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1523         in add_prefix_cmd of set print type.
1524
1525 2018-10-19  Tom Tromey  <tom@tromey.com>
1526
1527         PR tui/18388:
1528         * NEWS: Mention tabset deprecation.
1529         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1530         (update_tab_width): New function.
1531         (tui_set_tab_width, tui_show_tab_width): New functions.
1532         (tui_set_tab_width_command): Use update_tab_width.
1533         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1534         Add new "set tui tab-width" command.
1535         * tui/tui-source.c (tui_set_source_content): Update.
1536         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1537         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1538         Don't declare.
1539         (tui_tab_width): Declare.
1540         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1541         (tui_set_default_tab_len): Remove.
1542
1543 2018-10-19  Tom Tromey  <tom@tromey.com>
1544
1545         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1546         (key_is_backspace, tui_getc): Don't declare.
1547         * tui/tui-io.c (key_is_start_sequence): Now static.
1548         (key_is_end_sequence, key_is_backspace): Remove.
1549         (tui_getc): Now static.
1550
1551 2018-10-19  Tom Tromey  <tom@tromey.com>
1552
1553         * symfile.c (reread_symbols): Clear "static_links".
1554
1555 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1556
1557         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1558         define.
1559         (aarch64_linux_sigframe_init): Extra boundary checks.
1560
1561 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1562
1563         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1564         the possibly non-existent tdesc type 'vec128', but the type of raw
1565         register v16 instead.
1566
1567 2018-10-19  Gary Benson <gbenson@redhat.com>
1568
1569         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1570
1571 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1572
1573         PR cli/23785
1574         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1575         NULL.
1576
1577 2018-10-17  Paul Koning  <paul_koning@dell.com>
1578
1579         * charset.c (convert_between_encodings): Fix unsigned overflow.
1580
1581 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1582
1583         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1584         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1585         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1586         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1587         New functions.
1588         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1589         and fbsd_info_proc_mappings_header.
1590         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1591         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1592         New.
1593
1594 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1595
1596         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1597         Solaris Maintainer.
1598
1599 2018-10-15  Tom Tromey  <tom@tromey.com>
1600
1601         * tui/tui.c (strcat_to_buf): Remove casts.
1602         * tui/tui-winsource.c (tui_show_source_line)
1603         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1604         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1605         * tui/tui-windata.c (tui_first_data_item_displayed)
1606         (tui_delete_data_content_windows, tui_erase_data_content)
1607         (tui_display_all_data, tui_display_data_from)
1608         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1609         * tui/tui-win.c (tui_set_win_height)
1610         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1611         casts.
1612         * tui/tui-win.c (tui_resize_all): Remove casts.
1613         (tui_scroll_backward_command, tui_set_focus)
1614         (tui_set_tab_width_command): Likewise.
1615         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1616         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1617         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1618         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1619         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1620         Remove casts.
1621
1622 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1623
1624         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1625         AArch64/ARM maintainer.
1626
1627 2018-10-11  Gary Benson <gbenson@redhat.com>
1628
1629         * interps.h (interp::m_name): Make private and mutable.
1630         * interps.c (interp::~interp): Free m_name.
1631
1632 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1633             Simon Marchi <simark@simark.ca>
1634
1635         * README (`configure' options): Add documentation for new
1636         "--enable-unit-tests" option.
1637         * acinclude.m4: Include "selftest.m4".
1638         * configure: Regenerate.
1639         * configure.ac: Use "GDB_AC_SELFTEST".
1640         * maint.c (maintenance_selftest): Update message informing
1641         that selftests have been disabled.
1642         (maintenance_info_selftests): Likewise.
1643         * selftest.m4: New file.
1644
1645 2018-10-10  Gary Benson <gbenson@redhat.com>
1646
1647         * remote.c (remote_target::remote_send_printf): Add
1648         missing va_end found by Coverity.
1649
1650 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1651
1652         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1653
1654 2018-10-09  Tom Tromey  <tom@tromey.com>
1655
1656         * configure: Rebuild.
1657         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1658         * NEWS: Update --enable-ubsan documentation.
1659
1660 2018-10-09  Gary Benson <gbenson@redhat.com>
1661
1662         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1663         found by Coverity.
1664
1665 2018-10-08  Tom Tromey  <tom@tromey.com>
1666
1667         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1668         variable.
1669         (riscv_fbsd_init_abi): Likewise.
1670
1671 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1672         * valops.c (value_struct_elt_for_reference): Rename local variable
1673         to work around the shadowing a previous local warning.
1674
1675 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1676
1677         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1678         * NEWS: Mention new FreeBSD/riscv native configuration.
1679         * configure.host: Add riscv*-*-freebsd*.
1680         * configure.nat: Likewise.
1681         * riscv-fbsd-nat.c: New file.
1682
1683 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1684
1685         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1686         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1687         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1688         * NEWS: Mention new FreeBSD/riscv target.
1689         * configure.tgt: Add riscv*-*-freebsd*.
1690         * riscv-fbsd-tdep.c: New file.
1691         * riscv-fbsd-tdep.h: New file.
1692
1693 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1694
1695         * regcache.h (struct regcache_map_entry): Note that this type can
1696         be used with traditional frame caches.
1697         * trad-frame.c (trad_frame_set_reg_regmap): New.
1698         * trad-frame.h (trad_frame_set_reg_regmap): New.
1699
1700 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1701
1702         PR c++/16841
1703         * valops.c (get_virtual_base_offset): New function.
1704         (value_struct_elt_for_reference): Use it to get virtual base offset
1705         and add it in calculating class member address.
1706
1707 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1708
1709         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1710         (check_producer): Check if the producer is codewarrior.
1711         (producer_is_codewarrior): New function.
1712         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1713         produced by codewarrior.
1714         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1715
1716 2018-10-06  Tom Tromey  <tom@tromey.com>
1717
1718         PR python/19399:
1719         * python/py-inferior.c: Add "architecture" entry.
1720         (infpy_architecture): New function.
1721
1722 2018-10-06  Tom Tromey  <tom@tromey.com>
1723
1724         PR python/21765:
1725         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1726         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1727         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1728         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1729
1730 2018-10-06  Tom Tromey  <tom@tromey.com>
1731
1732         PR build/17077:
1733         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1734         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1735         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1736         #include.
1737
1738 2018-10-06  Tom Tromey  <tom@tromey.com>
1739
1740         * python/py-breakpoint.c (bppy_get_location): Handle a
1741         bp_breakpoint without a location.
1742
1743 2018-10-06  Tom Tromey  <tom@tromey.com>
1744
1745         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1746         (_RegEx): Reformat help text.
1747         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1748         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1749         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1750         text.
1751         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1752         (EnableXMethod, DisableXMethod): Remove help indentation.
1753         Capitalize meta-syntactic variables.
1754         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1755         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1756         Capitalize meta-syntactic variables.
1757         * python/lib/gdb/command/explore.py (ExploreCommand)
1758         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1759         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1760         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1761         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1762         Remove help indentation.
1763         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1764         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1765         (DisableFrameFilter, SetFrameFilterPriority)
1766         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1767
1768 2018-10-06  Tom Tromey  <tom@tromey.com>
1769
1770         PR tui/28819:
1771         * tui/tui-io.c (gdb_wgetch): New function.
1772         (tui_mld_getc, tui_getc): Use it.
1773
1774 2018-10-05  Tom Tromey  <tom@tromey.com>
1775
1776         * sol-thread.c (sol_thread_target::wait): Rename inner
1777         "save_ptid".
1778
1779 2018-10-04  Tom Tromey  <tom@tromey.com>
1780
1781         * configure: Rebuild.
1782         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1783
1784 2018-10-04  Tom Tromey  <tom@tromey.com>
1785
1786         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1787         declaration of "block".
1788
1789 2018-10-04  Tom Tromey  <tom@tromey.com>
1790
1791         * common/filestuff.c (fdwalk): Remove inner declaration of
1792         "result".
1793
1794 2018-10-04  Tom Tromey  <tom@tromey.com>
1795
1796         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1797         "structs_addr" and hoist declaration.
1798
1799 2018-10-04  Tom Tromey  <tom@tromey.com>
1800
1801         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1802         variable "size".
1803
1804 2018-10-04  Tom Tromey  <tom@tromey.com>
1805
1806         * mdebugread.c (parse_partial_symbols): Use std::string.
1807
1808 2018-10-04  Tom Tromey  <tom@tromey.com>
1809
1810         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1811         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1812         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1813         header.
1814         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1815         more inner scope.
1816         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1817         * varobj.c (varobj_update): Rename inner "newobj",
1818         "type_changed".
1819         * valprint.c (generic_emit_char): Rename inner "buf".
1820         * valops.c (find_overload_match): Rename inner "temp".
1821         (value_struct_elt_for_reference): Declare "v" in more inner
1822         scope.
1823         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1824         * unittests/array-view-selftests.c (run_tests): Rename inner
1825         "vec".
1826         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1827         header.
1828         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1829         "tsv" in more inner scope.
1830         (print_one_static_tracepoint_marker): Rename inner
1831         "tuple_emitter".
1832         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1833         (tic6x_push_dummy_call): Don't redeclare "addr".
1834         * target-float.c: Declare "dto" lower.
1835         * symtab.c (lookup_local_symbol): Rename inner "sym".
1836         (find_pc_sect_line): Rename inner "pc".
1837         * stack.c (print_frame): Don't redeclare "gdbarch".
1838         (return_command): Rename inner "gdbarch".
1839         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1840         "sp".
1841         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1842         header.
1843         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1844         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1845         scope.
1846         * remote.c (remote_target::update_thread_list): Don't redeclare
1847         "tp".
1848         (remote_target::process_initial_stop_replies): Rename inner
1849         "thread".
1850         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1851         (remote_target::wait_as): Don't redeclare "stop_reply".
1852         (remote_target::get_thread_local_address): Rename inner
1853         "result".
1854         (remote_target::get_tib_address): Likewise.
1855
1856         * regcache.c (cooked_read_test): Rename "regnum".
1857         * record-btrace.c (cmd_record_btrace_start): Rename inner
1858         "exception".
1859         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1860         loop header.
1861         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1862         header.
1863         (ppu2spu_sniffer): Rename inner "buf".
1864         * parse.c (operator_check_standard): Rename inner "type",
1865         "objfile".
1866         * p-valprint.c (pascal_val_print): Introduce new scope for
1867         "low_bound", "high_bound".
1868         * p-exp.y (yylex): Declare "i" in loop header.
1869         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1870         Lower declaration of "s".
1871         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1872         header.
1873         (nios2_push_dummy_call): Rename "len".
1874         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1875         "buf".
1876         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1877         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1878         (linux_xfer_osdata_modules): Likewise.
1879         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1880         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1881         (mips_o64_push_dummy_call): Likewise.
1882         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1883         "op".
1884         * mi/mi-main.c (list_available_thread_groups): Rename inner
1885         "tuple_emitter".
1886         (mi_cmd_data_read_memory): Rename inner "opts".
1887         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1888         "tuple_emitter".
1889         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1890         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1891         more inner scope.
1892         (parse_partial_symbols): Rename inner "pst", "p", "name"
1893         * main.c (captured_main_1): Rename inner "i"s.
1894         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1895         "oso2".
1896         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1897         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1898         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1899         (handle_signal_stop): Rename inner "gdbarch".
1900         (handle_command): Declare "signum" in loop header.
1901         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1902         "status".
1903         (examine_prologue): Rename inner "sol" and "sof".
1904         (ia64_extract_return_value): Rename inner "val".  Declare another
1905         "val" in a more inner scope.
1906         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1907         inner scope.
1908         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1909         "except".
1910         * findvar.c (default_read_var_value): Don't redeclare "addr".
1911         * f-exp.y (yylex): Declare "i" in loop header.
1912         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1913         Rename inner "type", "expect_type".
1914         (evaluate_subexp_for_sizeof): Rename inner "pc".
1915         * elfread.c (elf_symfile_read): Rename inner "abfd".
1916         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1917         "bytes_read".
1918         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1919         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1920         (dwarf_decode_line_header): Rename inner "lh".
1921         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1922         "offset".  Declare "i" in loop header.
1923         (disassemble_dwarf_expression): Rename inner "addr_size".
1924         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1925         inner "result".
1926         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1927         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1928         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1929         "inner_list_emitter".
1930         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1931         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1932         declaration in a block.
1933         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1934         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1935         "obstack_final_size".
1936         * cp-support.c (inspect_type): Declare "i" in loop header.
1937         * compile/compile.c (compile_instance::insert_symbol_error):
1938         Rename inner "e".
1939         * common/agent.c (agent_run_command): Remove inner "ret"
1940         declaration.
1941         * coffread.c (coff_symfile_read): Rename inner "name".
1942         (coff_symfile_read): Rename inner "abfd".
1943         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1944         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1945         "high".
1946         * c-exp.y (lex_one_token): Move "len" declaration lower.
1947         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1948         "gdbarch".
1949         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1950         "b".
1951         (watch_command_1): Declare "mark" later.
1952         (clear_command): Don't shadow "a" or "b".
1953         (delete_command): Rename inner "b".
1954         (delete_trace_command): Likewise.
1955         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1956         "op".
1957         (arm_gdbarch_init): Remove inner "e_flags".
1958         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1959         "offset" in inner blocks.
1960
1961 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1962
1963         * dwarf-index-write.c (file_write): Don't write if the vector is
1964         empty.
1965
1966 2018-10-05  Tom de Vries  <tdevries@suse.de>
1967
1968         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1969         PyArg_ParseTuple call.
1970
1971 2018-10-05  Tom de Vries  <tdevries@suse.de>
1972
1973         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1974         PyArg_ParseTuple call.
1975
1976 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1977
1978         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1979         to avoid exceeding 80 characters per line limit.
1980
1981 2018-10-04  Tom Tromey  <tom@tromey.com>
1982
1983         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1984         (reread_symbols): Update.
1985         * complaints.h (clear_complaints): Remove argument.
1986         * complaints.c (enum complaint_series): Remove.
1987         (series): Remove global.
1988         (complaint_internal): Update.
1989         (clear_complaints): Remove argument.
1990
1991 2018-10-04  Tom Tromey  <tom@tromey.com>
1992
1993         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1994         debugging symbols" message if there is a separate debug objfile.
1995
1996 2018-10-04  Tom Tromey  <tom@tromey.com>
1997
1998         PR cli/19551:
1999         * symfile.c (symbol_file_add_with_addrs): Update output.
2000         * psymtab.c (require_partial_symbols): Update output.
2001
2002 2018-10-04  Tom Tromey  <tom@tromey.com>
2003
2004         PR cli/22234:
2005         * complaints.c: Emit \n.
2006
2007 2018-10-04  Tom Tromey  <tom@tromey.com>
2008
2009         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2010         (separate_debug_file_exists, find_separate_debug_file)
2011         (add_symbol_file_command, reread_symbols, allocate_symtab)
2012         (allocate_compunit_symtab): Use filtered printing, not
2013         unfiltered.
2014         * psymtab.c (require_partial_symbols, dump_psymtab)
2015         (allocate_psymtab): Use filtered printing, not unfiltered.
2016
2017 2018-10-04  Tom Tromey  <tom@tromey.com>
2018
2019         * complaints.c (complaint_internal): Correctly check complaint
2020         count.
2021
2022 2018-10-04  Tom Tromey  <tom@tromey.com>
2023
2024         * complaints.h (struct complaints): Remove declaration.
2025         * complaints.c (clear_complaints): Remove an unused variable.
2026
2027 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2028
2029         * MAINTAINERS (Write After Approval): Add self.
2030
2031 2018-10-03  Tom Tromey  <tom@tromey.com>
2032
2033         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2034         "buffer_contents".
2035         * coffread.c (coff_symtab_read): Initialize "newobj".
2036
2037 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2038
2039         * dwarf2read.c (read_func_scope): Remove struct keyword in
2040         range-based for.
2041
2042 2018-10-03  Tom Tromey  <tom@tromey.com>
2043
2044         * README: Mention --enable-ubsan.
2045         * NEWS: Mention --enable-ubsan.
2046         * acinclude.m4: Include sanitize.m4.
2047         * configure: Rebuild.
2048         * configure.ac: Call AM_GDB_UBSAN.
2049         * sanitize.m4: New file.
2050
2051 2018-10-03  Tom Tromey  <tom@tromey.com>
2052
2053         * expression.h (enum exp_opcode): Use uint8_t as base type.
2054         * expprint.c (op_name): Handle invalid opcodes.
2055
2056 2018-10-03  Tom Tromey  <tom@tromey.com>
2057
2058         * parse.c (prefixify_expression): Add assert.
2059         (parse_exp_in_context_1): Throw exception if the expression is
2060         empty.
2061
2062 2018-10-03  Tom Tromey  <tom@tromey.com>
2063
2064         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2065
2066 2018-10-03  Tom Tromey  <tom@tromey.com>
2067
2068         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2069
2070 2018-10-03  Tom Tromey  <tom@tromey.com>
2071
2072         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2073         unsigned.
2074
2075 2018-10-03  Tom Tromey  <tom@tromey.com>
2076
2077         * findvar.c (extract_integer): Do work in an unsigned type.
2078
2079 2018-10-03  Tom Tromey  <tom@tromey.com>
2080
2081         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2082         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2083         base type.
2084         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2085         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2086         type.
2087         * c-lang.h (enum c_string_type_values): Use unsigned as base
2088         type.
2089         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2090
2091 2018-10-03  Tom Tromey  <tom@tromey.com>
2092
2093         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2094         <~dwarf2_frame_state_reg_info>: Update.
2095         <dwarf2_frame_state_reg_info>: Update.
2096         <alloc_regs>: Add assertion.  Update.
2097         <reg>: Now a std::vector.
2098         <num_regs>: Remove.
2099         <swap>: Update.
2100         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2101         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2102
2103 2018-10-03  Tom Tromey  <tom@tromey.com>
2104
2105         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2106
2107 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2108
2109         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2110
2111 2018-10-02  Tom Tromey  <tom@tromey.com>
2112
2113         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2114
2115 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2116
2117         * NEWS: Mention changed commands.
2118         * ser-uds.c: New file.
2119         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2120         * configure: Regenerate.
2121         * Makefile.in: Add new file.
2122         * serial.c (serial_open): Check if filename is a socket
2123         and lookup the appropriate interface accordingly.
2124
2125 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2126
2127         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2128         define.
2129         (AARCH64_EXTRA_MAGIC): Likewise.
2130         (AARCH64_FPSIMD_MAGIC): Likewise.
2131         (AARCH64_SVE_MAGIC): Likewise.
2132         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2133         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2134         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2135         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2136         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2137         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2138         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2139         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2140         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2141         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2142         (read_aarch64_ctx): Add function.
2143         (aarch64_linux_sigframe_init): Detect FP registers.
2144
2145 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2146
2147         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2148         (AARCH64_D0_REGNUM): Likewise.
2149         (AARCH64_S0_REGNUM): Likewise.
2150         (AARCH64_H0_REGNUM): Likewise.
2151         (AARCH64_B0_REGNUM): Likewise.
2152         (AARCH64_SVE_V0_REGNUM): Likewise.
2153         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2154         (AARCH64_D0_REGNUM): Likewise.
2155         (AARCH64_S0_REGNUM): Likewise.
2156         (AARCH64_H0_REGNUM): Likewise.
2157         (AARCH64_B0_REGNUM): Likewise.
2158         (AARCH64_SVE_V0_REGNUM): Likewise.
2159
2160 2018-10-01  Gary Benson <gbenson@redhat.com>
2161
2162         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2163         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2164         prfpregset_t instead of gdb_prfpregset_t.
2165         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2166         * configure, config.in: Rebuild.
2167
2168 2018-10-01  Gary Benson <gbenson@redhat.com>
2169
2170         * common/gdb_proc_service.h: New file, factored out from...
2171         * gdb_proc_service.h: Moved common code to the above file.
2172         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2173
2174 2018-10-01  Gary Benson <gbenson@redhat.com>
2175
2176         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2177         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2178
2179 2018-10-01  Gary Benson <gbenson@redhat.com>
2180
2181         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2182         (AC_CHECK_HEADERS): Check for linux/elf.h.
2183         * configure, config.in: Rebuild.
2184         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2185         doesn't define elf_fpregset_t.
2186
2187 2018-10-01  Gary Benson <gbenson@redhat.com>
2188
2189         * gdb_proc_service.h: Whitespace change.
2190
2191 2018-10-01  Tom Tromey  <tom@tromey.com>
2192
2193         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2194         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2195         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2196
2197 2018-10-01  Tom Tromey  <tom@tromey.com>
2198
2199         * README: Minor change.
2200
2201 2018-09-30  Pedro Alves  <palves@redhat.com>
2202
2203         * darwin-nat-info.c (darwin_debug_regions_recurse)
2204         (info_mach_exceptions_command): Remove unused local variables.
2205         * darwin-nat.c (darwin_decode_notify_message)
2206         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2207         (darwin_stop_inferior, darwin_setup_exceptions)
2208         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2209         (darwin_nat_target::attach, darwin_nat_target::detach)
2210         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2211         local variables.
2212         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2213         variables.
2214
2215 2018-09-29  Tom Tromey  <tom@tromey.com>
2216
2217         * README: Remove some leftover text.
2218
2219 2018-09-29  Tom Tromey  <tom@tromey.com>
2220
2221         * PROBLEMS: Rewrite.
2222         * README: Update.
2223
2224 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2225
2226         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2227         case with explicit breakpoint kind.
2228         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2229         'additional_info' and related logic.
2230         (riscv_debug_breakpoints): New variable.
2231         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2232         instruction to determine the breakpoint kind.
2233         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2234         flag.  Update description of 'set/show riscv
2235         use-compressed-breakpoints' flag.
2236
2237 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2238
2239         (NEWS): Mention changes to frame related commands.
2240         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2241         (add_prefix_cmd_suppress_notification): New function.
2242         (add_com_suppress_notification): Call
2243         add_cmd_suppress_notification.
2244         * command.h (add_cmd_suppress_notification): Declare.
2245         (add_prefix_cmd_suppress_notification): Declare.
2246         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2247         (parse_frame_specification): Moved from stack.c, with
2248         simplification to handle a single argument.
2249         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2250         switch to the selected frame.  Add a header comment.
2251         * stack.c: Remove 'safe-ctype.h' include.
2252         (find_frame_for_function): Add declaration.
2253         (find_frame_for_address): New function.
2254         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2255         (frame_selection_by_function_completer): New function.
2256         (info_frame_command): Rename to...
2257         (info_frame_command_core): ...this, and update parameter types.
2258         (select_frame_command): Rename to...
2259         (select_frame_command_core): ...this, and update parameter types.
2260         (frame_command): Rename to...
2261         (frame_command_core): ...this, and update parameter types.
2262         (class frame_command_helper): New class to wrap implementations of
2263         frame related sub-commands.
2264         (frame_apply_cmd_list): New static global.
2265         (frame_cmd_list): Make static.
2266         (select_frame_cmd_list): New global for sub-commands.
2267         (info_frame_cmd_list): New global for sub-commands.
2268         (_initialize_stack): Register sub-commands for 'frame',
2269         'select-frame', and 'info frame'.  Update 'frame apply' commands
2270         to use frame_apply_cmd_list.  Move function local static
2271         frame_apply_list to file static frame_apply_cmd_list for
2272         consistency.
2273         * stack.h (select_frame_command): Delete declarationn.
2274         (select_frame_for_mi): Declare new function.
2275
2276 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2277
2278         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2279         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2280         and NOP.
2281
2282 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2283
2284         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2285
2286 2018-09-26  Tom Tromey  <tom@tromey.com>
2287
2288         * valops.c (auto_abandon): Remove dead code.
2289
2290 2018-09-26  Tom Tromey  <tom@tromey.com>
2291
2292         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2293
2294 2018-09-24  Tom Tromey  <tom@tromey.com>
2295
2296         * common/pathstuff.c (get_standard_cache_dir): Make
2297         "xdg_cache_home" and "home" const.
2298         * top.c (init_history): Make "tmpenv" const.
2299         * main.c (get_init_files): Make "homedir" const.
2300
2301 2018-09-23  Tom Tromey  <tom@tromey.com>
2302
2303         PR python/18852:
2304         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2305
2306 2018-09-23  Tom Tromey  <tom@tromey.com>
2307
2308         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2309         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2310         * python/python-internal.h (gdbpy_handle_exception): Declare.
2311         * python/py-utils.c (gdbpy_handle_exception): New function.
2312
2313 2018-09-23  Tom Tromey  <tom@tromey.com>
2314
2315         PR python/17284:
2316         * python/py-type.c (typy_template_argument): Check for negative
2317         argument number.
2318
2319 2018-09-23  Tom Tromey  <tom@tromey.com>
2320
2321         PR python/14062:
2322         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2323
2324 2018-09-23  Tom Tromey  <tom@tromey.com>
2325
2326         PR python/18170:
2327         * python/py-value.c (valpy_int): Allow conversion from pointer
2328         type.
2329
2330 2018-09-23  Tom Tromey  <tom@tromey.com>
2331
2332         PR python/20126:
2333         * python/py-value.c (valpy_int): Respect type sign.
2334
2335 2018-09-23  Tom Tromey  <tom@tromey.com>
2336
2337         PR python/18352;
2338         * python/py-value.c (valpy_float): Allow conversions from int or
2339         char.
2340         (valpy_int, valpy_long): Allow conversions from float.
2341
2342 2018-09-23  Tom Tromey  <tom@tromey.com>
2343
2344         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2345         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2346
2347 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2348
2349         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2350         __sighndlr.
2351         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2352
2353 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2354
2355         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2356         target_terminal::ours().
2357
2358 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2359
2360         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2361         of vl to ULONGEST.
2362
2363 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2364
2365         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2366         redundant condition.
2367
2368 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2369
2370         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2371
2372         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2373         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2374         * sol-thread.c (ps_pdmodel): Don't guard definition.
2375
2376         * procfs.c: Fix formatting.
2377
2378         * procfs.c (sysset_t_alloc): Remove.
2379         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2380         (procfs_debug_inferior): Likewise.
2381         (procfs_set_exec_trap): Likewise.
2382         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2383         (proc_set_traced_sysexit): Likewise.
2384
2385         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2386         (dead_procinfo): Likewise.
2387         (proc_warn): Likewise.
2388         (proc_error): Likewise.
2389         (proc_get_LDT_entry): Likewise.
2390         (do_attach): Likewise.
2391         (procfs_target::pid_to_str): Likewise.
2392         (iterate_over_mappings): Likewise.
2393
2394         * procfs.c (create_procinfo): Fix ARI warning.
2395         (proc_get_status): Likewise.
2396         (proc_stop_process): Likewise.
2397         (proc_run_process): Likewise.
2398         (proc_kill): Likewise.
2399         (proc_get_LDT_entry): Likewise.
2400         (procfs_find_LDT_entry): Likewise.
2401         (proc_update_threads): Likewise.
2402         (proc_iterate_over_threads): Likewise.
2403         (do_attach): Likewise.
2404         (procfs_xfer_memory): Likewise.
2405         (invalidate_cache): Likewise.
2406         (procfs_target::resume): Likewise.
2407         (procfs_init_inferior): Likewise.
2408         (procfs_set_exec_trap): Likewise.
2409         (procfs_target::thread_alive): Likewise.
2410         (procfs_target::pid_to_exec_file): Likewise.
2411         (iterate_over_mappings): Likewise.
2412         (procfs_target::make_corefile_notes): Likewise.
2413         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2414
2415         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2416         (procfs_find_LDT_entry): Likewise.
2417         * sol-thread.c (ps_lgetLDT): Likewise.
2418
2419 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2420
2421         PR tdep/17903
2422         * procfs.c (procfs_target): Declare pid_to_exec_file.
2423         (procfs_target::pid_to_exec_file): New.
2424
2425 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2426
2427         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2428         renaming.
2429         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2430         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2431
2432 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2433
2434         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2435         (supply_fpregset, fill_fpregset): Move ...
2436         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2437         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2438         Remove references to ioctl-based procfs.
2439         Include <sys/reg.h>.
2440         Remove PR_MODEL_NATIVE guards.
2441         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2442         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2443
2444 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2445
2446         PR gdb/20981:
2447         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2448         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2449         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2450
2451 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2452
2453         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2454         (fbsd_print_sockaddr_in6): Likewise.
2455
2456 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2457             Chris January  <chris.january@arm.com>
2458
2459         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2460         (evaluate_subexp_standard): Return a dummy type when
2461         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2462         OP_F77_UNDETERMINED_ARGLIST case.
2463         * expression.h (enum noside): Update comment.
2464
2465 2018-09-19  George Vasick <george.vasick@oracle.com>
2466
2467         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2468
2469 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2470             April Chin <april.chin@oracle.com>
2471             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2472
2473         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2474         uint_t lwpid_t.
2475         (create_procinfo): Print pids in /proc without leading zeros.
2476
2477 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2478
2479         * nios2-tdep.c (nios2_gcc_target_options): New.
2480         (nios2_gdb_arch_init): Install new hook.
2481
2482 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2483
2484         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2485         New file.
2486         * update-gnulib.sh: Apply patch.
2487         * configure: Re-generate.
2488
2489 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2490
2491         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2492         description.  Make "info proc" command descriptions more
2493         consistent.
2494
2495 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2496
2497         * NEWS: Mention 'info proc files' command.
2498
2499 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2500
2501         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2502         descriptors for IP_FILES and IP_ALL.
2503
2504 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2505
2506         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2507         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2508         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2509         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2510         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2511         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2512         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2513         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2514         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2515         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2516         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2517         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2518         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2519         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2520         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2521         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2522         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2523         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2524         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2525         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2526         (struct fbsd_sockaddr_un): New types.
2527         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2528         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2529         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2530         (fbsd_core_info_proc_files): New functions.
2531         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2532         IP_ALL.
2533         * fbsd-tdep.h (fbsd_info_proc_files_header)
2534         (fbsd_info_proc_files_entry): New.
2535
2536 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2537
2538         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2539         * infcmd.c (info_proc_cmd_files): New function.
2540         (_initialize_infcmd): Register 'info proc files' command.
2541
2542 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2543
2544         * gnulib/aclocal-m4-deps.mk: Re-generate.
2545         * gnulib/aclocal.m4: Re-generate.
2546         * gnulib/config.in: Re-generate.
2547         * gnulib/configure: Re-generate.
2548         * gnulib/import/Makefile.am: Re-generate.
2549         * gnulib/import/Makefile.in: Re-generate.
2550         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2551         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2552         * gnulib/import/arpa_inet.in.h: New file.
2553         * gnulib/import/inet_ntop.c: New file.
2554         * gnulib/import/m4/arpa_inet_h.m4: New file.
2555         * gnulib/import/m4/inet_ntop.m4: New file.
2556         * gnulib/import/m4/netinet_in_h.m4: New file.
2557         * gnulib/import/m4/socklen.m4: New file.
2558         * gnulib/import/m4/sockpfaf.m4: New file.
2559         * gnulib/import/m4/stdalign.m4: New file.
2560         * gnulib/import/m4/sys_uio_h.m4: New file.
2561         * gnulib/import/netinet_in.in.h: New file.
2562         * gnulib/import/stdalign.in.h: New file.
2563         * gnulib/import/sys_socket.c: New file.
2564         * gnulib/import/sys_socket.in.h: New file.
2565         * gnulib/import/sys_uio.in.h: New file.
2566         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2567         module.
2568
2569 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2570
2571         * gnulib/aclocal-m4-deps.mk: New file.
2572         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2573         deterministically.
2574
2575 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2576
2577         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2578         KVE_PATH.
2579
2580 2018-09-18  Tom Tromey  <tom@tromey.com>
2581
2582         * compile/compile-object-load.c (struct
2583         link_hash_table_cleanup_data): Add constructor and destructor.
2584         Use DISABLE_COPY_AND_ASSIGN.
2585         (~link_hash_table_cleanup_data): Rename from
2586         link_hash_table_free.  Now a destructor.
2587         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2588
2589 2018-09-18  Tom Tromey  <tom@tromey.com>
2590
2591         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2592         * compile/compile-object-load.c (struct munmap_list): Move to
2593         header file.
2594         (munmap_list::add): Rename from munmap_list_add; rewrite.
2595         (munmap_list::~munmap_list): Rename from munmap_list_free.
2596         (munmap_listp_free_cleanup): Remove.
2597         (compile_object_load): Update.
2598         * compile/compile-object-load.h (struct munmap_list): Move from
2599         compile-object-load.c.  Rewrite.
2600
2601 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2602
2603         * aarch64-tdep.c (pass_in_v): Use register size.
2604         (aarch64_extract_return_value): Likewise.
2605         (aarch64_store_return_value): Likewise.
2606
2607 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2608
2609         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2610         rlim_t.
2611
2612 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2613
2614         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2615         Fix short help line.
2616
2617 2018-09-17  Tom Tromey  <tom@tromey.com>
2618
2619         PR python/20445:
2620         * configure: Rebuild.
2621         * configure.ac: Conditionally use -DNDEBUG for Python.
2622
2623 2018-09-17  Tom Tromey  <tom@tromey.com>
2624
2625         * configure: Rebuild.
2626         * configure.ac: Use gmp as a library dependency when checking for
2627         mpfr.
2628
2629 2018-09-17  Pedro Alves  <palves@redhat.com>
2630
2631         * python/py-inferior.c (find_inferior_object): Delete.
2632
2633 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2634
2635         * compile/compile-cplus-types.c
2636         (compile_cplus_instance::enter_scope): Don't use new_scope after
2637         std::move.
2638
2639 2018-09-17  Tom Tromey  <tom@tromey.com>
2640
2641         * common/pathstuff.c (get_standard_cache_dir): Use
2642         ~/Library/Caches on macOS.
2643         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2644
2645 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2646
2647         PR python/23669
2648         * breakpoint.c (commands_cmd_element): New.
2649         (_initialize_breakpoint): Assign commands_cmd_element.
2650         * breakpoint.h (commands_cmd_element): New.
2651         * cli/cli-script.c (while_cmd_element, if_command,
2652         define_cmd_element): New.
2653         (command_name_equals): Remove.
2654         (process_next_line): Compare commands by pointer, not by name.
2655         (_initialize_cli_script): Assign the various cmd_list_element
2656         variables.
2657         * compile/compile.c (compile_cmd_element): New.
2658         (_initialize_compile): Assign compile_cmd_element.
2659         * compile/compile.h (compile_cmd_element): New.
2660         * guile/guile.c (guile_cmd_element): New.
2661         (install_gdb_commands): Assign guile_cmd_element.
2662         * guile/guile.h (guile_cmd_element): New.
2663         * python/python.c (python_cmd_element): New.
2664         (_initialize_python): Assign python_cmd_element.
2665         * python/python.h (python_cmd_element): New.
2666         * tracepoint.c (while_stepping_cmd_element): New.
2667         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2668         * tracepoint.h (while_stepping_cmd_element): New.
2669
2670 2018-09-17  Tom Tromey  <tom@tromey.com>
2671
2672         * infrun.c (save_infcall_suspend_state): Return
2673         infcall_suspend_state_up.
2674         (save_infcall_control_state): Return infcall_control_state_up.
2675         * inferior.h (save_infcall_suspend_state)
2676         (save_infcall_control_state): Declare later.  Return unique
2677         pointers.
2678
2679 2018-09-17  Tom Tromey  <tom@tromey.com>
2680
2681         * infrun.c (struct stop_context): Declare constructor,
2682         destructor, "changed" method.
2683         (stop_context::stop_context): Rename from save_stop_context.
2684         (stop_context::~stop_context): Rename from
2685         release_stop_context_cleanup.
2686         (normal_stop): Update.
2687         (stop_context::changed): Rename from stop_context_changed.  Return
2688         bool.
2689
2690 2018-09-17  Tom Tromey  <tom@tromey.com>
2691
2692         * inferior.h (struct infcall_suspend_state_deleter): New.
2693         (infcall_suspend_state_up): New typedef.
2694         (struct infcall_control_state_deleter): New.
2695         (infcall_control_state_up): New typedef.
2696         (make_cleanup_restore_infcall_suspend_state)
2697         (make_cleanup_restore_infcall_control_state): Don't declare.
2698         * infcall.c (call_function_by_hand_dummy): Update.
2699         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2700         (make_cleanup_restore_infcall_suspend_state): Remove.
2701         (do_restore_infcall_control_state_cleanup)
2702         (make_cleanup_restore_infcall_control_state): Remove.
2703
2704 2018-09-17  Tom Tromey  <tom@tromey.com>
2705
2706         * gdbthread.h (struct thread_control_state): Add initializer.
2707         (class thread_info) <control>: Remove initializer.
2708         * inferior.h (struct inferior_control_state): Add initializer.
2709         (class inferior) <control>: Remove initializer.
2710         (exit_inferior_1): Update.
2711         * infrun.c (struct infcall_control_state): Add constructors.
2712         (save_infcall_control_state): Use new.
2713         (restore_infcall_control_state, discard_infcall_control_state):
2714         Use delete.
2715
2716 2018-09-17  Tom Tromey  <tom@tromey.com>
2717
2718         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2719         unique_ptr.
2720         <siginfo_data>: Now a unique_xmalloc_ptr.
2721         (save_infcall_suspend_state, restore_infcall_suspend_state)
2722         (discard_infcall_suspend_state)
2723         (get_infcall_suspend_state_regcache): Update.
2724
2725 2018-09-17  Tom Tromey  <tom@tromey.com>
2726
2727         * gdbthread.h (struct thread_suspend_state): Add initializers.
2728         (class thread_info) <suspend>: Remove initializer.
2729         * infrun.c (struct infcall_suspend_state): Add initializers.
2730         (save_infcall_suspend_state): Use new.
2731         (discard_infcall_suspend_state): Use delete.
2732
2733 2018-09-16  Tom Tromey  <tom@tromey.com>
2734
2735         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2736         Remove.
2737         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2738         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2739         (py_varobj_iter_new): Likewise.
2740         (py_varobj_get_iterator): Use gdbpy_ref.
2741
2742 2018-09-16  Tom Tromey  <tom@tromey.com>
2743
2744         * python/py-threadevent.c (py_get_event_thread): Simplify.
2745         * python/py-inferior.c (infpy_thread_from_thread_handle):
2746         Return immediately after calling thread_to_thread_object.  Use
2747         Py_RETURN_NONE.
2748         (thread_to_thread_object): Set the exception on a NULL return.
2749
2750 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2751
2752         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2753
2754 2018-09-16  Tom Tromey  <tom@tromey.com>
2755
2756         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2757         Remove.
2758
2759 2018-09-16  Tom Tromey  <tom@tromey.com>
2760
2761         * python/python-internal.h (thread_to_thread_object): Change
2762         return type.
2763         * python/py-inferior.c (thread_to_thread_object): Return a new
2764         reference.
2765         (infpy_thread_from_thread_handle): Update.
2766         * python/py-infthread.c (gdbpy_selected_thread): Update.
2767         * python/py-stopevent.c (create_stop_event_object): Update.
2768         * python/py-threadevent.c (py_get_event_thread): Return a new
2769         reference.
2770         (py_get_event_thread): Update.
2771         * python/py-event.h (py_get_event_thread): Change return type.
2772         * python/py-continueevent.c (create_continue_event_object):
2773         Update.
2774
2775 2018-09-16  Tom Tromey  <tom@tromey.com>
2776
2777         * python/py-progspace.c (pspy_get_objfiles): Update.
2778         * python/python-internal.h (objfile_to_objfile_object): Change
2779         return type.
2780         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2781         Update.
2782         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2783         Update.
2784         * python/python.c (gdbpy_get_current_objfile): Update.
2785         (gdbpy_objfiles): Update.
2786         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2787         Update.
2788         (objfile_to_objfile_object): Return a new reference.
2789         * python/py-symtab.c (stpy_get_objfile): Update.
2790         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2791         Update.
2792
2793 2018-09-16  Tom Tromey  <tom@tromey.com>
2794
2795         * python/py-inferior.c (infpy_get_progspace): Update.
2796         * python/python-internal.h (pspace_to_pspace_object): Change
2797         return type.
2798         * python/py-newobjfileevent.c
2799         (create_clear_objfiles_event_object): Update.
2800         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2801         Update.
2802         * python/python.c (gdbpy_get_current_progspace): Update.
2803         (gdbpy_progspaces): Update.
2804         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2805         reference.
2806         * python/py-objfile.c (objfpy_get_progspace): Update.
2807         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2808         Update.
2809
2810 2018-09-16  Tom Tromey  <tom@tromey.com>
2811
2812         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2813         (solib_name, block_for_pc, find_pc_line): New functions.
2814         (execute_unwinders): Update.
2815         * python/py-block.c (gdbpy_block_for_pc): Remove.
2816         * python/py-inferior.c (infpy_get_progspace): New function.
2817         (inferior_object_getset) <progspace>: Add.
2818         * python/py-progspace.c (pspy_objfiles): Rewrite.
2819         (pspy_solib_name, pspy_block_for_pc)
2820         (pspy_find_pc_line, pspy_is_valid): New functions.
2821         (progspace_object_methods): Add entries for solib_name,
2822         block_for_pc, find_pc_line, is_valid.
2823         * python/python-internal.h (gdbpy_block_for_pc)
2824         (build_objfiles_list): Don't declare.
2825         * python/python.c: Don't include solib.h.
2826         (gdbpy_solib_name, gdbpy_find_pc_line)
2827         (gdbpy_get_current_progspace, build_objfiles_list)
2828         (gdbpy_objfiles): Remove.
2829         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2830         solib_name, find_pc_line>: Remove entries.
2831
2832 2018-09-16  Tom Tromey  <tom@tromey.com>
2833
2834         * top.c (new_ui_command): Use GNU style for metasyntactic
2835         variables.
2836         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2837         variables.
2838         * maint.c (maintenance_translate_address): Remove "<>" around
2839         text.
2840         * interps.c (interpreter_exec_cmd): Use GNU style for
2841         metasyntactic variables.
2842         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2843         metasyntactic variables.
2844         * tracepoint.c (tfind_range_command): Use GNU style for
2845         metasyntactic variables.
2846         (tfind_outside_command): Likewise.
2847         (_initialize_tracepoint): Likewise.
2848         * remote.c (extended_remote_target::create_inferior): Use GNU
2849         style for metasyntactic variables.
2850         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2851         metasyntactic variables.
2852         (adi_assign_command): Likewise.
2853
2854 2018-09-16  Tom Tromey  <tom@tromey.com>
2855
2856         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2857         metasyntactic variables.  Print message if no disassembler options
2858         are available.
2859
2860 2018-09-15  Tom Tromey  <tom@tromey.com>
2861
2862         * infcmd.c (get_inferior_args): Return const char *.
2863         * inferior.h (get_inferior_args): Return type now const.
2864         * linux-tdep.c (linux_fill_prpsinfo): Update.
2865         * procfs.c (procfs_target::make_corefile_notes): Update.
2866
2867 2018-09-07  Tom Tromey  <tom@tromey.com>
2868
2869         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2870         inside the TRY.
2871
2872 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2873
2874         * nios2-tdep.c (nios2_type_align): New.
2875         (nios2_gdb_arch_init): Install type_align hook.
2876
2877 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2878
2879         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2880         type that is neither object file owned, nor gdbarch owned.
2881         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2882         gdbarch is non-NULL.
2883         (alloc_type_instance): Allocate non-objfile owned types on the
2884         gdbarch obstack.
2885         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2886         using TYPE_ALLOC to ensure memory is allocated on the correct
2887         obstack.
2888         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2889         obstack, or the gdbarch obstack.
2890         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2891
2892 2018-09-14  Tom Tromey  <tom@tromey.com>
2893
2894         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2895         block.
2896
2897 2018-09-14  Tom Tromey  <tom@tromey.com>
2898
2899         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2900
2901 2018-09-13  Tom Tromey  <tom@tromey.com>
2902
2903         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2904         static.
2905
2906 2018-09-13  Tom Tromey  <tom@tromey.com>
2907
2908         * exec.c (try_open_exec_file): Use std::string.
2909
2910 2018-09-13  Tom Tromey  <tom@tromey.com>
2911
2912         * utils.h (gdb_bfd_errmsg): Return std::string.
2913         * exec.c (exec_file_attach): Update.
2914         * compile/compile-object-load.c (compile_object_load): Update.
2915         * utils.c (gdb_bfd_errmsg): Return std::string.
2916
2917 2018-09-13  Tom Tromey  <tom@tromey.com>
2918
2919         * procfs.c (struct procinfo_deleter): New.
2920         (procinfo_up): New typedef.
2921         (do_destroy_procinfo_cleanup): Remove.
2922         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2923
2924 2018-09-13  Tom Tromey  <tom@tromey.com>
2925
2926         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2927
2928 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2929 2018-09-13  Tom Tromey  <tom@tromey.com>
2930
2931         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2932         (pspy_get_objfiles): New function.
2933         (progspace_object_methods): New.
2934         (pspace_object_type): Add tp_methods callback.
2935         * python/python-internal.h (build_objfiles_list): New
2936         declaration.
2937         * python/python.c (build_objfiles_list): New function.
2938         (gdbpy_objfiles): Implement using build_objfiles_list.
2939         * NEWS: Mention the Progspace.objfiles method.
2940
2941 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2942
2943         * python/py-inferior.c (infpy_get_progspace): New function.
2944         (inferior_object_getset): Add progspace property.
2945         * NEWS: Mention the new property.
2946
2947 2018-09-13  Tom Tromey  <tom@tromey.com>
2948
2949         PR rust/23650:
2950         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2951
2952 2018-09-13  Tom Tromey  <tom@tromey.com>
2953
2954         PR rust/23626:
2955         * rust-lang.c (rust_enum_variant): Now static.
2956         (rust_empty_enum_p): New function.
2957         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2958         Handle empty enum.
2959
2960 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2961
2962         * python/py-inferior.c (infpy_repr): New.
2963         (inferior_object_type): Register infpy_repr.
2964         * python/py-objfile.c (objfpy_repr): New.
2965         (objfile_object_type): Register objfpy_repr.
2966
2967 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2968
2969         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2970
2971 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2972
2973         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2974         typo.
2975
2976 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2977
2978         * common/common-utils.c: Don't include '<sys/stat.h>'.
2979         (is_regular_file): Move to...
2980         * common/filestuff.c (is_regular_file): ... here.
2981         * common/common-utils.h (is_regular_file): Move to...
2982         * common/filestuff.h (is_regular_file): ... here.
2983
2984 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2985
2986         * skip.c (debug_skip): New variable.
2987         (skiplist_entry::do_skip_file_p): Add debug output.
2988         (skiplist_entry::do_skip_gfile_p): Likewise.
2989         (skiplist_entry::skip_function_p): Likewise.
2990         (_initialize_step_skip): Create debug command.
2991         * NEWS: Mention set/show debug skip.
2992
2993 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2994
2995         * darwin-nat.c (should_disable_startup_with_shell):
2996         New function.
2997         (darwin_nat_target::create_inferior): Add call.
2998
2999 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3000
3001         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3002         inf_port, msg_state>: Initialize.
3003         (struct darwin_thread_info) <signaled, single_step>: Change
3004         type and initialize.
3005         (struct darwin_thread_info) <event>: Initialize.
3006
3007 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3008
3009         PR gdb/23555
3010         PR gdb/23558
3011         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3012         guesses.
3013
3014 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3015
3016         Revert:
3017         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3018
3019         PR gdb/23555
3020         PR gdb/23558
3021         * gnulib/aclocal.m4: Regenerate.
3022         * gnulib/config.in: Regenerate.
3023         * gnulib/configure: Regenerate.
3024         * gnulib/import/Makefile.am: Update.
3025         * gnulib/import/Makefile.in: Update.
3026         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3027         * gnulib/import/_Noreturn.h: ... this.
3028         * gnulib/import/alloca.in.h: Update.
3029         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3030         * gnulib/import/arg-nonnull.h: ... this.
3031         * gnulib/import/assure.h: Update.
3032         * gnulib/import/at-func.c: Update.
3033         * gnulib/import/basename-lgpl.c: Update.
3034         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3035         * gnulib/import/c++defs.h: ... this.
3036         * gnulib/import/canonicalize-lgpl.c: Update.
3037         * gnulib/import/cdefs.h: Update.
3038         * gnulib/import/chdir-long.c: Update.
3039         * gnulib/import/chdir-long.h: Update.
3040         * gnulib/import/cloexec.c: Update.
3041         * gnulib/import/cloexec.h: Update.
3042         * gnulib/import/close.c: Update.
3043         * gnulib/import/closedir.c: Update.
3044         * gnulib/import/config.charset: Update.
3045         * gnulib/import/dirent-private.h: Update.
3046         * gnulib/import/dirent.in.h: Update.
3047         * gnulib/import/dirfd.c: Update.
3048         * gnulib/import/dirname-lgpl.c: Update.
3049         * gnulib/import/dirname.h: Update.
3050         * gnulib/import/dosname.h: Update.
3051         * gnulib/import/dup-safer-flag.c: Update.
3052         * gnulib/import/dup-safer.c: Update.
3053         * gnulib/import/dup.c: Update.
3054         * gnulib/import/dup2.c: Update.
3055         * gnulib/import/errno.in.h: Update.
3056         * gnulib/import/error.c: Update.
3057         * gnulib/import/error.h: Update.
3058         * gnulib/import/exitfail.c: Update.
3059         * gnulib/import/exitfail.h: Update.
3060         * gnulib/import/extra/update-copyright: Update.
3061         * gnulib/import/fchdir.c: Update.
3062         * gnulib/import/fcntl.c: Update.
3063         * gnulib/import/fcntl.in.h: Update.
3064         * gnulib/import/fd-hook.c: Update.
3065         * gnulib/import/fd-hook.h: Update.
3066         * gnulib/import/fd-safer-flag.c: Update.
3067         * gnulib/import/fd-safer.c: Update.
3068         * gnulib/import/fdopendir.c: Update.
3069         * gnulib/import/filename.h: Update.
3070         * gnulib/import/filenamecat-lgpl.c: Update.
3071         * gnulib/import/filenamecat.h: Update.
3072         * gnulib/import/flexmember.h: Update.
3073         * gnulib/import/float+.h: Update.
3074         * gnulib/import/float.c: Update.
3075         * gnulib/import/float.in.h: Update.
3076         * gnulib/import/fnmatch.c: Update.
3077         * gnulib/import/fnmatch.in.h: Update.
3078         * gnulib/import/fnmatch_loop.c: Update.
3079         * gnulib/import/fpucw.h: Update.
3080         * gnulib/import/frexp.c: Update.
3081         * gnulib/import/frexpl.c: Update.
3082         * gnulib/import/fstat.c: Update.
3083         * gnulib/import/fstatat.c: Update.
3084         * gnulib/import/getcwd-lgpl.c: Update.
3085         * gnulib/import/getcwd.c: Update.
3086         * gnulib/import/getdtablesize.c: Update.
3087         * gnulib/import/getlogin_r.c: Update.
3088         * gnulib/import/getprogname.c: Update.
3089         * gnulib/import/getprogname.h: Update.
3090         * gnulib/import/gettext.h: Update.
3091         * gnulib/import/gettimeofday.c: Update.
3092         * gnulib/import/glob-libc.h: Update.
3093         * gnulib/import/glob.c: Update.
3094         * gnulib/import/glob.in.h: Update.
3095         * gnulib/import/glob_internal.h: Update.
3096         * gnulib/import/glob_pattern_p.c: Update.
3097         * gnulib/import/globfree.c: Update.
3098         * gnulib/import/hard-locale.c: Update.
3099         * gnulib/import/hard-locale.h: Update.
3100         * gnulib/import/intprops.h: Update.
3101         * gnulib/import/inttypes.in.h: Update.
3102         * gnulib/import/isnan.c: Update.
3103         * gnulib/import/isnand-nolibm.h: Update.
3104         * gnulib/import/isnand.c: Update.
3105         * gnulib/import/isnanl-nolibm.h: Update.
3106         * gnulib/import/isnanl.c: Update.
3107         * gnulib/import/itold.c: Update.
3108         * gnulib/import/libc-config.h: Update.
3109         * gnulib/import/limits.in.h: Update.
3110         * gnulib/import/localcharset.c: Update.
3111         * gnulib/import/localcharset.h: Update.
3112         * gnulib/import/localtime-buffer.c: Update.
3113         * gnulib/import/localtime-buffer.h: Update.
3114         * gnulib/import/lstat.c: Update.
3115         * gnulib/import/m4/00gnulib.m4: Update.
3116         * gnulib/import/m4/__inline.m4: Update.
3117         * gnulib/import/m4/absolute-header.m4: Update.
3118         * gnulib/import/m4/alloca.m4: Update.
3119         * gnulib/import/m4/builtin-expect.m4: Update.
3120         * gnulib/import/m4/canonicalize.m4: Update.
3121         * gnulib/import/m4/chdir-long.m4: Update.
3122         * gnulib/import/m4/close.m4: Update.
3123         * gnulib/import/m4/closedir.m4: Update.
3124         * gnulib/import/m4/configmake.m4: Update.
3125         * gnulib/import/m4/d-ino.m4: Update.
3126         * gnulib/import/m4/d-type.m4: Update.
3127         * gnulib/import/m4/dirent_h.m4: Update.
3128         * gnulib/import/m4/dirfd.m4: Update.
3129         * gnulib/import/m4/dirname.m4: Update.
3130         * gnulib/import/m4/double-slash-root.m4: Update.
3131         * gnulib/import/m4/dup.m4: Update.
3132         * gnulib/import/m4/dup2.m4: Update.
3133         * gnulib/import/m4/eealloc.m4: Update.
3134         * gnulib/import/m4/environ.m4: Update.
3135         * gnulib/import/m4/errno_h.m4: Update.
3136         * gnulib/import/m4/error.m4: Update.
3137         * gnulib/import/m4/exponentd.m4: Update.
3138         * gnulib/import/m4/exponentl.m4: Update.
3139         * gnulib/import/m4/extensions.m4: Update.
3140         * gnulib/import/m4/extern-inline.m4: Update.
3141         * gnulib/import/m4/fchdir.m4: Update.
3142         * gnulib/import/m4/fcntl-o.m4: Update.
3143         * gnulib/import/m4/fcntl.m4: Update.
3144         * gnulib/import/m4/fcntl_h.m4: Update.
3145         * gnulib/import/m4/fdopendir.m4: Update.
3146         * gnulib/import/m4/filenamecat.m4: Update.
3147         * gnulib/import/m4/flexmember.m4: Update.
3148         * gnulib/import/m4/float_h.m4: Update.
3149         * gnulib/import/m4/fnmatch.m4: Update.
3150         * gnulib/import/m4/fnmatch_h.m4: Update.
3151         * gnulib/import/m4/fpieee.m4: Update.
3152         * gnulib/import/m4/frexp.m4: Update.
3153         * gnulib/import/m4/frexpl.m4: Update.
3154         * gnulib/import/m4/fstat.m4: Update.
3155         * gnulib/import/m4/fstatat.m4: Update.
3156         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3157         * gnulib/import/m4/getcwd-path-max.m4: Update.
3158         * gnulib/import/m4/getcwd.m4: Update.
3159         * gnulib/import/m4/getdtablesize.m4: Update.
3160         * gnulib/import/m4/getlogin.m4: Update.
3161         * gnulib/import/m4/getlogin_r.m4: Update.
3162         * gnulib/import/m4/getpagesize.m4: Update.
3163         * gnulib/import/m4/getprogname.m4: Update.
3164         * gnulib/import/m4/gettimeofday.m4: Update.
3165         * gnulib/import/m4/glibc21.m4: Update.
3166         * gnulib/import/m4/glob.m4: Update.
3167         * gnulib/import/m4/glob_h.m4: Update.
3168         * gnulib/import/m4/gnulib-cache.m4: Update.
3169         * gnulib/import/m4/gnulib-common.m4: Update.
3170         * gnulib/import/m4/gnulib-comp.m4: Update.
3171         * gnulib/import/m4/gnulib-tool.m4: Update.
3172         * gnulib/import/m4/hard-locale.m4: Update.
3173         * gnulib/import/m4/include_next.m4: Update.
3174         * gnulib/import/m4/inttypes-pri.m4: Update.
3175         * gnulib/import/m4/inttypes.m4: Update.
3176         * gnulib/import/m4/isnand.m4: Update.
3177         * gnulib/import/m4/isnanl.m4: Update.
3178         * gnulib/import/m4/largefile.m4: Update.
3179         * gnulib/import/m4/limits-h.m4: Update.
3180         * gnulib/import/m4/localcharset.m4: Update.
3181         * gnulib/import/m4/locale-fr.m4: Update.
3182         * gnulib/import/m4/locale-ja.m4: Update.
3183         * gnulib/import/m4/locale-zh.m4: Update.
3184         * gnulib/import/m4/localtime-buffer.m4: Update.
3185         * gnulib/import/m4/longlong.m4: Update.
3186         * gnulib/import/m4/lstat.m4: Update.
3187         * gnulib/import/m4/malloc.m4: Update.
3188         * gnulib/import/m4/malloca.m4: Update.
3189         * gnulib/import/m4/math_h.m4: Update.
3190         * gnulib/import/m4/mbrtowc.m4: Update.
3191         * gnulib/import/m4/mbsinit.m4: Update.
3192         * gnulib/import/m4/mbsrtowcs.m4: Update.
3193         * gnulib/import/m4/mbstate_t.m4: Update.
3194         * gnulib/import/m4/memchr.m4: Update.
3195         * gnulib/import/m4/memmem.m4: Update.
3196         * gnulib/import/m4/mempcpy.m4: Update.
3197         * gnulib/import/m4/memrchr.m4: Update.
3198         * gnulib/import/m4/mkdir.m4: Update.
3199         * gnulib/import/m4/mkstemp.m4: Update.
3200         * gnulib/import/m4/mmap-anon.m4: Update.
3201         * gnulib/import/m4/mode_t.m4: Update.
3202         * gnulib/import/m4/msvc-inval.m4: Update.
3203         * gnulib/import/m4/msvc-nothrow.m4: Update.
3204         * gnulib/import/m4/multiarch.m4: Update.
3205         * gnulib/import/m4/nocrash.m4: Update.
3206         * gnulib/import/m4/off_t.m4: Update.
3207         * gnulib/import/m4/onceonly.m4: Update.
3208         * gnulib/import/m4/open-cloexec.m4: Update.
3209         * gnulib/import/m4/open.m4: Update.
3210         * gnulib/import/m4/openat.m4: Update.
3211         * gnulib/import/m4/opendir.m4: Update.
3212         * gnulib/import/m4/pathmax.m4: Update.
3213         * gnulib/import/m4/rawmemchr.m4: Update.
3214         * gnulib/import/m4/readdir.m4: Update.
3215         * gnulib/import/m4/readlink.m4: Update.
3216         * gnulib/import/m4/realloc.m4: Update.
3217         * gnulib/import/m4/rename.m4: Update.
3218         * gnulib/import/m4/rewinddir.m4: Update.
3219         * gnulib/import/m4/rmdir.m4: Update.
3220         * gnulib/import/m4/save-cwd.m4: Update.
3221         * gnulib/import/m4/secure_getenv.m4: Update.
3222         * gnulib/import/m4/setenv.m4: Update.
3223         * gnulib/import/m4/signal_h.m4: Update.
3224         * gnulib/import/m4/ssize_t.m4: Update.
3225         * gnulib/import/m4/stat-time.m4: Update.
3226         * gnulib/import/m4/stat.m4: Update.
3227         * gnulib/import/m4/std-gnu11.m4: Update.
3228         * gnulib/import/m4/stdbool.m4: Update.
3229         * gnulib/import/m4/stddef_h.m4: Update.
3230         * gnulib/import/m4/stdint.m4: Update.
3231         * gnulib/import/m4/stdio_h.m4: Update.
3232         * gnulib/import/m4/stdlib_h.m4: Update.
3233         * gnulib/import/m4/strchrnul.m4: Update.
3234         * gnulib/import/m4/strdup.m4: Update.
3235         * gnulib/import/m4/strerror.m4: Update.
3236         * gnulib/import/m4/string_h.m4: Update.
3237         * gnulib/import/m4/strstr.m4: Update.
3238         * gnulib/import/m4/strtok_r.m4: Update.
3239         * gnulib/import/m4/sys_socket_h.m4: Update.
3240         * gnulib/import/m4/sys_stat_h.m4: Update.
3241         * gnulib/import/m4/sys_time_h.m4: Update.
3242         * gnulib/import/m4/sys_types_h.m4: Update.
3243         * gnulib/import/m4/tempname.m4: Update.
3244         * gnulib/import/m4/time_h.m4: Update.
3245         * gnulib/import/m4/unistd-safer.m4: Update.
3246         * gnulib/import/m4/unistd_h.m4: Update.
3247         * gnulib/import/m4/warn-on-use.m4: Update.
3248         * gnulib/import/m4/wchar_h.m4: Update.
3249         * gnulib/import/m4/wchar_t.m4: Update.
3250         * gnulib/import/m4/wctype_h.m4: Update.
3251         * gnulib/import/m4/wint_t.m4: Update.
3252         * gnulib/import/malloc.c: Update.
3253         * gnulib/import/malloc/scratch_buffer.h: Update.
3254         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3255         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3256         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3257         * gnulib/import/malloca.c: Update.
3258         * gnulib/import/malloca.h: Update.
3259         * gnulib/import/malloca.valgrind: Update.
3260         * gnulib/import/math.in.h: Update.
3261         * gnulib/import/mbrtowc.c: Update.
3262         * gnulib/import/mbsinit.c: Update.
3263         * gnulib/import/mbsrtowcs-impl.h: Update.
3264         * gnulib/import/mbsrtowcs-state.c: Update.
3265         * gnulib/import/mbsrtowcs.c: Update.
3266         * gnulib/import/memchr.c: Update.
3267         * gnulib/import/memmem.c: Update.
3268         * gnulib/import/mempcpy.c: Update.
3269         * gnulib/import/memrchr.c: Update.
3270         * gnulib/import/mkdir.c: Update.
3271         * gnulib/import/mkstemp.c: Update.
3272         * gnulib/import/msvc-inval.c: Update.
3273         * gnulib/import/msvc-inval.h: Update.
3274         * gnulib/import/msvc-nothrow.c: Update.
3275         * gnulib/import/msvc-nothrow.h: Update.
3276         * gnulib/import/open.c: Update.
3277         * gnulib/import/openat-die.c: Update.
3278         * gnulib/import/openat-priv.h: Update.
3279         * gnulib/import/openat-proc.c: Update.
3280         * gnulib/import/openat.c: Update.
3281         * gnulib/import/openat.h: Update.
3282         * gnulib/import/opendir.c: Update.
3283         * gnulib/import/pathmax.h: Update.
3284         * gnulib/import/pipe-safer.c: Update.
3285         * gnulib/import/rawmemchr.c: Update.
3286         * gnulib/import/readdir.c: Update.
3287         * gnulib/import/readlink.c: Update.
3288         * gnulib/import/realloc.c: Update.
3289         * gnulib/import/ref-add.sin: Update.
3290         * gnulib/import/ref-del.sin: Update.
3291         * gnulib/import/rename.c: Update.
3292         * gnulib/import/rewinddir.c: Update.
3293         * gnulib/import/rmdir.c: Update.
3294         * gnulib/import/same-inode.h: Update.
3295         * gnulib/import/save-cwd.c: Update.
3296         * gnulib/import/save-cwd.h: Update.
3297         * gnulib/import/scratch_buffer.h: Update.
3298         * gnulib/import/secure_getenv.c: Update.
3299         * gnulib/import/setenv.c: Update.
3300         * gnulib/import/signal.in.h: Update.
3301         * gnulib/import/stat-time.c: Update.
3302         * gnulib/import/stat-time.h: Update.
3303         * gnulib/import/stat-w32.c: Update.
3304         * gnulib/import/stat-w32.h: Update.
3305         * gnulib/import/stat.c: Update.
3306         * gnulib/import/stdbool.in.h: Update.
3307         * gnulib/import/stddef.in.h: Update.
3308         * gnulib/import/stdint.in.h: Update.
3309         * gnulib/import/stdio.in.h: Update.
3310         * gnulib/import/stdlib.in.h: Update.
3311         * gnulib/import/str-two-way.h: Update.
3312         * gnulib/import/strchrnul.c: Update.
3313         * gnulib/import/strdup.c: Update.
3314         * gnulib/import/streq.h: Update.
3315         * gnulib/import/strerror-override.c: Update.
3316         * gnulib/import/strerror-override.h: Update.
3317         * gnulib/import/strerror.c: Update.
3318         * gnulib/import/string.in.h: Update.
3319         * gnulib/import/stripslash.c: Update.
3320         * gnulib/import/strnlen1.c: Update.
3321         * gnulib/import/strnlen1.h: Update.
3322         * gnulib/import/strstr.c: Update.
3323         * gnulib/import/strtok_r.c: Update.
3324         * gnulib/import/sys_stat.in.h: Update.
3325         * gnulib/import/sys_time.in.h: Update.
3326         * gnulib/import/sys_types.in.h: Update.
3327         * gnulib/import/tempname.c: Update.
3328         * gnulib/import/tempname.h: Update.
3329         * gnulib/import/time.in.h: Update.
3330         * gnulib/import/unistd--.h: Update.
3331         * gnulib/import/unistd-safer.h: Update.
3332         * gnulib/import/unistd.in.h: Update.
3333         * gnulib/import/unsetenv.c: Update.
3334         * gnulib/import/verify.h: Update.
3335         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3336         * gnulib/import/wchar.in.h: Update.
3337         * gnulib/import/wctype.in.h: Update.
3338         * gnulib/import/xalloc-oversized.h: Update.
3339         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3340         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3341
3342 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3343
3344         * record-btrace.c (get_thread_current_frame): Remove
3345         old_inferior_ptid.
3346
3347 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3348
3349         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3350         with check_tag to 1 if and only if the type is tagged and the
3351         component being searched cannot been found in the current
3352         view. Otherwise, always call ada_to_fixed_type with
3353         check_tag to 0.
3354
3355 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3356
3357         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3358         declaration.
3359         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3360         * ada-varobj.c (ada_varobj_get_number_of_children,
3361         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3362
3363 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3364
3365         * ada-valprint.c (ada_value_print): Use type instead of
3366         enclosing type.
3367
3368 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3369
3370         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3371         an array of access to unconstrained array.
3372
3373 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3374
3375         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3376         (ada_check_typedef): Use it.
3377
3378 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3379
3380         * ada-varobj.c (ada_varobj_describe_struct_child)
3381         (ada_varobj_describe_child): Handle union case like struct one.
3382
3383 2018-09-10  Tom Tromey  <tom@tromey.com>
3384
3385         PR python/18380:
3386         * python/python.c (_initialize_python): Make example in "python"
3387         help work in Python 3.
3388
3389 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3390
3391         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3392         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3393         $(EXEEXT) to the script, as it is not a program.
3394
3395 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3396
3397         * python/py-prettyprint.c (pretty_print_one_value): Return
3398         gdbpy_ref<>.
3399         (print_string_repr): Adjust.
3400         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3401         * python/python-internal.h (apply_varobj_pretty_printer): Return
3402         gdbpy_ref<>.
3403         * varobj.c (varobj_value_get_print_value): Adjust.
3404
3405 2018-09-08  Tom Tromey  <tom@tromey.com>
3406
3407         PR python/16047:
3408         * python/py-prettyprint.c (pretty_print_one_value): Check for
3409         to_string method.
3410
3411 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3412
3413         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3414         replace_operator_with_call.
3415
3416 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3417
3418         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3419
3420 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3421
3422         * ada-typeprint.c (print_range): Print the bounds using TYPE
3423         rather than its TYPE_TARGET_TYPE.
3424
3425 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3426
3427         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3428         call to ada_to_fixed_value_create.
3429
3430 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3431
3432         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3433
3434 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3435
3436         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3437         by calls to error.
3438
3439 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3440
3441         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3442         Move update of loop variable "fi".
3443
3444 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3445
3446         * ada-lang.c (value_assign_to_component): In the case of
3447         big-endian targets, extract the bits of the given VAL
3448         using an src_offset of zero if container is not a scalar.
3449
3450 2018-09-06  Simon Ser  <contact@emersion.fr>
3451
3452         PR gdb/23105
3453         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3454         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3455         * fbsd-tdep.c (fbsd_make_note_desc): New.
3456         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3457         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3458         * target.h (enum target_object) Add FreeBSD-specific
3459         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3460
3461 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3462
3463         * compile/compile-c.h (generate_c_for_variable_locations):
3464         Change reference to pointer.
3465         * compile/compile-c-support.c (compile_program) <compute>:
3466         Likewise.
3467         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3468         (generate_c_for_for_one_variable): Likewise
3469         (generate_c_for_variable_locations): Likewise
3470         * compile/compile-c-types.c (compile_c_instance::convert_type):
3471         Likewise
3472         * compile/compile-cplus-symbols.c (convert_one_symbol):
3473         std::move the scope passed to enter_scope.
3474         * compile/compile-cplus-types.c
3475         (compile_cplus_instance::enter_scope): Make parameter
3476         rvalue-reference.
3477         (compile_cplus_instance::new_scope): Change reference to
3478         pointer.
3479         (compile_cplus_instance::convert_type): Likewise
3480         (compile_cplus_convert_typedef): std::move the scope passed to
3481         enter_scope.
3482         (compile_cplus_convert_struct_or_union): Likewise.
3483         (compile_cplus_convert_enum): Likewise.
3484         (compile_cplus_convert_namespace): Likewise.
3485         * compile/compile-cplus.h (compile_cplus_instance)
3486         <enter_scope>: Make parameter rvalue-reference.
3487         * compile/compile-internal.h (compile_instance)
3488         <get_cached_type>: Likewise
3489         * compile/compile-loc2c.c (push): Likewise
3490         (pushf): Likewise
3491         (unary): Likewise
3492         (binary): Likewise
3493         (print_label): Likewise
3494         (pushf_register_address): Likewise
3495         (pushf_register): Likewise
3496         (do_compile_dwarf_expr_to_c): Likewise
3497         (compile_dwarf_expr_to_c): Likewise
3498         (compile_dwarf_bounds_to_c): Likewise
3499         * compile/compile.c (compile_instance::get_cached_type):
3500         Likewise
3501         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3502         (compile_dwarf_bounds_to_c): Likewise
3503         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3504         (dwarf2_compile_property_to_c): Likewise
3505         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3506         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3507         Likewise
3508
3509 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3510
3511         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3512         * tui/tui-data.c (init_content_element): Don't initialize it.
3513
3514 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3515
3516         * tui/tui-data.h (struct tui_win_info)
3517         <detail::opaque>: Remove.
3518         * tui/tui-data.c (init_win_info): Remove assignment.
3519
3520 2018-09-05  Tom Tromey  <tom@tromey.com>
3521
3522         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3523         -Wformat-nonliteral.
3524         * target-float.c (host_float_ops<T>::to_string)
3525         (host_float_ops<T>::from_string): Use
3526         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3527         * configure: Rebuild.
3528
3529 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3530
3531         * printcmd.c (printf_c_string): Use
3532         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3533         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3534
3535 2018-09-05  Tom Tromey  <tom@tromey.com>
3536
3537         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3538
3539 2018-09-05  Tom de Vries  <tdevries@suse.de>
3540
3541         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3542         with resolve_abstract_p == true.
3543         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3544         defaulting to false. Propagate resolve_abstract_p to
3545         dwarf2_fetch_die_loc_sect_off.
3546         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3547         parameter, defaulting to false.
3548         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3549         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3550         parameter.
3551         * dwarf2read.h (struct die_info): Forward-declare.
3552         (die_info_ptr): New typedef.
3553         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3554
3555 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3556
3557         GDB 8.2 released.
3558
3559 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3560             Pedro Alves  <palves@redhat.com>
3561
3562         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3563         "aclocal-m4-deps.mk".  Include file here.
3564         $(srcdir)/aclocal.m4: Add "configure.ac".
3565         * gnulib/aclocal-m4-deps.mk: New file.
3566         * gnulib/update-gnulib.sh: Automatically update
3567         "aclocal-m4-deps.mk".
3568
3569 2018-09-04  Tom Tromey  <tom@tromey.com>
3570
3571         * configure: Rebuild.
3572         * configure.ac: Remove multi-ice code.
3573
3574 2018-09-04  Tom Tromey  <tom@tromey.com>
3575
3576         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3577         (ada-exp.o): Update.
3578
3579 2018-09-04  Tom Tromey  <tom@tromey.com>
3580
3581         * Makefile.in (printcmd.o, target-float.o): Remove.
3582         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3583
3584 2018-09-04  Tom Tromey  <tom@tromey.com>
3585
3586         * gnulib/Makefile.in: Remove obsolete comment.
3587         * Makefile.in: Remove obsolete comment.
3588
3589 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3590
3591         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3592         line with '+'.
3593
3594 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3595
3596         * riscv-tdep.c: Add 'prologue-value.h' include.
3597         (struct riscv_unwind_cache): New struct.
3598         (riscv_debug_unwinder): New global.
3599         (riscv_scan_prologue): Update arguments, capture register details
3600         from prologue scan.
3601         (riscv_skip_prologue): Reformat arguments line, move end of
3602         prologue calculation into riscv_scan_prologue.
3603         (riscv_frame_cache): Update return type, create
3604         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3605         details.
3606         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3607         (riscv_frame_prev_register): Use the trad_frame within the
3608         riscv_unwind_cache.
3609         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3610         flag.
3611
3612 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3613
3614         * trad-frame.h (trad_frame_set_realreg): Declare.
3615         (trad_frame_set_addr): Declare.
3616         * trad-frame.c (trad_frame_set_realreg): Define new function.
3617         (trad_frame_set_addr): Define new function.
3618         (trad_frame_set_reg_realreg): Use new function.
3619         (trad_frame_set_reg_addr): Use new function.
3620
3621 2018-09-01  Keith Seitz  <keiths@redhat.com>
3622
3623         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3624         pulongest instead of "%lld".
3625         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3626         ATTRIBUTE_UNUSED.
3627
3628 2018-08-31  Tom Tromey  <tom@tromey.com>
3629
3630         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3631         variant part type.
3632
3633 2018-08-31  Pedro Alves  <palves@redhat.com>
3634
3635         * gdbarch.h: Regenerate.
3636
3637 2018-08-31  Pedro Alves  <palves@redhat.com>
3638
3639         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3640         * target.h (Hardware watchpoint interfaces): Describe
3641         continuable/steppable/non-steppable watchpoints.
3642         * gdbarch.h, gdbarch.c: Regenerate.
3643
3644 2018-08-31  Pedro Alves  <palves@redhat.com>
3645
3646         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3647         Delete.
3648         * s390-linux-nat.c
3649         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3650         * target.h (target_ops::have_continuable_watchpoint): Delete.
3651         (target_have_continuable_watchpoint): Delete.
3652         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3653         * target-delegates.c: Regenerate.
3654
3655 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3656
3657         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3658         the files present in "gnulib/import/m4/".
3659
3660 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3661
3662         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3663         c.sw, c.swsp, and c.sdsp.
3664
3665 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3666
3667         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3668         (riscv_read_misa_reg): Don't cache value read into inferior data.
3669         (riscv_new_inferior_data): Delete.
3670         (riscv_inferior_data_cleanup): Delete.
3671         (riscv_inferior_data): Delete.
3672         (riscv_invalidate_inferior_data): Delete.
3673         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3674
3675 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3676
3677         * compile/compile-cplus-types.c
3678         (compile_cplus_instance::leave_scope): Take the address of scope
3679         object.
3680         (compile_cplus_instance::convert_qualified_base): Compare quals
3681         to 0.
3682
3683 2018-08-30  Keith Seitz  <keiths@redhat.com>
3684
3685         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3686         Use "%s" and host_address_to_string instead of "%p" in printf.
3687
3688 2018-08-29  Keith Seitz  <keiths@redhat.com>
3689
3690         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3691         and compile-cplus-types.c.
3692         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3693         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3694         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3695         Declare.
3696         * compile/compile-c-support.c: Include compile-cplus.h.
3697         (load_libcompile): Templatize.
3698         (get_compile_context): "New" function.
3699         (c_get_compile_context): Use get_compile_context.
3700         (cplus_get_compile_context): New function.
3701         (cplus_push_user_expression, cplus_pop_user_expression)
3702         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3703         (cplus_compute_program): Define new structs/functions.
3704         * compile/compile-cplus-symmbols.c: New file.
3705         * compile/compile-cplus-types.c: New file.
3706         * compile/compile-cplus.h: New file.
3707         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3708         Declare.
3709         * compile/compile-object-load.c (get_out_value_type): Use
3710         strncmp_iw when comparing symbol names.
3711         (compile_object_load): Add mst_bss and mst_data.
3712         * compile/compile.c (_initialize_compile): Remove
3713         -Wno-implicit-function-declaration from `compile_args'.
3714         * compile/gcc-cp-plugin.h: New file.
3715         * NEWS: Mention C++ compile support and new debug options.
3716
3717 2018-08-29  Keith Seitz  <keiths@redhat.com>
3718
3719         * linespec.c (collect_info::add_symbol): Make virtual.
3720         (struct symbol_searcher_collect_info): New struct.
3721         (symbol_searcher::find_all_symbols): New method.
3722         * symtab.h (class symbol_searcher): New class.
3723
3724 2018-08-29  Keith Seitz  <keiths@redhat.com>
3725
3726         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3727         Change to vector of block_symbol.  Update all users.
3728         (struct collect_info) <symbols>: Likewise.
3729         (collect_info::add_symbol): Take block_symbol as argument.
3730         Update all callers.
3731         (decode_compound_collector) <m_symbols>: Change type to vector
3732         of block_symbol.  Update all users.
3733         (decode_compound_collector::operator ()): Change parameter type
3734         to block_symbol.
3735         (find_method, find_function_symbols, find_linespec_symbols)
3736         (find_label_symbols_in_block, find_label_symbols): Change symbol
3737         vectors to block_symbol vectors.
3738         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3739         block_symbol.
3740
3741 2018-08-29  Keith Seitz  <keiths@redhat.com>
3742
3743         * linespec.c (symbolp): Remove typedef and VEC definitions.
3744         (bound_minimal_symbol_d): Likewise.
3745
3746 2018-08-29  Keith Seitz  <keiths@redhat.com>
3747
3748         * linespec.c (decode_compound_collector::decode_compound_collector):
3749         Remove initialization for `m_symtabs'.
3750         (decode_compound_collector::release_symbols): Change return type
3751         to std::vector.  Update all callers.
3752         (class decode_compound_collector) <m_symbols>: Change type to
3753         std::vector.
3754         (lookup_prefix_sym): Change return type to std::vector.  Update all
3755         callers.
3756         (compare_symbols): Remove.
3757         (std_compare_symbols): Rename to `compare_symbols'.
3758         (find_method): Change `sym_classes' parameter to std::vector.
3759         Update all callers.  Use std::sort to sort sym_classes.
3760         (find_linespec_symbols): Remove cleanup.
3761
3762 2018-08-29  Keith Seitz  <keiths@redhat.com>
3763
3764         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3765         std::vector.  Update all users.
3766         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3767         (struct collect_info) <minimal_symbols>: Likewise.
3768         (compare_msymbols): Return bool.  Change parameters to const
3769         bound_minimal_symbol references.
3770         (find_method, find_function_symbols, find_linespec_symbols): Change
3771         `minsyms' parameter to std::vector.  Update all callers.
3772
3773 2018-08-29  Keith Seitz  <keiths@redhat.com>
3774
3775         * linespec.c (struct linespec) <label_symbols>: Change type to
3776         std::vector.  Update all users.
3777         (find_label_symbols_in_block): Change `result' parameter to
3778         std::vector.  Update all callers.
3779         (find_label_symbols): Return std::vector.  Update all callers.
3780
3781 2018-08-29  Keith Seitz  <keiths@redhat.com>
3782
3783         * linespec.c (struct linespec) <function_symbols>: Change type to
3784         std::vector.  Update all users.
3785         (struct collect_info) <function_symbols>: Likewise.
3786         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3787         (std_compare_symbols): New function.
3788         (find_method, find_function_symbols, find_linespec_symbols)
3789         (find_label_symbols_in_block): Change `symbols' parameter to
3790         std::vector.  Update all callers.
3791         (find_label_symbols): Likewise for `function_symbols' and
3792         `label_funcs_ret'.
3793
3794 2018-08-29  Keith Seitz  <keiths@redhat.com>
3795
3796         * linespec.c (symtab_vector_up): Define.
3797         (struct linespec) <file_symtabs>: Change type to std::vector *.
3798         Update all uses.
3799         (struct collect_info) <file_symtabs>: Likewise.
3800         (collect_symtabs_from_filename): Return symtab_vector_up.
3801         Update all callers.
3802         (decode_objc): Remove cleanup.
3803         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3804         (symtab_collector::release_symtabs): Return symtab_vector_up.
3805         Update all callers.
3806         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3807         Update all users.
3808         (collect_symtabs_from_filename, symtabs_from_filename): Return
3809         symtab_vector_up.  Update all callers.
3810
3811 2018-08-29  Tom Tromey  <tom@tromey.com>
3812
3813         * csky-tdep.c (csky_analyze_prologue): Use
3814         core_addr_to_string_nz.
3815
3816 2018-08-29  Tom Tromey  <tom@tromey.com>
3817
3818         * windows-nat.c (struct xlate_exception) <them>: Change type to
3819         DWORD.
3820         (xlate): Fix formatting.  Remove last entry.
3821         (struct xlate_exception, xlate): Comment out.
3822         (windows_nat_target::resume): Use ranged for.
3823
3824 2018-08-29  Jim Wilson  <jimw@sifive.com>
3825
3826         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3827         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3828         of NT_PRFPREG.
3829         (riscv_linux_nat_target::store_registers): Likewise.
3830
3831 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3832
3833         PR gdb/23555
3834         PR gdb/23558
3835         * gnulib/aclocal.m4: Regenerate.
3836         * gnulib/config.in: Regenerate.
3837         * gnulib/configure: Regenerate.
3838         * gnulib/import/Makefile.am: Update.
3839         * gnulib/import/Makefile.in: Update.
3840         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3841         * gnulib/import/_Noreturn.h: ... this.
3842         * gnulib/import/alloca.in.h: Update.
3843         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3844         * gnulib/import/arg-nonnull.h: ... this.
3845         * gnulib/import/assure.h: Update.
3846         * gnulib/import/at-func.c: Update.
3847         * gnulib/import/basename-lgpl.c: Update.
3848         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3849         * gnulib/import/c++defs.h: ... this.
3850         * gnulib/import/canonicalize-lgpl.c: Update.
3851         * gnulib/import/cdefs.h: Update.
3852         * gnulib/import/chdir-long.c: Update.
3853         * gnulib/import/chdir-long.h: Update.
3854         * gnulib/import/cloexec.c: Update.
3855         * gnulib/import/cloexec.h: Update.
3856         * gnulib/import/close.c: Update.
3857         * gnulib/import/closedir.c: Update.
3858         * gnulib/import/config.charset: Update.
3859         * gnulib/import/dirent-private.h: Update.
3860         * gnulib/import/dirent.in.h: Update.
3861         * gnulib/import/dirfd.c: Update.
3862         * gnulib/import/dirname-lgpl.c: Update.
3863         * gnulib/import/dirname.h: Update.
3864         * gnulib/import/dosname.h: Update.
3865         * gnulib/import/dup-safer-flag.c: Update.
3866         * gnulib/import/dup-safer.c: Update.
3867         * gnulib/import/dup.c: Update.
3868         * gnulib/import/dup2.c: Update.
3869         * gnulib/import/errno.in.h: Update.
3870         * gnulib/import/error.c: Update.
3871         * gnulib/import/error.h: Update.
3872         * gnulib/import/exitfail.c: Update.
3873         * gnulib/import/exitfail.h: Update.
3874         * gnulib/import/extra/update-copyright: Update.
3875         * gnulib/import/fchdir.c: Update.
3876         * gnulib/import/fcntl.c: Update.
3877         * gnulib/import/fcntl.in.h: Update.
3878         * gnulib/import/fd-hook.c: Update.
3879         * gnulib/import/fd-hook.h: Update.
3880         * gnulib/import/fd-safer-flag.c: Update.
3881         * gnulib/import/fd-safer.c: Update.
3882         * gnulib/import/fdopendir.c: Update.
3883         * gnulib/import/filename.h: Update.
3884         * gnulib/import/filenamecat-lgpl.c: Update.
3885         * gnulib/import/filenamecat.h: Update.
3886         * gnulib/import/flexmember.h: Update.
3887         * gnulib/import/float+.h: Update.
3888         * gnulib/import/float.c: Update.
3889         * gnulib/import/float.in.h: Update.
3890         * gnulib/import/fnmatch.c: Update.
3891         * gnulib/import/fnmatch.in.h: Update.
3892         * gnulib/import/fnmatch_loop.c: Update.
3893         * gnulib/import/fpucw.h: Update.
3894         * gnulib/import/frexp.c: Update.
3895         * gnulib/import/frexpl.c: Update.
3896         * gnulib/import/fstat.c: Update.
3897         * gnulib/import/fstatat.c: Update.
3898         * gnulib/import/getcwd-lgpl.c: Update.
3899         * gnulib/import/getcwd.c: Update.
3900         * gnulib/import/getdtablesize.c: Update.
3901         * gnulib/import/getlogin_r.c: Update.
3902         * gnulib/import/getprogname.c: Update.
3903         * gnulib/import/getprogname.h: Update.
3904         * gnulib/import/gettext.h: Update.
3905         * gnulib/import/gettimeofday.c: Update.
3906         * gnulib/import/glob-libc.h: Update.
3907         * gnulib/import/glob.c: Update.
3908         * gnulib/import/glob.in.h: Update.
3909         * gnulib/import/glob_internal.h: Update.
3910         * gnulib/import/glob_pattern_p.c: Update.
3911         * gnulib/import/globfree.c: Update.
3912         * gnulib/import/hard-locale.c: Update.
3913         * gnulib/import/hard-locale.h: Update.
3914         * gnulib/import/intprops.h: Update.
3915         * gnulib/import/inttypes.in.h: Update.
3916         * gnulib/import/isnan.c: Update.
3917         * gnulib/import/isnand-nolibm.h: Update.
3918         * gnulib/import/isnand.c: Update.
3919         * gnulib/import/isnanl-nolibm.h: Update.
3920         * gnulib/import/isnanl.c: Update.
3921         * gnulib/import/itold.c: Update.
3922         * gnulib/import/libc-config.h: Update.
3923         * gnulib/import/limits.in.h: Update.
3924         * gnulib/import/localcharset.c: Update.
3925         * gnulib/import/localcharset.h: Update.
3926         * gnulib/import/localtime-buffer.c: Update.
3927         * gnulib/import/localtime-buffer.h: Update.
3928         * gnulib/import/lstat.c: Update.
3929         * gnulib/import/m4/00gnulib.m4: Update.
3930         * gnulib/import/m4/__inline.m4: Update.
3931         * gnulib/import/m4/absolute-header.m4: Update.
3932         * gnulib/import/m4/alloca.m4: Update.
3933         * gnulib/import/m4/builtin-expect.m4: Update.
3934         * gnulib/import/m4/canonicalize.m4: Update.
3935         * gnulib/import/m4/chdir-long.m4: Update.
3936         * gnulib/import/m4/close.m4: Update.
3937         * gnulib/import/m4/closedir.m4: Update.
3938         * gnulib/import/m4/configmake.m4: Update.
3939         * gnulib/import/m4/d-ino.m4: Update.
3940         * gnulib/import/m4/d-type.m4: Update.
3941         * gnulib/import/m4/dirent_h.m4: Update.
3942         * gnulib/import/m4/dirfd.m4: Update.
3943         * gnulib/import/m4/dirname.m4: Update.
3944         * gnulib/import/m4/double-slash-root.m4: Update.
3945         * gnulib/import/m4/dup.m4: Update.
3946         * gnulib/import/m4/dup2.m4: Update.
3947         * gnulib/import/m4/eealloc.m4: Update.
3948         * gnulib/import/m4/environ.m4: Update.
3949         * gnulib/import/m4/errno_h.m4: Update.
3950         * gnulib/import/m4/error.m4: Update.
3951         * gnulib/import/m4/exponentd.m4: Update.
3952         * gnulib/import/m4/exponentl.m4: Update.
3953         * gnulib/import/m4/extensions.m4: Update.
3954         * gnulib/import/m4/extern-inline.m4: Update.
3955         * gnulib/import/m4/fchdir.m4: Update.
3956         * gnulib/import/m4/fcntl-o.m4: Update.
3957         * gnulib/import/m4/fcntl.m4: Update.
3958         * gnulib/import/m4/fcntl_h.m4: Update.
3959         * gnulib/import/m4/fdopendir.m4: Update.
3960         * gnulib/import/m4/filenamecat.m4: Update.
3961         * gnulib/import/m4/flexmember.m4: Update.
3962         * gnulib/import/m4/float_h.m4: Update.
3963         * gnulib/import/m4/fnmatch.m4: Update.
3964         * gnulib/import/m4/fnmatch_h.m4: Update.
3965         * gnulib/import/m4/fpieee.m4: Update.
3966         * gnulib/import/m4/frexp.m4: Update.
3967         * gnulib/import/m4/frexpl.m4: Update.
3968         * gnulib/import/m4/fstat.m4: Update.
3969         * gnulib/import/m4/fstatat.m4: Update.
3970         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3971         * gnulib/import/m4/getcwd-path-max.m4: Update.
3972         * gnulib/import/m4/getcwd.m4: Update.
3973         * gnulib/import/m4/getdtablesize.m4: Update.
3974         * gnulib/import/m4/getlogin.m4: Update.
3975         * gnulib/import/m4/getlogin_r.m4: Update.
3976         * gnulib/import/m4/getpagesize.m4: Update.
3977         * gnulib/import/m4/getprogname.m4: Update.
3978         * gnulib/import/m4/gettimeofday.m4: Update.
3979         * gnulib/import/m4/glibc21.m4: Update.
3980         * gnulib/import/m4/glob.m4: Update.
3981         * gnulib/import/m4/glob_h.m4: Update.
3982         * gnulib/import/m4/gnulib-cache.m4: Update.
3983         * gnulib/import/m4/gnulib-common.m4: Update.
3984         * gnulib/import/m4/gnulib-comp.m4: Update.
3985         * gnulib/import/m4/gnulib-tool.m4: Update.
3986         * gnulib/import/m4/hard-locale.m4: Update.
3987         * gnulib/import/m4/include_next.m4: Update.
3988         * gnulib/import/m4/inttypes-pri.m4: Update.
3989         * gnulib/import/m4/inttypes.m4: Update.
3990         * gnulib/import/m4/isnand.m4: Update.
3991         * gnulib/import/m4/isnanl.m4: Update.
3992         * gnulib/import/m4/largefile.m4: Update.
3993         * gnulib/import/m4/limits-h.m4: Update.
3994         * gnulib/import/m4/localcharset.m4: Update.
3995         * gnulib/import/m4/locale-fr.m4: Update.
3996         * gnulib/import/m4/locale-ja.m4: Update.
3997         * gnulib/import/m4/locale-zh.m4: Update.
3998         * gnulib/import/m4/localtime-buffer.m4: Update.
3999         * gnulib/import/m4/longlong.m4: Update.
4000         * gnulib/import/m4/lstat.m4: Update.
4001         * gnulib/import/m4/malloc.m4: Update.
4002         * gnulib/import/m4/malloca.m4: Update.
4003         * gnulib/import/m4/math_h.m4: Update.
4004         * gnulib/import/m4/mbrtowc.m4: Update.
4005         * gnulib/import/m4/mbsinit.m4: Update.
4006         * gnulib/import/m4/mbsrtowcs.m4: Update.
4007         * gnulib/import/m4/mbstate_t.m4: Update.
4008         * gnulib/import/m4/memchr.m4: Update.
4009         * gnulib/import/m4/memmem.m4: Update.
4010         * gnulib/import/m4/mempcpy.m4: Update.
4011         * gnulib/import/m4/memrchr.m4: Update.
4012         * gnulib/import/m4/mkdir.m4: Update.
4013         * gnulib/import/m4/mkstemp.m4: Update.
4014         * gnulib/import/m4/mmap-anon.m4: Update.
4015         * gnulib/import/m4/mode_t.m4: Update.
4016         * gnulib/import/m4/msvc-inval.m4: Update.
4017         * gnulib/import/m4/msvc-nothrow.m4: Update.
4018         * gnulib/import/m4/multiarch.m4: Update.
4019         * gnulib/import/m4/nocrash.m4: Update.
4020         * gnulib/import/m4/off_t.m4: Update.
4021         * gnulib/import/m4/onceonly.m4: Update.
4022         * gnulib/import/m4/open-cloexec.m4: Update.
4023         * gnulib/import/m4/open.m4: Update.
4024         * gnulib/import/m4/openat.m4: Update.
4025         * gnulib/import/m4/opendir.m4: Update.
4026         * gnulib/import/m4/pathmax.m4: Update.
4027         * gnulib/import/m4/rawmemchr.m4: Update.
4028         * gnulib/import/m4/readdir.m4: Update.
4029         * gnulib/import/m4/readlink.m4: Update.
4030         * gnulib/import/m4/realloc.m4: Update.
4031         * gnulib/import/m4/rename.m4: Update.
4032         * gnulib/import/m4/rewinddir.m4: Update.
4033         * gnulib/import/m4/rmdir.m4: Update.
4034         * gnulib/import/m4/save-cwd.m4: Update.
4035         * gnulib/import/m4/secure_getenv.m4: Update.
4036         * gnulib/import/m4/setenv.m4: Update.
4037         * gnulib/import/m4/signal_h.m4: Update.
4038         * gnulib/import/m4/ssize_t.m4: Update.
4039         * gnulib/import/m4/stat-time.m4: Update.
4040         * gnulib/import/m4/stat.m4: Update.
4041         * gnulib/import/m4/std-gnu11.m4: Update.
4042         * gnulib/import/m4/stdbool.m4: Update.
4043         * gnulib/import/m4/stddef_h.m4: Update.
4044         * gnulib/import/m4/stdint.m4: Update.
4045         * gnulib/import/m4/stdio_h.m4: Update.
4046         * gnulib/import/m4/stdlib_h.m4: Update.
4047         * gnulib/import/m4/strchrnul.m4: Update.
4048         * gnulib/import/m4/strdup.m4: Update.
4049         * gnulib/import/m4/strerror.m4: Update.
4050         * gnulib/import/m4/string_h.m4: Update.
4051         * gnulib/import/m4/strstr.m4: Update.
4052         * gnulib/import/m4/strtok_r.m4: Update.
4053         * gnulib/import/m4/sys_socket_h.m4: Update.
4054         * gnulib/import/m4/sys_stat_h.m4: Update.
4055         * gnulib/import/m4/sys_time_h.m4: Update.
4056         * gnulib/import/m4/sys_types_h.m4: Update.
4057         * gnulib/import/m4/tempname.m4: Update.
4058         * gnulib/import/m4/time_h.m4: Update.
4059         * gnulib/import/m4/unistd-safer.m4: Update.
4060         * gnulib/import/m4/unistd_h.m4: Update.
4061         * gnulib/import/m4/warn-on-use.m4: Update.
4062         * gnulib/import/m4/wchar_h.m4: Update.
4063         * gnulib/import/m4/wchar_t.m4: Update.
4064         * gnulib/import/m4/wctype_h.m4: Update.
4065         * gnulib/import/m4/wint_t.m4: Update.
4066         * gnulib/import/malloc.c: Update.
4067         * gnulib/import/malloc/scratch_buffer.h: Update.
4068         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4069         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4070         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4071         * gnulib/import/malloca.c: Update.
4072         * gnulib/import/malloca.h: Update.
4073         * gnulib/import/malloca.valgrind: Update.
4074         * gnulib/import/math.in.h: Update.
4075         * gnulib/import/mbrtowc.c: Update.
4076         * gnulib/import/mbsinit.c: Update.
4077         * gnulib/import/mbsrtowcs-impl.h: Update.
4078         * gnulib/import/mbsrtowcs-state.c: Update.
4079         * gnulib/import/mbsrtowcs.c: Update.
4080         * gnulib/import/memchr.c: Update.
4081         * gnulib/import/memmem.c: Update.
4082         * gnulib/import/mempcpy.c: Update.
4083         * gnulib/import/memrchr.c: Update.
4084         * gnulib/import/mkdir.c: Update.
4085         * gnulib/import/mkstemp.c: Update.
4086         * gnulib/import/msvc-inval.c: Update.
4087         * gnulib/import/msvc-inval.h: Update.
4088         * gnulib/import/msvc-nothrow.c: Update.
4089         * gnulib/import/msvc-nothrow.h: Update.
4090         * gnulib/import/open.c: Update.
4091         * gnulib/import/openat-die.c: Update.
4092         * gnulib/import/openat-priv.h: Update.
4093         * gnulib/import/openat-proc.c: Update.
4094         * gnulib/import/openat.c: Update.
4095         * gnulib/import/openat.h: Update.
4096         * gnulib/import/opendir.c: Update.
4097         * gnulib/import/pathmax.h: Update.
4098         * gnulib/import/pipe-safer.c: Update.
4099         * gnulib/import/rawmemchr.c: Update.
4100         * gnulib/import/readdir.c: Update.
4101         * gnulib/import/readlink.c: Update.
4102         * gnulib/import/realloc.c: Update.
4103         * gnulib/import/ref-add.sin: Update.
4104         * gnulib/import/ref-del.sin: Update.
4105         * gnulib/import/rename.c: Update.
4106         * gnulib/import/rewinddir.c: Update.
4107         * gnulib/import/rmdir.c: Update.
4108         * gnulib/import/same-inode.h: Update.
4109         * gnulib/import/save-cwd.c: Update.
4110         * gnulib/import/save-cwd.h: Update.
4111         * gnulib/import/scratch_buffer.h: Update.
4112         * gnulib/import/secure_getenv.c: Update.
4113         * gnulib/import/setenv.c: Update.
4114         * gnulib/import/signal.in.h: Update.
4115         * gnulib/import/stat-time.c: Update.
4116         * gnulib/import/stat-time.h: Update.
4117         * gnulib/import/stat-w32.c: Update.
4118         * gnulib/import/stat-w32.h: Update.
4119         * gnulib/import/stat.c: Update.
4120         * gnulib/import/stdbool.in.h: Update.
4121         * gnulib/import/stddef.in.h: Update.
4122         * gnulib/import/stdint.in.h: Update.
4123         * gnulib/import/stdio.in.h: Update.
4124         * gnulib/import/stdlib.in.h: Update.
4125         * gnulib/import/str-two-way.h: Update.
4126         * gnulib/import/strchrnul.c: Update.
4127         * gnulib/import/strdup.c: Update.
4128         * gnulib/import/streq.h: Update.
4129         * gnulib/import/strerror-override.c: Update.
4130         * gnulib/import/strerror-override.h: Update.
4131         * gnulib/import/strerror.c: Update.
4132         * gnulib/import/string.in.h: Update.
4133         * gnulib/import/stripslash.c: Update.
4134         * gnulib/import/strnlen1.c: Update.
4135         * gnulib/import/strnlen1.h: Update.
4136         * gnulib/import/strstr.c: Update.
4137         * gnulib/import/strtok_r.c: Update.
4138         * gnulib/import/sys_stat.in.h: Update.
4139         * gnulib/import/sys_time.in.h: Update.
4140         * gnulib/import/sys_types.in.h: Update.
4141         * gnulib/import/tempname.c: Update.
4142         * gnulib/import/tempname.h: Update.
4143         * gnulib/import/time.in.h: Update.
4144         * gnulib/import/unistd--.h: Update.
4145         * gnulib/import/unistd-safer.h: Update.
4146         * gnulib/import/unistd.in.h: Update.
4147         * gnulib/import/unsetenv.c: Update.
4148         * gnulib/import/verify.h: Update.
4149         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4150         * gnulib/import/wchar.in.h: Update.
4151         * gnulib/import/wctype.in.h: Update.
4152         * gnulib/import/xalloc-oversized.h: Update.
4153         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4154         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4155
4156 2018-08-16  Gary Benson <gbenson@redhat.com>
4157
4158         PR gdb/13000:
4159         * gdb/main.c (captured_main_1): Exit with nonzero status
4160         in batch mode if the last command to be executed failed.
4161         * NEWS: Mention the above.
4162
4163 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4164
4165         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4166         end of warning message.
4167
4168 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4169
4170         PR gdb/22943:
4171         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4172         (aarch64_extract_return_value): Use
4173         aapcs_is_vfp_call_or_return_candidate.
4174         (aarch64_return_in_memory): Likewise.
4175         (aarch64_store_return_value): Likewise.
4176
4177 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4178
4179         * aarch64-tdep.c
4180         (aapcs_is_vfp_call_or_return_candidate): Make static
4181         (pass_in_v_or_stack): Remove function.
4182         (pass_in_v_vfp_candidate): New function.
4183         (aarch64_push_dummy_call): Check for float register candidates.
4184
4185 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4186
4187         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4188         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4189         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4190
4191 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4192
4193         PR build/23399
4194         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4195         (struct ipa_sym_addresses): Rename to...
4196         (struct ipa_sym_addresses_common): ... this.
4197         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4198
4199 2018-08-28  Tom Tromey  <tom@tromey.com>
4200
4201         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4202         (token_fifo): Now a std::vector.
4203         (yylex, c_parse): Update.
4204         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4205         (token_fifo): Now a std::vector.
4206         (yylex, d_parse): Update.
4207         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4208         (token_fifo): Now a std::vector.
4209         (yylex, go_parse): Update.
4210
4211 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4212
4213         * parser-defs.h (struct type_stack) <elements>: Change type to
4214         std::vector<union type_stack_elt>.
4215         <depth, size>: Remove.
4216         * parse.c (parse_exp_in_context_1): Adjust.
4217         (type_stack_reserve): Remove.
4218         (check_type_stack_depth): Remove.
4219         (insert_into_type_stack): Adjust to std::vector.
4220         (insert_type): Likewise.
4221         (push_type): Likewise.
4222         (push_type_int): Likewise.
4223         (insert_type_address_space): Likewise.
4224         (pop_type): Likewise.
4225         (pop_type_int): Likewise.
4226         (pop_typelist): Likewise.
4227         (pop_type_stack): Likewise.
4228         (append_type_stack): Likewise.
4229         (push_type_stack): Likewise.
4230         (get_type_stack): Likewise.
4231         (type_stack_cleanup): Likewise.
4232         (push_typelist): Likewise.
4233         (follow_types): Likewise.
4234         (_initialize_parse): Likewise.
4235
4236 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4237
4238         * NEWS: Mention csky target.
4239
4240 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4241             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4242             Don Breazeal  <donb@codesourcery.com>
4243
4244         * csky-linux-tdep.c: New file.
4245         * csky-tdep.c: Likewise.
4246         * csky-tdep.h: Likewise.
4247         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4248         csky-tdep.o.
4249         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4250         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4251         * configure.tgt: Add csky support.
4252
4253 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4254
4255         * python/py-framefilter.c (py_print_frame): Print frame architecture
4256         when printing on an MI output.
4257
4258 2018-08-27  Tom Tromey  <tom@tromey.com>
4259
4260         PR build/23087:
4261         * configure: Rebuild.
4262         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4263
4264 2018-08-27  Tom Tromey  <tom@tromey.com>
4265
4266         * aarch64-linux-tdep.c
4267         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4268         casts to int.
4269
4270 2018-08-27  Tom Tromey  <tom@tromey.com>
4271
4272         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4273         unsigned.
4274         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4275         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4276         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4277         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4278         unsigned.
4279
4280 2018-08-27  Tom Tromey  <tom@tromey.com>
4281
4282         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4283         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4284
4285 2018-08-27  Tom Tromey  <tom@tromey.com>
4286
4287         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4288         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4289         ULONGEST_MAX.
4290         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4291         ULONGEST_MAX.
4292         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4293         ULONGEST_MAX.
4294         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4295         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4296         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4297         ULONGEST_MAX.
4298         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4299         (ppc64_linux_sigaction_tramp_frame)
4300         (ppc32_linux_sighandler_tramp_frame)
4301         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4302         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4303         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4304         * mn10300-linux-tdep.c (am33_linux_sigframe)
4305         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4306         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4307         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4308         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4309         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4310         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4311         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4312         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4313         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4314         * microblaze-linux-tdep.c
4315         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4316         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4317         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4318         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4319         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4320         * common/common-types.h (ULONGEST_MAX): New define.
4321         (CORE_ADDR_MAX): Fix formatting.
4322         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4323         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4324         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4325         (arm_linux_rt_sigreturn_tramp_frame)
4326         (arm_eabi_linux_sigreturn_tramp_frame)
4327         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4328         (thumb2_eabi_linux_sigreturn_tramp_frame)
4329         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4330         (arm_linux_restart_syscall_tramp_frame)
4331         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4332         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4333         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4334         ULONGEST_MAX.
4335         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4336
4337 2018-08-27  Tom Tromey  <tom@tromey.com>
4338
4339         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4340         CORE_ADDR_MAX.
4341         * mips-tdep.c (mips_deal_with_atomic_sequence)
4342         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4343         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4344         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4345         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4346         CORE_ADDR_MAX.
4347         * aarch64-tdep.c (aarch64_software_single_step): Use
4348         CORE_ADDR_MAX.
4349
4350 2018-08-27  Tom Tromey  <tom@tromey.com>
4351
4352         * linespec.c (complete_linespec_component): Add cast to "char".
4353         * completer.c (completion_tracker::build_completion_result): Add
4354         cast to "char".
4355
4356 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4357
4358         * solist.h (struct solist, struct target_so_ops): Fix
4359         indentation.
4360
4361 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4362
4363         * ada-tasks.c (ada_task_info_s): Remove typedef.
4364         (DEF_VEC_O(ada_task_info_s)): Remove.
4365         (struct ada_tasks_inferior_data): Initialize fields.
4366         <task_list>: Make an std::vector.
4367         (get_ada_tasks_inferior_data): Allocate with new.
4368         (ada_get_task_number): Adjust.
4369         (get_task_number_from_id): Likewise.
4370         (valid_task_id): Likewise.
4371         (ada_get_task_info_from_ptid): Likewise.
4372         (iterate_over_live_ada_tasks): Likewise.
4373         (add_ada_task): Likewise.
4374         (read_known_tasks): Likewise.
4375         (ada_build_task_list): Likewise.
4376         (print_ada_task_info): Likewise.
4377         (info_task): Likewise.
4378         (task_command_1): Likewise.
4379
4380 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4381
4382         * ada-lang.c (add_angle_brackets): Return std::string.
4383
4384 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4385
4386         * python/py-threadevent.c (py_get_event_thread): Initialize
4387         pythread.
4388
4389 2018-08-24  Pedro Alves  <palves@redhat.com>
4390
4391         * python/py-bpevent.c (create_breakpoint_event_object): Use
4392         copy-initialization.
4393         * python/py-continueevent.c (emit_continue_event): Use
4394         copy-initialization.
4395         * python/py-exitedevent.c (create_exited_event_object): Return a
4396         gdbpy_ref<>.
4397         (emit_exited_event): Use copy-initialization.
4398         * python/py-inferior.c (python_new_inferior)
4399         (python_inferior_deleted, add_thread_object): Use
4400         copy-initialization.
4401         * python/py-infevents.c (create_inferior_call_event_object)
4402         (create_register_changed_event_object)
4403         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4404         (emit_inferior_call_event, emit_memory_changed_event)
4405         (emit_register_changed_event): Use copy-initialization.
4406         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4407         Return a gdbpy_ref<>.
4408         (emit_new_objfile_event): Use copy-initialization.
4409         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4410         (emit_clear_objfiles_event): Use copy-initialization.
4411         * python/py-signalevent.c (create_signal_event_object): Use
4412         copy-initialization.
4413         * python/py-threadevent.c (create_thread_event_object): Use
4414         copy-initialization.
4415
4416 2018-08-24  Pedro Alves  <palves@redhat.com>
4417             Simon Marchi  <simon.marchi@ericsson.com>
4418
4419         PR gdb/23379
4420         * python/py-continueevent.c: Include "gdbthread.h".
4421         (create_continue_event_object): Add intro comment.  Add 'ptid'
4422         parameter.  Use it to find thread to pass to
4423         create_thread_event_object.
4424         (emit_continue_event): Pass PTID down to
4425         create_continue_event_object.
4426         * python/py-event.h (py_get_event_thread): Declare.
4427         (create_thread_event_object): Remove default from 'thread'
4428         parameter.
4429         * python/py-stopevent.c (create_stop_event_object): Use
4430         py_get_event_thread.
4431         * python/py-threadevent.c (get_event_thread): Rename to ...
4432         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4433         and use it to find the thread.
4434         (create_thread_event_object): Assert that THREAD isn't null.
4435         Don't find the event thread here.
4436
4437 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4438
4439         * block.h (blockrange, blockranges): New struct declarations.
4440         (struct block): Add new field named `ranges'.
4441         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4442         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4443         macros for accessing ranges in struct block.
4444         (make_blockranges): New declaration.
4445         block.c (make_blockranges): New function.
4446         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4447         for block.
4448         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4449         * blockframe.c (cache_pc_function_block): New static global.
4450         (clear_pc_function_cache): Clear cache_pc_function_block.
4451         (find_pc_partial_function): Move comment to symtab.h.  Add
4452         support for non-contiguous blocks.
4453         * cli/cli-cmds.c (block.h): Include.
4454         (print_disassembly): Handle printing of non-contiguous blocks.
4455         (disassemble_current_function): Likewise.
4456         (disassemble_command): Likewise.
4457
4458         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4459         BLOCK_START.
4460         * blockframe.c (get_pc_function_start): Likewise.
4461         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4462         (gcc_symbol_address): Likewise.
4463         * compile/compile-object-run.c (compile_object_run): Likewise.
4464         * compile/compile.c (get_expr_block_and_pc): Likewise.
4465         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4466         (func_addr_to_tail_call_list): Likewise.
4467         * findvar.c (default_read_var_value): Likewise.
4468         * inline-frame.c (inline_frame_this_id): Likewise.
4469         (skip-inline_frames): Likewise.
4470         * infcmd.c (until_next_command): Likewise.
4471         * linespec.c (convert_linespec_to_sals): Likewise.
4472         * parse.c (parse_exp_in_context_1): Likewise.
4473         * printcmd.c (build_address_symbolic): likewise.
4474         (info_address_command): Likewise.
4475         symtab.c (find_function_start_sal): Likewise.
4476         (skip_prologue_sal): Likewise.
4477         (find_function_alias_target): Likewise.
4478         (find_gnu_ifunc): Likewise.
4479         * stack.c (find_frame_funname): Likewise.
4480         * symtab.c (fixup_symbol_section): Likewise.
4481         (find_function_start_sal): Likewise.
4482         (skip_prologue_sal): Likewsie.
4483         (find_function_alias_target): Likewise.
4484         (find_gnu_ifunc): Likewise.
4485         * tracepoint.c (info_scope_command): Likewise.
4486         * value.c (value_fn_field): Likewise.
4487
4488         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4489         in place of find_pc_partial_function.
4490         * blockframe.c (find_function_entry_range_from_pc): New function.
4491         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4492         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4493         for each range in a block.
4494
4495
4496 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4497
4498         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4499         incrementation.
4500
4501 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4502
4503         * solib-svr4.c (read_program_headers_from_bfd): Return
4504         gdb::optional<gdb::byte_vector>.
4505         (svr4_exec_displacement): Adjust.
4506
4507 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4508
4509         * solib-svr4.c (read_program_header): Return
4510         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4511         (find_program_interpreter): Return
4512         gdb::optional<gdb::byte_vector>.
4513         (scan_dyntag_auxv): Adjust.
4514         (enable_break): Adjust.
4515         (svr4_exec_displacement): Adjust.
4516
4517 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4518
4519         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4520         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4521
4522 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4523
4524         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4525         string_vprintf.
4526         * guile/scm-utils.c (gdbscm_printf): Likewise.
4527         * serial.c (serial_printf): Likewise.
4528         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4529
4530 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4531
4532         * stack.c (print_frame): Print frame architecture when printing on
4533         an MI output.
4534         * NEWS: Mention new "arch" attribute in frame output.
4535
4536 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4537
4538         * arch/aarch64.h (aarch64_regnum): Update comment.
4539
4540 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4541
4542         * NEWS: Add SVE to 8.2 section.
4543
4544 2018-08-21  Pedro Alves  <palves@redhat.com>
4545
4546         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4547         out from gdbscm_parse_function_args.
4548         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4549         gdbscm_parse_function_args_1.
4550
4551 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4552
4553         PR gdb/17816
4554         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4555         operator.
4556
4557 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4558
4559         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4560
4561 2018-08-19  Michael Spang  <spang@google.com>
4562
4563         PR gdb/11786
4564         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4565         for PT_TLS segments.
4566
4567 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4568
4569         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4570         dwarf_variable_value.
4571         * dwarf2-frame.c (class dwarf_expr_executor):
4572         Add override for dwarf_variable_value.
4573         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4574         (class symbol_needs_eval_context): Likewise.
4575         (indirect_synthetic_pointer): Add forward declaration.
4576         (sect_variable_value): New function.
4577         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4578         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4579         for DW_OP_GNU_variable_value.
4580
4581 2018-08-16  Tom Tromey  <tom@tromey.com>
4582
4583         * top.c (read_command_file): Update.
4584         (command_line_input): Remove "repeat" argument.
4585         * ada-lang.c (get_selections): Update.
4586         * linespec.c (decode_line_2): Update.
4587         * defs.h (command_line_input): Remove argument.
4588         * cli/cli-script.c (read_next_line): Update.
4589         * python/py-gdb-readline.c: Update.
4590
4591 2018-08-17  Tom Tromey  <tom@tromey.com>
4592
4593         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4594         command_line_input.
4595
4596 2018-08-15  Tom Tromey  <tom@tromey.com>
4597
4598         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4599
4600 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4601
4602         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4603         If used, use find_pc_partial_function to find address range
4604         to disassemble.
4605         * mi/mi-main.c (mi_cmd_list_features): Report
4606         "data-disassemble-a-option" feature.
4607         * NEWS: Mention new -data-disassemble option -a.
4608
4609 2018-08-13  Tom Tromey  <tom@tromey.com>
4610
4611         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4612
4613 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4614
4615         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4616         (aarch64_linux_collect_sve_regset): Likewise.
4617         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4618         * regcache.h (regcache_map_entry_size): New function.
4619
4620 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4621
4622         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4623         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4624         (SVE_HEADER_VL_LENGTH): Likewise.
4625         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4626         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4627         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4628         (SVE_HEADER_SIZE_OFFSET): Likewise.
4629         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4630         (SVE_HEADER_VL_OFFSET): Likewise.
4631         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4632         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4633         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4634         (SVE_HEADER_SIZE): Likewise.
4635         (aarch64_linux_core_read_vq): Add function.
4636         (aarch64_linux_core_read_description): Check for SVE section.
4637
4638 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4639
4640         * aarch64-fbsd-tdep.c
4641         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4642         collect_size.
4643         * aarch64-linux-tdep.c
4644         (aarch64_linux_iterate_over_regset_sections): Likewise.
4645         * alpha-linux-tdep.c
4646         (alpha_linux_iterate_over_regset_sections):
4647         * alpha-nbsd-tdep.c
4648         (alphanbsd_iterate_over_regset_sections): Likewise.
4649         * amd64-fbsd-tdep.c
4650         (amd64fbsd_iterate_over_regset_sections): Likewise.
4651         * amd64-linux-tdep.c
4652         (amd64_linux_iterate_over_regset_sections): Likewise.
4653         * arm-bsd-tdep.c
4654         (armbsd_iterate_over_regset_sections): Likewise.
4655         * arm-fbsd-tdep.c
4656         (arm_fbsd_iterate_over_regset_sections): Likewise.
4657         * arm-linux-tdep.c
4658         (arm_linux_iterate_over_regset_sections): Likewise.
4659         * corelow.c (get_core_registers_cb): Likewise.
4660         (core_target::fetch_registers): Likewise.
4661         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4662         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4663         * gdbarch.h (void): Regenerate.
4664         * gdbarch.sh: Add supply_size and collect_size.
4665         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4666         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4667         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4668         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4669         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4670         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4671         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4672         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4673         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4674         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4675         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4676         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4677         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4678         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4679         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4680         Likewise.
4681         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4682         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4683         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4684         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4685         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4686         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4687         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4688         Likewise.
4689         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4690         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4691         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4692         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4693         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4694         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4695         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4696         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4697
4698 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4699
4700         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4701         with string_printf.
4702
4703 2018-08-10  Keith Seitz  <keiths@redhat.com>
4704
4705         * compile/compile-c-support.c (add_code_header, add_code_footer):
4706         Move into policy class.
4707         (c_push_user_expression, pop_user_expression_nop)
4708         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4709         (compile_program): New host class.
4710         (c_compile_program): New typedef.
4711         (c_compute_porgram): Use c_compile_program.
4712
4713 2018-08-10  Keith Seitz  <keiths@redhat.com>
4714
4715         * compile/compile-internal.h (compile_instance::~compile_instance):
4716         Remove calls to htab_delete.
4717         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4718         * compile.c (compile_instance::compile_instance): Initialize
4719         htab unique pointers.
4720         (compile_instance::get_cached_type, compile_instance::insert_type)
4721         (compile_instance::error_symbol_once): Update for unique_ptr.
4722
4723 2018-08-10  Keith Seitz  <keiths@redhat.com>
4724
4725         * compile/compile-c-symbols.c (struct symbol_error)
4726         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4727         (compile_instance::insert_symbol_error)
4728         (compile_instance::error_symbol_once): Move to ...
4729         * compile/compile.c: ... here.
4730
4731 2018-08-10  Keith Seitz  <keiths@redhat.com>
4732
4733         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4734         instead of `new_compile_instance'.
4735         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4736         Update description.
4737         If the symbol error map is not initialized, create it.
4738         (generate_c_for_for_one_symbol): Do not check/initialize
4739         the symbol error map.
4740         * compile/compile-c-types.c (compile_c_instance): Make a class.
4741         Update all callers.
4742         (compile_instance::compile_instance): Initialize the type cache.
4743         (get_cached_type): New function.
4744         (insert_type): Update description.
4745         (compile_c_instance::m_default_cflags): Define.
4746         (convert_type): Update description.  Use get_cached_type.
4747         (delete_instance): Moved to destructor.
4748         (new_compile_instance): Moved to constructor.
4749         * compile/compile-c.h (compile_c_instance): Make class inheriting
4750         from compile_instance.
4751         <base>: Remove field.
4752         <type_map, symbol_err_map>: Move to base class.
4753         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4754         * compile/compile-internal.h (compile_instance): Make class.
4755         <type_map_t, symbol_err_map_t>: Define.
4756         <fe>: Rename to `m_gcc_fe'.
4757         <scope, block, gcc_target_options>: Add `m_' prefix.
4758         <m_type_map, m_symbol_err_map>: New fields, moved from
4759         compile_c_instance.
4760         <destroy>: Remove.
4761         (convert_type, new_compile_instance): Remove.
4762         * compile/compile.c (cleanup_compile_instance): Remove.
4763         (compile_to_object): Use unique_ptr to eliminate cleanups.
4764         (compile_instance::set_print_callback, compile_instance::version)
4765         (compile_instance::set_verbose)
4766         (compile_instance::set_driver_filename)
4767         (compile_instance::set_triplet_regexp)
4768         (compile_instance::set_arguments)
4769         (compile_instance::set_source_file)
4770         (compile_instance::compile): Define.
4771
4772 2018-08-10  Keith Seitz  <keiths@redhat.com>
4773
4774         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4775         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4776         gcc-c-fe.def to define C plugin.
4777         (delete_instance): Delete `c_plugin'.
4778         (new_compile_instance): Initialize `c_plugin'.
4779         * compile/compile-c.h: Include gcc_c_plugin.h.
4780         (struct compile_c_instance) <c_plugin>: New member.
4781         * gcc-c-plugin.h: New file.
4782         Update all callers with API change.
4783
4784 2018-08-10  Keith Seitz  <keiths@redhat.com>
4785
4786         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4787         (HFILES_NO_SRCDIR): ... to here.
4788         Add compile-internal.h and compile-c.h.
4789         * compile/compile-c-support.c: Include compile-c.h.
4790         * compile/compile-c-symbols.c: Include compile-c.h.
4791         (generate_c_for_variable_locations): Update comment.
4792         * compile/compile-c-types.c: Include compile-c.h.
4793         * compile/compile-c.h: New file -- moved C language declarations
4794         from other files here.
4795         * compile/compile-internal.h: Do not include hashtab.h or
4796         common/enum-flags.h.
4797         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4798         (gcc_convert_symbol, gcc_symbol_address)
4799         (generate_c_for_variable_locations, c_get_mode_for_size)
4800         (c_get_range_decl_name): Definitions moved to compile-c.h.
4801         * compile/compile-loc2c.c: Include compile-c.h.
4802
4803 2018-08-10  Keith Seitz  <keiths@redhat.com>
4804
4805         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4806         (c_symbol_substitution_name): ... this.
4807         Update all callers.
4808
4809 2018-08-10  Keith Seitz  <keiths@redhat.com>
4810
4811         * compile/compile-c-support.c (c_compute_program): Use
4812         unique_xmalloc_ptr to eliminate cleanup.
4813         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4814         Return a unique_xmalloc_ptr and eliminate cleanup.
4815         * compile/compile-internal.h (generate_c_for_variable_locations):
4816         Return unique_xmalloc_ptr and update description.
4817
4818 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4819
4820         * corelow.c (core_target::get_core_register_section): Rename
4821         min_size to section_min_size.
4822
4823 2018-08-09  Jim Wilson  <jimw@sifive.com>
4824
4825         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4826         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4827         * NEWS: Mention new GNU/Linux RISC-V target.
4828         * configure.host: Add riscv*-*-linux*.
4829         * configure.nat: Add riscv*.
4830         * configure.tgt: Add riscv*-*-linux*.
4831         * riscv-linux-nat.c: New file.
4832         * riscv-linux-tdep.c: New file.
4833
4834 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4835
4836         * infrun.c (resume): Make static, add forward declaration.
4837         (proceed): Update header comment.
4838         * infrun.h (resume): Delete declaration.
4839
4840 2018-08-09  Tom Tromey  <tom@tromey.com>
4841
4842         * riscv-tdep.h: Minor formatting fixes.
4843
4844 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4845
4846         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4847         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4848         (test_mkdir_recursive): Likewise.
4849         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4850
4851 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4852
4853         * valarith.c (value_subscripted_rvalue): If an array is not in
4854         memory, and we don't know the upper bound, then we can't know that
4855         the requested element exists or not.
4856
4857 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4858
4859         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4860         (target_options_to_string): Add comment.
4861
4862 2018-08-08  Tom Tromey  <tom@tromey.com>
4863
4864         * unittests/scoped_mmap-selftests.c: Check result of "write".
4865
4866 2018-08-08  Jim Wilson  <jimw@sifive.com>
4867
4868         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4869         (decode_register_index_short): New.
4870         (decode_j_type_insn, decode_cj_type_insn): New.
4871         (decode_b_type_insn, decode_cb_type_insn): New.
4872         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4873         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4874         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4875         is_c_sw_insn instead of is_sw_insn.
4876         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4877         (riscv_software_single_step): New.
4878         * riscv-tdep.h (riscv_software_single_step): Declare.
4879
4880         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4881         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4882
4883 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4884
4885         PR gdb/18050:
4886         * target.c (dispose_inferior): Don't dispose of inferiors that are
4887         already killed.
4888
4889 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4890
4891         * remote.c (remote_target::download_tracepoint): Change char* to
4892         const char*.
4893
4894 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4895
4896         * target.h (target_options_to_string): Return an std::string.
4897         * target.c (str_comma_list_concat_elem): Return void, use
4898         std::string.
4899         (do_option): Likewise.
4900         (target_options_to_string): Return an std::string.
4901         * linux-nat.c (linux_nat_target::wait): Adjust.
4902         * target-debug.h (target_debug_print_options): Adjust.
4903
4904 2018-08-07  Tom Tromey  <tom@tromey.com>
4905
4906         * Makefile.in (CPPFLAGS): New variable.
4907         (INTERNAL_CPPFLAGS): Use it.
4908
4909 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4910
4911         * NEWS: Mention the index cache.
4912
4913 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4914
4915         * common/pathstuff.h (get_standard_cache_dir): New.
4916         * common/pathstuff.c (get_standard_cache_dir): New.
4917         * build-id.h (build_id_to_string): New.
4918         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4919         DEBUG_STR_SUFFIX): Move to here.
4920         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4921         DEBUG_STR_SUFFIX): Move from there.
4922         (write_psymtabs_to_index): Make non-static, add basename
4923         parameter.  Write to temporary files, rename when done.
4924         (save_gdb_index_command): Adjust call to
4925         write_psymtabs_to_index.
4926         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4927         field.
4928         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4929         (get_gdb_index_contents_from_cache): New.
4930         (get_gdb_index_contents_from_cache_dwz): New.
4931         (dwarf2_initialize_objfile): Read index from cache.
4932         (dwarf2_build_psymtabs): Save to index.
4933         * dwarf-index-cache.h: New file.
4934         * dwarf-index-cache.c: New file.
4935         * dwarf-index-write.h: New file.
4936
4937 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4938
4939         * gnulib/aclocal.m4: Re-generate.
4940         * gnulib/config.in: Re-generate.
4941         * gnulib/configure: Re-generate.
4942         * gnulib/import/Makefile.am: Re-generate.
4943         * gnulib/import/Makefile.in: Re-generate.
4944         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4945         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4946         * gnulib/import/m4/mkdir.m4: New file.
4947         * gnulib/import/mkdir.c: New file.
4948         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4949         module.
4950
4951 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4952
4953         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4954         * common/scoped_mmap.c: New file.
4955         * common/scoped_mmap.h (destroy): New method.
4956         (~scoped_mmap, reset): Use destroy.
4957         (scoped_mmap): New move constructor.
4958         (mmap_file): New declaration.
4959         * unittests/scoped_mmap-selftests.c (test_normal,
4960         test_invalid_filename, run_tests): New functions.
4961         (_initialize_scoped_mmap_selftests): Register selftest.
4962
4963 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4964
4965         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4966         (read_gdb_index_from_buffer): ... this.  Remove section
4967         parameter, add buffer parameter.
4968         (get_gdb_index_contents_ftype,
4969         get_gdb_index_contents_dwz_ftype): New typedefs.
4970         (dwarf2_read_gdb_index): Add callback parameters to get the
4971         index contents.
4972         (get_gdb_index_contents_from_section): New.
4973         (dwarf2_initialize_objfile): Update call to
4974         dwarf2_read_gdb_index.
4975
4976 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4977
4978         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4979         (gdb_open_cloexec): Likewise.
4980         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4981         (commandline_from_pid): Likewise.
4982         (linux_xfer_osdata_threads): Likewise.
4983         (linux_xfer_osdata_fds): Likewise.
4984         * ada-lang.c (is_package_name): Likewise.
4985         * auxv.c (procfs_xfer_auxv): Likewise.
4986         * breakpoint.c (print_one_breakpoint_location): Use
4987         uiout::field_fmt.
4988         (print_one_catch_solib): Use string_printf.
4989         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4990         (add_pe_forwarded_sym): Likewise.
4991         * dwarf2read.c (create_type_unit_group): Likewise.
4992         (build_error_marker_type): Likewise.
4993         * infcall.c (get_function_name): Likewise.
4994         * valprint.c (print_converted_chars_to_obstack): Likewise.
4995         * xtensa-tdep.c (xtensa_register_type): Likewise.
4996
4997 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4998
4999         * remote.c (remote_target::download_tracepoint): Fix format
5000         string errors.
5001
5002 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5003
5004         * tracefile.c: Include common/byte-vector.h.
5005         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5006         with trace_regblock_size if needed.  Update uses of buf.
5007
5008 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5009
5010         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5011         std::vector<unsigned char>.
5012         * tracepoint.c (collection_list::collection_list): Remove
5013         m_regs_mask initializer from initializer list.  Resize
5014         m_regs_mask using the largest remote register number.
5015         (collection_list::add_remote_register): Remove size check on
5016         m_regs_mask.  Use at to access element.
5017         (collection_list::stringify): Change type of temp_buf to
5018         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5019         stringify the register mask.  Use pack_hex_byte for the register
5020         mask.
5021
5022 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5023
5024         * tracepoint.h (class collection_list) <add_register>: Remove.
5025         <add_remote_register, add_ax_registers, add_local_register>:
5026         Declare.
5027         <add_memrange>: Add scope parameter.
5028         * tracepoint.c (encode_actions_1): Likewise.
5029         (collection_list::add_register): Rename to ...
5030         (collection_list::add_remote_register): ... this.  Update
5031         comment.
5032         (collection_list::add_ax_registers, add_local_register): New
5033         methods.
5034         (collection_list::add_memrange): Add scope parameter.  Call
5035         add_local_register instead of add_register.
5036         (finalize_tracepoint_aexpr): New function.
5037         (collection_list::collect_symbol): Update calls to add_memrange.
5038         Call add_local_register instead of add_register.  Call
5039         add_ax_registers.  Call finalize_tracepoint_aexpr.
5040         (encode_actions_1): Get remote regnos for $reg action.  Call
5041         add_remote_register, add_ax_registers, and add_local_register.
5042         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5043         (validate_actionline): Call finalize_tracepoint_aexpr.
5044
5045 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5046
5047         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5048         Replace array buf with gdb::char_vector buf, of size
5049         get_remote_packet_size ().  Replace references to buf and
5050         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5051         and xsnprintf with snprintf.  Raise errors if the buffer is too
5052         small.
5053
5054 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5055
5056         * remote.c (remote_target::download_tracepoint): Fix the has_more
5057         predicate in the QTDP action list iteration.
5058
5059 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5060
5061         * remote.c (remote_target::download_tracepoint): Fix indentation
5062         in for block.
5063
5064 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5065
5066         * proc-api.c (_initialize_proc_api): Remove c, unused.
5067         * procfs.c (procfs_init_inferior): Remove signals, unused.
5068         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5069         unused.
5070
5071 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5072             Andrew Burgess  <andrew.burgess@embecosm.com>
5073
5074         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5075         'W_STOPCODE (0)' as this could be ambiguous.
5076
5077 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5078
5079         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5080         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5081         "ai_socktype").
5082
5083 2018-08-02  Tom Tromey  <tom@tromey.com>
5084
5085         PR symtab/16842.
5086         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5087         symbols.
5088         (process_structure_scope): Likewise.
5089
5090 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5091
5092         PR gdb/22629:
5093         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5094         kill inferior.
5095
5096 2018-08-02  Tom Tromey  <tom@tromey.com>
5097
5098         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5099         (darwin_suspend_inferior, darwin_resume_inferior)
5100         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5101         (darwin_check_new_threads): Check result of get_darwin_inferior.
5102
5103 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5104
5105         GDB 8.1.1 released.
5106
5107 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5108
5109         * varobj.c (varobj_get_path_expr_parent): Report an error if
5110         parent is a dynamic varobj.
5111
5112 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5113
5114         * gnulib/aclocal.m4: Re-generate.
5115         * gnulib/config.in: Re-generate.
5116         * gnulib/configure: Re-generate.
5117         * gnulib/import/Makefile.in: Re-generate.
5118         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5119         * gnulib/import/m4/onceonly.m4: Re-generate.
5120
5121 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5122
5123         * target-descriptions.c (struct xml_test_tdesc): New.
5124         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5125         (record_xml_tdesc): Update.
5126         (maintenance_check_xml_descriptions): Update.
5127         * target-descriptions.h (record_xml_tdesc): Update comment.
5128
5129 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5130
5131         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5132         checking array bounds are defined.
5133
5134 2018-07-30  Tom Tromey  <tom@tromey.com>
5135
5136         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5137         irreflexivity violation.
5138
5139 2018-07-30  Tom Tromey  <tom@tromey.com>
5140
5141         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5142         * value.c (unpack_long): Remove lint code.
5143         * valops.c (value_ind): Remove lint code.
5144         * valarith.c (value_x_binop, value_x_unop, value_equal)
5145         (value_pos): Remove lint code.
5146
5147 2018-07-28  Tom de Vries  <tdevries@suse.de>
5148
5149         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5150         with undefined upper bound as <optimized out>.
5151
5152 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5153
5154         * gcore.in: Rename variable "name" to "prefix".  Expand
5155         "usage" text.
5156
5157 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5158
5159         * windows-nat.c (windows_nat_target::create_inferior): Update to
5160         call close() in global namespace.
5161
5162 2018-07-26  Tom Tromey  <tom@tromey.com>
5163
5164         * dwarf-index-write.c (add_address_entry): Don't add objfile
5165         offsets.
5166         * dbxread.c (find_stab_function): Rename from
5167         find_stab_function_addr.  Return a bound_minimal_symbol.
5168         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5169         Don't add objfile offsets.
5170         (end_psymtab): Use raw_text_low, raw_text_high,
5171         MSYMBOL_VALUE_RAW_ADDRESS.
5172         (read_ofile_symtab): Update.
5173         (process_one_symbol): Update.
5174         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5175         offsets.
5176         (dw2_relocate): Remove.
5177         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5178         searching addrmap.
5179         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5180         Update.
5181         (process_psymtab_comp_unit_reader, add_partial_symbol)
5182         (add_partial_subprogram, dwarf2_ranges_read): Update.
5183         (load_partial_dies): Update.
5184         (add_address_entry): Don't add objfile offsets.
5185         (dwarf2_build_include_psymtabs): Update.
5186         (create_addrmap_from_aranges): Don't add objfile offsets.
5187         (dw2_find_pc_sect_compunit_symtab): Update.
5188         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5189         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5190         Update.
5191         (parse_partial_symbols): Don't add objfile offsets.  Use
5192         raw_text_low, raw_text_high.  Update.
5193         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5194         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5195         or call 'relocate' quick function.  Clear psymbol_map.
5196         * psympriv.h (struct partial_symbol) <address>: Add section
5197         offset.
5198         <set_unrelocated_address>: Rename from set_address.
5199         <raw_text_low, raw_text_high>: New methods.
5200         <text_low, text_high>: Add objfile parameter.
5201         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5202         set_unrelocated_address.
5203         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5204         (find_pc_psymbol): Update.
5205         (fixup_psymbol_section, relocate_psymtabs): Remove.
5206         (dump_psymtab, psym_functions): Update.
5207         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5208         parameter.
5209         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5210         (start_psymtab_common): Update.
5211         * symfile-debug.c (debug_qf_relocate): Remove.
5212         (debug_sym_quick_functions): Update.
5213         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5214         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5215         Update.
5216
5217 2018-07-26  Tom Tromey  <tromey@redhat.com>
5218
5219         * dbxread.c (end_psymtab): Use text_high_valid and
5220         text_low_valid.
5221         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5222         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5223         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5224         Update comment.
5225         <text_low_valid, text_high_valid>: New fields.
5226         <set_text_low, set_text_high>: Update.
5227         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5228
5229 2018-07-26  Tom Tromey  <tom@tromey.com>
5230
5231         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5232         Update.
5233         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5234         textlow and texthigh fields.
5235         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5236         Update.
5237         * mdebugread.c (parse_lines, parse_partial_symbols)
5238         (psymtab_to_symtab_1): Update.
5239         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5240         Rename fields.  Update comment.  Now private.
5241         <text_low, text_high, set_text_low, set_text_high>: New methods.
5242         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5243         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5244         (start_psymtab_common, maintenance_info_psymtabs)
5245         (maintenance_check_psymtabs): Update.
5246         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5247         texthigh fields.
5248         (scan_xcoff_symtab): Update.
5249
5250 2018-07-26  Tom Tromey  <tromey@redhat.com>
5251
5252         * psympriv.h (struct partial_symbol) <unrelocated_address,
5253         address, set_address>: New methods.
5254         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5255         (fixup_psymbol_section, relocate_psymtabs): Update.
5256         (print_partial_symbols): Add 'objfile' parameter.  Update.
5257         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5258         Update.
5259
5260 2018-07-26  Tom Tromey  <tom@tromey.com>
5261
5262         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5263         (debug_names::write_psymbols): Update.
5264         * psympriv.h (struct partial_symbol): Derive from
5265         general_symbol_info.
5266         <obj_section>: New method.
5267         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5268         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5269         (find_pc_sect_psymbol, fixup_psymbol_section)
5270         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5271         (print_partial_symbols, recursively_search_psymtabs)
5272         (compare_psymbols, psymbol_hash, psymbol_compare)
5273         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5274         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5275
5276 2018-07-26  Tom Tromey  <tromey@redhat.com>
5277
5278         * dbxread.c (end_psymtab): Remove dead code.
5279
5280 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5281
5282         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5283         DWARF unwinders are disabled.
5284         * dwarf2-frame.c: Add dwarf2read.h include.
5285         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5286         disabled.
5287         (dwarf2_frame_unwinders_enabled_p): Define.
5288         (show_dwarf_unwinders_enabled_p): New function.
5289         (_initialize_dwarf2_frame): Register switch to control DWARF
5290         unwinder use.
5291         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5292         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5293         (show_dwarf_cmdlist): Remove static keyword.
5294         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5295         (show_dwarf_cmdlist): Declare.
5296         * NEWS: Document new feature.
5297
5298 2018-07-26  Tom de Vries  <tdevries@suse.de>
5299
5300         PR breakpoints/23366
5301         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5302
5303 2018-07-26  Tom de Vries  <tdevries@suse.de>
5304
5305         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5306         DW_AT_count can't be translated to a dynamic prop.
5307
5308 2018-07-25  Tom de Vries  <tdevries@suse.de>
5309
5310         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5311         try/catch.
5312
5313 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5314
5315         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5316
5317 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5318
5319         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5320
5321 2018-07-24  Keith Seitz  <keiths@redhat.comt
5322
5323         PR symtab/23010
5324         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5325         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5326         instead of add_symbol_to_list.
5327         (read_file_scope): Call prepare_one_comp_unit before reading
5328         any other DIEs.
5329
5330 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5331
5332         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5333
5334 2018-07-24  Tom Tromey  <tom@tromey.com>
5335
5336         * utils.c (malloc, realloc, free): Don't declare.
5337         * configure, config.in: Rebuild.
5338         * configure.ac: Don't check for declarations of free, malloc, or
5339         realloc.
5340
5341 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5342
5343         * aarch64-linux-nat.c
5344         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5345         variable.
5346         * arm-linux-nat.c (fetch_regs): Likewise.
5347         (store_regs): Likewise.
5348         (fetch_vfp_regs): Likewise.
5349         (store_vfp_regs): Likewise.
5350         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5351         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5352         (arm_linux_nat_target::insert_watchpoint): Likewise.
5353         (arm_linux_nat_target::remove_watchpoint): Likewise.
5354         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5355         Likewise.
5356         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5357         Likewise.
5358         * ppc-linux-nat.c (fetch_register): Likewise.
5359         (fetch_all_gp_regs): Likewise.
5360         (fetch_ppc_registers): Likewise.
5361         (store_all_gp_regs): Likewise.
5362         (store_ppc_registers): Likewise.
5363         (hwdebug_insert_point): Likewise.
5364         (can_use_watchpoint_cond_accel): Likewise.
5365         * remote-sim.c (gdb_os_write_stdout): Likewise.
5366
5367 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5368             Tom Tromey  <tom@tromey.com>
5369
5370         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5371         test for it.
5372         * configure: Rebuild.
5373
5374 2018-07-22  Tom Tromey  <tom@tromey.com>
5375
5376         * regformats/regdat.sh: Define xmltarget_${name} inside
5377         #ifndef IN_PROCESS_AGENT.
5378
5379 2018-07-22  Tom Tromey  <tom@tromey.com>
5380
5381         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5382
5383 2018-07-22  Tom Tromey  <tom@tromey.com>
5384
5385         * symfile.c (reread_symbols): Notify iter, not objfile.
5386
5387 2018-07-22  Tom Tromey  <tom@tromey.com>
5388
5389         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5390         Use arch_ops.
5391         (ravenscar_thread_target::prepare_to_store): Likewise.
5392
5393 2018-07-22  Tom Tromey  <tom@tromey.com>
5394
5395         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5396         unused variable.  Call value_fetch_lazy when needed.
5397         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5398         Remove unused variable.  Call value_fetch_lazy when needed.
5399
5400 2018-07-22  Tom Tromey  <tom@tromey.com>
5401
5402         * m32c-tdep.c (mark_dma): Return void.
5403         (make_regs): Remove unused declarations.
5404
5405 2018-07-22  Tom Tromey  <tom@tromey.com>
5406
5407         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5408         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5409         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5410         bkscm_get_valid_block_smob_arg_unsafe for effect.
5411
5412 2018-07-22  Tom Tromey  <tom@tromey.com>
5413
5414         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5415         value_type.
5416
5417 2018-07-22  Tom Tromey  <tom@tromey.com>
5418
5419         * windows-nat.c (saved_context): Conditionally define.
5420         * remote.c (remote_target::remote_btrace_maybe_reopen):
5421         Conditionally declare "warned".
5422         * inflow.c (sigquit_ours): Conditionally define.
5423         (new_tty): Move "tty" declaration inside #if.
5424         * guile/guile.c (guile_datadir): Conditionally define.
5425         * charset.c (set_be_le_names): Move some declarations inside #if.
5426         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5427         #if.
5428         (parse_xml_btrace_conf): Likewise.
5429
5430 2018-07-22  Tom Tromey  <tom@tromey.com>
5431
5432         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5433
5434 2018-07-22  Tom Tromey  <tom@tromey.com>
5435
5436         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5437         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5438         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5439         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5440         * stack.c (frame_apply_level_command): Remove unused variable.
5441         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5442         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5443         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5444         unused variable.
5445         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5446         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5447         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5448         variable.
5449         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5450         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5451         variable.
5452         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5453         Remove unused variable.
5454         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5455         variable.
5456         * common/tdesc.c (print_xml_feature::visit): Remove unused
5457         variable.
5458         * compile/compile-object-load.c (store_regs): Remove unused
5459         variables.
5460         * complaints.c (clear_complaints): Remove unused variable.
5461         * corelow.c (core_target_open): Remove unused variable.
5462         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5463         variable.
5464         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5465         variable.
5466         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5467         variable.
5468         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5469         variable.
5470         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5471         variable.
5472         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5473         variable.
5474         * ia64-tdep.c (examine_prologue): Remove unused variable.
5475         * infcall.c (run_inferior_call): Remove unused variable.
5476         * inferior.c (exit_inferior): Remove unused variable.
5477         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5478         * linespec.c (decode_line_2): Remove unused variable.
5479         * linux-nat.c (super_close): Remove.
5480         * linux-tdep.c (linux_info_proc): Remove unused variable.
5481         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5482         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5483         Remove unused variable.
5484         * parse.c (find_minsym_type_and_address): Remove unused variable.
5485         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5486         variable.
5487         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5488         variable.
5489         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5490         variables.
5491         * record-btrace.c (record_btrace_target::store_registers): Remove
5492         unused variable.
5493         (cmd_show_record_btrace_cpu): Remove unused variable.
5494         * riscv-tdep.c (riscv_register_reggroup_p)
5495         (riscv_push_dummy_call, riscv_return_value): Remove unused
5496         variable.
5497         * rust-exp.y (literal): Remove unused variable.
5498         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5499         unused variable.
5500         <STRUCTOP_ANONYMOUS>: Likewise.
5501         * s390-linux-tdep.c (s390_linux_init_abi_31)
5502         (s390_linux_init_abi_64): Remove unused variable.
5503         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5504         (file_select_thread, net_windows_open, _initialize_ser_windows):
5505         Remove unused variables.
5506         * symtab.c (find_pc_sect_line): Remove unused variable.
5507         * target-memory.c (compute_garbled_blocks): Remove unused
5508         variable.
5509         (target_write_memory_blocks): Remove unused variable.
5510         * target.c (target_stack::unpush): Remove unused variables.
5511         * tracepoint.c (start_tracing, all_tracepoint_actions)
5512         (merge_uploaded_trace_state_variables)
5513         (print_one_static_tracepoint_marker): Remove unused variable.
5514         * unittests/basic_string_view/element_access/char/1.cc (test01):
5515         Remove unused variable.
5516         * windows-nat.c (windows_continue, windows_add_all_dlls)
5517         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5518         Remove unused variables.
5519
5520 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5521
5522         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5523         attr_profile in HAVE_ELF.
5524         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5525         HAVE_ELF.
5526
5527 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5528
5529         * frame.c (frame_register_unwind): Change parameter name.
5530         (frame_unwind_register): Likewise.
5531         (frame_unwind_register_value): Likewise.
5532         (frame_unwind_register_signed): Likewise.
5533         (frame_unwind_register_unsigned): Likewise.
5534         * frame.h (frame_register_unwind): Likewise.
5535         (frame_unwind_register): Likewise.
5536         (frame_unwind_register_value): Likewise.
5537         (frame_unwind_register_signed): Likewise.
5538         (frame_unwind_register_unsigned): Likewise.
5539         (frame_unwind_arch): Likewise.
5540
5541 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5542
5543         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5544         ISA maintenance.
5545
5546 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5547
5548         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5549         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5550         hand.
5551
5552 2018-07-20  Keith Seitz  <keiths@redhat.com>
5553
5554         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5555         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5556         m_compunit_symtab, m_language>: Add "m_" prefix.
5557         Update all uses.
5558         * buildsym.c: Update all uses.
5559
5560 2018-07-20  Tom Tromey  <tom@tromey.com>
5561
5562         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5563         * buildsym.h (record_line_ftype): Remove typedef.
5564
5565 2018-07-20  Tom Tromey  <tom@tromey.com>
5566
5567         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5568         (end_expandable_symtab): Likewise.
5569         (end_symtab_get_static_block): Likewise.
5570         (end_symtab_from_static_block): Likewise.
5571         * buildsym-legacy.c (augment_type_symtab): Remove.
5572         (end_expandable_symtab): Remove.
5573         (end_symtab_get_static_block): Remove.
5574         (end_symtab_from_static_block): Remove.
5575
5576 2018-07-20  Tom Tromey  <tom@tromey.com>
5577
5578         * dwarf2read.c: Include buildsym.h.
5579         (struct dwarf2_cu) <builder>: New method.
5580         (fixup_go_packaging): Update.
5581         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5582         use scoped_free_pendings.
5583         (using_directives): Add "cu" parameter, remove "language".
5584         (read_import_statement, setup_type_unit_groups, )
5585         (read_func_scope, read_lexical_block_scope)
5586         (dwarf2_record_block_ranges, read_namespace): Update.
5587         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5588         (lnp_state_machine::handle_end_sequence): Update.
5589         (class lnp_state_machine) <m_cu>: New member.
5590         <m_record_line_callback>: Remove.
5591         <m_currently_recording_lines>: New member.
5592         (lnp_state_machine::handle_set_file): Update.
5593         (noop_record_line): Remove.
5594         (dwarf_record_line_p): Add cu parameter.
5595         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5596         (lnp_state_machine::record_line)
5597         (lnp_state_machine::lnp_state_machine)
5598         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5599         (dwarf_decode_lines): Update.
5600         (dwarf2_start_subfile): Add cu parameter.
5601         (dwarf2_start_symtab, new_symbol): Update.
5602         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5603         Remove dwarf2_per_objfile parameter.
5604         (dwarf_decode_macros): Update.
5605
5606 2018-07-20  Tom Tromey  <tom@tromey.com>
5607
5608         * stabsread.c (define_symbol): Update.
5609         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5610         * dwarf2read.c (new_symbol): Update.
5611         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5612         * cp-namespace.c: Include buildsym.h.
5613         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5614         * buildsym-legacy.c (get_buildsym_compunit): New function.
5615
5616 2018-07-20  Tom Tromey  <tom@tromey.com>
5617
5618         * xcoffread.c: Include buildsym-legacy.h.
5619         * windows-nat.c: Include buildsym-legacy.h.
5620         * stabsread.c: Include buildsym-legacy.h.
5621         * mdebugread.c: Include buildsym-legacy.h.
5622         * buildsym-legacy.h: New file.
5623         * buildsym-legacy.c: New file, from buildsym.c.
5624         * go32-nat.c: Include buildsym-legacy.h.
5625         * dwarf2read.c: Include buildsym-legacy.h.
5626         * dbxread.c: Include buildsym-legacy.h.
5627         * cp-namespace.c: Include buildsym-legacy.h.
5628         * coffread.c: Include buildsym-legacy.h.
5629         * buildsym.h: Move some contents to buildsym-legacy.h.
5630         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5631         buildsym-legacy.c.
5632         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5633
5634 2018-07-20  Tom Tromey  <tom@tromey.com>
5635
5636         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5637         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5638         (buildsym_compunit::buildsym_compunit)
5639         (buildsym_compunit::~buildsym_compunit)
5640         (buildsym_compunit::get_macro_table): Define.
5641
5642 2018-07-20  Tom Tromey  <tom@tromey.com>
5643
5644         * buildsym.c (reset_symtab_globals): Remove.
5645         (buildsym_compunit::end_symtab_from_static_block): Update.
5646         (buildsym_compunit::augment_type_symtab): Update.
5647         (end_symtab_from_static_block): Call free_buildsym_compunit.
5648         (augment_type_symtab, end_symtab, end_expandable_symtab):
5649         Likewise.
5650
5651 2018-07-20  Tom Tromey  <tom@tromey.com>
5652
5653         * arch-utils.c: Do not include buildsym.h.
5654         * mipsread.c: Do not include buildsym.h.
5655         * machoread.c: Do not include buildsym.h.
5656         * elfread.c: Do not include buildsym.h.
5657
5658 2018-07-20  Tom Tromey  <tom@tromey.com>
5659
5660         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5661         initialization.
5662         (buildsym_compunit): Add new constructor.
5663         (struct buildsym_compunit) <get_last_source_file, finish_block,
5664         record_block_range, start_subfile, patch_subfile_names,
5665         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5666         set_last_source_start_addr, get_last_source_start_addr,
5667         get_local_using_directives, set_local_using_directives,
5668         get_global_using_directives, outermost_context_p,
5669         get_current_context_stack, get_context_stack_depth,
5670         get_current_subfile, get_local_symbols, get_file_symbols,
5671         get_global_symbols, record_debugformat, record_producer,
5672         push_context, pop_context, end_symtab_get_static_block,
5673         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5674         New public methods.
5675         <record_pending_block, finish_block_internal, make_blockvector,
5676         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5677         private methods.
5678         Update all users.
5679
5680 2018-05-22  Tom Tromey  <tom@tromey.com>
5681
5682         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5683         parameter.
5684         (finish_block_internal): Update.
5685
5686 2018-07-20  Tom Tromey  <tom@tromey.com>
5687
5688         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5689         parameter.
5690         (finish_block_internal): Update.
5691
5692 2018-07-20  Tom Tromey  <tom@tromey.com>
5693
5694         * buildsym.h (EXTERN): Don't define or undef.
5695         * buildsym.c (EXTERN): Don't define.
5696
5697 2018-07-20  Tom Tromey  <tom@tromey.com>
5698
5699         * buildsym.c: Remove TODO comment.
5700
5701 2018-07-20  Tom Tromey  <tom@tromey.com>
5702
5703         * coffread.c (coff_symtab_read): Update.
5704         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5705         (xcoff_new_init): Update.
5706         * mipsread.c (mipscoff_new_init): Update.
5707         * mdebugread.c (mdebug_build_psymtabs): Update.
5708         * elfread.c (elf_new_init): Update.
5709         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5710         Update.
5711         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5712         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5713         (stabsect_build_psymtabs): Update.
5714         * buildsym.h (buildsym_init): Don't declare.
5715         * buildsym.c: Update comment.
5716         (prepare_for_building): Remove.
5717         (start_symtab, restart_symtab): Update.
5718         (reset_symtab_globals): Update comment.
5719         (buildsym_init): Remove.
5720
5721 2018-07-20  Tom Tromey  <tom@tromey.com>
5722
5723         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5724         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5725         (read_enum_type, common_block_start, common_block_end)
5726         (cleanup_undefined_types_1, finish_global_stabs): Update.
5727         * mdebugread.c (psymtab_to_symtab_1): Update.
5728         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5729         (read_lexical_block_scope, new_symbol): Update.
5730         * dbxread.c (process_one_symbol): Update.
5731         * coffread.c (coff_symtab_read, process_coff_symbol)
5732         (coff_read_enum_type): Update.
5733         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5734         declare.
5735         (get_local_symbols, get_file_symbols, get_global_symbols): New
5736         functions.
5737         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5738         m_global_symbols.
5739         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5740         (~scoped_free_pendings): Update.
5741         (finish_block, prepare_for_building, reset_symtab_globals)
5742         (end_symtab_get_static_block, end_symtab_with_blockvector)
5743         (augment_type_symtab, push_context): Update.
5744         (get_local_symbols, get_file_symbols, get_global_symbols): New
5745         functions.
5746         (buildsym_init): Update.
5747
5748 2018-07-20  Tom Tromey  <tom@tromey.com>
5749
5750         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5751         (process_full_type_unit): Likewise.
5752         (dwarf2_start_symtab): Set list_in_scope.
5753
5754 2018-07-20  Tom Tromey  <tom@tromey.com>
5755
5756         * dwarf2read.c (process_psymtab_comp_unit_reader)
5757         (build_type_psymtabs_reader): Do not set list_in_scope.
5758
5759 2018-07-20  Tom Tromey  <tom@tromey.com>
5760
5761         * buildsym.c (free_pendings): Remove.
5762         (add_symbol_to_list, scoped_free_pendings)
5763         (finish_block_internal, buildsym_init): Update.
5764
5765 2018-07-20  Tom Tromey  <tom@tromey.com>
5766
5767         * xcoffread.c (read_xcoff_symtab): Update.
5768         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5769         Update.
5770         * dbxread.c (process_one_symbol): Update.
5771         * coffread.c (coff_symtab_read): Update.
5772         * buildsym.h (finish_block): Update.
5773         * buildsym.c (finish_block): Remove "listhead" argument.
5774         (end_symtab_get_static_block): Update.
5775
5776 2018-07-20  Tom Tromey  <tom@tromey.com>
5777
5778         * buildsym.h (class scoped_free_pendings): Remove constructor.
5779         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5780         method.
5781         <m_pending_block_obstack, m_pending_blocks>: New members.
5782         (pending_block_obstack, pending_blocks): Remove.
5783         (scoped_free_pendings::scoped_free_pendings): Default.
5784         (~scoped_free_pendings): Update.
5785         (free_pending_blocks): Remove.
5786         (finish_block_internal, record_pending_block, make_blockvector)
5787         (end_symtab_get_static_block, augment_type_symtab, push_context)
5788         (buildsym_init): Update.
5789
5790 2018-07-20  Tom Tromey  <tom@tromey.com>
5791
5792         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5793         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5794         members.
5795         (pending_addrmap, pending_addrmap_obstack)
5796         (pending_addrmap_interesting): Remove.
5797         (scoped_free_pendings, record_block_range, make_blockvector)
5798         (prepare_for_building, reset_symtab_globals, buildsym_init):
5799         Update.
5800
5801 2018-07-20  Tom Tromey  <tom@tromey.com>
5802
5803         * xcoffread.c (process_linenos): Update.
5804         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5805         * mdebugread.c (psymtab_to_symtab_1): Update.
5806         * dwarf2read.c (setup_type_unit_groups)
5807         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5808         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5809         * dbxread.c (process_one_symbol): Update.
5810         * coffread.c (coff_symtab_read, enter_linenos)
5811         (process_coff_symbol): Update.
5812         * buildsym.h (current_subfile): Don't declare.
5813         (get_current_subfile): Declare.
5814         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5815         member.
5816         (start_subfile, free_buildsym_compunit, push_subfile)
5817         (prepare_for_building, start_symtab): Update.
5818         (get_current_subfile): New function.
5819
5820 2018-07-20  Tom Tromey  <tom@tromey.com>
5821
5822         * coffread.c (coff_symtab_read): Update.
5823         * xcoffread.c (read_xcoff_symtab): Update.
5824         * dwarf2read.c (new_symbol): Update.
5825         (read_func_scope, read_lexical_block_scope): Update.
5826         * dbxread.c (process_one_symbol): Update.
5827         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5828         (outermost_context_p): Remove macro.
5829         (outermost_context_p, get_current_context_stack)
5830         (get_context_stack_depth): Declare.
5831         (pop_context): Return struct context_stack.
5832         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5833         member.
5834         (context_stack_size): Remove.
5835         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5836         (prepare_for_building, end_symtab_get_static_block)
5837         (augment_type_symtab, push_context): Update.
5838         (pop_context): Return struct context_stack.
5839         (outermost_context_p, get_current_context_stack)
5840         (get_context_stack_depth): New functions.
5841         (buildsym_init): Update.
5842
5843 2018-07-20  Tom Tromey  <tom@tromey.com>
5844
5845         * rust-exp.y: Now a pure parser.  Update all rules.
5846         (%union): Move earlier.
5847         (current_parser, work_obstack): Remove globals.
5848         (rust_parser, ~rust_parser): Update.
5849         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5850         lex_character, lex_number, lex_string, lex_identifier,
5851         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5852         convert_name, convert_params_to_expression,
5853         convert_ast_to_expression, ast_basic_type, ast_operation,
5854         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5855         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5856         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5857         ast_array_type, ast_slice_type, ast_reference_type,
5858         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5859         (rust_parse): Update.
5860         (rustyyerror, rustyylex): Add parser parameter.
5861         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5862         (rust_lex_stringish_test, rust_lex_test_sequence)
5863         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5864         (rust_lex_test_push_back, rust_lex_tests): Update.
5865
5866 2018-07-19  Pedro Alves  <palves@redhat.com>
5867
5868         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5869         gdb::unique_xmalloc_ptr.
5870         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5871         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5872         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5873         copy-initialization.
5874         * guile/scm-pretty-print.c (ppscm_print_children): Use
5875         gdb::unique_xmalloc_ptr instead of cleanups.
5876         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5877         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5878         gdb::unique_xmalloc_ptr.
5879         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5880         Adjust to use gdb::unique_xmalloc_ptr.
5881         * guile/scm-utils.c (extract_arg): Adjust.
5882         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5883         gdb::unique_xmalloc_ptr instead of a cleanup.
5884
5885 2018-07-19  Tom Tromey  <tom@tromey.com>
5886
5887         * utils.c (do_value_free_to_mark)
5888         (make_cleanup_value_free_to_mark): Remove.
5889         * utils.h (make_cleanup_value_free_to_mark): Remove.
5890
5891 2018-07-19  Pedro Alves  <palves@redhat.com>
5892
5893         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5894         forwarding reference.
5895
5896 2018-07-18  Pedro Alves  <palves@redhat.com>
5897
5898         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5899         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5900         cleanup.
5901
5902 2018-07-18  Pedro Alves  <palves@redhat.com>
5903
5904         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5905         exceptions.
5906         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5907         (gdbscm_wrap): New.
5908         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5909         directly instead of a cleanup.
5910         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5911         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5912         (vlscm_binop_gdbthrow): New, factored out from ...
5913         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5914         (vlscm_rich_compare): Use gdbscm_wrap.
5915         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5916         instead of a cleanup.
5917         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5918         cleanup.
5919         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5920         Use xfree directly instead of a cleanup.
5921         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5922         Adjust to use gdbscm_wrap and scoped_value_mark.
5923         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5924         (gdbscm_value_address, gdbscm_value_dereference)
5925         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5926         scoped_value_mark.
5927         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5928         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5929         scoped_value_mark.
5930         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5931         gdbscm_wrap and scoped_value_mark.
5932         (gdbscm_value_to_string): Use xfree directly instead of a
5933         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5934         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5935         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5936         scoped_value_mark.
5937         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5938         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5939         scoped_value_mark.
5940         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5941         gdbscm_wrap.
5942
5943 2018-07-18  Tom de Vries  <tdevries@suse.de>
5944
5945         * findvar.c (default_read_var_value): Also resolve dynamic type for
5946         LOC_OPTIMIZED_OUT vars.
5947
5948 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5949
5950         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5951         decoding.
5952
5953 2018-07-17  Tom Tromey  <tom@tromey.com>
5954
5955         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5956         (compute_enum_list, pascm_set_param_value_x)
5957         (gdbscm_parameter_value): Update.
5958         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5959         (gdbscm_scm_to_host_string): Update.
5960         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5961         Update.
5962         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5963         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5964         * guile/scm-string.c (gdbscm_scm_to_string): Return
5965         unique_xmalloc_ptr.
5966         (gdbscm_scm_to_host_string): Likewise.
5967
5968 2018-07-17  Tom Tromey  <tom@tromey.com>
5969
5970         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5971         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5972         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5973         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5974         unique_xmalloc_ptr.
5975
5976 2018-07-17  Tom Tromey  <tom@tromey.com>
5977
5978         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5979         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5980         Update.
5981         * guile/scm-cmd.c (cmdscm_function): Update.
5982         * guile/scm-pretty-print.c
5983         (ppscm_print_exception_unless_memory_error): Update.
5984         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5985         Return unique_xmalloc_ptr.
5986
5987 2018-07-17  Tom Tromey  <tom@tromey.com>
5988
5989         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5990         Use string_printf.
5991
5992 2018-07-17  Jim Wilson  <jimw@sifive.com>
5993
5994         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5995         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5996         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5997         unecessary braces after EF_RISCV_RVC test.  Delete call to
5998         set_gdbarch_decr_pc_after_break.
5999
6000         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6001         RISCV_LAST_FP_REGNUM + 1.
6002         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6003
6004 2018-07-17  Tom Tromey  <tom@tromey.com>
6005
6006         * configure.ac: Remove --disable-gdbcli.
6007         * configure: Rebuild.
6008         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6009         (SUBDIR_CLI_CFLAGS): Remove.
6010         (SFILES): Use SUBDIR_CLI_SRCS.
6011         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6012
6013 2018-07-17  Tom Tromey  <tom@tromey.com>
6014
6015         PR gdb/18624:
6016         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6017
6018 2018-07-16  Jim Wilson  <jimw@sifive.com>
6019
6020         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6021
6022 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6023
6024         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6025         variable.
6026         (libunwind_frame_sniffer): Likewise.
6027         (libunwind_frame_prev_register): Likewise.
6028         (libunwind_sigtramp_frame_sniffer): Likewise.
6029         * ia64-tdep.c (ia64_access_reg): Likewise.
6030         (ia64_access_rse_reg): Likewise.
6031         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6032         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6033
6034 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6035
6036         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6037
6038 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6039
6040         * remote-sim.c (gdbsim_target::close,
6041         gdbsim_target::mourn_inferior): Remove unused variables.
6042
6043 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6044
6045         * ia64-tdep.c (ktab_buf): New global.
6046         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6047         (get_kernel_table): Adjust.
6048
6049 2018-07-16  Tom Tromey  <tom@tromey.com>
6050
6051         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6052         * dwarf2read.c (using_directives, new_symbol): Use
6053         outermost_context_p.
6054         * dbxread.c (process_one_symbol): Use outermost_context_p.
6055         * coffread.c (coff_symtab_read): Use outermost_context_p.
6056
6057 2018-07-16  Tom Tromey  <tom@tromey.com>
6058
6059         * dwarf2read.c (using_directives, read_func_scope)
6060         (read_lexical_block_scope): Update.
6061         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6062         * buildsym.h (local_using_directives, global_using_directives):
6063         Don't declare.
6064         (get_local_using_directives, set_local_using_directives)
6065         (get_global_using_directives): Declare.
6066         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6067         m_global_using_directives>: New members.
6068         (finish_block_internal, prepare_for_building)
6069         (reset_symtab_globals, end_symtab_get_static_block)
6070         (push_context): Update.
6071         (get_local_using_directives, set_local_using_directives)
6072         (get_global_using_directives): New functions.
6073         (buildsym_init): Update.
6074
6075 2018-07-16  Tom Tromey  <tom@tromey.com>
6076
6077         * xcoffread.c (xcoff_initial_scan): Don't call
6078         free_pending_blocks.
6079         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6080         * buildsym.h (class scoped_free_pendings): Add constructor.
6081         (free_pending_blocks): Don't declare.
6082         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6083         (free_pending_blocks): Now static.
6084
6085 2018-07-16  Tom Tromey  <tom@tromey.com>
6086
6087         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6088         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6089         member.
6090         (struct subfile_stack): Remove.
6091         (subfile_stack): Remove.
6092         (push_subfile, pop_subfile, buildsym_init): Update.
6093
6094 2018-07-16  Tom Tromey  <tom@tromey.com>
6095
6096         * buildsym.c (push_subfile): Use gdb_assert.
6097         (pop_subfile): Use gdb_assert.
6098
6099 2018-07-16  Tom Tromey  <tom@tromey.com>
6100
6101         * buildsym.h (merge_symbol_lists): Remove.
6102         * buildsym.c (merge_symbol_lists): Remove.
6103
6104 2018-07-16  Tom Tromey  <tom@tromey.com>
6105
6106         * stabsread.c (scan_file_globals): Update comment.
6107         * stabsread.h (scan_file_globals): Move from buildsym.h.
6108         * buildsym.h (scan_file_globals): Move to stabsread.h.
6109
6110 2018-07-16  Tom Tromey  <tom@tromey.com>
6111
6112         * xcoffread.c (xcoff_new_init): Update.
6113         * mipsread.c (mipscoff_new_init): Update.
6114         * mdebugread.c (mdebug_build_psymtabs): Update.
6115         * elfread.c (elf_new_init): Update.
6116         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6117         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6118         * buildsym.h (buildsym_new_init): Don't declare.
6119         * buildsym.c (buildsym_new_init): Remove.
6120
6121 2018-07-16  Tom Tromey  <tom@tromey.com>
6122
6123         * stabsread.h (within_function): Move from buildsym.h.
6124         * stabsread.c (start_stabs): Clear within_function.
6125         * coffread.c (coff_start_symtab): Clear within_function.
6126         * buildsym.h (within_function): Move to stabsread.h.
6127         * buildsym.c (prepare_for_building): Update.
6128
6129 2018-07-16  Tom Tromey  <tom@tromey.com>
6130
6131         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6132         * dwarf2read.c (dwarf2_start_symtab): Don't set
6133         processing_gcc_compilation.
6134         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6135
6136 2018-07-16  Tom Tromey  <tom@tromey.com>
6137
6138         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6139         (next_symbol_text_func): Move from buildsym.h.
6140         * stabsread.c (hashname): Move from buildsym.c.
6141         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6142         (next_symbol_text_func, hashname): Move to stabsread.h.
6143         * buildsym.c: Don't include bcache.h
6144         (hashname): Move to stasbread.c.
6145
6146 2018-07-16  Tom Tromey  <tom@tromey.com>
6147
6148         * buildsym.h (context_stack_size): Don't declare.
6149         * buildsym.c (context_stack_size): New global.
6150
6151 2018-07-16  Tom Tromey  <tom@tromey.com>
6152
6153         * dbxread.c (processing_acc_compilation): New global.
6154         * buildsym.h (processing_acc_compilation): Don't declare.
6155
6156 2018-07-16  Tom Tromey  <tom@tromey.com>
6157
6158         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6159         * dbxread.c (read_ofile_symtab): Update.
6160         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6161         * buildsym.h (last_source_start_addr): Remove.
6162         (set_last_source_start_addr, get_last_source_start_addr):
6163         Declare.
6164         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6165         parameter.
6166         (struct buildsym_compunit) <m_last_source_start_addr>: New
6167         member.
6168         (prepare_for_building): Remove start_addr parameter.
6169         (start_symtab, restart_symtab, end_symtab_get_static_block)
6170         (end_symtab_with_blockvector): Update.
6171         (set_last_source_start_addr, get_last_source_start_addr): New
6172         functions.
6173
6174 2018-07-16  Tom Tromey  <tom@tromey.com>
6175
6176         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6177         member.
6178         (have_line_numbers): Remove.
6179         (record_line, prepare_for_building, end_symtab_get_static_block)
6180         (augment_type_symtab): Update.
6181
6182 2018-07-16  Tom Tromey  <tom@tromey.com>
6183
6184         * buildsym.c (~buildsym_compunit): Free the macro table.
6185         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6186         methods.
6187         <m_pending_macros>: New member.
6188         (pending_macros): Remove.
6189         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6190         (reset_symtab_globals, end_symtab_get_static_block)
6191         (end_symtab_with_blockvector, augment_type_symtab)
6192         (buildsym_init): Update.
6193
6194 2018-07-16  Tom Tromey  <tom@tromey.com>
6195
6196         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6197         parameter.
6198         (buildsym_compunit::set_last_source_file): New method.
6199         <m_last_source_file>: New member.
6200         (prepare_for_building): Remove "name" parameter.
6201         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6202         (last_source_file): Remove.
6203         (set_last_source_file, get_last_source_file): Update.
6204
6205 2018-07-16  Tom Tromey  <tom@tromey.com>
6206
6207         * buildsym.c (prepare_for_building): Add assert.
6208
6209 2018-07-16  Tom Tromey  <tom@tromey.com>
6210
6211         * buildsym.c (~buildsym_compunit): Update.
6212         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6213         (start_subfile, patch_subfile_names)
6214         (end_symtab_with_blockvector): Update.
6215
6216 2018-07-16  Tom Tromey  <tom@tromey.com>
6217
6218         * buildsym.c (struct buildsym_compunit): Add constructor,
6219         destructor, initializers.
6220         (start_buildsym_compunit): Remove.
6221         (free_buildsym_compunit): Use "delete".
6222         (start_symtab, restart_symtab): Use "new".
6223
6224 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6225
6226         * symfile.c (set_objfile_default_section_offset): Remove struct
6227         keyword.
6228
6229 2018-07-14  Stafford Horne  <shorne@gmail.com>
6230
6231         * (Responsible Maintainers): Add myself as or1k maintainer.
6232
6233 2018-07-13  Tom Tromey  <tom@tromey.com>
6234
6235         * symfile.c (set_objfile_default_section_offset): Use extra braces
6236         around initializer.
6237
6238 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6239
6240         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6241         non-branching basr.
6242
6243 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6244
6245         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6246         unittests/cli-utils-selftests.c
6247         * unittests/cli-utils-selftests.c: New file.
6248
6249 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6250
6251         * NEWS: Mention new commands. Mention change to 'thread apply'.
6252
6253 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6254
6255         * thread.c (thr_try_catch_cmd): New function.
6256         (thread_apply_all_command): Handle qcs flags.
6257         (thread_apply_command): Handle qcs flags.
6258         (taas_command): New function.
6259         (tfaas_command): New function.
6260         (_initialize_thread): Update to setup the new commands 'taas
6261         and 'tfaas'. Change doc string for 'thread apply'.
6262
6263 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6264
6265         * stack.c: (trailing_outermost_frame): New function, mostly
6266         extracted from backtrace_command_1.
6267         (leading_innermost_frame): New function.
6268         (backtrace_command_1): Update to call trailing_outermost_frame.
6269         (frame_apply_command_count): New function.
6270         (frame_apply_level_command): New function.
6271         (frame_apply_all_command): New function.
6272         (frame_apply_command): New function.
6273         (faas_command): New function.
6274         (frame_cmd_list): New variable.
6275         (_initialize_stack): Update to setup the new commands 'frame apply'
6276         and 'faas'.
6277
6278 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6279
6280         * cli-utils.c (number_or_range_parser::get_number): Only handle
6281         numbers or convenience var as numbers.
6282         (parse_flags): New function.
6283         (parse_flags_qcs): New function.
6284         (number_or_range_parser::finished): Ensure parsing end is detected
6285         before end of string.
6286         * cli-utils.h (parse_flags): New function.
6287         (parse_flags_qcs): New function.
6288         (number_or_range_parser): Remove m_finished bool.
6289         (number_or_range_parser::skip_range): Set m_in_range to false.
6290
6291 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6292
6293         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6294         on Windows.
6295
6296 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6297             Jan Kratochvil  <jan.kratochvil@redhat.com>
6298             Paul Fertser  <fercerpav@gmail.com>
6299             Tsutomu Seki  <sekiriki@gmail.com>
6300             Pedro Alves  <palves@redhat.com>
6301
6302         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6303         'unittests/parse-connection-spec-selftests.c'.
6304         (COMMON_SFILES): Add 'common/netstuff.c'.
6305         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6306         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6307         * common/netstuff.c: New file.
6308         * common/netstuff.h: New file.
6309         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6310         (wait_for_connect): Update comment.  New parameter
6311         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6312         Use 'sock' directly instead of 'scb->fd'.
6313         (try_connect): New function, with code from 'net_open'.
6314         (net_open): Rewrite main loop to deal with multiple
6315         sockets/addresses.  Handle IPv6-style hostnames; implement
6316         support for IPv6 connections.
6317         * unittests/parse-connection-spec-selftests.c: New file.
6318
6319 2018-07-11  Pedro Alves  <palves@redhat.com>
6320
6321         PR gdb/23377
6322         * remote.c (remote_target::remote_detach_pid): Call
6323         set_current_process.
6324
6325 2018-07-11  Pedro Alves  <palves@redhat.com>
6326
6327         * h8300-tdep.c (h8300_gdbarch_init): Remove
6328         set_gdbarch_ecoff_reg_to_regnum calls.
6329
6330 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6331
6332         PR c++/23373
6333         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6334         offsets/sizes for static members of a class/struct.
6335
6336 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6337
6338         * target-descriptions.c (tdesc_register_bitsize): Rename.
6339         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6340         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6341         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6342
6343 2018-07-10  Tom Tromey  <tom@tromey.com>
6344
6345         * breakpoint.c (moribund_locations): Now static and a
6346         std::vector.
6347         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6348         (build_bpstat_chain, update_global_location_list)
6349         (breakpoint_retire_moribund): Update.
6350         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6351         VEC.
6352
6353 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6354
6355         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6356         (riscv_register_reggroup_p): Use new function, remove unneeded
6357         parenthesis.
6358         (riscv_push_dummy_call): Extend assert to compare against xlen or
6359         flen based on register type.
6360
6361 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6362
6363         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6364
6365 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6366
6367         * remote.c (show_hardware_watchpoint_limit): New function.
6368         (show_hardware_watchpoint_length_limit): New function.
6369         (show_hardware_breakpoint_limit): New function.
6370         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6371         where appropriate, update help text.
6372
6373 2018-07-09  Tom Tromey  <tom@tromey.com>
6374
6375         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6376         (CLIBS): Don't mention NAT_CLIBS.
6377
6378 2018-07-09  Tom Tromey  <tom@tromey.com>
6379
6380         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6381         (LIBGDB_OBS, clean mostlyclean): Update.
6382         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6383
6384 2018-07-09  Tom Tromey  <tom@tromey.com>
6385
6386         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6387         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6388         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6389
6390 2018-07-09  Tom Tromey  <tom@tromey.com>
6391
6392         * Makefile.in (ALLDEPFILES): Remove exec.c.
6393         (COMMON_OBS): Remove exec.o.
6394         (COMMON_SFILES): Add exec.c.
6395
6396 2018-07-09  Tom Tromey  <tom@tromey.com>
6397
6398         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6399
6400 2018-07-09  Tom Tromey  <tom@tromey.com>
6401
6402         * Makefile.in (clean mostlyclean): Remove stamp-version.
6403         (version.c): Depend on stamp-version.
6404         (stamp-version): New rule, from version.c rule.
6405
6406 2018-07-09  Tom Tromey  <tom@tromey.com>
6407
6408         * Makefile.in (init.c): Depend on stamp-init.
6409         (stamp-init): New rule, from init.c rule.
6410         (clean mostlyclean): Remove stamp-init.
6411
6412 2018-07-09  Tom Tromey  <tom@tromey.com>
6413
6414         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6415         SUBDIR_GCC_COMPILE_SRCS.
6416
6417 2018-07-09  Tom Tromey  <tom@tromey.com>
6418
6419         * Makefile.in (init.c): Remove some unused sed rules.
6420
6421 2018-07-09  Tom Tromey  <tom@tromey.com>
6422
6423         * Makefile.in (TSOBS): Remove.
6424         (INIT_FILES): Update.
6425         (LIBGDB_OBS): Update.
6426         (COMMON_SFILES): Add inflow.c.
6427         (SFILES): Remove inflow.c.
6428
6429 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6430
6431         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6432
6433 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6434
6435         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6436         get_saveloc_name, is_signal_frame_name, step_name,
6437         init_remote_name, create_addr_space_name,
6438         destroy_addr_space_name, search_unwind_table_name,
6439         find_dyn_list_name): Constify.
6440
6441 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6442
6443         * darwin-nat.c (darwin_pthread_kill): New function.
6444         (darwin_resume_thread): Use darwin_pthread_kill.
6445
6446 2018-07-05  Tom de Vries  <tdevries@suse.de>
6447
6448         * macroexp.c (macro_buffer) <operator=>: New member function.
6449
6450 2018-07-04  Tom Tromey  <tom@tromey.com>
6451
6452         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6453
6454 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6455
6456         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6457         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6458         * maint.c: Likewise.
6459         * top.c: Likewise.
6460
6461 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6462
6463         * NEWS: Create a new section for the next release branch.
6464         Rename the section of the current branch, now that it has
6465         been cut.
6466
6467 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6468
6469         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6470         * version.in: Bump version to 8.2.50.DATE-git.
6471
6472 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6473             Pedro Alves  <palves@redhat.com>
6474
6475         * linux-nat.c (linux_init_ptrace): Rename to ...
6476         (linux_init_ptrace_procfs): ... this.  Call
6477         linux_proc_init_warnings.
6478         (linux_nat_target::post_attach)
6479         (linux_nat_target::post_startup_inferior): Adjust.
6480         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6481         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6482
6483 2018-07-04  Tom de Vries  <tdevries@suse.de>
6484
6485         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6486         check ...
6487         (read_comp_unit_head): ... here.
6488
6489 2018-07-03  Tom Tromey  <tom@tromey.com>
6490
6491         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6492         (stop_tracing, tstatus_command)
6493         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6494         (print_one_static_tracepoint_marker): Update.
6495         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6496         std::vector.
6497         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6498         VEC.
6499         (all_tracepoints, static_tracepoints_here): Return std::vector.
6500
6501 2018-07-03  Tom Tromey  <tom@tromey.com>
6502
6503         * common/ptid.c (ptid_equal): Remove.
6504         * common/ptid.h (ptid_equal): Don't declare.
6505         * ada-tasks.c: Update.
6506         * breakpoint.c: Update.
6507         * common/agent.c: Update.
6508         * corelow.c: Update.
6509         * darwin-nat-info.c: Update.
6510         * darwin-nat.c: Update.
6511         * dcache.c: Update.
6512         * dtrace-probe.c: Update.
6513         * dummy-frame.c: Update.
6514         * fbsd-nat.c: Update.
6515         * frame.c: Update.
6516         * gdbthread.h: Update.
6517         * gnu-nat.c: Update.
6518         * go32-nat.c: Update.
6519         * inf-loop.c: Update.
6520         * inf-ptrace.c: Update.
6521         * infcall.c: Update.
6522         * infcmd.c: Update.
6523         * inflow.c: Update.
6524         * infrun.c: Update.
6525         * linux-fork.c: Update.
6526         * linux-nat.c: Update.
6527         * linux-thread-db.c: Update.
6528         * mi/mi-cmd-var.c: Update.
6529         * mi/mi-interp.c: Update.
6530         * mi/mi-main.c: Update.
6531         * nto-procfs.c: Update.
6532         * ppc-linux-tdep.c: Update.
6533         * procfs.c: Update.
6534         * python/py-inferior.c: Update.
6535         * python/py-record-btrace.c: Update.
6536         * python/py-record.c: Update.
6537         * ravenscar-thread.c: Update.
6538         * regcache.c: Update.
6539         * remote-sim.c: Update.
6540         * remote.c: Update.
6541         * sol-thread.c: Update.
6542         * solib.c: Update.
6543         * target.c: Update.
6544         * tui/tui-stack.c: Update.
6545         * varobj.c: Update.
6546         * windows-nat.c: Update.
6547         * windows-tdep.c: Update.
6548
6549 2018-07-03  Tom Tromey  <tom@tromey.com>
6550
6551         * common/ptid.c (ptid_match): Remove.
6552         * common/ptid.h (ptid_match): Don't declare.
6553         * fbsd-nat.c: Update.
6554         * infcmd.c: Update.
6555         * infrun.c: Update.
6556         * linux-nat.c: Update.
6557         * record-btrace.c: Update.
6558         * regcache.c: Update.
6559         * remote.c: Update.
6560
6561 2018-07-03  Tom Tromey  <tom@tromey.com>
6562
6563         * common/ptid.c (ptid_tid_p): Remove.
6564         * common/ptid.h (ptid_tid_p): Don't declare.
6565         * sol-thread.c: Update.
6566
6567 2018-07-03  Tom Tromey  <tom@tromey.com>
6568
6569         * common/ptid.c (ptid_lwp_p): Remove.
6570         * common/ptid.h (ptid_lwp_p): Don't declare.
6571         * fbsd-nat.c: Update.
6572         * linux-nat.c: Update.
6573         * nat/linux-procfs.c: Update.
6574         * nat/x86-linux-dregs.c: Update.
6575         * sol-thread.c: Update.
6576
6577 2018-07-03  Tom Tromey  <tom@tromey.com>
6578
6579         * common/ptid.c (ptid_is_pid): Remove.
6580         * common/ptid.h (ptid_is_pid): Don't declare.
6581         * infrun.c: Update.
6582         * linux-nat.c: Update.
6583         * mi/mi-interp.c: Update.
6584         * remote.c: Update.
6585         * thread.c: Update.
6586
6587 2018-07-03  Tom Tromey  <tom@tromey.com>
6588
6589         * common/ptid.c (ptid_get_tid): Remove.
6590         * common/ptid.h (ptid_get_tid): Don't declare.
6591         * ada-tasks.c: Update.
6592         * aix-thread.c: Update.
6593         * bsd-uthread.c: Update.
6594         * darwin-nat.c: Update.
6595         * fbsd-nat.c: Update.
6596         * i386-darwin-nat.c: Update.
6597         * infrun.c: Update.
6598         * linux-tdep.c: Update.
6599         * nto-procfs.c: Update.
6600         * ppc-ravenscar-thread.c: Update.
6601         * python/py-infthread.c: Update.
6602         * ravenscar-thread.c: Update.
6603         * sol-thread.c: Update.
6604         * sparc-ravenscar-thread.c: Update.
6605         * windows-nat.c: Update.
6606
6607 2018-07-03  Tom Tromey  <tom@tromey.com>
6608
6609         * common/ptid.c (ptid_get_lwp): Remove.
6610         * common/ptid.h (ptid_get_lwp): Don't declare.
6611         * aarch64-linux-nat.c: Update.
6612         * ada-tasks.c: Update.
6613         * aix-thread.c: Update.
6614         * amd64-linux-nat.c: Update.
6615         * arm-linux-nat.c: Update.
6616         * corelow.c: Update.
6617         * fbsd-nat.c: Update.
6618         * fbsd-tdep.c: Update.
6619         * gnu-nat.c: Update.
6620         * i386-cygwin-tdep.c: Update.
6621         * i386-gnu-nat.c: Update.
6622         * i386-linux-nat.c: Update.
6623         * ia64-linux-nat.c: Update.
6624         * inf-ptrace.c: Update.
6625         * infrun.c: Update.
6626         * linux-fork.c: Update.
6627         * linux-nat.c: Update.
6628         * linux-tdep.c: Update.
6629         * linux-thread-db.c: Update.
6630         * mips-linux-nat.c: Update.
6631         * nat/aarch64-linux-hw-point.c: Update.
6632         * nat/aarch64-linux.c: Update.
6633         * nat/linux-btrace.c: Update.
6634         * nat/linux-osdata.c: Update.
6635         * nat/linux-procfs.c: Update.
6636         * nat/x86-linux-dregs.c: Update.
6637         * obsd-nat.c: Update.
6638         * ppc-fbsd-nat.c: Update.
6639         * ppc-linux-nat.c: Update.
6640         * procfs.c: Update.
6641         * python/py-infthread.c: Update.
6642         * ravenscar-thread.c: Update.
6643         * remote.c: Update.
6644         * s390-linux-nat.c: Update.
6645         * sol-thread.c: Update.
6646         * sol2-tdep.c: Update.
6647         * spu-linux-nat.c: Update.
6648         * x86-linux-nat.c: Update.
6649         * xtensa-linux-nat.c: Update.
6650
6651 2018-07-03  Tom Tromey  <tom@tromey.com>
6652
6653         * common/ptid.c (ptid_get_pid): Remove.
6654         * common/ptid.h (ptid_get_pid): Don't declare.
6655         * aarch64-linux-nat.c: Update.
6656         * ada-lang.c: Update.
6657         * aix-thread.c: Update.
6658         * alpha-bsd-nat.c: Update.
6659         * amd64-fbsd-nat.c: Update.
6660         * amd64-linux-nat.c: Update.
6661         * arm-linux-nat.c: Update.
6662         * arm-nbsd-nat.c: Update.
6663         * auxv.c: Update.
6664         * break-catch-syscall.c: Update.
6665         * breakpoint.c: Update.
6666         * bsd-uthread.c: Update.
6667         * corelow.c: Update.
6668         * ctf.c: Update.
6669         * darwin-nat.c: Update.
6670         * fbsd-nat.c: Update.
6671         * fbsd-tdep.c: Update.
6672         * gcore.c: Update.
6673         * gnu-nat.c: Update.
6674         * hppa-nbsd-nat.c: Update.
6675         * hppa-obsd-nat.c: Update.
6676         * i386-fbsd-nat.c: Update.
6677         * ia64-linux-nat.c: Update.
6678         * inf-ptrace.c: Update.
6679         * infcmd.c: Update.
6680         * inferior.c: Update.
6681         * inferior.h: Update.
6682         * inflow.c: Update.
6683         * infrun.c: Update.
6684         * linux-fork.c: Update.
6685         * linux-nat.c: Update.
6686         * linux-tdep.c: Update.
6687         * linux-thread-db.c: Update.
6688         * m68k-bsd-nat.c: Update.
6689         * mi/mi-interp.c: Update.
6690         * mi/mi-main.c: Update.
6691         * mips-linux-nat.c: Update.
6692         * mips-nbsd-nat.c: Update.
6693         * mips64-obsd-nat.c: Update.
6694         * nat/aarch64-linux-hw-point.c: Update.
6695         * nat/aarch64-linux.c: Update.
6696         * nat/linux-btrace.c: Update.
6697         * nat/linux-osdata.c: Update.
6698         * nat/linux-procfs.c: Update.
6699         * nat/x86-linux-dregs.c: Update.
6700         * nto-procfs.c: Update.
6701         * obsd-nat.c: Update.
6702         * ppc-linux-nat.c: Update.
6703         * ppc-nbsd-nat.c: Update.
6704         * ppc-obsd-nat.c: Update.
6705         * proc-service.c: Update.
6706         * procfs.c: Update.
6707         * python/py-inferior.c: Update.
6708         * python/py-infthread.c: Update.
6709         * ravenscar-thread.c: Update.
6710         * record.c: Update.
6711         * remote-sim.c: Update.
6712         * remote.c: Update.
6713         * rs6000-nat.c: Update.
6714         * s390-linux-nat.c: Update.
6715         * sh-nbsd-nat.c: Update.
6716         * sol-thread.c: Update.
6717         * sparc-nat.c: Update.
6718         * sparc64-tdep.c: Update.
6719         * spu-linux-nat.c: Update.
6720         * spu-tdep.c: Update.
6721         * target-debug.h: Update.
6722         * target.c: Update.
6723         * thread.c: Update.
6724         * tid-parse.c: Update.
6725         * tracefile-tfile.c: Update.
6726         * vax-bsd-nat.c: Update.
6727         * windows-nat.c: Update.
6728         * x86-linux-nat.c: Update.
6729         * x86-nat.c: Update.
6730
6731 2018-07-03  Tom Tromey  <tom@tromey.com>
6732
6733         * common/ptid.c (pid_to_ptid): Remove.
6734         * common/ptid.h (pid_to_ptid): Don't declare.
6735         * aix-thread.c: Update.
6736         * arm-linux-nat.c: Update.
6737         * common/ptid.c: Update.
6738         * common/ptid.h: Update.
6739         * corelow.c: Update.
6740         * ctf.c: Update.
6741         * darwin-nat.c: Update.
6742         * fbsd-nat.c: Update.
6743         * fork-child.c: Update.
6744         * gnu-nat.c: Update.
6745         * go32-nat.c: Update.
6746         * inf-ptrace.c: Update.
6747         * infcmd.c: Update.
6748         * inferior.c: Update.
6749         * infrun.c: Update.
6750         * linux-fork.c: Update.
6751         * linux-nat.c: Update.
6752         * nat/aarch64-linux-hw-point.c: Update.
6753         * nat/fork-inferior.c: Update.
6754         * nat/x86-linux-dregs.c: Update.
6755         * nto-procfs.c: Update.
6756         * obsd-nat.c: Update.
6757         * procfs.c: Update.
6758         * progspace.c: Update.
6759         * remote.c: Update.
6760         * rs6000-nat.c: Update.
6761         * s390-linux-nat.c: Update.
6762         * sol-thread.c: Update.
6763         * spu-linux-nat.c: Update.
6764         * target.c: Update.
6765         * top.c: Update.
6766         * tracefile-tfile.c: Update.
6767         * windows-nat.c: Update.
6768
6769 2018-07-03  Tom Tromey  <tom@tromey.com>
6770
6771         * common/ptid.h (ptid_build): Don't declare.
6772         * common/ptid.c (ptid_build): Remove.
6773         * aix-thread.c: Update.
6774         * bsd-kvm.c: Update.
6775         * bsd-uthread.c: Update.
6776         * common/agent.c: Update.
6777         * common/ptid.c: Update.
6778         * common/ptid.h: Update.
6779         * corelow.c: Update.
6780         * darwin-nat.c: Update.
6781         * fbsd-nat.c: Update.
6782         * gnu-nat.c: Update.
6783         * linux-fork.c: Update.
6784         * linux-nat.c: Update.
6785         * linux-thread-db.c: Update.
6786         * nat/linux-osdata.c: Update.
6787         * nat/linux-procfs.c: Update.
6788         * nto-procfs.c: Update.
6789         * obsd-nat.c: Update.
6790         * proc-service.c: Update.
6791         * procfs.c: Update.
6792         * ravenscar-thread.c: Update.
6793         * remote-sim.c: Update.
6794         * remote.c: Update.
6795         * sol-thread.c: Update.
6796         * target.c: Update.
6797         * windows-nat.c: Update.
6798
6799 2018-07-03  Tom Tromey  <tom@tromey.com>
6800
6801         * infrun.c (follow_exec): Use exit_inferior_silent.
6802         * inferior.c (exit_inferior_num_silent): Remove.
6803         * inferior.h (exit_inferior_num_silent): Don't declare.
6804
6805 2018-07-03  Tom Tromey  <tom@tromey.com>
6806
6807         PR cli/23340:
6808         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6809         inferior_ptid on error.
6810
6811 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6812             Simon Marchi  <simon.marchi@polymtl.ca>
6813
6814         PR tdep/8282
6815         * disasm.h (gdb_disassembler): Add
6816         `m_disassembler_options_holder'. member
6817         * disasm.c (get_all_disassembler_options): New function.
6818         (gdb_disassembler::gdb_disassembler): Use it.
6819         (gdb_buffered_insn_length_init_dis): Likewise.
6820         (gdb_buffered_insn_length): Adjust accordingly.
6821         (set_disassembler_options): Handle options with arguments.
6822         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6823         line if showing options with descriptions.
6824         (disassembler_options_completer): Adapt to using the
6825         `disasm_options_and_args_t' structure.
6826         * mips-tdep.c (mips_disassembler_options): New variable.
6827         (mips_disassembler_options_o32): Likewise.
6828         (mips_disassembler_options_n32): Likewise.
6829         (mips_disassembler_options_n64): Likewise.
6830         (gdb_print_insn_mips): Don't set `disassembler_options'.
6831         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6832         functions.
6833         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6834         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6835         `gdbarch_disassembler_options_implicit' and
6836         `gdbarch_valid_disassembler_options'.
6837         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6838         `disasm_options_and_args_t' structure.
6839         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6840         method.
6841         (valid_disassembler_options): Switch from `disasm_options_t' to
6842         the `disasm_options_and_args_t' structure.
6843         * NEWS: Document `set disassembler-options' support for the MIPS
6844         target.
6845         * gdbarch.h: Regenerate.
6846         * gdbarch.c: Regenerate.
6847
6848 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6849
6850         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6851
6852 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6853
6854         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6855         parameter in call to amd64_target_description.
6856         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6857         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6858         (amd64fbsd_init_abi): Likewise.
6859         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6860         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6861         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6862         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6863
6864 2018-06-29  Pedro Alves  <palves@redhat.com>
6865
6866         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6867         "segments" parameter.
6868         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6869         (_initialize_amd64_tdep): Update call to
6870         amd64_create_target_description.
6871         (amd64_target_description): Add "segments" parameter.  Adjust
6872         the implementation to use it.
6873         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6874         call to amd64_create_target_description.
6875         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6876         * gdb/arch/amd64.h (amd64_create_target_description): Add
6877         "segments" register.
6878         * gdb/arch/amd64.c (amd64_create_target_description): Add
6879         "segments" parameter.  Call create_feature_i386_64bit_segments
6880         only if SEGMENTS is true.
6881         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6882         call to amd64_create_target_description.
6883
6884 2018-06-29  Pedro Alves  <palves@redhat.com>
6885
6886         * thread.c (thread_target_id_str): New, factored out from ...
6887         (print_thread_info_1): ... here.  Use it to compute the max
6888         "Target Id" column width.
6889
6890 2018-06-29  Pedro Alves  <palves@redhat.com>
6891
6892         * remote.c (remote_target::extra_thread_info): Delete
6893         'display_buf' and 'n' locals.  from the cache, regardless of
6894         packet mechanims is in use.  Use cache for qThreadExtra and qP
6895         methods too.
6896
6897 2018-06-29  Pedro Alves  <palves@redhat.com>
6898
6899         * blockframe.c (find_pc_sect_containing_function): New function.
6900         * breakpoint.c (print_breakpoint_location): Don't call
6901         find_pc_sect_function.
6902         * linespec.c (create_sals_line_offset): Record the location's
6903         symbol in the sal.
6904         * linespec.c (convert_address_location_to_sals): Fill in sal's
6905         symbol with find_pc_sect_containing_function.
6906         * symtab.c (find_function_start_sal): Rename to ...
6907         (find_function_start_sal_1): ... this.
6908         (find_function_start_sal): Reimplement as wrapper around
6909         find_function_start_sal_1, and use
6910         find_pc_sect_containing_function to fill in the sal's symbol.
6911         (find_function_start_sal(symbol*, bool)): Adjust.
6912         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6913         comments.
6914         (find_pc_sect_containing_function): Declare.
6915
6916 2018-06-29  Pedro Alves  <palves@redhat.com>
6917
6918         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6919         true if the the location has no symbol.
6920
6921 2018-06-28  Tom Tromey  <tom@tromey.com>
6922
6923         * NEWS: Mention --enable-codesign.
6924         * silent-rules.mk (ECHO_SIGN): New variable.
6925         * configure.ac: Add --enable-codesign.
6926         * configure: Rebuild.
6927         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6928         (gdb$(EXEEXT)): Optionally invoke codesign.
6929
6930 2018-06-28  Pedro Alves  <palves@redhat.com>
6931
6932         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6933         comments.
6934         (switch_to_thread_no_regs): Adjust comment.
6935         * infcmd.c (stop_pc): Delete.
6936         (post_create_inferior, info_program_command): Replace references
6937         to stop_pc with references to thread_info->suspend.stop_pc.
6938         * inferior.h (stop_pc): Delete declaration.
6939         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6940         (handle_inferior_event_1, handle_signal_stop)
6941         (process_event_stop_test, keep_going_stepped_thread)
6942         (handle_step_into_function, handle_step_into_function_backward)
6943         (print_stop_location): Replace references to stop_pc with
6944         references to thread_info->suspend.stop_pc.
6945         (struct infcall_suspend_state) <stop_pc>: Delete field.
6946         (save_infcall_suspend_state, restore_infcall_suspend_state):
6947         Remove references to inf_stat->stop_pc.
6948         * linux-fork.c (fork_load_infrun_state): Likewise.
6949         * record-btrace.c (record_btrace_set_replay): Likewise.
6950         * record-full.c (record_full_goto_entry): Likewise.
6951         * remote.c (print_one_stopped_thread): Likewise.
6952         * target.c (target_resume): Extend comment.
6953         * thread.c (set_executing_thread): New.
6954         (set_executing): Use it.
6955         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6956         Remove references to stop_pc.
6957
6958 2018-06-28  Pedro Alves  <palves@redhat.com>
6959
6960         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6961         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6962
6963 2018-06-28  Tom Tromey  <tom@tromey.com>
6964
6965         * coffread.c (coff_symfile_finish): Update.
6966         * xcoffread.c (xcoff_symfile_finish): Update.
6967         * elfread.c (elf_symfile_finish): Update.
6968         * symfile.h (dwarf2_free_objfile): Don't declare.
6969         * dwarf2read.c (_initialize_dwarf2_read): Use
6970         register_objfile_data_with_cleanup.
6971         (dwarf2_free_objfile): Now static.  Change signature.
6972
6973 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6974
6975         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6976         option "-o" to add-symbol-file-load to add an offset to each
6977         section's load address.
6978         * symfile.c (set_objfile_default_section_offset): New function.
6979
6980 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6981
6982         * symfile.c (add_symbol_file_command): Make sure that sections
6983         with the same name are sorted in the same order.
6984
6985 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6986
6987         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6988         require the second argument.  If omitted, load sections at the
6989         addresses specified in the file.
6990
6991 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6992
6993         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6994         (_initialize_symfile): Add option "-o" to symbol-file to add an
6995         offset to each section of the symbol file.
6996
6997 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6998
6999         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7000
7001 2018-06-27  Tom Tromey  <tom@tromey.com>
7002
7003         * stack.c (_initialize_stack): Update "func" help text.
7004
7005 2018-06-27  Tom Tromey  <tom@tromey.com>
7006
7007         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7008         std::vector.
7009         (unwind_infopy_str, pyuw_create_unwind_info)
7010         (unwind_infopy_add_saved_register, pyuw_sniffer)
7011         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7012         Update.
7013         (struct saved_reg): Add constructor.
7014         <value>: Now a gdbpy_ref<>.
7015
7016 2018-06-27  Tom Tromey  <tom@tromey.com>
7017
7018         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7019
7020 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7021
7022         * gdb-gdb.py.in: Format using autopep8.
7023
7024 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7025
7026         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7027         (type_lookup_function): Recognize CORE_ADDR values.
7028
7029 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7030
7031         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7032         print tag_name.
7033
7034 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7035
7036         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7037         <__lt__>: Add.
7038
7039 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7040
7041         * gdb-gdb.py: Move to...
7042         * gdb-gdb.py.in: ... here.
7043         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7044         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7045         dependencies.
7046         (distclean): Remove gdb-gdb.py when cleaning.
7047         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7048         * configure: Re-generate.
7049
7050 2018-06-27  Pedro Alves  <palves@redhat.com>
7051
7052         * proc-service.c (get_ps_regcache): New.
7053         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7054         (ps_lsetfpregs): Use it.
7055
7056 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7057
7058         PR gdb/21695
7059         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7060         declaration.
7061         (dwarf_decode_lines_1): Adjust.
7062
7063 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7064
7065         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7066         override.
7067         <info_proc>: Likewise.
7068
7069 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7070
7071         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7072         to windows_fetch_one_register, and only handle the case of
7073         fetching one register.  Move the code that reloads the context
7074         and iterates over all registers if R is negative to...
7075         (windows_nat_target::fetch_registers): ... here.
7076         (do_windows_store_inferior_registers): Rename to
7077         windows_store_one_register, and only handle the case of storing
7078         one register.  Move the code that handles the case where r is
7079         negative to...
7080         (windows_nat_target::store_registers) ... here.
7081
7082 2018-06-26  Tom Tromey  <tom@tromey.com>
7083
7084         PR rust/22574:
7085         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7086         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7087         Update.
7088         (rust_internal_print_type): Add podata parameter.
7089         (rust_print_type): Update.
7090
7091 2018-06-26  Tom Tromey  <tom@tromey.com>
7092
7093         * typeprint.h (struct print_offset_data) <update, finish,
7094         maybe_print_hole>: New methods.
7095         <indentation>: New constant.
7096         * typeprint.c (print_offset_data::indentation): Define.
7097         (print_offset_data::maybe_print_hole, print_offset_data::update)
7098         (print_offset_data::finish): Move from c-typeprint.c and rename.
7099         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7100         (print_spaces_filtered_with_print_options): Update.
7101         (c_print_type_union_field_offset, maybe_print_hole)
7102         (c_print_type_struct_field_offset): Move to typeprint.c and
7103         rename.
7104         (c_type_print_base_struct_union): Update.
7105
7106 2018-06-25  Pedro Alves  <palves@redhat.com>
7107
7108         * gdbthread.h (thread_info_ref, delete_thread)
7109         (delete_thread_silent, first_thread_of_inferior)
7110         (any_thread_of_inferior, switch_to_thread)
7111         (enable_thread_stack_temporaries)
7112         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7113         (get_last_thread_stack_temporary)
7114         (value_in_thread_stack_temporaries, can_access_registers_thread):
7115         Spell out "struct thread_info" instead of just "thread_info".
7116         * inferior.h (notice_new_inferior): Likewise.
7117
7118 2018-06-25  Pedro Alves  <palves@redhat.com>
7119
7120         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7121         pass thread_info pointer to delete_thread.
7122         (windows_nat_target::detach): Pass inferior pointer to
7123         detach_inferior.
7124         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7125         delete_thread.
7126         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7127         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7128         and pass a thread_info pointer to delete_thread.
7129         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7130         pass thread_info pointer to delete_thread.
7131         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7132         delete_thread_silent call.
7133         * procfs.c (procfs_target::detach): Pass inferior pointer to
7134         detach_inferior.
7135         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7136         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7137         delete_thread_silent call.
7138         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7139         pass thread_info pointer to delete_thread.
7140         (windows_nat_target::detach): Pass inferior pointer to
7141         delete_inferior.
7142
7143 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7144
7145         * regcache.c (readable_regcache::read_part): Fix asserts.
7146         (reg_buffer::raw_collect_part): New function.
7147         (regcache::write_part): Fix asserts.
7148         (reg_buffer::raw_supply_part): New function.
7149         (regcache::transfer_regset_register): New helper function.
7150         (regcache::transfer_regset): Call new functions.
7151         (regcache_supply_regset): Use gdb_byte*.
7152         (regcache::supply_regset): Likewise.
7153         (regcache_collect_regset): Likewise.
7154         (regcache::collect_regset): Likewise.
7155         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7156         (reg_buffer::raw_supply_part): Likewise.
7157         (regcache::transfer_regset_register): Likewise.
7158         (regcache::transfer_regset): Use gdb_byte*.
7159
7160 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7161
7162         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7163
7164 2018-06-21  Pedro Alves  <palves@redhat.com>
7165
7166         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7167         instead of a ptid_t.  All callers adjusted.
7168         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7169         adjusted.
7170         (print_ada_task_info, display_current_task_id, task_command_1):
7171         Adjust.
7172         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7173         inferior_thread.
7174         (breakpoint_kind): Adjust.
7175         (remove_breakpoints_pid): Rename to ...
7176         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7177         pointer.  All callers adjusted.
7178         (bpstat_clear_actions): Use inferior_thread.
7179         (get_bpstat_thread): New.
7180         (bpstat_do_actions): Use it.
7181         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7182         to take a thread_info pointer.  All callers adjusted.
7183         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7184         (breakpoint_re_set_thread): Use inferior_thread.
7185         * breakpoint.h (struct inferior): Forward declare.
7186         (bpstat_stop_status): Update.
7187         (remove_breakpoints_pid): Delete.
7188         (remove_breakpoints_inf): New.
7189         * bsd-uthread.c (bsd_uthread_target::wait)
7190         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7191         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7192         (maint_btrace_packet_history_cmd)
7193         (maint_btrace_clear_packet_history_cmd): Adjust.
7194         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7195         inferior_thread.
7196         * cli/cli-interp.c: Include "inferior.h".
7197         * common/refcounted-object.h (struct
7198         refcounted_object_ref_policy): New.
7199         * compile/compile-object-load.c: Include gdbthread.h.
7200         (store_regs): Use inferior_thread.
7201         * corelow.c (core_target::close): Use current_inferior.
7202         (core_target_open): Adjust to use first_thread_of_inferior and use
7203         the current inferior.
7204         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7205         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7206         <thread>: ... this new field.  All references adjusted.
7207         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7208         Take a thread_info pointer instead of a ptid_t.
7209         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7210         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7211         thread_info pointer instead of a ptid_t.
7212         * elfread.c: Include "inferior.h".
7213         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7214         Use inferior_thread.
7215         * eval.c (evaluate_subexp): Likewise.
7216         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7217         inferior_thread.
7218         * gdb_proc_service.h (struct thread_info): Forward declare.
7219         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7220         <thread>: ... this new field.  All references adjusted.
7221         * gdbarch.h, gdbarch.c: Regenerate.
7222         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7223         'thread' parameter.  All implementations and callers adjusted.
7224         * gdbthread.h (thread_info) <set_running>: New method.
7225         (delete_thread, delete_thread_silent): Take a thread_info pointer
7226         instead of a ptid.
7227         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7228         (first_thread_of_process): Delete, replaced by ...
7229         (first_thread_of_inferior): ... this new function.  All callers
7230         adjusted.
7231         (any_live_thread_of_process): Delete, replaced by ...
7232         (any_live_thread_of_inferior): ... this new function.  All callers
7233         adjusted.
7234         (switch_to_thread, switch_to_no_thread): Declare.
7235         (is_executing): Delete.
7236         (enable_thread_stack_temporaries): Update comment.
7237         <enable_thread_stack_temporaries>: Take a thread_info pointer
7238         instead of a ptid_t.  Incref the thread.
7239         <~enable_thread_stack_temporaries>: Decref the thread.
7240         <m_ptid>: Delete
7241         <m_thr>: New.
7242         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7243         (get_last_thread_stack_temporary)
7244         (value_in_thread_stack_temporaries, can_access_registers_thread):
7245         Take a thread_info pointer instead of a ptid_t.  All callers
7246         adjusted.
7247         * infcall.c (get_call_return_value): Use inferior_thread.
7248         (run_inferior_call): Work with thread pointers instead of ptid_t.
7249         (call_function_by_hand_dummy): Work with thread pointers instead
7250         of ptid_t.  Use thread_info_ref.
7251         * infcmd.c (proceed_thread_callback): Access thread's state
7252         directly.
7253         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7254         access thread's state directly.
7255         (continue_command): Use inferior_thread.
7256         (info_program_command): Use find_thread_ptid and access thread
7257         state directly.
7258         (proceed_after_attach_callback): Use thread state directly.
7259         (notice_new_inferior): Take a thread_info pointer instead of a
7260         ptid_t.  All callers adjusted.
7261         (exit_inferior): Take an inferior pointer instead of a pid.  All
7262         callers adjusted.
7263         (exit_inferior_silent): New.
7264         (detach_inferior): Delete.
7265         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7266         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7267         (detach_inferior_command, kill_inferior_command): Use
7268         find_inferior_id instead of valid_gdb_inferior_id and
7269         gdb_inferior_id_to_pid.
7270         (inferior_command): Use inferior and thread pointers.
7271         * inferior.h (struct thread_info): Forward declare.
7272         (notice_new_inferior): Take a thread_info pointer instead of a
7273         ptid_t.  All callers adjusted.
7274         (detach_inferior): Delete declaration.
7275         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7276         instead of a pid.  All callers adjusted.
7277         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7278         (valid_gdb_inferior_id): Delete.
7279         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7280         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7281         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7282         ...
7283         <inf>: ... this new field.
7284         <step_ptid>: Delete, replaced by ...
7285         <step_thread>: ... this new field.
7286         (get_displaced_stepping_state): Take an inferior pointer instead
7287         of a pid.  All callers adjusted.
7288         (displaced_step_in_progress_any_inferior): Adjust.
7289         (displaced_step_in_progress_thread): Take a thread pointer instead
7290         of a ptid_t.  All callers adjusted.
7291         (displaced_step_in_progress, add_displaced_stepping_state): Take
7292         an inferior pointer instead of a pid.  All callers adjusted.
7293         (get_displaced_step_closure_by_addr): Adjust.
7294         (remove_displaced_stepping_state): Take an inferior pointer
7295         instead of a pid.  All callers adjusted.
7296         (displaced_step_prepare_throw, displaced_step_prepare)
7297         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7298         All callers adjusted.
7299         (start_step_over): Adjust.
7300         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7301         displaced step queue.
7302         (do_target_resume): Adjust.
7303         (fetch_inferior_event): Use inferior_thread.
7304         (context_switch, get_inferior_stop_soon): Take an
7305         execution_control_state pointer instead of a ptid_t.  All callers
7306         adjusted.
7307         (switch_to_thread_cleanup): Delete.
7308         (stop_all_threads): Use scoped_restore_current_thread.
7309         * inline-frame.c: Include "gdbthread.h".
7310         (inline_state) <inline_state>: Take a thread pointer instead of a
7311         ptid_t.  All callers adjusted.
7312         <ptid>: Delete, replaced by ...
7313         <thread>: ... this new field.
7314         (find_inline_frame_state): Take a thread pointer instead of a
7315         ptid_t.  All callers adjusted.
7316         (skip_inline_frames, step_into_inline_frame)
7317         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7318         pointer instead of a ptid_t.  All callers adjusted.
7319         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7320         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7321         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7322         pointers directly.
7323         * linux-nat.c (get_detach_signal): Likewise.
7324         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7325         (thread_db_notice_clone): Adjust.
7326         (thread_db_find_new_threads_silently)
7327         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7328         a thread pointer instead of a ptid_t.  All callers adjusted.
7329         * mi/mi-cmd-var.c: Include "inferior.h".
7330         (mi_cmd_var_update_iter): Update to use thread pointers.
7331         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7332         inferior directly.
7333         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7334         out to ...
7335         (mi_output_running): ... this new function.
7336         (mi_on_resume_1): Adjust to use it.
7337         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7338         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7339         directly.
7340         (interrupt_thread_callback): : Adjust to use thread and inferior
7341         pointers.
7342         * proc-service.c: Include "gdbthread.h".
7343         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7344         * progspace-and-thread.c: Include "inferior.h".
7345         * progspace.c: Include "inferior.h".
7346         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7347         hold a reference to an inferior_object.
7348         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7349         inferior_thread.
7350         * python/py-inferior.c (struct inferior_object): Give the type a
7351         tag name instead of a typedef.
7352         (python_on_normal_stop): No need to check if the current thread is
7353         listed.
7354         (inferior_to_inferior_object): Change return type to
7355         inferior_object.  All callers adjusted.
7356         (find_thread_object): Delete, bits factored out to ...
7357         (thread_to_thread_object): ... this new function.
7358         * python/py-infthread.c (create_thread_object): Use
7359         inferior_to_inferior_object.
7360         (thpy_is_stopped): Use thread pointer directly.
7361         (gdbpy_selected_thread): Use inferior_thread.
7362         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7363         field, replaced with ...
7364         <thread>: ... this new field.  All users adjusted.
7365         (btpy_insn_or_gap_new): Drop const.
7366         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7367         callers adjusted.
7368         * python/py-record.c: Include "gdbthread.h".
7369         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7370         a ptid_t.  All callers adjusted.
7371         (gdbpy_current_recording): Use inferior_thread.
7372         * python/py-record.h (recpy_record_object) <ptid>: Delete
7373         field, replaced with ...
7374         <thread>: ... this new field.  All users adjusted.
7375         (recpy_element_object) <ptid>: Delete
7376         field, replaced with ...
7377         <thread>: ... this new field.  All users adjusted.
7378         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7379         a ptid_t.  All callers adjusted.
7380         * python/py-threadevent.c: Include "gdbthread.h".
7381         (get_event_thread): Use thread_to_thread_object.
7382         * python/python-internal.h (struct inferior_object): Forward
7383         declare.
7384         (find_thread_object, find_inferior_object): Delete declarations.
7385         (thread_to_thread_object, inferior_to_inferior_object): New
7386         declarations.
7387         * record-btrace.c: Include "inferior.h".
7388         (require_btrace_thread): Use inferior_thread.
7389         (record_btrace_frame_sniffer)
7390         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7391         (get_thread_current_frame): Use scoped_restore_current_thread and
7392         switch_to_thread.
7393         (get_thread_current_frame): Use thread pointer directly.
7394         (record_btrace_replay_at_breakpoint): Use thread's inferior
7395         pointer directly.
7396         * record-full.c: Include "inferior.h".
7397         * regcache.c: Include "gdbthread.h".
7398         (get_thread_arch_regcache): Use the inferior's address space
7399         directly.
7400         (get_thread_regcache, registers_changed_thread): New.
7401         * regcache.h (get_thread_regcache(thread_info *thread)): New
7402         overload.
7403         (registers_changed_thread): New.
7404         (remote_target) <remote_detach_1>: Swap order of parameters.
7405         (remote_add_thread): <remote_add_thread>: Return the new thread.
7406         (get_remote_thread_info(ptid_t)): New overload.
7407         (remote_target::remote_notice_new_inferior): Use thread pointers
7408         directly.
7409         (remote_target::process_initial_stop_replies): Use
7410         thread_info::set_running.
7411         (remote_target::remote_detach_1, remote_target::detach)
7412         (extended_remote_target::detach): Adjust.
7413         * stack.c (frame_show_address): Use inferior_thread.
7414         * target-debug.h (target_debug_print_thread_info_pp): New.
7415         * target-delegates.c: Regenerate.
7416         * target.c (default_thread_address_space): Delete.
7417         (memory_xfer_partial_1): Use current_inferior.
7418         (target_detach): Use current_inferior.
7419         (target_thread_address_space): Delete.
7420         (generic_mourn_inferior): Use current_inferior.
7421         * target.h (struct target_ops) <thread_address_space>: Delete.
7422         (target_thread_address_space): Delete.
7423         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7424         pointers directly.
7425         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7426         thread pointer instead of a ptid_t.  Adjust all callers.
7427         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7428         (first_thread_of_process): Delete, replaced by ...
7429         (first_thread_of_inferior): ... this new function.  All callers
7430         adjusted.
7431         (any_thread_of_process): Rename to ...
7432         (any_thread_of_inferior): ... this, and take an inferior pointer.
7433         (any_live_thread_of_process): Rename to ...
7434         (any_live_thread_of_inferior): ... this, and take an inferior
7435         pointer.
7436         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7437         (value_in_thread_stack_temporaries)
7438         (get_last_thread_stack_temporary): Take a thread pointer instead
7439         of a ptid_t.  Adjust all callers.
7440         (thread_info::set_running): New.
7441         (validate_registers_access): Use inferior_thread.
7442         (can_access_registers_ptid): Rename to ...
7443         (can_access_registers_thread): ... this, and take a thread
7444         pointer.
7445         (print_thread_info_1): Adjust to compare thread pointers instead
7446         of ptids.
7447         (switch_to_no_thread, switch_to_thread): Make extern.
7448         (scoped_restore_current_thread::~scoped_restore_current_thread):
7449         Use m_thread pointer directly.
7450         (scoped_restore_current_thread::scoped_restore_current_thread):
7451         Use inferior_thread.
7452         (thread_command): Use thread pointer directly.
7453         (thread_num_make_value_helper): Use inferior_thread.
7454         * top.c (execute_command): Use inferior_thread.
7455         * tui/tui-interp.c: Include "inferior.h".
7456         * varobj.c (varobj_create): Use inferior_thread.
7457         (value_of_root_1): Use find_thread_global_id instead of
7458         global_thread_id_to_ptid.
7459
7460 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7461
7462         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7463         possible.
7464         (regcache::write_part): Likewise.
7465         (readable_regcache::cooked_read_part): Update comment.
7466         (readable_regcache::cooked_write_part): Likewise.
7467         * regcache.h: (readable_regcache::read_part): Likewise.
7468         (regcache::write_part): Likewise.
7469
7470 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7471             Dirk Schubert  <dirk.schubert@arm.com>
7472
7473         * aarch64-linux-nat.c (post_attach): New.
7474         (aarch64_linux_nat_target::post_attach): Override post_attach to
7475         record the number of hardware debug registers.
7476
7477 2018-06-20  Tom Tromey  <tom@tromey.com>
7478
7479         * python/py-param.c (add_setshow_generic): Make parameters const.
7480         (parmpy_init): Update.
7481
7482 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7483
7484         * regcache.h (regcache_cooked_read_ftype): Rename to...
7485         (register_read_ftype): ...this, change type to function_view.
7486         (class reg_buffer) <save>: Remove src parameter.
7487         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7488         parameter non-const in first overload.  Remove src parameter in
7489         second overload.
7490         * regcache.c (do_cooked_read): Remove.
7491         (readonly_detached_regcache::readonly_detached_regcache): Make
7492         parameter non-const, adjust call to other constructor.
7493         (reg_buffer::save): Remove src parameter.
7494         * frame.c (do_frame_register_read): Remove.
7495         (frame_save_as_regcache): Use lambda function.
7496         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7497         parameter to ppu2spu_data *.
7498         (ppu2spu_sniffer): Use lambda function.
7499
7500 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7501
7502         * record-full.c (record_full_target::insert_breakpoint): Remove
7503         "struct" keyword, add const.
7504
7505 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7506
7507         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7508         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7509         * configure.ac: Remove AC_PREREQ, add missing quoting.
7510         * gnulib/configure.ac: Modernize usage of
7511         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7512         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7513         (AUTOMAKE_VERSION): Bump to 1.15.1.
7514         * configure: Re-generate.
7515         * config.in: Re-generate.
7516         * aclocal.m4: Re-generate.
7517         * gnulib/aclocal.m4: Re-generate.
7518         * gnulib/config.in: Re-generate.
7519         * gnulib/configure: Re-generate.
7520         * gnulib/import/Makefile.in: Re-generate.
7521
7522 2018-06-19  Pedro Alves  <palves@redhat.com>
7523
7524         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7525         (lookup_minimal_symbol_by_pc_section): ... here with
7526         gdb_assert_not_reached added.
7527
7528 2018-06-19  Pedro Alves  <palves@redhat.com>
7529
7530         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7531         parameter with a block parameter.  Compare location's block symbol
7532         with the frame's block instead of addresses.
7533         (skip_inline_frames): Pass the current block instead of the
7534         frame's address.  Break out as soon as we determine the frame
7535         should not be skipped.
7536
7537 2018-06-18  Tom Tromey  <tom@tromey.com>
7538
7539         * solib-aix.c (solib_aix_get_section_offsets): Return
7540         unique_xmalloc_ptr.
7541         (solib_aix_solib_create_inferior_hook): Update.
7542
7543 2018-06-18  Tom Tromey  <tom@tromey.com>
7544
7545         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7546
7547 2018-06-18  Tom Tromey  <tom@tromey.com>
7548
7549         * solib-frv.c (frv_relocate_main_executable): Use
7550         unique_xmalloc_ptr.
7551         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7552         unique_xmalloc_ptr.
7553
7554 2018-06-18  Tom Tromey  <tom@tromey.com>
7555
7556         * objfiles.h (inhibit_section_map_updates): Update.
7557         (resume_section_map_updates, resume_section_map_updates_cleanup):
7558         Remove.
7559         * solib-svr4.c (svr4_handle_solib_event): Update.
7560         * objfiles.c (inhibit_section_map_updates): Return
7561         scoped_restore_tmpl<int>.
7562         (resume_section_map_updates, resume_section_map_updates_cleanup):
7563         Remove.
7564
7565 2018-06-18  Tom Tromey  <tom@tromey.com>
7566
7567         * valprint.h (read_string): Update.
7568         * valprint.c (read_string): Change type of "buffer".
7569         (val_print_string): Update.
7570         * python/py-value.c (valpy_string): Update.
7571         * language.h (struct language_defn) <la_get_string>: Change
7572         type of "buffer".
7573         (default_get_string, c_get_string): Update.
7574         * language.c (default_get_string): Change type of "buffer".
7575         * guile/scm-value.c (gdbscm_value_to_string): Update.
7576         * c-lang.c (c_get_string): Change type of "buffer".
7577
7578 2018-06-18  Tom Tromey  <tom@tromey.com>
7579
7580         * ser-mingw.c (struct pipe_state_destroyer): New.
7581         (pipe_state_up): New typedef.
7582         (cleanup_pipe_state): Remove.
7583         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7584
7585 2018-06-18  Tom Tromey  <tom@tromey.com>
7586
7587         * rust-lang.h (rust_yyerror): Don't declare.
7588         * rust-lang.c (rust_language_defn): Update.
7589         * rust-exp.y (yyerror): Now static.
7590         * parse.c (parse_exp_in_context_1): Update.
7591         * p-lang.h (p_yyerror): Don't declare.
7592         * p-lang.c (p_language_defn): Update.
7593         * p-exp.y (yyerror): Now static.
7594         * opencl-lang.c (opencl_language_defn): Update.
7595         * objc-lang.c (objc_language_defn): Update.
7596         * m2-lang.h (m2_yyerror): Don't declare.
7597         * m2-lang.c (m2_language_defn): Update.
7598         * m2-exp.y (yyerror): Now static.
7599         * language.h (struct language_defn) <la_error>: Remove.
7600         * language.c (unk_lang_error): Remove.
7601         (unknown_language_defn, auto_language_defn): Remove.
7602         * go-lang.h (go_yyerror): Don't declare.
7603         * go-lang.c (go_language_defn): Update.
7604         * go-exp.y (yyerror): Now static.
7605         * f-lang.h (f_yyerror): Don't declare.
7606         * f-lang.c (f_language_defn): Update.
7607         * f-exp.y (yyerror): Now static.
7608         * d-lang.h (d_yyerror): Don't declare.
7609         * d-lang.c (d_language_defn): Update.
7610         * d-exp.y (yyerror): Now static.
7611         * c-lang.h (c_yyerror): Don't declare.
7612         * c-lang.c (c_language_defn, cplus_language_defn)
7613         (asm_language_defn, minimal_language_defn): Update.
7614         * c-exp.y (yyerror): Now static.
7615         * ada-lang.h (ada_yyerror): Don't declare.
7616         * ada-lang.c (ada_language_defn): Update.
7617         * ada-exp.y (yyerror): Now static.
7618
7619 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7620
7621         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7622         (store_sveregs_to_thread): Likewise.
7623         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7624         (aarch64_linux_store_inferior_registers): Likewise.
7625         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7626         function.
7627         (aarch64_sve_regs_copy_to_regcache): Likewise.
7628         (aarch64_sve_regs_copy_from_regcache): Likewise.
7629         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7630         declaration.
7631         (aarch64_sve_regs_copy_to_regcache): Likewise.
7632         (aarch64_sve_regs_copy_from_regcache): Likewise.
7633         (sve_context): Structure from Linux headers.
7634         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7635         (SVE_SIG_ZREG_SIZE): Likewise.
7636         (SVE_SIG_PREG_SIZE): Likewise.
7637         (SVE_SIG_FFR_SIZE): Likewise.
7638         (SVE_SIG_REGS_OFFSET): Likewise.
7639         (SVE_SIG_ZREGS_OFFSET): Likewise.
7640         (SVE_SIG_ZREG_OFFSET): Likewise.
7641         (SVE_SIG_ZREGS_SIZE): Likewise.
7642         (SVE_SIG_PREGS_OFFSET): Likewise.
7643         (SVE_SIG_PREG_OFFSET): Likewise.
7644         (SVE_SIG_PREGS_SIZE): Likewise.
7645         (SVE_SIG_FFR_OFFSET): Likewise.
7646         (SVE_SIG_REGS_SIZE): Likewise.
7647         (SVE_SIG_CONTEXT_SIZE): Likewise.
7648         (SVE_PT_REGS_MASK): Likewise.
7649         (SVE_PT_REGS_FPSIMD): Likewise.
7650         (SVE_PT_REGS_SVE): Likewise.
7651         (SVE_PT_VL_INHERIT): Likewise.
7652         (SVE_PT_VL_ONEXEC): Likewise.
7653         (SVE_PT_REGS_OFFSET): Likewise.
7654         (SVE_PT_FPSIMD_OFFSET): Likewise.
7655         (SVE_PT_FPSIMD_SIZE): Likewise.
7656         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7657         (SVE_PT_SVE_PREG_SIZE): Likewise.
7658         (SVE_PT_SVE_FFR_SIZE): Likewise.
7659         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7660         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7661         (__SVE_SIG_TO_PT): Likewise.
7662         (SVE_PT_SVE_OFFSET): Likewise.
7663         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7664         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7665         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7666         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7667         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7668         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7669         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7670         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7671         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7672         (SVE_PT_SVE_SIZE): Likewise.
7673         (SVE_PT_SIZE): Likewise.
7674         (HAS_SVE_STATE): New define.
7675
7676 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7677
7678         * nat/aarch64-sve-linux-sigcontext.h: New file.
7679         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7680         new files.
7681         (SVE_VQ_MIN): Likewise.
7682         (SVE_VQ_MAX): Likewise.
7683         (SVE_VL_MIN): Likewise.
7684         (SVE_VL_MAX): Likewise.
7685         (SVE_NUM_ZREGS): Likewise.
7686         (SVE_NUM_PREGS): Likewise.
7687         (sve_vl_valid): Likewise.
7688         (struct user_sve_header): Likewise.
7689
7690 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7691             Richard Bunt <Richard.Bunt@arm.com>
7692
7693         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7694         was requested by GDB.
7695
7696 2018-06-15  Tom de Vries  <tdevries@suse.de>
7697
7698         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7699
7700 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7701
7702         * gnulib/update-gnulib.sh: Print expected versions of
7703         autoconf/aclocal.
7704
7705 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7706
7707         * arch-utils.c (default_type_align): Use type_length_units.
7708         * gdbtypes.c (type_align): Use type_length_units.
7709
7710 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7711
7712         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7713         of 'define' command.
7714
7715 2018-06-14  Tom de Vries  <tdevries@suse.de>
7716
7717         PR cli/22573
7718         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7719         get_no_prettyformat_print_options.
7720
7721 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7722
7723         * sparc-nat.h: Include target.h.
7724         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7725         <fetch_registers>: Remove this argument in function call.
7726         <store_registers>: Remove this argument in function call, remove
7727         extra semicolon.
7728         <low_forget_process>: Call sparc64_forget_process instead of
7729         sparc_forget_process.
7730
7731 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7732
7733         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7734         (procfs_target::make_corefile_notes): Adjust to new
7735         target_read_alloc return type.
7736
7737 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7738             Stephen Roberts  <stephen.roberts@arm.com>
7739
7740         PR gdb/22882
7741         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7742         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7743         Move should_notify_stop local into more inner scope.
7744
7745 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7746             Stephen Roberts  <stephen.roberts@arm.com>
7747
7748         PR gdb/22882
7749         * infrun.c (resume_1): Add call to mark_async_event_handler.
7750
7751 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7752
7753         * infrun.c (do_target_wait): Change old version of $pc printed.
7754
7755 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7756
7757         * dwarf2read.c (read_index_from_section): Rename to...
7758         (read_gdb_index_from_section): ... this, update all callers.
7759         (dwarf2_read_index): Rename to...
7760         (dwarf2_read_gdb_index): ... this, update all callers.
7761
7762 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7763
7764         * hppa-linux-nat.c
7765         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7766         hppa_linux_nat_target::fetch_registers.
7767
7768 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7769
7770         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7771         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7772         (AARCH64_DWARF_SVE_FFR): Likewise.
7773         (AARCH64_DWARF_SVE_P0): Likewise.
7774         (AARCH64_DWARF_SVE_Z0): Likewise.
7775
7776 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7777
7778         * common/common-regcache.h (raw_compare): New function.
7779         * regcache.c (regcache::raw_compare): Likewise.
7780         * regcache.h (regcache::raw_compare): New declaration.
7781
7782 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7783
7784         * common/common-regcache.h (reg_buffer_common): New structure.
7785         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7786         (reg_buffer::raw_supply): Likewise.
7787         (reg_buffer::raw_supply_integer): Likewise.
7788         (reg_buffer::raw_supply_zeroed): Likewise.
7789         (reg_buffer::raw_collect): Likewise.
7790         (reg_buffer::raw_collect_integer): Likewise.
7791         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7792         (reg_buffer::raw_supply): Likewise.
7793         (reg_buffer::raw_supply_integer): Likewise.
7794         (reg_buffer::raw_supply_zeroed): Likewise.
7795         (reg_buffer::raw_collect): Likewise.
7796         (reg_buffer::raw_collect_integer): Likewise.
7797
7798 2018-06-10  Tom Tromey  <tom@tromey.com>
7799
7800         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7801         (class remote_state) <stop_reply_queue>: Now std::vector.
7802         (remote_state::~remote_state)
7803         (remote_target::stop_reply_queue_length): Update.
7804         (struct queue_iter_param, remove_child_of_pending_fork)
7805         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7806         (check_pending_event_prevents_wildcard_vcont_callback)
7807         (remove_stop_reply_for_inferior)
7808         (remove_stop_reply_of_remote_state)
7809         (remote_notif_remove_once_on_match)
7810         (stop_reply_match_ptid_and_ws)
7811         (remote_kill_child_of_pending_fork): Remove.
7812         (remote_target::remove_new_fork_children)
7813         (remote_target::check_pending_events_prevent_wildcard_vcont)
7814         (remote_target::discard_pending_stop_replies)
7815         (remote_target::discard_pending_stop_replies_in_queue)
7816         (remote_target::remote_notif_remove_queued_reply)
7817         (remote_target::queued_stop_reply)
7818         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7819         (remote_target::wait, remote_target::kill_new_fork_children)
7820         (remote_target::async): Update.
7821
7822 2018-06-10  Tom Tromey  <tom@tromey.com>
7823
7824         * record-full.c (record_full_arch_list_cleanups): Remove.
7825         (record_full_message): Use try/catch.
7826         (record_full_wait_cleanups): Remove.
7827         (record_full_wait_1): Use try/catch.
7828         (record_full_restore): Likewise.
7829
7830 2018-06-10  Tom Tromey  <tom@tromey.com>
7831
7832         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7833         declare VEC.  Add constructor.
7834         <in_target_beneath>: Now bool.
7835         (record_full_breakpoints): Now a std::vector, static.
7836         (record_full_sync_record_breakpoints)
7837         (record_full_init_record_breakpoints)
7838         (record_full_target::insert_breakpoint)
7839         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7840
7841 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7842
7843         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7844         * serial.c (serial_interface_lookup): Remove struct keyword.
7845
7846 2018-06-10  Tom Tromey  <tom@tromey.com>
7847
7848         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7849         method.
7850         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7851         a method.
7852         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7853         method.
7854         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7855         "beneath" as a method.
7856         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7857         Use "beneath" as a method.
7858
7859 2018-06-10  Tom Tromey  <tom@tromey.com>
7860
7861         * tracefile.c (struct trace_file_writer_deleter): New.
7862         <operator()>: Rename from trace_file_writer_xfree.
7863         (trace_file_writer_up): New typedef.
7864         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7865
7866 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7867
7868         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7869         <m_registers, m_register_status>: Change type to
7870         std::unique_ptr.
7871         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7872         XCNEWVEC.
7873
7874 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7875
7876         * common/common-regcache.h (enum register_status): Add
7877         underlying type "signed char".
7878         * regcache.h (reg_buffer) <m_register_status>: Change type to
7879         register_status *.
7880         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7881         register_status instead of signed char.
7882         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7883         (reg_buffer::get_register_status): Remove cast.
7884         (readable_regcache::raw_read): Remove cast.
7885         (readable_regcache::cooked_read): Remove cast.
7886
7887 2018-06-09  Tom Tromey  <tom@tromey.com>
7888
7889         * source.c (reverse_search_command, forward_search_command): Use
7890         scoped_fd.
7891
7892 2018-06-09  Tom Tromey  <tom@tromey.com>
7893
7894         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7895         (serial_ops_list): Now static, std::vector.
7896         (serial_interface_lookup, serial_add_interface): Update.
7897
7898 2018-06-09  Tom Tromey  <tom@tromey.com>
7899
7900         * dwarf2read.c (process_cu_includes): Update.
7901         (process_full_comp_unit): Update.
7902         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7903         std::vector.
7904
7905 2018-06-08  Paul Koning  <paul_koning@dell.com>
7906
7907         PR gdb/23252
7908
7909         * python/python.c (do_start_initialization):
7910         Avoid call to internal Python API.
7911         (init__gdb_module): New function.
7912
7913 2018-06-08  Gary Benson <gbenson@redhat.com>
7914
7915         * linux-thread-db.c (valprint.h): New include.
7916         (struct check_thread_db_info): New structure.
7917         (check_thread_db_on_load, tdb_testinfo): New static globals.
7918         (check_thread_db, check_thread_db_callback): New functions.
7919         (try_thread_db_load_1): Run integrity checks if requested.
7920         (maintenance_check_libthread_db): New function.
7921         (_initialize_thread_db): Register "maint check libthread-db"
7922         and "maint set/show check-libthread-db".
7923         * NEWS: Mention the above new commands.
7924
7925 2018-06-08  Tom Tromey  <tom@tromey.com>
7926
7927         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7928         now a method.
7929
7930 2018-06-08  Tom Tromey  <tom@tromey.com>
7931
7932         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7933
7934 2018-06-08  Tom Tromey  <tom@tromey.com>
7935
7936         * common/btrace-common.h (struct btrace_data): Add constructor,
7937         destructor, move assignment operator.
7938         <empty, clear, fini>: New methods.
7939         <format>: Initialize.
7940         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7941         (btrace_data_empty): Don't declare.
7942         * common/btrace-common.c (btrace_data_init): Remove.
7943         (btrace_data::fini): Rename from btrace_data_fini.
7944         (btrace_data::empty): Rename from btrace_data_empty.
7945         (btrace_data::clear): Rename from btrace_data_clear.  Return
7946         bool.
7947         * btrace.h (make_cleanup_btrace_data): Don't declare.
7948         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7949         (parse_xml_btrace): Update.
7950         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7951         (maint_btrace_clear_packet_history_cmd): Update.
7952
7953 2018-06-07  Pedro Alves  <palves@redhat.com>
7954
7955         * target.h (target_ops) <beneath>: Now a method.  All references
7956         updated.
7957         (class target_stack): New.
7958         * target.c (g_target_stack): New.
7959         (g_current_top_target): Delete.
7960         (current_top_target): Get the top target out of g_target_stack.
7961         (target_stack::push, target_stack::unpush): New.
7962         (push_target, unpush_target): Reimplement.
7963         (target_is_pushed): Reimplement in terms of g_target_stack.
7964         (target_ops::beneath, target_stack::find_beneath): New.
7965
7966 2018-06-07  Pedro Alves  <palves@redhat.com>
7967
7968         * target.h (find_target_beneath): Delete declaration.
7969         * target.c (find_target_beneath): Delete definition.
7970         * aix-thread.c: All callers of find_target_beneath adjusted to
7971         call target_ops::beneath instead.
7972         * bsd-uthread.c: Likewise.
7973         * linux-thread-db.c: Likewise.
7974         * ravenscar-thread.c: Likewise.
7975         * sol-thread.c: Likewise.
7976         * spu-multiarch.c: Likewise.
7977
7978 2018-06-07  Pedro Alves  <palves@redhat.com>
7979
7980         * target.h (target_ops) <beneath>: Now a method.  All references
7981         updated.
7982         (target_ops) <m_beneath>: New.
7983         * target.c (target_ops::beneath): New.
7984         * corelow.c: Adjust all references to target_ops::beneath.
7985         * linux-thread-db.c: Likewise.
7986         * make-target-delegates: Likewise.
7987         * record-btrace.c: Likewise.
7988         * record-full.c: Likewise.
7989         * remote.c: Likewise.
7990         * target.c: Likewise.
7991         * target-delegates.c: Regenerate.
7992
7993 2018-06-07  Pedro Alves  <palves@redhat.com>
7994
7995         * target.h (target_stack): Delete.
7996         (current_top_target): Declare function.
7997         * target.c (target_stack): Delete.
7998         (g_current_top_target): New.
7999         (current_top_target): New function.
8000         * auxv.c: Use current_top_target instead of target_stack
8001         throughout.
8002         * avr-tdep.c: Likewise.
8003         * breakpoint.c: Likewise.
8004         * corefile.c: Likewise.
8005         * elfread.c: Likewise.
8006         * eval.c: Likewise.
8007         * exceptions.c: Likewise.
8008         * frame.c: Likewise.
8009         * gdbarch-selftests.c: Likewise.
8010         * gnu-v3-abi.c: Likewise.
8011         * ia64-tdep.c: Likewise.
8012         * ia64-vms-tdep.c: Likewise.
8013         * infcall.c: Likewise.
8014         * infcmd.c: Likewise.
8015         * infrun.c: Likewise.
8016         * linespec.c: Likewise.
8017         * linux-tdep.c: Likewise.
8018         * minsyms.c: Likewise.
8019         * ppc-linux-nat.c: Likewise.
8020         * ppc-linux-tdep.c: Likewise.
8021         * procfs.c: Likewise.
8022         * regcache.c: Likewise.
8023         * remote.c: Likewise.
8024         * rs6000-tdep.c: Likewise.
8025         * s390-linux-nat.c: Likewise.
8026         * s390-tdep.c: Likewise.
8027         * solib-aix.c: Likewise.
8028         * solib-darwin.c: Likewise.
8029         * solib-dsbt.c: Likewise.
8030         * solib-spu.c: Likewise.
8031         * solib-svr4.c: Likewise.
8032         * solib-target.c: Likewise.
8033         * sparc-tdep.c: Likewise.
8034         * sparc64-tdep.c: Likewise.
8035         * spu-tdep.c: Likewise.
8036         * symfile.c: Likewise.
8037         * symtab.c: Likewise.
8038         * target-descriptions.c: Likewise.
8039         * target-memory.c: Likewise.
8040         * target.c: Likewise.
8041         * target.h: Likewise.
8042         * tracefile-tfile.c: Likewise.
8043         * tracepoint.c: Likewise.
8044         * valops.c: Likewise.
8045         * valprint.c: Likewise.
8046         * value.c: Likewise.
8047         * windows-tdep.c: Likewise.
8048         * mi/mi-main.c: Likewise.
8049
8050 2018-06-07  Tom Tromey  <tom@tromey.com>
8051
8052         * valprint.h (build_address_symbolic): Declare.
8053         * printcmd.c (print_address_symbolic): Update.
8054         (build_address_symbolic): Change "name" and "filename" to
8055         std::string.
8056         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8057         Update.
8058         * defs.h (build_address_symbolic): Remove declaration.
8059
8060 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8061
8062         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8063         (aarch64_vnv_type): Add function.
8064         (aarch64_pseudo_register_name): Add V regs for SVE.
8065         (aarch64_pseudo_register_type): Likewise.
8066         (aarch64_pseudo_register_reggroup_p): Likewise.
8067         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8068         (aarch64_pseudo_read_value): Add V regs for SVE.
8069         (aarch64_pseudo_write_2): Use V0 offset for SVE
8070         (aarch64_pseudo_write): Add V regs for SVE.
8071         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8072
8073 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8074
8075         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8076         (sve_vl_from_vq): Likewise.
8077
8078 2018-06-05  Tom Tromey  <tom@tromey.com>
8079
8080         * cli/cli-cmds.c (show_version): Update.
8081         * top.c (print_gdb_version): Add "interactive" parameter.
8082         Update.
8083         * main.c (captured_main_1): Update.
8084         * top.h (print_gdb_version): Add "interactive" parameter and a
8085         comment.
8086
8087 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8088
8089         * common/enum-flags.h: Add trailing semicolon to example in
8090         comment.
8091
8092 2018-06-05  Tom Tromey  <tom@tromey.com>
8093
8094         PR cli/12326:
8095         * NEWS: Add entry about pager.
8096         * utils.c (pagination_disabled_for_command): New global.
8097         (prompt_for_continue): Allow "c" response to prompt.
8098         (reinitialize_more_filter): Clear
8099         pagination_disabled_for_command.
8100         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8101
8102 2018-06-04  Tom Tromey  <tom@tromey.com>
8103
8104         * ada-lang.h (ada_lookup_symbol_list): Update.
8105         * ada-lang.c (resolve_subexp): Update.
8106         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8107         parameter.
8108         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8109         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8110         results parameter to std::vector.
8111         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8112         Update.
8113         * ada-exp.y (block_lookup): Update.
8114         (select_possible_type_sym): Change type of syms.  Remove nsyms
8115         parameter.
8116         (write_var_or_type, write_name_assoc): Update.
8117
8118 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8119
8120         * windows-nat.c (windows_nat_target::xfer_partial): Return
8121         TARGET_XFER_E_IO if we need to delegate to the target beneath
8122         but BENEATH is NULL.
8123
8124 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8125
8126         * Makefile.in (config.status): Add configure.nat as a
8127         dependency.
8128
8129 2018-06-04  Tom Tromey  <tom@tromey.com>
8130
8131         * cp-name-parser.y (cpname_state): Add method declarations.
8132         (HANDLE_QUAL): Update.
8133         (cpname_state::d_grab, cpname_state::fill_comp)
8134         (cpname_state::make_operator, cpname_state::make_dtor)
8135         (cpname_state::make_builtin_type, cpname_state::make_name)
8136         (cpname_state::d_qualify, cpname_state::d_int_type)
8137         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8138         (%union): Move earlier.
8139
8140 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8141
8142         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8143
8144 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8145
8146         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8147         (aarch64_pseudo_write_1): Likewise.
8148         (aarch64_pseudo_read_value): Use helper.
8149         (aarch64_pseudo_write): Likewise.
8150
8151 2018-06-04  Pedro Alves  <palves@redhat.com>
8152
8153         * darwin-nat.c (darwin_ops): Delete.
8154         (darwin_attach_pid): Use get_native_target.
8155
8156 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8157
8158         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8159         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8160
8161 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8162
8163         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8164         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8165         (aarch64_gdbarch_init): Check for SVE.
8166         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8167
8168 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8169
8170         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8171         * aarch64-tdep.h (aarch64_read_description): Likewise.
8172         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8173         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8174         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8175         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8176         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8177
8178 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8179
8180         * value.c (value_fetch_lazy_bitfield): New.
8181         (value_fetch_lazy_memory): New.
8182         (value_fetch_lazy_register): New.
8183         (value_fetch_lazy): Factor out to smaller functions.
8184
8185 2018-06-01  Tom Tromey  <tom@tromey.com>
8186
8187         * cp-name-parser.y (backslashable, represented): Now const.
8188
8189 2018-06-01  Tom Tromey  <tom@tromey.com>
8190
8191         * cp-name-parser.y: Include parser-defs.h.
8192         (parser_fprintf): Remove declaration.
8193
8194 2018-06-01  Tom Tromey  <tom@tromey.com>
8195
8196         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8197         %parse-param.
8198         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8199         (global_result): Remove globals.
8200         (struct cpname_state): New.
8201         (yyparse): Don't declare.
8202         (yylex, yyerror): Move declarations after %union.
8203         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8204         (make_name): Add state parameter.
8205         Update all callers.
8206         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8207         parameter.
8208         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8209         Update.
8210         (yylex): Add lvalp, state parameters.
8211         (yyerror): Add state parameter.
8212         (cp_demangled_name_to_comp): Update.
8213
8214 2018-06-01  Tom Tromey  <tom@tromey.com>
8215
8216         * cp-name-parser.y (parser_fprintf): Declare.
8217         (GDB_YY_REMAP_PREFIX): Define.
8218         Include yy-remap.h.  Don't redefine yy* identifiers.
8219
8220 2018-06-01  Tom Tromey  <tom@tromey.com>
8221
8222         * python/py-type.c (typy_legacy_template_argument): Update.
8223         * cp-support.h (cp_demangled_name_to_comp): Update.
8224         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8225         parameter to be a "std::string *".
8226         (main): Update.
8227
8228 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8229
8230         * ada-lex.l: Include "diagnostics.h" instead of
8231         "common/diagnostics.h".
8232         * unittests/environ-selftests.c: Likewise.
8233         * common/diagnostics.h: Moved to ../include.
8234
8235 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8236
8237         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8238         to language_mode_manual while calling breakpoint_re_set_one.
8239
8240 2018-06-01  Tom Tromey  <tom@tromey.com>
8241
8242         * valops.c (value_cast_structs, destructor_name_p): Update.
8243         * symtab.c (gdb_mangle_name): Update.
8244         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8245         Update.
8246         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8247         (pascal_object_print_value_fields, pascal_object_print_value):
8248         Update.
8249         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8250         * linespec.c (find_methods): Update.
8251         * gdbtypes.h (type_name_no_tag): Remove.
8252         (type_name_or_error): Rename from type_name_no_tag_or_error.
8253         * gdbtypes.c (type_name_no_tag): Remove.
8254         (type_name_or_error): Rename from type_name_no_tag_or_error.
8255         (lookup_struct_elt_type, check_typedef): Update.
8256         * expprint.c (print_subexp_standard): Update.
8257         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8258         * d-namespace.c (d_lookup_nested_symbol): Update.
8259         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8260         (cp_print_class_member): Update.
8261         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8262         * completer.c (add_struct_fields): Update.
8263         * c-typeprint.c (cp_type_print_derivation_info)
8264         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8265         Update.
8266         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8267         (ada_prefer_type, ada_is_exception_sym): Update.
8268
8269 2018-06-01  Tom Tromey  <tom@tromey.com>
8270
8271         * valops.c (enum_constant_from_type, value_namespace_elt)
8272         (value_maybe_namespace_elt): Update.
8273         * valarith.c (find_size_for_pointer_math): Update.
8274         * target-descriptions.c (make_gdb_type): Update.
8275         * symmisc.c (print_symbol): Update.
8276         * stabsread.c (define_symbol, read_type)
8277         (complain_about_struct_wipeout, add_undefined_type)
8278         (cleanup_undefined_types_1): Update.
8279         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8280         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8281         (rust_internal_print_type, rust_composite_type)
8282         (rust_evaluate_funcall, rust_evaluate_subexp)
8283         (rust_inclusive_range_type_p): Update.
8284         * python/py-type.c (typy_get_tag): Update.
8285         * p-typeprint.c (pascal_type_print_base): Update.
8286         * mdebugread.c (parse_symbol, parse_type): Update.
8287         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8288         Update.
8289         * guile/scm-type.c (gdbscm_type_tag): Update.
8290         * go-lang.c (sixg_string_p): Update.
8291         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8292         Update.
8293         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8294         (TYPE_TAG_NAME): Remove.
8295         * gdbtypes.c (type_name_no_tag): Simplify.
8296         (check_typedef, check_types_equal, recursive_dump_type)
8297         (copy_type_recursive, arch_composite_type): Update.
8298         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8299         in summary mode when needed.
8300         * eval.c (evaluate_funcall): Update.
8301         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8302         (process_structure_scope, read_enumeration_type)
8303         (read_namespace_type, read_module_type, determine_prefix): Update.
8304         * cp-support.c (inspect_type): Update.
8305         * coffread.c (process_coff_symbol, decode_base_type): Update.
8306         * c-varobj.c (c_is_path_expr_parent): Update.
8307         * c-typeprint.c (c_type_print_base_struct_union): Update.
8308         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8309         summary when using C language.
8310         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8311         (gen_maybe_namespace_elt): Update.
8312         * ada-lang.c (ada_type_name): Simplify.
8313         (empty_record, ada_template_to_fixed_record_type_1)
8314         (template_to_static_fixed_type)
8315         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8316
8317 2018-06-01  Tom Tromey  <tom@tromey.com>
8318
8319         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8320         c_print_type.
8321         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8322         (c_print_type): Update.
8323         (c_print_type): New overload.
8324         (c_type_print_varspec_prefix, c_type_print_args)
8325         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8326         (c_type_print_base_struct_union, c_type_print_base_1)
8327         (cp_type_print_method_args): Add "language" parameter.
8328         (c_type_print_base): Update.
8329         * c-lang.h (c_print_type): Add new overload.
8330
8331 2018-06-01  Tom Tromey  <tom@tromey.com>
8332
8333         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8334         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8335
8336 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8337
8338         * aarch64-tdep.c (aarch64_sve_register_names): New const
8339         var.
8340         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8341         (AARCH64_SVE_Z_REGS_NUM): New define.
8342         (AARCH64_SVE_P_REGS_NUM): Likewise.
8343         (AARCH64_SVE_NUM_REGS): Likewise.
8344
8345 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8346
8347         * nat/linux-ptrace.h [__alpha__]
8348         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8349         definitions.
8350
8351 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8352
8353         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8354         the endianness selected.
8355         * NEWS: Document `set endian auto' mode operation update.
8356
8357 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8358
8359         * Makefile.in: Add new header.
8360         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8361         (sve_vl_from_vg): Likewise.
8362         (sve_vq_from_vl): Likewise.
8363         (sve_vl_from_vq): Likewise.
8364         (sve_vq_from_vg): Likewise.
8365         (sve_vg_from_vq): Likewise.
8366         * configure.nat: Add new c file.
8367         * nat/aarch64-sve-linux-ptrace.c: New file.
8368         * nat/aarch64-sve-linux-ptrace.h: New file.
8369
8370 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8371
8372         * aarch64-linux-nat.c (aarch64_linux_read_description):
8373         Add parmeter zero.
8374         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8375         Likewise.
8376         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8377         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8378         (aarch64_gdbarch_init): Add parmeter zero.
8379         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8380         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8381         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8382         parmeter.
8383         * doc/gdb.texinfo: Describe SVE feature
8384         * features/aarch64-sve.c: New file.
8385
8386 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8387
8388         PR gdb/23210
8389         * gdbarch.sh (significant_addr_bit): Default to zero when
8390         not set by target architecture.
8391         * gdbarch.c: Re-generated.
8392         * utils.c (address_significant): Update.
8393
8394 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8395
8396         * stack.c (func_command): Remove trailing newline in call to error.
8397
8398 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8399
8400         * regcache.h (regcache_raw_collect): Remove, update callers to
8401         use regcache::raw_collect.
8402         * regcache.c (regcache_raw_collect): Remove.
8403
8404 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8405
8406         * regcache.h (regcache_raw_supply): Remove, update callers to
8407         use detached_regcache::raw_supply.
8408         * regcache.c (regcache_raw_supply): Remove.
8409
8410 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8411
8412         * regcache.h (regcache_cooked_write_part): Remove, update
8413         callers to use regcache::cooked_write_part.
8414         * regcache.c (regcache_cooked_write_part): Remove.
8415
8416 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8417
8418         * regcache.h (regcache_cooked_read_part): Remove, update callers
8419         to use readable_regcache::cooked_read_part.
8420         * regcache.c (regcache_cooked_read_part): Remove.
8421
8422 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8423
8424         * regcache.h (regcache_cooked_read_value): Remove, update
8425         callers to use readable_regcache::cooked_read_value.
8426         * regcache.c (regcache_cooked_read_value): Remove.
8427
8428 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8429
8430         * regcache.h (regcache_cooked_write): Remove, update callers to
8431         use regcache::cooked_write.
8432         * regcache.c (regcache_cooked_write): Remove.
8433
8434 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8435
8436         * regcache.h (regcache_invalidate): Remove, update callers to
8437         use detached_regcache::invalidate instead.
8438         * regcache.c (regcache_invalidate): Remove.
8439
8440 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8441
8442         * regcache.h (regcache_raw_write_part): Remove, update callers
8443         to use regcache::raw_write_part instead.
8444         * regcache.c (regcache_raw_write_part): Remove.
8445
8446 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8447
8448         * regcache.h (regcache_raw_read_part): Remove, update callers to
8449         use readable_regcache::raw_read_part instead.
8450         * regcache.c (regcache_raw_read_part): Remove.
8451
8452 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8453
8454         * regcache.h (regcache_cooked_read): Remove, update callers to
8455         use readable_regcache::cooked_read instead.
8456         * regcache.c (regcache_cooked_read): Remove.
8457
8458 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8459
8460         * regcache.h (regcache_raw_write): Remove, update callers to use
8461         regcache::raw_write instead.
8462         * regcache.c (regcache_raw_write): Remove.
8463
8464 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8465
8466         * regcache.h (regcache_raw_read): Remove, update callers to use
8467         readable_regcache::raw_read instead.
8468         * regcache.c (regcache_raw_read): Remove.
8469
8470 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8471
8472         * regcache.h (regcache_raw_update): Remove, update callers to
8473         use readable_regcache::raw_update instead.
8474         * regcache.c (regcache_raw_update): Remove.
8475
8476 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8477
8478         * regcache.h (regcache_register_status): Remove, update callers
8479         to use reg_buffer::get_register_status directly instead.
8480         * regcache.c (regcache_register_status): Remove.
8481
8482 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8483
8484         * regcache.h (regcache_get_ptid): Remove, update all callers to
8485         call regcache::ptid instead.
8486         * regcache.c (regcache_get_ptid): Remove.
8487
8488 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8489
8490         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8491
8492 2018-05-30  Pedro Alves  <palves@redhat.com>
8493
8494         * common/common-exceptions.h (exception_rethrow): Use
8495         ATTRIBUTE_NORETURN.
8496
8497 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8498
8499         * breakpoint.c (print_solib_event, check_status_catch_solib):
8500         Remove struct keyword in range-based for loops.
8501         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8502         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8503         Likewise.
8504         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8505         Likewise.
8506         * symfile.c (addr_info_make_relative): Likewise.
8507         * thread.c (value_in_thread_stack_temporaries): Likewise.
8508
8509 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8510
8511         PR gdb/16841
8512         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8513         aggregate type to get its real type before accessing it.
8514
8515 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8516
8517         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8518         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8519         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8520         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8521         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8522         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8523         * printcmd.c (info_address_command): Likewise.
8524
8525 2018-05-29  Tom Tromey  <tom@tromey.com>
8526
8527         * windows-nat.c (handle_exception): Update fall-through comment.
8528
8529 2018-05-29  Tom Tromey  <tom@tromey.com>
8530
8531         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8532         (struct program_space) <added_solibs>: Now a std::vector.
8533         * breakpoint.c (print_solib_event): Update.
8534         (check_status_catch_solib): Update.
8535         * progspace.c (clear_program_space_solib_cache): Update.
8536         * solib.c (update_solib_list): Update.
8537
8538 2018-05-29  Tom Tromey  <tom@tromey.com>
8539
8540         * python/py-type.c (typy_richcompare): Update.
8541         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8542         * gdbtypes.h (types_deeply_equal): Return bool.
8543         (types_equal): Likewise.
8544         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8545         declare VEC.
8546         (check_types_equal): Change worklist to std::vector.  Return
8547         bool.
8548         (struct type_equality_entry): Add constructor.
8549         (compare_maybe_null_strings): Return bool.
8550         (check_types_worklist): Return bool.  Change worklist to
8551         std::vector.
8552         (types_deeply_equal): Use std::vector.
8553         (types_equal): Return bool.
8554         (compare_maybe_null_strings): Simplify.
8555
8556 2018-05-29  Tom Tromey  <tom@tromey.com>
8557
8558         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8559
8560 2018-05-29  Tom Tromey  <tom@tromey.com>
8561
8562         * objc-lang.h: Don't include cp-support.h.
8563         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8564         declare VEC.
8565
8566 2018-05-27  Tom Tromey  <tom@tromey.com>
8567
8568         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8569
8570 2018-05-25  Tom Tromey  <tom@tromey.com>
8571
8572         * value.c (value::location): Initialize.
8573
8574 2018-05-25  Tom Tromey  <tom@tromey.com>
8575
8576         * dbxread.c (init_bincl_list): Remove.
8577         (bincl_list): Now a std::vector.
8578         (bincls_allocated, next_bincl): Remove.
8579         (free_bincl_list, do_free_bincl_list_cleanup)
8580         (make_cleanup_free_bincl_list): Remove.
8581         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8582         unique_xmalloc_ptr.
8583         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8584         (struct header_file_location): Add constructor.
8585         (add_bincl_to_list): Remove.
8586
8587 2018-05-25  Tom Tromey  <tom@tromey.com>
8588
8589         * tui/tui.c (tui_enable): Update.
8590         * mi/mi-interp.c (mi_interp::init): Update.
8591         * interps.h (class interp) <name>: New method.
8592         <m_name>: Rename from name.
8593         (~scoped_restore_interp): Update.
8594         * interps.c (interp::interp): Update.
8595         (interp_add, interp_set, interp_lookup_existing)
8596         (current_interp_named_p): Update.
8597
8598 2018-05-25  Tom Tromey  <tom@tromey.com>
8599
8600         * interps.c (interp_name): Remove.
8601         * mi/mi-interp.c (mi_interp::init): Update.
8602         * interps.h (interp_name): Remove.
8603         (~scoped_restore_interp): Update.
8604         * tui/tui.c (tui_enable): Update.
8605
8606 2018-05-25  Tom Tromey  <tom@tromey.com>
8607
8608         * utils.c (fputs_maybe_filtered): Update.
8609         * linespec.c (decode_line_full): Update.
8610         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8611         (mi_print_breakpoint_for_event, mi_solib_loaded)
8612         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8613         (mi_user_selected_context_changed): Update.
8614         * mi/mi-main.c (mi_execute_command): Update.
8615         * cli/cli-script.c (execute_control_command): Update.
8616         * python/python.c (execute_gdb_command): Update.
8617         * solib.c (info_sharedlibrary_command): Update.
8618         * interps.c (interp_ui_out): Remove.
8619         * interps.h (interp_ui_out): Remove.
8620
8621 2018-05-25  Tom Tromey  <tom@tromey.com>
8622
8623         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8624         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8625         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8626
8627 2018-05-25  Tom Tromey  <tom@tromey.com>
8628
8629         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8630         * interps.c (interp_exec): Use scoped_restore.
8631
8632 2018-05-25  Tom Tromey  <tom@tromey.com>
8633
8634         * remote.c (remote_target::remote_file_get): Use
8635         gdb::byte_vector.
8636         (remote_target::remote_file_put): Likewise.
8637
8638 2018-05-25  Tom Tromey  <tom@tromey.com>
8639
8640         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8641         a std::string.
8642         (get_pe_section_index, add_pe_exported_sym): Update.
8643         (read_pe_exported_syms): Use gdb::def_vector.
8644
8645 2018-05-25  Tom Tromey  <tom@tromey.com>
8646
8647         * frame.c (remove_prev_frame): Remove.
8648         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8649
8650 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8651
8652         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8653         Remove prototypes.
8654         * mips-linux-nat.c (supply_fpregset): Always call
8655         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8656         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8657         `mips_fill_fpregset'.
8658         * mips-linux-tdep.c (mips_supply_fpregset)
8659         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8660         (mips_fill_fpregset_wrapper): Remove functions.
8661         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8662         (mips_linux_fpregset): Remove variable.
8663         (mips_linux_iterate_over_regset_sections): Use
8664         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8665         (mips_linux_o32_sigframe_init): Remove comment.
8666
8667 2018-05-25  Pedro Alves  <palves@redhat.com>
8668
8669         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8670         (struct readahead_cache, struct packet_reg, struct
8671         remote_arch_state, class remote_state): Move higher up in the
8672         file.
8673         (remote_target::m_remote_state): Now an object instead of a pointer.
8674         (remote_target::get_remote_state): Adjust.
8675
8676 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8677
8678         * stack.c (select_and_print_frame): Delete.
8679         (struct function_bounds): Move struct within function.
8680         (func_command): Most content moved into new function
8681         find_frame_for_function, use new function, print result, add
8682         function comment.
8683         (find_frame_for_function): New function, now returns a result.
8684
8685 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8686
8687         * stack.c (iterate_over_block_arg_vars): Fix comment.
8688         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8689
8690 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8691
8692         PR gdb/23203
8693         * frame.c
8694         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8695         Define.
8696         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8697         Define.
8698         * frame.h (class scoped_restore_selected_frame): New class.
8699         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8700         of any exception, use scoped_restore_selected_frame to restore the
8701         frame instead.
8702
8703 2018-05-24  Pedro Alves  <palves@redhat.com>
8704
8705         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8706         override.
8707
8708 2018-05-23  Tom Tromey  <tom@tromey.com>
8709
8710         * complaints.c (struct complaints): Remove.
8711         (symfile_complaint_book): Remove.
8712         (series): New global.
8713         (complaint_internal): Update.
8714         (clear_complaints): Update.
8715
8716 2018-05-23  Tom Tromey  <tom@tromey.com>
8717
8718         * complaints.c (counters): New global.
8719         (struct complain): Remove.
8720         (struct complaints) <root>: Remove.
8721         (complaint_sentinel): Remove.
8722         (symfile_complaint_book): Update.
8723         (find_complaint) Remove.
8724         (complaint_internal, clear_complaints): Update.
8725
8726 2018-05-23  Tom Tromey  <tom@tromey.com>
8727
8728         * complaints.c (struct complain) <file, line>: Remove.
8729         (find_complaint): Remove file, line parameters.
8730         (complaint_internal): Update.
8731
8732 2018-05-23  Tom Tromey  <tom@tromey.com>
8733
8734         * complaints.c (vcomplaint): Remove.
8735         (complaint_internal) Merge in contents of vcomplaint.
8736
8737 2018-05-23  Tom Tromey  <tom@tromey.com>
8738
8739         * complaints.c (struct complaints) <explanation>: Remove.
8740         (symfile_explanations): Remove.
8741         (symfile_complaint_book): Update.
8742         (vcomplaint): Update.
8743         (struct explanation): Remove.
8744
8745 2018-05-23  Tom Tromey  <tom@tromey.com>
8746
8747         * complaints.c (symfile_complaints): Remove.
8748         (complaint_internal): Remove "complaints" parameter.
8749         (clear_complaints, vcomplaint): Remove "c" parameter.
8750         (get_complaints): Remove.
8751         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8752         (dwarf2_debug_line_missing_file_complaint)
8753         (dwarf2_debug_line_missing_end_sequence_complaint)
8754         (dwarf2_complex_location_expr_complaint)
8755         (dwarf2_const_value_length_mismatch_complaint)
8756         (dwarf2_section_buffer_overflow_complaint)
8757         (dwarf2_macro_malformed_definition_complaint)
8758         (dwarf2_invalid_attrib_class_complaint)
8759         (create_addrmap_from_index, dw2_symtab_iter_next)
8760         (dw2_expand_marked_cus)
8761         (dw2_debug_names_iterator::find_vec_in_debug_names)
8762         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8763         (create_debug_type_hash_table, init_cutu_and_read_dies)
8764         (partial_die_parent_scope, add_partial_enumeration)
8765         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8766         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8767         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8768         (create_cus_hash_table, create_dwp_hash_table)
8769         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8770         (dwarf2_rnglists_process, dwarf2_ranges_process)
8771         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8772         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8773         (handle_struct_member_die, process_structure_scope)
8774         (read_array_type, read_common_block, read_module_type)
8775         (read_tag_pointer_type, read_typedef, read_base_type)
8776         (read_subrange_type, load_partial_dies, partial_die_info::read)
8777         (partial_die_info::read, partial_die_info::read)
8778         (partial_die_info::read, read_checked_initial_length_and_offset)
8779         (dwarf2_string_attr, read_formatted_entries)
8780         (dwarf_decode_line_header)
8781         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8782         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8783         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8784         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8785         (get_signatured_type, get_DW_AT_signature_type)
8786         (decode_locdesc, file_file_name, consume_improper_spaces)
8787         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8788         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8789         (dwarf2_symbol_mark_computed, set_die_type)
8790         (read_attribute_value): Update.
8791         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8792         Update.
8793         * dbxread.c (unknown_symtype_complaint)
8794         (lbrac_mismatch_complaint, repeated_header_complaint)
8795         (set_namestring, function_outside_compilation_unit_complaint)
8796         (read_dbx_symtab, process_one_symbol): Update.
8797         * gdbtypes.c (stub_noname_complaint): Update.
8798         * windows-nat.c (handle_unload_dll): Update.
8799         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8800         (decode_base_type): Update.
8801         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8802         (eb_complaint, record_include_begin, record_include_end)
8803         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8804         (process_xcoff_symbol, read_symbol)
8805         (function_outside_compilation_unit_complaint)
8806         (scan_xcoff_symtab): Update.
8807         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8808         * buildsym.c (finish_block_internal, make_blockvector)
8809         (end_symtab_get_static_block, augment_type_symtab): Update.
8810         * dtrace-probe.c (dtrace_process_dof)
8811         (dtrace_static_probe_ops::get_probes): Update.
8812         * complaints.h (struct complaint): Don't declare.
8813         (symfile_complaints): Remove.
8814         (complaint_internal): Remove "complaints" parameter.
8815         (complaint): Likewise.
8816         (clear_complaints): Likewise.
8817         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8818         (reread_symbols): Update.
8819         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8820         (dwarf2_frame_cache, decode_frame_entry): Update.
8821         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8822         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8823         (info_selectors_command): Update.
8824         * macrotab.c (macro_include, check_for_redefinition)
8825         (macro_undef): Update.
8826         * objfiles.c (filter_overlapping_sections): Update.
8827         * stabsread.c (invalid_cpp_abbrev_complaint)
8828         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8829         (define_symbol, error_type, read_type, rs6000_builtin_type)
8830         (stabs_method_name_from_physname, read_member_functions)
8831         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8832         (attach_fields_to_type, complain_about_struct_wipeout)
8833         (read_range_type, read_args, common_block_start)
8834         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8835         Update.
8836         * mdebugread.c (index_complaint, unknown_ext_complaint)
8837         (basic_type_complaint, bad_tag_guess_complaint)
8838         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8839         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8840         (parse_procedure, parse_lines)
8841         (function_outside_compilation_unit_complaint)
8842         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8843         (bad_tag_guess_complaint, reg_value_complaint): Update.
8844         * cp-support.c (demangled_name_complaint): Update.
8845         * macroscope.c (sal_macro_scope): Update.
8846         * dwarf-index-write.c (class debug_names): Update.
8847
8848 2018-05-23  Tom Tromey  <tom@tromey.com>
8849
8850         * complaints.c (clear_complaints): Remove "noisy" parameter.
8851         * complaints.h (clear_complaints): Update.
8852         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8853         (reread_symbols): Update.
8854
8855 2018-05-23  Tom Tromey  <tom@tromey.com>
8856
8857         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8858         SUBSEQUENT_MESSAGE.
8859         (vcomplaint, clear_complaints): Update.
8860         (symfile_explanations): Remove some messages.
8861
8862 2018-05-23  Tom Tromey  <tom@tromey.com>
8863
8864         * complaints.c (internal_complaint): Remove.
8865         * complaints.h (internal_complaint): Remove.
8866
8867 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8868
8869         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8870
8871 2018-05-22  Pedro Alves  <palves@redhat.com>
8872
8873         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8874         (remote_fileio_badfd, remote_fileio_return_errno)
8875         (remote_fileio_return_success, remote_fileio_func_open)
8876         (remote_fileio_func_open, remote_fileio_func_close)
8877         (remote_fileio_func_read, remote_fileio_func_write)
8878         (remote_fileio_func_lseek, remote_fileio_func_rename)
8879         (remote_fileio_func_unlink, remote_fileio_func_stat)
8880         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8881         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8882         remote_target parameter.
8883         (remote_fio_func_map) <func>: Add remote_target parameter.
8884         (do_remote_fileio_request, remote_fileio_request):
8885         * remote-fileio.h (remote_fileio_request):
8886         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8887         remote_target parameter.
8888         (remote_notif_process, handle_notification): Adjust to pass down
8889         the remote.
8890         (remote_notif_state_allocate): Add remote_target parameter.  Save
8891         it.
8892         * remote-notif.h (struct remote_target): Forward declare.
8893         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8894         remote_target parameter.
8895         (struct remote_notif_state) <remote>: New field.
8896         (remote_notif_ack, remote_notif_parse): Add remote_target
8897         parameter.
8898         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8899         remote_target parameter.
8900         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8901         (threads_listing_context, rmt_thread_action, protocol_feature)
8902         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8903         (packet_result, struct threads_listing_context, remote_state):
8904         Move definitions and declarations higher up.
8905         (remote_target) <~remote_target>: Declare.
8906         (remote_download_command_source, remote_file_put, remote_file_get)
8907         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8908         (remote_hostio_pread_vFile, remote_hostio_send_command)
8909         (remote_hostio_set_filesystem, remote_hostio_open)
8910         (remote_hostio_close, remote_hostio_unlink, remote_state)
8911         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8912         (get_memory_write_packet_size, get_memory_read_packet_size)
8913         (append_pending_thread_resumptions, remote_detach_1)
8914         (append_resumption, remote_resume_with_vcont)
8915         (add_current_inferior_and_thread, wait_ns, wait_as)
8916         (process_stop_reply, remote_notice_new_inferior)
8917         (process_initial_stop_replies, remote_add_thread)
8918         (btrace_sync_conf, remote_btrace_maybe_reopen)
8919         (remove_new_fork_children, kill_new_fork_children)
8920         (discard_pending_stop_replies, stop_reply_queue_length)
8921         (check_pending_events_prevent_wildcard_vcont)
8922         (discard_pending_stop_replies_in_queue, stop_reply)
8923         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8924         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8925         (remote_interrupt_as, remote_interrupt_ns)
8926         (remote_get_noisy_reply, remote_query_attached)
8927         (remote_add_inferior, remote_current_thread, get_current_thread)
8928         (set_thread, set_general_thread, set_continue_thread)
8929         (set_general_process, write_ptid)
8930         (remote_unpack_thread_info_response, remote_get_threadinfo)
8931         (parse_threadlist_response, remote_get_threadlist)
8932         (remote_threadlist_iterator, remote_get_threads_with_ql)
8933         (remote_get_threads_with_qxfer)
8934         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8935         (get_offsets, remote_check_symbols, remote_supported_packet)
8936         (remote_query_supported, remote_packet_size)
8937         (remote_serial_quit_handler, remote_detach_pid)
8938         (remote_vcont_probe, remote_resume_with_hc)
8939         (send_interrupt_sequence, interrupt_query)
8940         (remote_notif_get_pending_events, fetch_register_using_p)
8941         (send_g_packet, process_g_packet, fetch_registers_using_g)
8942         (store_register_using_P, store_registers_using_G)
8943         (set_remote_traceframe, check_binary_download)
8944         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8945         (remote_xfer_live_readonly_partial, remote_read_bytes)
8946         (remote_send_printf, remote_flash_write, readchar)
8947         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8948         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8949         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8950         (extended_remote_disable_randomization, extended_remote_run)
8951         (send_environment_packet, extended_remote_environment_support)
8952         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8953         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8954         (packet_command): Now methods of ...
8955         (remote_target): ... this class.
8956         (m_remote_state) <remote_target>: New field.
8957         (struct remote_state) <stop_reply_queue,
8958         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8959         fields.
8960         (remote_state::remote_state): Allocate stop_reply_queue.
8961         (remote_state): Delete global.
8962         (get_remote_state_raw): Delete.
8963         (remote_target::get_remote_state): Allocate m_remote_state on
8964         demand.
8965         (get_current_remote_target): New.
8966         (remote_ops, extended_remote_ops): Delete.
8967         (wait_forever_enabled_p, remote_async_inferior_event_token):
8968         Delete, moved to struct remote_state.
8969         (remote_target::close): Delete self.  Destruction bits split to
8970         ...
8971         (remote_target::~remote_target): ... this.
8972         (show_memory_packet_size): Adjust to use
8973         get_current_remote_target.
8974         (struct protocol_feature) <func>: Add remote_target parameter.
8975         All callers adjusted.
8976         (curr_quit_handler_target): New.
8977         (remote_serial_quit_handler): Reimplement.
8978         (remote_target::open_1): Adjust to use get_current_remote_target.
8979         Heap-allocate remote_target/extended_remote_target instances.
8980         (vcont_builder::vcont_builder): Add remote_target parameter, and
8981         save it in m_remote.  All callers adjusted.
8982         (vcont_builder::m_remote): New field.
8983         (vcont_builder::restart, vcont_builder::flush)
8984         (vcont_builder::push_action): Use it.
8985         (remote_target::commit_resume): Use it.
8986         (struct queue_iter_param) <remote>: New field.
8987         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8988         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8989         (check_pending_event_prevents_wildcard_vcont_callback)
8990         (remote_target::check_pending_events_prevent_wildcard_vcont)
8991         (remote_target::discard_pending_stop_replies)
8992         (remote_target::discard_pending_stop_replies_in_queue)
8993         (remote_target::remote_notif_remove_queued_reply): Fill in
8994         'remote' field.
8995         (remote_notif_get_pending_events): New.
8996         (remote_target::readchar, remote_target::remote_serial_write):
8997         Save/restore curr_quit_handler_target.
8998         (putpkt): New.
8999         (kill_new_fork_children): Fill in 'remote' field.
9000         (packet_command): Use get_current_remote_target, defer to
9001         remote_target method of same name.
9002         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9003         parameter, and save it in m_remote.  All callers adjusted.
9004         (scoped_remote_fd::release): Use m_remote.
9005         (scoped_remote_fd::m_remote): New field.
9006         (remote_file_put, remote_file_get, remote_file_delete): Use
9007         get_current_remote_target, defer to remote_target method of same
9008         name.
9009         (remote_btrace_reset): Add remote_state paremeter.  Update all
9010         callers.
9011         (remote_async_inferior_event_handler). Pass down 'data'.
9012         (remote_new_objfile): Use get_current_remote_target.
9013         (remote_target::vcont_r_supported): New.
9014         (set_range_stepping): Use get_current_remote_target and
9015         remote_target::vcont_r_supported.
9016         (_initialize_remote): Don't allocate 'remote_state' and
9017         'stop_reply_queue' globals.
9018         * remote.h (struct remote_target): Forward declare.
9019         (getpkt, putpkt, remote_notif_get_pending_events): Add
9020         'remote_target' parameter.
9021
9022 2018-05-22  Pedro Alves  <palves@redhat.com>
9023
9024         * remote.c (vcont_builder): Now a class.  Make all data members
9025         private.
9026         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9027         Declare methods.
9028         (vcont_builder_restart): Rename to ...
9029         (vcont_builder::restart): ... this.
9030         (vcont_builder_flush): Rename to ...
9031         (vcont_builder::flush): ... this.
9032         (vcont_builder_push_action): Rename to ...
9033         (vcont_builder::push_action): ... this.
9034         (remote_target::commit_resume): Adjust.
9035
9036 2018-05-22  Pedro Alves  <palves@redhat.com>
9037
9038         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9039         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9040         (get_fixed_memory_packet_size): New.
9041         (get_memory_packet_size): Use it.
9042         (set_memory_packet_size): Don't override the config size with
9043         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9044         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9045         Don't refer to get_memory_packet_size if not connected to a remote
9046         target.  Show "(default)" if configured size is 0.
9047
9048 2018-05-22  Pedro Alves  <palves@redhat.com>
9049
9050         * remote.c (remote_target::mourn_inferior): Move
9051         discard_pending_stop_replies call here from ...
9052         (_initialize_remote): ... here.
9053
9054 2018-05-22  Pedro Alves  <palves@redhat.com>
9055
9056         * remote.c (compare_section_command): Remove set_general_process
9057         call.
9058
9059 2018-05-22  Pedro Alves  <palves@redhat.com>
9060
9061         * remote.c (struct packet_reg, struct remote_arch_state):
9062         Move higher up in the file.
9063         (remote_state) <m_arch_states>: Store remote_arch_state values
9064         instead of remote_arch_state pointers.
9065         (remote_state::get_remote_arch_state): Adjust.
9066
9067 2018-05-22  Pedro Alves  <palves@redhat.com>
9068
9069         * remote.c: Include <unordered_map>.
9070         (remote_state): Now a class.
9071         (remote_state) <get_remote_arch_state>: Declare method.
9072         <get_remote_arch_state>: New field.
9073         (remote_arch_state) <remote_arch_state>: Declare ctor.
9074         <regs>: Now a unique_ptr.
9075         (remote_gdbarch_data_handle): Delete.
9076         (get_remote_arch_state): Delete.
9077         (remote_state::get_remote_arch_state): New.
9078         (get_remote_state): Adjust to call remote_state's
9079         get_remote_arch_state method.
9080         (init_remote_state): Delete, bits factored out to ...
9081         (remote_arch_state::remote_arch_state): ... this new method.
9082         (get_remote_packet_size, get_memory_packet_size)
9083         (process_g_packet, remote_target::fetch_registers)
9084         (remote_target::prepare_to_store, store_registers_using_G)
9085         (remote_target::store_registers, remote_target::get_trace_status):
9086         Adjust to call remote_state's method.
9087         (_initialize_remote): Remove reference to
9088         remote_gdbarch_data_handle.
9089
9090 2018-05-22  Pedro Alves  <palves@redhat.com>
9091
9092         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9093         pread>: New method declarations.
9094         (remote_target::open_1): Adjust.
9095         (readahead_cache_invalidate): Rename to ...
9096         (readahead_cache::invalidate): ... this, and adjust to be a class
9097         method.
9098         (readahead_cache_invalidate_fd): Rename to ...
9099         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9100         class method.
9101         (remote_hostio_pwrite): Adjust.
9102         (remote_hostio_pread_from_cache): Rename to ...
9103         (readahead_cache::pread): ... this, and adjust to be a class
9104         method.
9105         (remote_hostio_close): Adjust.
9106
9107 2018-05-22  Pedro Alves  <palves@redhat.com>
9108
9109         * remote.c (remote_hostio_close_cleanup): Delete.
9110         (class scoped_remote_fd): New.
9111         (remote_file_put, remote_file_get): Use it.
9112
9113 2018-05-22  Pedro Alves  <palves@redhat.com>
9114
9115         (struct vCont_action_support): Use bool and initialize all fields.
9116         (struct readahead_cache): Initialize all fields.
9117         (remote_state): Use bool and initialize all fields.
9118         (remote_state::remote_state, remote_state::~remote_state): New.
9119         (new_remote_state): Delete.
9120         (_initialize_remote): Use new to allocate remote_state.
9121
9122 2018-05-22  Pedro Alves  <palves@redhat.com>
9123             張俊芝  <zjz@zjz.name>
9124
9125         PR gdb/22973
9126         * c-exp.y: Include "c-support.h".
9127         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9128         of tolower.  Use c_ident_is_alpha to scan names.
9129         * c-lang.c: Include "c-support.h".
9130         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9131         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9132         * c-support.h: New file, with bits factored out from ...
9133         * cp-name-parser.y: ... this file.
9134         Include "c-support.h".
9135         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9136         c-support.h and renamed.
9137         (symbol_end, yylex): Adjust.
9138
9139 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9140
9141         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9142         parameter type to CORE_ADDR.
9143         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9144         parameter type in declaration to CORE_ADDR.
9145         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9146         target_auxv_search to get AT_HWCAP and use the result to get the
9147         target description.
9148         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9149         to CORE_ADDR. Remove the cast of the return value to unsigned
9150         long. Fix error predicate of target_auxv_search.
9151         (ppc_linux_nat_target::read_description): Change the type of the
9152         hwcap variable to CORE_ADDR.
9153
9154 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9155
9156         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9157         if the size of fpscr is larger than 32 bits.
9158
9159 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9160
9161         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9162         (ppc32_linux_vsxregmap): New global.
9163         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9164         regcache_supply_regset, and regcache_collect_regset.
9165         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9166         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9167         (fetch_vsx_register, store_vsx_register): Remove.
9168         (fetch_vsx_registers): Add regno parameter. Get regset using
9169         ppc_linux_vsxregset. Use regset to supply registers.
9170         (store_vsx_registers): Add regno parameter. Get regset using
9171         ppc_linux_vsxregset. Use regset to collect registers.
9172         (fetch_register): Call fetch_vsx_registers instead of
9173         fetch_vsx_register.
9174         (store_register): Call store_vsx_registers instead of
9175         store_vsx_register.
9176         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9177         new regno parameter.
9178         (store_ppc_registers): Call store_vsx_registers with -1 for the
9179         new regno parameter.
9180         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9181         (ppc_collect_vsxregset): Remove.
9182
9183 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9184
9185         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9186         offset fields.
9187         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9188         for vector register offset fields.
9189         (ppc64_fbsd_reg_offsets): Likewise.
9190         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9191         to vector register offset fields.
9192         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9193         to vector register offset fields.
9194         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9195         vector register offset fields.
9196         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9197         initializers for vector register offset fields.
9198         (rs6000_aix64_reg_offsets): Likewise.
9199         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9200         (ppc_supply_vrregset): Remove.
9201         (ppc_collect_vrregset): Remove.
9202         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9203         (ppc_linux_vrregset) : New function.
9204         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9205         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9206         (ppc32_linux_vrregset): Remove.
9207         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9208         and use result instead of ppc32_linux_vrregset.
9209         (ppc32_linux_reg_offsets): Remove initializers for vector register
9210         offset fields.
9211         (ppc64_linux_reg_offsets): Likewise.
9212         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9213         * ppc-linux-nat.c: Include regset.h.
9214         (gdb_vrregset_t): Adjust comment to account for little-endian
9215         mode.
9216         (supply_vrregset, fill_vrregset): Remove.
9217         (fetch_altivec_register, store_altivec_register): Remove.
9218         (fetch_altivec_registers): Add regno parameter. Get regset using
9219         ppc_linux_vrregset. Use regset to supply registers.
9220         (store_altivec_registers): Add regno parameter. Get regset using
9221         ppc_linux_vrregset. Use regset to collect registers.
9222         (fetch_register): Call fetch_altivec_registers instead of
9223         fetch_altivec_register.
9224         (store_register): Call store_altivec_registers instead of
9225         store_altivec_register.
9226         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9227         the new regno parameter.
9228         (store_ppc_registers): Call store_altivec_registers with -1 for
9229         the new regno parameter.
9230
9231 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9232
9233         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9234         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9235         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9236         (gdb_vrregset_t): Change array type size to
9237         PPC_LINUX_SIZEOF_VRREGSET.
9238         (gdb_vsxregset_t): Change array type size to
9239         PPC_LINUX_SIZEOF_VSXREGSET.
9240         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9241         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9242         PPC_LINUX_SIZEOF_VSXREGSET.
9243
9244 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9245
9246         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9247         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9248         nat/ppc-linux.c.
9249         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9250         ppc_linux_target_wordsize with tid.
9251         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9252         wordsize with tid.
9253         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9254         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9255         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9256         tid parameter. Remove static specifier.
9257         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9258         (ppc_linux_target_wordsize): New declaration.
9259
9260 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9261
9262         * arch/ppc-linux-common.c: New file.
9263         * arch/ppc-linux-common.h: New file.
9264         * arch/ppc-linux-tdesc.h: New file.
9265         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9266         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9267         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9268         arch/ppc-linux-tdesc.h.
9269         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9270         arch/ppc-linux-tdesc.h.
9271         (ppc_linux_nat_target::read_description): Remove target
9272         description matching code. Fill a ppc_linux_features struct and
9273         call ppc_linux_match_description with it. Move comment about ISA
9274         2.05 to ppc-linux-common.c.
9275         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9276         arch/ppc-linux-tdesc.h.
9277         (ppc_linux_core_read_description): Remove target description
9278         matching code. Fill a ppc_linux_features struct and call
9279         ppc_linux_match_description with it.
9280         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9281         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9282         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9283         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9284         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9285         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9286         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9287         (tdesc_powerpc_e500l): Remove.
9288
9289 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9290
9291         * ada-lang.c (catch_assert_command): Pass empty string instead
9292         of NULL for excep_string argument.
9293
9294 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9295
9296         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9297         the width of the requested register exceeds the width of the
9298         `ptrace' data type.
9299
9300 2018-05-21  Tom Tromey  <tom@tromey.com>
9301
9302         * printcmd.c (output_command): Remove.
9303         (output_command_const): Rename to output_command.
9304         * valprint.h (output_command): Rename from output_command_const.
9305         * tracepoint.c (trace_dump_actions): Call output_command.
9306
9307 2018-05-21  Tom Tromey  <tom@tromey.com>
9308
9309         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9310         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9311         * ada-lang.h (create_ada_exception_catchpoint): Update.
9312         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9313         std::string.
9314         (create_excep_cond_exprs, ~ada_catchpoint)
9315         (should_stop_exception, print_one_exception)
9316         (print_mention_exception, print_recreate_exception): Update.
9317         (ada_get_next_arg): Remove.
9318         (catch_ada_exception_command_split): Use std::string.  Change type
9319         of "excep_string", "cond_string".
9320         (catch_ada_exception_command): Update.
9321         (create_ada_exception_catchpoint): Change type of excep_string.
9322         (ada_exception_sal): Remove excep_string parameter.
9323         (~ada_catchpoint): Remove.
9324
9325 2018-05-21  Tom Tromey  <tom@tromey.com>
9326
9327         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9328         cleanup.
9329
9330 2018-05-21  Tom Tromey  <tom@tromey.com>
9331
9332         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9333         Return unique_xmalloc_ptr.
9334         (print_it_exception): Update.
9335
9336 2018-05-21  Tom Tromey  <tom@tromey.com>
9337
9338         * tracepoint.c (trace_dump_actions): Use std::string.
9339
9340 2018-05-21  Tom Tromey  <tom@tromey.com>
9341
9342         * symfile.c (reread_symbols): Use std::string for original_name.
9343
9344 2018-05-21  Tom Tromey  <tom@tromey.com>
9345
9346         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9347         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9348         constructor.
9349
9350 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9351
9352         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9353         instance to...
9354         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9355         * objfiles.c (get_objfile_bfd_data): Allocate
9356         objfile_per_bfd_storage with obstack_new when allocating on
9357         obstack.
9358
9359 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9360
9361         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9362         OBSTACK_ZALLOC.
9363         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9364         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9365         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9366         (add_pending): Likewise.
9367         (parse_symbol): Likewise.
9368         (parse_partial_symbols): Likewise.
9369         (psymtab_to_symtab_1): Likewise.
9370         (new_psymtab): Likewise.
9371         (elfmdebug_build_psymtabs): Likewise.
9372         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9373         * objfiles.c (get_objfile_bfd_data): Likewise.
9374         (objfile_register_static_link): Likewise.
9375         * psymtab.c (allocate_psymtab): Likewise.
9376         * stabsread.c (read_member_functions): Likewise.
9377         * xcoffread.c (xcoff_end_psymtab): Likewise.
9378
9379 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9380
9381         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9382         compiler supports std::is_trivially_constructible.
9383         * common/poison.h: Include obstack.h.
9384         (IsMallocable): Define to is_trivially_constructible if the
9385         compiler supports it, define to true_type otherwise.
9386         (xobnew): New.
9387         (XOBNEW): Redefine.
9388         (xobnewvec): New.
9389         (XOBNEWVEC): Redefine.
9390         * gdb_obstack.h (obstack_zalloc): New.
9391         (OBSTACK_ZALLOC): Redefine.
9392         (obstack_calloc): New.
9393         (OBSTACK_CALLOC): Redefine.
9394         (obstack_new): New.
9395         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9396         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9397         gdbarch.c.
9398         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9399         obstack_calloc/obstack_zalloc.
9400         (gdbarch_obstack_zalloc): Remove.
9401         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9402
9403 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9404
9405         * stack.c (backtrace_command_1): Remove useless variable int i.
9406
9407 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9408
9409         * stack.c (print_frame_info): Fix comment.
9410
9411 2018-05-18  Tom Tromey  <tom@tromey.com>
9412
9413         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9414         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9415         (~dwarf2_per_objfile): Update
9416         (dwarf2_get_dwz_file): Use new.
9417         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9418         unique_ptr.
9419
9420 2018-05-18  Tom Tromey  <tom@tromey.com>
9421
9422         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9423         unique_ptr.
9424         * dwarf2read.c (struct dwp_file): Add constructor and
9425         initializers.
9426         (open_and_init_dwp_file): Return a unique_ptr.
9427         (dwarf2_per_objfile, create_dwp_hash_table)
9428         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9429         (lookup_dwo_unit_in_dwp): Update.
9430         (open_and_init_dwp_file, get_dwp_file): Update.
9431
9432 2018-05-18  Tom Tromey  <tom@tromey.com>
9433
9434         * dwarf2read.c (dwarf2_per_objfile): Update.
9435         (struct mapped_index): Add initializers.
9436         (dwarf2_read_index): Use new.
9437         (dw2_symtab_iter_init): Update.
9438         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9439         unique_ptr.
9440
9441 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9442
9443         * dwarf2read.c (mapped_index) <total_size>: Remove.
9444
9445 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9446
9447         * unittests/format_pieces-selftests.c (test_format_specifier):
9448         Add ARI comments.
9449
9450 2018-05-18  Tom Tromey  <tom@tromey.com>
9451
9452         * c-typeprint.c (maybe_print_hole): New function.
9453         (c_print_type_struct_field_offset): Update.
9454         (c_type_print_base_struct_union): Call maybe_print_hole.
9455
9456 2018-05-17  Keith Seitz  <keiths@redhat.com>
9457
9458         * breakpoint.c (build_bpstat_chain): New function, moved from
9459         bpstat_stop_status.
9460         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9461         If no stop chain is passed, call build_bpstat_chain to build it.
9462         * breakpoint.h (build_bpstat_chain): Declare.
9463         (bpstat_stop_status): Move documentation here from breakpoint.c.
9464         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9465         build the stop chain and pass it to skip_inline_frames.
9466         Pass this stop chain to bpstat_stop_status.
9467         * inline-frame.c: Include breakpoint.h.
9468         (stopped_by_user_bp_inline_frame): New function.
9469         (skip_inline_frames): Add parameter `stop_chain'.
9470         Move documention to inline-frame.h.
9471         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9472         whether the frame should be elided.
9473         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9474         Add moved documentation and update for new parameter.
9475
9476 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9477
9478         PR cli/14975
9479         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9480         unittests/format_pieces-selftests.c.
9481         * common/format.h (format_piece) <operator==>: New.
9482         (format_pieces) <operator[]>: Remove.
9483         * common/format.c (format_pieces::format_pieces): Handle \e.
9484         * unittests/format_pieces-selftests.c: New.
9485
9486 2018-05-17  Tom Tromey  <tom@tromey.com>
9487
9488         PR symtab/23010:
9489         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9490         (dw2_instantiate_symtab): Add skip_partial parameter.
9491         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9492         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9493         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9494         (dw2_expand_symtabs_matching_one)
9495         (dw2_find_pc_sect_compunit_symtab)
9496         (dw2_debug_names_lookup_symbol)
9497         (dw2_debug_names_expand_symtabs_for_function): Update.
9498         (init_cutu_and_read_dies): Add skip_partial parameter.
9499         (process_psymtab_comp_unit, build_type_psymtabs_1)
9500         (process_skeletonless_type_unit, load_partial_comp_unit)
9501         (psymtab_to_symtab_1): Update.
9502         (load_full_comp_unit): Add skip_partial parameter.
9503         (process_imported_unit_die, dwarf2_read_addr_index)
9504         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9505         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9506         (read_signatured_type): Update.
9507
9508 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9509
9510         * value.c (release_value): Remove unused variable.
9511         (record_latest_value): Likewise.
9512         (access_value_history): Likewise.
9513         (preserve_values): Likewise.
9514
9515 2018-05-17  Tom Tromey  <tom@tromey.com>
9516
9517         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9518         Initialize.
9519
9520 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9521
9522         PR gdb/22286
9523         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9524         Also handle registers whose width is not a multiple of
9525         PTRACE_TYPE_RET.
9526         (linux_nat_trad_target::store_register): Likewise.
9527
9528 2018-05-16  Tom Tromey  <tom@tromey.com>
9529
9530         * gdbcore.h (core_bfd): Redefine.
9531         * corelow.c (core_target::close): Update.
9532         (core_target_open): Update.
9533         * progspace.h (struct program_space) <cbfd>: Now a
9534         gdb_bfd_ref_ptr.
9535
9536 2018-05-16  Tom Tromey  <tom@tromey.com>
9537
9538         PR cli/19551:
9539         * symfile-add-flags.h (enum symfile_add_flags)
9540         <SYMFILE_NOT_FILENAME>: New constant.
9541         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9542         objfile name from BFD.
9543         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9544         * minidebug.c (find_separate_debug_file_in_section): Put
9545         ".gnu_debugdata" into BFD's file name.
9546
9547 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9548
9549         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9550         Remove.
9551
9552 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9553
9554         PR binutils/21446
9555         * aarch64-tdep.c (aarch64_analyze_prologue,
9556         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9557         Indicate not interested in errors.
9558
9559 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9560
9561         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9562         Supply the MIPS_ZERO_REGNUM register.
9563
9564 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9565
9566         * mips-tdep.c (mask_address_var): Make variable static.
9567
9568 2018-05-14  Tom Tromey  <tom@tromey.com>
9569
9570         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9571
9572 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9573
9574         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9575         FXSAVE_ADDR for the mxcsr register.
9576
9577 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9578
9579         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9580
9581 2018-05-11  Pedro Alves  <palves@redhat.com>
9582
9583         * corelow.c (core_target) <core_target>: No longer inline.
9584         Initialize m_core_gdbarch, m_core_vec and build the section table
9585         here.
9586         <~core_target>: New.
9587         <core_gdbarch, get_core_register_section>: New methods.
9588         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9589         factored out from ...
9590         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9591         (core_ops): Delete.
9592         (sniff_core_bfd): Add gdbarch parameter.
9593         (core_close): Delete, merged into ...
9594         (core_target::close): ... here.  Delete self.
9595         (core_close_cleanup): Delete.
9596         (core_target_open): Allocate a core_target on the heap.  Use a
9597         unique_ptr instead of a cleanup.  Bits moved into the core_target
9598         ctor.  Adjust to use core_target methods instead of globals.
9599         (get_core_register_section): Rename to ...
9600         (core_target::get_core_register_section): ... this and adjust.
9601         (struct get_core_registers_cb_data): New.
9602         (get_core_registers_cb): Use it.  Use bool.
9603         (core_target::fetch_registers, core_target::files_info)
9604         (core_target::xfer_partial, core_target::read_description)
9605         (core_target::pid_to, core_target::thread_name): Adjust to
9606         reference class fields instead of globals.
9607         * target.h (struct target_ops_deleter, target_ops_up): New.
9608
9609 2018-05-11  Pedro Alves  <palves@redhat.com>
9610
9611         * corefile.c (core_file_command): Move to corelow.c.
9612         * corelow.c (the_core_target): Delete.
9613         (core_file_command): Moved from corefile.c.  Check exec_bfd
9614         instead of the_core_target.  Use target_detach instead of calling
9615         into the_core_target directly.
9616         (maybe_say_no_core_file_now): New.
9617         (core_target::detach): Use it.
9618         (_initialize_corelow): Remove references to the_core_target.
9619         * gdbcore.h (the_core_target): Delete.
9620
9621 2018-05-11  Tom Tromey  <tromey@redhat.com>
9622             Pedro Alves  <palves@redhat.com>
9623
9624         * corefile.c (core_bfd): Remove.
9625         * gdbcore.h (core_bfd): Now a macro.
9626         * progspace.h (struct program_space) <cbfd>: New field.
9627
9628 2018-05-11  Tom Tromey  <tom@tromey.com>
9629
9630         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9631         gdb::def_vector.
9632
9633 2018-05-10  Tom Tromey  <tom@tromey.com>
9634
9635         * configure: Rebuild.
9636         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9637
9638 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9639
9640         PR server/23158:
9641         * regformats/regdat.sh: Adjust script, following the addition
9642         of the new expedite_regs parameter to init_target_desc.
9643
9644 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9645     
9646         PR gdb/23127
9647         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9648         set_gdbarch_significant_addr_bit.
9649         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9650         set_gdbarch_significant_addr_bit.
9651         * utils.c (address_significant): Update to sign extend addr.
9652
9653 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9654
9655         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9656         (xtensa_linux_init_abi): Limit tdep->num_regs by
9657         tdep->num_nopriv_regs.
9658         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9659         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9660         not initialized.
9661
9662 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9663
9664         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9665
9666 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9667
9668         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9669         (I387_MXCSR_INIT_VAL): New constant.
9670         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9671         buffer if it was supplied by the inferior.
9672         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9673         (i387_xsave_get_clear_bv): New function.
9674         (i387_supply_xsave): Only read x87 control registers from the
9675         xsave buffer if the feature is enabled, and the state will have
9676         been written, otherwise, provide a suitable default.
9677         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9678         including x87 control registers.  Update control registers if they
9679         have changed from the default value, and mark features as enabled
9680         as required.
9681         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9682
9683 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9684
9685         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9686
9687 2018-05-07  Tom Tromey  <tom@tromey.com>
9688
9689         * configure: Rebuild.
9690         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9691
9692 2018-05-07  Tom Tromey  <tom@tromey.com>
9693
9694         PR tdep/20362:
9695         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9696         bit.  Use correct value for VDIV.
9697
9698 2018-05-04  Tom Tromey  <tom@tromey.com>
9699
9700         * configure: Rebuild.
9701         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9702
9703 2018-05-04  Tom Tromey  <tom@tromey.com>
9704
9705         * linux-record.c (record_linux_system_call) <case
9706         RECORD_SYS_RECVFROM>: Add "break".
9707
9708 2018-05-04  Tom Tromey  <tom@tromey.com>
9709
9710         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9711         Add missing "break".
9712         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9713         Add missing "break".
9714
9715 2018-05-04  Tom Tromey  <tom@tromey.com>
9716
9717         * rs6000-tdep.c (ppc_process_record_op4)
9718         (ppc_process_record_op63): Add fall-through comment.
9719
9720 2018-05-04  Tom Tromey  <tom@tromey.com>
9721
9722         * i386-tdep.c (i386_process_record): Add fall-through comment.
9723
9724 2018-05-04  Tom Tromey  <tom@tromey.com>
9725
9726         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9727         comment.
9728
9729 2018-05-04  Tom Tromey  <tom@tromey.com>
9730
9731         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9732         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9733         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9734         comment.
9735         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9736         comment.
9737         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9738         comment.
9739
9740 2018-05-04  Tom Tromey  <tom@tromey.com>
9741
9742         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9743
9744 2018-05-04  Tom Tromey  <tom@tromey.com>
9745
9746         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9747         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9748         * symfile.c (section_is_mapped): Fix fall-through comment.
9749         * stabsread.c (define_symbol, read_member_functions): Fix
9750         fall-through comment.
9751         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9752         comment.
9753         * remote.c (remote_wait_as): Fix fall-through comment.
9754         * p-exp.y (yylex): Fix fall-through comment.
9755         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9756         comment.
9757         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9758         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9759         * jv-exp.y (yylex): Fix fall-through comment.
9760         * go-exp.y (lex_one_token): Fix fall-through comment.
9761         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9762         fall-through comment.
9763         * f-exp.y (yylex): Fix fall-through comment.
9764         * dwarf2read.c (process_die): Fix fall-through comments.
9765         * dbxread.c (process_one_symbol): Fix fall-through comment.
9766         * d-exp.y (lex_one_token): Fix fall-through comment.
9767         * cp-name-parser.y (yylex): Fix fall-through comment.
9768         * coffread.c (coff_symtab_read): Fix fall-through comment.
9769         * c-exp.y (lex_one_token): Fix fall-through comment.
9770         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9771         comment.
9772         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9773         comment.
9774
9775 2018-05-04  Tom Tromey  <tom@tromey.com>
9776
9777         PR python/22730:
9778         * NEWS: Mention gdb.execute change.
9779         * gdbcmd.h (execute_control_command): Don't declare.
9780         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9781         execute_control_commands, execute_control_commands_to_string.
9782         * cli/cli-script.h (execute_control_commands)
9783         (execute_control_commands_to_string): Declare.
9784         (execute_control_command): Add from_tty parameter.
9785         * cli/cli-script.c (execute_control_commands)
9786         (execute_control_commands_to_string): New functions.
9787         (execute_user_command): Use execute_control_commands.
9788         (execute_control_command_1): Add "from_tty" parameter.  Update.
9789         (execute_control_command): Likewise.
9790
9791 2018-05-04  Tom Tromey  <tom@tromey.com>
9792
9793         PR python/22731:
9794         * NEWS: Mention that breakpoint commands are writable.
9795         * python/py-breakpoint.c (bppy_set_commands): New function.
9796         (breakpoint_object_getset) <"commands">: Use it.
9797
9798 2018-05-04  Tom Tromey  <tom@tromey.com>
9799
9800         * tracepoint.c (actions_command): Update.
9801         * mi/mi-cmd-break.c (mi_command_line_array)
9802         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9803         (mi_read_next_line): Remove.
9804         (mi_cmd_break_commands): Update.
9805         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9806         function_view.
9807         * cli/cli-script.c (get_command_line): Update.
9808         (process_next_line): Use function_view.  Constify.
9809         (recurse_read_control_structure, read_command_lines)
9810         (read_command_lines_1): Change argument types to function_view.
9811         (do_define_command, document_command): Update.
9812         * breakpoint.h (check_tracepoint_command): Don't declare.
9813         * breakpoint.c (check_tracepoint_command): Remove.
9814         (commands_command_1, create_tracepoint_from_upload): Update.
9815
9816 2018-05-04  Tom Tromey  <tom@tromey.com>
9817
9818         PR gdb/11750:
9819         * cli/cli-script.h (enum command_control_type) <define_control>:
9820         New constant.
9821         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9822         (build_command_line, execute_control_command_1)
9823         (process_next_line): Likewise.
9824         (do_define_command): New function, extracted from define_command.
9825         (define_command): Use it.
9826
9827 2018-05-04  Tom Tromey  <tom@tromey.com>
9828
9829         * tracepoint.c (actions_command): Update.
9830         * cli/cli-script.h (read_command_lines): Update.
9831         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9832         (MAX_TMPBUF): Remove define.
9833         (define_command): Use string_printf.
9834         (document_command): Likewise.
9835         * breakpoint.c (commands_command_1): Update.
9836
9837 2018-05-04  Tom Tromey  <tom@tromey.com>
9838
9839         * top.c (execute_command): Update.
9840         * cli/cli-script.h (print_command_lines): Now varargs.
9841         * cli/cli-script.c (print_command_lines): Now varargs.
9842         (execute_control_command_1) <case while_control, case if_control>:
9843         Update.
9844
9845 2018-05-04  Tom Tromey  <tom@tromey.com>
9846
9847         * tracepoint.c (all_tracepoint_actions): Rename from
9848         all_tracepoint_actions_and_cleanup.  Change return type.
9849         (actions_command, encode_actions_1, encode_actions)
9850         (trace_dump_actions, tdump_command): Update.
9851         * remote.c (remote_download_command_source): Update.
9852         * python/python.c (gdbpy_eval_from_control_command)
9853         (python_command, python_interactive_command): Update.
9854         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9855         * guile/guile.c (guile_command)
9856         (gdbscm_eval_from_control_command, guile_command): Update.
9857         * compile/compile.c (compile_code_command)
9858         (compile_print_command, compile_to_object): Update.
9859         * cli/cli-script.h (struct command_lines_deleter): New.
9860         (counted_command_line): New typedef.
9861         (struct command_line): Add constructor, destructor.
9862         <body_list>: Remove.
9863         <body_list_0, body_list_1>: New members.
9864         (command_line_up): Remove typedef.
9865         (read_command_lines, read_command_lines_1, get_command_line):
9866         Update.
9867         (copy_command_lines): Don't declare.
9868         * cli/cli-script.c (build_command_line): Use "new".
9869         (get_command_line): Return counted_command_line.
9870         (print_command_lines, execute_user_command)
9871         (execute_control_command_1, while_command, if_command): Update.
9872         (realloc_body_list): Remove.
9873         (process_next_line, recurse_read_control_structure): Update.
9874         (read_command_lines, read_command_lines_1): Return counted_command_line.
9875         (free_command_lines): Use "delete".
9876         (copy_command_lines): Remove.
9877         (define_command, document_command, show_user_1): Update.
9878         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9879         a counted_command_line.
9880         * breakpoint.h (counted_command_line): Remove typedef.
9881         (breakpoint_set_commands): Update.
9882         * breakpoint.c (check_no_tracepoint_commands)
9883         (validate_commands_for_breakpoint): Update.
9884         (breakpoint_set_commands): Change commands to be a
9885         counted_command_line.
9886         (commands_command_1, update_dprintf_command_list)
9887         (create_tracepoint_from_upload): Update.
9888
9889 2018-05-04  Tom Tromey  <tom@tromey.com>
9890
9891         * cli/cli-decode.h (cmd_list_element): New constructor.
9892         (~cmd_list_element): New destructor.
9893         (struct cmd_list_element): Add initializers.
9894         * cli/cli-decode.c (do_add_cmd): Use "new".
9895         (delete_cmd): Use "delete".
9896
9897 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9898             Pedro Alves <palves@redhat.com>
9899
9900         PR breakpoints/19806 and support for PR external/20207.
9901         * NEWS: Mention Aarch64 watchpoint improvements.
9902         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9903         watchpoints and PR external/20207 watchpoints.
9904         * nat/aarch64-linux-hw-point.c
9905         (kernel_supports_any_contiguous_range): New.
9906         (aarch64_watchpoint_offset): New.
9907         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9908         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9909         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9910         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9911         next_addr_orig_p.  Support PR external/20207 watchpoints.
9912         (aarch64_downgrade_regs): New.
9913         (aarch64_dr_state_insert_one_point): New parameters offset and
9914         addr_orig.
9915         (aarch64_dr_state_remove_one_point): Likewise.
9916         (aarch64_handle_breakpoint): Update caller.
9917         (aarch64_handle_aligned_watchpoint): Likewise.
9918         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9919         aligned_offset.
9920         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9921         aarch64_downgrade_regs.
9922         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9923         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9924         (DR_CONTROL_MASK): ... this.
9925         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9926         (unsigned int aarch64_watchpoint_offset): New prototype.
9927         (aarch64_linux_set_debug_regs): Remove const from state.
9928         * utils.c (align_up, align_down): Move to ...
9929         * common/common-utils.c (align_up, align_down): ... here.
9930         * utils.h (align_up, align_down): Move to ...
9931         * common/common-utils.h (align_up, align_down): ... here.
9932
9933 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9934
9935         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9936         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9937         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9938         Re-implement to match the ABI as summarized in GCC's
9939         gcc/config/sparc/sparc.c.  All callers updated.
9940         (sparc32_store_arguments): Remove assertion.
9941
9942 2018-05-04  Tom Tromey  <tom@tromey.com>
9943
9944         * printcmd.c: Don't include tui.h.
9945         (decode_format): Use skip_spaces.
9946
9947 2018-05-04  Tom Tromey  <tom@tromey.com>
9948
9949         PR gdb/22619:
9950         * printcmd.c (last_count): New global.
9951         (x_command): Use saved count when repeating.
9952
9953 2018-05-04  Tom Tromey  <tom@tromey.com>
9954
9955         * nto-procfs.c (do_closedir_cleanup): Remove.
9956         (procfs_pidlist): Use gdb_dir_up.
9957         * procfs.c (do_closedir_cleanup): Remove.
9958         (proc_update_threads): Use gdb_dir_up.
9959         * common/filestuff.h (struct gdb_dir_deleter): New.
9960         (gdb_dir_up): New typedef.
9961
9962 2018-05-04  Tom Tromey  <tom@tromey.com>
9963
9964         * ada-lang.c (print_mention_exception): Use std::string.
9965
9966 2018-05-04  Tom Tromey  <tom@tromey.com>
9967
9968         * ada-lang.c (create_excep_cond_exprs): Update.
9969         (ada_exception_catchpoint_cond_string): Use std::string.
9970
9971 2018-05-04  Tom Tromey  <tom@tromey.com>
9972
9973         * ada-lang.c (xget_renaming_scope): Return std::string.
9974         (old_renaming_is_invisible): Update.
9975
9976 2018-05-04  Tom Tromey  <tom@tromey.com>
9977
9978         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9979         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9980
9981 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9982
9983         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9984
9985 2018-05-04  Tom Tromey  <tom@tromey.com>
9986
9987         * remote.c (remote_query_supported_append): Change type.
9988         (remote_check_symbols): Update.
9989
9990 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9991
9992         PR gdb/11420
9993         * configure.ac: Prepend libpython.
9994         * python/python-config.py: Likewise.
9995         * configure: Regenerate.
9996
9997 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9998
9999         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10000
10001 2018-05-03  Pedro Alves  <palves@redhat.com>
10002
10003         * s390-linux-nat.c
10004         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10005         override.  Write 'true' instead of '1'.
10006         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10007         declaration.
10008
10009 2018-05-02  Pedro Alves  <palves@redhat.com>
10010
10011         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10012         add_inf_child_target.
10013         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10014         add_inf_child_target.
10015         * aix-thread.c (aix_thread_target_info): New.
10016         (aix_thread_target) <shortname, longname, doc>: Delete.
10017         <info>: New.
10018         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10019         add_inf_child_target.
10020         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10021         add_inf_child_target.
10022         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10023         add_inf_child_target.
10024         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10025         add_inf_child_target.
10026         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10027         add_inf_child_target.
10028         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10029         add_inf_child_target.
10030         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10031         add_inf_child_target.
10032         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10033         add_inf_child_target.
10034         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10035         add_inf_child_target.
10036         * bfd-target.c (target_bfd_target_info): New.
10037         (target_bfd) <shortname, longname, doc>: Delete.
10038         <info>: New.
10039         * bsd-kvm.c (bsd_kvm_target_info): New.
10040         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10041         <info>: New.
10042         (bsd_kvm_target::open): Rename to ...
10043         (bsd_kvm_target_open): ... this.  Adjust.
10044         * bsd-uthread.c (bsd_uthread_target_info): New.
10045         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10046         <info>: New.
10047         * corefile.c (core_file_command): Adjust.
10048         * corelow.c (core_target_info): New.
10049         (core_target) <shortname, longname, doc>: Delete.
10050         <info>: New.
10051         (core_target::open): Rename to ...
10052         (core_target_open): ... this.  Adjust.
10053         * ctf.c (ctf_target_info): New.
10054         (ctf_target) <shortname, longname, doc>: Delete.
10055         <info>: New.
10056         (ctf_target::open): Rename to ...
10057         (ctf_target_open): ... this.
10058         (_initialize_ctf): Adjust.
10059         * exec.c (exec_target_info): New.
10060         (exec_target) <shortname, longname, doc>: Delete.
10061         <info>: New.
10062         (exec_target::open): Rename to ...
10063         (exec_target_open): ... this.
10064         * gdbcore.h (core_target_open): Declare.
10065         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10066         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10067         add_inf_child_target.
10068         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10069         add_inf_child_target.
10070         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10071         add_inf_child_target.
10072         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10073         add_inf_child_target.
10074         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10075         add_inf_child_target.
10076         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10077         add_inf_child_target.
10078         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10079         add_inf_child_target.
10080         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10081         add_inf_child_target.
10082         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10083         add_inf_child_target.
10084         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10085         add_inf_child_target.
10086         * inf-child.c (inf_child_target_info): New.
10087         (inf_child_target::info): New.
10088         (inf_child_open_target): Remove 'target' parameter.  Use
10089         get_native_target instead.
10090         (inf_child_target::open): Delete.
10091         (add_inf_child_target): New.
10092         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10093         Delete.
10094         <info>: New.
10095         (add_inf_child_target): Declare.
10096         (inf_child_open_target): Declare.
10097         * linux-thread-db.c (thread_db_target_info): New.
10098         (thread_db_target) <shortname, longname, doc>: Delete.
10099         <info>: New.
10100         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10101         add_inf_child_target.
10102         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10103         add_inf_child_target.
10104         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10105         add_inf_child_target.
10106         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10107         add_inf_child_target.
10108         * make-target-delegates (print_class): Adjust.
10109         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10110         add_inf_child_target.
10111         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10112         add_inf_child_target.
10113         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10114         add_inf_child_target.
10115         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10116         add_inf_child_target.
10117         * nto-procfs.c (nto_native_target_info): New.
10118         (nto_procfs_target_native) <shortname, longname, doc>:
10119         Delete.
10120         <info>: New.
10121         (nto_procfs_target_info): New.
10122         (nto_procfs_target_procfs) <shortname, longname, doc>:
10123         Delete.
10124         <info>: New.
10125         (init_procfs_targets): Adjust.
10126         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10127         add_inf_child_target.
10128         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10129         add_inf_child_target.
10130         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10131         add_inf_child_target.
10132         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10133         add_inf_child_target.
10134         * ravenscar-thread.c (ravenscar_target_info): New.
10135         (ravenscar_thread_target) <shortname, longname, doc>:
10136         Delete.
10137         <info>: New.
10138         * record-btrace.c (record_btrace_target_info):
10139         (record_btrace_target) <shortname, longname, doc>: Delete.
10140         <info>: New.
10141         (record_btrace_target::open): Rename to ...
10142         (record_btrace_target_open): ... this.  Adjust.
10143         * record-full.c (record_longname, record_doc): New.
10144         (record_full_base_target) <shortname, longname, doc>: Delete.
10145         <info>: New.
10146         (record_full_target_info): New.
10147         (record_full_target): <shortname>: Delete.
10148         <info>: New.
10149         (record_full_core_open_1, record_full_open_1): Update comments.
10150         (record_full_base_target::open): Rename to ...
10151         (record_full_open): ... this.
10152         (cmd_record_full_restore): Update.
10153         (_initialize_record_full): Update.
10154         * remote-sim.c (remote_sim_target_info): New.
10155         (gdbsim_target) <shortname, longname, doc>: Delete.
10156         <info>: New.
10157         (gdbsim_target::open): Rename to ...
10158         (gdbsim_target_open): ... this.
10159         (_initialize_remote_sim): Adjust.
10160         * remote.c (remote_doc): New.
10161         (remote_target_info): New.
10162         (remote_target) <shortname, longname, doc>: Delete.
10163         <info>: New.
10164         (extended_remote_target_info): New.
10165         (extended_remote_target) <shortname, longname, doc>: Delete.
10166         <info>: New.
10167         (remote_target::open_1): Make static.  Adjust.
10168         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10169         * s390-linux-nat.c (_initialize_s390_nat): Use
10170         add_inf_child_target.
10171         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10172         add_inf_child_target.
10173         * sol-thread.c (thread_db_target_info): New.
10174         (sol_thread_target) <shortname, longname, doc>: Delete.
10175         <info>: New.
10176         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10177         add_inf_child_target.
10178         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10179         add_inf_child_target.
10180         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10181         add_inf_child_target.
10182         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10183         add_inf_child_target.
10184         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10185         add_inf_child_target.
10186         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10187         add_inf_child_target.
10188         * spu-linux-nat.c (_initialize_spu_nat): Use
10189         add_inf_child_target.
10190         * spu-multiarch.c (spu_multiarch_target_info): New.
10191         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10192         <info>: New.
10193         * target-delegates.c: Regenerate.
10194         * target.c: Include <unordered_map>.
10195         (target_ops_p): Delete.
10196         (DEF_VEC_P(target_ops_p)): Delete.
10197         (target_factories): New.
10198         (test_target_info): New.
10199         (test_target_ops::info): New.
10200         (open_target): Adjust to use target_factories.
10201         (add_target_with_completer): Rename to ...
10202         (add_target): ... this.  Change prototype.  Register target_info
10203         and open callback in target_factories.  Register target_info in
10204         command context instead of target_ops.
10205         (add_target): Delete old implementation.
10206         (add_deprecated_target_alias): Change prototype.  Adjust.
10207         (the_native_target): New.
10208         (set_native_target, get_native_target): New.
10209         (find_default_run_target): Use the_native_target.
10210         (find_attach_target, find_run_target): Simplify.
10211         (target_ops::open): Delete.
10212         (dummy_target_info): New.
10213         (dummy_target::shortname, dummy_target::longname)
10214         (dummy_target::doc): Delete.
10215         (dummy_target::info): New.
10216         (debug_target::shortname, debug_target::longname)
10217         (debug_target::doc): Delete.
10218         (debug_target::info): New.
10219         * target.h (struct target_info): New.
10220         (target_ops::~target_ops): Add comment.
10221         (target_ops::info): New.
10222         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10223         longer virtual.  Implement in terms of target_info.
10224         (set_native_target, get_native_target): Declare.
10225         (target_open_ftype): New.
10226         (add_target, add_target_with_completer)
10227         (add_deprecated_target_alias): Change prototype.
10228         (test_target) <shortname, longname, doc>: Delete.
10229         <info>: New.
10230         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10231         add_inf_child_target.
10232         * tracefile-tfile.c (tfile_target_info): New.
10233         (tfile_target) <shortname, longname, doc>: Delete.
10234         <info>: New.
10235         (tfile_target::open): Rename to ...
10236         (tfile_target_open): ... this.
10237         (_initialize_tracefile_tfile): Adjust.
10238         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10239         add_inf_child_target.
10240         * windows-nat.c (_initialize_windows_nat): Use
10241         add_inf_child_target.
10242         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10243         add_inf_child_target.
10244
10245 2018-05-02  Pedro Alves  <palves@redhat.com>
10246
10247         * linux-nat.h (linux_nat_target) <low_new_thread,
10248         low_delete_thread, low_new_fork, low_forget_process,
10249         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10250         New virtual methods.
10251         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10252         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10253         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10254         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10255         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10256         Delete.
10257         * linux-fork.c (delete_fork): Adjust to call low method.
10258         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10259         (linux_nat_new_fork, linux_nat_forget_process_hook)
10260         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10261         (linux_nat_status_is_event):
10262         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10263         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10264         to call low method.
10265         (sigtrap_is_event): Rename to ...
10266         (linux_nat_target::low_status_is_event): ... this.
10267         (linux_nat_set_status_is_event): Delete.
10268         (save_stop_reason, linux_nat_wait_1)
10269         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10270         low methods.
10271         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10272         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10273         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10274         (linux_nat_set_prepare_to_resume): Delete.
10275         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10276         low virtual methods.
10277         * amd64-linux-nat.c: Likewise.
10278         * arm-linux-nat.c: Likewise.
10279         * i386-linux-nat.c: Likewise.
10280         * ia64-linux-nat.c: Likewise.
10281         * mips-linux-nat.c: Likewise.
10282         * ppc-linux-nat.c: Likewise.
10283         * s390-linux-nat.c: Likewise.
10284         * sparc64-linux-nat.c: Likewise.
10285         * x86-linux-nat.c: Likewise.
10286         * x86-linux-nat.h: Include "nat/x86-linux.h".
10287         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10288         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10289         Override methods.
10290
10291 2018-05-02  Pedro Alves  <palves@redhat.com>
10292
10293         * target.h (target_ops)
10294         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10295         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10296         stopped_by_watchpoint, have_continuable_watchpoint,
10297         stopped_data_address, watchpoint_addr_within_range,
10298         can_accel_watchpoint_condition, can_run, thread_alive,
10299         has_all_memory, has_memory, has_stack, has_registers,
10300         has_execution, can_async_p, is_async_p, supports_non_stop,
10301         always_non_stop_p, can_execute_reverse, supports_multi_process,
10302         supports_enable_disable_tracepoint,
10303         supports_disable_randomization, supports_string_tracing,
10304         supports_evaluation_of_breakpoint_conditions,
10305         can_run_breakpoint_commands, filesystem_is_local,
10306         can_download_tracepoint, get_trace_state_variable_value,
10307         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10308         record_is_replaying, record_will_replay,
10309         augmented_libraries_svr4_read>: Adjust to return bool.
10310         * aarch64-linux-nat.c: All implementations adjusted.
10311         * aix-thread.c: All implementations adjusted.
10312         * arm-linux-nat.c: All implementations adjusted.
10313         * breakpoint.c: All implementations adjusted.
10314         * bsd-kvm.c: All implementations adjusted.
10315         * bsd-uthread.c: All implementations adjusted.
10316         * corelow.c: All implementations adjusted.
10317         * ctf.c: All implementations adjusted.
10318         * darwin-nat.c: All implementations adjusted.
10319         * darwin-nat.h: All implementations adjusted.
10320         * exec.c: All implementations adjusted.
10321         * fbsd-nat.c: All implementations adjusted.
10322         * fbsd-nat.h: All implementations adjusted.
10323         * gnu-nat.c: All implementations adjusted.
10324         * gnu-nat.h: All implementations adjusted.
10325         * go32-nat.c: All implementations adjusted.
10326         * ia64-linux-nat.c: All implementations adjusted.
10327         * inf-child.c: All implementations adjusted.
10328         * inf-child.h: All implementations adjusted.
10329         * inf-ptrace.c: All implementations adjusted.
10330         * inf-ptrace.h: All implementations adjusted.
10331         * linux-nat.c: All implementations adjusted.
10332         * linux-nat.h: All implementations adjusted.
10333         * mips-linux-nat.c: All implementations adjusted.
10334         * nto-procfs.c: All implementations adjusted.
10335         * ppc-linux-nat.c: All implementations adjusted.
10336         * procfs.c: All implementations adjusted.
10337         * ravenscar-thread.c: All implementations adjusted.
10338         * record-btrace.c: All implementations adjusted.
10339         * record-full.c: All implementations adjusted.
10340         * remote-sim.c: All implementations adjusted.
10341         * remote.c: All implementations adjusted.
10342         * s390-linux-nat.c: All implementations adjusted.
10343         * sol-thread.c: All implementations adjusted.
10344         * spu-multiarch.c: All implementations adjusted.
10345         * target-delegates.c: All implementations adjusted.
10346         * target.c: All implementations adjusted.
10347         * target.h: All implementations adjusted.
10348         * tracefile-tfile.c: All implementations adjusted.
10349         * tracefile.c: All implementations adjusted.
10350         * tracefile.h: All implementations adjusted.
10351         * windows-nat.c: All implementations adjusted.
10352         * x86-linux-nat.h: All implementations adjusted.
10353         * x86-nat.h: All implementations adjusted.
10354
10355 2018-05-02  Pedro Alves  <palves@redhat.com>
10356
10357         * make-target-delegates (scan_target_h): Don't trim lines here.
10358         Replace sequences of tabs and/or whitespace with a single
10359         whitespace.
10360         (top level, parsing methods): Trim each line before processing it
10361         here.
10362
10363 2018-05-02  Pedro Alves  <palves@redhat.com>
10364             John Baldwin  <jhb@freebsd.org>
10365
10366         * target.h (enum strata) <debug_stratum>: New.
10367         (struct target_ops) <all delegation methods>: Replace by C++
10368         virtual methods, and drop "to_" prefix.  All references updated
10369         throughout.
10370         <to_shortname, to_longname, to_doc, to_data,
10371         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10372         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10373         virtual methods.  All references updated throughout.
10374         <can_attach, supports_terminal_ours, can_create_inferior,
10375         get_thread_control_capabilities, attach_no_wait>: New
10376         virtual methods.
10377         <insert_breakpoint, remove_breakpoint>: Now
10378         TARGET_DEFAULT_NORETURN methods.
10379         <info_proc>: Now returns bool.
10380         <to_magic>: Delete.
10381         (OPS_MAGIC): Delete.
10382         (current_target): Delete.  All references replaced by references
10383         to ...
10384         (target_stack): ... this.  New.
10385         (target_shortname, target_longname): Adjust.
10386         (target_can_run): Now a function declaration.
10387         (default_child_has_all_memory, default_child_has_memory)
10388         (default_child_has_stack, default_child_has_registers)
10389         (default_child_has_execution): Remove target_ops parameter.
10390         (complete_target_initialization): Delete.
10391         (memory_breakpoint_target): New template class.
10392         (test_target_ops): Refactor as a C++ class with virtual methods.
10393         * make-target-delegates (NAME_PART): Tighten.
10394         (POINTER_PART, CP_SYMBOL): New.
10395         (SIMPLE_RETURN_PART): Reimplement.
10396         (VEC_RETURN_PART): Expect less.
10397         (RETURN_PART, VIRTUAL_PART): New.
10398         (METHOD): Adjust to C++ virtual methods.
10399         (scan_target_h): Remove reference to C99.
10400         (dname): Output "target_ops::" prefix.
10401         (write_function_header): Adjust to output a C++ class method.
10402         (write_declaration): New.
10403         (write_delegator): Adjust to output a C++ class method.
10404         (tdname): Output "dummy_target::" prefix.
10405         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10406         method.
10407         (tdefault_names, debug_names): Delete.
10408         (return_types, tdefaults, styles, argtypes_array): New.
10409         (top level): All methods are delegators.
10410         (print_class): New.
10411         (top level): Print dummy_target and debug_target classes.
10412         * target-delegates.c: Regenerate.
10413         * target-debug.h (target_debug_print_enum_info_proc_what)
10414         (target_debug_print_thread_control_capabilities)
10415         (target_debug_print_thread_info_p): New.
10416         * target.c (dummy_target): Delete.
10417         (the_dummy_target, the_debug_target): New.
10418         (target_stack): Now extern.
10419         (set_targetdebug): Push/unpush debug target.
10420         (default_child_has_all_memory, default_child_has_memory)
10421         (default_child_has_stack, default_child_has_registers)
10422         (default_child_has_execution): Remove target_ops parameter.
10423         (complete_target_initialization): Delete.
10424         (add_target_with_completer): No longer call
10425         complete_target_initialization.
10426         (target_supports_terminal_ours): Use regular delegation.
10427         (update_current_target): Delete.
10428         (push_target): No longer check magic number.  Don't call
10429         update_current_target.
10430         (unpush_target): Don't call update_current_target.
10431         (target_is_pushed): No longer check magic number.
10432         (target_require_runnable): Skip for all stratums over
10433         process_stratum.
10434         (target_ops::info_proc): New.
10435         (target_info_proc): Use find_target_at and
10436         find_default_run_target.
10437         (target_supports_disable_randomization): Use regular delegation.
10438         (target_get_osdata): Use find_target_at.
10439         (target_ops::open, target_ops::close, target_ops::can_attach)
10440         (target_ops::attach, target_ops::can_create_inferior)
10441         (target_ops::create_inferior, target_ops::can_run)
10442         (target_can_run): New.
10443         (default_fileio_target): Use regular delegation.
10444         (target_ops::fileio_open, target_ops::fileio_pwrite)
10445         (target_ops::fileio_pread, target_ops::fileio_fstat)
10446         (target_ops::fileio_close, target_ops::fileio_unlink)
10447         (target_ops::fileio_readlink): New.
10448         (target_fileio_open_1, target_fileio_unlink)
10449         (target_fileio_readlink): Always call the target method.  Handle
10450         FILEIO_ENOSYS.
10451         (return_zero, return_zero_has_execution): Delete.
10452         (init_dummy_target): Delete.
10453         (dummy_target::dummy_target, dummy_target::shortname)
10454         (dummy_target::longname, dummy_target::doc)
10455         (debug_target::debug_target, debug_target::shortname)
10456         (debug_target::longname, debug_target::doc): New.
10457         (target_supports_delete_record): Use regular delegation.
10458         (setup_target_debug): Delete.
10459         (maintenance_print_target_stack): Skip debug_stratum.
10460         (initialize_targets): Instantiate the_dummy_target and
10461         the_debug_target.
10462         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10463         use target_stack.
10464         (target_auxv_search, fprint_target_auxv): Adjust.
10465         (info_auxv_command): Adjust to use target_stack.
10466         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10467         * exceptions.c (print_flush): Handle a NULL target_stack.
10468         * regcache.c (target_ops_no_register): Refactor as class with
10469         virtual methods.
10470
10471         * exec.c (exec_target): New class.
10472         (exec_ops): Now an exec_target.
10473         (exec_open, exec_close_1, exec_get_section_table)
10474         (exec_xfer_partial, exec_files_info, exec_has_memory)
10475         (exec_make_note_section): Refactor as exec_target methods.
10476         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10477         Delete.
10478         (exec_target::find_memory_regions): New.
10479         (_initialize_exec): Don't call init_exec_ops.
10480         * gdbcore.h (exec_file_clear): Delete.
10481
10482         * corefile.c (core_target): Delete.
10483         (core_file_command): Adjust.
10484         * corelow.c (core_target): New class.
10485         (the_core_target): New.
10486         (core_close): Remove target_ops parameter.
10487         (core_close_cleanup): Adjust.
10488         (core_target::close): New.
10489         (core_open, core_detach, get_core_registers, core_files_info)
10490         (core_xfer_partial, core_thread_alive, core_read_description)
10491         (core_pid_to_str, core_thread_name, core_has_memory)
10492         (core_has_stack, core_has_registers, core_info_proc): Rework as
10493         core_target methods.
10494         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10495         (_initialize_corelow): Initialize the_core_target.
10496         * gdbcore.h (core_target): Delete.
10497         (the_core_target): New.
10498
10499         * ctf.c: (ctf_target): New class.
10500         (ctf_ops): Now a ctf_target.
10501         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10502         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10503         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10504         methods.
10505         (init_ctf_ops): Delete.
10506         (_initialize_ctf): Don't call it.
10507         * tracefile-tfile.c (tfile_target): New class.
10508         (tfile_ops): Now a tfile_target.
10509         (tfile_open, tfile_close, tfile_files_info)
10510         (tfile_get_tracepoint_status, tfile_trace_find)
10511         (tfile_fetch_registers, tfile_xfer_partial)
10512         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10513         Refactor as tfile_target methods.
10514         (tfile_xfer_partial_features): Remove target_ops parameter.
10515         (init_tfile_ops): Delete.
10516         (_initialize_tracefile_tfile): Don't call it.
10517         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10518         (tracefile_has_stack, tracefile_has_registers)
10519         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10520         tracefile_target methods.
10521         (init_tracefile_ops): Delete.
10522         (tracefile_target::tracefile_target): New.
10523         * tracefile.h: Include "target.h".
10524         (tracefile_target): New class.
10525         (init_tracefile_ops): Delete.
10526
10527         * spu-multiarch.c (spu_multiarch_target): New class.
10528         (spu_ops): Now a spu_multiarch_target.
10529         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10530         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10531         (spu_search_memory, spu_mourn_inferior): Refactor as
10532         spu_multiarch_target methods.
10533         (init_spu_ops): Delete.
10534         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10535         complete_target_initialization.
10536
10537         * ravenscar-thread.c (ravenscar_thread_target): New class.
10538         (ravenscar_ops): Now a ravenscar_thread_target.
10539         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10540         (ravenscar_thread_alive, ravenscar_pid_to_str)
10541         (ravenscar_fetch_registers, ravenscar_store_registers)
10542         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10543         (ravenscar_stopped_by_hw_breakpoint)
10544         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10545         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10546         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10547         methods.
10548         (init_ravenscar_thread_ops): Delete.
10549         (_initialize_ravenscar): Remove references to
10550         init_ravenscar_thread_ops and complete_target_initialization.
10551
10552         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10553         (bsd_uthread_target): New class.
10554         (bsd_uthread_ops): Now a bsd_uthread_target.
10555         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10556         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10557         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10558         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10559         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10560         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10561         (bsd_uthread_target): Delete function.
10562         (_initialize_bsd_uthread): Remove reference to
10563         complete_target_initialization.
10564
10565         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10566         (target_bfd): ... this new class.
10567         (target_bfd_xfer_partial, target_bfd_get_section_table)
10568         (target_bfd_close): Refactor as target_bfd methods.
10569         (target_bfd::~target_bfd): New.
10570         (target_bfd_reopen): Adjust.
10571         (target_bfd::close): New.
10572
10573         * record-btrace.c (record_btrace_target): New class.
10574         (record_btrace_ops): Now a record_btrace_target.
10575         (record_btrace_open, record_btrace_stop_recording)
10576         (record_btrace_disconnect, record_btrace_close)
10577         (record_btrace_async, record_btrace_info)
10578         (record_btrace_insn_history, record_btrace_insn_history_range)
10579         (record_btrace_insn_history_from, record_btrace_call_history)
10580         (record_btrace_call_history_range)
10581         (record_btrace_call_history_from, record_btrace_record_method)
10582         (record_btrace_is_replaying, record_btrace_will_replay)
10583         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10584         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10585         (record_btrace_store_registers, record_btrace_prepare_to_store)
10586         (record_btrace_to_get_unwinder)
10587         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10588         (record_btrace_commit_resume, record_btrace_wait)
10589         (record_btrace_stop, record_btrace_can_execute_reverse)
10590         (record_btrace_stopped_by_sw_breakpoint)
10591         (record_btrace_supports_stopped_by_sw_breakpoint)
10592         (record_btrace_stopped_by_hw_breakpoint)
10593         (record_btrace_supports_stopped_by_hw_breakpoint)
10594         (record_btrace_update_thread_list, record_btrace_thread_alive)
10595         (record_btrace_goto_begin, record_btrace_goto_end)
10596         (record_btrace_goto, record_btrace_stop_replaying_all)
10597         (record_btrace_execution_direction)
10598         (record_btrace_prepare_to_generate_core)
10599         (record_btrace_done_generating_core): Refactor as
10600         record_btrace_target methods.
10601         (init_record_btrace_ops): Delete.
10602         (_initialize_record_btrace): Remove reference to
10603         init_record_btrace_ops.
10604         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10605         the execution_direction global.
10606         (record_full_base_target, record_full_target)
10607         (record_full_core_target): New classes.
10608         (record_full_ops): Now a record_full_target.
10609         (record_full_core_ops): Now a record_full_core_target.
10610         (record_full_target::detach, record_full_target::disconnect)
10611         (record_full_core_target::disconnect)
10612         (record_full_target::mourn_inferior, record_full_target::kill):
10613         New.
10614         (record_full_open, record_full_close, record_full_async): Refactor
10615         as methods of the record_full_base_target class.
10616         (record_full_resume, record_full_commit_resume): Refactor
10617         as methods of the record_full_target class.
10618         (record_full_wait, record_full_stopped_by_watchpoint)
10619         (record_full_stopped_data_address)
10620         (record_full_stopped_by_sw_breakpoint)
10621         (record_full_supports_stopped_by_sw_breakpoint)
10622         (record_full_stopped_by_hw_breakpoint)
10623         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10624         methods of the record_full_base_target class.
10625         (record_full_store_registers, record_full_xfer_partial)
10626         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10627         Refactor as methods of the record_full_target class.
10628         (record_full_can_execute_reverse, record_full_get_bookmark)
10629         (record_full_goto_bookmark, record_full_execution_direction)
10630         (record_full_record_method, record_full_info, record_full_delete)
10631         (record_full_is_replaying, record_full_will_replay)
10632         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10633         (record_full_stop_replaying): Refactor as methods of the
10634         record_full_base_target class.
10635         (record_full_core_resume, record_full_core_kill)
10636         (record_full_core_fetch_registers)
10637         (record_full_core_prepare_to_store)
10638         (record_full_core_store_registers, record_full_core_xfer_partial)
10639         (record_full_core_insert_breakpoint)
10640         (record_full_core_remove_breakpoint)
10641         (record_full_core_has_execution): Refactor
10642         as methods of the record_full_core_target class.
10643         (record_full_base_target::supports_delete_record): New.
10644         (init_record_full_ops): Delete.
10645         (init_record_full_core_ops): Delete.
10646         (record_full_save): Refactor as method of the
10647         record_full_base_target class.
10648         (_initialize_record_full): Remove references to
10649         init_record_full_ops and init_record_full_core_ops.
10650
10651         * remote.c (remote_target, extended_remote_target): New classes.
10652         (remote_ops): Now a remote_target.
10653         (extended_remote_ops): Now an extended_remote_target.
10654         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10655         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10656         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10657         (remote_pass_signals, remote_set_syscall_catchpoint)
10658         (remote_program_signals, )
10659         (remote_thread_always_alive): Remove target_ops parameter.
10660         (remote_thread_alive, remote_thread_name)
10661         (remote_update_thread_list, remote_threads_extra_info)
10662         (remote_static_tracepoint_marker_at)
10663         (remote_static_tracepoint_markers_by_strid)
10664         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10665         (remote_open): Refactor as methods of remote_target.
10666         (extended_remote_open, extended_remote_detach)
10667         (extended_remote_attach, extended_remote_post_attach):
10668         (extended_remote_supports_disable_randomization)
10669         (extended_remote_create_inferior): : Refactor as method of
10670         extended_remote_target.
10671         (remote_set_permissions, remote_open_1, remote_detach)
10672         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10673         (remote_resume, remote_commit_resume, remote_stop)
10674         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10675         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10676         (remote_prepare_to_store, remote_store_registers)
10677         (remote_flash_erase, remote_flash_done, remote_files_info)
10678         (remote_kill, remote_mourn, remote_insert_breakpoint)
10679         (remote_remove_breakpoint, remote_insert_watchpoint)
10680         (remote_watchpoint_addr_within_range)
10681         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10682         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10683         (remote_supports_stopped_by_sw_breakpoint)
10684         (remote_stopped_by_hw_breakpoint)
10685         (remote_supports_stopped_by_hw_breakpoint)
10686         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10687         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10688         (remote_verify_memory): Refactor as methods of remote_target.
10689         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10690         parameter.
10691         (remote_xfer_partial, remote_get_memory_xfer_limit)
10692         (remote_search_memory, remote_rcmd, remote_memory_map)
10693         (remote_pid_to_str, remote_get_thread_local_address)
10694         (remote_get_tib_address, remote_read_description): Refactor as
10695         methods of remote_target.
10696         (remote_target::fileio_open, remote_target::fileio_pwrite)
10697         (remote_target::fileio_pread, remote_target::fileio_close): New.
10698         (remote_hostio_readlink, remote_hostio_fstat)
10699         (remote_filesystem_is_local, remote_can_execute_reverse)
10700         (remote_supports_non_stop, remote_supports_disable_randomization)
10701         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10702         (remote_supports_enable_disable_tracepoint)
10703         (remote_supports_string_tracing)
10704         (remote_can_run_breakpoint_commands, remote_trace_init)
10705         (remote_download_tracepoint, remote_can_download_tracepoint)
10706         (remote_download_trace_state_variable, remote_enable_tracepoint)
10707         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10708         (remote_trace_start, remote_get_trace_status)
10709         (remote_get_tracepoint_status, remote_trace_stop)
10710         (remote_trace_find, remote_get_trace_state_variable_value)
10711         (remote_save_trace_data, remote_get_raw_trace_data)
10712         (remote_set_disconnected_tracing, remote_core_of_thread)
10713         (remote_set_circular_trace_buffer, remote_traceframe_info)
10714         (remote_get_min_fast_tracepoint_insn_len)
10715         (remote_set_trace_buffer_size, remote_set_trace_notes)
10716         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10717         (remote_disable_btrace, remote_teardown_btrace)
10718         (remote_read_btrace, remote_btrace_conf)
10719         (remote_augmented_libraries_svr4_read, remote_load)
10720         (remote_pid_to_exec_file, remote_can_do_single_step)
10721         (remote_execution_direction, remote_thread_handle_to_thread_info):
10722         Refactor as methods of remote_target.
10723         (init_remote_ops, init_extended_remote_ops): Delete.
10724         (remote_can_async_p, remote_is_async_p, remote_async)
10725         (remote_thread_events, remote_upload_tracepoints)
10726         (remote_upload_trace_state_variables): Refactor as methods of
10727         remote_target.
10728         (_initialize_remote): Remove references to init_remote_ops and
10729         init_extended_remote_ops.
10730
10731         * remote-sim.c (gdbsim_target): New class.
10732         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10733         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10734         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10735         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10736         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10737         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10738         Refactor as methods of gdbsim_target.
10739         (gdbsim_ops): Now a gdbsim_target.
10740         (init_gdbsim_ops): Delete.
10741         (gdbsim_cntrl_c): Adjust.
10742         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10743
10744         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10745         (the_amd64_linux_nat_target): New.
10746         (amd64_linux_fetch_inferior_registers)
10747         (amd64_linux_store_inferior_registers): Refactor as methods of
10748         amd64_linux_nat_target.
10749         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10750         * i386-linux-nat.c: Don't include "linux-nat.h".
10751         (i386_linux_nat_target): New class.
10752         (the_i386_linux_nat_target): New.
10753         (i386_linux_fetch_inferior_registers)
10754         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10755         as methods of i386_linux_nat_target.
10756         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10757         * inf-child.c (inf_child_ops): Delete.
10758         (inf_child_fetch_inferior_registers)
10759         (inf_child_store_inferior_registers): Delete.
10760         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10761         methods of inf_child_target.
10762         (inf_child_target::supports_terminal_ours)
10763         (inf_child_target::terminal_init)
10764         (inf_child_target::terminal_inferior)
10765         (inf_child_target::terminal_ours_for_output)
10766         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10767         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10768         New.
10769         (inf_child_open, inf_child_disconnect, inf_child_close)
10770         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10771         (inf_child_post_startup_inferior, inf_child_can_run)
10772         (inf_child_pid_to_exec_file): Refactor as methods of
10773         inf_child_target.
10774         (inf_child_follow_fork): Delete.
10775         (inf_child_target::can_create_inferior)
10776         (inf_child_target::can_attach): New.
10777         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10778         (inf_child_target::has_stack, inf_child_target::has_registers)
10779         (inf_child_target::has_execution): New.
10780         (inf_child_fileio_open, inf_child_fileio_pwrite)
10781         (inf_child_fileio_pread, inf_child_fileio_fstat)
10782         (inf_child_fileio_close, inf_child_fileio_unlink)
10783         (inf_child_fileio_readlink, inf_child_use_agent)
10784         (inf_child_can_use_agent): Refactor as methods of
10785         inf_child_target.
10786         (return_zero, inf_child_target): Delete.
10787         (inf_child_target::inf_child_target): New.
10788         * inf-child.h: Include "target.h".
10789         (inf_child_target): Delete function prototype.
10790         (inf_child_target): New class.
10791         (inf_child_open_target, inf_child_mourn_inferior)
10792         (inf_child_maybe_unpush_target): Delete.
10793         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10794         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10795         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10796         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10797         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10798         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10799         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10800         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10801         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10802         methods of inf_ptrace_target.
10803         (inf_ptrace_target): Delete function.
10804         * inf-ptrace.h: Include "inf-child.h".
10805         (inf_ptrace_target): Delete function declaration.
10806         (inf_ptrace_target): New class.
10807         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10808         * linux-nat.c (linux_target): New.
10809         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10810         (linux_nat_target::~linux_nat_target): New.
10811         (linux_child_post_attach, linux_child_post_startup_inferior)
10812         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10813         (linux_child_remove_fork_catchpoint)
10814         (linux_child_insert_vfork_catchpoint)
10815         (linux_child_remove_vfork_catchpoint)
10816         (linux_child_insert_exec_catchpoint)
10817         (linux_child_remove_exec_catchpoint)
10818         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10819         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10820         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10821         (linux_nat_stopped_data_address)
10822         (linux_nat_stopped_by_sw_breakpoint)
10823         (linux_nat_supports_stopped_by_sw_breakpoint)
10824         (linux_nat_stopped_by_hw_breakpoint)
10825         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10826         (linux_nat_kill, linux_nat_mourn_inferior)
10827         (linux_nat_xfer_partial, linux_nat_thread_alive)
10828         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10829         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10830         (linux_child_static_tracepoint_markers_by_strid)
10831         (linux_nat_is_async_p, linux_nat_can_async_p)
10832         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10833         (linux_nat_supports_multi_process)
10834         (linux_nat_supports_disable_randomization, linux_nat_async)
10835         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10836         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10837         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10838         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10839         methods of linux_nat_target.
10840         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10841         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10842         parameter.
10843         (check_stopped_by_watchpoint): Adjust.
10844         (linux_xfer_partial): Delete.
10845         (linux_target_install_ops, linux_target, linux_nat_add_target):
10846         Delete.
10847         (linux_nat_target::linux_nat_target): New.
10848         * linux-nat.h: Include "inf-ptrace.h".
10849         (linux_nat_target): New.
10850         (linux_target, linux_target_install_ops, linux_nat_add_target):
10851         Delete function declarations.
10852         (linux_target): Declare global.
10853         * linux-thread-db.c (thread_db_target): New.
10854         (thread_db_target::thread_db_target): New.
10855         (thread_db_ops): Delete.
10856         (the_thread_db_target): New.
10857         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10858         (thread_db_update_thread_list, thread_db_pid_to_str)
10859         (thread_db_extra_thread_info)
10860         (thread_db_thread_handle_to_thread_info)
10861         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10862         (thread_db_resume): Refactor as methods of thread_db_target.
10863         (init_thread_db_ops): Delete.
10864         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10865         * x86-linux-nat.c: Don't include "linux-nat.h".
10866         (super_post_startup_inferior): Delete.
10867         (x86_linux_nat_target::~x86_linux_nat_target): New.
10868         (x86_linux_child_post_startup_inferior)
10869         (x86_linux_read_description, x86_linux_enable_btrace)
10870         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10871         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10872         methods of x86_linux_nat_target.
10873         (x86_linux_create_target): Delete.  Bits folded ...
10874         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10875         pointer.
10876         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10877         (x86_linux_nat_target): New class.
10878         (x86_linux_create_target): Delete.
10879         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10880         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10881         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10882         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10883         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10884         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10885         make extern.
10886         (x86_use_watchpoints): Delete.
10887         * x86-nat.h: Include "breakpoint.h" and "target.h".
10888         (x86_use_watchpoints): Delete.
10889         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10890         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10891         (x86_insert_watchpoint, x86_remove_watchpoint)
10892         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10893         (x86_stopped_by_hw_breakpoint): New declarations.
10894         (x86_nat_target): New template class.
10895
10896         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10897         (the_ppc_linux_nat_target): New.
10898         (ppc_linux_fetch_inferior_registers)
10899         (ppc_linux_can_use_hw_breakpoint)
10900         (ppc_linux_region_ok_for_hw_watchpoint)
10901         (ppc_linux_ranged_break_num_registers)
10902         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10903         (ppc_linux_insert_mask_watchpoint)
10904         (ppc_linux_remove_mask_watchpoint)
10905         (ppc_linux_can_accel_watchpoint_condition)
10906         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10907         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10908         (ppc_linux_watchpoint_addr_within_range)
10909         (ppc_linux_masked_watch_num_registers)
10910         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10911         (ppc_linux_read_description): Refactor as methods of
10912         ppc_linux_nat_target.
10913         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10914
10915         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10916         (procfs_target): New class.
10917         (the_procfs_target): New.
10918         (procfs_target): Delete function.
10919         (procfs_auxv_parse, procfs_attach, procfs_detach)
10920         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10921         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10922         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10923         (procfs_create_inferior, procfs_update_thread_list)
10924         (procfs_thread_alive, procfs_pid_to_str)
10925         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10926         (procfs_stopped_data_address, procfs_insert_watchpoint)
10927         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10928         (proc_find_memory_regions, procfs_info_proc)
10929         (procfs_make_note_section): Refactor as methods of procfs_target.
10930         (_initialize_procfs): Adjust.
10931         * sol-thread.c (sol_thread_target): New class.
10932         (sol_thread_ops): Now a sol_thread_target.
10933         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10934         (sol_thread_fetch_registers, sol_thread_store_registers)
10935         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10936         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10937         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10938         (init_sol_thread_ops): Delete.
10939         (_initialize_sol_thread): Adjust.  Remove references to
10940         init_sol_thread_ops and complete_target_initialization.
10941
10942         * windows-nat.c (windows_nat_target): New class.
10943         (windows_fetch_inferior_registers)
10944         (windows_store_inferior_registers, windows_resume, windows_wait)
10945         (windows_attach, windows_detach, windows_pid_to_exec_file)
10946         (windows_files_info, windows_create_inferior)
10947         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10948         (windows_close, windows_pid_to_str, windows_xfer_partial)
10949         (windows_get_tib_address, windows_get_ada_task_ptid)
10950         (windows_thread_name, windows_thread_alive): Refactor as
10951         windows_nat_target methods.
10952         (do_initial_windows_stuff): Adjust.
10953         (windows_target): Delete function.
10954         (_initialize_windows_nat): Adjust.
10955
10956         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10957         (darwin_mourn_inferior, darwin_kill_inferior)
10958         (darwin_create_inferior, darwin_attach, darwin_detach)
10959         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10960         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10961         (darwin_supports_multi_process): Refactor as darwin_nat_target
10962         methods.
10963         (darwin_resume_to, darwin_files_info): Delete.
10964         (_initialize_darwin_inferior): Rename to ...
10965         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10966         * darwin-nat.h: Include "inf-child.h".
10967         (darwin_nat_target): New class.
10968         (darwin_complete_target): Delete.
10969         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10970         (darwin_target): New.
10971         (i386_darwin_fetch_inferior_registers)
10972         (i386_darwin_store_inferior_registers): Refactor as methods of
10973         darwin_nat_target.
10974         (darwin_complete_target): Delete, with ...
10975         (_initialize_i386_darwin_nat): ... bits factored out here.
10976
10977         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10978         (the_alpha_linux_nat_target): New.
10979         (alpha_linux_register_u_offset): Refactor as
10980         alpha_linux_nat_target method.
10981         (_initialize_alpha_linux_nat): Adjust.
10982         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10983         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10984         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10985         methods of linux_nat_trad_target.
10986         (linux_trad_target): Delete.
10987         * linux-nat-trad.h (linux_trad_target): Delete function.
10988         (linux_nat_trad_target): New class.
10989         * mips-linux-nat.c (mips_linux_nat_target): New class.
10990         (super_fetch_registers, super_store_registers, super_close):
10991         Delete.
10992         (the_mips_linux_nat_target): New.
10993         (mips64_linux_regsets_fetch_registers)
10994         (mips64_linux_regsets_store_registers)
10995         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10996         (mips_linux_register_u_offset, mips_linux_read_description)
10997         (mips_linux_can_use_hw_breakpoint)
10998         (mips_linux_stopped_by_watchpoint)
10999         (mips_linux_stopped_data_address)
11000         (mips_linux_region_ok_for_hw_watchpoint)
11001         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11002         (mips_linux_close): Refactor as methods of mips_linux_nat.
11003         (_initialize_mips_linux_nat): Adjust to C++ification.
11004
11005         * aix-thread.c (aix_thread_target): New class.
11006         (aix_thread_ops): Now an aix_thread_target.
11007         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11008         (aix_thread_fetch_registers, aix_thread_store_registers)
11009         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11010         (aix_thread_thread_alive, aix_thread_pid_to_str)
11011         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11012         Refactor as methods of aix_thread_target.
11013         (init_aix_thread_ops): Delete.
11014         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11015         and complete_target_initialization.
11016         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11017         (rs6000_nat_target): New class.
11018         (the_rs6000_nat_target): New.
11019         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11020         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11021         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11022         (super_create_inferior): Delete.
11023         (_initialize_rs6000_nat): Adjust to C++ification.
11024
11025         * arm-linux-nat.c (arm_linux_nat_target): New class.
11026         (the_arm_linux_nat_target): New.
11027         (arm_linux_fetch_inferior_registers)
11028         (arm_linux_store_inferior_registers, arm_linux_read_description)
11029         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11030         (arm_linux_remove_hw_breakpoint)
11031         (arm_linux_region_ok_for_hw_watchpoint)
11032         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11033         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11034         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11035         arm_linux_nat_target.
11036         (_initialize_arm_linux_nat): Adjust to C++ification.
11037
11038         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11039         (the_aarch64_linux_nat_target): New.
11040         (aarch64_linux_fetch_inferior_registers)
11041         (aarch64_linux_store_inferior_registers)
11042         (aarch64_linux_child_post_startup_inferior)
11043         (aarch64_linux_read_description)
11044         (aarch64_linux_can_use_hw_breakpoint)
11045         (aarch64_linux_insert_hw_breakpoint)
11046         (aarch64_linux_remove_hw_breakpoint)
11047         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11048         (aarch64_linux_region_ok_for_hw_watchpoint)
11049         (aarch64_linux_stopped_data_address)
11050         (aarch64_linux_stopped_by_watchpoint)
11051         (aarch64_linux_watchpoint_addr_within_range)
11052         (aarch64_linux_can_do_single_step): Refactor as methods of
11053         aarch64_linux_nat_target.
11054         (super_post_startup_inferior): Delete.
11055         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11056
11057         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11058         (the_hppa_linux_nat_target): New.
11059         (hppa_linux_fetch_inferior_registers)
11060         (hppa_linux_store_inferior_registers): Refactor as methods of
11061         hppa_linux_nat_target.
11062         (_initialize_hppa_linux_nat): Adjust to C++ification.
11063
11064         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11065         (the_ia64_linux_nat_target): New.
11066         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11067         (ia64_linux_stopped_data_address)
11068         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11069         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11070         ia64_linux_nat_target methods.
11071         (super_xfer_partial): Delete.
11072         (_initialize_ia64_linux_nat): Adjust to C++ification.
11073
11074         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11075         (the_m32r_linux_nat_target): New.
11076         (m32r_linux_fetch_inferior_registers)
11077         (m32r_linux_store_inferior_registers): Refactor as
11078         m32r_linux_nat_target methods.
11079         (_initialize_m32r_linux_nat): Adjust to C++ification.
11080
11081         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11082         (the_m68k_linux_nat_target): New.
11083         (m68k_linux_fetch_inferior_registers)
11084         (m68k_linux_store_inferior_registers): Refactor as
11085         m68k_linux_nat_target methods.
11086         (_initialize_m68k_linux_nat): Adjust to C++ification.
11087
11088         * s390-linux-nat.c (s390_linux_nat_target): New class.
11089         (the_s390_linux_nat_target): New.
11090         (s390_linux_fetch_inferior_registers)
11091         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11092         (s390_insert_watchpoint, s390_remove_watchpoint)
11093         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11094         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11095         (s390_auxv_parse, s390_read_description): Refactor as methods of
11096         s390_linux_nat_target.
11097         (_initialize_s390_nat): Adjust to C++ification.
11098
11099         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11100         (the_sparc_linux_nat_target): New.
11101         (_initialize_sparc_linux_nat): Adjust to C++ification.
11102         * sparc-nat.c (sparc_fetch_inferior_registers)
11103         (sparc_store_inferior_registers): Remove target_ops parameter.
11104         * sparc-nat.h (sparc_fetch_inferior_registers)
11105         (sparc_store_inferior_registers): Remove target_ops parameter.
11106         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11107         (the_sparc64_linux_nat_target): New.
11108         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11109
11110         * spu-linux-nat.c (spu_linux_nat_target): New class.
11111         (the_spu_linux_nat_target): New.
11112         (spu_child_post_startup_inferior, spu_child_post_attach)
11113         (spu_child_wait, spu_fetch_inferior_registers)
11114         (spu_store_inferior_registers, spu_xfer_partial)
11115         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11116         methods.
11117         (_initialize_spu_nat): Adjust to C++ification.
11118
11119         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11120         (the_tilegx_linux_nat_target): New.
11121         (fetch_inferior_registers, store_inferior_registers):
11122         Refactor as methods.
11123         (_initialize_tile_linux_nat): Adjust to C++ification.
11124
11125         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11126         (the_xtensa_linux_nat_target): New.
11127         (xtensa_linux_fetch_inferior_registers)
11128         (xtensa_linux_store_inferior_registers): Refactor as
11129         xtensa_linux_nat_target methods.
11130         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11131
11132         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11133         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11134         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11135         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11136         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11137         (fbsd_stopped_by_sw_breakpoint)
11138         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11139         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11140         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11141         (fbsd_post_startup_inferior, fbsd_post_attach)
11142         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11143         (fbsd_set_syscall_catchpoint)
11144         (super_xfer_partial, super_resume, super_wait)
11145         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11146         (fbsd_handle_debug_trap): Remove target_ops parameter.
11147         (fbsd_nat_add_target): Delete.
11148         * fbsd-nat.h: Include "inf-ptrace.h".
11149         (fbsd_nat_add_target): Delete.
11150         (USE_SIGTRAP_SIGINFO): Define.
11151         (fbsd_nat_target): New class.
11152
11153         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11154         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11155         (amd64bsd_target): Delete.
11156         * amd64-bsd-nat.h: New file.
11157         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11158         "x86-bsd-nat.h".
11159         (amd64_fbsd_nat_target): New class.
11160         (the_amd64_fbsd_nat_target): New.
11161         (amd64fbsd_read_description): Refactor as method of
11162         amd64_fbsd_nat_target.
11163         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11164         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11165         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11166         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11167         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11168         (i386bsd_target): Delete.
11169         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11170         (i386bsd_fetch_inferior_registers)
11171         (i386bsd_store_inferior_registers): Declare.
11172         (i386_bsd_nat_target): New class.
11173         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11174         (the_i386_fbsd_nat_target): New.
11175         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11176         i386_fbsd_nat_target methods.
11177         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11178         (_initialize_i386fbsd_nat): Adjust to C++ification.
11179         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11180         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11181         (_initialize_x86_bsd_nat): Adjust to C++ification.
11182         * x86-bsd-nat.h: Include "x86-nat.h".
11183         (x86bsd_target): Delete declaration.
11184         (x86bsd_nat_target): New class.
11185
11186         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11187         (the_aarch64_fbsd_nat_target): New.
11188         (aarch64_fbsd_fetch_inferior_registers)
11189         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11190         aarch64_fbsd_nat_target.
11191         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11192         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11193         (the_alpha_bsd_nat_target): New.
11194         (alphabsd_fetch_inferior_registers)
11195         (alphabsd_store_inferior_registers): Refactor as
11196         alpha_bsd_nat_target methods.
11197         (_initialize_alphabsd_nat): Refactor as methods of
11198         alpha_bsd_nat_target.
11199         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11200         (the_amd64_nbsd_nat_target): New.
11201         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11202         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11203         (the_amd64_obsd_nat_target): New.
11204         (_initialize_amd64obsd_nat): Adjust to C++ification.
11205         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11206         (the_arm_fbsd_nat_target): New.
11207         (arm_fbsd_fetch_inferior_registers)
11208         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11209         (_initialize_arm_fbsd_nat): Refactor as methods of
11210         arm_fbsd_nat_target.
11211         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11212         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11213         (the_arm_netbsd_nat_target): New.
11214         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11215         arm_netbsd_nat_target.
11216         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11217         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11218         (the_hppa_nbsd_nat_target): New.
11219         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11220         hppa_nbsd_nat_target methods.
11221         (_initialize_hppanbsd_nat): Adjust to C++ification.
11222         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11223         (the_hppa_obsd_nat_target): New.
11224         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11225         methods of hppa_obsd_nat_target.
11226         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11227         add_target.
11228         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11229         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11230         add_target.
11231         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11232         (_initialize_i386obsd_nat): Use add_target.
11233         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11234         (the_m68k_bsd_nat_target): New.
11235         (m68kbsd_fetch_inferior_registers)
11236         (m68kbsd_store_inferior_registers): Refactor as methods of
11237         m68k_bsd_nat_target.
11238         (_initialize_m68kbsd_nat): Adjust to C++ification.
11239         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11240         (the_mips_fbsd_nat_target): New.
11241         (mips_fbsd_fetch_inferior_registers)
11242         (mips_fbsd_store_inferior_registers): Refactor as methods of
11243         mips_fbsd_nat_target.
11244         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11245         add_target.
11246         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11247         (the_mips_nbsd_nat_target): New.
11248         (mipsnbsd_fetch_inferior_registers)
11249         (mipsnbsd_store_inferior_registers): Refactor as methods of
11250         mips_nbsd_nat_target.
11251         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11252         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11253         (the_mips64_obsd_nat_target): New.
11254         (mips64obsd_fetch_inferior_registers)
11255         (mips64obsd_store_inferior_registers): Refactor as methods of
11256         mips64_obsd_nat_target.
11257         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11258         add_target.
11259         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11260         nbsd_nat_target.
11261         * nbsd-nat.h: Include "inf-ptrace.h".
11262         (nbsd_nat_target): New class.
11263         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11264         (obsd_wait): Refactor as methods of obsd_nat_target.
11265         (obsd_add_target): Delete.
11266         * obsd-nat.h: Include "inf-ptrace.h".
11267         (obsd_nat_target): New class.
11268         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11269         (the_ppc_fbsd_nat_target): New.
11270         (ppcfbsd_fetch_inferior_registers)
11271         (ppcfbsd_store_inferior_registers): Refactor as methods of
11272         ppc_fbsd_nat_target.
11273         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11274         add_target.
11275         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11276         (the_ppc_nbsd_nat_target): New.
11277         (ppcnbsd_fetch_inferior_registers)
11278         (ppcnbsd_store_inferior_registers): Refactor as methods of
11279         ppc_nbsd_nat_target.
11280         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11281         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11282         (the_ppc_obsd_nat_target): New.
11283         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11284         methods of ppc_obsd_nat_target.
11285         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11286         add_target.
11287         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11288         (the_sh_nbsd_nat_target): New.
11289         (shnbsd_fetch_inferior_registers)
11290         (shnbsd_store_inferior_registers): Refactor as methods of
11291         sh_nbsd_nat_target.
11292         (_initialize_shnbsd_nat): Adjust to C++ification.
11293         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11294         (inf_ptrace_xfer_partial): Delete.
11295         (sparc_xfer_partial, sparc_target): Delete.
11296         * sparc-nat.h (sparc_fetch_inferior_registers)
11297         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11298         (sparc_target): Delete function declaration.
11299         (sparc_target): New template class.
11300         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11301         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11302         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11303         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11304         add_target.
11305         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11306         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11307         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11308         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11309         add_target.
11310         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11311         (the_vax_bsd_nat_target): New.
11312         (vaxbsd_fetch_inferior_registers)
11313         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11314         methods.
11315         (_initialize_vaxbsd_nat): Adjust to C++ification.
11316
11317         * bsd-kvm.c (bsd_kvm_target): New class.
11318         (bsd_kvm_ops): Now a bsd_kvm_target.
11319         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11320         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11321         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11322         bsd_kvm_target.
11323         (bsd_kvm_return_one): Delete.
11324         (bsd_kvm_add_target): Adjust to C++ification.
11325
11326         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11327         (nto_procfs_target_procfs): New classes.
11328         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11329         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11330         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11331         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11332         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11333         (procfs_remove_hw_breakpoint, procfs_resume)
11334         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11335         (procfs_kill_inferior, procfs_store_registers)
11336         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11337         as methods of nto_procfs_target.
11338         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11339         (nto_native_ops): Delete.
11340         (procfs_open, procfs_native_open): Delete.
11341         (nto_native_ops): Now an nto_procfs_target_native.
11342         (init_procfs_targets): Adjust to C++ification.
11343         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11344         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11345         Refactor as methods of nto_procfs_target.
11346
11347         * go32-nat.c (go32_nat_target): New class.
11348         (the_go32_nat_target): New.
11349         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11350         (go32_store_registers, go32_xfer_partial, go32_files_info)
11351         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11352         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11353         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11354         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11355         (go32_target): Delete.
11356         (_initialize_go32_nat): Adjust to C++ification.
11357
11358         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11359         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11360         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11361         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11362         gnu_nat_target.
11363         (gnu_target): Delete.
11364         * gnu-nat.h (gnu_target): Delete.
11365         (gnu_nat_target): New class.
11366         * i386-gnu-nat.c (gnu_base_target): New.
11367         (i386_gnu_nat_target): New class.
11368         (the_i386_gnu_nat_target): New.
11369         (_initialize_i386gnu_nat): Adjust to C++ification.
11370
11371 2018-05-02  Pedro Alves  <palves@redhat.com>
11372
11373         * bfd-target.c (target_bfd_xclose): Rename to ...
11374         (target_bfd_close): ... this.
11375         (target_bfd_reopen): Adjust.
11376         * target.c (target_close): Remove references to to_xclose.
11377         * target.h (target_ops::to_xclose): Delete.
11378         (target_ops::to_close): Update comments.
11379
11380 2018-05-02  Pedro Alves  <palves@redhat.com>
11381
11382         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11383         "linux-nat.h".
11384         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11385         * inf-ptrace.c (inf_ptrace_register_u_offset)
11386         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11387         (inf_ptrace_store_register, inf_ptrace_store_registers)
11388         (inf_ptrace_trad_target): Move to ...
11389         * linux-nat-trad.c: ... this new file.
11390         * linux-nat-trad.h: New file.
11391         * linux-nat.c (linux_target_install_ops): Make extern.
11392         (linux_trad_target): Delete.
11393         * linux-nat.h (linux_trad_target): Delete declaration.
11394         (linux_target_install_ops): Declare.
11395         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11396         "linux-nat.h".
11397
11398 2018-05-02  Pedro Alves  <palves@redhat.com>
11399
11400         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11401         procfs_target/add_target here.
11402         * procfs.c (procfs_target): Make static.
11403         (_initialize_procfs): Call add_target here.
11404         * procfs.h (struct target_ops): Remove forward declaration.
11405         (procfs_target): Remove declaration.
11406         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11407
11408 2018-05-02  Pedro Alves  <palves@redhat.com>
11409
11410         * procfs.c (procfs_stopped_by_watchpoint)
11411         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11412         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11413         Forward declare.
11414         (procfs_use_watchpoints): Delete, move contents...
11415         (procfs_target): ... here.
11416         * procfs.h (procfs_use_watchpoints): Delete declaration.
11417         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11418         procfs_use_watchpoints.
11419         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11420         procfs_use_watchpoints.
11421
11422 2018-05-02  Tom Tromey  <tom@tromey.com>
11423
11424         PR python/20084:
11425         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11426         and var_zuinteger_unlimited.
11427         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11428         and PARAM_ZUINTEGER_UNLIMITED.
11429         (set_parameter_value): Handle var_zuinteger and
11430         var_zuinteger_unlimited.
11431         (add_setshow_generic): Likewise.
11432         (parmpy_init): Likewise.
11433
11434 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11435
11436         PR rust/23124
11437         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11438         pointer is not null before dereferencing it.
11439
11440 2018-04-30  Tom Tromey  <tom@tromey.com>
11441
11442         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11443         is_mi_like_p.
11444
11445 2018-04-30  Tom Tromey  <tom@tromey.com>
11446
11447         * breakpoint.c (mention): Remove use of is_mi_like_p.
11448         (print_mention_ranged_breakpoint): Likewise.
11449         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11450         of is_mi_like_p.
11451
11452 2018-04-30  Tom Tromey  <tom@tromey.com>
11453
11454         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11455
11456 2018-04-30  Tom Tromey  <tom@tromey.com>
11457
11458         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11459         (info_spu_event_command): Remove some uses of is_mi_like_p.
11460
11461 2018-04-30  Tom Tromey  <tom@tromey.com>
11462
11463         * python/py-framefilter.c (py_print_single_arg)
11464         (enumerate_locals, py_print_args, py_print_frame): Remove some
11465         uses of is_mi_like_p.
11466
11467 2018-04-30  Tom Tromey  <tom@tromey.com>
11468
11469         * ui-out.c: Update.
11470         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11471         * ui-out.h (ui_out::is_mi_like_p): Now const.
11472         (ui_out::do_is_mi_like_p): Now const.
11473         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11474
11475 2018-04-30  Tom Tromey  <tom@tromey.com>
11476
11477         * varobj.c (varobj_set_visualizer): Use new_reference.
11478         * python/python.c (gdbpy_decode_line): Use new_reference.
11479         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11480         new_reference.
11481
11482 2018-04-30  Tom Tromey  <tom@tromey.com>
11483
11484         * varobj.c (install_new_value): Use new_reference.
11485         * value.h (value_incref): Return void.  Swap intro comment with
11486         value_decref.
11487         * value.c (set_value_parent): Use new_reference.
11488         (value_incref): Return void.  Update intro comment.
11489         (release_value): Use new_reference.
11490         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11491
11492 2018-04-30  Tom Tromey  <tom@tromey.com>
11493
11494         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11495         * gdb_bfd.h (new_bfd_ref): Remove.
11496         (gdb_bfd_open): Update comment.
11497         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11498         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11499         (gdb_bfd_fdopenr): Use new_reference.
11500         * exec.c (exec_file_attach): Use new_reference.
11501
11502 2018-04-30  Tom Tromey  <tom@tromey.com>
11503
11504         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11505         method.
11506
11507 2018-04-30  Tom Tromey  <tom@tromey.com>
11508
11509         * jit.c (jit_read_code_entry): Use type_align.
11510         * i386-tdep.c (i386_gdbarch_init): Don't call
11511         set_gdbarch_long_long_align_bit.
11512         * gdbarch.sh: Remove long_long_align_bit.
11513         * gdbarch.c, gdbarch.h: Rebuild.
11514         * arc-tdep.c (arc_type_align): New function.
11515         (arc_gdbarch_init): Use arc_type_align.  Don't call
11516         set_gdbarch_long_long_align_bit.
11517
11518 2018-04-30  Tom Tromey  <tom@tromey.com>
11519
11520         * rust-lang.c (rust_type_alignment): Remove.
11521         (rust_composite_type): Use type_align.
11522
11523 2018-04-30  Tom Tromey  <tom@tromey.com>
11524
11525         * NEWS: Mention Type.align.
11526         * python/py-type.c (typy_get_alignof): New function.
11527         (type_object_getset): Add "alignof".
11528
11529 2018-04-30  Tom Tromey  <tom@tromey.com>
11530
11531         PR exp/17095:
11532         * NEWS: Update.
11533         * std-operator.def (UNOP_ALIGNOF): New operator.
11534         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11535         New.
11536         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11537         * c-lang.c (c_op_print_tab): Add alignof.
11538         * c-exp.y (ALIGNOF): New token.
11539         (exp): Add "ALIGNOF" production.
11540         (ident_tokens): Add _Alignof and alignof.
11541
11542 2018-04-30  Tom Tromey  <tom@tromey.com>
11543
11544         * i386-tdep.c (i386_type_align): New function.
11545         (i386_gdbarch_init): Update.
11546         * gdbarch.sh (type_align): New method.
11547         * gdbarch.c, gdbarch.h: Rebuild.
11548         * arch-utils.h (default_type_align): Declare.
11549         * arch-utils.c (default_type_align): New function.
11550         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11551         (struct type) <align_log2>: New field.
11552         <instance_flags>: Now a bitfield.
11553         (TYPE_RAW_ALIGN): New macro.
11554         (type_align, type_raw_align, set_type_align): Declare.
11555         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11556         functions.
11557         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11558         (get_alignment, maybe_set_alignment): New functions.
11559         (read_structure_type, read_enumeration_type, read_array_type)
11560         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11561         (read_subrange_type, read_base_type): Set type alignment.
11562
11563 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11564
11565         * dwarf2read.c (read_index_from_section): Use bool.
11566
11567 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11568
11569         PR gdb/22950
11570         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11571         with #ifdef.
11572
11573 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11574
11575         PR build/22873
11576         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11577         last step, and do it atomically.
11578
11579 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11580
11581         * compile/compile-c-types.c (convert_int, convert_float):
11582         Update for C FE v1.
11583
11584 2018-04-27  Tom Tromey  <tom@tromey.com>
11585
11586         PR rust/22545:
11587         * rust-lang.c (rust_inclusive_range_type_p): New function.
11588         (rust_range): Handle inclusive ranges.
11589         (rust_compute_range): Likewise.
11590         * rust-exp.y (struct rust_op) <inclusive>: New field.
11591         (DOTDOTEQ): New constant.
11592         (range_expr): Add "..=" productions.
11593         (operator_tokens): Add "..=" token.
11594         (ast_range): Add "inclusive" parameter.
11595         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11596         ranges.
11597         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11598         bounds values.
11599         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11600         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11601         Update comments.
11602         * expprint.c (print_subexp_standard): Handle new bounds values.
11603         (dump_subexp_body_standard): Likewise.
11604
11605 2018-04-27  Tom Tromey  <tom@tromey.com>
11606
11607         * configure: Rebuild.
11608         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11609         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11610         "OVERRIDE".
11611         (class symbol_needs_eval_context): Likewise.
11612         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11613         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11614         "virtual".
11615         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11616         "override".
11617         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11618         * aarch64-tdep.c (instruction_reader::read): Use "override".
11619         (instruction_reader_test::read): Likewise.
11620         * arm-tdep.c (instruction_reader::read): Use "override".
11621         (instruction_reader_thumb::read): Likewise.
11622
11623 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11624
11625         PR remote/9665
11626         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11627         instead of remote_send.
11628         (remote_send): Remove.
11629
11630 2018-04-26  Pedro Alves  <palves@redhat.com>
11631
11632         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11633         find_function_start_sal instead of find_pc_line.
11634
11635 2018-04-26  Pedro Alves  <palves@redhat.com>
11636
11637         * breakpoint.c (set_breakpoint_location_function): Handle
11638         mst_data_gnu_ifunc.
11639         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11640         * elfread.c (elf_symtab_read): Give data symbols with
11641         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11642         (elf_rel_plt_read): Update comment.
11643         * linespec.c (convert_linespec_to_sals): Handle
11644         mst_data_gnu_ifunc.
11645         (minsym_found): Handle mst_data_gnu_ifunc.
11646         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11647         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11648         * parse.c (find_minsym_type_and_address): Handle
11649         mst_data_gnu_ifunc.
11650         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11651         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11652         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11653         comment.
11654         <mst_data_gnu_ifunc>: New enumerator.
11655
11656 2018-04-26  Pedro Alves  <palves@redhat.com>
11657
11658         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11659         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11660         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11661         Handle it.
11662         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11663         (lookup_minimal_symbol_by_pc): Adjust.
11664         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11665         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11666         * minsyms.h (lookup_msym_prefer): New enum.
11667         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11668         parameter by a lookup_msym_prefer parameter.
11669
11670 2018-04-26  Pedro Alves  <palves@redhat.com>
11671
11672         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11673         ends in "@plt" instead of looking at the symbol's section.
11674
11675 2018-04-26  Pedro Alves  <palves@redhat.com>
11676
11677         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11678         all references.
11679         (find_pc_partial_function_gnu_ifunc): Rename to ...
11680         (find_pc_partial_function): ... this, and remove references to
11681         'is_gnu_ifunc_p'.
11682         (find_pc_partial_function): Delete old implementation.
11683         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11684
11685 2018-04-26  Pedro Alves  <palves@redhat.com>
11686
11687         * linespec.c (struct bound_minimal_symbol_search_key): New.
11688         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11689         skip first line if we found a GNU ifunc minimal symbol by name.
11690         (compare_msymbols): Change parameters to work with a destructured
11691         lhs minsym.
11692         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11693         functions.
11694
11695 2018-04-26  Pedro Alves  <palves@redhat.com>
11696
11697         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11698         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11699         address/name.
11700         (add_location_to_breakpoint): Store the minsym and the objfile in
11701         the breakpoint location.
11702         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11703         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11704         Record the minsym in the sal.
11705         * symtab.h (symtab_and_line) <msymbol>: New field.
11706
11707 2018-04-26  Pedro Alves  <palves@redhat.com>
11708
11709         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11710         unless we actually resolved the ifunc.
11711
11712 2018-04-26  Pedro Alves  <palves@redhat.com>
11713
11714         * c-exp.y (variable production): Prefer ifunc minsyms over
11715         regular function symbols.
11716         * symtab.c (find_gnu_ifunc): New function.
11717         * minsyms.h (lookup_msym_prefer): New enum.
11718         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11719         parameter by a lookup_msym_prefer parameter.
11720         * symtab.h (find_gnu_ifunc): New declaration.
11721
11722 2018-04-26  Pedro Alves  <palves@redhat.com>
11723
11724         * blockframe.c (find_gnu_ifunc_target_type): New function.
11725         (find_function_type): New.
11726         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11727         return a value with a memory address.
11728         (eval_call): For calls to GNU ifunc functions, try to find the
11729         type of the target function from the type that the resolver
11730         returns.
11731         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11732         symbols.
11733         * infcall.c (find_function_return_type): Delete.
11734         (find_function_addr): Add 'function_type' parameter.  For calls to
11735         GNU ifunc functions, try to find the type of the target function
11736         from the type that the resolver returns, and return it via
11737         FUNCTION_TYPE.
11738         (call_function_by_hand_dummy): Adjust to use the function type
11739         returned by find_function_addr.
11740         (find_function_addr): Add 'function_type' parameter and move
11741         description here.
11742         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11743         declarations.
11744
11745 2018-04-26  Pedro Alves  <palves@redhat.com>
11746
11747         * c-exp.y (variable production): Skip finding an alias for ifunc
11748         symbols.
11749
11750 2018-04-26  Pedro Alves  <palves@redhat.com>
11751
11752         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11753
11754 2018-04-25  Pedro Alves  <palves@redhat.com>
11755
11756         * infcmd.c (kill_command): Print the pid as string, not the whole
11757         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11758         message.
11759         * remote.c (remote_detach_1): Print the pid as string, not the
11760         whole thread's ptid.
11761
11762 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11763             Sergio Durigan Junior  <sergiodj@redhat.com>
11764             Pedro Alves  <palves@redhat.com>
11765
11766         * infcmd.c (kill_command): Print message when inferior has
11767         been killed.
11768         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11769         '1'.
11770         (add_inferior): Improve message printed when
11771         'print_inferior_events' is on.
11772         (exit_inferior): Remove message printed when
11773         'print_inferior_events' is on.
11774         (detach_inferior): Improve message printed when
11775         'print_inferior_events' is on.
11776         (initialize_inferiors): Use 'add_inferior_silent' to set
11777         'current_inferior_'.
11778         * inferior.h (print_inferior_events): Declare here as
11779         'extern'.
11780         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11781         '[Detaching...]' messages when 'print_inferior_events' is on.
11782         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11783         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11784         'Detaching after fork from child...', replace it by '... from
11785         parent...'.
11786         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11787         prefix/suffix when printing 'Detaching...' messages.  Print
11788         them when 'print_inferior_events' is on.
11789         * remote.c (remote_detach_1): Print message when detaching
11790         from inferior and '!is_fork_parent'.
11791
11792 2018-04-24  Tom Tromey  <tom@tromey.com>
11793
11794         * cli-out.h: Reindent.
11795
11796 2018-04-24  Tom Tromey  <tom@tromey.com>
11797
11798         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11799         (cli_ui_out::do_field_string): Use fputs_filtered.
11800         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11801
11802 2018-04-23  Tom Tromey  <tom@tromey.com>
11803
11804         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11805         gdb::unique_xmalloc_ptr.
11806
11807 2018-04-23  Tom Tromey  <tom@tromey.com>
11808
11809         * configure: Rebuild.
11810
11811 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11812
11813         PR gdb/23095
11814         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11815         prepare_for_testing.  Set normal_bp to r_debug_state if target
11816         is bsd.
11817
11818 2018-04-21  Pedro Alves  <palves@redhat.com>
11819             Rajendra SY  <rajendra.sy@gmail.com>
11820
11821         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11822         * remote.c (extended_remote_attach): In all-stop mode, mark the
11823         thread as executing.
11824
11825 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11826
11827         * thread.c (thread_apply_all_command): Fix comment.
11828         (thread_command): Fix comment.
11829
11830 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11831
11832         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11833         parameter.
11834         * features/aarch64-core.c (create_feature_aarch64_core):
11835         Regenerate.
11836         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11837         Likewise.
11838         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11839         Likewise.
11840         * features/i386/32bit-avx512.c
11841         (create_feature_i386_32bit_avx512): Likewise.
11842         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11843         Likewise.
11844         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11845         Likewise.
11846         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11847         Likewise.
11848         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11849         Likewise.
11850         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11851         Likewise.
11852         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11853         Likewise.
11854         * features/i386/64bit-avx512.c
11855         (create_feature_i386_64bit_avx512): Likewise.
11856         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11857         Likewise.
11858         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11859         Likewise.
11860         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11861         Likewise.
11862         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11863         Likewise.
11864         * features/i386/64bit-segments.c
11865         (create_feature_i386_64bit_segments): Likewise.
11866         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11867         Likewise.
11868         * features/i386/x32-core.c
11869         (create_feature_i386_x32_core): Likewise.
11870         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11871         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11872         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11873         * target-descriptions.c: In generated code, don't pass xml
11874         filename.
11875
11876 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11877
11878         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11879         (print_xml_feature::visit_post): Likewise.
11880         (print_xml_feature::visit): Likewise.
11881         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11882         (print_xml_feature): Add new class.
11883         * regformats/regdat.sh: Null xmltarget on feature targets.
11884         * target-descriptions.c (struct target_desc): Add xmltarget.
11885         (maintenance_check_tdesc_xml_convert): Add unittest function.
11886         (tdesc_get_features_xml): Add function to get xml.
11887         (maintenance_check_xml_descriptions): Test xml generation.
11888         * xml-tdesc.c (string_read_description_xml): Add function.
11889         * xml-tdesc.h (string_read_description_xml): Add declaration.
11890
11891 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11892
11893         * features/Makefile: Add feature marker to targets with new style
11894         target descriptions.
11895         * regformats/aarch64.dat: Regenerate.
11896         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11897         * regformats/i386/amd64-avx-linux.dat: Likewise.
11898         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11899         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11900         * regformats/i386/amd64-linux.dat: Likewise.
11901         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11902         * regformats/i386/amd64.dat: Likewise.
11903         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11904         * regformats/i386/i386-avx-linux.dat: Likewise.
11905         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11906         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11907         * regformats/i386/i386-linux.dat: Likewise.
11908         * regformats/i386/i386-mmx-linux.dat: Likewise.
11909         * regformats/i386/i386-mpx-linux.dat: Likewise.
11910         * regformats/i386/i386.dat: Likewise.
11911         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11912         * regformats/i386/x32-avx-linux.dat: Likewise.
11913         * regformats/i386/x32-linux.dat: Likewise.
11914         * regformats/tic6x-c62x-linux.dat: Likewise.
11915         * regformats/tic6x-c64x-linux.dat: Likewise.
11916         * regformats/tic6x-c64xp-linux.dat: Likewise.
11917         * regformats/regdat.sh: Parse feature marker.
11918
11919 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11920
11921         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11922         (tdesc_osabi_name): Likewise.
11923         * target-descriptions.c (tdesc_architecture_name): Add new
11924         function.
11925         (tdesc_osabi_name): Likewise.
11926
11927 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11928
11929         * common/tdesc.c (tdesc_predefined_type): Move to here.
11930         (tdesc_named_type): Likewise.
11931         (tdesc_create_vector): Likewise.
11932         (tdesc_create_struct): Likewise.
11933         (tdesc_set_struct_size): Likewise.
11934         (tdesc_create_union): Likewise.
11935         (tdesc_create_flags): Likewise.
11936         (tdesc_create_enum): Likewise.
11937         (tdesc_add_field): Likewise.
11938         (tdesc_add_typed_bitfield): Likewise.
11939         (tdesc_add_bitfield): Likewise.
11940         (tdesc_add_flag): Likewise.
11941         (tdesc_add_enum_value): Likewise.
11942         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11943         (struct tdesc_type_vector): Likewise.
11944         (struct tdesc_type_field): Likewise.
11945         (struct tdesc_type_with_fields): Likewise.
11946         (tdesc_create_enum): Add declaration.
11947         (tdesc_add_typed_bitfield): Likewise.
11948         (tdesc_add_enum_value): Likewise.
11949         * target-descriptions.c (tdesc_type_field): Move from here.
11950         (tdesc_type_builtin): Likewise.
11951         (tdesc_type_vector): Likewise.
11952         (tdesc_type_with_fields): Likewise.
11953         (tdesc_predefined_types): Likewise.
11954         (tdesc_named_type): Likewise.
11955         (tdesc_create_vector): Likewise.
11956         (tdesc_create_struct): Likewise.
11957         (tdesc_set_struct_size): Likewise.
11958         (tdesc_create_union): Likewise.
11959         (tdesc_create_flags): Likewise.
11960         (tdesc_create_enum): Likewise.
11961         (tdesc_add_field): Likewise.
11962         (tdesc_add_typed_bitfield): Likewise.
11963         (tdesc_add_bitfield): Likewise.
11964         (tdesc_add_flag): Likewise.
11965         (tdesc_add_enum_value): Likewise.
11966         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11967         (tdesc_add_typed_bitfield): Likewise.
11968         (tdesc_add_enum_value): Likewise.
11969
11970 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11971
11972         * common/tdesc.c (tdesc_feature::accept): Move to here.
11973         (tdesc_feature::operator==): Likewise.
11974         (tdesc_create_reg): Likewise.
11975         * common/tdesc.h (tdesc_type_kind): Likewise.
11976         (struct tdesc_type): Likewise.
11977         (struct tdesc_feature): Likewise.
11978         * regformats/regdat.sh: Create a feature.
11979         * target-descriptions.c (tdesc_type_kind): Move from here.
11980         (tdesc_type): Likewise.
11981         (tdesc_type_up): Likewise.
11982         (tdesc_feature): Likewise.
11983         (tdesc_create_reg): Likewise.
11984
11985 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11986
11987         * Makefile.in: Add arch/tdesc.c
11988         * common/tdesc.c: New file.
11989         * common/tdesc.h (tdesc_element_visitor): Move to here.
11990         (tdesc_element): Likewise.
11991         (tdesc_reg): Likewise.
11992         (tdesc_reg_up): Likewise.
11993         * regformats/regdef.h (reg): Add offset to constructors.
11994         * target-descriptions.c (tdesc_element_visitor): Move from here.
11995         (tdesc_element): Likewise.
11996         (tdesc_reg): Likewise.
11997         (tdesc_reg_up): Likewise.
11998
11999 2018-04-17  Tom Tromey  <tom@tromey.com>
12000
12001         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12002         discriminant field.
12003
12004 2018-04-17  Tom Tromey  <tom@tromey.com>
12005
12006         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12007
12008 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12009
12010         * symtab.c (print_symbol_info): Skip printing filename and line
12011         number when `last' is NULL.
12012         (symtab_symbol_info): Use empty string instead of NULL for first
12013         invocation of print_symbol_info.
12014         (rbreak_command): Pass NULL to `last' parameter of
12015         print_symbol_info.
12016
12017 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12018
12019         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12020         instead of nullptr.
12021
12022 2018-04-16  Pedro Alves  <palves@redhat.com>
12023
12024         * MAINTAINERS (sh): Remove.
12025         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12026         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12027         (ALLDEPFILES): Remove sh64-tdep.c.
12028         * NEWS: Mentions that support for SH-5/SH64 is removed.
12029         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12030         (sh*-*-openbsd*): Ditto.
12031         (sh64-*-elf*): Remove.
12032         (sh*): Remove.
12033         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12034         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12035         * sh-tdep.c: No longer include "sh64-tdep.h".
12036         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12037         * sh64-tdep.c, sh64-tdep.h: Remove files.
12038
12039 2018-04-16  Pedro Alves  <palves@redhat.com>
12040
12041         * MAINTAINERS: Remove m88k.
12042         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12043         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12044         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12045         * NEWS: Mention that support for m88k was removed.
12046         * configure.host (m88*-*-*): Remove support.
12047         * configure.nat (m88k-*-*): Remove support.
12048         * configure.tgt (m88*-*-openbsd*): Remove.
12049         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12050
12051 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12052
12053         * configure.tgt (x86_tobjs): New variable.
12054         (amd64_tobjs, i386_tobjs): Use it.
12055
12056 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12057
12058         * symtab.c (print_symbol_info): Precede the symbol definition by
12059         the line number when available.
12060         * NEWS: Advertise this enhancement.
12061
12062 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12063
12064         * NEWS (New options): announce set/show record btrace cpu.
12065         * btrace.c: Include record-btrace.h.
12066         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12067         the vendor is unknown.
12068         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12069         Maybe overwrite the btrace configuration's cpu.
12070         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12071         (btrace_fetch): Add cpu parameter.  Update callers.
12072         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12073         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12074         errata workarounds if the vendor is unknown.
12075         * python/py-record-btrace.c: Include record-btrace.h.
12076         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12077         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12078         * record-btrace.c (record_btrace_cpu_state_kind): New.
12079         (record_btrace_cpu): New.
12080         (set_record_btrace_cpu_cmdlist): New.
12081         (record_btrace_get_cpu): New.
12082         (require_btrace_thread, record_btrace_info)
12083         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12084         (cmd_set_record_btrace_cpu_none): New.
12085         (cmd_set_record_btrace_cpu_auto): New.
12086         (cmd_set_record_btrace_cpu): New.
12087         (cmd_show_record_btrace_cpu): New.
12088         (_initialize_record_btrace): Initialize set/show record btrace cpu
12089         commands.
12090         * record-btrace.h (record_btrace_get_cpu): New.
12091
12092 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12093
12094         * record.c (set_record_command): Fix typo in message.
12095
12096 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12097
12098         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12099
12100 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12101
12102         * infrun.c (process_event_stop_test): Call
12103         gdbarch_in_indirect_branch_thunk.
12104         * gdbarch.sh (in_indirect_branch_thunk): New.
12105         * gdbarch.c: Regenerated.
12106         * gdbarch.h: Regenerated.
12107         * x86-tdep.h: New.
12108         * x86-tdep.c: New.
12109         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12110         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12111         (ALLDEPFILES): Add x86-tdep.c.
12112         * arch-utils.h (default_in_indirect_branch_thunk): New.
12113         * arch-utils.c (default_in_indirect_branch_thunk): New.
12114         * i386-tdep: Include x86-tdep.h.
12115         (i386_in_indirect_branch_thunk): New.
12116         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12117         function.
12118         * amd64-tdep: Include x86-tdep.h.
12119         (amd64_in_indirect_branch_thunk): New.
12120         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12121
12122 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12123
12124         PR gdb/23053
12125         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12126         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12127         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12128         regression.
12129
12130 2018-04-12  Tom Tromey  <tom@tromey.com>
12131
12132         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12133         (rust_evaluate_subexp): Likewise.
12134
12135 2018-04-12  Pedro Alves  <palves@redhat.com>
12136
12137         * procfs.c (procfs_detach): Make forward declaration's prototype
12138         match definition's protototype.
12139         (proc_get_LDT_entry): Remove stale do_cleanups call.
12140
12141 2018-04-12  Pedro Alves  <palves@redhat.com>
12142
12143         * target.h (target_ops::to_has_exited): Delete.
12144         (target_has_exited): Delete.
12145         * target-delegates.c: Regenerate.
12146
12147 2018-04-11  Pedro Alves  <palves@redhat.com>
12148
12149         * target.c (fileio_fh_t::t): Add comment.
12150         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12151         (target_fileio_close): Handle a NULL target.
12152         (invalidate_fileio_fh): New.
12153         (target_close): Call it.
12154         * remote.c (remote_hostio_send_command): No longer check whether
12155         remote_desc is open.
12156
12157 2018-04-11  Pedro Alves  <palves@redhat.com>
12158
12159         * target.c (fileio_fh_t): Make it a named struct instead of a
12160         typedef.
12161         (fileio_fh_t::is_closed): New method.
12162         (DEF_VEC_O (fileio_fh_t)): Remove.
12163         (fileio_fhandles): Now a std::vector.
12164         (is_closed_fileio_fh): Delete.
12165         (acquire_fileio_fd): Adjust.  Rename parameters.
12166         (release_fileio_fd): Adjust.
12167         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12168         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12169         (target_fileio_close): Adjust.
12170
12171 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12172
12173         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12174         index.
12175
12176 2018-04-10  Pedro Alves  <palves@redhat.com>
12177
12178         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12179         (scoped_finish_thread_state): New class.
12180         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12181         cleanup.
12182         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12183         (fetch_inferior_event, normal_stop): Likewise.
12184         * thread.c (finish_thread_state_cleanup): Delete.
12185
12186 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12187             Pedro Alves  <palves@redhat.com>
12188
12189         * value.c: Include "selftest.h" and "common/array-view.h".
12190         (struct range) <operator ==>: New.
12191         (test_ranges_contain): New.
12192         (check_ranges_vector): New.
12193         (test_insert_into_bit_range_vector): New.
12194         (_initialize_values): Register selftests.
12195         * common/array-view.h (operator==, operator!=): New.
12196
12197 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12198
12199         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12200         an iterator.
12201         * inline-frame.c: Include <algorithm>.
12202         (struct inline_state): Add constructor.
12203         (inline_state_s): Remove.
12204         (DEF_VEC_O(inline_state_s)): Remove.
12205         (inline_states): Change type to std::vector.
12206         (find_inline_frame_state): Adjust to std::vector.
12207         (allocate_inline_frame_state): Remove.
12208         (clear_inline_frame_state): Adjust to std::vector.
12209         (skip_inline_frames): Adjust to std::vector.
12210
12211 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12212
12213         * tracepoint.h (struct trace_state_variable): Add constructor.
12214         <name>: Change type to std::string.
12215         * tracepoint.c (tsv_s): Remove.
12216         (DEF_VEC_O(tsv_s)): Remove.
12217         (tvariables): Change to std::vector.
12218         (create_trace_state_variable): Adjust to std::vector.
12219         (find_trace_state_variable): Likewise.
12220         (find_trace_state_variable_by_number): Likewise.
12221         (delete_trace_state_variable): Likewise.
12222         (trace_variable_command): Adjust to std::string.
12223         (delete_trace_variable_command): Likewise.
12224         (tvariables_info_1): Adjust to std::vector.
12225         (save_trace_state_variables): Likewise.
12226         (start_tracing): Likewise.
12227         (merge_uploaded_trace_state_variables): Adjust to std::vector
12228         and std::string.
12229         * target.h (struct target_ops)
12230         <to_download_trace_state_variable>: Pass reference to
12231         trace_state_variable.
12232         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12233         * target-delegates.c: Re-generate.
12234         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12235         (mi_tsv_deleted): Likewise.
12236         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12237         * remote.c (remote_download_trace_state_variable): Change
12238         pointer to reference and adjust.
12239         * make-target-delegates (parse_argtypes): Handle references.
12240         (write_function_header): Likewise.
12241         (munge_type): Likewise.
12242
12243 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12244
12245         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12246         string_view-selftests.c.
12247         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12248         testsuite.
12249         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12250         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12251         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12252         * unittests/basic_string_view/element_access/char/1.cc:
12253         Likewise.
12254         * unittests/basic_string_view/element_access/char/empty.cc:
12255         Likewise.
12256         * unittests/basic_string_view/element_access/char/front_back.cc:
12257         Likewise.
12258         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12259         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12260         Likewise.
12261         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12262         Likewise.
12263         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12264         Likewise.
12265         * unittests/basic_string_view/operations/compare/char/1.cc:
12266         Likewise.
12267         * unittests/basic_string_view/operations/compare/char/13650.cc:
12268         Likewise.
12269         * unittests/basic_string_view/operations/copy/char/1.cc:
12270         Likewise.
12271         * unittests/basic_string_view/operations/data/char/1.cc:
12272         Likewise.
12273         * unittests/basic_string_view/operations/find/char/1.cc:
12274         Likewise.
12275         * unittests/basic_string_view/operations/find/char/2.cc:
12276         Likewise.
12277         * unittests/basic_string_view/operations/find/char/3.cc:
12278         Likewise.
12279         * unittests/basic_string_view/operations/find/char/4.cc:
12280         Likewise.
12281         * unittests/basic_string_view/operations/rfind/char/1.cc:
12282         Likewise.
12283         * unittests/basic_string_view/operations/rfind/char/2.cc:
12284         Likewise.
12285         * unittests/basic_string_view/operations/rfind/char/3.cc:
12286         Likewise.
12287         * unittests/basic_string_view/operations/substr/char/1.cc:
12288         Likewise.
12289         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12290         * unittests/string_view-selftests.c: New file.
12291
12292 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12293
12294         * unittests/basic_string_view/capacity/1.cc: New file.
12295         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12296         * unittests/basic_string_view/cons/char/1.cc: New file.
12297         * unittests/basic_string_view/cons/char/2.cc: New file.
12298         * unittests/basic_string_view/cons/char/3.cc: New file.
12299         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12300         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12301         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12302         * unittests/basic_string_view/element_access/char/1.cc: New file.
12303         * unittests/basic_string_view/element_access/char/2.cc: New file.
12304         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12305         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12306         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12307         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12308         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12309         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12310         * unittests/basic_string_view/include.cc: New file.
12311         * unittests/basic_string_view/inserters/char/1.cc: New file.
12312         * unittests/basic_string_view/inserters/char/2.cc: New file.
12313         * unittests/basic_string_view/inserters/char/3.cc: New file.
12314         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12315         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12316         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12317         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12318         * unittests/basic_string_view/literals/types.cc: New file.
12319         * unittests/basic_string_view/literals/values.cc: New file.
12320         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12321         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12322         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12323         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12324         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12325         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12326         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12327         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12328         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12329         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12330         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12331         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12332         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12333         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12334         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12335         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12336         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12337         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12338         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12339         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12340         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12341         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12342         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12343         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12344         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12345         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12346         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12347         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12348         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12349         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12350         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12351         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12352         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12353         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12354         * unittests/basic_string_view/operators/char/2.cc: New file.
12355         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12356         * unittests/basic_string_view/range_access/char/1.cc: New file.
12357         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12358         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12359         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12360         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12361         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12362         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12363         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12364         * unittests/basic_string_view/typedefs.cc: New file.
12365         * unittests/basic_string_view/types/1.cc: New file.
12366
12367 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12368
12369         * common/gdb_string_view.h: Remove libstdc++ implementation
12370         details, adjust to gdb reality.
12371         * common/gdb_string_view.tcc: Likewise.
12372         * cli/cli-script.c (struct string_view): Remove.
12373         (user_args) <m_args>: Change element type to gdb::string_view.
12374         (user_args::insert_args): Adjust.
12375
12376 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12377
12378         * common/gdb_string_view.h: New file.
12379         * common/gdb_string_view.tcc: New file.
12380
12381 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12382
12383         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12384         * configure: Re-generate.
12385
12386 2018-04-09  Pedro Alves  <palves@redhat.com>
12387
12388         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12389         (set_target_gdbarch): Call
12390         gdb::observers::architecture_changed.notify instead of
12391         observer_notify_architecture_changed.
12392
12393 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12394
12395         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12396         (do_restore_current_traceframe_cleanup): Remove.
12397         (restore_current_traceframe_cleanup_dtor): Remove.
12398         (make_cleanup_restore_current_traceframe): Remove.
12399         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12400         New.
12401         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12402         * infrun.c (fetch_inferior_event): Use
12403         scoped_restore_current_traceframe.
12404
12405 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12406
12407         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12408         Remove.
12409         <n_allocated_type_units>: Remove.
12410         <all_type_units>: Change to std::vector.
12411         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12412         to std::vector change.
12413         (dwarf2_per_objfile::get_cutu): Likewise.
12414         (dwarf2_per_objfile::get_tu): Likewise.
12415         (create_signatured_type_table_from_index): Likewise.
12416         (create_signatured_type_table_from_debug_names): Likewise.
12417         (dw2_symtab_iter_next): Likewise.
12418         (dw2_print_stats): Likewise.
12419         (dw2_expand_all_symtabs): Likewise.
12420         (dw2_expand_marked_cus): Likewise.
12421         (dw2_debug_names_iterator::next): Likewise.
12422         (dwarf2_initialize_objfile): Likewise.
12423         (add_signatured_type_cu_to_table): Likewise.
12424         (create_all_type_units): Likewise.
12425         (add_type_unit): Likewise.
12426         (struct tu_abbrev_offset): Add constructor.
12427         (build_type_psymtabs_1): Adjust to std::vector change.
12428         (print_tu_stats): Likewise.
12429         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12430         (write_debug_names): Likewise.
12431
12432 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12433
12434         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12435         Make an std::vector.
12436         <n_comp_units>: Remove.
12437         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12438         to std::vector change.
12439         (dwarf2_per_objfile::get_cutu): Likewise.
12440         (dwarf2_per_objfile::get_cu): Likewise.
12441         (create_cus_from_index): Likewise.
12442         (create_addrmap_from_index): Likewise.
12443         (create_addrmap_from_aranges): Likewise.
12444         (dwarf2_read_index): Likewise.
12445         (dw2_find_last_source_symtab): Likewise.
12446         (dw2_map_symtabs_matching_filename): Likewise.
12447         (dw2_symtab_iter_next): Likewise.
12448         (dw2_print_stats): Likewise.
12449         (dw2_expand_all_symtabs): Likewise.
12450         (dw2_expand_symtabs_with_fullname): Likewise.
12451         (dw2_expand_marked_cus): Likewise.
12452         (dw2_map_symbol_filenames): Likewise.
12453         (create_cus_from_debug_names): Likewise.
12454         (dwarf2_read_debug_names): Likewise.
12455         (dw2_debug_names_iterator::next): Likewise.
12456         (dwarf2_initialize_objfile): Likewise.
12457         (set_partial_user): Likewise.
12458         (dwarf2_build_psymtabs_hard): Likewise.
12459         (read_comp_units_from_section): Remove arguments, adjust to
12460         std::vector change.
12461         (create_all_comp_units): Adjust to std::vector and
12462         read_comp_units_from_section changes.
12463         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12464         change.
12465         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12466         (psyms_seen_size): Likewise.
12467         (write_gdbindex): Likewise.
12468         (write_debug_names): Likewise.
12469
12470 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12471
12472         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12473         with dwarf2_per_objfile.
12474         (create_cus_from_index): Likewise.
12475         (create_signatured_type_table_from_index): Likewise.
12476         (dwarf2_read_index): Likewise.
12477         (dwarf2_initialize_objfile): Likewise.
12478         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12479         per_cu rather than get_dwarf2_per_objfile.
12480
12481 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12482
12483         * dwarf2read.h (struct signatured_type): Forward declare.
12484         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12485         New methods.
12486         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12487         (dw2_get_cutu): ...this.
12488         (dwarf2_per_objfile::get_cu): Rename from...
12489         (dw2_get_cu): ...this.
12490         (dwarf2_per_objfile::get_tu): New.
12491         (create_addrmap_from_index): Adjust.
12492         (create_addrmap_from_aranges): Adjust.
12493         (dw2_find_last_source_symtab): Adjust.
12494         (dw2_map_symtabs_matching_filename): Adjust.
12495         (dw2_symtab_iter_next): Adjust.
12496         (dw2_print_stats): Adjust.
12497         (dw2_expand_all_symtabs): Adjust.
12498         (dw2_expand_symtabs_with_fullname): Adjust.
12499         (dw2_expand_marked_cus): Adjust.
12500         (dw_expand_symtabs_matching_file_matcher): Adjust.
12501         (dw2_map_symbol_filenames): Adjust.
12502         (dw2_debug_names_iterator::next): Adjust.
12503         (dwarf2_initialize_objfile): Adjust.
12504         (set_partial_user): Adjust.
12505         (dwarf2_build_psymtabs_hard): Adjust.
12506
12507 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12508
12509         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12510         Remove unused variables.
12511         (dw2_map_symtabs_matching_filename): Likewise.
12512         (dwarf2_record_block_ranges): Likewise.
12513         (dwarf2_read_addr_index): Likewise.
12514         (follow_die_offset): Likewise.
12515
12516 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12517
12518         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12519         to symbol_file_add_main.
12520
12521 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12522
12523         PR mi/22299
12524         * mi/mi-console.c (do_fputc_async_safe): New.
12525         (mi_console_file::write_async_safe): New.
12526         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12527         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12528         New.
12529         * ui-file.c (ui_file::putstrn): Adjust call to
12530         fputstrn_unfiltered.
12531         * utils.c (printchar): Replace do_fputs and do_fprintf
12532         parameters by do_fputc.
12533         (fputstr_filtered): Adjust call to printchar.
12534         (fputstr_unfiltered): Likewise.
12535         (fputstrn_filtered): Likewise.
12536         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12537         printchar.
12538         * utils.h (do_fputc_ftype): New typedef.
12539         (fputstrn_unfiltered): Add do_fputc parameter.
12540
12541 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12542
12543         * regformats/i386/i386-avx.dat: Remove.
12544
12545 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12546
12547         PR gdb/22979
12548         * amd64-tdep.c (amd64_none_init_abi): New function.
12549         (amd64_x32_none_init_abi): New function.
12550         (_initialize_amd64_tdep): Register handlers for x86-64 and
12551         x64_32 with GDB_OSABI_NONE.
12552         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12553         GDB_OSABI_NONE osabi.
12554
12555 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12556
12557         PR gdb/22980
12558         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12559         GDB_OSABI_NONE.
12560         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12561         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12562
12563 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12564
12565         * common/byte-vector.h (char_vector): New type.
12566         * target.h (target_read_alloc): Return
12567         gdb::optional<byte_vector>.
12568         (target_read_stralloc): Return gdb::optional<char_vector>.
12569         (target_get_osdata): Return gdb::optional<char_vector>.
12570         * target.c (target_read_alloc_1): Templatize.  Replacement
12571         manual memory management with vector.
12572         (target_read_alloc): Change return type, adjust.
12573         (target_read_stralloc): Change return type, adjust.
12574         (target_get_osdata): Change return type, adjust.
12575         * auxv.c (struct auxv_info) <length>: Remove.
12576         <data>: Change type to gdb::optional<byte_vector>.
12577         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12578         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12579         (target_auxv_search): Adjust.
12580         (fprint_target_auxv): Adjust.
12581         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12582         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12583         (linux_make_corefile_notes): Adjust.
12584         * osdata.c (get_osdata): Adjust.
12585         * remote.c (remote_get_threads_with_qxfer): Adjust.
12586         (remote_memory_map): Adjust.
12587         (remote_traceframe_info): Adjust.
12588         (btrace_read_config): Adjust.
12589         (remote_read_btrace): Adjust.
12590         (remote_pid_to_exec_file): Adjust.
12591         * solib-aix.c (solib_aix_get_library_list): Adjust.
12592         * solib-dsbt.c (decode_loadmap): Don't free buf.
12593         (dsbt_get_initial_loadmaps): Adjust.
12594         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12595         * solib-target.c (solib_target_current_sos): Adjust.
12596         * tracepoint.c (sdata_make_value): Adjust.
12597         * xml-support.c (xinclude_start_include): Adjust.
12598         (xml_fetch_content_from_file): Adjust.
12599         * xml-support.h (xml_fetch_another): Change return type.
12600         (xml_fetch_content_from_file): Change return type.
12601         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12602         * xml-tdesc.c (file_read_description_xml): Adjust.
12603         (fetch_available_features_from_target): Change return type.
12604         (target_fetch_description_xml): Adjust.
12605         (target_read_description_xml): Adjust.
12606
12607 2018-04-06  Tom Tromey  <tom@tromey.com>
12608
12609         * value.c (~value): Update.
12610         (struct value) <contents>: Now unique_xmalloc_ptr.
12611         (value_contents_bits_eq, allocate_value_contents)
12612         (value_contents_raw, value_contents_all_raw)
12613         (value_contents_for_printing, value_contents_for_printing_const)
12614         (set_value_enclosing_type): Update.
12615
12616 2018-04-06  Tom Tromey  <tom@tromey.com>
12617
12618         * value.c (range_s): Remove typedef, VEC.
12619         (struct range): Add operator<.
12620         (range_lessthan): Remove.
12621         (ranges_contain): Change type.
12622         (~value): Update.
12623         (struct value) <unavailable, optimized_out>: Now std::vector.
12624         (value_entirely_available)
12625         (value_entirely_covered_by_range_vector)
12626         (value_entirely_unavailable, value_entirely_optimized_out):
12627         Update.
12628         (insert_into_bit_range_vector): Change argument type.
12629         (find_first_range_overlap): Likewise.
12630         (struct ranges_and_idx, value_contents_bits_eq)
12631         (require_not_optimized_out, require_available): Update.
12632         (ranges_copy_adjusted): Change argument types.
12633         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12634
12635 2018-04-06  Tom Tromey  <tom@tromey.com>
12636
12637         * value.c (~value): Update.
12638         (struct value) <parent>: Now a value_ref_ptr.
12639         (value_parent, set_value_parent, value_address, value_copy):
12640         Update.
12641
12642 2018-04-06  Tom Tromey  <tom@tromey.com>
12643
12644         * value.c (struct value): Add constructor, destructor, and member
12645         initializers.
12646         (allocate_value_lazy, value_decref): Update.
12647
12648 2018-04-06  Tom Tromey  <tom@tromey.com>
12649
12650         * value.c (struct value) <released, next>: Remove.
12651         (all_values): Now a std::vector.
12652         (allocate_value_lazy): Update.
12653         (value_next): Remove.
12654         (value_mark, value_free_to_mark, release_value)
12655         (value_release_to_mark): Update.
12656
12657 2018-04-06  Tom Tromey  <tom@tromey.com>
12658
12659         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12660         (free_value_chain): Remove.
12661         * value.c (free_value_chain): Remove.
12662         (value_release_to_mark): Return a std::vector.
12663         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12664         std::vector.
12665         (check_condition): Update.
12666         * eval.c (fetch_subexp_value): Change "val_chain" to a
12667         std::vector.
12668         * breakpoint.c (update_watchpoint): Update.
12669         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12670
12671 2018-04-06  Tom Tromey  <tom@tromey.com>
12672
12673         * value.h (free_all_values): Remove.
12674         * value.c (free_all_values): Remove.
12675
12676 2018-04-06  Tom Tromey  <tom@tromey.com>
12677
12678         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12679         (value_history_chain, value_history_count): Remove.
12680         (value_history): New global.
12681         (record_latest_value, access_value_history, show_values)
12682         (preserve_values): Update.
12683
12684 2018-04-06  Tom Tromey  <tom@tromey.com>
12685
12686         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12687         * varobj.c (varobj_set_display_format, varobj_set_value)
12688         (install_default_visualizer, construct_visualizer)
12689         (install_new_value, ~varobj, varobj_get_value_type)
12690         (my_value_of_variable, varobj_editable_p): Update.
12691         * c-varobj.c (c_describe_child, c_value_of_variable)
12692         (cplus_number_of_children, cplus_describe_child): Update.
12693         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12694         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12695         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12696
12697 2018-04-06  Tom Tromey  <tom@tromey.com>
12698
12699         * printcmd.c (last_examine_address): Change type to
12700         value_ref_ptr.
12701         (do_examine, x_command): Update.
12702
12703 2018-04-06  Tom Tromey  <tom@tromey.com>
12704
12705         * value.c (release_value): Update.
12706         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12707         (struct bpstats) <val>: Now a value_ref_ptr.
12708         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12709         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12710         (~watchpoint, print_it_watchpoint, watch_command_1)
12711         (invalidate_bp_value_on_memory_change): Update.
12712
12713 2018-04-06  Tom Tromey  <tom@tromey.com>
12714
12715         * varobj.c (varobj_clear_saved_item)
12716         (update_dynamic_varobj_children, install_new_value, ~varobj):
12717         Update.
12718         * value.h (value_incref): Move declaration earlier.
12719         (value_decref): Rename from value_free.
12720         (struct value_ref_policy): New.
12721         (value_ref_ptr): New typedef.
12722         (struct value_deleter): Remove.
12723         (gdb_value_up): Remove typedef.
12724         (release_value): Change return type.
12725         (release_value_or_incref): Remove.
12726         * value.c (set_value_parent): Update.
12727         (value_incref): Change return type.
12728         (value_decref): Rename from value_free.
12729         (value_free_to_mark, free_all_values, free_value_chain): Update.
12730         (release_value): Return value_ref_ptr.
12731         (release_value_or_incref): Remove.
12732         (record_latest_value, set_internalvar, clear_internalvar):
12733         Update.
12734         * stack.c (info_frame_command): Don't call value_free.
12735         * python/py-value.c (valpy_dealloc, valpy_new)
12736         (value_to_value_object): Update.
12737         * printcmd.c (do_examine): Update.
12738         * opencl-lang.c (lval_func_free_closure): Update.
12739         * mi/mi-main.c (register_changed_p): Don't call value_free.
12740         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12741         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12742         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12743         value_free.
12744         * guile/scm-value.c (vlscm_free_value_smob)
12745         (vlscm_scm_from_value): Update.
12746         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12747         (frame_unwind_register_unsigned, get_frame_register_bytes)
12748         (put_frame_register_bytes): Don't call value_free.
12749         * findvar.c (address_from_register): Don't call value_free.
12750         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12751         * dwarf2loc.c (entry_data_value_free_closure)
12752         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12753         (dwarf2_evaluate_loc_desc_full): Update.
12754         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12755         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12756         (~watchpoint, watch_command_1)
12757         (invalidate_bp_value_on_memory_change): Update.
12758         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12759
12760 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12761
12762         PR gdb/23022
12763         * warning.m4: Add -Wno-error=deprecated-register.
12764         * configure: Re-generate.
12765
12766 2018-04-05  Tom Tromey  <tom@tromey.com>
12767
12768         * linespec.h: Remove include of "vec.h".
12769
12770 2018-04-05  Tom Tromey  <tom@tromey.com>
12771
12772         * linespec.c (typep): Remove typedef.
12773         (find_methods, find_superclass_methods): Take a std::vector.
12774         (find_method): Use std::vector.
12775
12776 2018-04-05  Tom Tromey  <tom@tromey.com>
12777
12778         * utils.c (compare_strings): Remove.
12779         * utils.h (compare_strings): Remove.
12780         * objc-lang.h (find_imps): Update.
12781         * objc-lang.c (find_methods): Take a std::vector.
12782         (uniquify_strings, find_imps): Likewise.
12783         * linespec.c (find_methods): Take a std::vector.
12784         (decode_objc): Use std::vector.
12785         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12786         a std::vector.
12787         (find_method, find_function_symbols): Use std::vector.
12788
12789 2018-04-05  Tom Tromey  <tom@tromey.com>
12790
12791         * completer.c (completion_tracker::completion_tracker): Remove
12792         cast.
12793         (completion_tracker::discard_completions): Likewise.
12794         * breakpoint.c (ambiguous_names_p): Remove cast.
12795         * ada-lang.c (_initialize_ada_language): Remove cast.
12796         * utils.h (streq): Update.
12797         (streq_hash): Add new declaration.
12798         * utils.c (streq): Return bool.
12799         (streq_hash): New function.
12800
12801 2018-04-05  Tom Tromey  <tom@tromey.com>
12802
12803         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12804         Remove a string copy.
12805
12806 2018-04-05  Tom Tromey  <tom@tromey.com>
12807
12808         * linespec.c (filter_results): Use std::vector.
12809         (decode_line_2, decode_line_full): Update.
12810
12811 2018-04-05  Tom Tromey  <tom@tromey.com>
12812
12813         * linespec.c (canonical_to_fullform): Return std::string.
12814         (filter_results): Update.
12815         (struct decode_line_2_item): Add constructor.
12816         <fullform, displayform>: Now std::string.
12817         (decode_line_2_compare_items): Now a std::sort comparator.
12818         (decode_line_2): Update.
12819
12820 2018-04-05  Tom Tromey  <tom@tromey.com>
12821
12822         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12823         (unexpected_linespec_error): Update.
12824         (linespec_parse_basic, parse_linespec): Update.
12825
12826 2018-04-05  Tom Tromey  <tom@tromey.com>
12827
12828         * linespec.c (linespec_parse_basic): Reindent.
12829
12830 2018-04-05  Tom Tromey  <tom@tromey.com>
12831
12832         * minsyms.h (iterate_over_minimal_symbols): Update.
12833         * minsyms.c (iterate_over_minimal_symbols): Take a
12834         gdb::function_view.
12835         * linespec.c (struct collect_minsyms): Remove.
12836         (compare_msyms): Now a std::sort comparator.
12837         (add_minsym): Add parameters.
12838         (search_minsyms_for_name): Update.  Use std::vector.
12839
12840 2018-04-03  Tom Tromey  <tom@tromey.com>
12841
12842         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12843         gdb::byte_vector.
12844
12845 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12846
12847         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12848
12849 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12850
12851         PR gdb/16959
12852         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12853         printing static type.
12854
12855 2018-04-01  Tom Tromey  <tom@tromey.com>
12856
12857         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12858         (rs6000_xfer_shared_libraries): Update.
12859
12860 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12861
12862         * common/gdb_vecs.h (char_ptr): Remove.
12863         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12864
12865 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12866
12867         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12868         with std::vector.
12869         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12870
12871 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12872
12873         * tracepoint.h (struct uploaded_tp): Initialize fields.
12874         <actions, step_actions, cmd_strings>: Change type to
12875         std::vector<char *>.
12876         * tracepoint.c (get_uploaded_tp): Allocate with new.
12877         (free_uploaded_tps): Free with delete.
12878         (parse_tracepoint_definition): Adjust to std::vector change.
12879         * breakpoint.c (read_uploaded_action): Likewise.
12880         (create_tracepoint_from_upload): Likewise.
12881         * ctf.c (ctf_write_uploaded_tp): Likewise.
12882         (SET_ARRAY_FIELD): Likewise.
12883         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12884
12885 2018-03-30  Tom Tromey  <tom@tromey.com>
12886
12887         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12888         std::unique_ptr.
12889         (svr4_keep_data_in_core): Update.
12890         (svr4_read_so_list): Update.
12891
12892 2018-03-30  Tom Tromey  <tom@tromey.com>
12893
12894         * windows-nat.c (handle_output_debug_string, handle_exception):
12895         Update.
12896         * target.h (target_read_string): Update.
12897         * target.c (target_read_string): Change "string" to
12898         unique_xmalloc_ptr.
12899         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12900         Update.
12901         * solib-frv.c (frv_current_sos): Update.
12902         * solib-dsbt.c (dsbt_current_sos): Update.
12903         * solib-darwin.c (darwin_current_sos): Update.
12904         * linux-thread-db.c (inferior_has_bug): Update.
12905         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12906         Update.  Remove alloca.
12907         * ada-lang.c (ada_main_name): Update.
12908
12909 2018-03-30  Tom Tromey  <tom@tromey.com>
12910
12911         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12912         (struct dwo_file_deleter): New.
12913         (dwo_file_up): New typedef.
12914         (open_and_init_dwo_file): Use dwo_file_up.
12915         (free_dwo_file_cleanup): Remove.
12916
12917 2018-03-30  Tom Tromey  <tom@tromey.com>
12918
12919         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12920         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12921
12922 2018-03-30  Tom Tromey  <tom@tromey.com>
12923
12924         * dwarf2read.c (class free_cached_comp_units): New class.
12925         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12926         (free_cached_comp_units): Remove function.
12927
12928 2018-03-30  Tom Tromey  <tom@tromey.com>
12929
12930         * utils.h (make_cleanup_unpush_target): Remove.
12931         * inf-ptrace.c (struct target_unpusher): New.
12932         (target_unpush_up) New typedef.
12933         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12934         target_unpush_up.
12935         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12936
12937 2018-03-27  Tom Tromey  <tom@tromey.com>
12938
12939         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12940
12941 2018-03-27  Pedro Alves  <palves@redhat.com>
12942             Tom Tromey  <tom@tromey.com>
12943
12944         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12945         destructor.  Now a class.
12946         (gdb_readline_wrapper_cleanup): Remove function.
12947         (gdb_readline_wrapper): Remove cleanups.
12948
12949 2018-03-27  Tom Tromey  <tom@tromey.com>
12950
12951         * typeprint.h (struct type_print_options) <local_typedefs,
12952         global_typedefs>: Remove "struct" keyword.
12953         (class typedef_hash_table): New class.
12954         (recursively_update_typedef_hash, add_template_parameters)
12955         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12956         (find_typedef_in_hash): Don't declare.
12957         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12958         (typedef_hash_table::recursively_update): Rename from
12959         recursively_update_typedef_hash.  Now a member.
12960         (typedef_hash_table::add_template_parameters): Rename from
12961         add_template_parameters.  Now a member.
12962         (typedef_hash_table::typedef_hash_table): Now a constructor;
12963         rename from create_typedef_hash.
12964         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12965         rename from free_typedef_hash.
12966         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12967         (do_free_global_table): Remove.
12968         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12969         from copy_type_recursive.
12970         (create_global_typedef_table): Remove.
12971         (typedef_hash_table::find_global_typedef): Now a member of
12972         typedef_hash_table.
12973         (typedef_hash_table::find_typedef): Rename from
12974         find_typedef_in_hash; now a member.
12975         (whatis_exp): Update.
12976         * extension.h (struct ext_lang_type_printers): Add constructor and
12977         destructor.
12978         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12979         declare.
12980         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12981         Now a constructor; rename from start_ext_lang_type_printers.
12982         (ext_lang_type_printers): Now a destructor; rename from
12983         free_ext_lang_type_printers.
12984         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12985         Update.
12986         (c_type_print_base_struct_union): Update.  Remove cleanups.
12987
12988 2018-03-27  Tom Tromey  <tom@tromey.com>
12989
12990         * dwarf-index-write.c: Include <cmath>.
12991
12992 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12993
12994         * NEWS: Add entry describing new "set|show varsize-limit" command.
12995         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12996         command.
12997         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12998         "set variable".
12999
13000 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13001
13002         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13003         dwarf-index-write.c
13004         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13005         * dwarf-index-common.c: New file.
13006         * dwarf-index-common.h: New file.
13007         * dwarf-index-write.c: New file.
13008         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13009         (struct dwarf2_section_info): Move from here.
13010         (dwarf2_section_info_def): Likewise.
13011         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13012         (offset_type): Likewise.
13013         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13014         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13015         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13016         (byte_swap): Likewise.
13017         (MAYBE_SWAP): Likewise.
13018         (dwarf2_per_cu_ptr): Likewise.
13019         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13020         (struct tu_stats): Likewise.
13021         (struct dwarf2_per_objfile): Likewise.
13022         (struct dwarf2_per_cu_data): Likewise.
13023         (struct signatured_type): Likewise.
13024         (sig_type_ptr): Likewise.
13025         (DEF_VEC_P (sig_type_ptr)): Likewise.
13026         (INDEX4_SUFFIX): Likewise.
13027         (INDEX5_SUFFIX): Likewise.
13028         (DEBUG_STR_SUFFIX): Likewise.
13029         (dwarf2_read_section): Make non-static.
13030         (mapped_index_string_hash): Move from here.
13031         (dwarf5_djb_hash): Likewise.
13032         (file_write): Likewise.
13033         (class data_buf): Likewise.
13034         (struct symtab_index_entry): Likewise.
13035         (struct mapped_symtab): Likewise.
13036         (find_slot): Likewise.
13037         (hash_expand): Likewise.
13038         (add_index_entry): Likewise.
13039         (uniquify_cu_indices): Likewise.
13040         (class c_str_view): Likewise.
13041         (class c_str_view_hasher): Likewise.
13042         (class vector_hasher): Likewise.
13043         (write_hash_table): Likewise.
13044         (psym_index_map): Likewise.
13045         (struct addrmap_index_data): Likewise.
13046         (add_address_entry): Likewise.
13047         (add_address_entry_worker): Likewise.
13048         (write_address_map): Likewise.
13049         (symbol_kind): Likewise.
13050         (write_psymbols): Likewise.
13051         (struct signatured_type_index_data): Likewise.
13052         (write_one_signatured_type): Likewise.
13053         (recursively_count_psymbols): Likewise.
13054         (recursively_write_psymbols): Likewise.
13055         (class debug_names): Likewise.
13056         (check_dwarf64_offsets): Likewise.
13057         (psyms_seen_size): Likewise.
13058         (write_gdbindex): Likewise.
13059         (write_debug_names): Likewise.
13060         (assert_file_size): Likewise.
13061         (write_psymtabs_to_index): Likewise.
13062         (save_gdb_index_command): Likewise.
13063         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13064         command.
13065         * dwarf2read.h: New file.
13066
13067 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13068
13069         PR gdb/22670
13070         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13071         symbol name if the CU's language stores symbol names in linkage
13072         format.
13073         * language.h (struct language_defn)
13074         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13075         all instances of this struct.
13076
13077 2018-03-26  Tom Tromey  <tom@tromey.com>
13078
13079         * stack.c (backtrace_command_1): Remove verbose code.
13080
13081 2018-03-26  Tom Tromey  <tom@tromey.com>
13082
13083         * python/py-framefilter.c (py_print_type): Don't catch
13084         exceptions.  Return void.
13085         (py_print_value): Likewise.
13086         (py_print_single_arg): Likewise.
13087         (enumerate_args): Don't catch exceptions.
13088         (py_print_args): Likewise.
13089         (py_print_frame): Likewise.
13090         (gdbpy_apply_frame_filter): Catch exceptions here.
13091
13092 2018-03-26  Tom Tromey  <tom@tromey.com>
13093
13094         * stack.c (_initialize_stack): Remove trailing newlines from help
13095         text.  Add "Usage" line to "backtrace" help.
13096
13097 2018-03-26  Tom Tromey  <tom@tromey.com>
13098
13099         PR python/16486:
13100         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13101
13102 2018-03-26  Tom Tromey  <tom@tromey.com>
13103
13104         * python/py-framefilter.c (py_print_single_arg): Return
13105         EXT_LANG_BT_ERROR from catch.
13106
13107 2018-03-26  Tom Tromey  <tom@tromey.com>
13108
13109         PR backtrace/15584:
13110         * stack.c (backtrace_command_1): Move some code into no-filters
13111         "if".
13112
13113 2018-03-26  Tom Tromey  <tom@tromey.com>
13114
13115         * python/py-framefilter.c (throw_quit_or_print_exception): New
13116         function.
13117         (gdbpy_apply_frame_filter): Use it.
13118
13119 2018-03-26  Tom Tromey  <tom@tromey.com>
13120
13121         PR cli/17716:
13122         * python/py-framefilter.c (py_print_type, py_print_value)
13123         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13124         RETURN_MASK_ERROR.
13125
13126 2018-03-26  Tom Tromey  <tom@tromey.com>
13127
13128         * python/py-framefilter.c (enumerate_args): Use
13129         gdb::unique_xmalloc_ptr.
13130
13131 2018-03-26  Tom Tromey  <tom@tromey.com>
13132
13133         * python/py-framefilter.c (py_print_frame): Return
13134         EXT_LANG_BT_OK.
13135         (gdbpy_apply_frame_filter): Update comment.
13136         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13137         Remove.
13138         <EXT_LANG_BT_NO_FILTERS>: Change value.
13139
13140 2018-03-26  Tom Tromey  <tom@tromey.com>
13141
13142         PR backtrace/15582:
13143         * stack.c (backtrace_command): Parse "hide" argument.
13144         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13145         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13146         constant.
13147
13148 2018-03-26  Tom Tromey  <tom@tromey.com>
13149
13150         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13151         add "flags".
13152         (backtrace_command): Remove "fulltrace", add "flags".
13153
13154 2018-03-26  Tom Tromey  <tom@tromey.com>
13155
13156         * stack.c (backtrace_command): Rewrite command line parsing.
13157
13158 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13159
13160         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13161
13162 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13163
13164         * filename-seen-cache.h: Add include guard.
13165
13166 2018-03-26  Keith Seitz  <keiths@redhat.com>
13167
13168         * symfile.c (place_section): Remove "struct" from section_addr_info
13169         in comment.
13170         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13171         "struct" keyword from section_addr_info.
13172
13173 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13174
13175         * regformats/regdef.h (reg): Add constructors.
13176
13177 2018-03-25  Pedro Alves  <palves@redhat.com>
13178
13179         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13180         if then/else bodies in var_func_name extraction.
13181
13182 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13183
13184         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13185         lookup_minimal_symbol() to find symbol entry.
13186         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13187
13188 2018-03-23  Keith Seitz  <keiths@redhat.com>
13189
13190         PR c++/22968
13191         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13192         nested type definitions for C++, too.
13193
13194 2018-03-23  Tom Tromey  <tom@tromey.com>
13195
13196         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13197         a typedef.
13198         (macho_register_oso): Remove.
13199         (macho_symtab_read): Take a std::vector.
13200         (oso_el_compare_name): Now a std::sort comparator.
13201         (macho_symfile_read_all_oso): Take a std::vector.
13202         (macho_symfile_read): Use std::vector.  Remove cleanups.
13203
13204 2018-03-22  Tom Tromey  <tom@tromey.com>
13205
13206         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13207         (record_full_goto_bookmark): Use std::string.
13208
13209 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13210
13211         PR tdep/18295
13212         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13213         a single mask.
13214
13215 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13216
13217         * rs6000-tdep.c (store_insn_p): New function.
13218         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13219         and cr_reg to their unshifted values. Use store_insn_p to
13220         match LR saves using either R1 or fdata->alloca_reg. Use
13221         store_insn_p to match CR saves. Set alloca_reg_offset
13222         when alloca_reg and framep are set. Remove lr_reg shift
13223         when assigning to fdata->lr_register.
13224
13225 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13226
13227         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13228         command line args instead of emitting a warning.
13229
13230 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13231
13232         * tracepoint.h (struct static_tracepoint_marker): Initialize
13233         fields, define default constructor, move constructor and move
13234         assignment, disable the rest.
13235         <str_id, extra>: Make std::string.
13236         (release_static_tracepoint_marker): Remove.
13237         (free_current_marker): Remove.
13238         * tracepoint.c (free_current_marker): Remove.
13239         (parse_static_tracepoint_marker_definition): Adjust to
13240         std::string, use new hex2str overload.
13241         (release_static_tracepoint_marker): Remove.
13242         (print_one_static_tracepoint_marker): Get marker by reference
13243         and adjust to std::string.
13244         (info_static_tracepoint_markers_command): Adjust to std::vector
13245         changes
13246         * target.h (static_tracepoint_marker_p): Remove typedef.
13247         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13248         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13249         bool.
13250         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13251         * target-debug.h
13252         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13253         (target_debug_print_std_vector_static_tracepoint_marker): New.
13254         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13255         to...
13256         (target_debug_print_static_tracepoint_marker_p): ... this.
13257         * target-delegates.c: Re-generate.
13258         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13259         Make std::string.
13260         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13261         (decode_static_tracepoint_spec): Adjust to std::vector.
13262         (tracepoint_print_one_detail): Adjust to std::string.
13263         (strace_marker_decode_location): Adjust to std::string.
13264         (update_static_tracepoint): Adjust to std::string, remove call
13265         to release_static_tracepoint_marker.
13266         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13267         Adjust to std::vector.
13268         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13269         (remote_static_tracepoint_markers_by_strid): Adjust to
13270         std::vector.
13271         * common/rsp-low.h (hex2str): New overload with explicit count
13272         of bytes.
13273         * common/rsp-low.c (hex2str): New overload with explicit count
13274         of bytes.
13275         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13276         (_initialize_rsp_low_selftests): Add test_hex2str test.
13277         * unittests/tracepoint-selftests.c
13278         (test_parse_static_tracepoint_marker_definition): Adjust to
13279         std::string.
13280
13281 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13282
13283         * tracepoint.c (parse_static_tracepoint_marker_definition):
13284         Consider case where the definition is followed by more
13285         definitions.
13286         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13287         tracepoint-selftests.c.
13288         * unittests/tracepoint-selftests.c: New.
13289
13290 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13291
13292         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13293         Carvalho.
13294
13295 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13296
13297         * symtab.c (find_pc_sect_line): fixed indentation.
13298
13299 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13300
13301         * symtab.c (find_pc_sect_line): now uses binary search.
13302
13303 2018-03-19  Tom Tromey  <tom@tromey.com>
13304
13305         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13306         "IDENT" production.
13307
13308 2018-03-19  Pedro Alves  <palves@redhat.com>
13309             Tom Tromey  <tom@tromey.com>
13310
13311         * unittests/observable-selftests.c: New file.
13312         * common/observable.h: New file.
13313         * observable.h: New file.
13314         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13315         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13316         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13317         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13318         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13319         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13320         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13321         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13322         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13323         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13324         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13325         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13326         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13327         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13328         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13329         tui/tui-interp.c, valops.c: Update all users.
13330         * tui/tui-hooks.c (tui_bp_created_observer)
13331         (tui_bp_deleted_observer, tui_bp_modified_observer)
13332         (tui_inferior_exit_observer, tui_before_prompt_observer)
13333         (tui_normal_stop_observer, tui_register_changed_observer):
13334         Remove.
13335         (tui_observers_token): New global.
13336         (attach_or_detach, tui_attach_detach_observers): New functions.
13337         (tui_install_hooks, tui_remove_hooks): Use
13338         tui_attach_detach_observers.
13339         * record-btrace.c (record_btrace_thread_observer): Remove.
13340         (record_btrace_thread_observer_token): New global.
13341         * observer.sh: Remove.
13342         * observer.c: Rename to observable.c.
13343         * observable.c (namespace gdb_observers): Define new objects.
13344         (observer_debug): Move into gdb_observers namespace.
13345         (struct observer, struct observer_list, xalloc_observer_list_node)
13346         (xfree_observer_list_node, generic_observer_attach)
13347         (generic_observer_detach, generic_observer_notify): Remove.
13348         (_initialize_observer): Update.
13349         Don't include observer.inc.
13350         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13351         (clean mostlyclean): Likewise.
13352         (observer.h, observer.inc): Remove targets.
13353         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13354         (COMMON_SFILES): Use observable.c, not observer.c.
13355         * .gitignore: Remove observer.h.
13356
13357 2018-03-18  Tom Tromey  <tom@tromey.com>
13358
13359         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13360         gdb::def_vector.
13361         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13362
13363 2018-03-17  Tom Tromey  <tom@tromey.com>
13364
13365         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13366
13367 2018-03-17  Tom Tromey  <tom@tromey.com>
13368
13369         * target.c (class scoped_target_fd): New.
13370         (target_fileio_close_cleanup): Remove.
13371         (target_fileio_read_alloc_1): Use scoped_target_fd.
13372
13373 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13374
13375         * silent-rules.mk: New.
13376         * Makefile.in: Include silent-rules.mk
13377         (srcdir, VPATH, top_srcdir): Move up.
13378         (COMPILE): Add ECHO_CXX.
13379         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13380         (init.c): Add ECHO_INIT_C.
13381         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13382         (version.c): Add ECHO_GEN.
13383         (printcmd.o): Add ECHO_CXX.
13384         (target-float.o): Add ECHO_CXX.
13385         (ada-exp.o): Add ECHO_CXX.
13386         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13387         (insight$(EXEEXT)): Add ECHO_CXXLD.
13388         * gnulib/configure.ac: Add AM_SILENT_RULES.
13389         * gnulib/aclocal.m4: Re-generate.
13390         * gnulib/configure: Re-generate.
13391         * gnulib/import/Makefile.in: Re-generate.
13392
13393 2018-03-16  Tom Tromey  <tom@tromey.com>
13394
13395         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13396         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13397         * utils.c (do_free_section_addr_info)
13398         (make_cleanup_free_section_addr_info): Remove.
13399         * symfile.h (struct other_sections): Add constructor.
13400         (struct section_addr_info): Remove.
13401         (section_addr_info): New typedef.
13402         (struct sym_fns) <sym_offsets>: Change type of parameter.
13403         (build_section_addr_info_from_objfile)
13404         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13405         (default_symfile_offsets, symbol_file_add)
13406         (symbol_file_add_from_bfd)
13407         (build_section_addr_info_from_section_table): Update.
13408         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13409         * symfile.c (alloc_section_addr_info): Remove.
13410         (build_section_addr_info_from_section_table): Change return type.
13411         Update.
13412         (build_section_addr_info_from_bfd)
13413         (build_section_addr_info_from_objfile): Likewise.
13414         (free_section_addr_info): Remove.
13415         (relative_addr_info_to_section_offsets): Change type of "addrs".
13416         (addrs_section_compar): Now a std::sort comparator.
13417         (addrs_section_sort): Change return type.
13418         (addr_info_make_relative): Change type of "addrs".  Update.
13419         (default_symfile_offsets, syms_from_objfile_1)
13420         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13421         (symbol_file_add_separate): Update.
13422         (symbol_file_add): Change type of "addrs".  Update.
13423         (add_symbol_file_command): Update.  Remove cleanups.
13424         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13425         cleanups.
13426         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13427         * solib.c (solib_read_symbols): Update.
13428         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13429         * machoread.c (macho_symfile_offsets): Update.
13430         * jit.c (jit_bfd_try_read_symtab): Update.
13431
13432 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13433
13434         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13435         unittests/utils-selftests.c.
13436         * unittests/utils-selftests.c: New file.
13437
13438 2018-03-14  Tom Tromey  <tom@tromey.com>
13439
13440         PR cli/14977:
13441         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13442         for NULL.
13443
13444 2018-03-14  Tom Tromey  <tom@tromey.com>
13445
13446         PR cli/19918:
13447         * printcmd.c (printf_pointer): Allow "-" in format.
13448
13449 2018-03-14  Tom Tromey  <tom@tromey.com>
13450
13451         * printcmd.c (_initialize_printcmd): Add usage to printf.
13452
13453 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13454
13455         * MAINTAINERS: Update my email address.
13456
13457 2018-03-13  Tom Tromey  <tom@tromey.com>
13458
13459         * machoread.c (macho_check_dsym): Change filenamep to a
13460         std::string*.
13461         (macho_symfile_read): Update.
13462         * symfile.c (load_command): Use std::string.
13463
13464 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13465
13466         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13467         to error message string.
13468         (riscv_register_name): Use xsnprintf instead of sprintf.
13469         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13470         internal_error.
13471         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13472         error.
13473         (riscv_push_dummy_call): Likewise.
13474
13475 2018-03-12  Tom Tromey  <tom@tromey.com>
13476
13477         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13478         Use gdb::byte_vector.
13479         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13480
13481 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13482
13483         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13484         parameter type to readable_regcache.
13485         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13486         the declaration.
13487
13488 2018-03-11  Tom Tromey  <tom@tromey.com>
13489
13490         * dwarf2read.c (struct nextfield): Add initializers.
13491         (struct nextfnfield): Remove.
13492         (struct fnfieldlist): Add initializers.  Remove "length" and
13493         "head", use std::vector.
13494         (struct decl_field_list): Remove.
13495         (struct field_info): Add initializers.
13496         <fields, baseclasses>: Now std::vector.
13497         <nbaseclasses, nfnfields, typedef_field_list_count,
13498         nested_types_list_count>: Remove.
13499         (dwarf2_add_field, dwarf2_add_type_defn)
13500         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13501         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13502         (process_structure_scope): Update.
13503
13504 2018-03-11  Tom Tromey  <tom@tromey.com>
13505
13506         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13507         for use by std::sort.
13508         (build_type_psymtabs_1): Use std::vector.
13509
13510 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13511
13512         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13513         and LIBMPFR in the printed configuration.
13514
13515 2018-03-08  Tom Tromey  <tom@tromey.com>
13516
13517         * source.c (get_filename_and_charpos): Use scoped_fd.
13518         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13519         (procfs_pidlist): Likewise.
13520         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13521         (iterate_over_mappings): Likewise.
13522
13523 2018-03-08  Tom Tromey  <tom@tromey.com>
13524
13525         * infcall.c (struct call_return_meta_info)
13526         <stack_temporaries_enabled>: Remove.
13527         (get_call_return_value, call_function_by_hand_dummy): Update.
13528         * thread.c (disable_thread_stack_temporaries): Remove.
13529         (enable_thread_stack_temporaries): Remove.
13530         (thread_stack_temporaries_enabled_p): Return bool.
13531         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13532         (get_last_thread_stack_temporary): Update.
13533         * eval.c (evaluate_subexp): Update.
13534         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13535         class, not a function.
13536         (value_ptr, value_vec): Remove typedefs.
13537         (class thread_info) <stack_temporaries_enabled>: Now bool.
13538         <stack_temporaries>: Now a std::vector.
13539         (thread_stack_temporaries_enabled_p)
13540         (value_in_thread_stack_temporaries): Return bool.
13541
13542 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13543
13544         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13545         (getpkt_or_notif_sane_1): Likewise.
13546
13547 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13548
13549         * build-id.c (build_id_to_debug_bfd): Use std::string.
13550
13551 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13552
13553         * build-id.c (find_separate_debug_file_by_buildid): Return
13554         std::string.
13555         * build-id.h (find_separate_debug_file_by_buildid): Return
13556         std::string.
13557         * coffread.c (coff_symfile_read): Adjust to std::string.
13558         * elfread.c (elf_symfile_read): Adjust to std::string.
13559         * symfile.c (separate_debug_file_exists): Change parameter to
13560         std::string.
13561         (find_separate_debug_file): Return std::string.
13562         (find_separate_debug_file_by_debuglink): Return std::string.
13563         * symfile.h (find_separate_debug_file_by_debuglink): Return
13564         std::string.
13565
13566 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13567
13568         * common/xml-utils.c (xml_escape_text): Move code to...
13569         (xml_escape_text_append): ... this new function.
13570         * common/xml-utils.h (xml_escape_text_append): New declaration.
13571         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13572         New function.
13573         (_initialize_xml_utils): register test_xml_escape_text_append as
13574         a selftest.
13575
13576 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13577
13578         * defs.h: Remove MAX_REGISTER_SIZE.
13579         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13580         asserts.
13581         * python/py-unwind.c (pyuw_sniffer): Likewise.
13582
13583 2018-03-07  Tom Tromey  <tom@tromey.com>
13584
13585         * linux-tdep.c (linux_info_proc): Update.
13586         * target.h (struct target_ops) <to_fileio_readlink>: Return
13587         optional<string>.
13588         (target_fileio_readlink): Return optional<string>.
13589         * remote.c (remote_hostio_readlink): Return optional<string>.
13590         * inf-child.c (inf_child_fileio_readlink): Return
13591         optional<string>.
13592         * target.c (target_fileio_readlink): Return optional<string>.
13593
13594 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13595
13596         * regcache.c (cooked_read_test): Add riscv to the list of
13597         architectures that have a save_reggroup.
13598
13599 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13600
13601         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13602         value is not a dynamic class object.
13603
13604 2018-03-06  Tom Tromey  <tom@tromey.com>
13605
13606         * rust-exp.y: Formatting fixes.
13607
13608 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13609
13610         * riscv-tdep.c (riscv_register_name): Remove target description
13611         support.
13612         (riscv_gdbarch_init): Remove target description check.
13613
13614 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13615
13616         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13617         comment.
13618         * riscv-tdep.h: Likewise.
13619
13620 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13621
13622         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13623         (riscv_pseudo_register_write): Delete.
13624         (riscv_gdbarch_init): Remove all use of pseudo registers.
13625
13626 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13627
13628         * record-btrace.c (btrace_print_lines): Replace cleanup
13629         parameter with RAII equivalents.
13630         (btrace_insn_history): Replace cleanup with RAII equivalents.
13631         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13632         make_cleanup_ui_out_tuple_begin_end): Remove.
13633         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13634         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13635         make_cleanup_ui_out_list_begin_end): Remove.
13636
13637 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13638
13639         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13640         parameter types to std::vector.  Use bool.
13641         (record_btrace_wait): Replace VEC(tp_t) with
13642         std::vector<thread_info *>.
13643         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13644
13645 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13646
13647         * record-btrace.c (record_btrace_disable_callback): Remove.
13648         (struct scoped_btrace_disable): New.
13649         (record_btrace_open): Use scoped_btrace_disable.
13650
13651 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13652
13653         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13654         reading values from registers.
13655
13656 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13657
13658         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13659         where appropriate.
13660
13661 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13662
13663         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13664         change parameter type.  Use GDB's print functions, and use
13665         core_addr_to_string where appropriate.
13666         (riscv_push_dummy_call): Use core_addr_to_string where
13667         appropriate, update call to riscv_print_arg_location, and reindent
13668         a few lines.
13669         (riscv_return_value): Update call to riscv_print_arg_location.
13670
13671 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13672             Tim Newsome <tim@sifive.com>
13673             Albert Ou <a0u@eecs.berkeley.edu>
13674             Darius Rad <darius@bluespec.com>
13675
13676         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13677         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13678         (ALLDEPFILES): Add riscv-tdep.c
13679         * configure.tgt: Add riscv support.
13680         * riscv-tdep.c: New file.
13681         * riscv-tdep.h: New file.
13682         * NEWS: Mention new target.
13683         * MAINTAINERS: Add entry for riscv.
13684
13685 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13686
13687         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13688         fields within aggregates.
13689
13690 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13691
13692         * record-btrace.c (btrace_print_lines): Change type of flags to
13693         gdb_disassembly_flags.
13694
13695 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13696
13697         * fbsd-nat.c: Include "inf-ptrace.h".
13698         (USE_SIGTRAP_SIGINFO): Conditionally define.
13699         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13700         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13701         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13702         function.
13703         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13704         Likewise.
13705         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13706         Likewise.
13707         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13708         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13709         "supports_stopped_by_hw_breakpoint" target methods.
13710
13711 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13712
13713         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13714         * fbsd-nat.c (debug_fbsd_nat): New variable.
13715         (show_fbsd_nat_debug): New function.
13716         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13717         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13718
13719 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13720
13721         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13722         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13723         prototype.
13724         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13725         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13726         method.
13727
13728 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13729
13730         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13731         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13732
13733 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13734
13735         * charset.c (struct charset_vector): New.
13736         (charsets): Change type to charset_vector.
13737         (find_charset_names): Adjust.
13738         (add_one): Adjust.
13739         (_initialize_charset): Adjust.
13740
13741 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13742
13743         * progspace.h (struct program_space) <deleted_solibs>: Change
13744         type to std::vector<std::string>.
13745         * progspace.c (clear_program_space_solib_cache): Adjust.
13746         * breakpoint.c (print_solib_event): Adjust.
13747         (check_status_catch_solib): Adjust.
13748         * solib.c (update_solib_list): Adjust.
13749         * ui-out.h (class ui_out) <field_string>: New overload.
13750         * ui-out.c (ui_out::field_string): New overload.
13751
13752 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13753
13754         * progspace.h (struct program_space): Add constructor and
13755         destructor, initialize fields.
13756         (add_program_space): Remove.
13757         * progspace.c (add_program_space): Rename to...
13758         (program_space::program_space): ... this.
13759         (release_program_space): Rename to...
13760         (program_space::~program_space): ... this.
13761         (delete_program_space): Use delete to delete program_space.
13762         (initialize_progspace): Use new to allocate program_space.
13763         * inferior.c (add_inferior_with_spaces): Likewise.
13764         (clone_inferior_command): Likewise.
13765         * infrun.c (follow_fork_inferior): Likewise.
13766         (handle_vfork_child_exec_or_exit): Likewise.
13767
13768 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13769
13770         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13771         (delim_string_to_char_ptr_vec): Return std::vector of
13772         gdb::unique_xmalloc_ptr.
13773         (dirnames_to_char_ptr_vec_append): Take std::vector of
13774         gdb::unique_xmalloc_ptr.
13775         (dirnames_to_char_ptr_vec): Return std::vector of
13776         gdb::unique_xmalloc_ptr.
13777         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13778         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13779         (delim_string_to_char_ptr_vec): Return an std::vector of
13780         gdb::unique_xmalloc_ptr, adjust the code.
13781         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13782         gdb::unique_xmalloc_ptr, adjust the code.
13783         (dirnames_to_char_ptr_vec): Return an std::vector of
13784         gdb::unique_xmalloc_ptr, adjust the code.
13785         * auto-load.c (auto_load_safe_path_vec): Change type to
13786         std::vector of gdb::unique_xmalloc_ptr.
13787         (auto_load_expand_dir_vars): Return an std::vector of
13788         gdb::unique_xmalloc_ptr, adjust the code.
13789         (auto_load_safe_path_vec_update): Adjust.
13790         (filename_is_in_auto_load_safe_path_vec): Adjust.
13791         (auto_load_objfile_script_1): Adjust.
13792         * build-id.c (build_id_to_debug_bfd): Adjust.
13793         * linux-thread-db.c (thread_db_load_search): Adjust.
13794         * source.c (add_path): Adjust.
13795         (openp): Adjust.
13796         * symfile.c (find_separate_debug_file): Adjust.
13797         * utils.c (do_free_char_ptr_vec): Remove.
13798         (make_cleanup_free_char_ptr_vec): Remove.
13799
13800 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13801
13802         PR gdb/22907
13803         * common/pathstuff.c: Conditionally include "<windows.h>".
13804
13805 2018-03-01  Georg Sauthoff  <mail@georg.so>
13806
13807         PR gdb/22888
13808         * gcore.in: Quote variables and switch interpreter to bash.
13809
13810 2018-03-01  Tom Tromey  <tom@tromey.com>
13811
13812         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13813         assertion.  Add assertion for discriminant_index.
13814         (quirk_rust_enum): Use correct base type name in univariant case.
13815
13816 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13817
13818         * record.c (get_call_history_modifiers): Return a
13819         record_print_flags.
13820         (cmd_record_call_history): Adjust.
13821         * record-btrace.c (record_btrace_call_history): Adjust.
13822         (record_btrace_call_history_range): Adjust.
13823         (record_btrace_call_history_from): Adjust.
13824         * target-debug.h (target_debug_print_record_print_flags): New.
13825         * target-delegates.c: Re-generate.
13826         * target.c (target_call_history): Change flags type.
13827         (target_call_history_from): Likewise.
13828         (target_call_history_range): Likewise.
13829         * target.h (struct target_ops) <target_call_history>: Likewise.
13830         (target_call_history_from): Likewise.
13831         (target_call_history_range): Likewise.
13832
13833 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13834             Simon Marchi  <simon.marchi@polymtl.ca>
13835
13836         * common/common-utils.c: Include "sys/stat.h".
13837         (is_regular_file): Move here from "source.c"; change return
13838         type to "bool".
13839         * common/common-utils.h (is_regular_file): New prototype.
13840         * common/pathstuff.c (contains_dir_separator): New function.
13841         * common/pathstuff.h (contains_dir_separator): New prototype.
13842         * source.c: Don't include "sys/stat.h".
13843         (is_regular_file): Move to "common/common-utils.c".
13844
13845 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13846
13847         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13848         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13849         * auto-load.c: Include "common/pathstuff.h".
13850         * common/common-def.h (current_directory): Move here.
13851         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13852         function.
13853         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13854         prototype.
13855         * common/pathstuff.c: New file.
13856         * common/pathstuff.h: New file.
13857         * compile/compile.c: Include "common/pathstuff.h".
13858         * defs.h (current_directory): Move to "common/common-defs.h".
13859         * dwarf2read.c: Include "common/pathstuff.h".
13860         * exec.c: Likewise.
13861         * guile/scm-safe-call.c: Likewise.
13862         * linux-thread-db.c: Likewise.
13863         * main.c: Likewise.
13864         * nto-tdep.c: Likewise.
13865         * objfiles.c: Likewise.
13866         * source.c: Likewise.
13867         * symtab.c: Likewise.
13868         * utils.c: Include "common/pathstuff.h".
13869         (gdb_realpath): Move to "common/pathstuff.c".
13870         (gdb_realpath_keepfile): Likewise.
13871         (gdb_abspath): Likewise.
13872         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13873         (gdb_realpath_keepfile): Likewise.
13874         (gdb_abspath): Likewise.
13875
13876 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13877
13878         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13879         wildcard process pid for super_resume for kernels with a
13880         specific bug.
13881
13882 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13883
13884         * compile/compile.c (get_args): Add additional comments
13885         explaining function.
13886
13887 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13888             Tom Tromey  <tom@tromey.com>
13889
13890         * target.h (memory_write_request_s): Remove typedef.  Don't define
13891         VEC.
13892         (target_write_memory_blocks): Change argument to std::vector.
13893         (struct memory_write_request): Add constructor.
13894         * target-memory.c (compare_block_starting_address): Return bool.
13895         Change argument types.
13896         (claim_memory): Change arguments to use std::vector.
13897         (split_regular_and_flash_blocks, blocks_to_erase)
13898         (compute_garbled_blocks): Likewise.
13899         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13900         (target_write_memory_blocks): Change argument to std::vector.
13901         * symfile.c (struct load_section_data): Add constructor and
13902         destructor.  Use std::vector for "requests".
13903         (struct load_progress_data): Add initializers.
13904         (load_section_callback): Update.  Use "new".
13905         (clear_memory_write_data): Remove.
13906         (generic_load): Update.
13907
13908 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13909
13910         * arch/aarch64.h: Use common/tdesc.h.
13911
13912 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13913
13914         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13915         architecture with a 64-bit ABI.
13916
13917 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13918
13919         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13920         ahead of target description loading.
13921
13922 2018-02-26  Tom Tromey  <tom@tromey.com>
13923
13924         * stack.c (backtrace_command_1): Update.
13925         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13926         of "flags".
13927         * python/py-framefilter.c (py_print_frame)
13928         (gdbpy_apply_frame_filter): Change type of "flags".
13929         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13930         of "flags".
13931         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13932         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13933         * extension.h (enum frame_filter_flag): Rename from
13934         frame_filter_flags.
13935         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13936         (apply_ext_lang_frame_filter): Change type of "flags".
13937         * extension.c (apply_ext_lang_frame_filter): Change type of
13938         "flags".
13939         * extension-priv.h (struct extension_language_ops)
13940         <apply_frame_filter>: Change type of "flags".
13941
13942 2018-02-26  Tom Tromey  <tom@tromey.com>
13943
13944         PR python/16497:
13945         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13946         off-by-one in py_end computation.
13947         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13948         PRINT_MORE_FRAMES.
13949         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13950         constant.
13951
13952 2018-02-26  Tom Tromey  <tom@tromey.com>
13953
13954         * dwarf2read.c (struct variant_field): New.
13955         (struct nextfield) <variant>: New field.
13956         (dwarf2_add_field): Handle DW_TAG_variant_part.
13957         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13958         discriminated union.
13959         (read_structure_type): Handle DW_TAG_variant_part.
13960         (handle_struct_member_die): New function, extracted from
13961         process_structure_scope.  Handle DW_TAG_variant.
13962         (process_structure_scope): Handle discriminated unions.  Call
13963         handle_struct_member_die.
13964
13965 2018-02-26  Tom Tromey  <tom@tromey.com>
13966
13967         * rust-lang.h (rust_last_path_segment): Declare.
13968         * rust-lang.c (rust_last_path_segment): Now public.  Change
13969         contract.
13970         (struct disr_info): Remove.
13971         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13972         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13973         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13974         (rust_enum_p, rust_enum_variant): New function.
13975         (rust_underscore_fields): Remove "offset" parameter.
13976         (rust_print_enum): New function.
13977         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13978         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13979         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13980         enums.
13981         (rust_internal_print_type): New function, from rust_print_type.
13982         Remove enum code.
13983         (rust_print_type): Call rust_internal_print_type.
13984         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13985         Update enum handling.
13986         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13987         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13988         (rust_union_quirks): New functions.
13989         (process_full_comp_unit, process_full_type_unit): Call
13990         rust_union_quirks.
13991         (process_structure_scope): Update rust_unions if necessary.
13992
13993 2018-02-26  Tom Tromey  <tom@tromey.com>
13994
13995         * value.h (value_union_variant): Declare.
13996         * valops.c (value_union_variant): New function.
13997         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13998         (struct discriminant_info): New.
13999         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14000         enumerator.
14001         (struct main_type) <flag_discriminated_union>: New field.
14002
14003 2018-02-26  Tom Tromey  <tom@tromey.com>
14004
14005         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14006         unittests/unpack-selftests.c.
14007         * unittests/unpack-selftests.c: New file.
14008         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14009
14010 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14011
14012         * dwarf2read.c (struct partial_die_info) <read>: New method.
14013         (read_partial_die): Remove the declaration.
14014         (load_partial_dies): Update.
14015         (partial_die_info::partial_die_info):
14016         (read_partial_die): Change it to partial_die_info::read.
14017
14018 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14019
14020         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14021         (fixup_partial_die): Remove declaration.
14022         (scan_partial_symbols): Update.
14023         (partial_die_parent_scope): Likewise.
14024         (partial_die_full_name): Likewise.
14025         (fixup_partial_die): Change it to partial_die_info::fixup.
14026
14027 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14028
14029         * dwarf2read.c (read_partial_die): Update the declaration.
14030         (load_partial_dies): Caller update.
14031         (read_partial_die): Remove one argument abbrev_len.
14032
14033 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14034
14035         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14036         assignment operator.
14037         (load_partial_dies): Use ctor and copy ctor.
14038         (read_partial_die): Update.
14039         (dwarf2_cu::find_partial_die): Use ctor.
14040
14041 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14042
14043         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14044         (find_partial_die_in_comp_unit): Change it to
14045         dwarf2_cu::find_partial_die.
14046         (find_partial_die): Update.
14047
14048 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14049
14050         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14051         is NULL.
14052
14053 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14054
14055         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14056
14057 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14058
14059         * arch/amd64.h: Use common/tdesc.h.
14060         * arch/i386.c: Likewise.
14061         * arch/i386.h: Likewise.
14062         * arch/tic6x.c: Likewise.
14063         * arch/tdesc.h: Move file from here...
14064         * common/tdesc.h: ...to here.
14065         * features/aarch64-core.c: Regenerate.
14066         * features/aarch64-fpu.c: Regenerate.
14067         * features/i386/32bit-avx.c: Regenerate.
14068         * features/i386/32bit-avx512.c: Regenerate.
14069         * features/i386/32bit-core.c: Regenerate.
14070         * features/i386/32bit-linux.c: Regenerate.
14071         * features/i386/32bit-mpx.c: Regenerate.
14072         * features/i386/32bit-pkeys.c: Regenerate.
14073         * features/i386/32bit-sse.c: Regenerate.
14074         * features/i386/64bit-avx.c: Regenerate.
14075         * features/i386/64bit-avx512.c: Regenerate.
14076         * features/i386/64bit-core.c: Regenerate.
14077         * features/i386/64bit-linux.c: Regenerate.
14078         * features/i386/64bit-mpx.c: Regenerate.
14079         * features/i386/64bit-pkeys.c: Regenerate.
14080         * features/i386/64bit-segments.c: Regenerate.
14081         * features/i386/64bit-sse.c: Regenerate.
14082         * features/i386/x32-core.c: Regenerate.
14083         * features/tic6x-c6xp.c: Regenerate.
14084         * features/tic6x-core.c: Regenerate.
14085         * features/tic6x-gp.c: Regenerate.
14086         * target-descriptions.c: Use common/tdesc.h.
14087         * target-descriptions.h: Likewise.
14088
14089 2018-02-24  Tom Tromey  <tom@tromey.com>
14090
14091         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14092         (try_thread_db_load_from_dir, thread_db_load_search): Use
14093         std::string.
14094         (info_auto_load_libthread_db_compare): Return bool.  Change
14095         argument types.
14096         (info_auto_load_libthread_db): Use std::vector, std::string.
14097         Remove cleanups.
14098
14099 2018-02-24  Tom Tromey  <tom@tromey.com>
14100
14101         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14102         std::string.
14103         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14104         std::string*.
14105         * gdbarch.c: Rebuild.
14106         * gdbarch.h: Rebuild.
14107         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14108         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14109         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14110         std::string*.
14111
14112 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14113
14114         * gdbtypes.h (sect_offset): Change type to uint64_t.
14115         (sect_offset_str): New function.
14116         * dwarf2read.c (create_addrmap_from_aranges): Use
14117         sect_offset_str.
14118         (error_check_comp_unit_head): Likewise.
14119         (create_debug_type_hash_table): Likewise.
14120         (read_cutu_die_from_dwo): Likewise.
14121         (init_cutu_and_read_dies): Likewise.
14122         (init_cutu_and_read_dies_no_follow): Likewise.
14123         (process_psymtab_comp_unit_reader): Likewise.
14124         (partial_die_parent_scope): Likewise.
14125         (peek_die_abbrev): Likewise.
14126         (process_queue): Likewise.
14127         (dwarf2_physname): Likewise.
14128         (read_namespace_alias): Likewise.
14129         (read_import_statement): Likewise.
14130         (create_dwo_cu_reader): Likewise.
14131         (create_cus_hash_table): Likewise.
14132         (lookup_dwo_cutu): Likewise.
14133         (inherit_abstract_dies): Likewise.
14134         (read_func_scope): Likewise.
14135         (read_call_site_scope): Likewise.
14136         (dwarf2_add_member_fn): Likewise.
14137         (read_common_block): Likewise.
14138         (read_module_type): Likewise.
14139         (read_typedef): Likewise.
14140         (read_subrange_type): Likewise.
14141         (load_partial_dies): Likewise.
14142         (read_partial_die): Likewise.
14143         (find_partial_die): Likewise.
14144         (read_str_index): Likewise.
14145         (dwarf2_string_attr): Likewise.
14146         (build_error_marker_type): Likewise.
14147         (lookup_die_type): Likewise.
14148         (dump_die_shallow): Likewise.
14149         (follow_die_ref): Likewise.
14150         (dwarf2_fetch_die_loc_sect_off): Likewise.
14151         (dwarf2_fetch_constant_bytes): Likewise.
14152         (follow_die_sig): Likewise.
14153         (get_signatured_type): Likewise.
14154         (get_DW_AT_signature_type): Likewise.
14155         (dwarf2_find_containing_comp_unit): Likewise.
14156         (set_die_type): Likewise.
14157
14158 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14159
14160         * arch/aarch64.c: Include "common-defs.h".
14161         * arch/amd64.c: Likewise.
14162         * arch/i386.c: Likewise.
14163
14164 2018-02-21  Tom Tromey  <tom@tromey.com>
14165
14166         * value.h: (extract_field_op): Update.
14167         * eval.c (extract_field_op): Return a const char *.
14168         * expression.h (parse_expression_for_completion): Update.
14169         * completer.c (complete_expression): Update.
14170         (add_struct_fields): Make fieldname const.
14171         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14172         (mark_completion_tag, parse_exp_in_context_1): Update.
14173         (parse_expression_for_completion): Change "name" to
14174         unique_xmalloc_ptr*.
14175
14176 2018-02-21  Tom Tromey  <tom@tromey.com>
14177
14178         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14179
14180 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14181
14182         * avr-tdep.c (avr_read_pc): Change parameter type to
14183         readable_regcache.
14184         * gdbarch.sh (read_pc): Likewise.
14185         * gdbarch.c: Re-generated.
14186         * gdbarch.h: Re-generated.
14187         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14188         readable_regcache.
14189         * ia64-tdep.c (ia64_read_pc): Likewise.
14190         * mips-tdep.c (mips_read_pc): Likewise.
14191         * spu-tdep.c (spu_read_pc): Likewise.
14192
14193 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14194
14195         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14196         * regcache-dump.c: New file.
14197         * regcache.c: Move register_dump to regcache-dump.c.
14198         (maintenance_print_registers): Likewise.
14199         (maintenance_print_raw_registers): Likewise.
14200         (maintenance_print_cooked_registers): Likewise.
14201         (maintenance_print_register_groups): Likewise.
14202         (maintenance_print_remote_registers): Likewise.
14203         (_initialize_regcache): Likewise.
14204         * regcache.h (register_dump): Moved from regcache.c.
14205
14206 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14207
14208         * regcache.c (regcache::regcache): Update.
14209         (regcache::invalidate): Move it to detached_regcache::invalidate.
14210         (get_thread_arch_aspace_regcache): Update.
14211         (regcache::raw_update): Update.
14212         (regcache::cooked_read): Remove some code.
14213         (regcache::cooked_read_value): Likewise.
14214         (regcache::raw_write): Remove assert on m_readonly_p.
14215         (regcache::raw_supply_integer): Move it to
14216         detached_regcache::raw_supply_integer.
14217         (regcache::raw_supply_zeroed): Likewise.
14218         * regcache.h (detached_regcache) <raw_supply_integer>: New
14219         declaration.
14220         <raw_supply_zeroed, invalidate>: Likewise.
14221         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14222         <invalidate>: Likewise.
14223         <m_readonly_p>: Removed.
14224
14225 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14226
14227         * infcmd.c (get_return_value): Let stop_regs point to
14228         get_current_regcache.
14229         * regcache.c (regcache::regcache): Remove.
14230         (register_dump_reg_buffer): New class.
14231         (regcache_print): Adjust.
14232         * regcache.h (regcache): Remove constructors.
14233
14234 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14235
14236         * regcache.c (class register_dump): New class.
14237         (register_dump_regcache, register_dump_none): New class.
14238         (register_dump_remote, register_dump_groups): New class.
14239         (regcache_print): Update.
14240         * regcache.h (regcache_dump_what): Move it to regcache.c.
14241         (regcache) <dump>: Remove.
14242
14243 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14244
14245         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14246          reg_buffer_rw *.
14247         (jit_unwind_reg_set_impl): Call raw_supply.
14248         (jit_frame_sniffer): Use reg_buffer_rw.
14249         * record-full.c (record_full_core_regbuf): Change its type.
14250         (record_full_core_open_1): Use reg_buffer_rw.
14251         (record_full_close): Likewise.
14252         (record_full_core_fetch_registers): Use regcache->raw_supply.
14253         (record_full_core_store_registers): Likewise.
14254         * regcache.c (regcache::get_register_status): Move it to
14255         reg_buffer.
14256         (regcache_raw_set_cached_value): Remove.
14257         (regcache::raw_set_cached_value): Remove.
14258         (regcache::raw_write): Call raw_supply.
14259         (regcache::raw_supply): Move it to reg_buffer_rw.
14260         * regcache.h (regcache_raw_set_cached_value): Remove.
14261         (reg_buffer_rw): New class.
14262
14263 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14264
14265         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14266         readonly_detached_regcache.
14267         (dummy_frame_prev_register): Use regcache->cooked_read.
14268         * frame.c (frame_save_as_regcache): Change return type.
14269         (frame_pop): Update.
14270         * frame.h (frame_save_as_regcache): Update declaration.
14271         * inferior.h (get_infcall_suspend_state_regcache): Update
14272         declaration.
14273         * infrun.c (infcall_suspend_state) <registers>: use
14274         readonly_detached_regcache.
14275         (save_infcall_suspend_state): Don't use regcache_dup.
14276         (get_infcall_suspend_state_regcache): Change return type.
14277         * linux-fork.c (struct fork_info) <savedregs>: Change to
14278         readonly_detached_regcache.
14279         <pc>: New field.
14280         (fork_save_infrun_state): Don't use regcache_dup.
14281         (info_checkpoints_command): Adjust.
14282         * mi/mi-main.c (register_changed_p): Update declaration.
14283         (mi_cmd_data_list_changed_registers): Use
14284         readonly_detached_regcache.
14285         (register_changed_p): Change parameter type to
14286         readonly_detached_regcache.
14287         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14288         readonly_detached_regcache.
14289         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14290         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14291         New.
14292         (regcache::save): Move it to reg_buffer.
14293         (regcache::restore): Change parameter type.
14294         (regcache_dup): Remove.
14295         * regcache.h (reg_buffer) <save>: New method.
14296         (readonly_detached_regcache): New class.
14297         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14298         readonly_detached_regcache.
14299         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14300
14301 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14302
14303         * frame.c (frame_save_as_regcache): Use regcache method save.
14304         (frame_pop): Use regcache method restore.
14305         * infrun.c (restore_infcall_suspend_state): Likewise.
14306         * linux-fork.c (fork_load_infrun_state): Likewise.
14307         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14308         save.
14309         * regcache.c (regcache_save): Remove.
14310         (regcache::restore): More asserts.
14311         (regcache_cpy): Remove.
14312         * regcache.h (regcache_save): Remove the declaration.
14313         (regcache::restore): Move from private to public.
14314         Remove the friend declaration of regcache_cpy.
14315         (regcache_cpy): Remove declaration.
14316
14317 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14318
14319         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14320         parameter type to 'readable_regcache *'.
14321         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14322         * arm-tdep.c (arm_neon_quad_read): Likewise.
14323         (arm_pseudo_read): Likewise.
14324         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14325         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14326         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14327         * gdbarch.c: Re-generated.
14328         * gdbarch.h: Re-generated.
14329         * gdbarch.sh (pseudo_register_read): Change parameter type to
14330         'readable_regcache *'.
14331         (pseudo_register_read_value): Likewise.
14332         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14333         (h8300_pseudo_register_read): Likewise.
14334         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14335         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14336         (i386_pseudo_register_read_into_value): Likewise.
14337         (i386_pseudo_register_read_value): Likewise.
14338         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14339         declaration.
14340         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14341         * m32c-tdep.c (m32c_raw_read): Likewise.
14342         (m32c_read_flg): Likewise.
14343         (m32c_banked_register): Likewise.
14344         (m32c_banked_read): Likewise.
14345         (m32c_sb_read): Likewise.
14346         (m32c_part_read): Likewise.
14347         (m32c_cat_read): Likewise.
14348         (m32c_r3r2r1r0_read): Likewise.
14349         (m32c_pseudo_register_read): Likewise.
14350         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14351         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14352         (mep_pseudo_cr64_read): Likewise.
14353         (mep_pseudo_register_read): Likewise.
14354         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14355         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14356         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14357         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14358         (regcache::cooked_read): Likewise.
14359         (regcache::cooked_read_value): Likewise.
14360         (regcache_cooked_read_signed):
14361         (regcache::cooked_read): Likewise.
14362         * regcache.h (readable_regcache): New class.
14363         (regcache): Inherit readable_regcache.  Move some methods to
14364         readable_regcache.
14365         * rl78-tdep.c (rl78_pseudo_register_read): Change
14366         parameter type to 'readable_regcache *'.
14367         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14368         (e500_pseudo_register_read): Change parameter type to
14369         'readable_regcache *'.
14370         (dfp_pseudo_register_read): Likewise.
14371         (vsx_pseudo_register_read): Likewise.
14372         (efpr_pseudo_register_read): Likewise.
14373         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14374         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14375         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14376         (sh64_pseudo_register_read): Likewise.
14377         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14378         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14379         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14380         (spu_pseudo_register_read): Likewise.
14381         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14382         (xtensa_pseudo_register_read): Likewise.
14383
14384 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14385
14386         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14387         (regcache::arch): Move it to reg_buffer::arch.
14388         (regcache::register_buffer): Likewise.
14389         (regcache::assert_regnum): Likewise.
14390         (regcache::num_raw_registers): Likewise.
14391         * regcache.h (reg_buffer): New class.
14392         (regcache): Inherit reg_buffer.
14393
14394 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14395
14396         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14397         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14398
14399 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14400
14401         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14402
14403 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14404
14405         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14406         (SFILES): Remove common/*.c files.
14407         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14408         * common/common.host: Add common reference.
14409         * configure.ac: Likewise.
14410         * configure: Regenerate.
14411
14412 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14413
14414         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14415         (block_initialize_namespace): Use new.
14416         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14417         (dwarf2_free_objfile): Use delete.
14418         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14419         (copy_type_recursive): Use new.
14420         * gdb_obstack.h (allocate_on_obstack): New.
14421
14422 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14423
14424         PR gdb/22849
14425         * inferior.c (exit_inferior_1): Reset inf->control.
14426
14427 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14428
14429         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14430         declaration.
14431
14432 2018-02-14  Pedro Alves  <palves@redhat.com>
14433
14434         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14435         frame_cleanup_after_sniffer on exception.
14436
14437 2018-02-14  Tom Tromey  <tom@tromey.com>
14438
14439         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14440         const.
14441         (solib_bfd_open): Make pathname const.
14442         * solib.c (solib_bfd_open): Make pathname const.
14443         * solib-spu.c (spu_bfd_fopen): Make name const.
14444         (spu_bfd_open): Make pathname const.
14445         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14446         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14447
14448 2018-02-14  Tom Tromey  <tom@tromey.com>
14449
14450         * symfile.c (symfile_bfd_open): Update.
14451         * source.h (openp, source_full_path_of, find_and_open_source):
14452         Change argument type to unique_xmalloc_ptr.
14453         * source.c (openp): Take a unique_xmalloc_ptr.
14454         (source_full_path_of, find_and_open_source): Likewise.
14455         (open_source_file, symtab_to_fullname): Update.
14456         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14457         unique_xmalloc_ptr.
14458         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14459         (exec_file_find): Update.
14460         * psymtab.c (psymtab_to_fullname): Update.
14461         * nto-tdep.h (nto_find_and_open_solib): Update.
14462         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14463         unique_xmalloc_ptr.
14464         * exec.c (exec_file_attach): Update.
14465         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14466         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14467
14468 2018-02-14  Tom Tromey  <tom@tromey.com>
14469
14470         * solib.c: Include source.h.
14471         * nto-tdep.c: Include source.h.
14472         * mi/mi-cmd-env.c: Include source.h.
14473         * infcmd.c: Include source.h.
14474         * exec.c: Include source.h.
14475         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14476         (add_path, directory_switch, source_path, init_source_path): Move
14477         declarations...
14478         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14479         (add_path, directory_switch, source_path, init_source_path):
14480         ...here.
14481
14482 2018-02-14  Tom Tromey  <tom@tromey.com>
14483
14484         * solist.h (exec_file_find, solib_find): Return
14485         unique_xmalloc_ptr.
14486         (solib_bfd_fopen): Take a const char *.
14487         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14488         (exec_file_find, solib_find): Likewise.
14489         (solib_bfd_fopen): Do not take ownership of "pathname".
14490         (solib_bfd_open): Use unique_xmalloc_ptr.
14491         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14492         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14493         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14494         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14495
14496 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14497
14498         * ada-lang.c (name_match_type_from_name): Remove reference to
14499         ada_name_for_lookup in function's documentation.
14500         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14501
14502 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14503
14504         * defs.h (enum openp_flags): New enum.
14505         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14506         Move to enum openp_flags.
14507         (openp_flags): New enum flags.
14508         (openp): Change parameter type to openp_flags.
14509         * source.c (openp): Change parameter type to openp_flags.
14510         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14511         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14512
14513 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14514
14515         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14516         per-command.
14517
14518 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14519
14520         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14521         into...
14522         (class dwarf2_queue_guard): ...the destructor of this new class.
14523         (dw2_do_instantiate_symtab): Create instance of the new class
14524         dwarf2_queue_guard, remove cleanup.
14525
14526 2018-02-09  Tom Tromey  <tom@tromey.com>
14527
14528         * source.c (find_source_lines): Don't reference past the end of
14529         the vector.
14530
14531 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14532
14533         * remote.c (remote_btrace_maybe_reopen): Change error message.
14534         * btrace.c (btrace_enable): Likewise.
14535         (parse_xml_btrace): Likewise.
14536         (parse_xml_btrace_conf): Likewise.
14537
14538 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14539
14540         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14541         (linux_enable_pt, linux_enable_bts): Call
14542         diagnose_perf_event_open_fail.
14543
14544 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14545
14546         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14547         Remove parameter and change return type.  Update callers.  Move it.
14548         (linux_enable_bts, linux_enable_pt): Improve error message.
14549         (linux_enable_pt): Remove zero buffer size check.
14550         (linux_enable_btrace): Improve error messages.  Remove NULL return
14551         check.
14552
14553 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14554
14555         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14556         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14557         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14558         (linux_supports_pt, linux_supports_btrace): Remove.
14559         (linux_enable_bts): Call cpu_supports_bts.
14560         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14561         * remote.c (remote_supports_btrace): Remove.
14562         (init_remote_ops): Remove remote_supports_btrace.
14563         * target-delegates.c: Regenerated.
14564         * target.c (target_supports_btrace): Remove.
14565         * target.h (target_ops) <to_supports_btrace>: Remove
14566         (target_supports_btrace): Remove.
14567         * x86-linux-nat.c (x86_linux_create_target): Remove
14568         linux_supports_btrace.
14569
14570 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14571
14572         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14573         btrace failed.
14574         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14575         exception and use message in own exception.
14576
14577 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14578
14579         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14580         (perf_event_pt_event_type): Use gdb_file_up.
14581         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14582         scoped_fd, and scoped_mmap.
14583
14584 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14585
14586         * common/scoped_mmap.h: New.
14587         * unittests/scoped_mmap-selftest.c: New.
14588         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14589         unittests/scoped_mmap-selftest.c.
14590
14591 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14592
14593         * common/scoped_fd.h: New.
14594         * unittests/scoped_fd-selftest.c: New.
14595         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14596         unittests/scoped_fd-selftest.c.
14597
14598 2018-02-09  Tom Tromey  <tom@tromey.com>
14599
14600         * auto-load.c (auto_load_section_scripts): Use
14601         gdb::unique_xmalloc_ptr.
14602
14603 2018-02-09  Tom Tromey  <tom@tromey.com>
14604
14605         * auto-load.c (execute_script_contents): Use std::string.
14606
14607 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14608
14609         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14610         Python function, rather than a new command.
14611
14612 2018-02-08  Tom Tromey  <tom@tromey.com>
14613
14614         * solib.c (solib_find_1): Use std::string.
14615         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14616
14617 2018-02-08  Tom Tromey  <tom@tromey.com>
14618
14619         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14620
14621 2018-02-08  Tom Tromey  <tom@tromey.com>
14622
14623         * source.c (find_source_lines): Use gdb::def_vector.
14624
14625 2018-02-08  Tom Tromey  <tom@tromey.com>
14626
14627         * macrocmd.c (struct temporary_macro_definition): New.
14628         (macro_define_command): Use temporary_macro_definition.  Remove
14629         cleanups.
14630         (free_macro_definition_ptr): Remove.
14631
14632 2018-02-08  Tom Tromey  <tom@tromey.com>
14633
14634         * macroexp.c (maybe_expand): Use std::string.
14635
14636 2018-02-08  Tom Tromey  <tom@tromey.com>
14637
14638         * macroexp.c (struct macro_buffer): Add initializers for some
14639         members.
14640         (init_buffer, init_shared_buffer, free_buffer)
14641         (free_buffer_return_text): Remove.
14642         (macro_buffer): New constructors.
14643         (~macro_buffer): New destructor.
14644         (macro_buffer::set_shared): New method.
14645         (macro_buffer::resize_buffer, macro_buffer::appendc)
14646         (macro_buffer::appendmem): Now methods, not free functions.
14647         (set_token, append_tokens_without_splicing, stringify)
14648         (macro_stringify): Update.
14649         (gather_arguments): Change return type.  Remove argc_p argument,
14650         add args_ptr argument.  Use std::vector.
14651         (substitute_args): Remove argc argument.  Accept std::vector.
14652         (expand): Update.  Use std::vector.
14653         (scan, macro_expand, macro_expand_next): Update.
14654
14655 2018-02-08  Tom Tromey  <tom@tromey.com>
14656
14657         * symtab.c (default_collect_symbol_completion_matches_break_on):
14658         Use unique_xmalloc_ptr.
14659         * macroscope.h: (sal_macro_scope, user_macro_scope)
14660         (default_macro_scope): Return unique_xmalloc_ptr.
14661         * macroscope.c (sal_macro_scope, user_macro_scope)
14662         (default_macro_scope): Return unique_xmalloc_ptr.
14663         * macroexp.h (macro_expand, macro_expand_once): Return
14664         unique_xmalloc_ptr.
14665         * macroexp.c (macro_expand, macro_expand_once): Return
14666         unique_xmalloc_ptr.
14667         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14668         (info_macro_command, info_macros_command): Use
14669         unique_xmalloc_ptr.
14670         * compile/compile-c-support.c (write_macro_definitions): Use
14671         unique_xmalloc_ptr.
14672         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14673
14674 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14675
14676         * value.c (value_static_field): Assign field type instead of
14677         containing type when returning an optimized out value.
14678
14679 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14680
14681         * ft32-tdep.c (ft32_read_pc): Remove.
14682         (ft32_write_pc): Remove.
14683         (ft32_gdbarch_init): Update.
14684         * m32r-tdep.c (m32r_read_pc): Remove.
14685         (m32r_gdbarch_init): Update.
14686         * mep-tdep.c (mep_read_pc): Remove.
14687         (mep_gdbarch_init): Update.
14688         * microblaze-tdep.c (microblaze_write_pc): Remove.
14689         (microblaze_gdbarch_init): Update.
14690         * mn10300-tdep.c (mn10300_read_pc): Remove.
14691         (mn10300_write_pc): Remove.
14692         (mn10300_gdbarch_init): Update.
14693         * moxie-tdep.c (moxie_read_pc): Remove.
14694         (moxie_write_pc): Remove.
14695         (moxie_gdbarch_init): Update.
14696
14697 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14698
14699         * expprint.c (print_subexp_standard): Handle
14700         OP_F77_UNDETERMINED_ARGLIST.
14701         (dump_subexp_body_standard): Likewise.
14702
14703 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14704
14705         * target-descriptions.c (tdesc_element_visitor) Add empty
14706         implementations.
14707         (tdesc_type): Move make_gdb_type from here.
14708         (tdesc_type_builtin): Likewise.
14709         (tdesc_type_vector): Likewise.
14710         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14711         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14712         (make_gdb_type_union): Likewise.
14713         (make_gdb_type_flags): Likewise.
14714         (make_gdb_type_enum): Likewise.
14715         (make_gdb_type): New function.
14716         (tdesc_register_type): Use static make_gdb_type.
14717
14718 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14719
14720         * infcmd.c (default_print_one_register_info): Align natural-format
14721         column values consistently one under another.
14722         (pad_to_column): New function.
14723
14724 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14725
14726         * dwarf2read.c (dwarf2_physname): Move commment.
14727
14728 2018-02-01  Leszek Swirski  <leszeks@google.com>
14729
14730         * varobj.c (varobj_formatted_print_options): Allow recursive
14731         pretty printing if pretty printing is enabled.
14732
14733 2018-02-01  Leszek Swirski  <leszeks@google.com>
14734
14735         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14736         names after a structop as a filename.
14737
14738 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14739
14740         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14741         (arm_record_coproc_data_proc): Likewise.
14742
14743 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14744
14745         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14746
14747 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14748
14749         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14750         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14751
14752 2018-01-31  Pedro Alves  <palves@redhat.com>
14753
14754         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14755         * inflow.c (child_terminal_save_inferior): Wrap reference to
14756         tcgetpgrp in HAVE_TERMIOS_H.
14757         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14758         _WIN32.
14759         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14760         always iterate over all inferiors.
14761         (gdbsim_cntrl_c): Adjust.
14762         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14763
14764 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14765
14766         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14767         index type is objfile-owned if the element type is as well.
14768
14769 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14770
14771         GDB 8.1 released.
14772
14773 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14774
14775         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14776         "features/s390x-linux64.c".
14777         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14778         s390_linux32 and s390x_linux64.
14779         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14780         default tdesc.
14781         * s390-tdep.c: Include "features/s390-linux32.c" and
14782         "features/s390x-linux64.c".
14783         (s390_tdesc_valid): Add check for tdesc_has_registers.
14784         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14785         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14786         tdesc_s390x_linux64.
14787         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14788         tdesc_s390x_linux64 to...
14789         * s390-tdep.h: ...here.
14790
14791 2018-01-30  Pedro Alves  <palves@redhat.com>
14792
14793         PR gdb/13211
14794         * config.in, configure: Regenerate.
14795         * configure.ac: Check for getpgid.
14796         * go32-nat.c (go32_pass_ctrlc): New.
14797         (go32_target): Install it.
14798         * inf-child.c (inf_child_target): Install
14799         child_terminal_save_inferior, child_pass_ctrlc and
14800         child_interrupt.
14801         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14802         (inf_ptrace_target): No longer install it.
14803         * infcmd.c (interrupt_target_1): Adjust.
14804         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14805         (child_interrupt): Declare.
14806         (inferior::terminal_state): New.
14807         * inflow.c (struct terminal_info): Update comments.
14808         (inferior_process_group): Delete.
14809         (terminal_is_ours): Delete.
14810         (gdb_tty_state): New.
14811         (child_terminal_init): Adjust.
14812         (is_gdb_terminal, sharing_input_terminal_1)
14813         (sharing_input_terminal): New functions.
14814         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14815         Set the process's actual process group in the foreground if
14816         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14817         mark terminal as the inferior's if not sharing GDB's terminal.
14818         Don't check attach_flag.
14819         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14820         pass down a target_terminal_state.
14821         (child_terminal_save_inferior): New, factored out from ...
14822         (child_terminal_ours_1): ... this.  Handle
14823         target_terminal_state::is_ours_for_output.
14824         (child_interrupt, child_pass_ctrlc): New.
14825         (inflow_inferior_exit): Clear the inferior's terminal_state.
14826         (copy_terminal_info): Copy the inferior's terminal state.
14827         (_initialize_inflow): Remove reference to terminal_is_ours.
14828         * inflow.h (inferior_process_group): Delete.
14829         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14830         * procfs.c (procfs_target): Don't install procfs_interrupt.
14831         (procfs_interrupt): Delete.
14832         * remote.c (remote_serial_quit_handler): Adjust.
14833         (remote_interrupt): Remove ptid parameter.  Adjust.
14834         * target-delegates.c: Regenerate.
14835         * target.c: Include "terminal.h".
14836         (target_terminal::terminal_state): Rename to ...
14837         (target_terminal::m_terminal_state): ... this.
14838         (target_terminal::init): Adjust.
14839         (target_terminal::inferior): Adjust to per-inferior
14840         terminal_state.
14841         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14842         (target_terminal::ours, target_terminal::ours_for_output): Use
14843         target_terminal_is_ours_kind.
14844         (target_interrupt): Remove ptid parameter.  Adjust.
14845         (default_target_pass_ctrlc): Adjust.
14846         * target.h (target_ops::to_terminal_save_inferior): New field.
14847         (target_ops::to_interrupt): Remove ptid_t parameter.
14848         (target_interrupt): Remove ptid_t parameter.  Update comment.
14849         (target_pass_ctrlc): Update comment.
14850         * target/target.h (target_terminal_state): New scoped enum,
14851         factored out of ...
14852         (target_terminal::terminal_state): ... here.
14853         (target_terminal::inferior): Update comments.
14854         (target_terminal::restore_inferior): New.
14855         (target_terminal::is_inferior, target_terminal::is_ours)
14856         (target_terminal::is_ours_for_output): Adjust.
14857         (target_terminal::scoped_restore_terminal_state): Adjust to
14858         rename, and call restore_inferior() instead of inferior().
14859         (target_terminal::scoped_restore_terminal_state::m_state): Change
14860         type.
14861         (target_terminal::terminal_state): Rename to ...
14862         (target_terminal::m_terminal_state): ... this and change type.
14863
14864 2018-01-30  Pedro Alves  <palves@redhat.com>
14865
14866         * linux-nat.c (wait_for_signal): New function.
14867         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14868         directly.
14869         (async_terminal_is_ours)
14870         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14871         (linux_nat_add_target): Don't override
14872         to_terminal_inferior/to_terminal_ours.
14873
14874 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14875
14876         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14877
14878 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14879
14880         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14881         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14882         dwarf2_per_objfile_free here.
14883         (dwarf2_per_objfile_free): Remove.
14884         (_initialize_dwarf2_read): Don't register
14885         dwarf2_per_objfile_free as a registry cleanup.
14886
14887 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14888
14889         Avoid compilation errors in MinGW native builds
14890
14891         The error is triggered by including python-internal.h, and the
14892         error message is:
14893
14894              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14895                       from build-gnulib/import/math.h:27,
14896                       from d:/usr/Python26/include/pyport.h:235,
14897                       from d:/usr/Python26/include/Python.h:58,
14898                       from python/python-internal.h:94,
14899                       from python/py-arch.c:24:
14900              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14901         using ::hypot;
14902                 ^~~~~
14903
14904         This happens because Python headers define 'hypot' to expand t
14905         '_hypot' in the Windows builds.
14906         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14907         'hypoth'.  This avoids a compilation error.
14908
14909 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14910
14911         * MAINTAINERS (Write After Approval): Fix ordering.
14912
14913 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14914
14915         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14916
14917 2018-01-26  Alan Modra  <amodra@gmail.com>
14918
14919         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14920         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14921         Remove nop.  Make const.  Comment.
14922         (powerpc32_plt_stub_so_2): New.
14923         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14924         Correct count.  Update uses.
14925         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14926         Move common code reading PLT entry word.  Correct
14927         powerpc32_plt_stub PLT address calculation.
14928         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14929         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14930         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14931         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14932         (ppc64_standard_linkage8): Likewise.
14933         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14934         Correct insns description.
14935         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14936
14937 2018-01-24  Pedro Alves  <palves@redhat.com>
14938
14939         GCC PR libstdc++/83906
14940         * gdbtypes.c (operator==(const dynamic_prop &,
14941         const dynamic_prop &)): New.
14942         (operator==(const range_bounds &, const range_bounds &)): New.
14943         (check_types_equal): Use them instead of memcmp.
14944         * gdbtypes.h (operator==(const dynamic_prop &,
14945         const dynamic_prop &)): Declare.
14946         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14947         (operator==(const range_bounds &, const range_bounds &)): Declare.
14948         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14949
14950 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14951
14952         * s390-linux-tdep.c (s390_record_address_mask)
14953         (s390_record_calc_disp_common, s390_record_calc_disp)
14954         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14955         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14956         (s390_process_record): Move to s390-tdep.c.
14957         (s390_linux_init_abi_any): Adjust.
14958         * s390-tdep.c (s390_record_address_mask)
14959         (s390_record_calc_disp_common, s390_record_calc_disp)
14960         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14961         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14962         (s390_process_record): Moved from s390-linux-tdep.c
14963         (s390_gdbarch_init): Adjust.
14964
14965 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14966
14967         * s390-linux-nat.c (s390-tdep.h): New include.
14968         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14969         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14970         (ALLDEPFILES): Add s390-tdep.c.
14971         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14972         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14973         * s390-tdep.h: ...this.  New file.
14974         * s390-linux-tdep.c (s390-tdep.h): New include.
14975         (_initialize_s390_tdep): Rename to...
14976         (_initialize_s390_linux_tdep): ...this and adjust.
14977         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14978         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14979         s390-tdep.h.
14980         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14981         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14982         (s390_is_partial_instruction, s390_software_single_step)
14983         (is_non_branch_ril, s390_displaced_step_copy_insn)
14984         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14985         (s390_prologue_data, s390_addr, s390_store, s390_load)
14986         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14987         (s390_register_call_saved, s390_guess_tracepoint_registers)
14988         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14989         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14990         (s390_pseudo_register_name, s390_pseudo_register_type)
14991         (s390_pseudo_register_read, s390_pseudo_register_write)
14992         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14993         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14994         (s390_addr_bits_remove, s390_address_class_type_flags)
14995         (s390_address_class_type_flags_to_name)
14996         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14997         (s390_function_arg_float, s390_function_arg_vector)
14998         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14999         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15000         (s390_frame_align, s390_register_return_value, s390_return_value)
15001         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15002         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15003         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15004         (s390_trad_frame_prev_register, s390_unwind_cache)
15005         (s390_prologue_frame_unwind_cache)
15006         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15007         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15008         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15009         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15010         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15011         (s390_frame_base_address, s390_local_base_address)
15012         (s390_frame_base, s390_gcc_target_options)
15013         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15014         (s390_validate_reg_range, s390_tdesc_valid)
15015         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15016         * s390-tdep.c: ...this.  New file.
15017
15018 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15019
15020         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15021         (s390_process_record, s390_gdbarch_tdep_alloc)
15022         (s390_linux_init_abi_any): Use/set new hook.
15023
15024 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15025
15026         * s390-linux-tdep.c (osabi.h): New include.
15027         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15028         (s390_linux_init_abi_any): New functions.
15029         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15030
15031 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15032
15033         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15034         tdesc_has_registers check
15035
15036 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15037
15038         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15039         (s390_validate_reg_range): New macro.
15040         (s390_gdbarch_init): Adjust.
15041
15042 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15043
15044         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15045         (s390_gdbarch_tdep_alloc): Adjust.
15046         (s390_gdbarch_init): Adjust.
15047
15048 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15049
15050         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15051         <have_tdb>: Change type to bool.
15052         (s390_gdbarch_tdep_alloc): Adjust.
15053         (s390_gdbarch_init): Adjust.
15054
15055 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15056
15057         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15058         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15059         (s390_gdbarch_tdep_alloc): New function.
15060         (s390_gdbarch_init): Allocate tdep at start and use its fields
15061         instead of separate variables.
15062
15063 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15064
15065         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15066         when looking for cached gdbarch and add comment for remaining.
15067
15068 2018-01-22  Pedro Alves  <palves@redhat.com>
15069             Sergio Durigan Junior  <sergiodj@redhat.com>
15070
15071         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15072         case.
15073
15074 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15075
15076         * MAINTAINERS: Update my company e-mail address.
15077
15078 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15079
15080         * regcache.c (cooked_write_test): New function.
15081         (_initialize_regcache): Register the test.
15082
15083 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15084
15085         * ia64-tdep.c (ia64_pseudo_register_read): Call
15086         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15087         * m32c-tdep.c (m32c_cat_read): Likewise.
15088         (m32c_r3r2r1r0_read): Likewise.
15089         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15090         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15091
15092 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15093
15094         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15095         method raw_read instead of regcache_raw_read.
15096         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15097         * arm-tdep.c (arm_neon_quad_read): Likewise.
15098         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15099         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15100         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15101         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15102         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15103         (i386_pseudo_register_read_into_value): Likewise.
15104         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15105         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15106         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15107         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15108         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15109         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15110         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15111         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15112         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15113
15114 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15115
15116         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15117         * configure.tgt: Remove target mt.
15118         * mt-tdep.c: Remove.
15119         * regcache.c (cooked_read_test): Remove the check for mt.
15120
15121 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15122
15123         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15124         instead of gdbarch_pseudo_register_read_value.
15125
15126 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15127
15128         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15129         language is Ada.
15130
15131 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15132
15133         * linespec.c (create_sals_line_offset): Remove code that preserved
15134         the symtab_and_line's line number.
15135
15136 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15137
15138         * varobj.c (varobj_create): Don't set valid_block when creating a
15139         floating varobj.
15140
15141 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15142
15143         * varobj.c (varobj_create): Remove out of date comment.
15144
15145 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15146
15147         PR mi/20395
15148         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15149         updating innermost block.
15150         * parse.c (innermost_block_tracker::update): Take extra type
15151         parameter, and check types match before updating innermost block.
15152         (write_dollar_variable): Update innermost block for registers.
15153         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15154         (innermost_block_tracker::innermost_block_tracker): Initialise
15155         m_types member.
15156         (innermost_block_tracker::reset): Take type parameter.
15157         (innermost_block_tracker::update): Take type parameter, and pass
15158         type through as needed.
15159         (innermost_block_tracker::m_types): New member.
15160         * varobj.c (varobj_create): Pass type when reseting innermost
15161         block.
15162
15163 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15164
15165         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15166         * ada-lang.c (resolve_subexp): Likewise.
15167         * breakpoint.c (set_breakpoint_condition) Likewise.
15168         (watch_command_1) Likewise.
15169         * c-exp.y (variable): Likewise.
15170         * d-exp.y (PrimaryExpression): Likewise.
15171         * f-exp.y (variable): Likewise.
15172         * go-exp.y (variable): Likewise.
15173         * m2-exp.y (variable): Likewise.
15174         * objfiles.c (objfile::~objfile): Likewise.
15175         * p-exp.y (variable): Likewise.
15176         * parse.c (innermost_block): Change type.
15177         * parser-defs.h (class innermost_block_tracker): New.
15178         (innermost_block): Change to innermost_block_tracker.
15179         * printcmd.c (display_command): Switch to innermost_block API.
15180         (do_one_display): Likewise.
15181         * rust-exp.y (do_one_display): Likewise.
15182         * symfile.c (clear_symtab_users): Likewise.
15183         * varobj.c (varobj_create): Switch to innermost_block API, replace
15184         use of innermost_block with block stored on varobj object.
15185
15186 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15187
15188         * expression.h (innermost_block): Remove declaration.
15189         * varobj.c: Add 'parser-defs.h' include.
15190
15191 2018-01-19  Tom Tromey  <tom@tromey.com>
15192
15193         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15194         symbols in the static and global blocks.
15195
15196 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15197
15198         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15199         gdb_ptrace.h, and move including gdb_wait.h ...
15200         * nat/linux-ptrace.h: ... to here.
15201
15202 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15203
15204         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15205         inf_ptrace_detach_success.
15206         (inf_ptrace_detach_success): Add inferior parameter, use it
15207         instead of inferior_ptid, pass it to detach_inferior.
15208         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15209         parameter.
15210         * inferior.c (detach_inferior): Add overload that takes an
15211         inferior object.
15212         * inferior.h (detach_inferior): Likewise.
15213         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15214         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15215         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15216
15217 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15218
15219         * target.h (struct target_ops) <to_detach>: Add inferior
15220         parameter.
15221         (target_detach): Likewise.
15222         * target.c (dispose_inferior): Pass inferior down.
15223         (target_detach): Pass inferior down.  Assert that it is equal to
15224         the current inferior.
15225         * aix-thread.c (aix_thread_detach): Pass inferior down.
15226         * corefile.c (core_file_command): Pass current_inferior() down.
15227         * corelow.c (core_detach): Add inferior parameter.
15228         * darwin-nat.c (darwin_detach): Likewise.
15229         * gnu-nat.c (gnu_detach): Likewise.
15230         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15231         * infcmd.c (detach_command): Pass current_inferior() down to
15232         target_detach.
15233         * infrun.c (follow_fork_inferior): Pass parent_inf to
15234         target_detach.
15235         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15236         target_detach.
15237         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15238         * linux-thread-db.c (thread_db_detach): Likewise.
15239         * nto-procfs.c (procfs_detach): Likewise.
15240         * procfs.c (procfs_detach): Likewise.
15241         * record.c (record_detach): Likewise.
15242         * record.h (struct inferior): Forward-declare.
15243         (record_detach): Add inferior parameter.
15244         * remote-sim.c (gdbsim_detach): Likewise.
15245         * remote.c (remote_detach_1): Likewise.
15246         (remote_detach): Likewise.
15247         (extended_remote_detach): Likewise.
15248         * sol-thread.c (sol_thread_detach): Likewise.
15249         * target-debug.h (target_debug_print_inferior_p): New macro.
15250         * target-delegates.c: Re-generate.
15251         * top.c (kill_or_detach): Pass inferior down to target_detach.
15252         * windows-nat.c (windows_detach): Add inferior parameter.
15253
15254 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15255
15256         * target.h (struct target_ops) <to_detach>: Remove args
15257         parameter.
15258         (target_detach): Likewise.
15259         * target.c (dispose_inferior): Adjust.
15260         (target_detach): Remove args parameter, adjust.
15261         * aix-thread.c (aix_thread_detach): Adjust.
15262         * corefile.c (core_file_command): Adjust.
15263         * corelow.c (core_detach): Adjust.
15264         * darwin-nat.c (darwin_detach): Adjust.
15265         * gnu-nat.c (gnu_detach): Adjust.
15266         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15267         * infcmd.c (detach_command): Adjust
15268         * infrun.c (follow_fork_inferior): Adjust.
15269         (handle_vfork_child_exec_or_exit): Adjust.
15270         * linux-fork.c (linux_fork_detach): Remove args parameter.
15271         * linux-fork.h (linux_fork_detach): Likewise.
15272         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15273         * linux-thread-db.c (thread_db_detach): Likewise.
15274         * nto-procfs.c (procfs_detach): Likewise.
15275         * procfs.c (procfs_detach): Likewise.
15276         (do_detach): Remove signo parameter.
15277         * record.c (record_detach): Remove args parameter.
15278         * record.h (record_detach): Likewise.
15279         * remote-sim.c (gdbsim_detach): Likewise.
15280         * remote.c (remote_detach_1): Likewise.
15281         (remote_detach): Likewise.
15282         (extended_remote_detach): Likewise.
15283         * sol-thread.c (sol_thread_detach): Likewise.
15284         * target-delegates.c: Re-generate.
15285         * top.c (struct qt_args) <args>: Remove field.
15286         (kill_or_detach): Don't pass args.
15287         (quit_force): Don't set args.
15288         * windows-nat.c (windows_detach): Remove args parameter.
15289
15290 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15291
15292         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15293         (arm_linux_init_abi): Install it.
15294
15295 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15296
15297         * osabi.c (gdb_osabi_names): Extend the regexp for
15298         arm-linux-gnueabihf.
15299
15300 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15301
15302         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15303         m_abbrevs.
15304         (abbrev_table::add_abbrev): Update.
15305         (abbrev_table::lookup_abbrev): Update.
15306
15307 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15308
15309         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15310
15311 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15312
15313         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15314         to "std::string".
15315
15316 2018-01-17  Tom Tromey  <tom@tromey.com>
15317
15318         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15319
15320 2018-01-17  Tom Tromey  <tom@tromey.com>
15321
15322         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15323         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15324         (create_array_type_with_stride): Update.
15325         * dwarf2read.c (set_die_type): Update.
15326
15327 2018-01-17  Tom Tromey  <tom@tromey.com>
15328
15329         * dwarf2read.c (delayed_method_info): Remove typedef.
15330         (dwarf2_cu::method_info): Now a std::vector.
15331         (add_to_method_list): Update.
15332         (free_delayed_list): Remove.
15333         (compute_delayed_physnames): Update.
15334         (process_full_comp_unit, process_full_type_unit): Clear the method
15335         list.  Remove cleanups.
15336         (psymtab_include_file_name): Add name_holder parameter.  Use
15337         unique_xmalloc_ptr.
15338         (dwarf_decode_lines): Update.
15339
15340 2018-01-17  Tom Tromey  <tom@tromey.com>
15341             Simon Marchi  <simon.marchi@ericsson.com>
15342
15343         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15344         (dwarf2_per_objfile::free_cached_comp_units)
15345         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15346         (init_cutu_and_read_dies_no_follow): Update.
15347         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15348         (dwarf2_cu::~dwarf2_cu): New.
15349         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15350         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15351
15352 2018-01-17  Tom Tromey  <tom@tromey.com>
15353             Simon Marchi  <simon.marchi@ericsson.com>
15354
15355         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15356         (struct die_reader_specs) <abbrev_table>: New member.
15357         (struct abbrev_table): Add constructor.
15358         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15359         <abbrev_obstack>: Now an auto_obstack.
15360         (abbrev_table_up): New typedef.
15361         (init_cu_die_reader): Add abbrev_table parameter.
15362         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15363         Add result_dwo_abbrev_table.
15364         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15365         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15366         Update.
15367         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15368         parameter.
15369         (skip_children): Update.
15370         (abbrev_table::alloc_abbrev): Rename from
15371         abbrev_table_alloc_abbrev.
15372         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15373         (abbrev_table::lookup_abbrev): Rename from
15374         abbrev_table_lookup_abbrev.
15375         (abbrev_table_read_table): Return abbrev_table_up.
15376         (abbrev_table_free, abbrev_table_free_cleanup)
15377         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15378         (load_partial_dies): Update.
15379
15380 2018-01-17  Tom Tromey  <tom@tromey.com>
15381
15382         * dwarf2read.c (dwarf2_compute_name): Update comment.
15383         (read_func_scope, read_variable): Update.
15384         (new_symbol): Remove.
15385         (new_symbol_full): Rename to new_symbol.
15386
15387 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15388
15389         PR gdb/16577
15390         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15391         a warning instead of throwing an error, set section size to 0 and return
15392         NULL.
15393         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15394
15395 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15396
15397         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15398         std::string.
15399         (linux_ptrace_attach_fail_reason_string): Likewise.
15400         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15401         Likewise.
15402         (linux_ptrace_attach_fail_reason_string): Likewise.
15403         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15404
15405 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15406
15407         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15408
15409 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15410
15411         PR gdb/21559
15412         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15413         checking for fs_base/gs_base fields in struct user_regs_struct.
15414         * configure: Regenerate.
15415
15416 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15417
15418         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15419         function.
15420         (aarch64_linux_init_abi): Install it to gdbarch hook
15421         gcc_target_options.
15422
15423 2018-01-15  Pedro Alves  <palves@redhat.com>
15424
15425         * common/signals-state-save-restore.c
15426         (save_original_signals_state): Fix typos.
15427
15428 2017-01-12  Tom Tromey  <tom@tromey.com>
15429             Sergio Durigan Junior  <sergiodj@redhat.com>
15430
15431         * Makefile.in (install-only): Install gdb-add-index.
15432
15433 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15434
15435         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15436
15437 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15438
15439         * infrun.c (keep_going_pass_signal): Clear step-over info when
15440         insert_breakpoints fails.
15441
15442 2018-01-11  Pedro Alves  <palves@redhat.com>
15443
15444         PR gdb/22583
15445         * infrun.c (resume): Rename to ...
15446         (resume_1): ... this.
15447         (resume): Reimplement as wrapper around resume_1.
15448
15449 2018-01-11  Pedro Alves  <palves@redhat.com>
15450
15451         PR remote/22597
15452         * remote.c (remote_parse_stop_reply): Default to the last-set
15453         general thread instead of to 'magic_null_ptid'.
15454
15455 2018-01-10  Pedro Alves  <palves@redhat.com>
15456
15457         * language.h (language_get_symbol_name_matcher): Rename ...
15458         (get_symbol_name_matcher): ... this.
15459         * language.c (language_get_symbol_name_matcher): Ditto.
15460         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15461         callers adjusted.
15462
15463 2018-01-10  Pedro Alves  <palves@redhat.com>
15464
15465         PR gdb/22670
15466         * dwarf2read.c
15467         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15468         Adjust to use language_get_symbol_name_matcher instead of
15469         language_defn::la_get_symbol_name_matcher.
15470         * language.c (language_get_symbol_name_matcher): If in Ada mode
15471         and the lookup name is a verbatim match, return Ada's matcher.
15472         * language.h (language_get_symbol_name_matcher): Adjust comment.
15473         (ada_lookup_name_info::verbatim_p):: New method.
15474
15475 2018-01-10  Pedro Alves  <palves@redhat.com>
15476
15477         PR gdb/22670
15478         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15479         minsym's language is language_auto or language_cplus, pass down
15480         language_ada instead.
15481         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15482
15483 2018-01-10  Pedro Alves  <palves@redhat.com>
15484
15485         PR gdb/22670
15486         * minsyms.c (linkage_name_str): New function.
15487         (iterate_over_minimal_symbols): Use it.
15488
15489 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15490
15491         * NEWS: Document that 'info proc' now works on FreeBSD.
15492
15493 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15494
15495         * configure.ac: Check for kinfo_getfile in libutil.
15496         * configure: Regenerate.
15497         * config.in: Regenerate.
15498         * fbsd-nat.c: Include "fbsd-tdep.h".
15499         (fbsd_fetch_cmdline): New.
15500         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15501         rather than calling error.
15502         (fbsd_info_proc): New.
15503         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15504         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15505         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15506
15507 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15508
15509         * fbsd-nat.c (struct free_deleter): Remove.
15510         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15511
15512 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15513
15514         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15515         NULL for an empty pathname.
15516
15517 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15518
15519         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15520         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15521         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15522         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15523         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15524         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15525         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15526         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15527         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15528         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15529         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15530         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15531         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15532         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15533         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15534
15535 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15536
15537         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15538         (gnu_xfer_auxv): New function.
15539         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15540         TARGET_OBJECT_AUXV.
15541
15542 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15543             Simon Marchi  <simon.marchi@ericsson.com>
15544
15545         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15546         common/selftest.c.
15547         (COMMON_OBS): Remove selftest.o.
15548         * configure.ac: Append selftest-arch.c and common/selftest.c to
15549         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15550         * configure: Re-generated.
15551         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15552         GDB_SELF_TEST.
15553         (maintenance_info_selftests): Likewise.
15554
15555 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15556
15557         * ada-valprint.c (val_print_packed_array_elements): Use
15558         proper number of elements when printing an array indexed
15559         by an enumeration type.
15560
15561 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15562
15563         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15564         (dw2_get_file_names_reader): Adjust.
15565         (lookup_dwo_signatured_type): Adjust.
15566         (lookup_dwp_signatured_type): Adjust.
15567         (lookup_signatured_type): Adjust.
15568         (create_type_unit_group): Adjust.
15569         (get_type_unit_group): Adjust.
15570         (process_psymtab_comp_unit_reader): Adjust.
15571         (build_type_psymtabs_reader): Adjust.
15572         (scan_partial_symbols): Adjust.
15573         (add_partial_symbol): Adjust.
15574         (add_partial_subprogram): Adjust.
15575         (peek_die_abbrev): Adjust.
15576         (fixup_go_packaging): Adjust.
15577         (process_imported_unit_die): Adjust.
15578         (dwarf2_compute_name): Adjust.
15579         (dwarf2_physname): Adjust.
15580         (read_import_statement): Adjust.
15581         (handle_DW_AT_stmt_list): Adjust.
15582         (read_file_scope): Adjust.
15583         (read_func_scope): Adjust.
15584         (read_lexical_block_scope): Adjust.
15585         (read_call_site_scope): Adjust.
15586         (read_variable): Adjust.
15587         (dwarf2_rnglists_process): Adjust.
15588         (dwarf2_ranges_process): Adjust.
15589         (dwarf2_ranges_read): Adjust.
15590         (dwarf2_get_pc_bounds): Adjust.
15591         (dwarf2_record_block_ranges): Adjust.
15592         (dwarf2_add_field): Adjust.
15593         (dwarf2_add_member_fn): Adjust.
15594         (read_structure_type): Adjust.
15595         (process_structure_scope): Adjust.
15596         (read_enumeration_type): Adjust.
15597         (read_array_type): Adjust.
15598         (mark_common_block_symbol_computed): Adjust.
15599         (read_common_block): Adjust.
15600         (read_namespace_type): Adjust.
15601         (read_namespace): Adjust.
15602         (read_module_type): Adjust.
15603         (read_tag_pointer_type): Adjust.
15604         (read_tag_ptr_to_member_type): Adjust.
15605         (read_tag_string_type): Adjust.
15606         (read_subroutine_type): Adjust.
15607         (read_typedef): Adjust.
15608         (read_base_type): Adjust.
15609         (attr_to_dynamic_prop): Adjust.
15610         (read_subrange_type): Adjust.
15611         (read_unspecified_type): Adjust.
15612         (dwarf2_read_abbrevs): Adjust.
15613         (load_partial_dies): Adjust.
15614         (read_partial_die): Adjust.
15615         (find_partial_die): Adjust.
15616         (guess_partial_die_structure_name): Adjust.
15617         (fixup_partial_die): Adjust.
15618         (read_attribute_value): Adjust.
15619         (read_addr_index): Adjust.
15620         (read_addr_index_from_leb128): Adjust.
15621         (read_str_index): Adjust.
15622         (dwarf2_string_attr): Adjust.
15623         (get_debug_line_section): Adjust.
15624         (dwarf_decode_line_header): Adjust.
15625         (lnp_state_machine::check_line_address): Adjust.
15626         (dwarf_decode_lines_1): Adjust.
15627         (dwarf_decode_lines): Adjust.
15628         (dwarf2_start_symtab): Adjust.
15629         (var_decode_location): Adjust.
15630         (new_symbol_full): Adjust.
15631         (dwarf2_const_value_data): Adjust.
15632         (dwarf2_const_value_attr): Adjust.
15633         (dwarf2_const_value): Adjust.
15634         (die_type): Adjust.
15635         (die_containing_type): Adjust.
15636         (build_error_marker_type): Adjust.
15637         (lookup_die_type): Adjust.
15638         (guess_full_die_structure_name): Adjust.
15639         (anonymous_struct_prefix): Adjust.
15640         (determine_prefix): Adjust.
15641         (dwarf2_name): Adjust.
15642         (follow_die_ref_or_sig): Adjust.
15643         (follow_die_offset): Adjust.
15644         (follow_die_ref): Adjust.
15645         (follow_die_sig_1): Adjust.
15646         (follow_die_sig): Adjust.
15647         (get_signatured_type): Adjust.
15648         (get_DW_AT_signature_type): Adjust.
15649         (decode_locdesc): Adjust.
15650         (dwarf_decode_macros): Adjust.
15651         (cu_debug_loc_section): Adjust.
15652         (fill_in_loclist_baton): Adjust.
15653         (dwarf2_symbol_mark_computed): Adjust.
15654         (init_one_comp_unit): Don't assign
15655         dwarf2_cu::dwarf2_per_objfile.
15656         (set_die_type): Adjust.
15657
15658 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15659
15660         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15661         <dwarf2_per_objfile>: New field.
15662         (dwarf2_per_objfile): Remove global.
15663         (get_dwarf2_per_objfile): New function.
15664         (set_dwarf2_per_objfile): New function.
15665         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15666         dwarf2_per_objfile.
15667         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15668         (read_abbrev_offset): Likewise.
15669         (read_indirect_string): Likewise.
15670         (read_indirect_line_string): Likewise.
15671         (read_indirect_string_at_offset): Likewise.
15672         (read_indirect_string_from_dwz): Likewise.
15673         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15674         dwarf2_per_objfile.
15675         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15676         (create_all_comp_units): Change objfile parameter to
15677         dwarf2_per_objfile.
15678         (create_all_type_units): Likewise.
15679         (process_queue): Add dwarf2_per_objfile parameter.
15680         (read_and_check_comp_unit_head): Likewise.
15681         (lookup_dwo_unit_in_dwp): Likewise.
15682         (get_dwp_file): Likewise.
15683         (process_cu_includes): Likewise.
15684         (struct free_dwo_file_cleanup_data): New struct.
15685         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15686         set_dwarf2_per_objfile.
15687         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15688         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15689         context, adjust calls.
15690         (dw2_instantiate_symtab): Likewise.
15691         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15692         (dw2_get_cu): Likewise.
15693         (create_cu_from_index_list): Change objfile parameter to
15694         dwarf2_per_objfile.
15695         (create_cus_from_index_list): Get dwarf2_per_objfile from
15696         context, adjust calls.
15697         (create_cus_from_index): Likewise.
15698         (create_signatured_type_table_from_index): Change objfile
15699         parameter to dwarf2_per_objfile.
15700         (create_signatured_type_table_from_debug_names): Change objfile
15701         parameter to dwarf2_per_objfile.
15702         (create_addrmap_from_index): Likewise.
15703         (create_addrmap_from_aranges): Likewise.
15704         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15705         (dw2_setup): Remove.
15706         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15707         context.
15708         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15709         get_dwarf2_per_objfile.
15710         (dw2_forget_cached_source_info): Likewise.
15711         (dw2_map_symtabs_matching_filename): Likewise.
15712         (struct dw2_symtab_iterator) <index>: Remove.
15713         <dwarf2_per_objfile>: New field.
15714         (dw2_symtab_iter_init): Replace index parameter with
15715         dwarf2_per_objfile.
15716         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15717         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15718         (dw2_print_stats): Likewise.
15719         (dw2_dump): Likewise.
15720         (dw2_expand_symtabs_for_function): Likewise.
15721         (dw2_expand_all_symtabs): Likewise.
15722         (dw2_expand_symtabs_with_fullname): Likewise.
15723         (dw2_expand_marked_cus): Replace index and objfile parameters
15724         with dwarf2_per_objfile.
15725         (dw_expand_symtabs_matching_file_matcher): Add
15726         dwarf2_per_objfile parameter and adjust calls.
15727         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15728         adjust calls.
15729         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15730         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15731         adjust calls.
15732         (create_cus_from_debug_names_list): Replace objfile parameter
15733         with dwarf2_per_objfile and adjust calls.
15734         (create_cus_from_debug_names): Likewise.
15735         (dwarf2_read_debug_names): Likewise.
15736         (mapped_debug_names::namei_to_name): Adjust call.
15737         (dw2_debug_names_iterator::next): Likewise.
15738         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15739         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15740         (dw2_debug_names_dump): Likewise.
15741         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15742         (dw2_debug_names_expand_symtabs_matching): Likewise.
15743         (dwarf2_initialize_objfile): Likewise.
15744         (dwarf2_build_psymtabs): Likewise.
15745         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15746         this_cu.
15747         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15748         (read_and_check_comp_unit_head): Likewise.
15749         (read_abbrev_offset): Likewise.
15750         (create_debug_type_hash_table): Likewise.
15751         (create_debug_types_hash_table): Likewise.
15752         (create_all_type_units): Replace objfile parameter with
15753         dwarf2_per_objfile.
15754         (add_type_unit): Add dwarf2_per_objfile parameter.
15755         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15756         with dwarf2_per_objfile.
15757         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15758         (lookup_dwp_signatured_type): Likewise.
15759         (lookup_signatured_type): Likewise.
15760         (read_cutu_die_from_dwo): Likewise.
15761         (init_tu_and_read_dwo_dies): Likewise.
15762         (init_cutu_and_read_dies): Likewise.
15763         (init_cutu_and_read_dies_no_follow): Likewise.
15764         (allocate_type_unit_groups_table): Add objfile parameter.
15765         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15766         (get_type_unit_group): Likewise.
15767         (process_psymtab_comp_unit): Update call.
15768         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15769         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15770         (print_tu_stats): Likewise.
15771         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15772         in void* parameter.
15773         (build_type_psymtabs): Change objfile parameter to
15774         dwarf2_per_objfile.
15775         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15776         passed in void* parameter.
15777         (process_skeletonless_type_units): Change objfile parameter to
15778         dwarf2_per_objfile.
15779         (set_partial_user): Likewise.
15780         (dwarf2_build_psymtabs_hard): Likewise.
15781         (read_comp_units_from_section): Likewise.
15782         (create_all_comp_units): Likewise.
15783         (scan_partial_symbols): Update calls.
15784         (add_partial_symbol): Likewise.
15785         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15786         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15787         (process_queue): Add dwarf2_per_objfile parameter.
15788         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15789         (compute_compunit_symtab_includes): Likewise.
15790         (process_cu_includes): Add dwarf2_per_objfile parameter.
15791         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15792         (process_full_type_unit): Likewise.
15793         (process_imported_unit_die): Update call.
15794         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15795         (read_file_scope): Likewise.
15796         (allocate_dwo_file_hash_table): Add objfile parameter.
15797         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15798         (create_cus_hash_table): Likewise.
15799         (create_dwp_hash_table): Likewise.
15800         (create_dwo_unit_in_dwp_v1): Likewise.
15801         (create_dwp_v2_section): Likewise.
15802         (create_dwo_unit_in_dwp_v2): Likewise.
15803         (lookup_dwo_unit_in_dwp): Likewise.
15804         (try_open_dwop_file): Likewise.
15805         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15806         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15807         cleanup to include a reference to dwarf2_per_objfile.
15808         (open_dwp_file): Add dwarf2_per_objfile parameter.
15809         (open_and_init_dwp_file): Likewise.
15810         (get_dwp_file): Likewise.
15811         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15812         (queue_and_load_all_dwo_tus): Update call.
15813         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15814         data.
15815         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15816         (dwarf2_ranges_process): Likewise.
15817         (dwarf2_get_pc_bounds): Likewise.
15818         (mark_common_block_symbol_computed): Likewise.
15819         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15820         (dwarf2_read_abbrevs): Update call.
15821         (read_partial_die): Use dwarf2_per_objfile from cu.
15822         (find_partial_die): Likewise.
15823         (fixup_partial_die): Likewise.
15824         (read_attribute_value): Likewise.
15825         (read_indirect_string_at_offset_from): Add objfile parameter.
15826         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15827         parameter.
15828         (read_indirect_string_from_dwz): Add objfile parameter.
15829         (read_indirect_string): Add objfile parameter.
15830         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15831         (read_addr_index): Use dwarf2_per_objfile from cu.
15832         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15833         call dw2_setup.
15834         (read_str_index): Use dwarf2_per_objfile from cu.
15835         (get_debug_line_section): Likewise.
15836         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15837         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15838         (new_symbol_full): Use dwarf2_per_objfile from cu.
15839         (build_error_marker_type): Likewise.
15840         (lookup_die_type): Likewise.
15841         (determine_prefix): Likewise.
15842         (follow_die_offset): Likewise.
15843         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15844         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15845         (dwarf2_fetch_die_type_sect_off): Likewise.
15846         (dwarf2_get_die_type): Likewise.
15847         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15848         (get_signatured_type): Likewise.
15849         (get_DW_AT_signature_type): Likewise.
15850         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15851         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15852         (cu_debug_loc_section): Likewise.
15853         (fill_in_loclist_baton): Likewise.
15854         (dwarf2_symbol_mark_computed): Likewise.
15855         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15856         dwarf2_per_objfile.
15857         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15858         parameter.
15859         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15860         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15861         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15862         (set_die_type): Use dwarf2_free_objfile from cu.
15863         (get_die_type_at_offset): Likewise.
15864         (dwarf2_per_objfile_free): Don't assign global variable.
15865         (debug_names) <constructor>: Add dwarf2_per_objfile
15866         parameter, update m_debugstrlookup construction.
15867         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15868         parameter.
15869         <m_dwarf2_per_objfile>: New field.
15870         <lookup>: Use m_dwarf2_per_objfile.
15871         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15872         (psyms_seen_size): Likewise.
15873         (write_gdbindex): Replace objfile parameter with
15874         dwarf2_per_objfile.
15875         (write_debug_names): Likewise.
15876         (write_psymtabs_to_index): Likewise.
15877         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15878         calls.
15879
15880 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15881
15882         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15883         <dwarf2_per_objfile>: New field.
15884         (struct dwarf2_per_cu_data) <objfile>: Remove.
15885         <dwarf2_per_objfile>: New field.
15886         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15887         of objfile.
15888         (create_signatured_type_table_from_index): Likewise.
15889         (create_debug_type_hash_table): Likewise.
15890         (fill_in_sig_entry_from_dwo_entry): Likewise.
15891         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15892         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15893         objfile.
15894         (create_partial_symtab): Access objfile through
15895         dwarf2_per_objfile.
15896         (process_psymtab_comp_unit_reader): Likewise.
15897         (read_comp_units_from_section): Likewise.
15898         (scan_partial_symbols): Likewise.
15899         (add_partial_symbol): Likewise.
15900         (add_partial_subprogram): Likewise.
15901         (peek_die_abbrev): Likewise.
15902         (fixup_go_packaging): Likewise.
15903         (process_full_comp_unit): Likewise.
15904         (process_full_type_unit): Likewise.
15905         (process_imported_unit_die): Likewise.
15906         (dwarf2_compute_name): Likewise.
15907         (dwarf2_physname): Likewise.
15908         (read_import_statement): Likewise.
15909         (create_cus_hash_table): Assign dwarf2_physname instead of
15910         objfile.
15911         (read_func_scope): Access objfile through dwarf2_per_objfile.
15912         (read_lexical_block_scope): Likewise.
15913         (read_call_site_scope): Likewise.
15914         (read_variable): Likewise.
15915         (dwarf2_rnglists_process): Likewise.
15916         (dwarf2_ranges_process): Likewise.
15917         (dwarf2_ranges_read): Likewise.
15918         (dwarf2_record_block_ranges): Likewise.
15919         (dwarf2_add_field): Likewise.
15920         (dwarf2_add_member_fn): Likewise.
15921         (read_structure_type): Likewise.
15922         (process_structure_scope): Likewise.
15923         (read_enumeration_type): Likewise.
15924         (read_array_type): Likewise.
15925         (read_common_block): Likewise.
15926         (read_namespace_type): Likewise.
15927         (read_namespace): Likewise.
15928         (read_module_type): Likewise.
15929         (read_tag_pointer_type): Likewise.
15930         (read_tag_ptr_to_member_type): Likewise.
15931         (read_tag_string_type): Likewise.
15932         (read_subroutine_type): Likewise.
15933         (read_typedef): Likewise.
15934         (read_base_type): Likewise.
15935         (attr_to_dynamic_prop): Likewise.
15936         (read_subrange_type): Likewise.
15937         (read_unspecified_type): Likewise.
15938         (load_partial_dies): Likewise.
15939         (read_partial_die): Likewise.
15940         (find_partial_die): Likewise.
15941         (guess_partial_die_structure_name): Likewise.
15942         (fixup_partial_die): Likewise.
15943         (read_attribute_value): Likewise.
15944         (read_addr_index_from_leb128): Likewise.
15945         (dwarf2_read_addr_index): Likewise.
15946         (dwarf2_string_attr): Likewise.
15947         (lnp_state_machine::check_line_address): Likewise.
15948         (dwarf_decode_lines_1): Likewise.
15949         (dwarf_decode_lines): Likewise.
15950         (dwarf2_start_symtab): Likewise.
15951         (var_decode_location): Likewise.
15952         (new_symbol_full): Likewise.
15953         (dwarf2_const_value_data): Likewise.
15954         (dwarf2_const_value_attr): Likewise.
15955         (dwarf2_const_value): Likewise.
15956         (die_type): Likewise.
15957         (die_containing_type): Likewise.
15958         (lookup_die_type): Likewise.
15959         (guess_full_die_structure_name): Likewise.
15960         (anonymous_struct_prefix): Likewise.
15961         (dwarf2_name): Likewise.
15962         (follow_die_ref_or_sig): Likewise.
15963         (follow_die_offset): Likewise.
15964         (follow_die_ref): Likewise.
15965         (dwarf2_fetch_die_loc_sect_off): Likewise.
15966         (dwarf2_fetch_constant_bytes): Likewise.
15967         (dwarf2_fetch_die_type_sect_off): Likewise.
15968         (dwarf2_get_die_type): Likewise.
15969         (follow_die_sig): Likewise.
15970         (decode_locdesc): Likewise.
15971         (dwarf2_per_cu_objfile): Likewise.
15972         (dwarf2_per_cu_text_offset): Likewise.
15973         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15974         objfile.
15975         (set_die_type): Access objfile through
15976         dwarf2_per_objfile.
15977
15978 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15979
15980         * valprint.c (converted_character_d): Remove typedef.
15981         (DEF_VEC_O (converted_character_d)): Remove.
15982         (count_next_character): Use std::vector.
15983         (print_converted_chars_to_obstack): Likewise.
15984         (generic_printstr): Likewise.
15985
15986 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15987
15988         * xml-support.h (struct gdb_xml_value): Add constructor.
15989         <value>: Change type to unique_xmalloc_ptr.
15990         (gdb_xml_value_s): Remove typedef.
15991         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15992         (gdb_xml_element_start_handler): Change parameter type to
15993         std::vector.
15994         (xml_find_attribute): Likewise.
15995         * xml-support.c (xml_find_attribute): Change parameter type to
15996         std::vector and adjust.
15997         (gdb_xml_values_cleanup): Remove.
15998         (gdb_xml_parser::start_element): Adjust to std::vector.
15999         (xinclude_start_include): Change paraeter type to std::vector
16000         and adjust.
16001         * btrace.c (check_xml_btrace_version): Likewise.
16002         (parse_xml_btrace_block): Likewise.
16003         (parse_xml_btrace_pt_config_cpu): Likewise.
16004         (parse_xml_btrace_pt): Likewise.
16005         (parse_xml_btrace_conf_bts): Likewise.
16006         (parse_xml_btrace_conf_pt): Likewise.
16007         * memory-map.c (memory_map_start_memory): Likewise.
16008         (memory_map_start_property): Likewise.
16009         * osdata.c (osdata_start_osdata): Likewise.
16010         (osdata_start_item): Likewise.
16011         (osdata_start_column): Likewise.
16012         * remote.c (start_thread): Likewise.
16013         * solib-aix.c (library_list_start_library): Likewise.
16014         (library_list_start_list): Likewise.
16015         * solib-svr4.c (library_list_start_library): Likewise.
16016         (svr4_library_list_start_list): Likewise.
16017         * solib-target.c (library_list_start_segment): Likewise.
16018         (library_list_start_section): Likewise.
16019         (library_list_start_library): Likewise.
16020         (library_list_start_list): Likewise.
16021         * tracepoint.c (traceframe_info_start_memory): Likewise.
16022         (traceframe_info_start_tvar): Likewise.
16023         * xml-syscall.c (syscall_start_syscall): Likewise.
16024         * xml-tdesc.c (tdesc_start_target): Likewise.
16025         (tdesc_start_feature): Likewise.
16026         (tdesc_start_reg): Likewise.
16027         (tdesc_start_union): Likewise.
16028         (tdesc_start_struct): Likewise.
16029         (tdesc_start_flags): Likewise.
16030         (tdesc_start_enum): Likewise.
16031         (tdesc_start_field): Likewise.
16032         (tdesc_start_enum_value): Likewise.
16033         (tdesc_start_vector): Likewise.
16034
16035 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16036
16037         * extension.h (struct xmethod_worker) <clone>: Remove.
16038         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16039         Remove.
16040         (python_xmethod_worker::clone): Remove.
16041         * valops.c (find_overload_match): Use std::move instead of
16042         clone.
16043
16044 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16045
16046         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16047         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16048         <free_xmethod_worker_data>: Remove.
16049         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16050         <get_xmethod_arg_types>: Remove.
16051         <get_xmethod_result_type>: Remove.
16052         <invoke_xmethod>: Remove.
16053         * extension.c (new_xmethod_worker): Remove.
16054         (clone_xmethod_worker): Remove.
16055         (get_matching_xmethod_workers): Return void, pass std::vector by
16056         pointer.
16057         (get_xmethod_arg_types): Rename to...
16058         (xmethod_worker::get_arg_types): ... this, and adjust.
16059         (get_xmethod_result_type): Rename to...
16060         (xmethod_worker::get_result_type): ... this, and adjust.
16061         (invoke_xmethod): Remove.
16062         (free_xmethod_worker): Remove.
16063         (free_xmethod_worker_vec): Remove.
16064         * extension.h (enum ext_lang_rc): Move here from
16065         extension-priv.h.
16066         (struct xmethod_worker): Add constructor and destructor.
16067         <data>: Remove.
16068         <value>: Remove.
16069         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16070         virtual pure methods.
16071         <get_arg_types, get_result_type>: New methods.
16072         (xmethod_worker_ptr): Remove typedef.
16073         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16074         (xmethod_worker_vec): Remove typedef.
16075         (xmethod_worker_up): New typedef.
16076         (invoke_xmethod): Remove.
16077         (clone_xmethod_worker): Remove.
16078         (free_xmethod_worker): Remove.
16079         (free_xmethod_worker_vec): Remove.
16080         (get_xmethod_arg_types): Remove.
16081         (get_xmethod_result_type): Remove.
16082         * valops.c (find_method_list): Use std::vector, don't use
16083         intermediate vector.
16084         (value_find_oload_method_list): Use std::vector.
16085         (find_overload_match): Use std::vector.
16086         (find_oload_champ): Use std::vector.
16087         * value.c (value_free): Use operator delete.
16088         (value_of_xmethod): Rename to...
16089         (value_from_xmethod): ... this.  Don't assign
16090         xmethod_worker::value, take rvalue-reference.
16091         (result_type_of_xmethod): Adjust.
16092         (call_xmethod): Adjust.
16093         * value.h: Include extension.h.
16094         (struct xmethod_worker): Don't forward-declare.
16095         (value_of_xmethod): Rename to...
16096         (value_from_xmethod): ... this, take rvalue-reference.
16097         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16098         (struct python_xmethod_worker): ... this, add constructor and
16099         destructor.
16100         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16101         (gdbpy_free_xmethod_worker_data): Rename to...
16102         (python_xmethod_worker::~python_xmethod_worker): ... this and
16103         adjust.
16104         (gdbpy_clone_xmethod_worker_data): Rename to...
16105         (python_xmethod_worker::clone): ... this and adjust.
16106         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16107         temporary vector.
16108         (gdbpy_get_xmethod_arg_types): Rename to...
16109         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16110         (gdbpy_get_xmethod_result_type): Rename to...
16111         (python_xmethod_worker::do_get_result_type): ... this and
16112         adjust.
16113         (gdbpy_invoke_xmethod): Rename to...
16114         (python_xmethod_worker::invoke): ... this and adjust.
16115         (new_python_xmethod_worker): Rename to...
16116         (python_xmethod_worker::python_xmethod_worker): ... this and
16117         adjust.
16118         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16119         Remove.
16120         (gdbpy_free_xmethod_worker_data): Remove.
16121         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16122         (gdbpy_get_xmethod_arg_types): Remove.
16123         (gdbpy_get_xmethod_result_type): Remove.
16124         (gdbpy_invoke_xmethod): Remove.
16125         * python/python.c (python_extension_ops): Remove obsolete
16126         callbacks.
16127
16128 2018-01-05  Pedro Alves  <palves@redhat.com>
16129
16130         PR gdb/18653
16131         * common/signals-state-save-restore.c
16132         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16133         find a custom handler preinstalled, instead of internal erroring.
16134         But only warn if !quiet.
16135         * common/signals-state-save-restore.h
16136         (save_original_signals_state): New parameter 'quiet'.
16137         * main.c (captured_main_1): Move save_original_signals_state call
16138         after option handling, and pass QUIET.
16139
16140 2018-01-05  Pedro Alves  <palves@redhat.com>
16141
16142         * spu-tdep.c (spu_catch_start): Pass
16143         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16144
16145 2018-01-05  Pedro Alves  <palves@redhat.com>
16146
16147         PR gdb/22670
16148         * ada-lang.c (literal_symbol_name_matcher): New function.
16149         (ada_get_symbol_name_matcher): Use it for
16150         symbol_name_match_type::SEARCH_NAME.
16151         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16152         it down instead of assuming symbol_name_match_type::FULL.
16153         * block.h (block_lookup_symbol): New parameter 'match_type'.
16154         * c-valprint.c (print_unpacked_pointer): Use
16155         lookup_symbol_search_name instead of lookup_symbol.
16156         * compile/compile-object-load.c (get_out_value_type): Pass down
16157         symbol_name_match_type::SEARCH_NAME.
16158         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16159         symbol_name_match_type::FULL.
16160         * cp-support.c (cp_get_symbol_name_matcher): Handle
16161         symbol_name_match_type::SEARCH_NAME.
16162         * infrun.c (insert_exception_resume_breakpoint): Use
16163         lookup_symbol_search_name.
16164         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16165         * psymtab.c (maintenance_check_psymtabs): Use
16166         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16167         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16168         SYMBOL_SEARCH_NAME.
16169         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16170         if symbol_name_match_type::SEARCH_NAME.
16171         (lookup_symbol_in_language): Pass down
16172         symbol_name_match_type::FULL.
16173         (lookup_symbol_search_name): New.
16174         (lookup_language_this): Pass down
16175         symbol_name_match_type::SEARCH_NAME.
16176         (lookup_symbol_aux, lookup_local_symbol): New parameter
16177         'match_type'.  Pass it down.
16178         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16179         (lookup_symbol_search_name): New declaration.
16180         (lookup_symbol_in_block): New 'match_type' parameter.
16181
16182 2018-01-05  Pedro Alves  <palves@redhat.com>
16183
16184         PR gdb/22670
16185         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16186         ada_lookup_symbol.
16187         (ada_lookup_symbol): Reimplement in terms of
16188         ada_lookup_symbol_list, bits factored out from
16189         ada_lookup_encoded_symbol.
16190
16191 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16192
16193         * ada-exp.y (write_object_renaming): When subscripting an array
16194         using a symbol as the index, pass the block in call to
16195         ada_lookup_encoded_symbol when looking that symbol up.
16196
16197 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16198
16199         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16200         TYPE_INDEX_TYPE.
16201
16202 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16203
16204         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16205         the case where VALUE_LVAL (val0) is not lval_memory.
16206
16207 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16208
16209         * ada-valprint.c (print_optional_low_bound): Handle
16210         character-indexed array printing like boolean-indexed array
16211         printing.
16212
16213 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16214
16215         * NEWS: Create a new section for the next release branch.
16216         Rename the section of the current branch, now that it has
16217         been cut.
16218
16219 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16220
16221         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16222         * version.in: Bump version to 8.1.50.DATE-git.
16223
16224 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16225
16226         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16227         Add field.
16228         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16229         Add field.
16230         (default_exception_support_info) <catch_handlers_sym>: Add field.
16231         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16232         (ada_exception_name_addr_1): Add "catch handlers" handling.
16233         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16234         Update all callers.
16235         (create_excep_cond_exprs) <ex>: Add parameter.
16236         (re_set_exception): Update create_excep_cond_exprs call.
16237         (print_it_exception, print_one_exception, print_mention_exception)
16238         (print_recreate_exception): Add "catch handler" handling.
16239         (allocate_location_catch_handlers, re_set_catch_handlers)
16240         (check_status_catch_handlers, print_it_catch_handlers)
16241         (print_one_catch_handlers, print_mention_catch_handlers)
16242         (print_recreate_catch_handlers): New function.
16243         (catch_handlers_breakpoint_ops): New variable.
16244         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16245         Add parameter.  Add "catch handler" handling.
16246         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16247         Add "catch handler" handling.
16248         (ada_exception_catchpoint_cond_string): Add "catch handler"
16249         handling.
16250         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16251         call.
16252         (catch_ada_handlers_command): New function.
16253         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16254         operations structure.
16255         (_initialize_ada_language): Add "catch handlers" command entry.
16256         * NEWS: Document "catch handlers" feature.
16257
16258 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16259
16260         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16261         account when creating the array type of the slice.
16262         (ada_value_slice): Likewise.
16263
16264 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16265
16266         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16267         New enum value.
16268         (create_array_type_with_stride): Add byte_stride_prop parameter.
16269         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16270         New parameter.  Update all callers in this file.
16271         (array_type_has_dynamic_stride): New function.
16272         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16273         of arrays with dynamic byte strides.
16274         * dwarf2read.c (read_array_type): Add support for dynamic
16275         DW_AT_byte_stride attributes.
16276
16277 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16278
16279         * dwarf2read.c (read_unspecified_type): Treat
16280         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16281
16282 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16283
16284         Update copyright year range in all GDB files.
16285
16286 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16287
16288         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16289         and gdb/testsuite/gdb.base/step-line.c.
16290
16291 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16292
16293         * copyright.py (main): Dump the contents of
16294         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16295         even if BY_HAND is empty.
16296
16297 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16298
16299         * top.c (print_gdb_version): Update Copyright year in version
16300         message.
16301
16302 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16303
16304         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16305
16306 For older changes see ChangeLog-2017.
16307 \f
16308 Local Variables:
16309 mode: change-log
16310 left-margin: 8
16311 fill-column: 74
16312 version-control: never
16313 coding: utf-8
16314 End: