Avoid buffer overflow in value_x_unop
[external/binutils.git] / gdb / ChangeLog
1 2018-11-29  Tom Tromey  <tom@tromey.com>
2
3         * valarith.c (value_x_unop): Don't set argvec[3].
4
5 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
6
7         PR gdb/23917
8         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
9         semicolon.
10
11 2018-11-26  Pedro Alves  <palves@redhat.com>
12
13         * procfs.c (procfs_notice_thread): Replace uses of
14         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
15         * sol-thread.c (sol_thread_target::wait)
16         (sol_update_thread_list_callback): Likewise.
17
18 2018-11-25  Tom Tromey  <tom@tromey.com>
19
20         * ui-out.c (ui_out::field_fmt): Remove comment.
21         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
22         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
23
24 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
25
26         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
27         leak in open_source_file' has been partially undone by '2179fbc36d23
28         Return scoped_fd from open_source_file'. Re-add the transfer of
29         current s->fullname to the unique_xmalloc_ptr fullname given
30         to find_and_open_source.
31
32 2018-11-23  Pedro Alves  <palves@redhat.com>
33
34         * gdbthread.h (enum thread_state): Move comments here.
35         (is_running, is_stopped, is_exited): Remove declarations.
36
37 2018-11-22  Pedro Alves  <palves@redhat.com>
38
39         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
40         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
41         ALL_NON_EXITED_THREADS with all_non_exited_threads.
42         (print_one_breakpoint_location): Replace ALL_INFERIORS with
43         all_inferiors.
44         * bsd-kvm.c: Include inferior.h.
45         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
46         with all_non_exited_threads.
47         * common/filtered-iterator.h: New.
48         * common/safe-iterator.h: New.
49         * corelow.c (core_target_open): Don't call init_thread_list here.
50         * darwin-nat.c (thread_info_from_private_thread_info): Replace
51         ALL_THREADS with all_threads.
52         * fbsd-nat.c (fbsd_nat_target::resume): Replace
53         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
54         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
55         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
56         * fork-child.c (postfork_hook): Don't call init_thread_list here.
57         * gdbarch-selftests.c (register_to_value_test): Adjust.
58         * gdbthread.h: Don't include "inferior.h" here.
59         (struct inferior): Forward declare.
60         (enum step_over_calls_kind): Moved here from inferior.h.
61         (thread_info::deletable): Definition moved to thread.c.
62         (find_thread_ptid (inferior *, ptid_t)): Declare.
63         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
64         Include "thread-iter.h".
65         (all_threads, all_non_exited_threads, all_threads_safe): New.
66         (any_thread_p): Declare.
67         (thread_list): Delete.
68         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
69         all_non_exited_threads.
70         (proceed_after_attach_callback): Delete.
71         (proceed_after_attach): Take an inferior pointer instead of an
72         integer PID.  Adjust to use range-for.
73         (attach_post_wait): Pass down inferior pointer instead of pid.
74         Use range-for instead of ALL_NON_EXITED_THREADS.
75         (detach_command): Remove init_thread_list call.
76         * inferior-iter.h: New.
77         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
78         (delete_thread_of_inferior): Delete.
79         (delete_inferior, exit_inferior_1): Use range-for with
80         inf->threads_safe() instead of iterate_over_threads.
81         (inferior_appeared): Call init_thread_list here.
82         (discard_all_inferiors): Use all_non_exited_inferiors.
83         (find_inferior_id, find_inferior_pid): Use all_inferiors.
84         (iterate_over_inferiors): Use all_inferiors_safe.
85         (have_inferiors, number_of_live_inferiors): Use
86         all_non_exited_inferiors.
87         (number_of_inferiors): Use all_inferiors and std::distance.
88         (print_inferior): Use all_inferiors.
89         * inferior.h: Include gdbthread.h.
90         (enum step_over_calls_kind): Moved to gdbthread.h.
91         (struct inferior) <thread_list>: New field.
92         <threads, non_exited_threads, threads_safe>: New methods.
93         (ALL_INFERIORS): Delete.
94         Include "inferior-iter.h".
95         (ALL_NON_EXITED_INFERIORS): Delete.
96         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
97         functions.
98         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
99         ALL_NON_EXITED_THREADS with all_non_exited_threads.
100         * infrun.c (follow_exec): Use all_threads_safe.
101         (clear_proceed_status, proceed): Use all_non_exited_threads.
102         (init_wait_for_inferior): Don't clear inline frame state here.
103         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
104         all_threads instead of ALL_NON_EXITED_THREADS.
105         (random_pending_event_thread): Use all_non_exited_threads instead
106         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
107         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
108         instead of ALL_NON_EXITED_THREADS.
109         (handle_no_resumed): Use all_non_exited_threads instead of
110         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
111         ALL_INFERIORS.
112         (restart_threads, switch_back_to_stepped_thread): Use
113         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
114         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
115         all_inferiors.
116         (kill_unfollowed_fork_children): Use inf->non_exited_threads
117         instead of ALL_NON_EXITED_THREADS.
118         * linux-tdep.c (linux_make_corefile_notes): Use
119         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
120         * linux-thread-db.c (thread_db_target::update_thread_list):
121         Replace ALL_INFERIORS with all_inferiors.
122         (thread_db_target::thread_handle_to_thread_info): Use
123         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
124         * mi/mi-interp.c (multiple_inferiors_p): New.
125         (mi_on_resume_1): Simplify using all_non_exited_threads and
126         multiple_inferiors_p.
127         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
128         instead of ALL_NON_EXITED_THREADS.
129         * nto-procfs.c (nto_procfs_target::open): Don't call
130         init_thread_list here.
131         * record-btrace.c (record_btrace_target_open)
132         (record_btrace_target::stop_recording)
133         (record_btrace_target::close)
134         (record_btrace_target::record_is_replaying)
135         (record_btrace_target::resume, record_btrace_target::wait)
136         (record_btrace_target::record_stop_replaying): Use
137         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
138         * record-full.c (record_full_wait_1): Use all_non_exited_threads
139         instead of ALL_NON_EXITED_THREADS.
140         * regcache.c (cooked_read_test): Remove reference to global
141         thread_list.
142         * remote-sim.c (gdbsim_target::create_inferior): Don't call
143         init_thread_list here.
144         * remote.c (remote_target::update_thread_list): Use
145         all_threads_safe instead of ALL_NON_EXITED_THREADS.
146         (remote_target::process_initial_stop_replies): Replace
147         ALL_INFERIORS with all_non_exited_inferiors and use
148         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
149         (remote_target::open_1): Don't call init_thread_list here.
150         (remote_target::append_pending_thread_resumptions)
151         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
152         instead of ALL_NON_EXITED_THREADS.
153         (remote_target::commit_resume)
154         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
155         with all_non_exited_inferiors and use all_non_exited_threads
156         instead of ALL_NON_EXITED_THREADS.
157         (remote_target::kill_new_fork_children): Use
158         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
159         init_thread_list and init_wait_for_inferior calls.
160         (remote_target::remote_btrace_maybe_reopen)
161         (remote_target::thread_handle_to_thread_info): Use
162         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
163         * target.c (target_terminal::restore_inferior)
164         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
165         all_non_exited_inferiors.
166         * thread-iter.c: New file.
167         * thread-iter.h: New file.
168         * thread.c: Include "inline-frame.h".
169         (thread_list): Delete.
170         (clear_thread_inferior_resources): Call clear_inline_frame_state.
171         (init_thread_list): Use all_threads_safe instead of
172         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
173         (new_thread): Adjust to per-inferior thread lists.
174         (add_thread_silent): Pass inferior to find_thread_ptid.
175         (thread_info::deletable): New, moved from the header.
176         (delete_thread_1): Adjust to per-inferior thread lists.
177         (find_thread_global_id): Use inf->threads().
178         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
179         find_thread_ptid.
180         (find_thread_ptid(inferior*, ptid_t)): New overload.
181         (iterate_over_threads): Use all_threads_safe.
182         (any_thread_p): New.
183         (thread_count): Use all_threads and std::distance.
184         (live_threads_count): Use all_non_exited_threads and
185         std::distance.
186         (valid_global_thread_id): Use all_threads.
187         (in_thread_list): Use find_thread_ptid.
188         (first_thread_of_inferior): Adjust to per-inferior thread lists.
189         (any_thread_of_inferior, any_live_thread_of_inferior): Use
190         inf->non_exited_threads().
191         (prune_threads, delete_exited_threads): Use all_threads_safe.
192         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
193         (set_resumed, set_running): Use all_non_exited_threads.
194         (is_thread_state, is_stopped, is_exited, is_running)
195         (is_executing): Delete.
196         (set_executing, set_stop_requested, finish_thread_state): Use
197         all_non_exited_threads.
198         (print_thread_info_1): Use all_inferiors and all_threads.
199         (thread_apply_all_command): Use all_non_exited_threads.
200         (thread_find_command): Use all_threads.
201         (update_threads_executing): Use all_non_exited_threads.
202         * tid-parse.c (parse_thread_id): Use inf->threads.
203         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
204
205 2018-11-22  Pedro Alves  <palves@redhat.com>
206
207         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
208         switch to it before calling into try_open_exec_file.
209
210 2018-11-22  Pedro Alves  <palves@redhat.com>
211
212         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
213         inferior_thread instead of find_thread_ptid, and only when
214         inferior_ptid is not null_ptid.
215         * inferior.c (add_inferior): Don't include target_pid_to_str
216         output when the inferior is not started.
217         * python/py-inferior.c (python_on_normal_stop): Don't use
218         find_thread_ptid.
219         (tui_on_user_selected_context_changed): Use inferior_thread
220         instead of find_thread_ptid, and only when inferior_ptid is not
221         null_ptid.
222
223 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
224
225         PR python/23714
226         * gdb/python/python.c (execute_gdb_command): Call
227         prevent_dont_repeat earlier to avoid affecting dont_repeat.
228
229 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
230
231         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
232         (HFILES_NO_SRCDIR): Add arch/riscv.h.
233         * arch/riscv.c: New file.
234         * arch/riscv.h: New file.
235         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
236         this list, and add arch/riscv.o.
237         * features/Makefile: Add riscv features.
238         * features/riscv/32bit-cpu.c: New file.
239         * features/riscv/32bit-cpu.xml: New file.
240         * features/riscv/32bit-csr.c: New file.
241         * features/riscv/32bit-csr.xml: New file.
242         * features/riscv/32bit-fpu.c: New file.
243         * features/riscv/32bit-fpu.xml: New file.
244         * features/riscv/64bit-cpu.c: New file.
245         * features/riscv/64bit-cpu.xml: New file.
246         * features/riscv/64bit-csr.c: New file.
247         * features/riscv/64bit-csr.xml: New file.
248         * features/riscv/64bit-fpu.c: New file.
249         * features/riscv/64bit-fpu.xml: New file.
250         * features/riscv/rebuild-csr-xml.sh: New file.
251         * riscv-tdep.c: Add 'arch/riscv.h' include.
252         (riscv_gdb_reg_names): Delete.
253         (csr_reggroup): New global.
254         (struct riscv_register_alias): Delete.
255         (struct riscv_register_feature): New structure.
256         (riscv_register_aliases): Delete.
257         (riscv_xreg_feature): New global.
258         (riscv_freg_feature): New global.
259         (riscv_virtual_feature): New global.
260         (riscv_csr_feature): New global.
261         (riscv_create_csr_aliases): New function.
262         (riscv_read_misa_reg): Delete.
263         (riscv_has_feature): Delete.
264         (riscv_isa_xlen): Simplify, just return cached xlen.
265         (riscv_isa_flen): Simplify, just return cached flen.
266         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
267         (riscv_register_name): Update to make use of tdesc_register_name.
268         Look up xreg and freg names in the new globals riscv_xreg_feature
269         and riscv_freg_feature.  Don't supply csr aliases here.
270         (riscv_fpreg_q_type): Delete.
271         (riscv_register_type): Use tdesc_register_type in almost all
272         cases, override the returned type in a few specific cases only.
273         (riscv_print_one_register_info): Handle errors reading registers.
274         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
275         registers that are otherwise unknown to GDB.  Also check the
276         csr_reggroup.
277         (riscv_print_registers_info): Remove assert about upper register
278         number, and use gdbarch_register_reggroup_p instead of
279         short-cutting.
280         (riscv_find_default_target_description): New function.
281         (riscv_check_tdesc_feature): New function.
282         (riscv_add_reggroups): New function.
283         (riscv_setup_register_aliases): New function.
284         (riscv_init_reggroups): New function.
285         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
286         setup register groups.  Register new riscv debug variable.
287         * riscv-tdep.h: Add 'arch/riscv.h' include.
288         (struct gdbarch_tdep): Remove abi union, and add
289         riscv_gdbarch_features field.  Remove cached quad floating point
290         type, and provide initialisation for double type field.
291         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
292         the list of targets using the feature based target descriptions.
293         * NEWS: Mention target description support.
294
295 2018-11-21  Pedro Alves  <palves@redhat.com>
296
297         * valops.c (find_method_list, value_find_oload_method_list)
298         (find_overload_match, find_oload_champ): Rename parameters and
299         locals.
300
301 2018-11-21  Pedro Alves  <palves@redhat.com>
302
303         * valops.c (find_method_list): Replace pointer and length
304         parameters with an gdb::array_view.  Adjust.
305         (value_find_oload_method_list): Likewise.
306         (find_overload_match): Use gdb::array_view for methods list.
307         Adjust to find_oload_champ interface change.
308         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
309         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
310
311 2018-11-21  Pedro Alves  <palves@redhat.com>
312
313         * gdbtypes.c (compare_badness): Change type of parameters to const
314         reference.  Adjust to badness_vector being a std::vector now.
315         (rank_function): Adjust to badness_vector being a std::vector now.
316         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
317         (LENGTH_MATCH): Delete.
318         (compare_badness): Change type of parameters to const reference.
319         (rank_function): Return a badness_vector by value now.
320         (find_overload_match): Adjust to badness_vector being a
321         std::vector now.  Remove cleanups.
322         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
323         badness_vector pointer.
324         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
325         a badness_vector pointer.  Adjust to badness_vector being a
326         std::vector now.  Remove cleanups.
327         (find_oload_champ): 'oload_champ_bv' parameter now
328         a badness_vector pointer.  Adjust to badness_vector being a
329         std::vector now.  Remove cleanups.
330
331 2018-11-21  Pedro Alves  <palves@redhat.com>
332
333         * cp-support.c (sym_return_val_size, sym_return_val_index)
334         (sym_return_val): Delete.
335         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
336         add to the vector.
337         (make_symbol_overload_list): Adjust to return a std::vector
338         instead of maintaining a global open coded vector.
339         (make_symbol_overload_list_block): Add std::vector parameter.
340         (make_symbol_overload_list_block): Rename to ...
341         (add_symbol_overload_list_block): ... this and add std::vector
342         parameter.
343         (make_symbol_overload_list_namespace): Rename to ...
344         (add_symbol_overload_list_namespace): ... this and add std::vector
345         parameter.
346         (make_symbol_overload_list_adl_namespace): Rename to ...
347         (add_symbol_overload_list_adl_namespace): ... this and add
348         std::vector parameter.
349         (make_symbol_overload_list_adl): Delete.
350         (add_symbol_overload_list_adl): New.
351         (make_symbol_overload_list_using): Rename to ...
352         (add_symbol_overload_list_using): ... this and add std::vector
353         parameter.
354         (make_symbol_overload_list_qualified): Rename to ...
355         (add_symbol_overload_list_qualified): ... this and add std::vector
356         parameter.
357         * cp-support.h: Include "common/array-view.h" and <vector>.
358         (make_symbol_overload_list): Change return type to std::vector.
359         (make_symbol_overload_list_adl): Delete declaration.
360         (add_symbol_overload_list_adl): New declaration.
361         * valops.c (find_overload_match): Local 'oload_syms' now a
362         std::vector.
363         (find_oload_champ_namespace): 'oload_syms' parameter now a
364         std::vector pointer.
365         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
366         std::vector pointer.  Adjust to new make_symbol_overload_list
367         interface.
368
369 2018-11-21  Pedro Alves  <palves@redhat.com>
370
371         * common/array-view.h (array_view::splice(size_type, size_t)): New.
372         (array_view::splice(size_type)): New.
373         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
374         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
375         std::vector.
376         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
377         * extension.h: Include "common/array-view.h".
378         (xmethod_worker::invoke): Adjust to use gdb::array_view.
379         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
380         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
381         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
382         (xmethod_worker::do_get_result_type): Adjust to use
383         gdb::array_view.
384         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
385         * gdbtypes.h: Include "common/array-view.h".
386         (rank_function): Adjust to use gdb::array_view.
387         * python/py-xmethods.c (python_xmethod_worker::invoke)
388         (python_xmethod_worker::do_get_arg_types)
389         (python_xmethod_worker::do_get_result_type)
390         (python_xmethod_worker::invoke): Adjust to new interfaces.
391         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
392         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
393         * valops.c (find_overload_match, find_oload_champ_namespace)
394         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
395         gdb:array_view and the new xmethod_worker interfaces.
396         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
397         gdb::array_view.
398         * value.h (find_overload_match, result_type_of_xmethod)
399         (call_xmethod): Adjust to use gdb::array_view.
400         * unittests/array-view-selftests.c: Add slicing tests.
401
402 2018-11-21  Pedro Alves  <palves@redhat.com>
403
404         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
405         * common/array-view.h (make_array_view): New.
406         * compile/compile-object-run.c (compile_object_run): Adjust to
407         pass an array_view.
408         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
409         * eval.c (eval_call): Adjust to pass an array_view.
410         (evaluate_subexp_standard): Adjust to pass an array_view.
411         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
412         * guile/scm-value.c (gdbscm_value_call): Likewise.
413         * infcall.c (push_dummy_code): Replace pointer + size parameters
414         with an array_view parameter.
415         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
416         adjust.
417         * infcall.h: Include "common/array-view.h".
418         (call_function_by_hand, call_function_by_hand_dummy): Replace
419         pointer + size parameters with an array_view parameter.
420         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
421         * linux-tdep.c (linux_infcall_mmap): Likewise.
422         * objc-lang.c (lookup_objc_class, lookup_child_selector)
423         (value_nsstring, print_object_command): Likewise.
424         * python/py-value.c (valpy_call): Likewise.
425         * rust-lang.c (rust_evaluate_funcall): Likewise.
426         * spu-tdep.c (flush_ea_cache): Likewise.
427         * valarith.c (value_x_binop, value_x_unop): Likewise.
428         * valops.c (value_allocate_space_in_inferior): Likewise.
429         * unittests/array-view-selftests.c (run_tests): Add
430         gdb::make_array_view test.
431
432 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
433
434         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
435         than a fixed size buffer.
436
437 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
438
439         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
440         and remove insertion of extra spaces in GDB's output.
441         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
442         Layout field into a temporary buffer, and then output it as a
443         string field.
444
445 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
446
447         * NEWS: Document the language choice done by
448         'info [types|functions|variables]|rbreak'.
449
450 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
451
452         * symtab.c (treg_matches_sym_type_name): Use
453         scoped_switch_to_sym_language_if_auto instead of local logic.
454         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
455         to switch to SYM language when language mode is auto.
456
457 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
458
459         * language.h (scoped_switch_to_sym_language_if_auto): New class.
460
461 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
462
463         * symtab.c (search_symbols): Properly check absence of type regexp
464         before entering the loop scanning the minimal symbols.
465
466 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
467
468         * s12z-tdep.c (s12z_extract_return_value): New function.
469         (inv_reg_perm) New array.
470         (s12z_return_value): Populate readbuf if non-null.
471
472 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
473
474         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
475         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
476         to MinGW fixed by Gnulib.
477         (O_NOINHERIT): Define if not defined.
478
479 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
480
481         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
482
483 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
484
485         * infrun.c (displaced_step_inferior_state) <next>: Remove.
486
487 2018-11-19  Tom Tromey  <tom@tromey.com>
488
489         * source.c (get_filename_and_charpos): Return void.
490
491 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
492
493         * skip.c (_initialize_step_skip): Fix "info skip" help.
494
495 2018-11-16  Tom Tromey  <tom@tromey.com>
496
497         PR rust/23625:
498         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
499
500 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
501
502         * infrun.c (displaced_step_inferior_states): Change type to
503         std::forward_list.
504         (get_displaced_stepping_state): Adjust.
505         (displaced_step_in_progress_any_inferior): Adjust.
506         (add_displaced_stepping_state): Adjust.
507         (remove_displaced_stepping_state): Adjust.
508
509 2018-11-18  Tom Tromey  <tom@tromey.com>
510
511         PR build/23814:
512         * target-delegates.c: Rebuild.
513         * ia64-linux-nat.c (class ia64_linux_nat_target)
514         <have_steppable_watchpoint>: Use override.  Return true, not 1.
515         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
516         "self" argument.
517         (ia64_linux_nat_target::low_new_thread): Rename.
518         (class ia64_linux_nat_target) <read_description>: Don't declare.
519         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
520         bool.
521
522 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
523
524         PR gdb/22736:
525         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
526         lang_struct_return code.
527
528 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
529
530         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
531         return_method.
532         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
533         * amd64-tdep.c (amd64_push_arguments): Likewise.
534         (amd64_push_dummy_call): Likewise.
535         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
536         * arc-tdep.c (arc_push_dummy_call): Likewise.
537         * arm-tdep.c (arm_push_dummy_call): Likewise.
538         * avr-tdep.c (avr_push_dummy_call): Likewise.
539         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
540         * cris-tdep.c (cris_push_dummy_call): Likewise.
541         * csky-tdep.c (csky_push_dummy_call): Likewise.
542         * frv-tdep.c (frv_push_dummy_call): Likewise.
543         * gdbarch.c: Regenerate.
544         * gdbarch.h: Regenerate.
545         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
546         return_method.
547         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
548         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
549         (hppa64_push_dummy_call): Likewise.
550         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
551         * i386-tdep.c (i386_push_dummy_call): Likewise.
552         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
553         * infcall.c (call_function_by_hand_dummy): Likewise.
554         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
555         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
556         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
557         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
558         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
559         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
560         * mep-tdep.c (mep_push_dummy_call): Likewise.
561         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
562         (mips_n32n64_push_dummy_call): Likewise.
563         (mips_o32_push_dummy_call): Likewise.
564         (mips_o64_push_dummy_call): Likewise.
565         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
566         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
567         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
568         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
569         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
570         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
571         (ppc64_sysv_abi_push_dummy_call): Likewise.
572         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
573         (ppc64_sysv_abi_push_dummy_call): Likewise.
574         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
575         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
576         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
577         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
578         * rx-tdep.c (rx_push_dummy_call): Likewise.
579         * s390-tdep.c (s390_push_dummy_call): Likewise.
580         * score-tdep.c (score_push_dummy_call): Likewise.
581         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
582         (sh_push_dummy_call_nofpu): Likewise.
583         * sparc-tdep.c (sparc32_store_arguments): Likewise.
584         (sparc32_push_dummy_call): Likewise.
585         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
586         (sparc64_push_dummy_call): Likewise.
587         * spu-tdep.c (spu_push_dummy_call): Likewise.
588         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
589         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
590         * v850-tdep.c (v850_push_dummy_call): Likewise.
591         * vax-tdep.c (vax_push_dummy_call): Likewise.
592         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
593         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
594
595 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
596
597         * gdbarch.sh (enum function_call_return_method): Add enum.
598         * gdbarch.h: Regenerate.
599         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
600
601 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
602
603         * unittests/copy_bitwise-selftests.c: New file.
604         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
605         (selftests::copy_bitwise_tests): Delete, moving this code to
606         unittests/copy_bitwise-selftests.c instead.
607         (_initialize_utils): Do not register copy_bitwise tests.
608         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
609         unittests/copy_bitwise-selftests.c.
610
611 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
612
613         * ada-lang.c (move_bits): Delete. Update all callers to use
614         copy_bitwise instead.
615         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
616         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
617         Move from here to utils.c.
618         (_initialize_dwarf2loc): Remove call to register copy_bitwise
619         selftests.
620         * utils.h (copy_bitwise): Add declaration.
621         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
622         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
623         Moved here from dwarf2loc.c.
624         (_initialize_utils): Register copy_bitwise selftests.
625
626 2018-11-14  Jim Wilson  <jimw@sifive.com>
627
628         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
629         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
630         then increment next_regnum if odd.
631         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
632         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
633         function type.  Pass new arg to riscv_arg_location based on function
634         type.
635         (riscv_return_value): Pass new arg to riscv_arg_location.
636
637         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
638         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
639         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
640
641         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
642         setting len.  New local align, set to max of arg align and xlen,
643         and pass to first riscv_assign_stack_location call.
644
645 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
646
647         * skip.c (complete_skip_number): New function.
648         (_initialize_step_skip): Add completers to some skip commands.
649
650 2018-11-09  Tom Tromey  <tom@tromey.com>
651
652         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
653         (struct remote_g_packet_data): Derive from allocate_on_obstack.
654         <guesses>: Now a std::vector.
655         (remote_g_packet_data_init, register_remote_g_packet_guess):
656         Update.
657         (remote_read_description_p): Update.  Return bool.
658         (remote_target::read_description): Update.
659         (struct remote_g_packet_guess): Add constructor.
660
661 2018-11-09  Tom Tromey  <tom@tromey.com>
662
663         * common/scoped_fd.h (class scoped_fd): Add move constructor and
664         move assignment operator.
665         * psymtab.c (psymtab_to_fullname): Update.
666         * source.h (open_source_file): Return scoped_fd.
667         (find_and_open_source): Likewise.
668         * source.c (open_source_file): Return scoped_fd.
669         (get_filename_and_charpos): Update.
670         (print_source_lines_base): Update.  Use scoped_fd::to_file.
671         (forward_search_command): Likewise.
672         (reverse_search_command): Likewise.
673         (find_and_open_source): Return scoped_fd.
674         * tui/tui-source.c (tui_set_source_content): Update.  Use
675         gdb_file_up.
676
677 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
678
679         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
680         overflow.
681
682 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
683
684         * configure: Regenerate.
685
686 2018-11-09  Tom de Vries  <tdevries@suse.de>
687
688         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
689         unconditionally, to set the language of the symbol.  Manage freeing
690         returned pointer using gdb::unique_xmalloc_ptr.
691
692 2018-11-08  Tom Tromey  <tom@tromey.com>
693
694         * record.c (require_record_target): Upper-case "<TAB>".
695
696 2018-11-08  Tom Tromey  <tom@tromey.com>
697
698         * python/lib/gdb/command/pretty_printers.py
699         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
700
701 2018-11-08  Tom Tromey  <tom@tromey.com>
702
703         PR gdb/23555:
704         PR gdb/23838:
705         * target.h (target_supports_terminal_ours): Return bool.
706         * target.c (target_supports_terminal_ours): Handle case where
707         current_top_target returns nullptr.  Return bool.
708
709 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
710
711         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
712         return the correct count for potential HFAs.
713
714 2018-11-08  Jan Beulich  <jbeulich@suse.com>
715
716         * i387-tdep.c (i387_supply_xsave): Split handling of
717         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
718         (i387_collect_xsave): Likewise.
719
720 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
721
722         * riscv-tdep.c (riscv_insn::decode): Update header comment.
723         (riscv_frame_this_id): Catch errors thrown while building the
724         frame cache, leave the frame id as the default, which is the outer
725         frame id.
726
727 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
728
729         * ada-lang.c (read_atcb): Only set task_info->called_task if
730         task_info->state == Entry_Caller_Sleep.
731         (print_ada_task_info): Do not check task_info->state before
732         checking task_info->called_task.
733         (info_task): Likewise.
734
735 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
736
737         * ada-tasks.c (read_atcb): Clear task_info before computing
738         the value of each of its fields.
739
740 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
741
742         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
743         NULL before dereferencing it.
744
745 2018-11-06  Tom de Vries  <tdevries@suse.de>
746
747         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
748         program headers.
749
750 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
751
752         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
753         so that it applies to uclinux as well.
754
755 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
756
757         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
758         when on AAPCS.
759
760 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
761
762         * riscv-fbsd-nat.c (getregs_supplies): Return true for
763         RISCV_CSR_SSTATUS_REGNUM.
764
765 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
766
767         * source.c (open_source_file): Fix leak by transferring the
768         current s->fullname to the unique_xmalloc_ptr fullname given
769         to find_and_open_source.
770
771 2018-11-04  Tom Tromey  <tom@tromey.com>
772
773         * varobj.c (install_default_visualizer): Update.
774         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
775         Return gdbpy_ref.
776         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
777         (find_pretty_printer_from_progspace)
778         (find_pretty_printer_from_gdb, find_pretty_printer)
779         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
780         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
781         Update.
782
783 2018-11-04  Tom Tromey  <tom@tromey.com>
784
785         * python/python.c (gdbpy_parameter_value): Update.
786         * python/python-internal.h (python_string_to_unicode)
787         (python_string_to_target_python_string)
788         (host_string_to_python_string): Return gdbpy_ref.
789         * python/py-utils.c (python_string_to_unicode)
790         (unicode_to_encoded_python_string)
791         (unicode_to_target_python_string)
792         (python_string_to_target_string)
793         (python_string_to_target_python_string): Return gdbpy_ref.
794         (python_string_to_host_string): Update.
795         (host_string_to_python_string): Return gdbpy_ref.
796         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
797         (stpy_fullname): Update.
798         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
799         Update.
800         * python/py-prettyprint.c (print_string_repr): Update.
801         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
802         (objfpy_get_build_id): Update.
803         * python/py-breakpoint.c (bppy_get_location)
804         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
805         Update.
806
807 2018-11-04  Tom Tromey  <tom@tromey.com>
808
809         * python/python-internal.h (gdb_py_object_from_longest)
810         (gdb_py_object_from_ulongest): Return gdbpy_ref.
811         * python/py-value.c (valpy_int): Update.
812         * python/py-utils.c (gdb_py_object_from_longest): Return
813         gdbpy_ref.
814         (gdb_py_object_from_ulongest): Likewise.
815         * python/py-type.c (typy_get_alignof): Update.
816         * python/py-linetable.c (ltpy_get_all_source_lines)
817         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
818         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
819
820 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
821
822         * ada-lang.c (_initialize_ada_language): Fix typo.
823
824 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
825
826         * language.c (type): Remove.
827         (_initialize_language): Remove assignment to type.
828
829 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
830
831         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
832         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
833         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
834         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
835         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
836         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
837         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
838         and aarch64-ravenscar-thread.o.
839         * NEWS: Add entry documenting Ravenscar tasking support
840         on AArch64 ELF.
841
842 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
843
844         * symtab.c (info_functions_command): Initialize quiet flag.
845         * stack.c (info_args_command): Likewise.
846
847 2018-11-01  Jim Wilson  <jimw@sifive.com>
848
849         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
850         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
851         debugging messages.
852
853 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
854
855         * ada-lang.c (ada_watch_location_expression): New function.
856         (ada_language_defn): Set la_watch_location_expression to
857         ada_watch_location_expression.
858
859 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
860
861         * print-utils.c (int_string): Remove unnecessary trailing spaces.
862
863 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
864
865         * rs6000-tdep.c (skip_prologue): Fix potential negative left
866         shifting.
867
868 2018-11-01  Jerome Guitton  <guitton@adacore.com>
869             Joel Brobecker  <brobecker@adacore.com>
870
871         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
872         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
873         * arm-pikeos-tdep.c: New file.
874         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
875         embedded system.
876         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
877
878 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
879
880         * common/pathstuff.c (get_standard_temp_dir): New.
881         * common/pathstuff.h (get_standard_temp_dir): New.
882         * config.in: Re-generate.
883         * configure: Re-generate.
884         * configure.ac: Don't check for mkdtemp.
885         * gnulib/aclocal-m4-deps.mk: Re-generate.
886         * gnulib/aclocal.m4: Re-generate.
887         * gnulib/config.in: Re-generate.
888         * gnulib/configure: Re-generate.
889         * gnulib/import/Makefile.am: Re-generate.
890         * gnulib/import/Makefile.in: Re-generate.
891         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
892         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
893         * gnulib/import/m4/mkdtemp.m4: New file.
894         * gnulib/import/mkdtemp.c: New file.
895         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
896         Add mkdtemp module.
897         * unittests/mkdir-recursive-selftests.c (test): Use
898         get_standard_temp_dir.
899         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
900         ifdef.
901         * compile/compile.c (get_compile_file_tempdir): Likewise.
902
903 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
904
905         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
906         (SIG_FRAME_LR_OFFSET64): New define.
907         (SIG_FRAME_FP_OFFSET64): New define.
908         (aix_sighandle_frame_cache): New Function.
909         (aix_sighandle_frame_this_id): New Function.
910         (aix_sighandle_frame_prev_register): New Function.
911         (aix_sighandle_frame_sniffer): New Function.
912         (aix_sighandle_frame_unwind): New global variable.
913         (rs6000_aix_init_osabi): Install new frame unwinder.
914
915 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
916
917         PR gdb/23835
918         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
919         already defined.
920
921 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
922
923         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
924
925 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
926
927         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
928         (producer_is_icc): New function.
929         (check_producer): Set producer_is_icc field on dwarf2_cu.
930         (dwarf2_init_integer_type): New function.
931         (read_base_type): Call dwarf2_init_integer_type instead of
932         init_integer_type in all cases.
933         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
934         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
935         LEN is greater than 0.
936
937 2018-10-30  Tom Tromey  <tom@tromey.com>
938
939         * main.c (captured_main_1): Check return value of bfd_init.
940
941 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
942
943         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
944         Adjust comments.
945
946 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
947
948         * procfs.c: Include common/pathstuff.h.
949
950 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
951
952         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
953         Add missing braces.  No functional change.
954
955 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
956
957         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
958         to report a bad option and fix indentation.
959         * demangle.c (demangle_command): Use report_unrecognized_option_error
960         to report a bad option and correctly report the bad option.
961
962 2018-10-27  Tom Tromey  <tom@tromey.com>
963
964         PR cli/23364:
965         * darwin-nat.c (copied_shell): New global.
966         (may_have_sip): Rename from should_disable_startup_with_shell.
967         (copy_shell_to_cache, maybe_cache_shell): New functions.
968         (darwin_nat_target::create_inferior): Update.  Use
969         copied_shell.
970
971 2018-10-27  Tom Tromey  <tom@tromey.com>
972
973         * unittests/scoped_fd-selftests.c (test_to_file): New function.
974         (run_tests): Call test_to_file.
975         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
976         temporary files.
977         * common/scoped_fd.h (scoped_fd::to_file): New method.
978
979 2018-10-27  Tom Tromey  <tom@tromey.com>
980
981         * unittests/scoped_mmap-selftests.c (test_normal): Use
982         gdb_mkostemp_cloexec.
983         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
984         Use gdb_mkostemp_cloexec.
985         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
986         gnulib/config.in, gnulib/configure,
987         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
988         gnulib/import/m4/gnulib-cache.m4,
989         gnulib/import/m4/gnulib-comp.m4: Update.
990         * gnulib/import/m4/mkostemp.m4: New file.
991         * gnulib/import/m4/mkstemp.m4: Remove.
992         * gnulib/import/mkostemp.c: New file.
993         * gnulib/import/mkstemp.m4: Remove.
994         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
995         mkstemp, add mkostemp.  Apply new patch.
996         * gnulib/import/stdlib.in.h: Apply patch.
997         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
998         New file.
999         * dwarf-index-write.c (write_psymtabs_to_index): Use
1000         gdb_mkostemp_cloexec.
1001         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1002
1003 2018-10-27  Tom Tromey  <tom@tromey.com>
1004
1005         * unittests/mkdir-recursive-selftests.c: New file.
1006         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1007         unittests/mkdir-recursive-selftests.c.
1008         * dwarf-index-cache.c (mkdir_recursive): Move to
1009         common/filestuff.c.
1010         (index_cache::store): Check return value of mkdir_recursive.
1011         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1012         (_initialize_index_cache): Don't register test.
1013         * common/filestuff.h (mkdir_recursive): Declare.
1014         * common/filestuff.c (mkdir_recursive): Move from
1015         dwarf-index-cache.c.  Return bool.
1016
1017 2018-10-27  Tom Tromey  <tom@tromey.com>
1018
1019         * dwarf-index-write.c (write_psymtabs_to_index): Move
1020         make_temp_filename to common/pathstuff.c.
1021         * common/pathstuff.h (make_temp_filename): Declare.
1022         * common/pathstuff.c (make_temp_filename): New function, moved
1023         from dwarf-index-write.c.
1024
1025 2018-10-27  Tom Tromey  <tom@tromey.com>
1026
1027         * procfs.c (procfs_target::create_inferior): Use get_shell.
1028         * cli/cli-cmds.c (shell_escape): Use get_shell.
1029         * windows-nat.c (windows_nat_target::create_inferior): Use
1030         get_shell.
1031         * common/pathstuff.c (get_shell): New function.
1032         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1033         (fork_inferior): Use get_shell.
1034         * common/pathstuff.h (get_shell): Declare.
1035
1036 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1037
1038         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1039
1040 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1041
1042         * stack.c (print_variable_and_value_data): Add preg and treg.
1043         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1044         and update callers.
1045         (print_frame_arg_vars): Likewise.
1046         (prepare_reg): New function.
1047         (info_locals_command): Extract info print args and use them.
1048         (info_args_command): Likewise.
1049         (_initialize_stack): Modify on-line help.
1050         * symtab.c (treg_matches_sym_type_name): New function.
1051         (search_symbols): New arg t_regexp.
1052         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1053         (info_variables_command): Extract info print args and use them.
1054         (info_functions_command): Likewise.
1055         (info_types_command): Update call to symtab_symbol_info.
1056         (_initialize_symtab): Modify on-line help.
1057         * symtab.h (treg_matches_sym_type_name): New function.
1058         (search_symbols): New t_regexp arg.
1059
1060 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1061
1062         * cli-utils.c (extract_arg_maybe_quoted): New function.
1063         (extract_info_print_args): New function.
1064         (info_print_args_help): New function.
1065         (report_unrecognized_option_error): New function.
1066         * cli-utils.h (extract_arg_maybe_quoted): New function.
1067         (extract_info_print_args): New function.
1068         (info_print_args_help): New function.
1069         (report_unrecognized_option_error): New function.
1070
1071 2018-10-26  Tom Tromey  <tom@tromey.com>
1072
1073         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1074         (compute_compunit_symtab_includes): Update.
1075         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1076         (compunit_symtab_ptr): Likewise.
1077
1078 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1079
1080         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1081         default_print_auxv_entry for specific tag values.
1082
1083 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1084
1085         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1086
1087 2018-10-26  Jim Wilson  <jimw@sifive.com>
1088
1089         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1090         (riscv_linux_sigframe_init): Declare.
1091         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1092         (riscv_linux_sigframe): New.
1093         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1094         (riscv_linux_sigframe_init): Define.
1095         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1096
1097         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1098         (riscv_isa_flen): Likewise.  Drop static.
1099         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1100         (riscv_isa_flen): Likewise.  Declare.
1101
1102 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1103             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1104
1105         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1106         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1107         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1108         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1109         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1110         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1111         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1112         Define.
1113         (struct ppc_linux_features) <htm>: New field.
1114         (ppc_linux_no_features): Add initializer for htm field.
1115         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1116         new tdescs.
1117         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1118         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1119         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1120         Define if not already defined.
1121         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1122         and rs6000/powerpc-isa207-htm-vsx64l.
1123         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1124         rs6000/powerpc-isa207-htm-vsx64l.xml.
1125         * features/rs6000/power-htm-spr.xml: New file.
1126         * features/rs6000/power-htm-core.xml: New file.
1127         * features/rs6000/power64-htm-core.xml: New file.
1128         * features/rs6000/power-htm-fpu.xml: New file.
1129         * features/rs6000/power-htm-altivec.xml: New file.
1130         * features/rs6000/power-htm-vsx.xml: New file.
1131         * features/rs6000/power-htm-ppr.xml: New file.
1132         * features/rs6000/power-htm-dscr.xml: New file.
1133         * features/rs6000/power-htm-tar.xml: New file.
1134         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1135         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1136         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1137         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1138         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1139         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1140         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1141         fetch_regset with HTM regsets.
1142         (store_register, store_ppc_registers): Call store_regset with HTM
1143         regsets.
1144         (ppc_linux_nat_target::read_description): Set htm field in the
1145         features struct if needed.
1146         * ppc-linux-tdep.c: Include
1147         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1148         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1149         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1150         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1151         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1152         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1153         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1154         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1155         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1156         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1157         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1158         (ppc32_linux_ctarregset): New globals.
1159         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1160         (ppc_linux_collect_core_cpgrregset): New function.
1161         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1162         regsets.
1163         (ppc_linux_core_read_description): Check if the tm spr section is
1164         present and set htm in the features struct.
1165         (_initialize_ppc_linux_tdep): Call
1166         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1167         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1168         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1169         Declare.
1170         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1171         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1172         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1173         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1174         New fields.
1175         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1176         Likewise.
1177         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1178         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1179         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1180         New enum fields.
1181         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1182         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1183         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1184         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1185         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1186         <PPC_CTAR_REGNUM>: Likewise.
1187         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1188         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1189         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1190         (IS_CEFP_PSEUDOREG): Define.
1191         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1192         registers.  Return names for the checkpointed DFP, VSX, and EFP
1193         pseudo registers.
1194         (rs6000_pseudo_register_type): Remove initial assert and raise an
1195         internal error in the else clause instead.  Return types for the
1196         checkpointed DFP, VSX, and EFP pseudo registers.
1197         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1198         checkpointed DFP pseudo registers.
1199         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1200         checkpointed VSX pseudo registers.
1201         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1202         from efpr_pseudo_register_read and
1203         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1204         registers.
1205         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1206         Handle checkpointed DFP, VSX, and EFP registers.
1207         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1208         (efp_ax_pseudo_register_collect): New functions.
1209         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1210         register logic to new functions.  Handle checkpointed DFP, VSX,
1211         and EFP pseudo registers.
1212         (rs6000_gdbarch_init): Look for and validate the htm features.
1213         Include checkpointed DFP, VSX and EFP pseudo-registers.
1214         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1215         HTM registers.
1216
1217 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1218
1219         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1220         without altivec or fpu.
1221
1222 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1223             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1224
1225         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1226         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1227         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1228         Define if not already defined.
1229         * features/rs6000/power-ebb.xml: New file.
1230         * features/rs6000/power-linux-pmu.xml: New file.
1231         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1232         features.
1233         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1234         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1235         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1236         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1237         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1238         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1239         fetch_regset with ebb and pmu regsets.
1240         (store_register, store_ppc_registers): Call store_regset with ebb
1241         and pmu regsets.
1242         (ppc_linux_nat_target::read_description): Set isa207 field in the
1243         features struct if ebb and pmu are avaiable.
1244         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1245         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1246         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1247         and pmu regsets.
1248         (ppc_linux_core_read_description): Check if the pmu section is
1249         present and set isa207 in the features struct.
1250         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1251         (ppc32_linux_pmuregset): Declare.
1252         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1253         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1254         <ppc_sier_regnum>: New field.
1255         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1256         New enum values.
1257         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1258         values.
1259         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1260         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1261         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1262         ebb and pmu features.
1263
1264 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1265             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1266
1267         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1268         (tdesc_powerpc_isa207_vsx64l): Declare.
1269         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1270         (struct ppc_linux_features) <isa207>: New field.
1271         (ppc_linux_no_features): Add initializer for isa207 field.
1272         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1273         new tdescs.
1274         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1275         (NT_PPC_TAR): Define if not already defined.
1276         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1277         rs6000/powerpc-isa207-vsx64l.
1278         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1279         rs6000/powerpc-isa207-vsx64l.xml.
1280         * features/rs6000/power-tar.xml: New file.
1281         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1282         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1283         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1284         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1285         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1286         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1287         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1288         fetch_regset with the TAR regset.
1289         (store_register, store_ppc_registers): Call store_regset with the
1290         TAR regset.
1291         (ppc_linux_nat_target::read_description): Set isa207 field in the
1292         features struct if needed.
1293         * ppc-linux-tdep.c: Include
1294         features/rs6000/powerpc-isa207-vsx32l.c and
1295         features/rs6000/powerpc-isa207-vsx64l.c.
1296         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1297         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1298         regset.
1299         (ppc_linux_core_read_description): Check if the tar section is
1300         present and set isa207 in the features struct.
1301         (_initialize_ppc_linux_tdep): Call
1302         initialize_tdesc_powerpc_isa207_vsx32l and
1303         initialize_tdesc_powerpc_isa207_vsx64l.
1304         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1305         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1306         (enum) <PPC_TAR_REGNUM>: New enum value.
1307         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1308         feature.
1309         (ppc_process_record_op31): Record changes to TAR.
1310
1311 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1312             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1313
1314         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1315         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1316         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1317         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1318         (struct ppc_linux_features) <ppr_dscr>: New field.
1319         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1320         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1321         new tdescs.
1322         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1323         Define if not already defined.
1324         * features/Makefile (WHICH): Add
1325         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1326         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1327         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1328         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1329         * features/rs6000/power-dscr.xml: New file.
1330         * features/rs6000/power-ppr.xml: New file.
1331         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1332         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1333         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1334         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1335         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1336         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1337         * ppc-linux-nat.c: Include <sys/uio.h>.
1338         (fetch_regset, store_regset, check_regset): New functions.
1339         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1340         DSCR and PPR regsets.
1341         (store_register, store_ppc_registers): Call store_regset with
1342         DSCR and PPR regsets.
1343         (ppc_linux_get_hwcap2): New function.
1344         (ppc_linux_nat_target::read_description): Call
1345         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1346         features struct if needed.
1347         * ppc-linux-tdep.c: Include
1348         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1349         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1350         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1351         (ppc32_linux_dscrregset): New globals.
1352         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1353         and dscr regsets.
1354         (ppc_linux_core_read_description): Check if the ppr and dscr
1355         sections are present and set ppr_dscr in the features struct.
1356         (_initialize_ppc_linux_tdep): Call
1357         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1358         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1359         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1360         (ppc32_linux_dscrregset): Declare.
1361         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1362         <ppc_dscr_regnum>: New field.
1363         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1364         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1365         and dscr features.
1366         (ppc_process_record_op31): Record changes to PPR and DSCR.
1367
1368 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1369
1370         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1371         second initializer line for the have_* variables.  Initialize
1372         have_fpu to 0 instead of 1.
1373
1374 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1375
1376         * arch/ppc-linux-common.c (ppc_linux_match_description):
1377         Parenthesize tdesc assignements and indent them properly.
1378
1379 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1380
1381         * ppc-linux-nat.c (fetch_register): Change if statement to else
1382         if.
1383         (store_register): Likewise.
1384
1385 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1386
1387         * rs6000-tdep.c: Remove reggroups.h include.
1388         (rs6000_pseudo_register_reggroup_p): Remove.
1389         (rs6000_gdbarch_init): Remove call to
1390         set_tdesc_pseudo_register_reggroup_p.
1391
1392 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1393
1394         * reggroups.c (default_register_reggroup_p): Return true for
1395         decfloat registers and float_reggroup.
1396
1397 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1398
1399         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1400         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1401         ppc_linux_collect_vrregset by regcache_collect_regset.
1402
1403 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1404
1405         * linux-tdep.c (linux_collect_regset_section_cb): Use
1406         std::vector<gdb_byte> instead of char * and malloc for buf.
1407         Remove xfree.
1408
1409 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1410
1411         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1412         symtab_start instead of always using language_unknown.
1413
1414 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1415
1416         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1417         READ_P parameter, catch and ignore register access errors from
1418         either the old or new MISA location.
1419         (riscv_has_feature): Update call to riscv_read_misa_reg.
1420
1421 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1422
1423         * python/py-function.c (convert_values_to_python): Return
1424         gdbpy_ref<>.  Add header comment.
1425         (fnpy_call): Adjust.
1426
1427 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1428
1429         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1430         (cmdpy_completer_handle_brkchars): Adjust.
1431         (cmdpy_completer): Adjust.
1432
1433 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1434
1435         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1436         Pass correct regnum to raw_supply_zeroed.
1437
1438 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1439
1440         * regcache.c (cooked_read_test): Add CSKY to the list of
1441         architectures with a save_reggroup
1442
1443 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1444
1445         PR gdb/23368
1446         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1447         transfer terminal state from old new new inferior.
1448         * terminal.h (swap_terminal_info): New function.
1449         * inflow.c (swap_terminal_info): New function.
1450
1451 2018-10-23  Tom Tromey  <tom@tromey.com>
1452
1453         * record-btrace.c (get_thread_current_frame_id): Rename from
1454         get_thread_current_frame.  Return a frame_id.
1455         (record_btrace_start_replaying): Update.
1456
1457 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1458
1459         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1460         for CSRs.
1461
1462 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1463
1464         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1465         have_nonsteppable_watchpoint attribute to 1.
1466
1467 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1468
1469         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1470         register names.
1471         (struct register_alias): Rename to...
1472         (struct riscv_register_alias): ...this, and update comment.
1473         (riscv_register_aliases): Update type, and alias names.  Remove
1474         CSR names from this list.
1475         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1476         register names.  Add an extra assertion.
1477         (riscv_is_regnum_a_named_csr): New function.
1478         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1479
1480 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1481
1482         * configure.tgt: Add configuration for s12z.
1483         * s12z-tdep.c:  New file.
1484         * NEWS: Mention new target.
1485
1486 2018-10-22  Jim Wilson  <jimw@sifive.com>
1487
1488         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1489         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1490
1491         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1492         (riscv_register_type): Use them.
1493         (riscv_print_one_register_info): Handle union of floats same as float.
1494         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1495         riscv_fpreg_q_type fields.
1496
1497 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1498
1499         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1500         * gdbarch.h: Re-generate.
1501         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1502         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1503         * eval.c (evaluate_subexp_standard): Likewise.
1504         * findvar.c (value_of_register): Likewise.
1505         (value_of_register_lazy): Likewise.
1506         (address_from_register): Likewise.
1507         * frame.c (get_frame_register_bytes): Likewise.
1508         * gdbarch-selftests.c (register_to_value_test): Likewise.
1509         * h8300-tdep.c (h8300_register_type): Likewise.
1510         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1511         (i386_svr4_reg_to_regnum): Likewise.
1512         * infcmd.c (default_print_registers_info): Likewise.
1513         (registers_info): Likewise.
1514         (print_vector_info): Likewise.
1515         (default_print_float_info): Likewise.
1516         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1517         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1518         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1519         (mi_cmd_data_list_changed_registers): Likewise.
1520         (mi_cmd_data_list_register_values): Likewise.
1521         (mi_cmd_data_write_register_values): Likewise.
1522         (mi_cmd_trace_frame_collected): Likewise.
1523         * mips-tdep.c (print_gp_register_row): Likewise.
1524         (mips_print_registers_info): Likewise.
1525         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1526         * regcache.c (init_regcache_descr): Likewise.
1527         (register_size): Likewise.
1528         (register_dump::dump): Likewise.
1529         (cooked_read_test): Likewise.
1530         (cooked_write_test): Likewise.
1531         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1532         (rs6000_gdbarch_init): Likewise.
1533         * stabsread.c (stab_reg_to_regnum): Likewise.
1534         * stack.c (info_frame_command): Likewise.
1535         * target-descriptions.c (tdesc_register_name): Likewise.
1536         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1537         * tui/tui-regs.c (tui_show_register_group): Likewise.
1538         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1539         (user_reg_map_regnum_to_name): Likewise.
1540         (value_of_user_reg): Likewise.
1541         (maintenance_print_user_registers): Likewise.
1542         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1543         (xtensa_register_name): Likewise.
1544         (xtensa_register_type): Likewise.
1545         (xtensa_reg_to_regnum): Likewise.
1546         (xtensa_pseudo_register_read): Likewise.
1547         (xtensa_pseudo_register_write): Likewise.
1548
1549 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1550
1551         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1552         correctly-sized buffer with raw_read.
1553         (amd64_pseudo_register_write): Use correctly-sized buffer for
1554         raw_read/raw_write.
1555
1556 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1557
1558         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1559         in add_prefix_cmd of set print type.
1560
1561 2018-10-19  Tom Tromey  <tom@tromey.com>
1562
1563         PR tui/18388:
1564         * NEWS: Mention tabset deprecation.
1565         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1566         (update_tab_width): New function.
1567         (tui_set_tab_width, tui_show_tab_width): New functions.
1568         (tui_set_tab_width_command): Use update_tab_width.
1569         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1570         Add new "set tui tab-width" command.
1571         * tui/tui-source.c (tui_set_source_content): Update.
1572         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1573         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1574         Don't declare.
1575         (tui_tab_width): Declare.
1576         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1577         (tui_set_default_tab_len): Remove.
1578
1579 2018-10-19  Tom Tromey  <tom@tromey.com>
1580
1581         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1582         (key_is_backspace, tui_getc): Don't declare.
1583         * tui/tui-io.c (key_is_start_sequence): Now static.
1584         (key_is_end_sequence, key_is_backspace): Remove.
1585         (tui_getc): Now static.
1586
1587 2018-10-19  Tom Tromey  <tom@tromey.com>
1588
1589         * symfile.c (reread_symbols): Clear "static_links".
1590
1591 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1592
1593         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1594         define.
1595         (aarch64_linux_sigframe_init): Extra boundary checks.
1596
1597 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1598
1599         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1600         the possibly non-existent tdesc type 'vec128', but the type of raw
1601         register v16 instead.
1602
1603 2018-10-19  Gary Benson <gbenson@redhat.com>
1604
1605         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1606
1607 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1608
1609         PR cli/23785
1610         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1611         NULL.
1612
1613 2018-10-17  Paul Koning  <paul_koning@dell.com>
1614
1615         * charset.c (convert_between_encodings): Fix unsigned overflow.
1616
1617 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1618
1619         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1620         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1621         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1622         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1623         New functions.
1624         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1625         and fbsd_info_proc_mappings_header.
1626         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1627         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1628         New.
1629
1630 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1631
1632         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1633         Solaris Maintainer.
1634
1635 2018-10-15  Tom Tromey  <tom@tromey.com>
1636
1637         * tui/tui.c (strcat_to_buf): Remove casts.
1638         * tui/tui-winsource.c (tui_show_source_line)
1639         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1640         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1641         * tui/tui-windata.c (tui_first_data_item_displayed)
1642         (tui_delete_data_content_windows, tui_erase_data_content)
1643         (tui_display_all_data, tui_display_data_from)
1644         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1645         * tui/tui-win.c (tui_set_win_height)
1646         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1647         casts.
1648         * tui/tui-win.c (tui_resize_all): Remove casts.
1649         (tui_scroll_backward_command, tui_set_focus)
1650         (tui_set_tab_width_command): Likewise.
1651         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1652         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1653         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1654         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1655         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1656         Remove casts.
1657
1658 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1659
1660         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1661         AArch64/ARM maintainer.
1662
1663 2018-10-11  Gary Benson <gbenson@redhat.com>
1664
1665         * interps.h (interp::m_name): Make private and mutable.
1666         * interps.c (interp::~interp): Free m_name.
1667
1668 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1669             Simon Marchi <simark@simark.ca>
1670
1671         * README (`configure' options): Add documentation for new
1672         "--enable-unit-tests" option.
1673         * acinclude.m4: Include "selftest.m4".
1674         * configure: Regenerate.
1675         * configure.ac: Use "GDB_AC_SELFTEST".
1676         * maint.c (maintenance_selftest): Update message informing
1677         that selftests have been disabled.
1678         (maintenance_info_selftests): Likewise.
1679         * selftest.m4: New file.
1680
1681 2018-10-10  Gary Benson <gbenson@redhat.com>
1682
1683         * remote.c (remote_target::remote_send_printf): Add
1684         missing va_end found by Coverity.
1685
1686 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1687
1688         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1689
1690 2018-10-09  Tom Tromey  <tom@tromey.com>
1691
1692         * configure: Rebuild.
1693         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1694         * NEWS: Update --enable-ubsan documentation.
1695
1696 2018-10-09  Gary Benson <gbenson@redhat.com>
1697
1698         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1699         found by Coverity.
1700
1701 2018-10-08  Tom Tromey  <tom@tromey.com>
1702
1703         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1704         variable.
1705         (riscv_fbsd_init_abi): Likewise.
1706
1707 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1708         * valops.c (value_struct_elt_for_reference): Rename local variable
1709         to work around the shadowing a previous local warning.
1710
1711 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1712
1713         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1714         * NEWS: Mention new FreeBSD/riscv native configuration.
1715         * configure.host: Add riscv*-*-freebsd*.
1716         * configure.nat: Likewise.
1717         * riscv-fbsd-nat.c: New file.
1718
1719 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1720
1721         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1722         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1723         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1724         * NEWS: Mention new FreeBSD/riscv target.
1725         * configure.tgt: Add riscv*-*-freebsd*.
1726         * riscv-fbsd-tdep.c: New file.
1727         * riscv-fbsd-tdep.h: New file.
1728
1729 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1730
1731         * regcache.h (struct regcache_map_entry): Note that this type can
1732         be used with traditional frame caches.
1733         * trad-frame.c (trad_frame_set_reg_regmap): New.
1734         * trad-frame.h (trad_frame_set_reg_regmap): New.
1735
1736 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1737
1738         PR c++/16841
1739         * valops.c (get_virtual_base_offset): New function.
1740         (value_struct_elt_for_reference): Use it to get virtual base offset
1741         and add it in calculating class member address.
1742
1743 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1744
1745         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1746         (check_producer): Check if the producer is codewarrior.
1747         (producer_is_codewarrior): New function.
1748         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1749         produced by codewarrior.
1750         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1751
1752 2018-10-06  Tom Tromey  <tom@tromey.com>
1753
1754         PR python/19399:
1755         * python/py-inferior.c: Add "architecture" entry.
1756         (infpy_architecture): New function.
1757
1758 2018-10-06  Tom Tromey  <tom@tromey.com>
1759
1760         PR python/21765:
1761         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1762         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1763         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1764         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1765
1766 2018-10-06  Tom Tromey  <tom@tromey.com>
1767
1768         PR build/17077:
1769         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1770         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1771         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1772         #include.
1773
1774 2018-10-06  Tom Tromey  <tom@tromey.com>
1775
1776         * python/py-breakpoint.c (bppy_get_location): Handle a
1777         bp_breakpoint without a location.
1778
1779 2018-10-06  Tom Tromey  <tom@tromey.com>
1780
1781         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1782         (_RegEx): Reformat help text.
1783         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1784         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1785         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1786         text.
1787         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1788         (EnableXMethod, DisableXMethod): Remove help indentation.
1789         Capitalize meta-syntactic variables.
1790         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1791         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1792         Capitalize meta-syntactic variables.
1793         * python/lib/gdb/command/explore.py (ExploreCommand)
1794         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1795         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1796         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1797         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1798         Remove help indentation.
1799         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1800         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1801         (DisableFrameFilter, SetFrameFilterPriority)
1802         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1803
1804 2018-10-06  Tom Tromey  <tom@tromey.com>
1805
1806         PR tui/28819:
1807         * tui/tui-io.c (gdb_wgetch): New function.
1808         (tui_mld_getc, tui_getc): Use it.
1809
1810 2018-10-05  Tom Tromey  <tom@tromey.com>
1811
1812         * sol-thread.c (sol_thread_target::wait): Rename inner
1813         "save_ptid".
1814
1815 2018-10-04  Tom Tromey  <tom@tromey.com>
1816
1817         * configure: Rebuild.
1818         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1819
1820 2018-10-04  Tom Tromey  <tom@tromey.com>
1821
1822         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1823         declaration of "block".
1824
1825 2018-10-04  Tom Tromey  <tom@tromey.com>
1826
1827         * common/filestuff.c (fdwalk): Remove inner declaration of
1828         "result".
1829
1830 2018-10-04  Tom Tromey  <tom@tromey.com>
1831
1832         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1833         "structs_addr" and hoist declaration.
1834
1835 2018-10-04  Tom Tromey  <tom@tromey.com>
1836
1837         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1838         variable "size".
1839
1840 2018-10-04  Tom Tromey  <tom@tromey.com>
1841
1842         * mdebugread.c (parse_partial_symbols): Use std::string.
1843
1844 2018-10-04  Tom Tromey  <tom@tromey.com>
1845
1846         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1847         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1848         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1849         header.
1850         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1851         more inner scope.
1852         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1853         * varobj.c (varobj_update): Rename inner "newobj",
1854         "type_changed".
1855         * valprint.c (generic_emit_char): Rename inner "buf".
1856         * valops.c (find_overload_match): Rename inner "temp".
1857         (value_struct_elt_for_reference): Declare "v" in more inner
1858         scope.
1859         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1860         * unittests/array-view-selftests.c (run_tests): Rename inner
1861         "vec".
1862         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1863         header.
1864         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1865         "tsv" in more inner scope.
1866         (print_one_static_tracepoint_marker): Rename inner
1867         "tuple_emitter".
1868         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1869         (tic6x_push_dummy_call): Don't redeclare "addr".
1870         * target-float.c: Declare "dto" lower.
1871         * symtab.c (lookup_local_symbol): Rename inner "sym".
1872         (find_pc_sect_line): Rename inner "pc".
1873         * stack.c (print_frame): Don't redeclare "gdbarch".
1874         (return_command): Rename inner "gdbarch".
1875         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1876         "sp".
1877         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1878         header.
1879         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1880         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1881         scope.
1882         * remote.c (remote_target::update_thread_list): Don't redeclare
1883         "tp".
1884         (remote_target::process_initial_stop_replies): Rename inner
1885         "thread".
1886         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1887         (remote_target::wait_as): Don't redeclare "stop_reply".
1888         (remote_target::get_thread_local_address): Rename inner
1889         "result".
1890         (remote_target::get_tib_address): Likewise.
1891
1892         * regcache.c (cooked_read_test): Rename "regnum".
1893         * record-btrace.c (cmd_record_btrace_start): Rename inner
1894         "exception".
1895         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1896         loop header.
1897         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1898         header.
1899         (ppu2spu_sniffer): Rename inner "buf".
1900         * parse.c (operator_check_standard): Rename inner "type",
1901         "objfile".
1902         * p-valprint.c (pascal_val_print): Introduce new scope for
1903         "low_bound", "high_bound".
1904         * p-exp.y (yylex): Declare "i" in loop header.
1905         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1906         Lower declaration of "s".
1907         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1908         header.
1909         (nios2_push_dummy_call): Rename "len".
1910         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1911         "buf".
1912         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1913         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1914         (linux_xfer_osdata_modules): Likewise.
1915         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1916         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1917         (mips_o64_push_dummy_call): Likewise.
1918         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1919         "op".
1920         * mi/mi-main.c (list_available_thread_groups): Rename inner
1921         "tuple_emitter".
1922         (mi_cmd_data_read_memory): Rename inner "opts".
1923         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1924         "tuple_emitter".
1925         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1926         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1927         more inner scope.
1928         (parse_partial_symbols): Rename inner "pst", "p", "name"
1929         * main.c (captured_main_1): Rename inner "i"s.
1930         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1931         "oso2".
1932         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1933         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1934         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1935         (handle_signal_stop): Rename inner "gdbarch".
1936         (handle_command): Declare "signum" in loop header.
1937         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1938         "status".
1939         (examine_prologue): Rename inner "sol" and "sof".
1940         (ia64_extract_return_value): Rename inner "val".  Declare another
1941         "val" in a more inner scope.
1942         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1943         inner scope.
1944         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1945         "except".
1946         * findvar.c (default_read_var_value): Don't redeclare "addr".
1947         * f-exp.y (yylex): Declare "i" in loop header.
1948         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1949         Rename inner "type", "expect_type".
1950         (evaluate_subexp_for_sizeof): Rename inner "pc".
1951         * elfread.c (elf_symfile_read): Rename inner "abfd".
1952         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1953         "bytes_read".
1954         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1955         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1956         (dwarf_decode_line_header): Rename inner "lh".
1957         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1958         "offset".  Declare "i" in loop header.
1959         (disassemble_dwarf_expression): Rename inner "addr_size".
1960         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1961         inner "result".
1962         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1963         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1964         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1965         "inner_list_emitter".
1966         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1967         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1968         declaration in a block.
1969         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1970         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1971         "obstack_final_size".
1972         * cp-support.c (inspect_type): Declare "i" in loop header.
1973         * compile/compile.c (compile_instance::insert_symbol_error):
1974         Rename inner "e".
1975         * common/agent.c (agent_run_command): Remove inner "ret"
1976         declaration.
1977         * coffread.c (coff_symfile_read): Rename inner "name".
1978         (coff_symfile_read): Rename inner "abfd".
1979         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1980         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1981         "high".
1982         * c-exp.y (lex_one_token): Move "len" declaration lower.
1983         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1984         "gdbarch".
1985         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1986         "b".
1987         (watch_command_1): Declare "mark" later.
1988         (clear_command): Don't shadow "a" or "b".
1989         (delete_command): Rename inner "b".
1990         (delete_trace_command): Likewise.
1991         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1992         "op".
1993         (arm_gdbarch_init): Remove inner "e_flags".
1994         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1995         "offset" in inner blocks.
1996
1997 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1998
1999         * dwarf-index-write.c (file_write): Don't write if the vector is
2000         empty.
2001
2002 2018-10-05  Tom de Vries  <tdevries@suse.de>
2003
2004         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2005         PyArg_ParseTuple call.
2006
2007 2018-10-05  Tom de Vries  <tdevries@suse.de>
2008
2009         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2010         PyArg_ParseTuple call.
2011
2012 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2013
2014         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2015         to avoid exceeding 80 characters per line limit.
2016
2017 2018-10-04  Tom Tromey  <tom@tromey.com>
2018
2019         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2020         (reread_symbols): Update.
2021         * complaints.h (clear_complaints): Remove argument.
2022         * complaints.c (enum complaint_series): Remove.
2023         (series): Remove global.
2024         (complaint_internal): Update.
2025         (clear_complaints): Remove argument.
2026
2027 2018-10-04  Tom Tromey  <tom@tromey.com>
2028
2029         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2030         debugging symbols" message if there is a separate debug objfile.
2031
2032 2018-10-04  Tom Tromey  <tom@tromey.com>
2033
2034         PR cli/19551:
2035         * symfile.c (symbol_file_add_with_addrs): Update output.
2036         * psymtab.c (require_partial_symbols): Update output.
2037
2038 2018-10-04  Tom Tromey  <tom@tromey.com>
2039
2040         PR cli/22234:
2041         * complaints.c: Emit \n.
2042
2043 2018-10-04  Tom Tromey  <tom@tromey.com>
2044
2045         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2046         (separate_debug_file_exists, find_separate_debug_file)
2047         (add_symbol_file_command, reread_symbols, allocate_symtab)
2048         (allocate_compunit_symtab): Use filtered printing, not
2049         unfiltered.
2050         * psymtab.c (require_partial_symbols, dump_psymtab)
2051         (allocate_psymtab): Use filtered printing, not unfiltered.
2052
2053 2018-10-04  Tom Tromey  <tom@tromey.com>
2054
2055         * complaints.c (complaint_internal): Correctly check complaint
2056         count.
2057
2058 2018-10-04  Tom Tromey  <tom@tromey.com>
2059
2060         * complaints.h (struct complaints): Remove declaration.
2061         * complaints.c (clear_complaints): Remove an unused variable.
2062
2063 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2064
2065         * MAINTAINERS (Write After Approval): Add self.
2066
2067 2018-10-03  Tom Tromey  <tom@tromey.com>
2068
2069         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2070         "buffer_contents".
2071         * coffread.c (coff_symtab_read): Initialize "newobj".
2072
2073 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2074
2075         * dwarf2read.c (read_func_scope): Remove struct keyword in
2076         range-based for.
2077
2078 2018-10-03  Tom Tromey  <tom@tromey.com>
2079
2080         * README: Mention --enable-ubsan.
2081         * NEWS: Mention --enable-ubsan.
2082         * acinclude.m4: Include sanitize.m4.
2083         * configure: Rebuild.
2084         * configure.ac: Call AM_GDB_UBSAN.
2085         * sanitize.m4: New file.
2086
2087 2018-10-03  Tom Tromey  <tom@tromey.com>
2088
2089         * expression.h (enum exp_opcode): Use uint8_t as base type.
2090         * expprint.c (op_name): Handle invalid opcodes.
2091
2092 2018-10-03  Tom Tromey  <tom@tromey.com>
2093
2094         * parse.c (prefixify_expression): Add assert.
2095         (parse_exp_in_context_1): Throw exception if the expression is
2096         empty.
2097
2098 2018-10-03  Tom Tromey  <tom@tromey.com>
2099
2100         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2101
2102 2018-10-03  Tom Tromey  <tom@tromey.com>
2103
2104         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2105
2106 2018-10-03  Tom Tromey  <tom@tromey.com>
2107
2108         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2109         unsigned.
2110
2111 2018-10-03  Tom Tromey  <tom@tromey.com>
2112
2113         * findvar.c (extract_integer): Do work in an unsigned type.
2114
2115 2018-10-03  Tom Tromey  <tom@tromey.com>
2116
2117         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2118         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2119         base type.
2120         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2121         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2122         type.
2123         * c-lang.h (enum c_string_type_values): Use unsigned as base
2124         type.
2125         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2126
2127 2018-10-03  Tom Tromey  <tom@tromey.com>
2128
2129         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2130         <~dwarf2_frame_state_reg_info>: Update.
2131         <dwarf2_frame_state_reg_info>: Update.
2132         <alloc_regs>: Add assertion.  Update.
2133         <reg>: Now a std::vector.
2134         <num_regs>: Remove.
2135         <swap>: Update.
2136         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2137         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2138
2139 2018-10-03  Tom Tromey  <tom@tromey.com>
2140
2141         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2142
2143 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2144
2145         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2146
2147 2018-10-02  Tom Tromey  <tom@tromey.com>
2148
2149         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2150
2151 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2152
2153         * NEWS: Mention changed commands.
2154         * ser-uds.c: New file.
2155         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2156         * configure: Regenerate.
2157         * Makefile.in: Add new file.
2158         * serial.c (serial_open): Check if filename is a socket
2159         and lookup the appropriate interface accordingly.
2160
2161 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2162
2163         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2164         define.
2165         (AARCH64_EXTRA_MAGIC): Likewise.
2166         (AARCH64_FPSIMD_MAGIC): Likewise.
2167         (AARCH64_SVE_MAGIC): Likewise.
2168         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2169         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2170         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2171         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2172         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2173         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2174         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2175         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2176         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2177         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2178         (read_aarch64_ctx): Add function.
2179         (aarch64_linux_sigframe_init): Detect FP registers.
2180
2181 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2182
2183         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2184         (AARCH64_D0_REGNUM): Likewise.
2185         (AARCH64_S0_REGNUM): Likewise.
2186         (AARCH64_H0_REGNUM): Likewise.
2187         (AARCH64_B0_REGNUM): Likewise.
2188         (AARCH64_SVE_V0_REGNUM): Likewise.
2189         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2190         (AARCH64_D0_REGNUM): Likewise.
2191         (AARCH64_S0_REGNUM): Likewise.
2192         (AARCH64_H0_REGNUM): Likewise.
2193         (AARCH64_B0_REGNUM): Likewise.
2194         (AARCH64_SVE_V0_REGNUM): Likewise.
2195
2196 2018-10-01  Gary Benson <gbenson@redhat.com>
2197
2198         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2199         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2200         prfpregset_t instead of gdb_prfpregset_t.
2201         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2202         * configure, config.in: Rebuild.
2203
2204 2018-10-01  Gary Benson <gbenson@redhat.com>
2205
2206         * common/gdb_proc_service.h: New file, factored out from...
2207         * gdb_proc_service.h: Moved common code to the above file.
2208         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2209
2210 2018-10-01  Gary Benson <gbenson@redhat.com>
2211
2212         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2213         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2214
2215 2018-10-01  Gary Benson <gbenson@redhat.com>
2216
2217         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2218         (AC_CHECK_HEADERS): Check for linux/elf.h.
2219         * configure, config.in: Rebuild.
2220         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2221         doesn't define elf_fpregset_t.
2222
2223 2018-10-01  Gary Benson <gbenson@redhat.com>
2224
2225         * gdb_proc_service.h: Whitespace change.
2226
2227 2018-10-01  Tom Tromey  <tom@tromey.com>
2228
2229         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2230         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2231         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2232
2233 2018-10-01  Tom Tromey  <tom@tromey.com>
2234
2235         * README: Minor change.
2236
2237 2018-09-30  Pedro Alves  <palves@redhat.com>
2238
2239         * darwin-nat-info.c (darwin_debug_regions_recurse)
2240         (info_mach_exceptions_command): Remove unused local variables.
2241         * darwin-nat.c (darwin_decode_notify_message)
2242         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2243         (darwin_stop_inferior, darwin_setup_exceptions)
2244         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2245         (darwin_nat_target::attach, darwin_nat_target::detach)
2246         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2247         local variables.
2248         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2249         variables.
2250
2251 2018-09-29  Tom Tromey  <tom@tromey.com>
2252
2253         * README: Remove some leftover text.
2254
2255 2018-09-29  Tom Tromey  <tom@tromey.com>
2256
2257         * PROBLEMS: Rewrite.
2258         * README: Update.
2259
2260 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2261
2262         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2263         case with explicit breakpoint kind.
2264         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2265         'additional_info' and related logic.
2266         (riscv_debug_breakpoints): New variable.
2267         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2268         instruction to determine the breakpoint kind.
2269         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2270         flag.  Update description of 'set/show riscv
2271         use-compressed-breakpoints' flag.
2272
2273 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2274
2275         (NEWS): Mention changes to frame related commands.
2276         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2277         (add_prefix_cmd_suppress_notification): New function.
2278         (add_com_suppress_notification): Call
2279         add_cmd_suppress_notification.
2280         * command.h (add_cmd_suppress_notification): Declare.
2281         (add_prefix_cmd_suppress_notification): Declare.
2282         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2283         (parse_frame_specification): Moved from stack.c, with
2284         simplification to handle a single argument.
2285         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2286         switch to the selected frame.  Add a header comment.
2287         * stack.c: Remove 'safe-ctype.h' include.
2288         (find_frame_for_function): Add declaration.
2289         (find_frame_for_address): New function.
2290         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2291         (frame_selection_by_function_completer): New function.
2292         (info_frame_command): Rename to...
2293         (info_frame_command_core): ...this, and update parameter types.
2294         (select_frame_command): Rename to...
2295         (select_frame_command_core): ...this, and update parameter types.
2296         (frame_command): Rename to...
2297         (frame_command_core): ...this, and update parameter types.
2298         (class frame_command_helper): New class to wrap implementations of
2299         frame related sub-commands.
2300         (frame_apply_cmd_list): New static global.
2301         (frame_cmd_list): Make static.
2302         (select_frame_cmd_list): New global for sub-commands.
2303         (info_frame_cmd_list): New global for sub-commands.
2304         (_initialize_stack): Register sub-commands for 'frame',
2305         'select-frame', and 'info frame'.  Update 'frame apply' commands
2306         to use frame_apply_cmd_list.  Move function local static
2307         frame_apply_list to file static frame_apply_cmd_list for
2308         consistency.
2309         * stack.h (select_frame_command): Delete declarationn.
2310         (select_frame_for_mi): Declare new function.
2311
2312 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2313
2314         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2315         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2316         and NOP.
2317
2318 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2319
2320         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2321
2322 2018-09-26  Tom Tromey  <tom@tromey.com>
2323
2324         * valops.c (auto_abandon): Remove dead code.
2325
2326 2018-09-26  Tom Tromey  <tom@tromey.com>
2327
2328         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2329
2330 2018-09-24  Tom Tromey  <tom@tromey.com>
2331
2332         * common/pathstuff.c (get_standard_cache_dir): Make
2333         "xdg_cache_home" and "home" const.
2334         * top.c (init_history): Make "tmpenv" const.
2335         * main.c (get_init_files): Make "homedir" const.
2336
2337 2018-09-23  Tom Tromey  <tom@tromey.com>
2338
2339         PR python/18852:
2340         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2341
2342 2018-09-23  Tom Tromey  <tom@tromey.com>
2343
2344         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2345         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2346         * python/python-internal.h (gdbpy_handle_exception): Declare.
2347         * python/py-utils.c (gdbpy_handle_exception): New function.
2348
2349 2018-09-23  Tom Tromey  <tom@tromey.com>
2350
2351         PR python/17284:
2352         * python/py-type.c (typy_template_argument): Check for negative
2353         argument number.
2354
2355 2018-09-23  Tom Tromey  <tom@tromey.com>
2356
2357         PR python/14062:
2358         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2359
2360 2018-09-23  Tom Tromey  <tom@tromey.com>
2361
2362         PR python/18170:
2363         * python/py-value.c (valpy_int): Allow conversion from pointer
2364         type.
2365
2366 2018-09-23  Tom Tromey  <tom@tromey.com>
2367
2368         PR python/20126:
2369         * python/py-value.c (valpy_int): Respect type sign.
2370
2371 2018-09-23  Tom Tromey  <tom@tromey.com>
2372
2373         PR python/18352;
2374         * python/py-value.c (valpy_float): Allow conversions from int or
2375         char.
2376         (valpy_int, valpy_long): Allow conversions from float.
2377
2378 2018-09-23  Tom Tromey  <tom@tromey.com>
2379
2380         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2381         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2382
2383 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2384
2385         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2386         __sighndlr.
2387         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2388
2389 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2390
2391         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2392         target_terminal::ours().
2393
2394 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2395
2396         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2397         of vl to ULONGEST.
2398
2399 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2400
2401         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2402         redundant condition.
2403
2404 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2405
2406         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2407
2408         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2409         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2410         * sol-thread.c (ps_pdmodel): Don't guard definition.
2411
2412         * procfs.c: Fix formatting.
2413
2414         * procfs.c (sysset_t_alloc): Remove.
2415         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2416         (procfs_debug_inferior): Likewise.
2417         (procfs_set_exec_trap): Likewise.
2418         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2419         (proc_set_traced_sysexit): Likewise.
2420
2421         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2422         (dead_procinfo): Likewise.
2423         (proc_warn): Likewise.
2424         (proc_error): Likewise.
2425         (proc_get_LDT_entry): Likewise.
2426         (do_attach): Likewise.
2427         (procfs_target::pid_to_str): Likewise.
2428         (iterate_over_mappings): Likewise.
2429
2430         * procfs.c (create_procinfo): Fix ARI warning.
2431         (proc_get_status): Likewise.
2432         (proc_stop_process): Likewise.
2433         (proc_run_process): Likewise.
2434         (proc_kill): Likewise.
2435         (proc_get_LDT_entry): Likewise.
2436         (procfs_find_LDT_entry): Likewise.
2437         (proc_update_threads): Likewise.
2438         (proc_iterate_over_threads): Likewise.
2439         (do_attach): Likewise.
2440         (procfs_xfer_memory): Likewise.
2441         (invalidate_cache): Likewise.
2442         (procfs_target::resume): Likewise.
2443         (procfs_init_inferior): Likewise.
2444         (procfs_set_exec_trap): Likewise.
2445         (procfs_target::thread_alive): Likewise.
2446         (procfs_target::pid_to_exec_file): Likewise.
2447         (iterate_over_mappings): Likewise.
2448         (procfs_target::make_corefile_notes): Likewise.
2449         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2450
2451         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2452         (procfs_find_LDT_entry): Likewise.
2453         * sol-thread.c (ps_lgetLDT): Likewise.
2454
2455 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2456
2457         PR tdep/17903
2458         * procfs.c (procfs_target): Declare pid_to_exec_file.
2459         (procfs_target::pid_to_exec_file): New.
2460
2461 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2462
2463         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2464         renaming.
2465         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2466         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2467
2468 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2469
2470         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2471         (supply_fpregset, fill_fpregset): Move ...
2472         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2473         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2474         Remove references to ioctl-based procfs.
2475         Include <sys/reg.h>.
2476         Remove PR_MODEL_NATIVE guards.
2477         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2478         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2479
2480 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2481
2482         PR gdb/20981:
2483         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2484         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2485         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2486
2487 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2488
2489         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2490         (fbsd_print_sockaddr_in6): Likewise.
2491
2492 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2493             Chris January  <chris.january@arm.com>
2494
2495         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2496         (evaluate_subexp_standard): Return a dummy type when
2497         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2498         OP_F77_UNDETERMINED_ARGLIST case.
2499         * expression.h (enum noside): Update comment.
2500
2501 2018-09-19  George Vasick <george.vasick@oracle.com>
2502
2503         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2504
2505 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2506             April Chin <april.chin@oracle.com>
2507             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2508
2509         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2510         uint_t lwpid_t.
2511         (create_procinfo): Print pids in /proc without leading zeros.
2512
2513 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2514
2515         * nios2-tdep.c (nios2_gcc_target_options): New.
2516         (nios2_gdb_arch_init): Install new hook.
2517
2518 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2519
2520         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2521         New file.
2522         * update-gnulib.sh: Apply patch.
2523         * configure: Re-generate.
2524
2525 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2526
2527         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2528         description.  Make "info proc" command descriptions more
2529         consistent.
2530
2531 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2532
2533         * NEWS: Mention 'info proc files' command.
2534
2535 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2536
2537         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2538         descriptors for IP_FILES and IP_ALL.
2539
2540 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2541
2542         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2543         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2544         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2545         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2546         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2547         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2548         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2549         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2550         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2551         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2552         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2553         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2554         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2555         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2556         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2557         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2558         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2559         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2560         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2561         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2562         (struct fbsd_sockaddr_un): New types.
2563         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2564         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2565         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2566         (fbsd_core_info_proc_files): New functions.
2567         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2568         IP_ALL.
2569         * fbsd-tdep.h (fbsd_info_proc_files_header)
2570         (fbsd_info_proc_files_entry): New.
2571
2572 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2573
2574         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2575         * infcmd.c (info_proc_cmd_files): New function.
2576         (_initialize_infcmd): Register 'info proc files' command.
2577
2578 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2579
2580         * gnulib/aclocal-m4-deps.mk: Re-generate.
2581         * gnulib/aclocal.m4: Re-generate.
2582         * gnulib/config.in: Re-generate.
2583         * gnulib/configure: Re-generate.
2584         * gnulib/import/Makefile.am: Re-generate.
2585         * gnulib/import/Makefile.in: Re-generate.
2586         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2587         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2588         * gnulib/import/arpa_inet.in.h: New file.
2589         * gnulib/import/inet_ntop.c: New file.
2590         * gnulib/import/m4/arpa_inet_h.m4: New file.
2591         * gnulib/import/m4/inet_ntop.m4: New file.
2592         * gnulib/import/m4/netinet_in_h.m4: New file.
2593         * gnulib/import/m4/socklen.m4: New file.
2594         * gnulib/import/m4/sockpfaf.m4: New file.
2595         * gnulib/import/m4/stdalign.m4: New file.
2596         * gnulib/import/m4/sys_uio_h.m4: New file.
2597         * gnulib/import/netinet_in.in.h: New file.
2598         * gnulib/import/stdalign.in.h: New file.
2599         * gnulib/import/sys_socket.c: New file.
2600         * gnulib/import/sys_socket.in.h: New file.
2601         * gnulib/import/sys_uio.in.h: New file.
2602         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2603         module.
2604
2605 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2606
2607         * gnulib/aclocal-m4-deps.mk: New file.
2608         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2609         deterministically.
2610
2611 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2612
2613         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2614         KVE_PATH.
2615
2616 2018-09-18  Tom Tromey  <tom@tromey.com>
2617
2618         * compile/compile-object-load.c (struct
2619         link_hash_table_cleanup_data): Add constructor and destructor.
2620         Use DISABLE_COPY_AND_ASSIGN.
2621         (~link_hash_table_cleanup_data): Rename from
2622         link_hash_table_free.  Now a destructor.
2623         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2624
2625 2018-09-18  Tom Tromey  <tom@tromey.com>
2626
2627         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2628         * compile/compile-object-load.c (struct munmap_list): Move to
2629         header file.
2630         (munmap_list::add): Rename from munmap_list_add; rewrite.
2631         (munmap_list::~munmap_list): Rename from munmap_list_free.
2632         (munmap_listp_free_cleanup): Remove.
2633         (compile_object_load): Update.
2634         * compile/compile-object-load.h (struct munmap_list): Move from
2635         compile-object-load.c.  Rewrite.
2636
2637 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2638
2639         * aarch64-tdep.c (pass_in_v): Use register size.
2640         (aarch64_extract_return_value): Likewise.
2641         (aarch64_store_return_value): Likewise.
2642
2643 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2644
2645         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2646         rlim_t.
2647
2648 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2649
2650         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2651         Fix short help line.
2652
2653 2018-09-17  Tom Tromey  <tom@tromey.com>
2654
2655         PR python/20445:
2656         * configure: Rebuild.
2657         * configure.ac: Conditionally use -DNDEBUG for Python.
2658
2659 2018-09-17  Tom Tromey  <tom@tromey.com>
2660
2661         * configure: Rebuild.
2662         * configure.ac: Use gmp as a library dependency when checking for
2663         mpfr.
2664
2665 2018-09-17  Pedro Alves  <palves@redhat.com>
2666
2667         * python/py-inferior.c (find_inferior_object): Delete.
2668
2669 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2670
2671         * compile/compile-cplus-types.c
2672         (compile_cplus_instance::enter_scope): Don't use new_scope after
2673         std::move.
2674
2675 2018-09-17  Tom Tromey  <tom@tromey.com>
2676
2677         * common/pathstuff.c (get_standard_cache_dir): Use
2678         ~/Library/Caches on macOS.
2679         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2680
2681 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2682
2683         PR python/23669
2684         * breakpoint.c (commands_cmd_element): New.
2685         (_initialize_breakpoint): Assign commands_cmd_element.
2686         * breakpoint.h (commands_cmd_element): New.
2687         * cli/cli-script.c (while_cmd_element, if_command,
2688         define_cmd_element): New.
2689         (command_name_equals): Remove.
2690         (process_next_line): Compare commands by pointer, not by name.
2691         (_initialize_cli_script): Assign the various cmd_list_element
2692         variables.
2693         * compile/compile.c (compile_cmd_element): New.
2694         (_initialize_compile): Assign compile_cmd_element.
2695         * compile/compile.h (compile_cmd_element): New.
2696         * guile/guile.c (guile_cmd_element): New.
2697         (install_gdb_commands): Assign guile_cmd_element.
2698         * guile/guile.h (guile_cmd_element): New.
2699         * python/python.c (python_cmd_element): New.
2700         (_initialize_python): Assign python_cmd_element.
2701         * python/python.h (python_cmd_element): New.
2702         * tracepoint.c (while_stepping_cmd_element): New.
2703         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2704         * tracepoint.h (while_stepping_cmd_element): New.
2705
2706 2018-09-17  Tom Tromey  <tom@tromey.com>
2707
2708         * infrun.c (save_infcall_suspend_state): Return
2709         infcall_suspend_state_up.
2710         (save_infcall_control_state): Return infcall_control_state_up.
2711         * inferior.h (save_infcall_suspend_state)
2712         (save_infcall_control_state): Declare later.  Return unique
2713         pointers.
2714
2715 2018-09-17  Tom Tromey  <tom@tromey.com>
2716
2717         * infrun.c (struct stop_context): Declare constructor,
2718         destructor, "changed" method.
2719         (stop_context::stop_context): Rename from save_stop_context.
2720         (stop_context::~stop_context): Rename from
2721         release_stop_context_cleanup.
2722         (normal_stop): Update.
2723         (stop_context::changed): Rename from stop_context_changed.  Return
2724         bool.
2725
2726 2018-09-17  Tom Tromey  <tom@tromey.com>
2727
2728         * inferior.h (struct infcall_suspend_state_deleter): New.
2729         (infcall_suspend_state_up): New typedef.
2730         (struct infcall_control_state_deleter): New.
2731         (infcall_control_state_up): New typedef.
2732         (make_cleanup_restore_infcall_suspend_state)
2733         (make_cleanup_restore_infcall_control_state): Don't declare.
2734         * infcall.c (call_function_by_hand_dummy): Update.
2735         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2736         (make_cleanup_restore_infcall_suspend_state): Remove.
2737         (do_restore_infcall_control_state_cleanup)
2738         (make_cleanup_restore_infcall_control_state): Remove.
2739
2740 2018-09-17  Tom Tromey  <tom@tromey.com>
2741
2742         * gdbthread.h (struct thread_control_state): Add initializer.
2743         (class thread_info) <control>: Remove initializer.
2744         * inferior.h (struct inferior_control_state): Add initializer.
2745         (class inferior) <control>: Remove initializer.
2746         (exit_inferior_1): Update.
2747         * infrun.c (struct infcall_control_state): Add constructors.
2748         (save_infcall_control_state): Use new.
2749         (restore_infcall_control_state, discard_infcall_control_state):
2750         Use delete.
2751
2752 2018-09-17  Tom Tromey  <tom@tromey.com>
2753
2754         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2755         unique_ptr.
2756         <siginfo_data>: Now a unique_xmalloc_ptr.
2757         (save_infcall_suspend_state, restore_infcall_suspend_state)
2758         (discard_infcall_suspend_state)
2759         (get_infcall_suspend_state_regcache): Update.
2760
2761 2018-09-17  Tom Tromey  <tom@tromey.com>
2762
2763         * gdbthread.h (struct thread_suspend_state): Add initializers.
2764         (class thread_info) <suspend>: Remove initializer.
2765         * infrun.c (struct infcall_suspend_state): Add initializers.
2766         (save_infcall_suspend_state): Use new.
2767         (discard_infcall_suspend_state): Use delete.
2768
2769 2018-09-16  Tom Tromey  <tom@tromey.com>
2770
2771         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2772         Remove.
2773         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2774         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2775         (py_varobj_iter_new): Likewise.
2776         (py_varobj_get_iterator): Use gdbpy_ref.
2777
2778 2018-09-16  Tom Tromey  <tom@tromey.com>
2779
2780         * python/py-threadevent.c (py_get_event_thread): Simplify.
2781         * python/py-inferior.c (infpy_thread_from_thread_handle):
2782         Return immediately after calling thread_to_thread_object.  Use
2783         Py_RETURN_NONE.
2784         (thread_to_thread_object): Set the exception on a NULL return.
2785
2786 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2787
2788         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2789
2790 2018-09-16  Tom Tromey  <tom@tromey.com>
2791
2792         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2793         Remove.
2794
2795 2018-09-16  Tom Tromey  <tom@tromey.com>
2796
2797         * python/python-internal.h (thread_to_thread_object): Change
2798         return type.
2799         * python/py-inferior.c (thread_to_thread_object): Return a new
2800         reference.
2801         (infpy_thread_from_thread_handle): Update.
2802         * python/py-infthread.c (gdbpy_selected_thread): Update.
2803         * python/py-stopevent.c (create_stop_event_object): Update.
2804         * python/py-threadevent.c (py_get_event_thread): Return a new
2805         reference.
2806         (py_get_event_thread): Update.
2807         * python/py-event.h (py_get_event_thread): Change return type.
2808         * python/py-continueevent.c (create_continue_event_object):
2809         Update.
2810
2811 2018-09-16  Tom Tromey  <tom@tromey.com>
2812
2813         * python/py-progspace.c (pspy_get_objfiles): Update.
2814         * python/python-internal.h (objfile_to_objfile_object): Change
2815         return type.
2816         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2817         Update.
2818         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2819         Update.
2820         * python/python.c (gdbpy_get_current_objfile): Update.
2821         (gdbpy_objfiles): Update.
2822         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2823         Update.
2824         (objfile_to_objfile_object): Return a new reference.
2825         * python/py-symtab.c (stpy_get_objfile): Update.
2826         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2827         Update.
2828
2829 2018-09-16  Tom Tromey  <tom@tromey.com>
2830
2831         * python/py-inferior.c (infpy_get_progspace): Update.
2832         * python/python-internal.h (pspace_to_pspace_object): Change
2833         return type.
2834         * python/py-newobjfileevent.c
2835         (create_clear_objfiles_event_object): Update.
2836         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2837         Update.
2838         * python/python.c (gdbpy_get_current_progspace): Update.
2839         (gdbpy_progspaces): Update.
2840         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2841         reference.
2842         * python/py-objfile.c (objfpy_get_progspace): Update.
2843         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2844         Update.
2845
2846 2018-09-16  Tom Tromey  <tom@tromey.com>
2847
2848         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2849         (solib_name, block_for_pc, find_pc_line): New functions.
2850         (execute_unwinders): Update.
2851         * python/py-block.c (gdbpy_block_for_pc): Remove.
2852         * python/py-inferior.c (infpy_get_progspace): New function.
2853         (inferior_object_getset) <progspace>: Add.
2854         * python/py-progspace.c (pspy_objfiles): Rewrite.
2855         (pspy_solib_name, pspy_block_for_pc)
2856         (pspy_find_pc_line, pspy_is_valid): New functions.
2857         (progspace_object_methods): Add entries for solib_name,
2858         block_for_pc, find_pc_line, is_valid.
2859         * python/python-internal.h (gdbpy_block_for_pc)
2860         (build_objfiles_list): Don't declare.
2861         * python/python.c: Don't include solib.h.
2862         (gdbpy_solib_name, gdbpy_find_pc_line)
2863         (gdbpy_get_current_progspace, build_objfiles_list)
2864         (gdbpy_objfiles): Remove.
2865         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2866         solib_name, find_pc_line>: Remove entries.
2867
2868 2018-09-16  Tom Tromey  <tom@tromey.com>
2869
2870         * top.c (new_ui_command): Use GNU style for metasyntactic
2871         variables.
2872         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2873         variables.
2874         * maint.c (maintenance_translate_address): Remove "<>" around
2875         text.
2876         * interps.c (interpreter_exec_cmd): Use GNU style for
2877         metasyntactic variables.
2878         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2879         metasyntactic variables.
2880         * tracepoint.c (tfind_range_command): Use GNU style for
2881         metasyntactic variables.
2882         (tfind_outside_command): Likewise.
2883         (_initialize_tracepoint): Likewise.
2884         * remote.c (extended_remote_target::create_inferior): Use GNU
2885         style for metasyntactic variables.
2886         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2887         metasyntactic variables.
2888         (adi_assign_command): Likewise.
2889
2890 2018-09-16  Tom Tromey  <tom@tromey.com>
2891
2892         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2893         metasyntactic variables.  Print message if no disassembler options
2894         are available.
2895
2896 2018-09-15  Tom Tromey  <tom@tromey.com>
2897
2898         * infcmd.c (get_inferior_args): Return const char *.
2899         * inferior.h (get_inferior_args): Return type now const.
2900         * linux-tdep.c (linux_fill_prpsinfo): Update.
2901         * procfs.c (procfs_target::make_corefile_notes): Update.
2902
2903 2018-09-07  Tom Tromey  <tom@tromey.com>
2904
2905         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2906         inside the TRY.
2907
2908 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2909
2910         * nios2-tdep.c (nios2_type_align): New.
2911         (nios2_gdb_arch_init): Install type_align hook.
2912
2913 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2914
2915         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2916         type that is neither object file owned, nor gdbarch owned.
2917         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2918         gdbarch is non-NULL.
2919         (alloc_type_instance): Allocate non-objfile owned types on the
2920         gdbarch obstack.
2921         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2922         using TYPE_ALLOC to ensure memory is allocated on the correct
2923         obstack.
2924         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2925         obstack, or the gdbarch obstack.
2926         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2927
2928 2018-09-14  Tom Tromey  <tom@tromey.com>
2929
2930         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2931         block.
2932
2933 2018-09-14  Tom Tromey  <tom@tromey.com>
2934
2935         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2936
2937 2018-09-13  Tom Tromey  <tom@tromey.com>
2938
2939         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2940         static.
2941
2942 2018-09-13  Tom Tromey  <tom@tromey.com>
2943
2944         * exec.c (try_open_exec_file): Use std::string.
2945
2946 2018-09-13  Tom Tromey  <tom@tromey.com>
2947
2948         * utils.h (gdb_bfd_errmsg): Return std::string.
2949         * exec.c (exec_file_attach): Update.
2950         * compile/compile-object-load.c (compile_object_load): Update.
2951         * utils.c (gdb_bfd_errmsg): Return std::string.
2952
2953 2018-09-13  Tom Tromey  <tom@tromey.com>
2954
2955         * procfs.c (struct procinfo_deleter): New.
2956         (procinfo_up): New typedef.
2957         (do_destroy_procinfo_cleanup): Remove.
2958         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2959
2960 2018-09-13  Tom Tromey  <tom@tromey.com>
2961
2962         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2963
2964 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2965 2018-09-13  Tom Tromey  <tom@tromey.com>
2966
2967         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2968         (pspy_get_objfiles): New function.
2969         (progspace_object_methods): New.
2970         (pspace_object_type): Add tp_methods callback.
2971         * python/python-internal.h (build_objfiles_list): New
2972         declaration.
2973         * python/python.c (build_objfiles_list): New function.
2974         (gdbpy_objfiles): Implement using build_objfiles_list.
2975         * NEWS: Mention the Progspace.objfiles method.
2976
2977 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2978
2979         * python/py-inferior.c (infpy_get_progspace): New function.
2980         (inferior_object_getset): Add progspace property.
2981         * NEWS: Mention the new property.
2982
2983 2018-09-13  Tom Tromey  <tom@tromey.com>
2984
2985         PR rust/23650:
2986         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2987
2988 2018-09-13  Tom Tromey  <tom@tromey.com>
2989
2990         PR rust/23626:
2991         * rust-lang.c (rust_enum_variant): Now static.
2992         (rust_empty_enum_p): New function.
2993         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2994         Handle empty enum.
2995
2996 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2997
2998         * python/py-inferior.c (infpy_repr): New.
2999         (inferior_object_type): Register infpy_repr.
3000         * python/py-objfile.c (objfpy_repr): New.
3001         (objfile_object_type): Register objfpy_repr.
3002
3003 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3004
3005         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3006
3007 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3008
3009         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3010         typo.
3011
3012 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3013
3014         * common/common-utils.c: Don't include '<sys/stat.h>'.
3015         (is_regular_file): Move to...
3016         * common/filestuff.c (is_regular_file): ... here.
3017         * common/common-utils.h (is_regular_file): Move to...
3018         * common/filestuff.h (is_regular_file): ... here.
3019
3020 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3021
3022         * skip.c (debug_skip): New variable.
3023         (skiplist_entry::do_skip_file_p): Add debug output.
3024         (skiplist_entry::do_skip_gfile_p): Likewise.
3025         (skiplist_entry::skip_function_p): Likewise.
3026         (_initialize_step_skip): Create debug command.
3027         * NEWS: Mention set/show debug skip.
3028
3029 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3030
3031         * darwin-nat.c (should_disable_startup_with_shell):
3032         New function.
3033         (darwin_nat_target::create_inferior): Add call.
3034
3035 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3036
3037         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3038         inf_port, msg_state>: Initialize.
3039         (struct darwin_thread_info) <signaled, single_step>: Change
3040         type and initialize.
3041         (struct darwin_thread_info) <event>: Initialize.
3042
3043 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3044
3045         PR gdb/23555
3046         PR gdb/23558
3047         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3048         guesses.
3049
3050 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3051
3052         Revert:
3053         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3054
3055         PR gdb/23555
3056         PR gdb/23558
3057         * gnulib/aclocal.m4: Regenerate.
3058         * gnulib/config.in: Regenerate.
3059         * gnulib/configure: Regenerate.
3060         * gnulib/import/Makefile.am: Update.
3061         * gnulib/import/Makefile.in: Update.
3062         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3063         * gnulib/import/_Noreturn.h: ... this.
3064         * gnulib/import/alloca.in.h: Update.
3065         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3066         * gnulib/import/arg-nonnull.h: ... this.
3067         * gnulib/import/assure.h: Update.
3068         * gnulib/import/at-func.c: Update.
3069         * gnulib/import/basename-lgpl.c: Update.
3070         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3071         * gnulib/import/c++defs.h: ... this.
3072         * gnulib/import/canonicalize-lgpl.c: Update.
3073         * gnulib/import/cdefs.h: Update.
3074         * gnulib/import/chdir-long.c: Update.
3075         * gnulib/import/chdir-long.h: Update.
3076         * gnulib/import/cloexec.c: Update.
3077         * gnulib/import/cloexec.h: Update.
3078         * gnulib/import/close.c: Update.
3079         * gnulib/import/closedir.c: Update.
3080         * gnulib/import/config.charset: Update.
3081         * gnulib/import/dirent-private.h: Update.
3082         * gnulib/import/dirent.in.h: Update.
3083         * gnulib/import/dirfd.c: Update.
3084         * gnulib/import/dirname-lgpl.c: Update.
3085         * gnulib/import/dirname.h: Update.
3086         * gnulib/import/dosname.h: Update.
3087         * gnulib/import/dup-safer-flag.c: Update.
3088         * gnulib/import/dup-safer.c: Update.
3089         * gnulib/import/dup.c: Update.
3090         * gnulib/import/dup2.c: Update.
3091         * gnulib/import/errno.in.h: Update.
3092         * gnulib/import/error.c: Update.
3093         * gnulib/import/error.h: Update.
3094         * gnulib/import/exitfail.c: Update.
3095         * gnulib/import/exitfail.h: Update.
3096         * gnulib/import/extra/update-copyright: Update.
3097         * gnulib/import/fchdir.c: Update.
3098         * gnulib/import/fcntl.c: Update.
3099         * gnulib/import/fcntl.in.h: Update.
3100         * gnulib/import/fd-hook.c: Update.
3101         * gnulib/import/fd-hook.h: Update.
3102         * gnulib/import/fd-safer-flag.c: Update.
3103         * gnulib/import/fd-safer.c: Update.
3104         * gnulib/import/fdopendir.c: Update.
3105         * gnulib/import/filename.h: Update.
3106         * gnulib/import/filenamecat-lgpl.c: Update.
3107         * gnulib/import/filenamecat.h: Update.
3108         * gnulib/import/flexmember.h: Update.
3109         * gnulib/import/float+.h: Update.
3110         * gnulib/import/float.c: Update.
3111         * gnulib/import/float.in.h: Update.
3112         * gnulib/import/fnmatch.c: Update.
3113         * gnulib/import/fnmatch.in.h: Update.
3114         * gnulib/import/fnmatch_loop.c: Update.
3115         * gnulib/import/fpucw.h: Update.
3116         * gnulib/import/frexp.c: Update.
3117         * gnulib/import/frexpl.c: Update.
3118         * gnulib/import/fstat.c: Update.
3119         * gnulib/import/fstatat.c: Update.
3120         * gnulib/import/getcwd-lgpl.c: Update.
3121         * gnulib/import/getcwd.c: Update.
3122         * gnulib/import/getdtablesize.c: Update.
3123         * gnulib/import/getlogin_r.c: Update.
3124         * gnulib/import/getprogname.c: Update.
3125         * gnulib/import/getprogname.h: Update.
3126         * gnulib/import/gettext.h: Update.
3127         * gnulib/import/gettimeofday.c: Update.
3128         * gnulib/import/glob-libc.h: Update.
3129         * gnulib/import/glob.c: Update.
3130         * gnulib/import/glob.in.h: Update.
3131         * gnulib/import/glob_internal.h: Update.
3132         * gnulib/import/glob_pattern_p.c: Update.
3133         * gnulib/import/globfree.c: Update.
3134         * gnulib/import/hard-locale.c: Update.
3135         * gnulib/import/hard-locale.h: Update.
3136         * gnulib/import/intprops.h: Update.
3137         * gnulib/import/inttypes.in.h: Update.
3138         * gnulib/import/isnan.c: Update.
3139         * gnulib/import/isnand-nolibm.h: Update.
3140         * gnulib/import/isnand.c: Update.
3141         * gnulib/import/isnanl-nolibm.h: Update.
3142         * gnulib/import/isnanl.c: Update.
3143         * gnulib/import/itold.c: Update.
3144         * gnulib/import/libc-config.h: Update.
3145         * gnulib/import/limits.in.h: Update.
3146         * gnulib/import/localcharset.c: Update.
3147         * gnulib/import/localcharset.h: Update.
3148         * gnulib/import/localtime-buffer.c: Update.
3149         * gnulib/import/localtime-buffer.h: Update.
3150         * gnulib/import/lstat.c: Update.
3151         * gnulib/import/m4/00gnulib.m4: Update.
3152         * gnulib/import/m4/__inline.m4: Update.
3153         * gnulib/import/m4/absolute-header.m4: Update.
3154         * gnulib/import/m4/alloca.m4: Update.
3155         * gnulib/import/m4/builtin-expect.m4: Update.
3156         * gnulib/import/m4/canonicalize.m4: Update.
3157         * gnulib/import/m4/chdir-long.m4: Update.
3158         * gnulib/import/m4/close.m4: Update.
3159         * gnulib/import/m4/closedir.m4: Update.
3160         * gnulib/import/m4/configmake.m4: Update.
3161         * gnulib/import/m4/d-ino.m4: Update.
3162         * gnulib/import/m4/d-type.m4: Update.
3163         * gnulib/import/m4/dirent_h.m4: Update.
3164         * gnulib/import/m4/dirfd.m4: Update.
3165         * gnulib/import/m4/dirname.m4: Update.
3166         * gnulib/import/m4/double-slash-root.m4: Update.
3167         * gnulib/import/m4/dup.m4: Update.
3168         * gnulib/import/m4/dup2.m4: Update.
3169         * gnulib/import/m4/eealloc.m4: Update.
3170         * gnulib/import/m4/environ.m4: Update.
3171         * gnulib/import/m4/errno_h.m4: Update.
3172         * gnulib/import/m4/error.m4: Update.
3173         * gnulib/import/m4/exponentd.m4: Update.
3174         * gnulib/import/m4/exponentl.m4: Update.
3175         * gnulib/import/m4/extensions.m4: Update.
3176         * gnulib/import/m4/extern-inline.m4: Update.
3177         * gnulib/import/m4/fchdir.m4: Update.
3178         * gnulib/import/m4/fcntl-o.m4: Update.
3179         * gnulib/import/m4/fcntl.m4: Update.
3180         * gnulib/import/m4/fcntl_h.m4: Update.
3181         * gnulib/import/m4/fdopendir.m4: Update.
3182         * gnulib/import/m4/filenamecat.m4: Update.
3183         * gnulib/import/m4/flexmember.m4: Update.
3184         * gnulib/import/m4/float_h.m4: Update.
3185         * gnulib/import/m4/fnmatch.m4: Update.
3186         * gnulib/import/m4/fnmatch_h.m4: Update.
3187         * gnulib/import/m4/fpieee.m4: Update.
3188         * gnulib/import/m4/frexp.m4: Update.
3189         * gnulib/import/m4/frexpl.m4: Update.
3190         * gnulib/import/m4/fstat.m4: Update.
3191         * gnulib/import/m4/fstatat.m4: Update.
3192         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3193         * gnulib/import/m4/getcwd-path-max.m4: Update.
3194         * gnulib/import/m4/getcwd.m4: Update.
3195         * gnulib/import/m4/getdtablesize.m4: Update.
3196         * gnulib/import/m4/getlogin.m4: Update.
3197         * gnulib/import/m4/getlogin_r.m4: Update.
3198         * gnulib/import/m4/getpagesize.m4: Update.
3199         * gnulib/import/m4/getprogname.m4: Update.
3200         * gnulib/import/m4/gettimeofday.m4: Update.
3201         * gnulib/import/m4/glibc21.m4: Update.
3202         * gnulib/import/m4/glob.m4: Update.
3203         * gnulib/import/m4/glob_h.m4: Update.
3204         * gnulib/import/m4/gnulib-cache.m4: Update.
3205         * gnulib/import/m4/gnulib-common.m4: Update.
3206         * gnulib/import/m4/gnulib-comp.m4: Update.
3207         * gnulib/import/m4/gnulib-tool.m4: Update.
3208         * gnulib/import/m4/hard-locale.m4: Update.
3209         * gnulib/import/m4/include_next.m4: Update.
3210         * gnulib/import/m4/inttypes-pri.m4: Update.
3211         * gnulib/import/m4/inttypes.m4: Update.
3212         * gnulib/import/m4/isnand.m4: Update.
3213         * gnulib/import/m4/isnanl.m4: Update.
3214         * gnulib/import/m4/largefile.m4: Update.
3215         * gnulib/import/m4/limits-h.m4: Update.
3216         * gnulib/import/m4/localcharset.m4: Update.
3217         * gnulib/import/m4/locale-fr.m4: Update.
3218         * gnulib/import/m4/locale-ja.m4: Update.
3219         * gnulib/import/m4/locale-zh.m4: Update.
3220         * gnulib/import/m4/localtime-buffer.m4: Update.
3221         * gnulib/import/m4/longlong.m4: Update.
3222         * gnulib/import/m4/lstat.m4: Update.
3223         * gnulib/import/m4/malloc.m4: Update.
3224         * gnulib/import/m4/malloca.m4: Update.
3225         * gnulib/import/m4/math_h.m4: Update.
3226         * gnulib/import/m4/mbrtowc.m4: Update.
3227         * gnulib/import/m4/mbsinit.m4: Update.
3228         * gnulib/import/m4/mbsrtowcs.m4: Update.
3229         * gnulib/import/m4/mbstate_t.m4: Update.
3230         * gnulib/import/m4/memchr.m4: Update.
3231         * gnulib/import/m4/memmem.m4: Update.
3232         * gnulib/import/m4/mempcpy.m4: Update.
3233         * gnulib/import/m4/memrchr.m4: Update.
3234         * gnulib/import/m4/mkdir.m4: Update.
3235         * gnulib/import/m4/mkstemp.m4: Update.
3236         * gnulib/import/m4/mmap-anon.m4: Update.
3237         * gnulib/import/m4/mode_t.m4: Update.
3238         * gnulib/import/m4/msvc-inval.m4: Update.
3239         * gnulib/import/m4/msvc-nothrow.m4: Update.
3240         * gnulib/import/m4/multiarch.m4: Update.
3241         * gnulib/import/m4/nocrash.m4: Update.
3242         * gnulib/import/m4/off_t.m4: Update.
3243         * gnulib/import/m4/onceonly.m4: Update.
3244         * gnulib/import/m4/open-cloexec.m4: Update.
3245         * gnulib/import/m4/open.m4: Update.
3246         * gnulib/import/m4/openat.m4: Update.
3247         * gnulib/import/m4/opendir.m4: Update.
3248         * gnulib/import/m4/pathmax.m4: Update.
3249         * gnulib/import/m4/rawmemchr.m4: Update.
3250         * gnulib/import/m4/readdir.m4: Update.
3251         * gnulib/import/m4/readlink.m4: Update.
3252         * gnulib/import/m4/realloc.m4: Update.
3253         * gnulib/import/m4/rename.m4: Update.
3254         * gnulib/import/m4/rewinddir.m4: Update.
3255         * gnulib/import/m4/rmdir.m4: Update.
3256         * gnulib/import/m4/save-cwd.m4: Update.
3257         * gnulib/import/m4/secure_getenv.m4: Update.
3258         * gnulib/import/m4/setenv.m4: Update.
3259         * gnulib/import/m4/signal_h.m4: Update.
3260         * gnulib/import/m4/ssize_t.m4: Update.
3261         * gnulib/import/m4/stat-time.m4: Update.
3262         * gnulib/import/m4/stat.m4: Update.
3263         * gnulib/import/m4/std-gnu11.m4: Update.
3264         * gnulib/import/m4/stdbool.m4: Update.
3265         * gnulib/import/m4/stddef_h.m4: Update.
3266         * gnulib/import/m4/stdint.m4: Update.
3267         * gnulib/import/m4/stdio_h.m4: Update.
3268         * gnulib/import/m4/stdlib_h.m4: Update.
3269         * gnulib/import/m4/strchrnul.m4: Update.
3270         * gnulib/import/m4/strdup.m4: Update.
3271         * gnulib/import/m4/strerror.m4: Update.
3272         * gnulib/import/m4/string_h.m4: Update.
3273         * gnulib/import/m4/strstr.m4: Update.
3274         * gnulib/import/m4/strtok_r.m4: Update.
3275         * gnulib/import/m4/sys_socket_h.m4: Update.
3276         * gnulib/import/m4/sys_stat_h.m4: Update.
3277         * gnulib/import/m4/sys_time_h.m4: Update.
3278         * gnulib/import/m4/sys_types_h.m4: Update.
3279         * gnulib/import/m4/tempname.m4: Update.
3280         * gnulib/import/m4/time_h.m4: Update.
3281         * gnulib/import/m4/unistd-safer.m4: Update.
3282         * gnulib/import/m4/unistd_h.m4: Update.
3283         * gnulib/import/m4/warn-on-use.m4: Update.
3284         * gnulib/import/m4/wchar_h.m4: Update.
3285         * gnulib/import/m4/wchar_t.m4: Update.
3286         * gnulib/import/m4/wctype_h.m4: Update.
3287         * gnulib/import/m4/wint_t.m4: Update.
3288         * gnulib/import/malloc.c: Update.
3289         * gnulib/import/malloc/scratch_buffer.h: Update.
3290         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3291         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3292         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3293         * gnulib/import/malloca.c: Update.
3294         * gnulib/import/malloca.h: Update.
3295         * gnulib/import/malloca.valgrind: Update.
3296         * gnulib/import/math.in.h: Update.
3297         * gnulib/import/mbrtowc.c: Update.
3298         * gnulib/import/mbsinit.c: Update.
3299         * gnulib/import/mbsrtowcs-impl.h: Update.
3300         * gnulib/import/mbsrtowcs-state.c: Update.
3301         * gnulib/import/mbsrtowcs.c: Update.
3302         * gnulib/import/memchr.c: Update.
3303         * gnulib/import/memmem.c: Update.
3304         * gnulib/import/mempcpy.c: Update.
3305         * gnulib/import/memrchr.c: Update.
3306         * gnulib/import/mkdir.c: Update.
3307         * gnulib/import/mkstemp.c: Update.
3308         * gnulib/import/msvc-inval.c: Update.
3309         * gnulib/import/msvc-inval.h: Update.
3310         * gnulib/import/msvc-nothrow.c: Update.
3311         * gnulib/import/msvc-nothrow.h: Update.
3312         * gnulib/import/open.c: Update.
3313         * gnulib/import/openat-die.c: Update.
3314         * gnulib/import/openat-priv.h: Update.
3315         * gnulib/import/openat-proc.c: Update.
3316         * gnulib/import/openat.c: Update.
3317         * gnulib/import/openat.h: Update.
3318         * gnulib/import/opendir.c: Update.
3319         * gnulib/import/pathmax.h: Update.
3320         * gnulib/import/pipe-safer.c: Update.
3321         * gnulib/import/rawmemchr.c: Update.
3322         * gnulib/import/readdir.c: Update.
3323         * gnulib/import/readlink.c: Update.
3324         * gnulib/import/realloc.c: Update.
3325         * gnulib/import/ref-add.sin: Update.
3326         * gnulib/import/ref-del.sin: Update.
3327         * gnulib/import/rename.c: Update.
3328         * gnulib/import/rewinddir.c: Update.
3329         * gnulib/import/rmdir.c: Update.
3330         * gnulib/import/same-inode.h: Update.
3331         * gnulib/import/save-cwd.c: Update.
3332         * gnulib/import/save-cwd.h: Update.
3333         * gnulib/import/scratch_buffer.h: Update.
3334         * gnulib/import/secure_getenv.c: Update.
3335         * gnulib/import/setenv.c: Update.
3336         * gnulib/import/signal.in.h: Update.
3337         * gnulib/import/stat-time.c: Update.
3338         * gnulib/import/stat-time.h: Update.
3339         * gnulib/import/stat-w32.c: Update.
3340         * gnulib/import/stat-w32.h: Update.
3341         * gnulib/import/stat.c: Update.
3342         * gnulib/import/stdbool.in.h: Update.
3343         * gnulib/import/stddef.in.h: Update.
3344         * gnulib/import/stdint.in.h: Update.
3345         * gnulib/import/stdio.in.h: Update.
3346         * gnulib/import/stdlib.in.h: Update.
3347         * gnulib/import/str-two-way.h: Update.
3348         * gnulib/import/strchrnul.c: Update.
3349         * gnulib/import/strdup.c: Update.
3350         * gnulib/import/streq.h: Update.
3351         * gnulib/import/strerror-override.c: Update.
3352         * gnulib/import/strerror-override.h: Update.
3353         * gnulib/import/strerror.c: Update.
3354         * gnulib/import/string.in.h: Update.
3355         * gnulib/import/stripslash.c: Update.
3356         * gnulib/import/strnlen1.c: Update.
3357         * gnulib/import/strnlen1.h: Update.
3358         * gnulib/import/strstr.c: Update.
3359         * gnulib/import/strtok_r.c: Update.
3360         * gnulib/import/sys_stat.in.h: Update.
3361         * gnulib/import/sys_time.in.h: Update.
3362         * gnulib/import/sys_types.in.h: Update.
3363         * gnulib/import/tempname.c: Update.
3364         * gnulib/import/tempname.h: Update.
3365         * gnulib/import/time.in.h: Update.
3366         * gnulib/import/unistd--.h: Update.
3367         * gnulib/import/unistd-safer.h: Update.
3368         * gnulib/import/unistd.in.h: Update.
3369         * gnulib/import/unsetenv.c: Update.
3370         * gnulib/import/verify.h: Update.
3371         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3372         * gnulib/import/wchar.in.h: Update.
3373         * gnulib/import/wctype.in.h: Update.
3374         * gnulib/import/xalloc-oversized.h: Update.
3375         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3376         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3377
3378 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3379
3380         * record-btrace.c (get_thread_current_frame): Remove
3381         old_inferior_ptid.
3382
3383 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3384
3385         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3386         with check_tag to 1 if and only if the type is tagged and the
3387         component being searched cannot been found in the current
3388         view. Otherwise, always call ada_to_fixed_type with
3389         check_tag to 0.
3390
3391 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3392
3393         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3394         declaration.
3395         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3396         * ada-varobj.c (ada_varobj_get_number_of_children,
3397         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3398
3399 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3400
3401         * ada-valprint.c (ada_value_print): Use type instead of
3402         enclosing type.
3403
3404 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3405
3406         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3407         an array of access to unconstrained array.
3408
3409 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3410
3411         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3412         (ada_check_typedef): Use it.
3413
3414 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3415
3416         * ada-varobj.c (ada_varobj_describe_struct_child)
3417         (ada_varobj_describe_child): Handle union case like struct one.
3418
3419 2018-09-10  Tom Tromey  <tom@tromey.com>
3420
3421         PR python/18380:
3422         * python/python.c (_initialize_python): Make example in "python"
3423         help work in Python 3.
3424
3425 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3426
3427         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3428         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3429         $(EXEEXT) to the script, as it is not a program.
3430
3431 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3432
3433         * python/py-prettyprint.c (pretty_print_one_value): Return
3434         gdbpy_ref<>.
3435         (print_string_repr): Adjust.
3436         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3437         * python/python-internal.h (apply_varobj_pretty_printer): Return
3438         gdbpy_ref<>.
3439         * varobj.c (varobj_value_get_print_value): Adjust.
3440
3441 2018-09-08  Tom Tromey  <tom@tromey.com>
3442
3443         PR python/16047:
3444         * python/py-prettyprint.c (pretty_print_one_value): Check for
3445         to_string method.
3446
3447 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3448
3449         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3450         replace_operator_with_call.
3451
3452 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3453
3454         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3455
3456 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3457
3458         * ada-typeprint.c (print_range): Print the bounds using TYPE
3459         rather than its TYPE_TARGET_TYPE.
3460
3461 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3462
3463         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3464         call to ada_to_fixed_value_create.
3465
3466 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3467
3468         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3469
3470 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3471
3472         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3473         by calls to error.
3474
3475 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3476
3477         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3478         Move update of loop variable "fi".
3479
3480 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3481
3482         * ada-lang.c (value_assign_to_component): In the case of
3483         big-endian targets, extract the bits of the given VAL
3484         using an src_offset of zero if container is not a scalar.
3485
3486 2018-09-06  Simon Ser  <contact@emersion.fr>
3487
3488         PR gdb/23105
3489         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3490         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3491         * fbsd-tdep.c (fbsd_make_note_desc): New.
3492         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3493         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3494         * target.h (enum target_object) Add FreeBSD-specific
3495         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3496
3497 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3498
3499         * compile/compile-c.h (generate_c_for_variable_locations):
3500         Change reference to pointer.
3501         * compile/compile-c-support.c (compile_program) <compute>:
3502         Likewise.
3503         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3504         (generate_c_for_for_one_variable): Likewise
3505         (generate_c_for_variable_locations): Likewise
3506         * compile/compile-c-types.c (compile_c_instance::convert_type):
3507         Likewise
3508         * compile/compile-cplus-symbols.c (convert_one_symbol):
3509         std::move the scope passed to enter_scope.
3510         * compile/compile-cplus-types.c
3511         (compile_cplus_instance::enter_scope): Make parameter
3512         rvalue-reference.
3513         (compile_cplus_instance::new_scope): Change reference to
3514         pointer.
3515         (compile_cplus_instance::convert_type): Likewise
3516         (compile_cplus_convert_typedef): std::move the scope passed to
3517         enter_scope.
3518         (compile_cplus_convert_struct_or_union): Likewise.
3519         (compile_cplus_convert_enum): Likewise.
3520         (compile_cplus_convert_namespace): Likewise.
3521         * compile/compile-cplus.h (compile_cplus_instance)
3522         <enter_scope>: Make parameter rvalue-reference.
3523         * compile/compile-internal.h (compile_instance)
3524         <get_cached_type>: Likewise
3525         * compile/compile-loc2c.c (push): Likewise
3526         (pushf): Likewise
3527         (unary): Likewise
3528         (binary): Likewise
3529         (print_label): Likewise
3530         (pushf_register_address): Likewise
3531         (pushf_register): Likewise
3532         (do_compile_dwarf_expr_to_c): Likewise
3533         (compile_dwarf_expr_to_c): Likewise
3534         (compile_dwarf_bounds_to_c): Likewise
3535         * compile/compile.c (compile_instance::get_cached_type):
3536         Likewise
3537         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3538         (compile_dwarf_bounds_to_c): Likewise
3539         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3540         (dwarf2_compile_property_to_c): Likewise
3541         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3542         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3543         Likewise
3544
3545 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3546
3547         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3548         * tui/tui-data.c (init_content_element): Don't initialize it.
3549
3550 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3551
3552         * tui/tui-data.h (struct tui_win_info)
3553         <detail::opaque>: Remove.
3554         * tui/tui-data.c (init_win_info): Remove assignment.
3555
3556 2018-09-05  Tom Tromey  <tom@tromey.com>
3557
3558         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3559         -Wformat-nonliteral.
3560         * target-float.c (host_float_ops<T>::to_string)
3561         (host_float_ops<T>::from_string): Use
3562         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3563         * configure: Rebuild.
3564
3565 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3566
3567         * printcmd.c (printf_c_string): Use
3568         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3569         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3570
3571 2018-09-05  Tom Tromey  <tom@tromey.com>
3572
3573         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3574
3575 2018-09-05  Tom de Vries  <tdevries@suse.de>
3576
3577         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3578         with resolve_abstract_p == true.
3579         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3580         defaulting to false. Propagate resolve_abstract_p to
3581         dwarf2_fetch_die_loc_sect_off.
3582         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3583         parameter, defaulting to false.
3584         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3585         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3586         parameter.
3587         * dwarf2read.h (struct die_info): Forward-declare.
3588         (die_info_ptr): New typedef.
3589         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3590
3591 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3592
3593         GDB 8.2 released.
3594
3595 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3596             Pedro Alves  <palves@redhat.com>
3597
3598         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3599         "aclocal-m4-deps.mk".  Include file here.
3600         $(srcdir)/aclocal.m4: Add "configure.ac".
3601         * gnulib/aclocal-m4-deps.mk: New file.
3602         * gnulib/update-gnulib.sh: Automatically update
3603         "aclocal-m4-deps.mk".
3604
3605 2018-09-04  Tom Tromey  <tom@tromey.com>
3606
3607         * configure: Rebuild.
3608         * configure.ac: Remove multi-ice code.
3609
3610 2018-09-04  Tom Tromey  <tom@tromey.com>
3611
3612         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3613         (ada-exp.o): Update.
3614
3615 2018-09-04  Tom Tromey  <tom@tromey.com>
3616
3617         * Makefile.in (printcmd.o, target-float.o): Remove.
3618         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3619
3620 2018-09-04  Tom Tromey  <tom@tromey.com>
3621
3622         * gnulib/Makefile.in: Remove obsolete comment.
3623         * Makefile.in: Remove obsolete comment.
3624
3625 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3626
3627         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3628         line with '+'.
3629
3630 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3631
3632         * riscv-tdep.c: Add 'prologue-value.h' include.
3633         (struct riscv_unwind_cache): New struct.
3634         (riscv_debug_unwinder): New global.
3635         (riscv_scan_prologue): Update arguments, capture register details
3636         from prologue scan.
3637         (riscv_skip_prologue): Reformat arguments line, move end of
3638         prologue calculation into riscv_scan_prologue.
3639         (riscv_frame_cache): Update return type, create
3640         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3641         details.
3642         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3643         (riscv_frame_prev_register): Use the trad_frame within the
3644         riscv_unwind_cache.
3645         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3646         flag.
3647
3648 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3649
3650         * trad-frame.h (trad_frame_set_realreg): Declare.
3651         (trad_frame_set_addr): Declare.
3652         * trad-frame.c (trad_frame_set_realreg): Define new function.
3653         (trad_frame_set_addr): Define new function.
3654         (trad_frame_set_reg_realreg): Use new function.
3655         (trad_frame_set_reg_addr): Use new function.
3656
3657 2018-09-01  Keith Seitz  <keiths@redhat.com>
3658
3659         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3660         pulongest instead of "%lld".
3661         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3662         ATTRIBUTE_UNUSED.
3663
3664 2018-08-31  Tom Tromey  <tom@tromey.com>
3665
3666         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3667         variant part type.
3668
3669 2018-08-31  Pedro Alves  <palves@redhat.com>
3670
3671         * gdbarch.h: Regenerate.
3672
3673 2018-08-31  Pedro Alves  <palves@redhat.com>
3674
3675         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3676         * target.h (Hardware watchpoint interfaces): Describe
3677         continuable/steppable/non-steppable watchpoints.
3678         * gdbarch.h, gdbarch.c: Regenerate.
3679
3680 2018-08-31  Pedro Alves  <palves@redhat.com>
3681
3682         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3683         Delete.
3684         * s390-linux-nat.c
3685         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3686         * target.h (target_ops::have_continuable_watchpoint): Delete.
3687         (target_have_continuable_watchpoint): Delete.
3688         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3689         * target-delegates.c: Regenerate.
3690
3691 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3692
3693         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3694         the files present in "gnulib/import/m4/".
3695
3696 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3697
3698         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3699         c.sw, c.swsp, and c.sdsp.
3700
3701 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3702
3703         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3704         (riscv_read_misa_reg): Don't cache value read into inferior data.
3705         (riscv_new_inferior_data): Delete.
3706         (riscv_inferior_data_cleanup): Delete.
3707         (riscv_inferior_data): Delete.
3708         (riscv_invalidate_inferior_data): Delete.
3709         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3710
3711 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3712
3713         * compile/compile-cplus-types.c
3714         (compile_cplus_instance::leave_scope): Take the address of scope
3715         object.
3716         (compile_cplus_instance::convert_qualified_base): Compare quals
3717         to 0.
3718
3719 2018-08-30  Keith Seitz  <keiths@redhat.com>
3720
3721         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3722         Use "%s" and host_address_to_string instead of "%p" in printf.
3723
3724 2018-08-29  Keith Seitz  <keiths@redhat.com>
3725
3726         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3727         and compile-cplus-types.c.
3728         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3729         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3730         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3731         Declare.
3732         * compile/compile-c-support.c: Include compile-cplus.h.
3733         (load_libcompile): Templatize.
3734         (get_compile_context): "New" function.
3735         (c_get_compile_context): Use get_compile_context.
3736         (cplus_get_compile_context): New function.
3737         (cplus_push_user_expression, cplus_pop_user_expression)
3738         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3739         (cplus_compute_program): Define new structs/functions.
3740         * compile/compile-cplus-symmbols.c: New file.
3741         * compile/compile-cplus-types.c: New file.
3742         * compile/compile-cplus.h: New file.
3743         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3744         Declare.
3745         * compile/compile-object-load.c (get_out_value_type): Use
3746         strncmp_iw when comparing symbol names.
3747         (compile_object_load): Add mst_bss and mst_data.
3748         * compile/compile.c (_initialize_compile): Remove
3749         -Wno-implicit-function-declaration from `compile_args'.
3750         * compile/gcc-cp-plugin.h: New file.
3751         * NEWS: Mention C++ compile support and new debug options.
3752
3753 2018-08-29  Keith Seitz  <keiths@redhat.com>
3754
3755         * linespec.c (collect_info::add_symbol): Make virtual.
3756         (struct symbol_searcher_collect_info): New struct.
3757         (symbol_searcher::find_all_symbols): New method.
3758         * symtab.h (class symbol_searcher): New class.
3759
3760 2018-08-29  Keith Seitz  <keiths@redhat.com>
3761
3762         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3763         Change to vector of block_symbol.  Update all users.
3764         (struct collect_info) <symbols>: Likewise.
3765         (collect_info::add_symbol): Take block_symbol as argument.
3766         Update all callers.
3767         (decode_compound_collector) <m_symbols>: Change type to vector
3768         of block_symbol.  Update all users.
3769         (decode_compound_collector::operator ()): Change parameter type
3770         to block_symbol.
3771         (find_method, find_function_symbols, find_linespec_symbols)
3772         (find_label_symbols_in_block, find_label_symbols): Change symbol
3773         vectors to block_symbol vectors.
3774         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3775         block_symbol.
3776
3777 2018-08-29  Keith Seitz  <keiths@redhat.com>
3778
3779         * linespec.c (symbolp): Remove typedef and VEC definitions.
3780         (bound_minimal_symbol_d): Likewise.
3781
3782 2018-08-29  Keith Seitz  <keiths@redhat.com>
3783
3784         * linespec.c (decode_compound_collector::decode_compound_collector):
3785         Remove initialization for `m_symtabs'.
3786         (decode_compound_collector::release_symbols): Change return type
3787         to std::vector.  Update all callers.
3788         (class decode_compound_collector) <m_symbols>: Change type to
3789         std::vector.
3790         (lookup_prefix_sym): Change return type to std::vector.  Update all
3791         callers.
3792         (compare_symbols): Remove.
3793         (std_compare_symbols): Rename to `compare_symbols'.
3794         (find_method): Change `sym_classes' parameter to std::vector.
3795         Update all callers.  Use std::sort to sort sym_classes.
3796         (find_linespec_symbols): Remove cleanup.
3797
3798 2018-08-29  Keith Seitz  <keiths@redhat.com>
3799
3800         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3801         std::vector.  Update all users.
3802         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3803         (struct collect_info) <minimal_symbols>: Likewise.
3804         (compare_msymbols): Return bool.  Change parameters to const
3805         bound_minimal_symbol references.
3806         (find_method, find_function_symbols, find_linespec_symbols): Change
3807         `minsyms' parameter to std::vector.  Update all callers.
3808
3809 2018-08-29  Keith Seitz  <keiths@redhat.com>
3810
3811         * linespec.c (struct linespec) <label_symbols>: Change type to
3812         std::vector.  Update all users.
3813         (find_label_symbols_in_block): Change `result' parameter to
3814         std::vector.  Update all callers.
3815         (find_label_symbols): Return std::vector.  Update all callers.
3816
3817 2018-08-29  Keith Seitz  <keiths@redhat.com>
3818
3819         * linespec.c (struct linespec) <function_symbols>: Change type to
3820         std::vector.  Update all users.
3821         (struct collect_info) <function_symbols>: Likewise.
3822         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3823         (std_compare_symbols): New function.
3824         (find_method, find_function_symbols, find_linespec_symbols)
3825         (find_label_symbols_in_block): Change `symbols' parameter to
3826         std::vector.  Update all callers.
3827         (find_label_symbols): Likewise for `function_symbols' and
3828         `label_funcs_ret'.
3829
3830 2018-08-29  Keith Seitz  <keiths@redhat.com>
3831
3832         * linespec.c (symtab_vector_up): Define.
3833         (struct linespec) <file_symtabs>: Change type to std::vector *.
3834         Update all uses.
3835         (struct collect_info) <file_symtabs>: Likewise.
3836         (collect_symtabs_from_filename): Return symtab_vector_up.
3837         Update all callers.
3838         (decode_objc): Remove cleanup.
3839         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3840         (symtab_collector::release_symtabs): Return symtab_vector_up.
3841         Update all callers.
3842         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3843         Update all users.
3844         (collect_symtabs_from_filename, symtabs_from_filename): Return
3845         symtab_vector_up.  Update all callers.
3846
3847 2018-08-29  Tom Tromey  <tom@tromey.com>
3848
3849         * csky-tdep.c (csky_analyze_prologue): Use
3850         core_addr_to_string_nz.
3851
3852 2018-08-29  Tom Tromey  <tom@tromey.com>
3853
3854         * windows-nat.c (struct xlate_exception) <them>: Change type to
3855         DWORD.
3856         (xlate): Fix formatting.  Remove last entry.
3857         (struct xlate_exception, xlate): Comment out.
3858         (windows_nat_target::resume): Use ranged for.
3859
3860 2018-08-29  Jim Wilson  <jimw@sifive.com>
3861
3862         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3863         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3864         of NT_PRFPREG.
3865         (riscv_linux_nat_target::store_registers): Likewise.
3866
3867 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3868
3869         PR gdb/23555
3870         PR gdb/23558
3871         * gnulib/aclocal.m4: Regenerate.
3872         * gnulib/config.in: Regenerate.
3873         * gnulib/configure: Regenerate.
3874         * gnulib/import/Makefile.am: Update.
3875         * gnulib/import/Makefile.in: Update.
3876         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3877         * gnulib/import/_Noreturn.h: ... this.
3878         * gnulib/import/alloca.in.h: Update.
3879         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3880         * gnulib/import/arg-nonnull.h: ... this.
3881         * gnulib/import/assure.h: Update.
3882         * gnulib/import/at-func.c: Update.
3883         * gnulib/import/basename-lgpl.c: Update.
3884         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3885         * gnulib/import/c++defs.h: ... this.
3886         * gnulib/import/canonicalize-lgpl.c: Update.
3887         * gnulib/import/cdefs.h: Update.
3888         * gnulib/import/chdir-long.c: Update.
3889         * gnulib/import/chdir-long.h: Update.
3890         * gnulib/import/cloexec.c: Update.
3891         * gnulib/import/cloexec.h: Update.
3892         * gnulib/import/close.c: Update.
3893         * gnulib/import/closedir.c: Update.
3894         * gnulib/import/config.charset: Update.
3895         * gnulib/import/dirent-private.h: Update.
3896         * gnulib/import/dirent.in.h: Update.
3897         * gnulib/import/dirfd.c: Update.
3898         * gnulib/import/dirname-lgpl.c: Update.
3899         * gnulib/import/dirname.h: Update.
3900         * gnulib/import/dosname.h: Update.
3901         * gnulib/import/dup-safer-flag.c: Update.
3902         * gnulib/import/dup-safer.c: Update.
3903         * gnulib/import/dup.c: Update.
3904         * gnulib/import/dup2.c: Update.
3905         * gnulib/import/errno.in.h: Update.
3906         * gnulib/import/error.c: Update.
3907         * gnulib/import/error.h: Update.
3908         * gnulib/import/exitfail.c: Update.
3909         * gnulib/import/exitfail.h: Update.
3910         * gnulib/import/extra/update-copyright: Update.
3911         * gnulib/import/fchdir.c: Update.
3912         * gnulib/import/fcntl.c: Update.
3913         * gnulib/import/fcntl.in.h: Update.
3914         * gnulib/import/fd-hook.c: Update.
3915         * gnulib/import/fd-hook.h: Update.
3916         * gnulib/import/fd-safer-flag.c: Update.
3917         * gnulib/import/fd-safer.c: Update.
3918         * gnulib/import/fdopendir.c: Update.
3919         * gnulib/import/filename.h: Update.
3920         * gnulib/import/filenamecat-lgpl.c: Update.
3921         * gnulib/import/filenamecat.h: Update.
3922         * gnulib/import/flexmember.h: Update.
3923         * gnulib/import/float+.h: Update.
3924         * gnulib/import/float.c: Update.
3925         * gnulib/import/float.in.h: Update.
3926         * gnulib/import/fnmatch.c: Update.
3927         * gnulib/import/fnmatch.in.h: Update.
3928         * gnulib/import/fnmatch_loop.c: Update.
3929         * gnulib/import/fpucw.h: Update.
3930         * gnulib/import/frexp.c: Update.
3931         * gnulib/import/frexpl.c: Update.
3932         * gnulib/import/fstat.c: Update.
3933         * gnulib/import/fstatat.c: Update.
3934         * gnulib/import/getcwd-lgpl.c: Update.
3935         * gnulib/import/getcwd.c: Update.
3936         * gnulib/import/getdtablesize.c: Update.
3937         * gnulib/import/getlogin_r.c: Update.
3938         * gnulib/import/getprogname.c: Update.
3939         * gnulib/import/getprogname.h: Update.
3940         * gnulib/import/gettext.h: Update.
3941         * gnulib/import/gettimeofday.c: Update.
3942         * gnulib/import/glob-libc.h: Update.
3943         * gnulib/import/glob.c: Update.
3944         * gnulib/import/glob.in.h: Update.
3945         * gnulib/import/glob_internal.h: Update.
3946         * gnulib/import/glob_pattern_p.c: Update.
3947         * gnulib/import/globfree.c: Update.
3948         * gnulib/import/hard-locale.c: Update.
3949         * gnulib/import/hard-locale.h: Update.
3950         * gnulib/import/intprops.h: Update.
3951         * gnulib/import/inttypes.in.h: Update.
3952         * gnulib/import/isnan.c: Update.
3953         * gnulib/import/isnand-nolibm.h: Update.
3954         * gnulib/import/isnand.c: Update.
3955         * gnulib/import/isnanl-nolibm.h: Update.
3956         * gnulib/import/isnanl.c: Update.
3957         * gnulib/import/itold.c: Update.
3958         * gnulib/import/libc-config.h: Update.
3959         * gnulib/import/limits.in.h: Update.
3960         * gnulib/import/localcharset.c: Update.
3961         * gnulib/import/localcharset.h: Update.
3962         * gnulib/import/localtime-buffer.c: Update.
3963         * gnulib/import/localtime-buffer.h: Update.
3964         * gnulib/import/lstat.c: Update.
3965         * gnulib/import/m4/00gnulib.m4: Update.
3966         * gnulib/import/m4/__inline.m4: Update.
3967         * gnulib/import/m4/absolute-header.m4: Update.
3968         * gnulib/import/m4/alloca.m4: Update.
3969         * gnulib/import/m4/builtin-expect.m4: Update.
3970         * gnulib/import/m4/canonicalize.m4: Update.
3971         * gnulib/import/m4/chdir-long.m4: Update.
3972         * gnulib/import/m4/close.m4: Update.
3973         * gnulib/import/m4/closedir.m4: Update.
3974         * gnulib/import/m4/configmake.m4: Update.
3975         * gnulib/import/m4/d-ino.m4: Update.
3976         * gnulib/import/m4/d-type.m4: Update.
3977         * gnulib/import/m4/dirent_h.m4: Update.
3978         * gnulib/import/m4/dirfd.m4: Update.
3979         * gnulib/import/m4/dirname.m4: Update.
3980         * gnulib/import/m4/double-slash-root.m4: Update.
3981         * gnulib/import/m4/dup.m4: Update.
3982         * gnulib/import/m4/dup2.m4: Update.
3983         * gnulib/import/m4/eealloc.m4: Update.
3984         * gnulib/import/m4/environ.m4: Update.
3985         * gnulib/import/m4/errno_h.m4: Update.
3986         * gnulib/import/m4/error.m4: Update.
3987         * gnulib/import/m4/exponentd.m4: Update.
3988         * gnulib/import/m4/exponentl.m4: Update.
3989         * gnulib/import/m4/extensions.m4: Update.
3990         * gnulib/import/m4/extern-inline.m4: Update.
3991         * gnulib/import/m4/fchdir.m4: Update.
3992         * gnulib/import/m4/fcntl-o.m4: Update.
3993         * gnulib/import/m4/fcntl.m4: Update.
3994         * gnulib/import/m4/fcntl_h.m4: Update.
3995         * gnulib/import/m4/fdopendir.m4: Update.
3996         * gnulib/import/m4/filenamecat.m4: Update.
3997         * gnulib/import/m4/flexmember.m4: Update.
3998         * gnulib/import/m4/float_h.m4: Update.
3999         * gnulib/import/m4/fnmatch.m4: Update.
4000         * gnulib/import/m4/fnmatch_h.m4: Update.
4001         * gnulib/import/m4/fpieee.m4: Update.
4002         * gnulib/import/m4/frexp.m4: Update.
4003         * gnulib/import/m4/frexpl.m4: Update.
4004         * gnulib/import/m4/fstat.m4: Update.
4005         * gnulib/import/m4/fstatat.m4: Update.
4006         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4007         * gnulib/import/m4/getcwd-path-max.m4: Update.
4008         * gnulib/import/m4/getcwd.m4: Update.
4009         * gnulib/import/m4/getdtablesize.m4: Update.
4010         * gnulib/import/m4/getlogin.m4: Update.
4011         * gnulib/import/m4/getlogin_r.m4: Update.
4012         * gnulib/import/m4/getpagesize.m4: Update.
4013         * gnulib/import/m4/getprogname.m4: Update.
4014         * gnulib/import/m4/gettimeofday.m4: Update.
4015         * gnulib/import/m4/glibc21.m4: Update.
4016         * gnulib/import/m4/glob.m4: Update.
4017         * gnulib/import/m4/glob_h.m4: Update.
4018         * gnulib/import/m4/gnulib-cache.m4: Update.
4019         * gnulib/import/m4/gnulib-common.m4: Update.
4020         * gnulib/import/m4/gnulib-comp.m4: Update.
4021         * gnulib/import/m4/gnulib-tool.m4: Update.
4022         * gnulib/import/m4/hard-locale.m4: Update.
4023         * gnulib/import/m4/include_next.m4: Update.
4024         * gnulib/import/m4/inttypes-pri.m4: Update.
4025         * gnulib/import/m4/inttypes.m4: Update.
4026         * gnulib/import/m4/isnand.m4: Update.
4027         * gnulib/import/m4/isnanl.m4: Update.
4028         * gnulib/import/m4/largefile.m4: Update.
4029         * gnulib/import/m4/limits-h.m4: Update.
4030         * gnulib/import/m4/localcharset.m4: Update.
4031         * gnulib/import/m4/locale-fr.m4: Update.
4032         * gnulib/import/m4/locale-ja.m4: Update.
4033         * gnulib/import/m4/locale-zh.m4: Update.
4034         * gnulib/import/m4/localtime-buffer.m4: Update.
4035         * gnulib/import/m4/longlong.m4: Update.
4036         * gnulib/import/m4/lstat.m4: Update.
4037         * gnulib/import/m4/malloc.m4: Update.
4038         * gnulib/import/m4/malloca.m4: Update.
4039         * gnulib/import/m4/math_h.m4: Update.
4040         * gnulib/import/m4/mbrtowc.m4: Update.
4041         * gnulib/import/m4/mbsinit.m4: Update.
4042         * gnulib/import/m4/mbsrtowcs.m4: Update.
4043         * gnulib/import/m4/mbstate_t.m4: Update.
4044         * gnulib/import/m4/memchr.m4: Update.
4045         * gnulib/import/m4/memmem.m4: Update.
4046         * gnulib/import/m4/mempcpy.m4: Update.
4047         * gnulib/import/m4/memrchr.m4: Update.
4048         * gnulib/import/m4/mkdir.m4: Update.
4049         * gnulib/import/m4/mkstemp.m4: Update.
4050         * gnulib/import/m4/mmap-anon.m4: Update.
4051         * gnulib/import/m4/mode_t.m4: Update.
4052         * gnulib/import/m4/msvc-inval.m4: Update.
4053         * gnulib/import/m4/msvc-nothrow.m4: Update.
4054         * gnulib/import/m4/multiarch.m4: Update.
4055         * gnulib/import/m4/nocrash.m4: Update.
4056         * gnulib/import/m4/off_t.m4: Update.
4057         * gnulib/import/m4/onceonly.m4: Update.
4058         * gnulib/import/m4/open-cloexec.m4: Update.
4059         * gnulib/import/m4/open.m4: Update.
4060         * gnulib/import/m4/openat.m4: Update.
4061         * gnulib/import/m4/opendir.m4: Update.
4062         * gnulib/import/m4/pathmax.m4: Update.
4063         * gnulib/import/m4/rawmemchr.m4: Update.
4064         * gnulib/import/m4/readdir.m4: Update.
4065         * gnulib/import/m4/readlink.m4: Update.
4066         * gnulib/import/m4/realloc.m4: Update.
4067         * gnulib/import/m4/rename.m4: Update.
4068         * gnulib/import/m4/rewinddir.m4: Update.
4069         * gnulib/import/m4/rmdir.m4: Update.
4070         * gnulib/import/m4/save-cwd.m4: Update.
4071         * gnulib/import/m4/secure_getenv.m4: Update.
4072         * gnulib/import/m4/setenv.m4: Update.
4073         * gnulib/import/m4/signal_h.m4: Update.
4074         * gnulib/import/m4/ssize_t.m4: Update.
4075         * gnulib/import/m4/stat-time.m4: Update.
4076         * gnulib/import/m4/stat.m4: Update.
4077         * gnulib/import/m4/std-gnu11.m4: Update.
4078         * gnulib/import/m4/stdbool.m4: Update.
4079         * gnulib/import/m4/stddef_h.m4: Update.
4080         * gnulib/import/m4/stdint.m4: Update.
4081         * gnulib/import/m4/stdio_h.m4: Update.
4082         * gnulib/import/m4/stdlib_h.m4: Update.
4083         * gnulib/import/m4/strchrnul.m4: Update.
4084         * gnulib/import/m4/strdup.m4: Update.
4085         * gnulib/import/m4/strerror.m4: Update.
4086         * gnulib/import/m4/string_h.m4: Update.
4087         * gnulib/import/m4/strstr.m4: Update.
4088         * gnulib/import/m4/strtok_r.m4: Update.
4089         * gnulib/import/m4/sys_socket_h.m4: Update.
4090         * gnulib/import/m4/sys_stat_h.m4: Update.
4091         * gnulib/import/m4/sys_time_h.m4: Update.
4092         * gnulib/import/m4/sys_types_h.m4: Update.
4093         * gnulib/import/m4/tempname.m4: Update.
4094         * gnulib/import/m4/time_h.m4: Update.
4095         * gnulib/import/m4/unistd-safer.m4: Update.
4096         * gnulib/import/m4/unistd_h.m4: Update.
4097         * gnulib/import/m4/warn-on-use.m4: Update.
4098         * gnulib/import/m4/wchar_h.m4: Update.
4099         * gnulib/import/m4/wchar_t.m4: Update.
4100         * gnulib/import/m4/wctype_h.m4: Update.
4101         * gnulib/import/m4/wint_t.m4: Update.
4102         * gnulib/import/malloc.c: Update.
4103         * gnulib/import/malloc/scratch_buffer.h: Update.
4104         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4105         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4106         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4107         * gnulib/import/malloca.c: Update.
4108         * gnulib/import/malloca.h: Update.
4109         * gnulib/import/malloca.valgrind: Update.
4110         * gnulib/import/math.in.h: Update.
4111         * gnulib/import/mbrtowc.c: Update.
4112         * gnulib/import/mbsinit.c: Update.
4113         * gnulib/import/mbsrtowcs-impl.h: Update.
4114         * gnulib/import/mbsrtowcs-state.c: Update.
4115         * gnulib/import/mbsrtowcs.c: Update.
4116         * gnulib/import/memchr.c: Update.
4117         * gnulib/import/memmem.c: Update.
4118         * gnulib/import/mempcpy.c: Update.
4119         * gnulib/import/memrchr.c: Update.
4120         * gnulib/import/mkdir.c: Update.
4121         * gnulib/import/mkstemp.c: Update.
4122         * gnulib/import/msvc-inval.c: Update.
4123         * gnulib/import/msvc-inval.h: Update.
4124         * gnulib/import/msvc-nothrow.c: Update.
4125         * gnulib/import/msvc-nothrow.h: Update.
4126         * gnulib/import/open.c: Update.
4127         * gnulib/import/openat-die.c: Update.
4128         * gnulib/import/openat-priv.h: Update.
4129         * gnulib/import/openat-proc.c: Update.
4130         * gnulib/import/openat.c: Update.
4131         * gnulib/import/openat.h: Update.
4132         * gnulib/import/opendir.c: Update.
4133         * gnulib/import/pathmax.h: Update.
4134         * gnulib/import/pipe-safer.c: Update.
4135         * gnulib/import/rawmemchr.c: Update.
4136         * gnulib/import/readdir.c: Update.
4137         * gnulib/import/readlink.c: Update.
4138         * gnulib/import/realloc.c: Update.
4139         * gnulib/import/ref-add.sin: Update.
4140         * gnulib/import/ref-del.sin: Update.
4141         * gnulib/import/rename.c: Update.
4142         * gnulib/import/rewinddir.c: Update.
4143         * gnulib/import/rmdir.c: Update.
4144         * gnulib/import/same-inode.h: Update.
4145         * gnulib/import/save-cwd.c: Update.
4146         * gnulib/import/save-cwd.h: Update.
4147         * gnulib/import/scratch_buffer.h: Update.
4148         * gnulib/import/secure_getenv.c: Update.
4149         * gnulib/import/setenv.c: Update.
4150         * gnulib/import/signal.in.h: Update.
4151         * gnulib/import/stat-time.c: Update.
4152         * gnulib/import/stat-time.h: Update.
4153         * gnulib/import/stat-w32.c: Update.
4154         * gnulib/import/stat-w32.h: Update.
4155         * gnulib/import/stat.c: Update.
4156         * gnulib/import/stdbool.in.h: Update.
4157         * gnulib/import/stddef.in.h: Update.
4158         * gnulib/import/stdint.in.h: Update.
4159         * gnulib/import/stdio.in.h: Update.
4160         * gnulib/import/stdlib.in.h: Update.
4161         * gnulib/import/str-two-way.h: Update.
4162         * gnulib/import/strchrnul.c: Update.
4163         * gnulib/import/strdup.c: Update.
4164         * gnulib/import/streq.h: Update.
4165         * gnulib/import/strerror-override.c: Update.
4166         * gnulib/import/strerror-override.h: Update.
4167         * gnulib/import/strerror.c: Update.
4168         * gnulib/import/string.in.h: Update.
4169         * gnulib/import/stripslash.c: Update.
4170         * gnulib/import/strnlen1.c: Update.
4171         * gnulib/import/strnlen1.h: Update.
4172         * gnulib/import/strstr.c: Update.
4173         * gnulib/import/strtok_r.c: Update.
4174         * gnulib/import/sys_stat.in.h: Update.
4175         * gnulib/import/sys_time.in.h: Update.
4176         * gnulib/import/sys_types.in.h: Update.
4177         * gnulib/import/tempname.c: Update.
4178         * gnulib/import/tempname.h: Update.
4179         * gnulib/import/time.in.h: Update.
4180         * gnulib/import/unistd--.h: Update.
4181         * gnulib/import/unistd-safer.h: Update.
4182         * gnulib/import/unistd.in.h: Update.
4183         * gnulib/import/unsetenv.c: Update.
4184         * gnulib/import/verify.h: Update.
4185         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4186         * gnulib/import/wchar.in.h: Update.
4187         * gnulib/import/wctype.in.h: Update.
4188         * gnulib/import/xalloc-oversized.h: Update.
4189         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4190         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4191
4192 2018-08-16  Gary Benson <gbenson@redhat.com>
4193
4194         PR gdb/13000:
4195         * gdb/main.c (captured_main_1): Exit with nonzero status
4196         in batch mode if the last command to be executed failed.
4197         * NEWS: Mention the above.
4198
4199 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4200
4201         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4202         end of warning message.
4203
4204 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4205
4206         PR gdb/22943:
4207         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4208         (aarch64_extract_return_value): Use
4209         aapcs_is_vfp_call_or_return_candidate.
4210         (aarch64_return_in_memory): Likewise.
4211         (aarch64_store_return_value): Likewise.
4212
4213 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4214
4215         * aarch64-tdep.c
4216         (aapcs_is_vfp_call_or_return_candidate): Make static
4217         (pass_in_v_or_stack): Remove function.
4218         (pass_in_v_vfp_candidate): New function.
4219         (aarch64_push_dummy_call): Check for float register candidates.
4220
4221 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4222
4223         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4224         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4225         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4226
4227 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4228
4229         PR build/23399
4230         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4231         (struct ipa_sym_addresses): Rename to...
4232         (struct ipa_sym_addresses_common): ... this.
4233         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4234
4235 2018-08-28  Tom Tromey  <tom@tromey.com>
4236
4237         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4238         (token_fifo): Now a std::vector.
4239         (yylex, c_parse): Update.
4240         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4241         (token_fifo): Now a std::vector.
4242         (yylex, d_parse): Update.
4243         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4244         (token_fifo): Now a std::vector.
4245         (yylex, go_parse): Update.
4246
4247 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4248
4249         * parser-defs.h (struct type_stack) <elements>: Change type to
4250         std::vector<union type_stack_elt>.
4251         <depth, size>: Remove.
4252         * parse.c (parse_exp_in_context_1): Adjust.
4253         (type_stack_reserve): Remove.
4254         (check_type_stack_depth): Remove.
4255         (insert_into_type_stack): Adjust to std::vector.
4256         (insert_type): Likewise.
4257         (push_type): Likewise.
4258         (push_type_int): Likewise.
4259         (insert_type_address_space): Likewise.
4260         (pop_type): Likewise.
4261         (pop_type_int): Likewise.
4262         (pop_typelist): Likewise.
4263         (pop_type_stack): Likewise.
4264         (append_type_stack): Likewise.
4265         (push_type_stack): Likewise.
4266         (get_type_stack): Likewise.
4267         (type_stack_cleanup): Likewise.
4268         (push_typelist): Likewise.
4269         (follow_types): Likewise.
4270         (_initialize_parse): Likewise.
4271
4272 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4273
4274         * NEWS: Mention csky target.
4275
4276 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4277             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4278             Don Breazeal  <donb@codesourcery.com>
4279
4280         * csky-linux-tdep.c: New file.
4281         * csky-tdep.c: Likewise.
4282         * csky-tdep.h: Likewise.
4283         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4284         csky-tdep.o.
4285         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4286         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4287         * configure.tgt: Add csky support.
4288
4289 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4290
4291         * python/py-framefilter.c (py_print_frame): Print frame architecture
4292         when printing on an MI output.
4293
4294 2018-08-27  Tom Tromey  <tom@tromey.com>
4295
4296         PR build/23087:
4297         * configure: Rebuild.
4298         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4299
4300 2018-08-27  Tom Tromey  <tom@tromey.com>
4301
4302         * aarch64-linux-tdep.c
4303         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4304         casts to int.
4305
4306 2018-08-27  Tom Tromey  <tom@tromey.com>
4307
4308         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4309         unsigned.
4310         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4311         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4312         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4313         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4314         unsigned.
4315
4316 2018-08-27  Tom Tromey  <tom@tromey.com>
4317
4318         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4319         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4320
4321 2018-08-27  Tom Tromey  <tom@tromey.com>
4322
4323         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4324         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4325         ULONGEST_MAX.
4326         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4327         ULONGEST_MAX.
4328         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4329         ULONGEST_MAX.
4330         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4331         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4332         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4333         ULONGEST_MAX.
4334         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4335         (ppc64_linux_sigaction_tramp_frame)
4336         (ppc32_linux_sighandler_tramp_frame)
4337         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4338         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4339         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4340         * mn10300-linux-tdep.c (am33_linux_sigframe)
4341         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4342         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4343         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4344         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4345         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4346         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4347         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4348         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4349         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4350         * microblaze-linux-tdep.c
4351         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4352         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4353         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4354         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4355         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4356         * common/common-types.h (ULONGEST_MAX): New define.
4357         (CORE_ADDR_MAX): Fix formatting.
4358         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4359         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4360         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4361         (arm_linux_rt_sigreturn_tramp_frame)
4362         (arm_eabi_linux_sigreturn_tramp_frame)
4363         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4364         (thumb2_eabi_linux_sigreturn_tramp_frame)
4365         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4366         (arm_linux_restart_syscall_tramp_frame)
4367         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4368         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4369         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4370         ULONGEST_MAX.
4371         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4372
4373 2018-08-27  Tom Tromey  <tom@tromey.com>
4374
4375         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4376         CORE_ADDR_MAX.
4377         * mips-tdep.c (mips_deal_with_atomic_sequence)
4378         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4379         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4380         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4381         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4382         CORE_ADDR_MAX.
4383         * aarch64-tdep.c (aarch64_software_single_step): Use
4384         CORE_ADDR_MAX.
4385
4386 2018-08-27  Tom Tromey  <tom@tromey.com>
4387
4388         * linespec.c (complete_linespec_component): Add cast to "char".
4389         * completer.c (completion_tracker::build_completion_result): Add
4390         cast to "char".
4391
4392 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4393
4394         * solist.h (struct solist, struct target_so_ops): Fix
4395         indentation.
4396
4397 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4398
4399         * ada-tasks.c (ada_task_info_s): Remove typedef.
4400         (DEF_VEC_O(ada_task_info_s)): Remove.
4401         (struct ada_tasks_inferior_data): Initialize fields.
4402         <task_list>: Make an std::vector.
4403         (get_ada_tasks_inferior_data): Allocate with new.
4404         (ada_get_task_number): Adjust.
4405         (get_task_number_from_id): Likewise.
4406         (valid_task_id): Likewise.
4407         (ada_get_task_info_from_ptid): Likewise.
4408         (iterate_over_live_ada_tasks): Likewise.
4409         (add_ada_task): Likewise.
4410         (read_known_tasks): Likewise.
4411         (ada_build_task_list): Likewise.
4412         (print_ada_task_info): Likewise.
4413         (info_task): Likewise.
4414         (task_command_1): Likewise.
4415
4416 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4417
4418         * ada-lang.c (add_angle_brackets): Return std::string.
4419
4420 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4421
4422         * python/py-threadevent.c (py_get_event_thread): Initialize
4423         pythread.
4424
4425 2018-08-24  Pedro Alves  <palves@redhat.com>
4426
4427         * python/py-bpevent.c (create_breakpoint_event_object): Use
4428         copy-initialization.
4429         * python/py-continueevent.c (emit_continue_event): Use
4430         copy-initialization.
4431         * python/py-exitedevent.c (create_exited_event_object): Return a
4432         gdbpy_ref<>.
4433         (emit_exited_event): Use copy-initialization.
4434         * python/py-inferior.c (python_new_inferior)
4435         (python_inferior_deleted, add_thread_object): Use
4436         copy-initialization.
4437         * python/py-infevents.c (create_inferior_call_event_object)
4438         (create_register_changed_event_object)
4439         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4440         (emit_inferior_call_event, emit_memory_changed_event)
4441         (emit_register_changed_event): Use copy-initialization.
4442         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4443         Return a gdbpy_ref<>.
4444         (emit_new_objfile_event): Use copy-initialization.
4445         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4446         (emit_clear_objfiles_event): Use copy-initialization.
4447         * python/py-signalevent.c (create_signal_event_object): Use
4448         copy-initialization.
4449         * python/py-threadevent.c (create_thread_event_object): Use
4450         copy-initialization.
4451
4452 2018-08-24  Pedro Alves  <palves@redhat.com>
4453             Simon Marchi  <simon.marchi@ericsson.com>
4454
4455         PR gdb/23379
4456         * python/py-continueevent.c: Include "gdbthread.h".
4457         (create_continue_event_object): Add intro comment.  Add 'ptid'
4458         parameter.  Use it to find thread to pass to
4459         create_thread_event_object.
4460         (emit_continue_event): Pass PTID down to
4461         create_continue_event_object.
4462         * python/py-event.h (py_get_event_thread): Declare.
4463         (create_thread_event_object): Remove default from 'thread'
4464         parameter.
4465         * python/py-stopevent.c (create_stop_event_object): Use
4466         py_get_event_thread.
4467         * python/py-threadevent.c (get_event_thread): Rename to ...
4468         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4469         and use it to find the thread.
4470         (create_thread_event_object): Assert that THREAD isn't null.
4471         Don't find the event thread here.
4472
4473 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4474
4475         * block.h (blockrange, blockranges): New struct declarations.
4476         (struct block): Add new field named `ranges'.
4477         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4478         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4479         macros for accessing ranges in struct block.
4480         (make_blockranges): New declaration.
4481         block.c (make_blockranges): New function.
4482         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4483         for block.
4484         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4485         * blockframe.c (cache_pc_function_block): New static global.
4486         (clear_pc_function_cache): Clear cache_pc_function_block.
4487         (find_pc_partial_function): Move comment to symtab.h.  Add
4488         support for non-contiguous blocks.
4489         * cli/cli-cmds.c (block.h): Include.
4490         (print_disassembly): Handle printing of non-contiguous blocks.
4491         (disassemble_current_function): Likewise.
4492         (disassemble_command): Likewise.
4493
4494         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4495         BLOCK_START.
4496         * blockframe.c (get_pc_function_start): Likewise.
4497         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4498         (gcc_symbol_address): Likewise.
4499         * compile/compile-object-run.c (compile_object_run): Likewise.
4500         * compile/compile.c (get_expr_block_and_pc): Likewise.
4501         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4502         (func_addr_to_tail_call_list): Likewise.
4503         * findvar.c (default_read_var_value): Likewise.
4504         * inline-frame.c (inline_frame_this_id): Likewise.
4505         (skip-inline_frames): Likewise.
4506         * infcmd.c (until_next_command): Likewise.
4507         * linespec.c (convert_linespec_to_sals): Likewise.
4508         * parse.c (parse_exp_in_context_1): Likewise.
4509         * printcmd.c (build_address_symbolic): likewise.
4510         (info_address_command): Likewise.
4511         symtab.c (find_function_start_sal): Likewise.
4512         (skip_prologue_sal): Likewise.
4513         (find_function_alias_target): Likewise.
4514         (find_gnu_ifunc): Likewise.
4515         * stack.c (find_frame_funname): Likewise.
4516         * symtab.c (fixup_symbol_section): Likewise.
4517         (find_function_start_sal): Likewise.
4518         (skip_prologue_sal): Likewsie.
4519         (find_function_alias_target): Likewise.
4520         (find_gnu_ifunc): Likewise.
4521         * tracepoint.c (info_scope_command): Likewise.
4522         * value.c (value_fn_field): Likewise.
4523
4524         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4525         in place of find_pc_partial_function.
4526         * blockframe.c (find_function_entry_range_from_pc): New function.
4527         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4528         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4529         for each range in a block.
4530
4531
4532 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4533
4534         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4535         incrementation.
4536
4537 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4538
4539         * solib-svr4.c (read_program_headers_from_bfd): Return
4540         gdb::optional<gdb::byte_vector>.
4541         (svr4_exec_displacement): Adjust.
4542
4543 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4544
4545         * solib-svr4.c (read_program_header): Return
4546         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4547         (find_program_interpreter): Return
4548         gdb::optional<gdb::byte_vector>.
4549         (scan_dyntag_auxv): Adjust.
4550         (enable_break): Adjust.
4551         (svr4_exec_displacement): Adjust.
4552
4553 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4554
4555         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4556         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4557
4558 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4559
4560         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4561         string_vprintf.
4562         * guile/scm-utils.c (gdbscm_printf): Likewise.
4563         * serial.c (serial_printf): Likewise.
4564         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4565
4566 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4567
4568         * stack.c (print_frame): Print frame architecture when printing on
4569         an MI output.
4570         * NEWS: Mention new "arch" attribute in frame output.
4571
4572 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4573
4574         * arch/aarch64.h (aarch64_regnum): Update comment.
4575
4576 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4577
4578         * NEWS: Add SVE to 8.2 section.
4579
4580 2018-08-21  Pedro Alves  <palves@redhat.com>
4581
4582         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4583         out from gdbscm_parse_function_args.
4584         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4585         gdbscm_parse_function_args_1.
4586
4587 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4588
4589         PR gdb/17816
4590         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4591         operator.
4592
4593 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4594
4595         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4596
4597 2018-08-19  Michael Spang  <spang@google.com>
4598
4599         PR gdb/11786
4600         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4601         for PT_TLS segments.
4602
4603 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4604
4605         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4606         dwarf_variable_value.
4607         * dwarf2-frame.c (class dwarf_expr_executor):
4608         Add override for dwarf_variable_value.
4609         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4610         (class symbol_needs_eval_context): Likewise.
4611         (indirect_synthetic_pointer): Add forward declaration.
4612         (sect_variable_value): New function.
4613         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4614         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4615         for DW_OP_GNU_variable_value.
4616
4617 2018-08-16  Tom Tromey  <tom@tromey.com>
4618
4619         * top.c (read_command_file): Update.
4620         (command_line_input): Remove "repeat" argument.
4621         * ada-lang.c (get_selections): Update.
4622         * linespec.c (decode_line_2): Update.
4623         * defs.h (command_line_input): Remove argument.
4624         * cli/cli-script.c (read_next_line): Update.
4625         * python/py-gdb-readline.c: Update.
4626
4627 2018-08-17  Tom Tromey  <tom@tromey.com>
4628
4629         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4630         command_line_input.
4631
4632 2018-08-15  Tom Tromey  <tom@tromey.com>
4633
4634         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4635
4636 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4637
4638         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4639         If used, use find_pc_partial_function to find address range
4640         to disassemble.
4641         * mi/mi-main.c (mi_cmd_list_features): Report
4642         "data-disassemble-a-option" feature.
4643         * NEWS: Mention new -data-disassemble option -a.
4644
4645 2018-08-13  Tom Tromey  <tom@tromey.com>
4646
4647         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4648
4649 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4650
4651         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4652         (aarch64_linux_collect_sve_regset): Likewise.
4653         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4654         * regcache.h (regcache_map_entry_size): New function.
4655
4656 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4657
4658         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4659         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4660         (SVE_HEADER_VL_LENGTH): Likewise.
4661         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4662         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4663         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4664         (SVE_HEADER_SIZE_OFFSET): Likewise.
4665         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4666         (SVE_HEADER_VL_OFFSET): Likewise.
4667         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4668         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4669         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4670         (SVE_HEADER_SIZE): Likewise.
4671         (aarch64_linux_core_read_vq): Add function.
4672         (aarch64_linux_core_read_description): Check for SVE section.
4673
4674 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4675
4676         * aarch64-fbsd-tdep.c
4677         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4678         collect_size.
4679         * aarch64-linux-tdep.c
4680         (aarch64_linux_iterate_over_regset_sections): Likewise.
4681         * alpha-linux-tdep.c
4682         (alpha_linux_iterate_over_regset_sections):
4683         * alpha-nbsd-tdep.c
4684         (alphanbsd_iterate_over_regset_sections): Likewise.
4685         * amd64-fbsd-tdep.c
4686         (amd64fbsd_iterate_over_regset_sections): Likewise.
4687         * amd64-linux-tdep.c
4688         (amd64_linux_iterate_over_regset_sections): Likewise.
4689         * arm-bsd-tdep.c
4690         (armbsd_iterate_over_regset_sections): Likewise.
4691         * arm-fbsd-tdep.c
4692         (arm_fbsd_iterate_over_regset_sections): Likewise.
4693         * arm-linux-tdep.c
4694         (arm_linux_iterate_over_regset_sections): Likewise.
4695         * corelow.c (get_core_registers_cb): Likewise.
4696         (core_target::fetch_registers): Likewise.
4697         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4698         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4699         * gdbarch.h (void): Regenerate.
4700         * gdbarch.sh: Add supply_size and collect_size.
4701         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4702         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4703         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4704         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4705         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4706         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4707         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4708         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4709         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4710         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4711         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4712         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4713         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4714         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4715         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4716         Likewise.
4717         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4718         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4719         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4720         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4721         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4722         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4723         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4724         Likewise.
4725         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4726         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4727         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4728         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4729         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4730         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4731         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4732         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4733
4734 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4735
4736         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4737         with string_printf.
4738
4739 2018-08-10  Keith Seitz  <keiths@redhat.com>
4740
4741         * compile/compile-c-support.c (add_code_header, add_code_footer):
4742         Move into policy class.
4743         (c_push_user_expression, pop_user_expression_nop)
4744         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4745         (compile_program): New host class.
4746         (c_compile_program): New typedef.
4747         (c_compute_porgram): Use c_compile_program.
4748
4749 2018-08-10  Keith Seitz  <keiths@redhat.com>
4750
4751         * compile/compile-internal.h (compile_instance::~compile_instance):
4752         Remove calls to htab_delete.
4753         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4754         * compile.c (compile_instance::compile_instance): Initialize
4755         htab unique pointers.
4756         (compile_instance::get_cached_type, compile_instance::insert_type)
4757         (compile_instance::error_symbol_once): Update for unique_ptr.
4758
4759 2018-08-10  Keith Seitz  <keiths@redhat.com>
4760
4761         * compile/compile-c-symbols.c (struct symbol_error)
4762         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4763         (compile_instance::insert_symbol_error)
4764         (compile_instance::error_symbol_once): Move to ...
4765         * compile/compile.c: ... here.
4766
4767 2018-08-10  Keith Seitz  <keiths@redhat.com>
4768
4769         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4770         instead of `new_compile_instance'.
4771         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4772         Update description.
4773         If the symbol error map is not initialized, create it.
4774         (generate_c_for_for_one_symbol): Do not check/initialize
4775         the symbol error map.
4776         * compile/compile-c-types.c (compile_c_instance): Make a class.
4777         Update all callers.
4778         (compile_instance::compile_instance): Initialize the type cache.
4779         (get_cached_type): New function.
4780         (insert_type): Update description.
4781         (compile_c_instance::m_default_cflags): Define.
4782         (convert_type): Update description.  Use get_cached_type.
4783         (delete_instance): Moved to destructor.
4784         (new_compile_instance): Moved to constructor.
4785         * compile/compile-c.h (compile_c_instance): Make class inheriting
4786         from compile_instance.
4787         <base>: Remove field.
4788         <type_map, symbol_err_map>: Move to base class.
4789         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4790         * compile/compile-internal.h (compile_instance): Make class.
4791         <type_map_t, symbol_err_map_t>: Define.
4792         <fe>: Rename to `m_gcc_fe'.
4793         <scope, block, gcc_target_options>: Add `m_' prefix.
4794         <m_type_map, m_symbol_err_map>: New fields, moved from
4795         compile_c_instance.
4796         <destroy>: Remove.
4797         (convert_type, new_compile_instance): Remove.
4798         * compile/compile.c (cleanup_compile_instance): Remove.
4799         (compile_to_object): Use unique_ptr to eliminate cleanups.
4800         (compile_instance::set_print_callback, compile_instance::version)
4801         (compile_instance::set_verbose)
4802         (compile_instance::set_driver_filename)
4803         (compile_instance::set_triplet_regexp)
4804         (compile_instance::set_arguments)
4805         (compile_instance::set_source_file)
4806         (compile_instance::compile): Define.
4807
4808 2018-08-10  Keith Seitz  <keiths@redhat.com>
4809
4810         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4811         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4812         gcc-c-fe.def to define C plugin.
4813         (delete_instance): Delete `c_plugin'.
4814         (new_compile_instance): Initialize `c_plugin'.
4815         * compile/compile-c.h: Include gcc_c_plugin.h.
4816         (struct compile_c_instance) <c_plugin>: New member.
4817         * gcc-c-plugin.h: New file.
4818         Update all callers with API change.
4819
4820 2018-08-10  Keith Seitz  <keiths@redhat.com>
4821
4822         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4823         (HFILES_NO_SRCDIR): ... to here.
4824         Add compile-internal.h and compile-c.h.
4825         * compile/compile-c-support.c: Include compile-c.h.
4826         * compile/compile-c-symbols.c: Include compile-c.h.
4827         (generate_c_for_variable_locations): Update comment.
4828         * compile/compile-c-types.c: Include compile-c.h.
4829         * compile/compile-c.h: New file -- moved C language declarations
4830         from other files here.
4831         * compile/compile-internal.h: Do not include hashtab.h or
4832         common/enum-flags.h.
4833         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4834         (gcc_convert_symbol, gcc_symbol_address)
4835         (generate_c_for_variable_locations, c_get_mode_for_size)
4836         (c_get_range_decl_name): Definitions moved to compile-c.h.
4837         * compile/compile-loc2c.c: Include compile-c.h.
4838
4839 2018-08-10  Keith Seitz  <keiths@redhat.com>
4840
4841         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4842         (c_symbol_substitution_name): ... this.
4843         Update all callers.
4844
4845 2018-08-10  Keith Seitz  <keiths@redhat.com>
4846
4847         * compile/compile-c-support.c (c_compute_program): Use
4848         unique_xmalloc_ptr to eliminate cleanup.
4849         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4850         Return a unique_xmalloc_ptr and eliminate cleanup.
4851         * compile/compile-internal.h (generate_c_for_variable_locations):
4852         Return unique_xmalloc_ptr and update description.
4853
4854 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4855
4856         * corelow.c (core_target::get_core_register_section): Rename
4857         min_size to section_min_size.
4858
4859 2018-08-09  Jim Wilson  <jimw@sifive.com>
4860
4861         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4862         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4863         * NEWS: Mention new GNU/Linux RISC-V target.
4864         * configure.host: Add riscv*-*-linux*.
4865         * configure.nat: Add riscv*.
4866         * configure.tgt: Add riscv*-*-linux*.
4867         * riscv-linux-nat.c: New file.
4868         * riscv-linux-tdep.c: New file.
4869
4870 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4871
4872         * infrun.c (resume): Make static, add forward declaration.
4873         (proceed): Update header comment.
4874         * infrun.h (resume): Delete declaration.
4875
4876 2018-08-09  Tom Tromey  <tom@tromey.com>
4877
4878         * riscv-tdep.h: Minor formatting fixes.
4879
4880 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4881
4882         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4883         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4884         (test_mkdir_recursive): Likewise.
4885         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4886
4887 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4888
4889         * valarith.c (value_subscripted_rvalue): If an array is not in
4890         memory, and we don't know the upper bound, then we can't know that
4891         the requested element exists or not.
4892
4893 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4894
4895         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4896         (target_options_to_string): Add comment.
4897
4898 2018-08-08  Tom Tromey  <tom@tromey.com>
4899
4900         * unittests/scoped_mmap-selftests.c: Check result of "write".
4901
4902 2018-08-08  Jim Wilson  <jimw@sifive.com>
4903
4904         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4905         (decode_register_index_short): New.
4906         (decode_j_type_insn, decode_cj_type_insn): New.
4907         (decode_b_type_insn, decode_cb_type_insn): New.
4908         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4909         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4910         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4911         is_c_sw_insn instead of is_sw_insn.
4912         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4913         (riscv_software_single_step): New.
4914         * riscv-tdep.h (riscv_software_single_step): Declare.
4915
4916         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4917         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4918
4919 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4920
4921         PR gdb/18050:
4922         * target.c (dispose_inferior): Don't dispose of inferiors that are
4923         already killed.
4924
4925 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4926
4927         * remote.c (remote_target::download_tracepoint): Change char* to
4928         const char*.
4929
4930 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4931
4932         * target.h (target_options_to_string): Return an std::string.
4933         * target.c (str_comma_list_concat_elem): Return void, use
4934         std::string.
4935         (do_option): Likewise.
4936         (target_options_to_string): Return an std::string.
4937         * linux-nat.c (linux_nat_target::wait): Adjust.
4938         * target-debug.h (target_debug_print_options): Adjust.
4939
4940 2018-08-07  Tom Tromey  <tom@tromey.com>
4941
4942         * Makefile.in (CPPFLAGS): New variable.
4943         (INTERNAL_CPPFLAGS): Use it.
4944
4945 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4946
4947         * NEWS: Mention the index cache.
4948
4949 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4950
4951         * common/pathstuff.h (get_standard_cache_dir): New.
4952         * common/pathstuff.c (get_standard_cache_dir): New.
4953         * build-id.h (build_id_to_string): New.
4954         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4955         DEBUG_STR_SUFFIX): Move to here.
4956         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4957         DEBUG_STR_SUFFIX): Move from there.
4958         (write_psymtabs_to_index): Make non-static, add basename
4959         parameter.  Write to temporary files, rename when done.
4960         (save_gdb_index_command): Adjust call to
4961         write_psymtabs_to_index.
4962         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4963         field.
4964         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4965         (get_gdb_index_contents_from_cache): New.
4966         (get_gdb_index_contents_from_cache_dwz): New.
4967         (dwarf2_initialize_objfile): Read index from cache.
4968         (dwarf2_build_psymtabs): Save to index.
4969         * dwarf-index-cache.h: New file.
4970         * dwarf-index-cache.c: New file.
4971         * dwarf-index-write.h: New file.
4972
4973 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4974
4975         * gnulib/aclocal.m4: Re-generate.
4976         * gnulib/config.in: Re-generate.
4977         * gnulib/configure: Re-generate.
4978         * gnulib/import/Makefile.am: Re-generate.
4979         * gnulib/import/Makefile.in: Re-generate.
4980         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4981         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4982         * gnulib/import/m4/mkdir.m4: New file.
4983         * gnulib/import/mkdir.c: New file.
4984         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4985         module.
4986
4987 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4988
4989         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4990         * common/scoped_mmap.c: New file.
4991         * common/scoped_mmap.h (destroy): New method.
4992         (~scoped_mmap, reset): Use destroy.
4993         (scoped_mmap): New move constructor.
4994         (mmap_file): New declaration.
4995         * unittests/scoped_mmap-selftests.c (test_normal,
4996         test_invalid_filename, run_tests): New functions.
4997         (_initialize_scoped_mmap_selftests): Register selftest.
4998
4999 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5000
5001         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5002         (read_gdb_index_from_buffer): ... this.  Remove section
5003         parameter, add buffer parameter.
5004         (get_gdb_index_contents_ftype,
5005         get_gdb_index_contents_dwz_ftype): New typedefs.
5006         (dwarf2_read_gdb_index): Add callback parameters to get the
5007         index contents.
5008         (get_gdb_index_contents_from_section): New.
5009         (dwarf2_initialize_objfile): Update call to
5010         dwarf2_read_gdb_index.
5011
5012 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5013
5014         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5015         (gdb_open_cloexec): Likewise.
5016         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5017         (commandline_from_pid): Likewise.
5018         (linux_xfer_osdata_threads): Likewise.
5019         (linux_xfer_osdata_fds): Likewise.
5020         * ada-lang.c (is_package_name): Likewise.
5021         * auxv.c (procfs_xfer_auxv): Likewise.
5022         * breakpoint.c (print_one_breakpoint_location): Use
5023         uiout::field_fmt.
5024         (print_one_catch_solib): Use string_printf.
5025         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5026         (add_pe_forwarded_sym): Likewise.
5027         * dwarf2read.c (create_type_unit_group): Likewise.
5028         (build_error_marker_type): Likewise.
5029         * infcall.c (get_function_name): Likewise.
5030         * valprint.c (print_converted_chars_to_obstack): Likewise.
5031         * xtensa-tdep.c (xtensa_register_type): Likewise.
5032
5033 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5034
5035         * remote.c (remote_target::download_tracepoint): Fix format
5036         string errors.
5037
5038 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5039
5040         * tracefile.c: Include common/byte-vector.h.
5041         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5042         with trace_regblock_size if needed.  Update uses of buf.
5043
5044 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5045
5046         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5047         std::vector<unsigned char>.
5048         * tracepoint.c (collection_list::collection_list): Remove
5049         m_regs_mask initializer from initializer list.  Resize
5050         m_regs_mask using the largest remote register number.
5051         (collection_list::add_remote_register): Remove size check on
5052         m_regs_mask.  Use at to access element.
5053         (collection_list::stringify): Change type of temp_buf to
5054         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5055         stringify the register mask.  Use pack_hex_byte for the register
5056         mask.
5057
5058 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5059
5060         * tracepoint.h (class collection_list) <add_register>: Remove.
5061         <add_remote_register, add_ax_registers, add_local_register>:
5062         Declare.
5063         <add_memrange>: Add scope parameter.
5064         * tracepoint.c (encode_actions_1): Likewise.
5065         (collection_list::add_register): Rename to ...
5066         (collection_list::add_remote_register): ... this.  Update
5067         comment.
5068         (collection_list::add_ax_registers, add_local_register): New
5069         methods.
5070         (collection_list::add_memrange): Add scope parameter.  Call
5071         add_local_register instead of add_register.
5072         (finalize_tracepoint_aexpr): New function.
5073         (collection_list::collect_symbol): Update calls to add_memrange.
5074         Call add_local_register instead of add_register.  Call
5075         add_ax_registers.  Call finalize_tracepoint_aexpr.
5076         (encode_actions_1): Get remote regnos for $reg action.  Call
5077         add_remote_register, add_ax_registers, and add_local_register.
5078         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5079         (validate_actionline): Call finalize_tracepoint_aexpr.
5080
5081 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5082
5083         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5084         Replace array buf with gdb::char_vector buf, of size
5085         get_remote_packet_size ().  Replace references to buf and
5086         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5087         and xsnprintf with snprintf.  Raise errors if the buffer is too
5088         small.
5089
5090 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5091
5092         * remote.c (remote_target::download_tracepoint): Fix the has_more
5093         predicate in the QTDP action list iteration.
5094
5095 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5096
5097         * remote.c (remote_target::download_tracepoint): Fix indentation
5098         in for block.
5099
5100 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5101
5102         * proc-api.c (_initialize_proc_api): Remove c, unused.
5103         * procfs.c (procfs_init_inferior): Remove signals, unused.
5104         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5105         unused.
5106
5107 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5108             Andrew Burgess  <andrew.burgess@embecosm.com>
5109
5110         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5111         'W_STOPCODE (0)' as this could be ambiguous.
5112
5113 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5114
5115         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5116         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5117         "ai_socktype").
5118
5119 2018-08-02  Tom Tromey  <tom@tromey.com>
5120
5121         PR symtab/16842.
5122         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5123         symbols.
5124         (process_structure_scope): Likewise.
5125
5126 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5127
5128         PR gdb/22629:
5129         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5130         kill inferior.
5131
5132 2018-08-02  Tom Tromey  <tom@tromey.com>
5133
5134         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5135         (darwin_suspend_inferior, darwin_resume_inferior)
5136         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5137         (darwin_check_new_threads): Check result of get_darwin_inferior.
5138
5139 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5140
5141         GDB 8.1.1 released.
5142
5143 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5144
5145         * varobj.c (varobj_get_path_expr_parent): Report an error if
5146         parent is a dynamic varobj.
5147
5148 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5149
5150         * gnulib/aclocal.m4: Re-generate.
5151         * gnulib/config.in: Re-generate.
5152         * gnulib/configure: Re-generate.
5153         * gnulib/import/Makefile.in: Re-generate.
5154         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5155         * gnulib/import/m4/onceonly.m4: Re-generate.
5156
5157 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5158
5159         * target-descriptions.c (struct xml_test_tdesc): New.
5160         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5161         (record_xml_tdesc): Update.
5162         (maintenance_check_xml_descriptions): Update.
5163         * target-descriptions.h (record_xml_tdesc): Update comment.
5164
5165 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5166
5167         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5168         checking array bounds are defined.
5169
5170 2018-07-30  Tom Tromey  <tom@tromey.com>
5171
5172         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5173         irreflexivity violation.
5174
5175 2018-07-30  Tom Tromey  <tom@tromey.com>
5176
5177         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5178         * value.c (unpack_long): Remove lint code.
5179         * valops.c (value_ind): Remove lint code.
5180         * valarith.c (value_x_binop, value_x_unop, value_equal)
5181         (value_pos): Remove lint code.
5182
5183 2018-07-28  Tom de Vries  <tdevries@suse.de>
5184
5185         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5186         with undefined upper bound as <optimized out>.
5187
5188 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5189
5190         * gcore.in: Rename variable "name" to "prefix".  Expand
5191         "usage" text.
5192
5193 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5194
5195         * windows-nat.c (windows_nat_target::create_inferior): Update to
5196         call close() in global namespace.
5197
5198 2018-07-26  Tom Tromey  <tom@tromey.com>
5199
5200         * dwarf-index-write.c (add_address_entry): Don't add objfile
5201         offsets.
5202         * dbxread.c (find_stab_function): Rename from
5203         find_stab_function_addr.  Return a bound_minimal_symbol.
5204         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5205         Don't add objfile offsets.
5206         (end_psymtab): Use raw_text_low, raw_text_high,
5207         MSYMBOL_VALUE_RAW_ADDRESS.
5208         (read_ofile_symtab): Update.
5209         (process_one_symbol): Update.
5210         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5211         offsets.
5212         (dw2_relocate): Remove.
5213         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5214         searching addrmap.
5215         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5216         Update.
5217         (process_psymtab_comp_unit_reader, add_partial_symbol)
5218         (add_partial_subprogram, dwarf2_ranges_read): Update.
5219         (load_partial_dies): Update.
5220         (add_address_entry): Don't add objfile offsets.
5221         (dwarf2_build_include_psymtabs): Update.
5222         (create_addrmap_from_aranges): Don't add objfile offsets.
5223         (dw2_find_pc_sect_compunit_symtab): Update.
5224         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5225         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5226         Update.
5227         (parse_partial_symbols): Don't add objfile offsets.  Use
5228         raw_text_low, raw_text_high.  Update.
5229         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5230         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5231         or call 'relocate' quick function.  Clear psymbol_map.
5232         * psympriv.h (struct partial_symbol) <address>: Add section
5233         offset.
5234         <set_unrelocated_address>: Rename from set_address.
5235         <raw_text_low, raw_text_high>: New methods.
5236         <text_low, text_high>: Add objfile parameter.
5237         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5238         set_unrelocated_address.
5239         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5240         (find_pc_psymbol): Update.
5241         (fixup_psymbol_section, relocate_psymtabs): Remove.
5242         (dump_psymtab, psym_functions): Update.
5243         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5244         parameter.
5245         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5246         (start_psymtab_common): Update.
5247         * symfile-debug.c (debug_qf_relocate): Remove.
5248         (debug_sym_quick_functions): Update.
5249         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5250         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5251         Update.
5252
5253 2018-07-26  Tom Tromey  <tromey@redhat.com>
5254
5255         * dbxread.c (end_psymtab): Use text_high_valid and
5256         text_low_valid.
5257         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5258         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5259         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5260         Update comment.
5261         <text_low_valid, text_high_valid>: New fields.
5262         <set_text_low, set_text_high>: Update.
5263         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5264
5265 2018-07-26  Tom Tromey  <tom@tromey.com>
5266
5267         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5268         Update.
5269         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5270         textlow and texthigh fields.
5271         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5272         Update.
5273         * mdebugread.c (parse_lines, parse_partial_symbols)
5274         (psymtab_to_symtab_1): Update.
5275         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5276         Rename fields.  Update comment.  Now private.
5277         <text_low, text_high, set_text_low, set_text_high>: New methods.
5278         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5279         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5280         (start_psymtab_common, maintenance_info_psymtabs)
5281         (maintenance_check_psymtabs): Update.
5282         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5283         texthigh fields.
5284         (scan_xcoff_symtab): Update.
5285
5286 2018-07-26  Tom Tromey  <tromey@redhat.com>
5287
5288         * psympriv.h (struct partial_symbol) <unrelocated_address,
5289         address, set_address>: New methods.
5290         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5291         (fixup_psymbol_section, relocate_psymtabs): Update.
5292         (print_partial_symbols): Add 'objfile' parameter.  Update.
5293         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5294         Update.
5295
5296 2018-07-26  Tom Tromey  <tom@tromey.com>
5297
5298         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5299         (debug_names::write_psymbols): Update.
5300         * psympriv.h (struct partial_symbol): Derive from
5301         general_symbol_info.
5302         <obj_section>: New method.
5303         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5304         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5305         (find_pc_sect_psymbol, fixup_psymbol_section)
5306         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5307         (print_partial_symbols, recursively_search_psymtabs)
5308         (compare_psymbols, psymbol_hash, psymbol_compare)
5309         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5310         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5311
5312 2018-07-26  Tom Tromey  <tromey@redhat.com>
5313
5314         * dbxread.c (end_psymtab): Remove dead code.
5315
5316 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5317
5318         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5319         DWARF unwinders are disabled.
5320         * dwarf2-frame.c: Add dwarf2read.h include.
5321         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5322         disabled.
5323         (dwarf2_frame_unwinders_enabled_p): Define.
5324         (show_dwarf_unwinders_enabled_p): New function.
5325         (_initialize_dwarf2_frame): Register switch to control DWARF
5326         unwinder use.
5327         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5328         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5329         (show_dwarf_cmdlist): Remove static keyword.
5330         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5331         (show_dwarf_cmdlist): Declare.
5332         * NEWS: Document new feature.
5333
5334 2018-07-26  Tom de Vries  <tdevries@suse.de>
5335
5336         PR breakpoints/23366
5337         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5338
5339 2018-07-26  Tom de Vries  <tdevries@suse.de>
5340
5341         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5342         DW_AT_count can't be translated to a dynamic prop.
5343
5344 2018-07-25  Tom de Vries  <tdevries@suse.de>
5345
5346         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5347         try/catch.
5348
5349 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5350
5351         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5352
5353 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5354
5355         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5356
5357 2018-07-24  Keith Seitz  <keiths@redhat.comt
5358
5359         PR symtab/23010
5360         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5361         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5362         instead of add_symbol_to_list.
5363         (read_file_scope): Call prepare_one_comp_unit before reading
5364         any other DIEs.
5365
5366 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5367
5368         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5369
5370 2018-07-24  Tom Tromey  <tom@tromey.com>
5371
5372         * utils.c (malloc, realloc, free): Don't declare.
5373         * configure, config.in: Rebuild.
5374         * configure.ac: Don't check for declarations of free, malloc, or
5375         realloc.
5376
5377 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5378
5379         * aarch64-linux-nat.c
5380         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5381         variable.
5382         * arm-linux-nat.c (fetch_regs): Likewise.
5383         (store_regs): Likewise.
5384         (fetch_vfp_regs): Likewise.
5385         (store_vfp_regs): Likewise.
5386         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5387         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5388         (arm_linux_nat_target::insert_watchpoint): Likewise.
5389         (arm_linux_nat_target::remove_watchpoint): Likewise.
5390         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5391         Likewise.
5392         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5393         Likewise.
5394         * ppc-linux-nat.c (fetch_register): Likewise.
5395         (fetch_all_gp_regs): Likewise.
5396         (fetch_ppc_registers): Likewise.
5397         (store_all_gp_regs): Likewise.
5398         (store_ppc_registers): Likewise.
5399         (hwdebug_insert_point): Likewise.
5400         (can_use_watchpoint_cond_accel): Likewise.
5401         * remote-sim.c (gdb_os_write_stdout): Likewise.
5402
5403 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5404             Tom Tromey  <tom@tromey.com>
5405
5406         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5407         test for it.
5408         * configure: Rebuild.
5409
5410 2018-07-22  Tom Tromey  <tom@tromey.com>
5411
5412         * regformats/regdat.sh: Define xmltarget_${name} inside
5413         #ifndef IN_PROCESS_AGENT.
5414
5415 2018-07-22  Tom Tromey  <tom@tromey.com>
5416
5417         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5418
5419 2018-07-22  Tom Tromey  <tom@tromey.com>
5420
5421         * symfile.c (reread_symbols): Notify iter, not objfile.
5422
5423 2018-07-22  Tom Tromey  <tom@tromey.com>
5424
5425         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5426         Use arch_ops.
5427         (ravenscar_thread_target::prepare_to_store): Likewise.
5428
5429 2018-07-22  Tom Tromey  <tom@tromey.com>
5430
5431         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5432         unused variable.  Call value_fetch_lazy when needed.
5433         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5434         Remove unused variable.  Call value_fetch_lazy when needed.
5435
5436 2018-07-22  Tom Tromey  <tom@tromey.com>
5437
5438         * m32c-tdep.c (mark_dma): Return void.
5439         (make_regs): Remove unused declarations.
5440
5441 2018-07-22  Tom Tromey  <tom@tromey.com>
5442
5443         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5444         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5445         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5446         bkscm_get_valid_block_smob_arg_unsafe for effect.
5447
5448 2018-07-22  Tom Tromey  <tom@tromey.com>
5449
5450         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5451         value_type.
5452
5453 2018-07-22  Tom Tromey  <tom@tromey.com>
5454
5455         * windows-nat.c (saved_context): Conditionally define.
5456         * remote.c (remote_target::remote_btrace_maybe_reopen):
5457         Conditionally declare "warned".
5458         * inflow.c (sigquit_ours): Conditionally define.
5459         (new_tty): Move "tty" declaration inside #if.
5460         * guile/guile.c (guile_datadir): Conditionally define.
5461         * charset.c (set_be_le_names): Move some declarations inside #if.
5462         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5463         #if.
5464         (parse_xml_btrace_conf): Likewise.
5465
5466 2018-07-22  Tom Tromey  <tom@tromey.com>
5467
5468         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5469
5470 2018-07-22  Tom Tromey  <tom@tromey.com>
5471
5472         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5473         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5474         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5475         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5476         * stack.c (frame_apply_level_command): Remove unused variable.
5477         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5478         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5479         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5480         unused variable.
5481         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5482         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5483         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5484         variable.
5485         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5486         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5487         variable.
5488         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5489         Remove unused variable.
5490         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5491         variable.
5492         * common/tdesc.c (print_xml_feature::visit): Remove unused
5493         variable.
5494         * compile/compile-object-load.c (store_regs): Remove unused
5495         variables.
5496         * complaints.c (clear_complaints): Remove unused variable.
5497         * corelow.c (core_target_open): Remove unused variable.
5498         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5499         variable.
5500         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5501         variable.
5502         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5503         variable.
5504         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5505         variable.
5506         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5507         variable.
5508         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5509         variable.
5510         * ia64-tdep.c (examine_prologue): Remove unused variable.
5511         * infcall.c (run_inferior_call): Remove unused variable.
5512         * inferior.c (exit_inferior): Remove unused variable.
5513         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5514         * linespec.c (decode_line_2): Remove unused variable.
5515         * linux-nat.c (super_close): Remove.
5516         * linux-tdep.c (linux_info_proc): Remove unused variable.
5517         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5518         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5519         Remove unused variable.
5520         * parse.c (find_minsym_type_and_address): Remove unused variable.
5521         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5522         variable.
5523         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5524         variable.
5525         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5526         variables.
5527         * record-btrace.c (record_btrace_target::store_registers): Remove
5528         unused variable.
5529         (cmd_show_record_btrace_cpu): Remove unused variable.
5530         * riscv-tdep.c (riscv_register_reggroup_p)
5531         (riscv_push_dummy_call, riscv_return_value): Remove unused
5532         variable.
5533         * rust-exp.y (literal): Remove unused variable.
5534         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5535         unused variable.
5536         <STRUCTOP_ANONYMOUS>: Likewise.
5537         * s390-linux-tdep.c (s390_linux_init_abi_31)
5538         (s390_linux_init_abi_64): Remove unused variable.
5539         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5540         (file_select_thread, net_windows_open, _initialize_ser_windows):
5541         Remove unused variables.
5542         * symtab.c (find_pc_sect_line): Remove unused variable.
5543         * target-memory.c (compute_garbled_blocks): Remove unused
5544         variable.
5545         (target_write_memory_blocks): Remove unused variable.
5546         * target.c (target_stack::unpush): Remove unused variables.
5547         * tracepoint.c (start_tracing, all_tracepoint_actions)
5548         (merge_uploaded_trace_state_variables)
5549         (print_one_static_tracepoint_marker): Remove unused variable.
5550         * unittests/basic_string_view/element_access/char/1.cc (test01):
5551         Remove unused variable.
5552         * windows-nat.c (windows_continue, windows_add_all_dlls)
5553         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5554         Remove unused variables.
5555
5556 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5557
5558         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5559         attr_profile in HAVE_ELF.
5560         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5561         HAVE_ELF.
5562
5563 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5564
5565         * frame.c (frame_register_unwind): Change parameter name.
5566         (frame_unwind_register): Likewise.
5567         (frame_unwind_register_value): Likewise.
5568         (frame_unwind_register_signed): Likewise.
5569         (frame_unwind_register_unsigned): Likewise.
5570         * frame.h (frame_register_unwind): Likewise.
5571         (frame_unwind_register): Likewise.
5572         (frame_unwind_register_value): Likewise.
5573         (frame_unwind_register_signed): Likewise.
5574         (frame_unwind_register_unsigned): Likewise.
5575         (frame_unwind_arch): Likewise.
5576
5577 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5578
5579         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5580         ISA maintenance.
5581
5582 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5583
5584         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5585         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5586         hand.
5587
5588 2018-07-20  Keith Seitz  <keiths@redhat.com>
5589
5590         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5591         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5592         m_compunit_symtab, m_language>: Add "m_" prefix.
5593         Update all uses.
5594         * buildsym.c: Update all uses.
5595
5596 2018-07-20  Tom Tromey  <tom@tromey.com>
5597
5598         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5599         * buildsym.h (record_line_ftype): Remove typedef.
5600
5601 2018-07-20  Tom Tromey  <tom@tromey.com>
5602
5603         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5604         (end_expandable_symtab): Likewise.
5605         (end_symtab_get_static_block): Likewise.
5606         (end_symtab_from_static_block): Likewise.
5607         * buildsym-legacy.c (augment_type_symtab): Remove.
5608         (end_expandable_symtab): Remove.
5609         (end_symtab_get_static_block): Remove.
5610         (end_symtab_from_static_block): Remove.
5611
5612 2018-07-20  Tom Tromey  <tom@tromey.com>
5613
5614         * dwarf2read.c: Include buildsym.h.
5615         (struct dwarf2_cu) <builder>: New method.
5616         (fixup_go_packaging): Update.
5617         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5618         use scoped_free_pendings.
5619         (using_directives): Add "cu" parameter, remove "language".
5620         (read_import_statement, setup_type_unit_groups, )
5621         (read_func_scope, read_lexical_block_scope)
5622         (dwarf2_record_block_ranges, read_namespace): Update.
5623         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5624         (lnp_state_machine::handle_end_sequence): Update.
5625         (class lnp_state_machine) <m_cu>: New member.
5626         <m_record_line_callback>: Remove.
5627         <m_currently_recording_lines>: New member.
5628         (lnp_state_machine::handle_set_file): Update.
5629         (noop_record_line): Remove.
5630         (dwarf_record_line_p): Add cu parameter.
5631         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5632         (lnp_state_machine::record_line)
5633         (lnp_state_machine::lnp_state_machine)
5634         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5635         (dwarf_decode_lines): Update.
5636         (dwarf2_start_subfile): Add cu parameter.
5637         (dwarf2_start_symtab, new_symbol): Update.
5638         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5639         Remove dwarf2_per_objfile parameter.
5640         (dwarf_decode_macros): Update.
5641
5642 2018-07-20  Tom Tromey  <tom@tromey.com>
5643
5644         * stabsread.c (define_symbol): Update.
5645         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5646         * dwarf2read.c (new_symbol): Update.
5647         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5648         * cp-namespace.c: Include buildsym.h.
5649         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5650         * buildsym-legacy.c (get_buildsym_compunit): New function.
5651
5652 2018-07-20  Tom Tromey  <tom@tromey.com>
5653
5654         * xcoffread.c: Include buildsym-legacy.h.
5655         * windows-nat.c: Include buildsym-legacy.h.
5656         * stabsread.c: Include buildsym-legacy.h.
5657         * mdebugread.c: Include buildsym-legacy.h.
5658         * buildsym-legacy.h: New file.
5659         * buildsym-legacy.c: New file, from buildsym.c.
5660         * go32-nat.c: Include buildsym-legacy.h.
5661         * dwarf2read.c: Include buildsym-legacy.h.
5662         * dbxread.c: Include buildsym-legacy.h.
5663         * cp-namespace.c: Include buildsym-legacy.h.
5664         * coffread.c: Include buildsym-legacy.h.
5665         * buildsym.h: Move some contents to buildsym-legacy.h.
5666         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5667         buildsym-legacy.c.
5668         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5669
5670 2018-07-20  Tom Tromey  <tom@tromey.com>
5671
5672         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5673         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5674         (buildsym_compunit::buildsym_compunit)
5675         (buildsym_compunit::~buildsym_compunit)
5676         (buildsym_compunit::get_macro_table): Define.
5677
5678 2018-07-20  Tom Tromey  <tom@tromey.com>
5679
5680         * buildsym.c (reset_symtab_globals): Remove.
5681         (buildsym_compunit::end_symtab_from_static_block): Update.
5682         (buildsym_compunit::augment_type_symtab): Update.
5683         (end_symtab_from_static_block): Call free_buildsym_compunit.
5684         (augment_type_symtab, end_symtab, end_expandable_symtab):
5685         Likewise.
5686
5687 2018-07-20  Tom Tromey  <tom@tromey.com>
5688
5689         * arch-utils.c: Do not include buildsym.h.
5690         * mipsread.c: Do not include buildsym.h.
5691         * machoread.c: Do not include buildsym.h.
5692         * elfread.c: Do not include buildsym.h.
5693
5694 2018-07-20  Tom Tromey  <tom@tromey.com>
5695
5696         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5697         initialization.
5698         (buildsym_compunit): Add new constructor.
5699         (struct buildsym_compunit) <get_last_source_file, finish_block,
5700         record_block_range, start_subfile, patch_subfile_names,
5701         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5702         set_last_source_start_addr, get_last_source_start_addr,
5703         get_local_using_directives, set_local_using_directives,
5704         get_global_using_directives, outermost_context_p,
5705         get_current_context_stack, get_context_stack_depth,
5706         get_current_subfile, get_local_symbols, get_file_symbols,
5707         get_global_symbols, record_debugformat, record_producer,
5708         push_context, pop_context, end_symtab_get_static_block,
5709         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5710         New public methods.
5711         <record_pending_block, finish_block_internal, make_blockvector,
5712         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5713         private methods.
5714         Update all users.
5715
5716 2018-05-22  Tom Tromey  <tom@tromey.com>
5717
5718         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5719         parameter.
5720         (finish_block_internal): Update.
5721
5722 2018-07-20  Tom Tromey  <tom@tromey.com>
5723
5724         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5725         parameter.
5726         (finish_block_internal): Update.
5727
5728 2018-07-20  Tom Tromey  <tom@tromey.com>
5729
5730         * buildsym.h (EXTERN): Don't define or undef.
5731         * buildsym.c (EXTERN): Don't define.
5732
5733 2018-07-20  Tom Tromey  <tom@tromey.com>
5734
5735         * buildsym.c: Remove TODO comment.
5736
5737 2018-07-20  Tom Tromey  <tom@tromey.com>
5738
5739         * coffread.c (coff_symtab_read): Update.
5740         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5741         (xcoff_new_init): Update.
5742         * mipsread.c (mipscoff_new_init): Update.
5743         * mdebugread.c (mdebug_build_psymtabs): Update.
5744         * elfread.c (elf_new_init): Update.
5745         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5746         Update.
5747         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5748         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5749         (stabsect_build_psymtabs): Update.
5750         * buildsym.h (buildsym_init): Don't declare.
5751         * buildsym.c: Update comment.
5752         (prepare_for_building): Remove.
5753         (start_symtab, restart_symtab): Update.
5754         (reset_symtab_globals): Update comment.
5755         (buildsym_init): Remove.
5756
5757 2018-07-20  Tom Tromey  <tom@tromey.com>
5758
5759         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5760         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5761         (read_enum_type, common_block_start, common_block_end)
5762         (cleanup_undefined_types_1, finish_global_stabs): Update.
5763         * mdebugread.c (psymtab_to_symtab_1): Update.
5764         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5765         (read_lexical_block_scope, new_symbol): Update.
5766         * dbxread.c (process_one_symbol): Update.
5767         * coffread.c (coff_symtab_read, process_coff_symbol)
5768         (coff_read_enum_type): Update.
5769         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5770         declare.
5771         (get_local_symbols, get_file_symbols, get_global_symbols): New
5772         functions.
5773         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5774         m_global_symbols.
5775         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5776         (~scoped_free_pendings): Update.
5777         (finish_block, prepare_for_building, reset_symtab_globals)
5778         (end_symtab_get_static_block, end_symtab_with_blockvector)
5779         (augment_type_symtab, push_context): Update.
5780         (get_local_symbols, get_file_symbols, get_global_symbols): New
5781         functions.
5782         (buildsym_init): Update.
5783
5784 2018-07-20  Tom Tromey  <tom@tromey.com>
5785
5786         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5787         (process_full_type_unit): Likewise.
5788         (dwarf2_start_symtab): Set list_in_scope.
5789
5790 2018-07-20  Tom Tromey  <tom@tromey.com>
5791
5792         * dwarf2read.c (process_psymtab_comp_unit_reader)
5793         (build_type_psymtabs_reader): Do not set list_in_scope.
5794
5795 2018-07-20  Tom Tromey  <tom@tromey.com>
5796
5797         * buildsym.c (free_pendings): Remove.
5798         (add_symbol_to_list, scoped_free_pendings)
5799         (finish_block_internal, buildsym_init): Update.
5800
5801 2018-07-20  Tom Tromey  <tom@tromey.com>
5802
5803         * xcoffread.c (read_xcoff_symtab): Update.
5804         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5805         Update.
5806         * dbxread.c (process_one_symbol): Update.
5807         * coffread.c (coff_symtab_read): Update.
5808         * buildsym.h (finish_block): Update.
5809         * buildsym.c (finish_block): Remove "listhead" argument.
5810         (end_symtab_get_static_block): Update.
5811
5812 2018-07-20  Tom Tromey  <tom@tromey.com>
5813
5814         * buildsym.h (class scoped_free_pendings): Remove constructor.
5815         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5816         method.
5817         <m_pending_block_obstack, m_pending_blocks>: New members.
5818         (pending_block_obstack, pending_blocks): Remove.
5819         (scoped_free_pendings::scoped_free_pendings): Default.
5820         (~scoped_free_pendings): Update.
5821         (free_pending_blocks): Remove.
5822         (finish_block_internal, record_pending_block, make_blockvector)
5823         (end_symtab_get_static_block, augment_type_symtab, push_context)
5824         (buildsym_init): Update.
5825
5826 2018-07-20  Tom Tromey  <tom@tromey.com>
5827
5828         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5829         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5830         members.
5831         (pending_addrmap, pending_addrmap_obstack)
5832         (pending_addrmap_interesting): Remove.
5833         (scoped_free_pendings, record_block_range, make_blockvector)
5834         (prepare_for_building, reset_symtab_globals, buildsym_init):
5835         Update.
5836
5837 2018-07-20  Tom Tromey  <tom@tromey.com>
5838
5839         * xcoffread.c (process_linenos): Update.
5840         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5841         * mdebugread.c (psymtab_to_symtab_1): Update.
5842         * dwarf2read.c (setup_type_unit_groups)
5843         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5844         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5845         * dbxread.c (process_one_symbol): Update.
5846         * coffread.c (coff_symtab_read, enter_linenos)
5847         (process_coff_symbol): Update.
5848         * buildsym.h (current_subfile): Don't declare.
5849         (get_current_subfile): Declare.
5850         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5851         member.
5852         (start_subfile, free_buildsym_compunit, push_subfile)
5853         (prepare_for_building, start_symtab): Update.
5854         (get_current_subfile): New function.
5855
5856 2018-07-20  Tom Tromey  <tom@tromey.com>
5857
5858         * coffread.c (coff_symtab_read): Update.
5859         * xcoffread.c (read_xcoff_symtab): Update.
5860         * dwarf2read.c (new_symbol): Update.
5861         (read_func_scope, read_lexical_block_scope): Update.
5862         * dbxread.c (process_one_symbol): Update.
5863         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5864         (outermost_context_p): Remove macro.
5865         (outermost_context_p, get_current_context_stack)
5866         (get_context_stack_depth): Declare.
5867         (pop_context): Return struct context_stack.
5868         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5869         member.
5870         (context_stack_size): Remove.
5871         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5872         (prepare_for_building, end_symtab_get_static_block)
5873         (augment_type_symtab, push_context): Update.
5874         (pop_context): Return struct context_stack.
5875         (outermost_context_p, get_current_context_stack)
5876         (get_context_stack_depth): New functions.
5877         (buildsym_init): Update.
5878
5879 2018-07-20  Tom Tromey  <tom@tromey.com>
5880
5881         * rust-exp.y: Now a pure parser.  Update all rules.
5882         (%union): Move earlier.
5883         (current_parser, work_obstack): Remove globals.
5884         (rust_parser, ~rust_parser): Update.
5885         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5886         lex_character, lex_number, lex_string, lex_identifier,
5887         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5888         convert_name, convert_params_to_expression,
5889         convert_ast_to_expression, ast_basic_type, ast_operation,
5890         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5891         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5892         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5893         ast_array_type, ast_slice_type, ast_reference_type,
5894         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5895         (rust_parse): Update.
5896         (rustyyerror, rustyylex): Add parser parameter.
5897         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5898         (rust_lex_stringish_test, rust_lex_test_sequence)
5899         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5900         (rust_lex_test_push_back, rust_lex_tests): Update.
5901
5902 2018-07-19  Pedro Alves  <palves@redhat.com>
5903
5904         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5905         gdb::unique_xmalloc_ptr.
5906         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5907         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5908         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5909         copy-initialization.
5910         * guile/scm-pretty-print.c (ppscm_print_children): Use
5911         gdb::unique_xmalloc_ptr instead of cleanups.
5912         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5913         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5914         gdb::unique_xmalloc_ptr.
5915         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5916         Adjust to use gdb::unique_xmalloc_ptr.
5917         * guile/scm-utils.c (extract_arg): Adjust.
5918         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5919         gdb::unique_xmalloc_ptr instead of a cleanup.
5920
5921 2018-07-19  Tom Tromey  <tom@tromey.com>
5922
5923         * utils.c (do_value_free_to_mark)
5924         (make_cleanup_value_free_to_mark): Remove.
5925         * utils.h (make_cleanup_value_free_to_mark): Remove.
5926
5927 2018-07-19  Pedro Alves  <palves@redhat.com>
5928
5929         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5930         forwarding reference.
5931
5932 2018-07-18  Pedro Alves  <palves@redhat.com>
5933
5934         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5935         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5936         cleanup.
5937
5938 2018-07-18  Pedro Alves  <palves@redhat.com>
5939
5940         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5941         exceptions.
5942         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5943         (gdbscm_wrap): New.
5944         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5945         directly instead of a cleanup.
5946         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5947         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5948         (vlscm_binop_gdbthrow): New, factored out from ...
5949         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5950         (vlscm_rich_compare): Use gdbscm_wrap.
5951         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5952         instead of a cleanup.
5953         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5954         cleanup.
5955         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5956         Use xfree directly instead of a cleanup.
5957         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5958         Adjust to use gdbscm_wrap and scoped_value_mark.
5959         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5960         (gdbscm_value_address, gdbscm_value_dereference)
5961         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5962         scoped_value_mark.
5963         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5964         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5965         scoped_value_mark.
5966         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5967         gdbscm_wrap and scoped_value_mark.
5968         (gdbscm_value_to_string): Use xfree directly instead of a
5969         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5970         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5971         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5972         scoped_value_mark.
5973         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5974         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5975         scoped_value_mark.
5976         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5977         gdbscm_wrap.
5978
5979 2018-07-18  Tom de Vries  <tdevries@suse.de>
5980
5981         * findvar.c (default_read_var_value): Also resolve dynamic type for
5982         LOC_OPTIMIZED_OUT vars.
5983
5984 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5985
5986         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5987         decoding.
5988
5989 2018-07-17  Tom Tromey  <tom@tromey.com>
5990
5991         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5992         (compute_enum_list, pascm_set_param_value_x)
5993         (gdbscm_parameter_value): Update.
5994         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5995         (gdbscm_scm_to_host_string): Update.
5996         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5997         Update.
5998         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5999         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6000         * guile/scm-string.c (gdbscm_scm_to_string): Return
6001         unique_xmalloc_ptr.
6002         (gdbscm_scm_to_host_string): Likewise.
6003
6004 2018-07-17  Tom Tromey  <tom@tromey.com>
6005
6006         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6007         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6008         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6009         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6010         unique_xmalloc_ptr.
6011
6012 2018-07-17  Tom Tromey  <tom@tromey.com>
6013
6014         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6015         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6016         Update.
6017         * guile/scm-cmd.c (cmdscm_function): Update.
6018         * guile/scm-pretty-print.c
6019         (ppscm_print_exception_unless_memory_error): Update.
6020         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6021         Return unique_xmalloc_ptr.
6022
6023 2018-07-17  Tom Tromey  <tom@tromey.com>
6024
6025         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6026         Use string_printf.
6027
6028 2018-07-17  Jim Wilson  <jimw@sifive.com>
6029
6030         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6031         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6032         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6033         unecessary braces after EF_RISCV_RVC test.  Delete call to
6034         set_gdbarch_decr_pc_after_break.
6035
6036         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6037         RISCV_LAST_FP_REGNUM + 1.
6038         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6039
6040 2018-07-17  Tom Tromey  <tom@tromey.com>
6041
6042         * configure.ac: Remove --disable-gdbcli.
6043         * configure: Rebuild.
6044         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6045         (SUBDIR_CLI_CFLAGS): Remove.
6046         (SFILES): Use SUBDIR_CLI_SRCS.
6047         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6048
6049 2018-07-17  Tom Tromey  <tom@tromey.com>
6050
6051         PR gdb/18624:
6052         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6053
6054 2018-07-16  Jim Wilson  <jimw@sifive.com>
6055
6056         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6057
6058 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6059
6060         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6061         variable.
6062         (libunwind_frame_sniffer): Likewise.
6063         (libunwind_frame_prev_register): Likewise.
6064         (libunwind_sigtramp_frame_sniffer): Likewise.
6065         * ia64-tdep.c (ia64_access_reg): Likewise.
6066         (ia64_access_rse_reg): Likewise.
6067         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6068         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6069
6070 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6071
6072         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6073
6074 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6075
6076         * remote-sim.c (gdbsim_target::close,
6077         gdbsim_target::mourn_inferior): Remove unused variables.
6078
6079 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6080
6081         * ia64-tdep.c (ktab_buf): New global.
6082         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6083         (get_kernel_table): Adjust.
6084
6085 2018-07-16  Tom Tromey  <tom@tromey.com>
6086
6087         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6088         * dwarf2read.c (using_directives, new_symbol): Use
6089         outermost_context_p.
6090         * dbxread.c (process_one_symbol): Use outermost_context_p.
6091         * coffread.c (coff_symtab_read): Use outermost_context_p.
6092
6093 2018-07-16  Tom Tromey  <tom@tromey.com>
6094
6095         * dwarf2read.c (using_directives, read_func_scope)
6096         (read_lexical_block_scope): Update.
6097         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6098         * buildsym.h (local_using_directives, global_using_directives):
6099         Don't declare.
6100         (get_local_using_directives, set_local_using_directives)
6101         (get_global_using_directives): Declare.
6102         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6103         m_global_using_directives>: New members.
6104         (finish_block_internal, prepare_for_building)
6105         (reset_symtab_globals, end_symtab_get_static_block)
6106         (push_context): Update.
6107         (get_local_using_directives, set_local_using_directives)
6108         (get_global_using_directives): New functions.
6109         (buildsym_init): Update.
6110
6111 2018-07-16  Tom Tromey  <tom@tromey.com>
6112
6113         * xcoffread.c (xcoff_initial_scan): Don't call
6114         free_pending_blocks.
6115         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6116         * buildsym.h (class scoped_free_pendings): Add constructor.
6117         (free_pending_blocks): Don't declare.
6118         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6119         (free_pending_blocks): Now static.
6120
6121 2018-07-16  Tom Tromey  <tom@tromey.com>
6122
6123         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6124         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6125         member.
6126         (struct subfile_stack): Remove.
6127         (subfile_stack): Remove.
6128         (push_subfile, pop_subfile, buildsym_init): Update.
6129
6130 2018-07-16  Tom Tromey  <tom@tromey.com>
6131
6132         * buildsym.c (push_subfile): Use gdb_assert.
6133         (pop_subfile): Use gdb_assert.
6134
6135 2018-07-16  Tom Tromey  <tom@tromey.com>
6136
6137         * buildsym.h (merge_symbol_lists): Remove.
6138         * buildsym.c (merge_symbol_lists): Remove.
6139
6140 2018-07-16  Tom Tromey  <tom@tromey.com>
6141
6142         * stabsread.c (scan_file_globals): Update comment.
6143         * stabsread.h (scan_file_globals): Move from buildsym.h.
6144         * buildsym.h (scan_file_globals): Move to stabsread.h.
6145
6146 2018-07-16  Tom Tromey  <tom@tromey.com>
6147
6148         * xcoffread.c (xcoff_new_init): Update.
6149         * mipsread.c (mipscoff_new_init): Update.
6150         * mdebugread.c (mdebug_build_psymtabs): Update.
6151         * elfread.c (elf_new_init): Update.
6152         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6153         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6154         * buildsym.h (buildsym_new_init): Don't declare.
6155         * buildsym.c (buildsym_new_init): Remove.
6156
6157 2018-07-16  Tom Tromey  <tom@tromey.com>
6158
6159         * stabsread.h (within_function): Move from buildsym.h.
6160         * stabsread.c (start_stabs): Clear within_function.
6161         * coffread.c (coff_start_symtab): Clear within_function.
6162         * buildsym.h (within_function): Move to stabsread.h.
6163         * buildsym.c (prepare_for_building): Update.
6164
6165 2018-07-16  Tom Tromey  <tom@tromey.com>
6166
6167         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6168         * dwarf2read.c (dwarf2_start_symtab): Don't set
6169         processing_gcc_compilation.
6170         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6171
6172 2018-07-16  Tom Tromey  <tom@tromey.com>
6173
6174         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6175         (next_symbol_text_func): Move from buildsym.h.
6176         * stabsread.c (hashname): Move from buildsym.c.
6177         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6178         (next_symbol_text_func, hashname): Move to stabsread.h.
6179         * buildsym.c: Don't include bcache.h
6180         (hashname): Move to stasbread.c.
6181
6182 2018-07-16  Tom Tromey  <tom@tromey.com>
6183
6184         * buildsym.h (context_stack_size): Don't declare.
6185         * buildsym.c (context_stack_size): New global.
6186
6187 2018-07-16  Tom Tromey  <tom@tromey.com>
6188
6189         * dbxread.c (processing_acc_compilation): New global.
6190         * buildsym.h (processing_acc_compilation): Don't declare.
6191
6192 2018-07-16  Tom Tromey  <tom@tromey.com>
6193
6194         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6195         * dbxread.c (read_ofile_symtab): Update.
6196         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6197         * buildsym.h (last_source_start_addr): Remove.
6198         (set_last_source_start_addr, get_last_source_start_addr):
6199         Declare.
6200         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6201         parameter.
6202         (struct buildsym_compunit) <m_last_source_start_addr>: New
6203         member.
6204         (prepare_for_building): Remove start_addr parameter.
6205         (start_symtab, restart_symtab, end_symtab_get_static_block)
6206         (end_symtab_with_blockvector): Update.
6207         (set_last_source_start_addr, get_last_source_start_addr): New
6208         functions.
6209
6210 2018-07-16  Tom Tromey  <tom@tromey.com>
6211
6212         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6213         member.
6214         (have_line_numbers): Remove.
6215         (record_line, prepare_for_building, end_symtab_get_static_block)
6216         (augment_type_symtab): Update.
6217
6218 2018-07-16  Tom Tromey  <tom@tromey.com>
6219
6220         * buildsym.c (~buildsym_compunit): Free the macro table.
6221         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6222         methods.
6223         <m_pending_macros>: New member.
6224         (pending_macros): Remove.
6225         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6226         (reset_symtab_globals, end_symtab_get_static_block)
6227         (end_symtab_with_blockvector, augment_type_symtab)
6228         (buildsym_init): Update.
6229
6230 2018-07-16  Tom Tromey  <tom@tromey.com>
6231
6232         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6233         parameter.
6234         (buildsym_compunit::set_last_source_file): New method.
6235         <m_last_source_file>: New member.
6236         (prepare_for_building): Remove "name" parameter.
6237         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6238         (last_source_file): Remove.
6239         (set_last_source_file, get_last_source_file): Update.
6240
6241 2018-07-16  Tom Tromey  <tom@tromey.com>
6242
6243         * buildsym.c (prepare_for_building): Add assert.
6244
6245 2018-07-16  Tom Tromey  <tom@tromey.com>
6246
6247         * buildsym.c (~buildsym_compunit): Update.
6248         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6249         (start_subfile, patch_subfile_names)
6250         (end_symtab_with_blockvector): Update.
6251
6252 2018-07-16  Tom Tromey  <tom@tromey.com>
6253
6254         * buildsym.c (struct buildsym_compunit): Add constructor,
6255         destructor, initializers.
6256         (start_buildsym_compunit): Remove.
6257         (free_buildsym_compunit): Use "delete".
6258         (start_symtab, restart_symtab): Use "new".
6259
6260 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6261
6262         * symfile.c (set_objfile_default_section_offset): Remove struct
6263         keyword.
6264
6265 2018-07-14  Stafford Horne  <shorne@gmail.com>
6266
6267         * (Responsible Maintainers): Add myself as or1k maintainer.
6268
6269 2018-07-13  Tom Tromey  <tom@tromey.com>
6270
6271         * symfile.c (set_objfile_default_section_offset): Use extra braces
6272         around initializer.
6273
6274 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6275
6276         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6277         non-branching basr.
6278
6279 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6280
6281         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6282         unittests/cli-utils-selftests.c
6283         * unittests/cli-utils-selftests.c: New file.
6284
6285 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6286
6287         * NEWS: Mention new commands. Mention change to 'thread apply'.
6288
6289 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6290
6291         * thread.c (thr_try_catch_cmd): New function.
6292         (thread_apply_all_command): Handle qcs flags.
6293         (thread_apply_command): Handle qcs flags.
6294         (taas_command): New function.
6295         (tfaas_command): New function.
6296         (_initialize_thread): Update to setup the new commands 'taas
6297         and 'tfaas'. Change doc string for 'thread apply'.
6298
6299 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6300
6301         * stack.c: (trailing_outermost_frame): New function, mostly
6302         extracted from backtrace_command_1.
6303         (leading_innermost_frame): New function.
6304         (backtrace_command_1): Update to call trailing_outermost_frame.
6305         (frame_apply_command_count): New function.
6306         (frame_apply_level_command): New function.
6307         (frame_apply_all_command): New function.
6308         (frame_apply_command): New function.
6309         (faas_command): New function.
6310         (frame_cmd_list): New variable.
6311         (_initialize_stack): Update to setup the new commands 'frame apply'
6312         and 'faas'.
6313
6314 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6315
6316         * cli-utils.c (number_or_range_parser::get_number): Only handle
6317         numbers or convenience var as numbers.
6318         (parse_flags): New function.
6319         (parse_flags_qcs): New function.
6320         (number_or_range_parser::finished): Ensure parsing end is detected
6321         before end of string.
6322         * cli-utils.h (parse_flags): New function.
6323         (parse_flags_qcs): New function.
6324         (number_or_range_parser): Remove m_finished bool.
6325         (number_or_range_parser::skip_range): Set m_in_range to false.
6326
6327 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6328
6329         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6330         on Windows.
6331
6332 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6333             Jan Kratochvil  <jan.kratochvil@redhat.com>
6334             Paul Fertser  <fercerpav@gmail.com>
6335             Tsutomu Seki  <sekiriki@gmail.com>
6336             Pedro Alves  <palves@redhat.com>
6337
6338         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6339         'unittests/parse-connection-spec-selftests.c'.
6340         (COMMON_SFILES): Add 'common/netstuff.c'.
6341         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6342         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6343         * common/netstuff.c: New file.
6344         * common/netstuff.h: New file.
6345         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6346         (wait_for_connect): Update comment.  New parameter
6347         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6348         Use 'sock' directly instead of 'scb->fd'.
6349         (try_connect): New function, with code from 'net_open'.
6350         (net_open): Rewrite main loop to deal with multiple
6351         sockets/addresses.  Handle IPv6-style hostnames; implement
6352         support for IPv6 connections.
6353         * unittests/parse-connection-spec-selftests.c: New file.
6354
6355 2018-07-11  Pedro Alves  <palves@redhat.com>
6356
6357         PR gdb/23377
6358         * remote.c (remote_target::remote_detach_pid): Call
6359         set_current_process.
6360
6361 2018-07-11  Pedro Alves  <palves@redhat.com>
6362
6363         * h8300-tdep.c (h8300_gdbarch_init): Remove
6364         set_gdbarch_ecoff_reg_to_regnum calls.
6365
6366 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6367
6368         PR c++/23373
6369         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6370         offsets/sizes for static members of a class/struct.
6371
6372 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6373
6374         * target-descriptions.c (tdesc_register_bitsize): Rename.
6375         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6376         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6377         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6378
6379 2018-07-10  Tom Tromey  <tom@tromey.com>
6380
6381         * breakpoint.c (moribund_locations): Now static and a
6382         std::vector.
6383         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6384         (build_bpstat_chain, update_global_location_list)
6385         (breakpoint_retire_moribund): Update.
6386         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6387         VEC.
6388
6389 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6390
6391         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6392         (riscv_register_reggroup_p): Use new function, remove unneeded
6393         parenthesis.
6394         (riscv_push_dummy_call): Extend assert to compare against xlen or
6395         flen based on register type.
6396
6397 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6398
6399         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6400
6401 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6402
6403         * remote.c (show_hardware_watchpoint_limit): New function.
6404         (show_hardware_watchpoint_length_limit): New function.
6405         (show_hardware_breakpoint_limit): New function.
6406         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6407         where appropriate, update help text.
6408
6409 2018-07-09  Tom Tromey  <tom@tromey.com>
6410
6411         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6412         (CLIBS): Don't mention NAT_CLIBS.
6413
6414 2018-07-09  Tom Tromey  <tom@tromey.com>
6415
6416         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6417         (LIBGDB_OBS, clean mostlyclean): Update.
6418         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6419
6420 2018-07-09  Tom Tromey  <tom@tromey.com>
6421
6422         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6423         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6424         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6425
6426 2018-07-09  Tom Tromey  <tom@tromey.com>
6427
6428         * Makefile.in (ALLDEPFILES): Remove exec.c.
6429         (COMMON_OBS): Remove exec.o.
6430         (COMMON_SFILES): Add exec.c.
6431
6432 2018-07-09  Tom Tromey  <tom@tromey.com>
6433
6434         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6435
6436 2018-07-09  Tom Tromey  <tom@tromey.com>
6437
6438         * Makefile.in (clean mostlyclean): Remove stamp-version.
6439         (version.c): Depend on stamp-version.
6440         (stamp-version): New rule, from version.c rule.
6441
6442 2018-07-09  Tom Tromey  <tom@tromey.com>
6443
6444         * Makefile.in (init.c): Depend on stamp-init.
6445         (stamp-init): New rule, from init.c rule.
6446         (clean mostlyclean): Remove stamp-init.
6447
6448 2018-07-09  Tom Tromey  <tom@tromey.com>
6449
6450         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6451         SUBDIR_GCC_COMPILE_SRCS.
6452
6453 2018-07-09  Tom Tromey  <tom@tromey.com>
6454
6455         * Makefile.in (init.c): Remove some unused sed rules.
6456
6457 2018-07-09  Tom Tromey  <tom@tromey.com>
6458
6459         * Makefile.in (TSOBS): Remove.
6460         (INIT_FILES): Update.
6461         (LIBGDB_OBS): Update.
6462         (COMMON_SFILES): Add inflow.c.
6463         (SFILES): Remove inflow.c.
6464
6465 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6466
6467         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6468
6469 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6470
6471         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6472         get_saveloc_name, is_signal_frame_name, step_name,
6473         init_remote_name, create_addr_space_name,
6474         destroy_addr_space_name, search_unwind_table_name,
6475         find_dyn_list_name): Constify.
6476
6477 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6478
6479         * darwin-nat.c (darwin_pthread_kill): New function.
6480         (darwin_resume_thread): Use darwin_pthread_kill.
6481
6482 2018-07-05  Tom de Vries  <tdevries@suse.de>
6483
6484         * macroexp.c (macro_buffer) <operator=>: New member function.
6485
6486 2018-07-04  Tom Tromey  <tom@tromey.com>
6487
6488         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6489
6490 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6491
6492         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6493         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6494         * maint.c: Likewise.
6495         * top.c: Likewise.
6496
6497 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6498
6499         * NEWS: Create a new section for the next release branch.
6500         Rename the section of the current branch, now that it has
6501         been cut.
6502
6503 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6504
6505         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6506         * version.in: Bump version to 8.2.50.DATE-git.
6507
6508 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6509             Pedro Alves  <palves@redhat.com>
6510
6511         * linux-nat.c (linux_init_ptrace): Rename to ...
6512         (linux_init_ptrace_procfs): ... this.  Call
6513         linux_proc_init_warnings.
6514         (linux_nat_target::post_attach)
6515         (linux_nat_target::post_startup_inferior): Adjust.
6516         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6517         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6518
6519 2018-07-04  Tom de Vries  <tdevries@suse.de>
6520
6521         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6522         check ...
6523         (read_comp_unit_head): ... here.
6524
6525 2018-07-03  Tom Tromey  <tom@tromey.com>
6526
6527         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6528         (stop_tracing, tstatus_command)
6529         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6530         (print_one_static_tracepoint_marker): Update.
6531         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6532         std::vector.
6533         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6534         VEC.
6535         (all_tracepoints, static_tracepoints_here): Return std::vector.
6536
6537 2018-07-03  Tom Tromey  <tom@tromey.com>
6538
6539         * common/ptid.c (ptid_equal): Remove.
6540         * common/ptid.h (ptid_equal): Don't declare.
6541         * ada-tasks.c: Update.
6542         * breakpoint.c: Update.
6543         * common/agent.c: Update.
6544         * corelow.c: Update.
6545         * darwin-nat-info.c: Update.
6546         * darwin-nat.c: Update.
6547         * dcache.c: Update.
6548         * dtrace-probe.c: Update.
6549         * dummy-frame.c: Update.
6550         * fbsd-nat.c: Update.
6551         * frame.c: Update.
6552         * gdbthread.h: Update.
6553         * gnu-nat.c: Update.
6554         * go32-nat.c: Update.
6555         * inf-loop.c: Update.
6556         * inf-ptrace.c: Update.
6557         * infcall.c: Update.
6558         * infcmd.c: Update.
6559         * inflow.c: Update.
6560         * infrun.c: Update.
6561         * linux-fork.c: Update.
6562         * linux-nat.c: Update.
6563         * linux-thread-db.c: Update.
6564         * mi/mi-cmd-var.c: Update.
6565         * mi/mi-interp.c: Update.
6566         * mi/mi-main.c: Update.
6567         * nto-procfs.c: Update.
6568         * ppc-linux-tdep.c: Update.
6569         * procfs.c: Update.
6570         * python/py-inferior.c: Update.
6571         * python/py-record-btrace.c: Update.
6572         * python/py-record.c: Update.
6573         * ravenscar-thread.c: Update.
6574         * regcache.c: Update.
6575         * remote-sim.c: Update.
6576         * remote.c: Update.
6577         * sol-thread.c: Update.
6578         * solib.c: Update.
6579         * target.c: Update.
6580         * tui/tui-stack.c: Update.
6581         * varobj.c: Update.
6582         * windows-nat.c: Update.
6583         * windows-tdep.c: Update.
6584
6585 2018-07-03  Tom Tromey  <tom@tromey.com>
6586
6587         * common/ptid.c (ptid_match): Remove.
6588         * common/ptid.h (ptid_match): Don't declare.
6589         * fbsd-nat.c: Update.
6590         * infcmd.c: Update.
6591         * infrun.c: Update.
6592         * linux-nat.c: Update.
6593         * record-btrace.c: Update.
6594         * regcache.c: Update.
6595         * remote.c: Update.
6596
6597 2018-07-03  Tom Tromey  <tom@tromey.com>
6598
6599         * common/ptid.c (ptid_tid_p): Remove.
6600         * common/ptid.h (ptid_tid_p): Don't declare.
6601         * sol-thread.c: Update.
6602
6603 2018-07-03  Tom Tromey  <tom@tromey.com>
6604
6605         * common/ptid.c (ptid_lwp_p): Remove.
6606         * common/ptid.h (ptid_lwp_p): Don't declare.
6607         * fbsd-nat.c: Update.
6608         * linux-nat.c: Update.
6609         * nat/linux-procfs.c: Update.
6610         * nat/x86-linux-dregs.c: Update.
6611         * sol-thread.c: Update.
6612
6613 2018-07-03  Tom Tromey  <tom@tromey.com>
6614
6615         * common/ptid.c (ptid_is_pid): Remove.
6616         * common/ptid.h (ptid_is_pid): Don't declare.
6617         * infrun.c: Update.
6618         * linux-nat.c: Update.
6619         * mi/mi-interp.c: Update.
6620         * remote.c: Update.
6621         * thread.c: Update.
6622
6623 2018-07-03  Tom Tromey  <tom@tromey.com>
6624
6625         * common/ptid.c (ptid_get_tid): Remove.
6626         * common/ptid.h (ptid_get_tid): Don't declare.
6627         * ada-tasks.c: Update.
6628         * aix-thread.c: Update.
6629         * bsd-uthread.c: Update.
6630         * darwin-nat.c: Update.
6631         * fbsd-nat.c: Update.
6632         * i386-darwin-nat.c: Update.
6633         * infrun.c: Update.
6634         * linux-tdep.c: Update.
6635         * nto-procfs.c: Update.
6636         * ppc-ravenscar-thread.c: Update.
6637         * python/py-infthread.c: Update.
6638         * ravenscar-thread.c: Update.
6639         * sol-thread.c: Update.
6640         * sparc-ravenscar-thread.c: Update.
6641         * windows-nat.c: Update.
6642
6643 2018-07-03  Tom Tromey  <tom@tromey.com>
6644
6645         * common/ptid.c (ptid_get_lwp): Remove.
6646         * common/ptid.h (ptid_get_lwp): Don't declare.
6647         * aarch64-linux-nat.c: Update.
6648         * ada-tasks.c: Update.
6649         * aix-thread.c: Update.
6650         * amd64-linux-nat.c: Update.
6651         * arm-linux-nat.c: Update.
6652         * corelow.c: Update.
6653         * fbsd-nat.c: Update.
6654         * fbsd-tdep.c: Update.
6655         * gnu-nat.c: Update.
6656         * i386-cygwin-tdep.c: Update.
6657         * i386-gnu-nat.c: Update.
6658         * i386-linux-nat.c: Update.
6659         * ia64-linux-nat.c: Update.
6660         * inf-ptrace.c: Update.
6661         * infrun.c: Update.
6662         * linux-fork.c: Update.
6663         * linux-nat.c: Update.
6664         * linux-tdep.c: Update.
6665         * linux-thread-db.c: Update.
6666         * mips-linux-nat.c: Update.
6667         * nat/aarch64-linux-hw-point.c: Update.
6668         * nat/aarch64-linux.c: Update.
6669         * nat/linux-btrace.c: Update.
6670         * nat/linux-osdata.c: Update.
6671         * nat/linux-procfs.c: Update.
6672         * nat/x86-linux-dregs.c: Update.
6673         * obsd-nat.c: Update.
6674         * ppc-fbsd-nat.c: Update.
6675         * ppc-linux-nat.c: Update.
6676         * procfs.c: Update.
6677         * python/py-infthread.c: Update.
6678         * ravenscar-thread.c: Update.
6679         * remote.c: Update.
6680         * s390-linux-nat.c: Update.
6681         * sol-thread.c: Update.
6682         * sol2-tdep.c: Update.
6683         * spu-linux-nat.c: Update.
6684         * x86-linux-nat.c: Update.
6685         * xtensa-linux-nat.c: Update.
6686
6687 2018-07-03  Tom Tromey  <tom@tromey.com>
6688
6689         * common/ptid.c (ptid_get_pid): Remove.
6690         * common/ptid.h (ptid_get_pid): Don't declare.
6691         * aarch64-linux-nat.c: Update.
6692         * ada-lang.c: Update.
6693         * aix-thread.c: Update.
6694         * alpha-bsd-nat.c: Update.
6695         * amd64-fbsd-nat.c: Update.
6696         * amd64-linux-nat.c: Update.
6697         * arm-linux-nat.c: Update.
6698         * arm-nbsd-nat.c: Update.
6699         * auxv.c: Update.
6700         * break-catch-syscall.c: Update.
6701         * breakpoint.c: Update.
6702         * bsd-uthread.c: Update.
6703         * corelow.c: Update.
6704         * ctf.c: Update.
6705         * darwin-nat.c: Update.
6706         * fbsd-nat.c: Update.
6707         * fbsd-tdep.c: Update.
6708         * gcore.c: Update.
6709         * gnu-nat.c: Update.
6710         * hppa-nbsd-nat.c: Update.
6711         * hppa-obsd-nat.c: Update.
6712         * i386-fbsd-nat.c: Update.
6713         * ia64-linux-nat.c: Update.
6714         * inf-ptrace.c: Update.
6715         * infcmd.c: Update.
6716         * inferior.c: Update.
6717         * inferior.h: Update.
6718         * inflow.c: Update.
6719         * infrun.c: Update.
6720         * linux-fork.c: Update.
6721         * linux-nat.c: Update.
6722         * linux-tdep.c: Update.
6723         * linux-thread-db.c: Update.
6724         * m68k-bsd-nat.c: Update.
6725         * mi/mi-interp.c: Update.
6726         * mi/mi-main.c: Update.
6727         * mips-linux-nat.c: Update.
6728         * mips-nbsd-nat.c: Update.
6729         * mips64-obsd-nat.c: Update.
6730         * nat/aarch64-linux-hw-point.c: Update.
6731         * nat/aarch64-linux.c: Update.
6732         * nat/linux-btrace.c: Update.
6733         * nat/linux-osdata.c: Update.
6734         * nat/linux-procfs.c: Update.
6735         * nat/x86-linux-dregs.c: Update.
6736         * nto-procfs.c: Update.
6737         * obsd-nat.c: Update.
6738         * ppc-linux-nat.c: Update.
6739         * ppc-nbsd-nat.c: Update.
6740         * ppc-obsd-nat.c: Update.
6741         * proc-service.c: Update.
6742         * procfs.c: Update.
6743         * python/py-inferior.c: Update.
6744         * python/py-infthread.c: Update.
6745         * ravenscar-thread.c: Update.
6746         * record.c: Update.
6747         * remote-sim.c: Update.
6748         * remote.c: Update.
6749         * rs6000-nat.c: Update.
6750         * s390-linux-nat.c: Update.
6751         * sh-nbsd-nat.c: Update.
6752         * sol-thread.c: Update.
6753         * sparc-nat.c: Update.
6754         * sparc64-tdep.c: Update.
6755         * spu-linux-nat.c: Update.
6756         * spu-tdep.c: Update.
6757         * target-debug.h: Update.
6758         * target.c: Update.
6759         * thread.c: Update.
6760         * tid-parse.c: Update.
6761         * tracefile-tfile.c: Update.
6762         * vax-bsd-nat.c: Update.
6763         * windows-nat.c: Update.
6764         * x86-linux-nat.c: Update.
6765         * x86-nat.c: Update.
6766
6767 2018-07-03  Tom Tromey  <tom@tromey.com>
6768
6769         * common/ptid.c (pid_to_ptid): Remove.
6770         * common/ptid.h (pid_to_ptid): Don't declare.
6771         * aix-thread.c: Update.
6772         * arm-linux-nat.c: Update.
6773         * common/ptid.c: Update.
6774         * common/ptid.h: Update.
6775         * corelow.c: Update.
6776         * ctf.c: Update.
6777         * darwin-nat.c: Update.
6778         * fbsd-nat.c: Update.
6779         * fork-child.c: Update.
6780         * gnu-nat.c: Update.
6781         * go32-nat.c: Update.
6782         * inf-ptrace.c: Update.
6783         * infcmd.c: Update.
6784         * inferior.c: Update.
6785         * infrun.c: Update.
6786         * linux-fork.c: Update.
6787         * linux-nat.c: Update.
6788         * nat/aarch64-linux-hw-point.c: Update.
6789         * nat/fork-inferior.c: Update.
6790         * nat/x86-linux-dregs.c: Update.
6791         * nto-procfs.c: Update.
6792         * obsd-nat.c: Update.
6793         * procfs.c: Update.
6794         * progspace.c: Update.
6795         * remote.c: Update.
6796         * rs6000-nat.c: Update.
6797         * s390-linux-nat.c: Update.
6798         * sol-thread.c: Update.
6799         * spu-linux-nat.c: Update.
6800         * target.c: Update.
6801         * top.c: Update.
6802         * tracefile-tfile.c: Update.
6803         * windows-nat.c: Update.
6804
6805 2018-07-03  Tom Tromey  <tom@tromey.com>
6806
6807         * common/ptid.h (ptid_build): Don't declare.
6808         * common/ptid.c (ptid_build): Remove.
6809         * aix-thread.c: Update.
6810         * bsd-kvm.c: Update.
6811         * bsd-uthread.c: Update.
6812         * common/agent.c: Update.
6813         * common/ptid.c: Update.
6814         * common/ptid.h: Update.
6815         * corelow.c: Update.
6816         * darwin-nat.c: Update.
6817         * fbsd-nat.c: Update.
6818         * gnu-nat.c: Update.
6819         * linux-fork.c: Update.
6820         * linux-nat.c: Update.
6821         * linux-thread-db.c: Update.
6822         * nat/linux-osdata.c: Update.
6823         * nat/linux-procfs.c: Update.
6824         * nto-procfs.c: Update.
6825         * obsd-nat.c: Update.
6826         * proc-service.c: Update.
6827         * procfs.c: Update.
6828         * ravenscar-thread.c: Update.
6829         * remote-sim.c: Update.
6830         * remote.c: Update.
6831         * sol-thread.c: Update.
6832         * target.c: Update.
6833         * windows-nat.c: Update.
6834
6835 2018-07-03  Tom Tromey  <tom@tromey.com>
6836
6837         * infrun.c (follow_exec): Use exit_inferior_silent.
6838         * inferior.c (exit_inferior_num_silent): Remove.
6839         * inferior.h (exit_inferior_num_silent): Don't declare.
6840
6841 2018-07-03  Tom Tromey  <tom@tromey.com>
6842
6843         PR cli/23340:
6844         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6845         inferior_ptid on error.
6846
6847 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6848             Simon Marchi  <simon.marchi@polymtl.ca>
6849
6850         PR tdep/8282
6851         * disasm.h (gdb_disassembler): Add
6852         `m_disassembler_options_holder'. member
6853         * disasm.c (get_all_disassembler_options): New function.
6854         (gdb_disassembler::gdb_disassembler): Use it.
6855         (gdb_buffered_insn_length_init_dis): Likewise.
6856         (gdb_buffered_insn_length): Adjust accordingly.
6857         (set_disassembler_options): Handle options with arguments.
6858         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6859         line if showing options with descriptions.
6860         (disassembler_options_completer): Adapt to using the
6861         `disasm_options_and_args_t' structure.
6862         * mips-tdep.c (mips_disassembler_options): New variable.
6863         (mips_disassembler_options_o32): Likewise.
6864         (mips_disassembler_options_n32): Likewise.
6865         (mips_disassembler_options_n64): Likewise.
6866         (gdb_print_insn_mips): Don't set `disassembler_options'.
6867         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6868         functions.
6869         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6870         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6871         `gdbarch_disassembler_options_implicit' and
6872         `gdbarch_valid_disassembler_options'.
6873         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6874         `disasm_options_and_args_t' structure.
6875         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6876         method.
6877         (valid_disassembler_options): Switch from `disasm_options_t' to
6878         the `disasm_options_and_args_t' structure.
6879         * NEWS: Document `set disassembler-options' support for the MIPS
6880         target.
6881         * gdbarch.h: Regenerate.
6882         * gdbarch.c: Regenerate.
6883
6884 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6885
6886         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6887
6888 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6889
6890         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6891         parameter in call to amd64_target_description.
6892         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6893         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6894         (amd64fbsd_init_abi): Likewise.
6895         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6896         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6897         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6898         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6899
6900 2018-06-29  Pedro Alves  <palves@redhat.com>
6901
6902         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6903         "segments" parameter.
6904         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6905         (_initialize_amd64_tdep): Update call to
6906         amd64_create_target_description.
6907         (amd64_target_description): Add "segments" parameter.  Adjust
6908         the implementation to use it.
6909         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6910         call to amd64_create_target_description.
6911         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6912         * gdb/arch/amd64.h (amd64_create_target_description): Add
6913         "segments" register.
6914         * gdb/arch/amd64.c (amd64_create_target_description): Add
6915         "segments" parameter.  Call create_feature_i386_64bit_segments
6916         only if SEGMENTS is true.
6917         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6918         call to amd64_create_target_description.
6919
6920 2018-06-29  Pedro Alves  <palves@redhat.com>
6921
6922         * thread.c (thread_target_id_str): New, factored out from ...
6923         (print_thread_info_1): ... here.  Use it to compute the max
6924         "Target Id" column width.
6925
6926 2018-06-29  Pedro Alves  <palves@redhat.com>
6927
6928         * remote.c (remote_target::extra_thread_info): Delete
6929         'display_buf' and 'n' locals.  from the cache, regardless of
6930         packet mechanims is in use.  Use cache for qThreadExtra and qP
6931         methods too.
6932
6933 2018-06-29  Pedro Alves  <palves@redhat.com>
6934
6935         * blockframe.c (find_pc_sect_containing_function): New function.
6936         * breakpoint.c (print_breakpoint_location): Don't call
6937         find_pc_sect_function.
6938         * linespec.c (create_sals_line_offset): Record the location's
6939         symbol in the sal.
6940         * linespec.c (convert_address_location_to_sals): Fill in sal's
6941         symbol with find_pc_sect_containing_function.
6942         * symtab.c (find_function_start_sal): Rename to ...
6943         (find_function_start_sal_1): ... this.
6944         (find_function_start_sal): Reimplement as wrapper around
6945         find_function_start_sal_1, and use
6946         find_pc_sect_containing_function to fill in the sal's symbol.
6947         (find_function_start_sal(symbol*, bool)): Adjust.
6948         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6949         comments.
6950         (find_pc_sect_containing_function): Declare.
6951
6952 2018-06-29  Pedro Alves  <palves@redhat.com>
6953
6954         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6955         true if the the location has no symbol.
6956
6957 2018-06-28  Tom Tromey  <tom@tromey.com>
6958
6959         * NEWS: Mention --enable-codesign.
6960         * silent-rules.mk (ECHO_SIGN): New variable.
6961         * configure.ac: Add --enable-codesign.
6962         * configure: Rebuild.
6963         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6964         (gdb$(EXEEXT)): Optionally invoke codesign.
6965
6966 2018-06-28  Pedro Alves  <palves@redhat.com>
6967
6968         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6969         comments.
6970         (switch_to_thread_no_regs): Adjust comment.
6971         * infcmd.c (stop_pc): Delete.
6972         (post_create_inferior, info_program_command): Replace references
6973         to stop_pc with references to thread_info->suspend.stop_pc.
6974         * inferior.h (stop_pc): Delete declaration.
6975         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6976         (handle_inferior_event_1, handle_signal_stop)
6977         (process_event_stop_test, keep_going_stepped_thread)
6978         (handle_step_into_function, handle_step_into_function_backward)
6979         (print_stop_location): Replace references to stop_pc with
6980         references to thread_info->suspend.stop_pc.
6981         (struct infcall_suspend_state) <stop_pc>: Delete field.
6982         (save_infcall_suspend_state, restore_infcall_suspend_state):
6983         Remove references to inf_stat->stop_pc.
6984         * linux-fork.c (fork_load_infrun_state): Likewise.
6985         * record-btrace.c (record_btrace_set_replay): Likewise.
6986         * record-full.c (record_full_goto_entry): Likewise.
6987         * remote.c (print_one_stopped_thread): Likewise.
6988         * target.c (target_resume): Extend comment.
6989         * thread.c (set_executing_thread): New.
6990         (set_executing): Use it.
6991         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6992         Remove references to stop_pc.
6993
6994 2018-06-28  Pedro Alves  <palves@redhat.com>
6995
6996         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6997         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6998
6999 2018-06-28  Tom Tromey  <tom@tromey.com>
7000
7001         * coffread.c (coff_symfile_finish): Update.
7002         * xcoffread.c (xcoff_symfile_finish): Update.
7003         * elfread.c (elf_symfile_finish): Update.
7004         * symfile.h (dwarf2_free_objfile): Don't declare.
7005         * dwarf2read.c (_initialize_dwarf2_read): Use
7006         register_objfile_data_with_cleanup.
7007         (dwarf2_free_objfile): Now static.  Change signature.
7008
7009 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7010
7011         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7012         option "-o" to add-symbol-file-load to add an offset to each
7013         section's load address.
7014         * symfile.c (set_objfile_default_section_offset): New function.
7015
7016 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7017
7018         * symfile.c (add_symbol_file_command): Make sure that sections
7019         with the same name are sorted in the same order.
7020
7021 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7022
7023         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7024         require the second argument.  If omitted, load sections at the
7025         addresses specified in the file.
7026
7027 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7028
7029         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7030         (_initialize_symfile): Add option "-o" to symbol-file to add an
7031         offset to each section of the symbol file.
7032
7033 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7034
7035         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7036
7037 2018-06-27  Tom Tromey  <tom@tromey.com>
7038
7039         * stack.c (_initialize_stack): Update "func" help text.
7040
7041 2018-06-27  Tom Tromey  <tom@tromey.com>
7042
7043         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7044         std::vector.
7045         (unwind_infopy_str, pyuw_create_unwind_info)
7046         (unwind_infopy_add_saved_register, pyuw_sniffer)
7047         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7048         Update.
7049         (struct saved_reg): Add constructor.
7050         <value>: Now a gdbpy_ref<>.
7051
7052 2018-06-27  Tom Tromey  <tom@tromey.com>
7053
7054         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7055
7056 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7057
7058         * gdb-gdb.py.in: Format using autopep8.
7059
7060 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7061
7062         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7063         (type_lookup_function): Recognize CORE_ADDR values.
7064
7065 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7068         print tag_name.
7069
7070 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7071
7072         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7073         <__lt__>: Add.
7074
7075 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7076
7077         * gdb-gdb.py: Move to...
7078         * gdb-gdb.py.in: ... here.
7079         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7080         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7081         dependencies.
7082         (distclean): Remove gdb-gdb.py when cleaning.
7083         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7084         * configure: Re-generate.
7085
7086 2018-06-27  Pedro Alves  <palves@redhat.com>
7087
7088         * proc-service.c (get_ps_regcache): New.
7089         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7090         (ps_lsetfpregs): Use it.
7091
7092 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7093
7094         PR gdb/21695
7095         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7096         declaration.
7097         (dwarf_decode_lines_1): Adjust.
7098
7099 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7100
7101         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7102         override.
7103         <info_proc>: Likewise.
7104
7105 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7106
7107         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7108         to windows_fetch_one_register, and only handle the case of
7109         fetching one register.  Move the code that reloads the context
7110         and iterates over all registers if R is negative to...
7111         (windows_nat_target::fetch_registers): ... here.
7112         (do_windows_store_inferior_registers): Rename to
7113         windows_store_one_register, and only handle the case of storing
7114         one register.  Move the code that handles the case where r is
7115         negative to...
7116         (windows_nat_target::store_registers) ... here.
7117
7118 2018-06-26  Tom Tromey  <tom@tromey.com>
7119
7120         PR rust/22574:
7121         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7122         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7123         Update.
7124         (rust_internal_print_type): Add podata parameter.
7125         (rust_print_type): Update.
7126
7127 2018-06-26  Tom Tromey  <tom@tromey.com>
7128
7129         * typeprint.h (struct print_offset_data) <update, finish,
7130         maybe_print_hole>: New methods.
7131         <indentation>: New constant.
7132         * typeprint.c (print_offset_data::indentation): Define.
7133         (print_offset_data::maybe_print_hole, print_offset_data::update)
7134         (print_offset_data::finish): Move from c-typeprint.c and rename.
7135         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7136         (print_spaces_filtered_with_print_options): Update.
7137         (c_print_type_union_field_offset, maybe_print_hole)
7138         (c_print_type_struct_field_offset): Move to typeprint.c and
7139         rename.
7140         (c_type_print_base_struct_union): Update.
7141
7142 2018-06-25  Pedro Alves  <palves@redhat.com>
7143
7144         * gdbthread.h (thread_info_ref, delete_thread)
7145         (delete_thread_silent, first_thread_of_inferior)
7146         (any_thread_of_inferior, switch_to_thread)
7147         (enable_thread_stack_temporaries)
7148         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7149         (get_last_thread_stack_temporary)
7150         (value_in_thread_stack_temporaries, can_access_registers_thread):
7151         Spell out "struct thread_info" instead of just "thread_info".
7152         * inferior.h (notice_new_inferior): Likewise.
7153
7154 2018-06-25  Pedro Alves  <palves@redhat.com>
7155
7156         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7157         pass thread_info pointer to delete_thread.
7158         (windows_nat_target::detach): Pass inferior pointer to
7159         detach_inferior.
7160         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7161         delete_thread.
7162         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7163         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7164         and pass a thread_info pointer to delete_thread.
7165         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7166         pass thread_info pointer to delete_thread.
7167         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7168         delete_thread_silent call.
7169         * procfs.c (procfs_target::detach): Pass inferior pointer to
7170         detach_inferior.
7171         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7172         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7173         delete_thread_silent call.
7174         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7175         pass thread_info pointer to delete_thread.
7176         (windows_nat_target::detach): Pass inferior pointer to
7177         delete_inferior.
7178
7179 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7180
7181         * regcache.c (readable_regcache::read_part): Fix asserts.
7182         (reg_buffer::raw_collect_part): New function.
7183         (regcache::write_part): Fix asserts.
7184         (reg_buffer::raw_supply_part): New function.
7185         (regcache::transfer_regset_register): New helper function.
7186         (regcache::transfer_regset): Call new functions.
7187         (regcache_supply_regset): Use gdb_byte*.
7188         (regcache::supply_regset): Likewise.
7189         (regcache_collect_regset): Likewise.
7190         (regcache::collect_regset): Likewise.
7191         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7192         (reg_buffer::raw_supply_part): Likewise.
7193         (regcache::transfer_regset_register): Likewise.
7194         (regcache::transfer_regset): Use gdb_byte*.
7195
7196 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7197
7198         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7199
7200 2018-06-21  Pedro Alves  <palves@redhat.com>
7201
7202         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7203         instead of a ptid_t.  All callers adjusted.
7204         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7205         adjusted.
7206         (print_ada_task_info, display_current_task_id, task_command_1):
7207         Adjust.
7208         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7209         inferior_thread.
7210         (breakpoint_kind): Adjust.
7211         (remove_breakpoints_pid): Rename to ...
7212         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7213         pointer.  All callers adjusted.
7214         (bpstat_clear_actions): Use inferior_thread.
7215         (get_bpstat_thread): New.
7216         (bpstat_do_actions): Use it.
7217         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7218         to take a thread_info pointer.  All callers adjusted.
7219         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7220         (breakpoint_re_set_thread): Use inferior_thread.
7221         * breakpoint.h (struct inferior): Forward declare.
7222         (bpstat_stop_status): Update.
7223         (remove_breakpoints_pid): Delete.
7224         (remove_breakpoints_inf): New.
7225         * bsd-uthread.c (bsd_uthread_target::wait)
7226         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7227         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7228         (maint_btrace_packet_history_cmd)
7229         (maint_btrace_clear_packet_history_cmd): Adjust.
7230         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7231         inferior_thread.
7232         * cli/cli-interp.c: Include "inferior.h".
7233         * common/refcounted-object.h (struct
7234         refcounted_object_ref_policy): New.
7235         * compile/compile-object-load.c: Include gdbthread.h.
7236         (store_regs): Use inferior_thread.
7237         * corelow.c (core_target::close): Use current_inferior.
7238         (core_target_open): Adjust to use first_thread_of_inferior and use
7239         the current inferior.
7240         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7241         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7242         <thread>: ... this new field.  All references adjusted.
7243         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7244         Take a thread_info pointer instead of a ptid_t.
7245         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7246         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7247         thread_info pointer instead of a ptid_t.
7248         * elfread.c: Include "inferior.h".
7249         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7250         Use inferior_thread.
7251         * eval.c (evaluate_subexp): Likewise.
7252         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7253         inferior_thread.
7254         * gdb_proc_service.h (struct thread_info): Forward declare.
7255         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7256         <thread>: ... this new field.  All references adjusted.
7257         * gdbarch.h, gdbarch.c: Regenerate.
7258         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7259         'thread' parameter.  All implementations and callers adjusted.
7260         * gdbthread.h (thread_info) <set_running>: New method.
7261         (delete_thread, delete_thread_silent): Take a thread_info pointer
7262         instead of a ptid.
7263         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7264         (first_thread_of_process): Delete, replaced by ...
7265         (first_thread_of_inferior): ... this new function.  All callers
7266         adjusted.
7267         (any_live_thread_of_process): Delete, replaced by ...
7268         (any_live_thread_of_inferior): ... this new function.  All callers
7269         adjusted.
7270         (switch_to_thread, switch_to_no_thread): Declare.
7271         (is_executing): Delete.
7272         (enable_thread_stack_temporaries): Update comment.
7273         <enable_thread_stack_temporaries>: Take a thread_info pointer
7274         instead of a ptid_t.  Incref the thread.
7275         <~enable_thread_stack_temporaries>: Decref the thread.
7276         <m_ptid>: Delete
7277         <m_thr>: New.
7278         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7279         (get_last_thread_stack_temporary)
7280         (value_in_thread_stack_temporaries, can_access_registers_thread):
7281         Take a thread_info pointer instead of a ptid_t.  All callers
7282         adjusted.
7283         * infcall.c (get_call_return_value): Use inferior_thread.
7284         (run_inferior_call): Work with thread pointers instead of ptid_t.
7285         (call_function_by_hand_dummy): Work with thread pointers instead
7286         of ptid_t.  Use thread_info_ref.
7287         * infcmd.c (proceed_thread_callback): Access thread's state
7288         directly.
7289         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7290         access thread's state directly.
7291         (continue_command): Use inferior_thread.
7292         (info_program_command): Use find_thread_ptid and access thread
7293         state directly.
7294         (proceed_after_attach_callback): Use thread state directly.
7295         (notice_new_inferior): Take a thread_info pointer instead of a
7296         ptid_t.  All callers adjusted.
7297         (exit_inferior): Take an inferior pointer instead of a pid.  All
7298         callers adjusted.
7299         (exit_inferior_silent): New.
7300         (detach_inferior): Delete.
7301         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7302         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7303         (detach_inferior_command, kill_inferior_command): Use
7304         find_inferior_id instead of valid_gdb_inferior_id and
7305         gdb_inferior_id_to_pid.
7306         (inferior_command): Use inferior and thread pointers.
7307         * inferior.h (struct thread_info): Forward declare.
7308         (notice_new_inferior): Take a thread_info pointer instead of a
7309         ptid_t.  All callers adjusted.
7310         (detach_inferior): Delete declaration.
7311         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7312         instead of a pid.  All callers adjusted.
7313         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7314         (valid_gdb_inferior_id): Delete.
7315         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7316         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7317         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7318         ...
7319         <inf>: ... this new field.
7320         <step_ptid>: Delete, replaced by ...
7321         <step_thread>: ... this new field.
7322         (get_displaced_stepping_state): Take an inferior pointer instead
7323         of a pid.  All callers adjusted.
7324         (displaced_step_in_progress_any_inferior): Adjust.
7325         (displaced_step_in_progress_thread): Take a thread pointer instead
7326         of a ptid_t.  All callers adjusted.
7327         (displaced_step_in_progress, add_displaced_stepping_state): Take
7328         an inferior pointer instead of a pid.  All callers adjusted.
7329         (get_displaced_step_closure_by_addr): Adjust.
7330         (remove_displaced_stepping_state): Take an inferior pointer
7331         instead of a pid.  All callers adjusted.
7332         (displaced_step_prepare_throw, displaced_step_prepare)
7333         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7334         All callers adjusted.
7335         (start_step_over): Adjust.
7336         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7337         displaced step queue.
7338         (do_target_resume): Adjust.
7339         (fetch_inferior_event): Use inferior_thread.
7340         (context_switch, get_inferior_stop_soon): Take an
7341         execution_control_state pointer instead of a ptid_t.  All callers
7342         adjusted.
7343         (switch_to_thread_cleanup): Delete.
7344         (stop_all_threads): Use scoped_restore_current_thread.
7345         * inline-frame.c: Include "gdbthread.h".
7346         (inline_state) <inline_state>: Take a thread pointer instead of a
7347         ptid_t.  All callers adjusted.
7348         <ptid>: Delete, replaced by ...
7349         <thread>: ... this new field.
7350         (find_inline_frame_state): Take a thread pointer instead of a
7351         ptid_t.  All callers adjusted.
7352         (skip_inline_frames, step_into_inline_frame)
7353         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7354         pointer instead of a ptid_t.  All callers adjusted.
7355         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7356         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7357         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7358         pointers directly.
7359         * linux-nat.c (get_detach_signal): Likewise.
7360         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7361         (thread_db_notice_clone): Adjust.
7362         (thread_db_find_new_threads_silently)
7363         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7364         a thread pointer instead of a ptid_t.  All callers adjusted.
7365         * mi/mi-cmd-var.c: Include "inferior.h".
7366         (mi_cmd_var_update_iter): Update to use thread pointers.
7367         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7368         inferior directly.
7369         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7370         out to ...
7371         (mi_output_running): ... this new function.
7372         (mi_on_resume_1): Adjust to use it.
7373         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7374         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7375         directly.
7376         (interrupt_thread_callback): : Adjust to use thread and inferior
7377         pointers.
7378         * proc-service.c: Include "gdbthread.h".
7379         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7380         * progspace-and-thread.c: Include "inferior.h".
7381         * progspace.c: Include "inferior.h".
7382         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7383         hold a reference to an inferior_object.
7384         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7385         inferior_thread.
7386         * python/py-inferior.c (struct inferior_object): Give the type a
7387         tag name instead of a typedef.
7388         (python_on_normal_stop): No need to check if the current thread is
7389         listed.
7390         (inferior_to_inferior_object): Change return type to
7391         inferior_object.  All callers adjusted.
7392         (find_thread_object): Delete, bits factored out to ...
7393         (thread_to_thread_object): ... this new function.
7394         * python/py-infthread.c (create_thread_object): Use
7395         inferior_to_inferior_object.
7396         (thpy_is_stopped): Use thread pointer directly.
7397         (gdbpy_selected_thread): Use inferior_thread.
7398         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7399         field, replaced with ...
7400         <thread>: ... this new field.  All users adjusted.
7401         (btpy_insn_or_gap_new): Drop const.
7402         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7403         callers adjusted.
7404         * python/py-record.c: Include "gdbthread.h".
7405         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7406         a ptid_t.  All callers adjusted.
7407         (gdbpy_current_recording): Use inferior_thread.
7408         * python/py-record.h (recpy_record_object) <ptid>: Delete
7409         field, replaced with ...
7410         <thread>: ... this new field.  All users adjusted.
7411         (recpy_element_object) <ptid>: Delete
7412         field, replaced with ...
7413         <thread>: ... this new field.  All users adjusted.
7414         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7415         a ptid_t.  All callers adjusted.
7416         * python/py-threadevent.c: Include "gdbthread.h".
7417         (get_event_thread): Use thread_to_thread_object.
7418         * python/python-internal.h (struct inferior_object): Forward
7419         declare.
7420         (find_thread_object, find_inferior_object): Delete declarations.
7421         (thread_to_thread_object, inferior_to_inferior_object): New
7422         declarations.
7423         * record-btrace.c: Include "inferior.h".
7424         (require_btrace_thread): Use inferior_thread.
7425         (record_btrace_frame_sniffer)
7426         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7427         (get_thread_current_frame): Use scoped_restore_current_thread and
7428         switch_to_thread.
7429         (get_thread_current_frame): Use thread pointer directly.
7430         (record_btrace_replay_at_breakpoint): Use thread's inferior
7431         pointer directly.
7432         * record-full.c: Include "inferior.h".
7433         * regcache.c: Include "gdbthread.h".
7434         (get_thread_arch_regcache): Use the inferior's address space
7435         directly.
7436         (get_thread_regcache, registers_changed_thread): New.
7437         * regcache.h (get_thread_regcache(thread_info *thread)): New
7438         overload.
7439         (registers_changed_thread): New.
7440         (remote_target) <remote_detach_1>: Swap order of parameters.
7441         (remote_add_thread): <remote_add_thread>: Return the new thread.
7442         (get_remote_thread_info(ptid_t)): New overload.
7443         (remote_target::remote_notice_new_inferior): Use thread pointers
7444         directly.
7445         (remote_target::process_initial_stop_replies): Use
7446         thread_info::set_running.
7447         (remote_target::remote_detach_1, remote_target::detach)
7448         (extended_remote_target::detach): Adjust.
7449         * stack.c (frame_show_address): Use inferior_thread.
7450         * target-debug.h (target_debug_print_thread_info_pp): New.
7451         * target-delegates.c: Regenerate.
7452         * target.c (default_thread_address_space): Delete.
7453         (memory_xfer_partial_1): Use current_inferior.
7454         (target_detach): Use current_inferior.
7455         (target_thread_address_space): Delete.
7456         (generic_mourn_inferior): Use current_inferior.
7457         * target.h (struct target_ops) <thread_address_space>: Delete.
7458         (target_thread_address_space): Delete.
7459         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7460         pointers directly.
7461         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7462         thread pointer instead of a ptid_t.  Adjust all callers.
7463         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7464         (first_thread_of_process): Delete, replaced by ...
7465         (first_thread_of_inferior): ... this new function.  All callers
7466         adjusted.
7467         (any_thread_of_process): Rename to ...
7468         (any_thread_of_inferior): ... this, and take an inferior pointer.
7469         (any_live_thread_of_process): Rename to ...
7470         (any_live_thread_of_inferior): ... this, and take an inferior
7471         pointer.
7472         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7473         (value_in_thread_stack_temporaries)
7474         (get_last_thread_stack_temporary): Take a thread pointer instead
7475         of a ptid_t.  Adjust all callers.
7476         (thread_info::set_running): New.
7477         (validate_registers_access): Use inferior_thread.
7478         (can_access_registers_ptid): Rename to ...
7479         (can_access_registers_thread): ... this, and take a thread
7480         pointer.
7481         (print_thread_info_1): Adjust to compare thread pointers instead
7482         of ptids.
7483         (switch_to_no_thread, switch_to_thread): Make extern.
7484         (scoped_restore_current_thread::~scoped_restore_current_thread):
7485         Use m_thread pointer directly.
7486         (scoped_restore_current_thread::scoped_restore_current_thread):
7487         Use inferior_thread.
7488         (thread_command): Use thread pointer directly.
7489         (thread_num_make_value_helper): Use inferior_thread.
7490         * top.c (execute_command): Use inferior_thread.
7491         * tui/tui-interp.c: Include "inferior.h".
7492         * varobj.c (varobj_create): Use inferior_thread.
7493         (value_of_root_1): Use find_thread_global_id instead of
7494         global_thread_id_to_ptid.
7495
7496 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7497
7498         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7499         possible.
7500         (regcache::write_part): Likewise.
7501         (readable_regcache::cooked_read_part): Update comment.
7502         (readable_regcache::cooked_write_part): Likewise.
7503         * regcache.h: (readable_regcache::read_part): Likewise.
7504         (regcache::write_part): Likewise.
7505
7506 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7507             Dirk Schubert  <dirk.schubert@arm.com>
7508
7509         * aarch64-linux-nat.c (post_attach): New.
7510         (aarch64_linux_nat_target::post_attach): Override post_attach to
7511         record the number of hardware debug registers.
7512
7513 2018-06-20  Tom Tromey  <tom@tromey.com>
7514
7515         * python/py-param.c (add_setshow_generic): Make parameters const.
7516         (parmpy_init): Update.
7517
7518 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7519
7520         * regcache.h (regcache_cooked_read_ftype): Rename to...
7521         (register_read_ftype): ...this, change type to function_view.
7522         (class reg_buffer) <save>: Remove src parameter.
7523         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7524         parameter non-const in first overload.  Remove src parameter in
7525         second overload.
7526         * regcache.c (do_cooked_read): Remove.
7527         (readonly_detached_regcache::readonly_detached_regcache): Make
7528         parameter non-const, adjust call to other constructor.
7529         (reg_buffer::save): Remove src parameter.
7530         * frame.c (do_frame_register_read): Remove.
7531         (frame_save_as_regcache): Use lambda function.
7532         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7533         parameter to ppu2spu_data *.
7534         (ppu2spu_sniffer): Use lambda function.
7535
7536 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7537
7538         * record-full.c (record_full_target::insert_breakpoint): Remove
7539         "struct" keyword, add const.
7540
7541 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7542
7543         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7544         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7545         * configure.ac: Remove AC_PREREQ, add missing quoting.
7546         * gnulib/configure.ac: Modernize usage of
7547         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7548         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7549         (AUTOMAKE_VERSION): Bump to 1.15.1.
7550         * configure: Re-generate.
7551         * config.in: Re-generate.
7552         * aclocal.m4: Re-generate.
7553         * gnulib/aclocal.m4: Re-generate.
7554         * gnulib/config.in: Re-generate.
7555         * gnulib/configure: Re-generate.
7556         * gnulib/import/Makefile.in: Re-generate.
7557
7558 2018-06-19  Pedro Alves  <palves@redhat.com>
7559
7560         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7561         (lookup_minimal_symbol_by_pc_section): ... here with
7562         gdb_assert_not_reached added.
7563
7564 2018-06-19  Pedro Alves  <palves@redhat.com>
7565
7566         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7567         parameter with a block parameter.  Compare location's block symbol
7568         with the frame's block instead of addresses.
7569         (skip_inline_frames): Pass the current block instead of the
7570         frame's address.  Break out as soon as we determine the frame
7571         should not be skipped.
7572
7573 2018-06-18  Tom Tromey  <tom@tromey.com>
7574
7575         * solib-aix.c (solib_aix_get_section_offsets): Return
7576         unique_xmalloc_ptr.
7577         (solib_aix_solib_create_inferior_hook): Update.
7578
7579 2018-06-18  Tom Tromey  <tom@tromey.com>
7580
7581         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7582
7583 2018-06-18  Tom Tromey  <tom@tromey.com>
7584
7585         * solib-frv.c (frv_relocate_main_executable): Use
7586         unique_xmalloc_ptr.
7587         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7588         unique_xmalloc_ptr.
7589
7590 2018-06-18  Tom Tromey  <tom@tromey.com>
7591
7592         * objfiles.h (inhibit_section_map_updates): Update.
7593         (resume_section_map_updates, resume_section_map_updates_cleanup):
7594         Remove.
7595         * solib-svr4.c (svr4_handle_solib_event): Update.
7596         * objfiles.c (inhibit_section_map_updates): Return
7597         scoped_restore_tmpl<int>.
7598         (resume_section_map_updates, resume_section_map_updates_cleanup):
7599         Remove.
7600
7601 2018-06-18  Tom Tromey  <tom@tromey.com>
7602
7603         * valprint.h (read_string): Update.
7604         * valprint.c (read_string): Change type of "buffer".
7605         (val_print_string): Update.
7606         * python/py-value.c (valpy_string): Update.
7607         * language.h (struct language_defn) <la_get_string>: Change
7608         type of "buffer".
7609         (default_get_string, c_get_string): Update.
7610         * language.c (default_get_string): Change type of "buffer".
7611         * guile/scm-value.c (gdbscm_value_to_string): Update.
7612         * c-lang.c (c_get_string): Change type of "buffer".
7613
7614 2018-06-18  Tom Tromey  <tom@tromey.com>
7615
7616         * ser-mingw.c (struct pipe_state_destroyer): New.
7617         (pipe_state_up): New typedef.
7618         (cleanup_pipe_state): Remove.
7619         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7620
7621 2018-06-18  Tom Tromey  <tom@tromey.com>
7622
7623         * rust-lang.h (rust_yyerror): Don't declare.
7624         * rust-lang.c (rust_language_defn): Update.
7625         * rust-exp.y (yyerror): Now static.
7626         * parse.c (parse_exp_in_context_1): Update.
7627         * p-lang.h (p_yyerror): Don't declare.
7628         * p-lang.c (p_language_defn): Update.
7629         * p-exp.y (yyerror): Now static.
7630         * opencl-lang.c (opencl_language_defn): Update.
7631         * objc-lang.c (objc_language_defn): Update.
7632         * m2-lang.h (m2_yyerror): Don't declare.
7633         * m2-lang.c (m2_language_defn): Update.
7634         * m2-exp.y (yyerror): Now static.
7635         * language.h (struct language_defn) <la_error>: Remove.
7636         * language.c (unk_lang_error): Remove.
7637         (unknown_language_defn, auto_language_defn): Remove.
7638         * go-lang.h (go_yyerror): Don't declare.
7639         * go-lang.c (go_language_defn): Update.
7640         * go-exp.y (yyerror): Now static.
7641         * f-lang.h (f_yyerror): Don't declare.
7642         * f-lang.c (f_language_defn): Update.
7643         * f-exp.y (yyerror): Now static.
7644         * d-lang.h (d_yyerror): Don't declare.
7645         * d-lang.c (d_language_defn): Update.
7646         * d-exp.y (yyerror): Now static.
7647         * c-lang.h (c_yyerror): Don't declare.
7648         * c-lang.c (c_language_defn, cplus_language_defn)
7649         (asm_language_defn, minimal_language_defn): Update.
7650         * c-exp.y (yyerror): Now static.
7651         * ada-lang.h (ada_yyerror): Don't declare.
7652         * ada-lang.c (ada_language_defn): Update.
7653         * ada-exp.y (yyerror): Now static.
7654
7655 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7656
7657         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7658         (store_sveregs_to_thread): Likewise.
7659         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7660         (aarch64_linux_store_inferior_registers): Likewise.
7661         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7662         function.
7663         (aarch64_sve_regs_copy_to_regcache): Likewise.
7664         (aarch64_sve_regs_copy_from_regcache): Likewise.
7665         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7666         declaration.
7667         (aarch64_sve_regs_copy_to_regcache): Likewise.
7668         (aarch64_sve_regs_copy_from_regcache): Likewise.
7669         (sve_context): Structure from Linux headers.
7670         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7671         (SVE_SIG_ZREG_SIZE): Likewise.
7672         (SVE_SIG_PREG_SIZE): Likewise.
7673         (SVE_SIG_FFR_SIZE): Likewise.
7674         (SVE_SIG_REGS_OFFSET): Likewise.
7675         (SVE_SIG_ZREGS_OFFSET): Likewise.
7676         (SVE_SIG_ZREG_OFFSET): Likewise.
7677         (SVE_SIG_ZREGS_SIZE): Likewise.
7678         (SVE_SIG_PREGS_OFFSET): Likewise.
7679         (SVE_SIG_PREG_OFFSET): Likewise.
7680         (SVE_SIG_PREGS_SIZE): Likewise.
7681         (SVE_SIG_FFR_OFFSET): Likewise.
7682         (SVE_SIG_REGS_SIZE): Likewise.
7683         (SVE_SIG_CONTEXT_SIZE): Likewise.
7684         (SVE_PT_REGS_MASK): Likewise.
7685         (SVE_PT_REGS_FPSIMD): Likewise.
7686         (SVE_PT_REGS_SVE): Likewise.
7687         (SVE_PT_VL_INHERIT): Likewise.
7688         (SVE_PT_VL_ONEXEC): Likewise.
7689         (SVE_PT_REGS_OFFSET): Likewise.
7690         (SVE_PT_FPSIMD_OFFSET): Likewise.
7691         (SVE_PT_FPSIMD_SIZE): Likewise.
7692         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7693         (SVE_PT_SVE_PREG_SIZE): Likewise.
7694         (SVE_PT_SVE_FFR_SIZE): Likewise.
7695         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7696         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7697         (__SVE_SIG_TO_PT): Likewise.
7698         (SVE_PT_SVE_OFFSET): Likewise.
7699         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7700         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7701         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7702         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7703         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7704         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7705         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7706         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7707         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7708         (SVE_PT_SVE_SIZE): Likewise.
7709         (SVE_PT_SIZE): Likewise.
7710         (HAS_SVE_STATE): New define.
7711
7712 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7713
7714         * nat/aarch64-sve-linux-sigcontext.h: New file.
7715         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7716         new files.
7717         (SVE_VQ_MIN): Likewise.
7718         (SVE_VQ_MAX): Likewise.
7719         (SVE_VL_MIN): Likewise.
7720         (SVE_VL_MAX): Likewise.
7721         (SVE_NUM_ZREGS): Likewise.
7722         (SVE_NUM_PREGS): Likewise.
7723         (sve_vl_valid): Likewise.
7724         (struct user_sve_header): Likewise.
7725
7726 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7727             Richard Bunt <Richard.Bunt@arm.com>
7728
7729         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7730         was requested by GDB.
7731
7732 2018-06-15  Tom de Vries  <tdevries@suse.de>
7733
7734         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7735
7736 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7737
7738         * gnulib/update-gnulib.sh: Print expected versions of
7739         autoconf/aclocal.
7740
7741 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7742
7743         * arch-utils.c (default_type_align): Use type_length_units.
7744         * gdbtypes.c (type_align): Use type_length_units.
7745
7746 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7747
7748         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7749         of 'define' command.
7750
7751 2018-06-14  Tom de Vries  <tdevries@suse.de>
7752
7753         PR cli/22573
7754         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7755         get_no_prettyformat_print_options.
7756
7757 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7758
7759         * sparc-nat.h: Include target.h.
7760         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7761         <fetch_registers>: Remove this argument in function call.
7762         <store_registers>: Remove this argument in function call, remove
7763         extra semicolon.
7764         <low_forget_process>: Call sparc64_forget_process instead of
7765         sparc_forget_process.
7766
7767 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7768
7769         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7770         (procfs_target::make_corefile_notes): Adjust to new
7771         target_read_alloc return type.
7772
7773 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7774             Stephen Roberts  <stephen.roberts@arm.com>
7775
7776         PR gdb/22882
7777         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7778         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7779         Move should_notify_stop local into more inner scope.
7780
7781 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7782             Stephen Roberts  <stephen.roberts@arm.com>
7783
7784         PR gdb/22882
7785         * infrun.c (resume_1): Add call to mark_async_event_handler.
7786
7787 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7788
7789         * infrun.c (do_target_wait): Change old version of $pc printed.
7790
7791 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7792
7793         * dwarf2read.c (read_index_from_section): Rename to...
7794         (read_gdb_index_from_section): ... this, update all callers.
7795         (dwarf2_read_index): Rename to...
7796         (dwarf2_read_gdb_index): ... this, update all callers.
7797
7798 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7799
7800         * hppa-linux-nat.c
7801         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7802         hppa_linux_nat_target::fetch_registers.
7803
7804 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7805
7806         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7807         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7808         (AARCH64_DWARF_SVE_FFR): Likewise.
7809         (AARCH64_DWARF_SVE_P0): Likewise.
7810         (AARCH64_DWARF_SVE_Z0): Likewise.
7811
7812 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7813
7814         * common/common-regcache.h (raw_compare): New function.
7815         * regcache.c (regcache::raw_compare): Likewise.
7816         * regcache.h (regcache::raw_compare): New declaration.
7817
7818 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7819
7820         * common/common-regcache.h (reg_buffer_common): New structure.
7821         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7822         (reg_buffer::raw_supply): Likewise.
7823         (reg_buffer::raw_supply_integer): Likewise.
7824         (reg_buffer::raw_supply_zeroed): Likewise.
7825         (reg_buffer::raw_collect): Likewise.
7826         (reg_buffer::raw_collect_integer): Likewise.
7827         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7828         (reg_buffer::raw_supply): Likewise.
7829         (reg_buffer::raw_supply_integer): Likewise.
7830         (reg_buffer::raw_supply_zeroed): Likewise.
7831         (reg_buffer::raw_collect): Likewise.
7832         (reg_buffer::raw_collect_integer): Likewise.
7833
7834 2018-06-10  Tom Tromey  <tom@tromey.com>
7835
7836         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7837         (class remote_state) <stop_reply_queue>: Now std::vector.
7838         (remote_state::~remote_state)
7839         (remote_target::stop_reply_queue_length): Update.
7840         (struct queue_iter_param, remove_child_of_pending_fork)
7841         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7842         (check_pending_event_prevents_wildcard_vcont_callback)
7843         (remove_stop_reply_for_inferior)
7844         (remove_stop_reply_of_remote_state)
7845         (remote_notif_remove_once_on_match)
7846         (stop_reply_match_ptid_and_ws)
7847         (remote_kill_child_of_pending_fork): Remove.
7848         (remote_target::remove_new_fork_children)
7849         (remote_target::check_pending_events_prevent_wildcard_vcont)
7850         (remote_target::discard_pending_stop_replies)
7851         (remote_target::discard_pending_stop_replies_in_queue)
7852         (remote_target::remote_notif_remove_queued_reply)
7853         (remote_target::queued_stop_reply)
7854         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7855         (remote_target::wait, remote_target::kill_new_fork_children)
7856         (remote_target::async): Update.
7857
7858 2018-06-10  Tom Tromey  <tom@tromey.com>
7859
7860         * record-full.c (record_full_arch_list_cleanups): Remove.
7861         (record_full_message): Use try/catch.
7862         (record_full_wait_cleanups): Remove.
7863         (record_full_wait_1): Use try/catch.
7864         (record_full_restore): Likewise.
7865
7866 2018-06-10  Tom Tromey  <tom@tromey.com>
7867
7868         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7869         declare VEC.  Add constructor.
7870         <in_target_beneath>: Now bool.
7871         (record_full_breakpoints): Now a std::vector, static.
7872         (record_full_sync_record_breakpoints)
7873         (record_full_init_record_breakpoints)
7874         (record_full_target::insert_breakpoint)
7875         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7876
7877 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7878
7879         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7880         * serial.c (serial_interface_lookup): Remove struct keyword.
7881
7882 2018-06-10  Tom Tromey  <tom@tromey.com>
7883
7884         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7885         method.
7886         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7887         a method.
7888         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7889         method.
7890         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7891         "beneath" as a method.
7892         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7893         Use "beneath" as a method.
7894
7895 2018-06-10  Tom Tromey  <tom@tromey.com>
7896
7897         * tracefile.c (struct trace_file_writer_deleter): New.
7898         <operator()>: Rename from trace_file_writer_xfree.
7899         (trace_file_writer_up): New typedef.
7900         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7901
7902 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7903
7904         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7905         <m_registers, m_register_status>: Change type to
7906         std::unique_ptr.
7907         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7908         XCNEWVEC.
7909
7910 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7911
7912         * common/common-regcache.h (enum register_status): Add
7913         underlying type "signed char".
7914         * regcache.h (reg_buffer) <m_register_status>: Change type to
7915         register_status *.
7916         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7917         register_status instead of signed char.
7918         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7919         (reg_buffer::get_register_status): Remove cast.
7920         (readable_regcache::raw_read): Remove cast.
7921         (readable_regcache::cooked_read): Remove cast.
7922
7923 2018-06-09  Tom Tromey  <tom@tromey.com>
7924
7925         * source.c (reverse_search_command, forward_search_command): Use
7926         scoped_fd.
7927
7928 2018-06-09  Tom Tromey  <tom@tromey.com>
7929
7930         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7931         (serial_ops_list): Now static, std::vector.
7932         (serial_interface_lookup, serial_add_interface): Update.
7933
7934 2018-06-09  Tom Tromey  <tom@tromey.com>
7935
7936         * dwarf2read.c (process_cu_includes): Update.
7937         (process_full_comp_unit): Update.
7938         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7939         std::vector.
7940
7941 2018-06-08  Paul Koning  <paul_koning@dell.com>
7942
7943         PR gdb/23252
7944
7945         * python/python.c (do_start_initialization):
7946         Avoid call to internal Python API.
7947         (init__gdb_module): New function.
7948
7949 2018-06-08  Gary Benson <gbenson@redhat.com>
7950
7951         * linux-thread-db.c (valprint.h): New include.
7952         (struct check_thread_db_info): New structure.
7953         (check_thread_db_on_load, tdb_testinfo): New static globals.
7954         (check_thread_db, check_thread_db_callback): New functions.
7955         (try_thread_db_load_1): Run integrity checks if requested.
7956         (maintenance_check_libthread_db): New function.
7957         (_initialize_thread_db): Register "maint check libthread-db"
7958         and "maint set/show check-libthread-db".
7959         * NEWS: Mention the above new commands.
7960
7961 2018-06-08  Tom Tromey  <tom@tromey.com>
7962
7963         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7964         now a method.
7965
7966 2018-06-08  Tom Tromey  <tom@tromey.com>
7967
7968         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7969
7970 2018-06-08  Tom Tromey  <tom@tromey.com>
7971
7972         * common/btrace-common.h (struct btrace_data): Add constructor,
7973         destructor, move assignment operator.
7974         <empty, clear, fini>: New methods.
7975         <format>: Initialize.
7976         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7977         (btrace_data_empty): Don't declare.
7978         * common/btrace-common.c (btrace_data_init): Remove.
7979         (btrace_data::fini): Rename from btrace_data_fini.
7980         (btrace_data::empty): Rename from btrace_data_empty.
7981         (btrace_data::clear): Rename from btrace_data_clear.  Return
7982         bool.
7983         * btrace.h (make_cleanup_btrace_data): Don't declare.
7984         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7985         (parse_xml_btrace): Update.
7986         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7987         (maint_btrace_clear_packet_history_cmd): Update.
7988
7989 2018-06-07  Pedro Alves  <palves@redhat.com>
7990
7991         * target.h (target_ops) <beneath>: Now a method.  All references
7992         updated.
7993         (class target_stack): New.
7994         * target.c (g_target_stack): New.
7995         (g_current_top_target): Delete.
7996         (current_top_target): Get the top target out of g_target_stack.
7997         (target_stack::push, target_stack::unpush): New.
7998         (push_target, unpush_target): Reimplement.
7999         (target_is_pushed): Reimplement in terms of g_target_stack.
8000         (target_ops::beneath, target_stack::find_beneath): New.
8001
8002 2018-06-07  Pedro Alves  <palves@redhat.com>
8003
8004         * target.h (find_target_beneath): Delete declaration.
8005         * target.c (find_target_beneath): Delete definition.
8006         * aix-thread.c: All callers of find_target_beneath adjusted to
8007         call target_ops::beneath instead.
8008         * bsd-uthread.c: Likewise.
8009         * linux-thread-db.c: Likewise.
8010         * ravenscar-thread.c: Likewise.
8011         * sol-thread.c: Likewise.
8012         * spu-multiarch.c: Likewise.
8013
8014 2018-06-07  Pedro Alves  <palves@redhat.com>
8015
8016         * target.h (target_ops) <beneath>: Now a method.  All references
8017         updated.
8018         (target_ops) <m_beneath>: New.
8019         * target.c (target_ops::beneath): New.
8020         * corelow.c: Adjust all references to target_ops::beneath.
8021         * linux-thread-db.c: Likewise.
8022         * make-target-delegates: Likewise.
8023         * record-btrace.c: Likewise.
8024         * record-full.c: Likewise.
8025         * remote.c: Likewise.
8026         * target.c: Likewise.
8027         * target-delegates.c: Regenerate.
8028
8029 2018-06-07  Pedro Alves  <palves@redhat.com>
8030
8031         * target.h (target_stack): Delete.
8032         (current_top_target): Declare function.
8033         * target.c (target_stack): Delete.
8034         (g_current_top_target): New.
8035         (current_top_target): New function.
8036         * auxv.c: Use current_top_target instead of target_stack
8037         throughout.
8038         * avr-tdep.c: Likewise.
8039         * breakpoint.c: Likewise.
8040         * corefile.c: Likewise.
8041         * elfread.c: Likewise.
8042         * eval.c: Likewise.
8043         * exceptions.c: Likewise.
8044         * frame.c: Likewise.
8045         * gdbarch-selftests.c: Likewise.
8046         * gnu-v3-abi.c: Likewise.
8047         * ia64-tdep.c: Likewise.
8048         * ia64-vms-tdep.c: Likewise.
8049         * infcall.c: Likewise.
8050         * infcmd.c: Likewise.
8051         * infrun.c: Likewise.
8052         * linespec.c: Likewise.
8053         * linux-tdep.c: Likewise.
8054         * minsyms.c: Likewise.
8055         * ppc-linux-nat.c: Likewise.
8056         * ppc-linux-tdep.c: Likewise.
8057         * procfs.c: Likewise.
8058         * regcache.c: Likewise.
8059         * remote.c: Likewise.
8060         * rs6000-tdep.c: Likewise.
8061         * s390-linux-nat.c: Likewise.
8062         * s390-tdep.c: Likewise.
8063         * solib-aix.c: Likewise.
8064         * solib-darwin.c: Likewise.
8065         * solib-dsbt.c: Likewise.
8066         * solib-spu.c: Likewise.
8067         * solib-svr4.c: Likewise.
8068         * solib-target.c: Likewise.
8069         * sparc-tdep.c: Likewise.
8070         * sparc64-tdep.c: Likewise.
8071         * spu-tdep.c: Likewise.
8072         * symfile.c: Likewise.
8073         * symtab.c: Likewise.
8074         * target-descriptions.c: Likewise.
8075         * target-memory.c: Likewise.
8076         * target.c: Likewise.
8077         * target.h: Likewise.
8078         * tracefile-tfile.c: Likewise.
8079         * tracepoint.c: Likewise.
8080         * valops.c: Likewise.
8081         * valprint.c: Likewise.
8082         * value.c: Likewise.
8083         * windows-tdep.c: Likewise.
8084         * mi/mi-main.c: Likewise.
8085
8086 2018-06-07  Tom Tromey  <tom@tromey.com>
8087
8088         * valprint.h (build_address_symbolic): Declare.
8089         * printcmd.c (print_address_symbolic): Update.
8090         (build_address_symbolic): Change "name" and "filename" to
8091         std::string.
8092         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8093         Update.
8094         * defs.h (build_address_symbolic): Remove declaration.
8095
8096 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8097
8098         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8099         (aarch64_vnv_type): Add function.
8100         (aarch64_pseudo_register_name): Add V regs for SVE.
8101         (aarch64_pseudo_register_type): Likewise.
8102         (aarch64_pseudo_register_reggroup_p): Likewise.
8103         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8104         (aarch64_pseudo_read_value): Add V regs for SVE.
8105         (aarch64_pseudo_write_2): Use V0 offset for SVE
8106         (aarch64_pseudo_write): Add V regs for SVE.
8107         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8108
8109 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8110
8111         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8112         (sve_vl_from_vq): Likewise.
8113
8114 2018-06-05  Tom Tromey  <tom@tromey.com>
8115
8116         * cli/cli-cmds.c (show_version): Update.
8117         * top.c (print_gdb_version): Add "interactive" parameter.
8118         Update.
8119         * main.c (captured_main_1): Update.
8120         * top.h (print_gdb_version): Add "interactive" parameter and a
8121         comment.
8122
8123 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8124
8125         * common/enum-flags.h: Add trailing semicolon to example in
8126         comment.
8127
8128 2018-06-05  Tom Tromey  <tom@tromey.com>
8129
8130         PR cli/12326:
8131         * NEWS: Add entry about pager.
8132         * utils.c (pagination_disabled_for_command): New global.
8133         (prompt_for_continue): Allow "c" response to prompt.
8134         (reinitialize_more_filter): Clear
8135         pagination_disabled_for_command.
8136         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8137
8138 2018-06-04  Tom Tromey  <tom@tromey.com>
8139
8140         * ada-lang.h (ada_lookup_symbol_list): Update.
8141         * ada-lang.c (resolve_subexp): Update.
8142         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8143         parameter.
8144         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8145         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8146         results parameter to std::vector.
8147         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8148         Update.
8149         * ada-exp.y (block_lookup): Update.
8150         (select_possible_type_sym): Change type of syms.  Remove nsyms
8151         parameter.
8152         (write_var_or_type, write_name_assoc): Update.
8153
8154 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8155
8156         * windows-nat.c (windows_nat_target::xfer_partial): Return
8157         TARGET_XFER_E_IO if we need to delegate to the target beneath
8158         but BENEATH is NULL.
8159
8160 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8161
8162         * Makefile.in (config.status): Add configure.nat as a
8163         dependency.
8164
8165 2018-06-04  Tom Tromey  <tom@tromey.com>
8166
8167         * cp-name-parser.y (cpname_state): Add method declarations.
8168         (HANDLE_QUAL): Update.
8169         (cpname_state::d_grab, cpname_state::fill_comp)
8170         (cpname_state::make_operator, cpname_state::make_dtor)
8171         (cpname_state::make_builtin_type, cpname_state::make_name)
8172         (cpname_state::d_qualify, cpname_state::d_int_type)
8173         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8174         (%union): Move earlier.
8175
8176 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8177
8178         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8179
8180 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8181
8182         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8183         (aarch64_pseudo_write_1): Likewise.
8184         (aarch64_pseudo_read_value): Use helper.
8185         (aarch64_pseudo_write): Likewise.
8186
8187 2018-06-04  Pedro Alves  <palves@redhat.com>
8188
8189         * darwin-nat.c (darwin_ops): Delete.
8190         (darwin_attach_pid): Use get_native_target.
8191
8192 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8193
8194         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8195         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8196
8197 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8198
8199         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8200         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8201         (aarch64_gdbarch_init): Check for SVE.
8202         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8203
8204 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8205
8206         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8207         * aarch64-tdep.h (aarch64_read_description): Likewise.
8208         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8209         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8210         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8211         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8212         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8213
8214 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8215
8216         * value.c (value_fetch_lazy_bitfield): New.
8217         (value_fetch_lazy_memory): New.
8218         (value_fetch_lazy_register): New.
8219         (value_fetch_lazy): Factor out to smaller functions.
8220
8221 2018-06-01  Tom Tromey  <tom@tromey.com>
8222
8223         * cp-name-parser.y (backslashable, represented): Now const.
8224
8225 2018-06-01  Tom Tromey  <tom@tromey.com>
8226
8227         * cp-name-parser.y: Include parser-defs.h.
8228         (parser_fprintf): Remove declaration.
8229
8230 2018-06-01  Tom Tromey  <tom@tromey.com>
8231
8232         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8233         %parse-param.
8234         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8235         (global_result): Remove globals.
8236         (struct cpname_state): New.
8237         (yyparse): Don't declare.
8238         (yylex, yyerror): Move declarations after %union.
8239         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8240         (make_name): Add state parameter.
8241         Update all callers.
8242         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8243         parameter.
8244         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8245         Update.
8246         (yylex): Add lvalp, state parameters.
8247         (yyerror): Add state parameter.
8248         (cp_demangled_name_to_comp): Update.
8249
8250 2018-06-01  Tom Tromey  <tom@tromey.com>
8251
8252         * cp-name-parser.y (parser_fprintf): Declare.
8253         (GDB_YY_REMAP_PREFIX): Define.
8254         Include yy-remap.h.  Don't redefine yy* identifiers.
8255
8256 2018-06-01  Tom Tromey  <tom@tromey.com>
8257
8258         * python/py-type.c (typy_legacy_template_argument): Update.
8259         * cp-support.h (cp_demangled_name_to_comp): Update.
8260         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8261         parameter to be a "std::string *".
8262         (main): Update.
8263
8264 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8265
8266         * ada-lex.l: Include "diagnostics.h" instead of
8267         "common/diagnostics.h".
8268         * unittests/environ-selftests.c: Likewise.
8269         * common/diagnostics.h: Moved to ../include.
8270
8271 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8272
8273         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8274         to language_mode_manual while calling breakpoint_re_set_one.
8275
8276 2018-06-01  Tom Tromey  <tom@tromey.com>
8277
8278         * valops.c (value_cast_structs, destructor_name_p): Update.
8279         * symtab.c (gdb_mangle_name): Update.
8280         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8281         Update.
8282         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8283         (pascal_object_print_value_fields, pascal_object_print_value):
8284         Update.
8285         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8286         * linespec.c (find_methods): Update.
8287         * gdbtypes.h (type_name_no_tag): Remove.
8288         (type_name_or_error): Rename from type_name_no_tag_or_error.
8289         * gdbtypes.c (type_name_no_tag): Remove.
8290         (type_name_or_error): Rename from type_name_no_tag_or_error.
8291         (lookup_struct_elt_type, check_typedef): Update.
8292         * expprint.c (print_subexp_standard): Update.
8293         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8294         * d-namespace.c (d_lookup_nested_symbol): Update.
8295         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8296         (cp_print_class_member): Update.
8297         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8298         * completer.c (add_struct_fields): Update.
8299         * c-typeprint.c (cp_type_print_derivation_info)
8300         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8301         Update.
8302         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8303         (ada_prefer_type, ada_is_exception_sym): Update.
8304
8305 2018-06-01  Tom Tromey  <tom@tromey.com>
8306
8307         * valops.c (enum_constant_from_type, value_namespace_elt)
8308         (value_maybe_namespace_elt): Update.
8309         * valarith.c (find_size_for_pointer_math): Update.
8310         * target-descriptions.c (make_gdb_type): Update.
8311         * symmisc.c (print_symbol): Update.
8312         * stabsread.c (define_symbol, read_type)
8313         (complain_about_struct_wipeout, add_undefined_type)
8314         (cleanup_undefined_types_1): Update.
8315         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8316         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8317         (rust_internal_print_type, rust_composite_type)
8318         (rust_evaluate_funcall, rust_evaluate_subexp)
8319         (rust_inclusive_range_type_p): Update.
8320         * python/py-type.c (typy_get_tag): Update.
8321         * p-typeprint.c (pascal_type_print_base): Update.
8322         * mdebugread.c (parse_symbol, parse_type): Update.
8323         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8324         Update.
8325         * guile/scm-type.c (gdbscm_type_tag): Update.
8326         * go-lang.c (sixg_string_p): Update.
8327         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8328         Update.
8329         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8330         (TYPE_TAG_NAME): Remove.
8331         * gdbtypes.c (type_name_no_tag): Simplify.
8332         (check_typedef, check_types_equal, recursive_dump_type)
8333         (copy_type_recursive, arch_composite_type): Update.
8334         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8335         in summary mode when needed.
8336         * eval.c (evaluate_funcall): Update.
8337         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8338         (process_structure_scope, read_enumeration_type)
8339         (read_namespace_type, read_module_type, determine_prefix): Update.
8340         * cp-support.c (inspect_type): Update.
8341         * coffread.c (process_coff_symbol, decode_base_type): Update.
8342         * c-varobj.c (c_is_path_expr_parent): Update.
8343         * c-typeprint.c (c_type_print_base_struct_union): Update.
8344         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8345         summary when using C language.
8346         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8347         (gen_maybe_namespace_elt): Update.
8348         * ada-lang.c (ada_type_name): Simplify.
8349         (empty_record, ada_template_to_fixed_record_type_1)
8350         (template_to_static_fixed_type)
8351         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8352
8353 2018-06-01  Tom Tromey  <tom@tromey.com>
8354
8355         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8356         c_print_type.
8357         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8358         (c_print_type): Update.
8359         (c_print_type): New overload.
8360         (c_type_print_varspec_prefix, c_type_print_args)
8361         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8362         (c_type_print_base_struct_union, c_type_print_base_1)
8363         (cp_type_print_method_args): Add "language" parameter.
8364         (c_type_print_base): Update.
8365         * c-lang.h (c_print_type): Add new overload.
8366
8367 2018-06-01  Tom Tromey  <tom@tromey.com>
8368
8369         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8370         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8371
8372 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8373
8374         * aarch64-tdep.c (aarch64_sve_register_names): New const
8375         var.
8376         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8377         (AARCH64_SVE_Z_REGS_NUM): New define.
8378         (AARCH64_SVE_P_REGS_NUM): Likewise.
8379         (AARCH64_SVE_NUM_REGS): Likewise.
8380
8381 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8382
8383         * nat/linux-ptrace.h [__alpha__]
8384         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8385         definitions.
8386
8387 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8388
8389         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8390         the endianness selected.
8391         * NEWS: Document `set endian auto' mode operation update.
8392
8393 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8394
8395         * Makefile.in: Add new header.
8396         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8397         (sve_vl_from_vg): Likewise.
8398         (sve_vq_from_vl): Likewise.
8399         (sve_vl_from_vq): Likewise.
8400         (sve_vq_from_vg): Likewise.
8401         (sve_vg_from_vq): Likewise.
8402         * configure.nat: Add new c file.
8403         * nat/aarch64-sve-linux-ptrace.c: New file.
8404         * nat/aarch64-sve-linux-ptrace.h: New file.
8405
8406 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8407
8408         * aarch64-linux-nat.c (aarch64_linux_read_description):
8409         Add parmeter zero.
8410         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8411         Likewise.
8412         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8413         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8414         (aarch64_gdbarch_init): Add parmeter zero.
8415         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8416         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8417         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8418         parmeter.
8419         * doc/gdb.texinfo: Describe SVE feature
8420         * features/aarch64-sve.c: New file.
8421
8422 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8423
8424         PR gdb/23210
8425         * gdbarch.sh (significant_addr_bit): Default to zero when
8426         not set by target architecture.
8427         * gdbarch.c: Re-generated.
8428         * utils.c (address_significant): Update.
8429
8430 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8431
8432         * stack.c (func_command): Remove trailing newline in call to error.
8433
8434 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8435
8436         * regcache.h (regcache_raw_collect): Remove, update callers to
8437         use regcache::raw_collect.
8438         * regcache.c (regcache_raw_collect): Remove.
8439
8440 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8441
8442         * regcache.h (regcache_raw_supply): Remove, update callers to
8443         use detached_regcache::raw_supply.
8444         * regcache.c (regcache_raw_supply): Remove.
8445
8446 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8447
8448         * regcache.h (regcache_cooked_write_part): Remove, update
8449         callers to use regcache::cooked_write_part.
8450         * regcache.c (regcache_cooked_write_part): Remove.
8451
8452 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8453
8454         * regcache.h (regcache_cooked_read_part): Remove, update callers
8455         to use readable_regcache::cooked_read_part.
8456         * regcache.c (regcache_cooked_read_part): Remove.
8457
8458 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8459
8460         * regcache.h (regcache_cooked_read_value): Remove, update
8461         callers to use readable_regcache::cooked_read_value.
8462         * regcache.c (regcache_cooked_read_value): Remove.
8463
8464 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8465
8466         * regcache.h (regcache_cooked_write): Remove, update callers to
8467         use regcache::cooked_write.
8468         * regcache.c (regcache_cooked_write): Remove.
8469
8470 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8471
8472         * regcache.h (regcache_invalidate): Remove, update callers to
8473         use detached_regcache::invalidate instead.
8474         * regcache.c (regcache_invalidate): Remove.
8475
8476 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8477
8478         * regcache.h (regcache_raw_write_part): Remove, update callers
8479         to use regcache::raw_write_part instead.
8480         * regcache.c (regcache_raw_write_part): Remove.
8481
8482 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8483
8484         * regcache.h (regcache_raw_read_part): Remove, update callers to
8485         use readable_regcache::raw_read_part instead.
8486         * regcache.c (regcache_raw_read_part): Remove.
8487
8488 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8489
8490         * regcache.h (regcache_cooked_read): Remove, update callers to
8491         use readable_regcache::cooked_read instead.
8492         * regcache.c (regcache_cooked_read): Remove.
8493
8494 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8495
8496         * regcache.h (regcache_raw_write): Remove, update callers to use
8497         regcache::raw_write instead.
8498         * regcache.c (regcache_raw_write): Remove.
8499
8500 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8501
8502         * regcache.h (regcache_raw_read): Remove, update callers to use
8503         readable_regcache::raw_read instead.
8504         * regcache.c (regcache_raw_read): Remove.
8505
8506 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8507
8508         * regcache.h (regcache_raw_update): Remove, update callers to
8509         use readable_regcache::raw_update instead.
8510         * regcache.c (regcache_raw_update): Remove.
8511
8512 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8513
8514         * regcache.h (regcache_register_status): Remove, update callers
8515         to use reg_buffer::get_register_status directly instead.
8516         * regcache.c (regcache_register_status): Remove.
8517
8518 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8519
8520         * regcache.h (regcache_get_ptid): Remove, update all callers to
8521         call regcache::ptid instead.
8522         * regcache.c (regcache_get_ptid): Remove.
8523
8524 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8525
8526         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8527
8528 2018-05-30  Pedro Alves  <palves@redhat.com>
8529
8530         * common/common-exceptions.h (exception_rethrow): Use
8531         ATTRIBUTE_NORETURN.
8532
8533 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8534
8535         * breakpoint.c (print_solib_event, check_status_catch_solib):
8536         Remove struct keyword in range-based for loops.
8537         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8538         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8539         Likewise.
8540         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8541         Likewise.
8542         * symfile.c (addr_info_make_relative): Likewise.
8543         * thread.c (value_in_thread_stack_temporaries): Likewise.
8544
8545 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8546
8547         PR gdb/16841
8548         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8549         aggregate type to get its real type before accessing it.
8550
8551 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8552
8553         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8554         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8555         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8556         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8557         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8558         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8559         * printcmd.c (info_address_command): Likewise.
8560
8561 2018-05-29  Tom Tromey  <tom@tromey.com>
8562
8563         * windows-nat.c (handle_exception): Update fall-through comment.
8564
8565 2018-05-29  Tom Tromey  <tom@tromey.com>
8566
8567         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8568         (struct program_space) <added_solibs>: Now a std::vector.
8569         * breakpoint.c (print_solib_event): Update.
8570         (check_status_catch_solib): Update.
8571         * progspace.c (clear_program_space_solib_cache): Update.
8572         * solib.c (update_solib_list): Update.
8573
8574 2018-05-29  Tom Tromey  <tom@tromey.com>
8575
8576         * python/py-type.c (typy_richcompare): Update.
8577         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8578         * gdbtypes.h (types_deeply_equal): Return bool.
8579         (types_equal): Likewise.
8580         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8581         declare VEC.
8582         (check_types_equal): Change worklist to std::vector.  Return
8583         bool.
8584         (struct type_equality_entry): Add constructor.
8585         (compare_maybe_null_strings): Return bool.
8586         (check_types_worklist): Return bool.  Change worklist to
8587         std::vector.
8588         (types_deeply_equal): Use std::vector.
8589         (types_equal): Return bool.
8590         (compare_maybe_null_strings): Simplify.
8591
8592 2018-05-29  Tom Tromey  <tom@tromey.com>
8593
8594         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8595
8596 2018-05-29  Tom Tromey  <tom@tromey.com>
8597
8598         * objc-lang.h: Don't include cp-support.h.
8599         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8600         declare VEC.
8601
8602 2018-05-27  Tom Tromey  <tom@tromey.com>
8603
8604         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8605
8606 2018-05-25  Tom Tromey  <tom@tromey.com>
8607
8608         * value.c (value::location): Initialize.
8609
8610 2018-05-25  Tom Tromey  <tom@tromey.com>
8611
8612         * dbxread.c (init_bincl_list): Remove.
8613         (bincl_list): Now a std::vector.
8614         (bincls_allocated, next_bincl): Remove.
8615         (free_bincl_list, do_free_bincl_list_cleanup)
8616         (make_cleanup_free_bincl_list): Remove.
8617         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8618         unique_xmalloc_ptr.
8619         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8620         (struct header_file_location): Add constructor.
8621         (add_bincl_to_list): Remove.
8622
8623 2018-05-25  Tom Tromey  <tom@tromey.com>
8624
8625         * tui/tui.c (tui_enable): Update.
8626         * mi/mi-interp.c (mi_interp::init): Update.
8627         * interps.h (class interp) <name>: New method.
8628         <m_name>: Rename from name.
8629         (~scoped_restore_interp): Update.
8630         * interps.c (interp::interp): Update.
8631         (interp_add, interp_set, interp_lookup_existing)
8632         (current_interp_named_p): Update.
8633
8634 2018-05-25  Tom Tromey  <tom@tromey.com>
8635
8636         * interps.c (interp_name): Remove.
8637         * mi/mi-interp.c (mi_interp::init): Update.
8638         * interps.h (interp_name): Remove.
8639         (~scoped_restore_interp): Update.
8640         * tui/tui.c (tui_enable): Update.
8641
8642 2018-05-25  Tom Tromey  <tom@tromey.com>
8643
8644         * utils.c (fputs_maybe_filtered): Update.
8645         * linespec.c (decode_line_full): Update.
8646         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8647         (mi_print_breakpoint_for_event, mi_solib_loaded)
8648         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8649         (mi_user_selected_context_changed): Update.
8650         * mi/mi-main.c (mi_execute_command): Update.
8651         * cli/cli-script.c (execute_control_command): Update.
8652         * python/python.c (execute_gdb_command): Update.
8653         * solib.c (info_sharedlibrary_command): Update.
8654         * interps.c (interp_ui_out): Remove.
8655         * interps.h (interp_ui_out): Remove.
8656
8657 2018-05-25  Tom Tromey  <tom@tromey.com>
8658
8659         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8660         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8661         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8662
8663 2018-05-25  Tom Tromey  <tom@tromey.com>
8664
8665         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8666         * interps.c (interp_exec): Use scoped_restore.
8667
8668 2018-05-25  Tom Tromey  <tom@tromey.com>
8669
8670         * remote.c (remote_target::remote_file_get): Use
8671         gdb::byte_vector.
8672         (remote_target::remote_file_put): Likewise.
8673
8674 2018-05-25  Tom Tromey  <tom@tromey.com>
8675
8676         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8677         a std::string.
8678         (get_pe_section_index, add_pe_exported_sym): Update.
8679         (read_pe_exported_syms): Use gdb::def_vector.
8680
8681 2018-05-25  Tom Tromey  <tom@tromey.com>
8682
8683         * frame.c (remove_prev_frame): Remove.
8684         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8685
8686 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8687
8688         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8689         Remove prototypes.
8690         * mips-linux-nat.c (supply_fpregset): Always call
8691         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8692         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8693         `mips_fill_fpregset'.
8694         * mips-linux-tdep.c (mips_supply_fpregset)
8695         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8696         (mips_fill_fpregset_wrapper): Remove functions.
8697         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8698         (mips_linux_fpregset): Remove variable.
8699         (mips_linux_iterate_over_regset_sections): Use
8700         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8701         (mips_linux_o32_sigframe_init): Remove comment.
8702
8703 2018-05-25  Pedro Alves  <palves@redhat.com>
8704
8705         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8706         (struct readahead_cache, struct packet_reg, struct
8707         remote_arch_state, class remote_state): Move higher up in the
8708         file.
8709         (remote_target::m_remote_state): Now an object instead of a pointer.
8710         (remote_target::get_remote_state): Adjust.
8711
8712 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8713
8714         * stack.c (select_and_print_frame): Delete.
8715         (struct function_bounds): Move struct within function.
8716         (func_command): Most content moved into new function
8717         find_frame_for_function, use new function, print result, add
8718         function comment.
8719         (find_frame_for_function): New function, now returns a result.
8720
8721 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8722
8723         * stack.c (iterate_over_block_arg_vars): Fix comment.
8724         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8725
8726 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8727
8728         PR gdb/23203
8729         * frame.c
8730         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8731         Define.
8732         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8733         Define.
8734         * frame.h (class scoped_restore_selected_frame): New class.
8735         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8736         of any exception, use scoped_restore_selected_frame to restore the
8737         frame instead.
8738
8739 2018-05-24  Pedro Alves  <palves@redhat.com>
8740
8741         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8742         override.
8743
8744 2018-05-23  Tom Tromey  <tom@tromey.com>
8745
8746         * complaints.c (struct complaints): Remove.
8747         (symfile_complaint_book): Remove.
8748         (series): New global.
8749         (complaint_internal): Update.
8750         (clear_complaints): Update.
8751
8752 2018-05-23  Tom Tromey  <tom@tromey.com>
8753
8754         * complaints.c (counters): New global.
8755         (struct complain): Remove.
8756         (struct complaints) <root>: Remove.
8757         (complaint_sentinel): Remove.
8758         (symfile_complaint_book): Update.
8759         (find_complaint) Remove.
8760         (complaint_internal, clear_complaints): Update.
8761
8762 2018-05-23  Tom Tromey  <tom@tromey.com>
8763
8764         * complaints.c (struct complain) <file, line>: Remove.
8765         (find_complaint): Remove file, line parameters.
8766         (complaint_internal): Update.
8767
8768 2018-05-23  Tom Tromey  <tom@tromey.com>
8769
8770         * complaints.c (vcomplaint): Remove.
8771         (complaint_internal) Merge in contents of vcomplaint.
8772
8773 2018-05-23  Tom Tromey  <tom@tromey.com>
8774
8775         * complaints.c (struct complaints) <explanation>: Remove.
8776         (symfile_explanations): Remove.
8777         (symfile_complaint_book): Update.
8778         (vcomplaint): Update.
8779         (struct explanation): Remove.
8780
8781 2018-05-23  Tom Tromey  <tom@tromey.com>
8782
8783         * complaints.c (symfile_complaints): Remove.
8784         (complaint_internal): Remove "complaints" parameter.
8785         (clear_complaints, vcomplaint): Remove "c" parameter.
8786         (get_complaints): Remove.
8787         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8788         (dwarf2_debug_line_missing_file_complaint)
8789         (dwarf2_debug_line_missing_end_sequence_complaint)
8790         (dwarf2_complex_location_expr_complaint)
8791         (dwarf2_const_value_length_mismatch_complaint)
8792         (dwarf2_section_buffer_overflow_complaint)
8793         (dwarf2_macro_malformed_definition_complaint)
8794         (dwarf2_invalid_attrib_class_complaint)
8795         (create_addrmap_from_index, dw2_symtab_iter_next)
8796         (dw2_expand_marked_cus)
8797         (dw2_debug_names_iterator::find_vec_in_debug_names)
8798         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8799         (create_debug_type_hash_table, init_cutu_and_read_dies)
8800         (partial_die_parent_scope, add_partial_enumeration)
8801         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8802         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8803         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8804         (create_cus_hash_table, create_dwp_hash_table)
8805         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8806         (dwarf2_rnglists_process, dwarf2_ranges_process)
8807         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8808         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8809         (handle_struct_member_die, process_structure_scope)
8810         (read_array_type, read_common_block, read_module_type)
8811         (read_tag_pointer_type, read_typedef, read_base_type)
8812         (read_subrange_type, load_partial_dies, partial_die_info::read)
8813         (partial_die_info::read, partial_die_info::read)
8814         (partial_die_info::read, read_checked_initial_length_and_offset)
8815         (dwarf2_string_attr, read_formatted_entries)
8816         (dwarf_decode_line_header)
8817         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8818         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8819         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8820         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8821         (get_signatured_type, get_DW_AT_signature_type)
8822         (decode_locdesc, file_file_name, consume_improper_spaces)
8823         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8824         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8825         (dwarf2_symbol_mark_computed, set_die_type)
8826         (read_attribute_value): Update.
8827         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8828         Update.
8829         * dbxread.c (unknown_symtype_complaint)
8830         (lbrac_mismatch_complaint, repeated_header_complaint)
8831         (set_namestring, function_outside_compilation_unit_complaint)
8832         (read_dbx_symtab, process_one_symbol): Update.
8833         * gdbtypes.c (stub_noname_complaint): Update.
8834         * windows-nat.c (handle_unload_dll): Update.
8835         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8836         (decode_base_type): Update.
8837         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8838         (eb_complaint, record_include_begin, record_include_end)
8839         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8840         (process_xcoff_symbol, read_symbol)
8841         (function_outside_compilation_unit_complaint)
8842         (scan_xcoff_symtab): Update.
8843         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8844         * buildsym.c (finish_block_internal, make_blockvector)
8845         (end_symtab_get_static_block, augment_type_symtab): Update.
8846         * dtrace-probe.c (dtrace_process_dof)
8847         (dtrace_static_probe_ops::get_probes): Update.
8848         * complaints.h (struct complaint): Don't declare.
8849         (symfile_complaints): Remove.
8850         (complaint_internal): Remove "complaints" parameter.
8851         (complaint): Likewise.
8852         (clear_complaints): Likewise.
8853         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8854         (reread_symbols): Update.
8855         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8856         (dwarf2_frame_cache, decode_frame_entry): Update.
8857         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8858         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8859         (info_selectors_command): Update.
8860         * macrotab.c (macro_include, check_for_redefinition)
8861         (macro_undef): Update.
8862         * objfiles.c (filter_overlapping_sections): Update.
8863         * stabsread.c (invalid_cpp_abbrev_complaint)
8864         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8865         (define_symbol, error_type, read_type, rs6000_builtin_type)
8866         (stabs_method_name_from_physname, read_member_functions)
8867         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8868         (attach_fields_to_type, complain_about_struct_wipeout)
8869         (read_range_type, read_args, common_block_start)
8870         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8871         Update.
8872         * mdebugread.c (index_complaint, unknown_ext_complaint)
8873         (basic_type_complaint, bad_tag_guess_complaint)
8874         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8875         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8876         (parse_procedure, parse_lines)
8877         (function_outside_compilation_unit_complaint)
8878         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8879         (bad_tag_guess_complaint, reg_value_complaint): Update.
8880         * cp-support.c (demangled_name_complaint): Update.
8881         * macroscope.c (sal_macro_scope): Update.
8882         * dwarf-index-write.c (class debug_names): Update.
8883
8884 2018-05-23  Tom Tromey  <tom@tromey.com>
8885
8886         * complaints.c (clear_complaints): Remove "noisy" parameter.
8887         * complaints.h (clear_complaints): Update.
8888         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8889         (reread_symbols): Update.
8890
8891 2018-05-23  Tom Tromey  <tom@tromey.com>
8892
8893         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8894         SUBSEQUENT_MESSAGE.
8895         (vcomplaint, clear_complaints): Update.
8896         (symfile_explanations): Remove some messages.
8897
8898 2018-05-23  Tom Tromey  <tom@tromey.com>
8899
8900         * complaints.c (internal_complaint): Remove.
8901         * complaints.h (internal_complaint): Remove.
8902
8903 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8904
8905         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8906
8907 2018-05-22  Pedro Alves  <palves@redhat.com>
8908
8909         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8910         (remote_fileio_badfd, remote_fileio_return_errno)
8911         (remote_fileio_return_success, remote_fileio_func_open)
8912         (remote_fileio_func_open, remote_fileio_func_close)
8913         (remote_fileio_func_read, remote_fileio_func_write)
8914         (remote_fileio_func_lseek, remote_fileio_func_rename)
8915         (remote_fileio_func_unlink, remote_fileio_func_stat)
8916         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8917         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8918         remote_target parameter.
8919         (remote_fio_func_map) <func>: Add remote_target parameter.
8920         (do_remote_fileio_request, remote_fileio_request):
8921         * remote-fileio.h (remote_fileio_request):
8922         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8923         remote_target parameter.
8924         (remote_notif_process, handle_notification): Adjust to pass down
8925         the remote.
8926         (remote_notif_state_allocate): Add remote_target parameter.  Save
8927         it.
8928         * remote-notif.h (struct remote_target): Forward declare.
8929         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8930         remote_target parameter.
8931         (struct remote_notif_state) <remote>: New field.
8932         (remote_notif_ack, remote_notif_parse): Add remote_target
8933         parameter.
8934         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8935         remote_target parameter.
8936         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8937         (threads_listing_context, rmt_thread_action, protocol_feature)
8938         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8939         (packet_result, struct threads_listing_context, remote_state):
8940         Move definitions and declarations higher up.
8941         (remote_target) <~remote_target>: Declare.
8942         (remote_download_command_source, remote_file_put, remote_file_get)
8943         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8944         (remote_hostio_pread_vFile, remote_hostio_send_command)
8945         (remote_hostio_set_filesystem, remote_hostio_open)
8946         (remote_hostio_close, remote_hostio_unlink, remote_state)
8947         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8948         (get_memory_write_packet_size, get_memory_read_packet_size)
8949         (append_pending_thread_resumptions, remote_detach_1)
8950         (append_resumption, remote_resume_with_vcont)
8951         (add_current_inferior_and_thread, wait_ns, wait_as)
8952         (process_stop_reply, remote_notice_new_inferior)
8953         (process_initial_stop_replies, remote_add_thread)
8954         (btrace_sync_conf, remote_btrace_maybe_reopen)
8955         (remove_new_fork_children, kill_new_fork_children)
8956         (discard_pending_stop_replies, stop_reply_queue_length)
8957         (check_pending_events_prevent_wildcard_vcont)
8958         (discard_pending_stop_replies_in_queue, stop_reply)
8959         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8960         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8961         (remote_interrupt_as, remote_interrupt_ns)
8962         (remote_get_noisy_reply, remote_query_attached)
8963         (remote_add_inferior, remote_current_thread, get_current_thread)
8964         (set_thread, set_general_thread, set_continue_thread)
8965         (set_general_process, write_ptid)
8966         (remote_unpack_thread_info_response, remote_get_threadinfo)
8967         (parse_threadlist_response, remote_get_threadlist)
8968         (remote_threadlist_iterator, remote_get_threads_with_ql)
8969         (remote_get_threads_with_qxfer)
8970         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8971         (get_offsets, remote_check_symbols, remote_supported_packet)
8972         (remote_query_supported, remote_packet_size)
8973         (remote_serial_quit_handler, remote_detach_pid)
8974         (remote_vcont_probe, remote_resume_with_hc)
8975         (send_interrupt_sequence, interrupt_query)
8976         (remote_notif_get_pending_events, fetch_register_using_p)
8977         (send_g_packet, process_g_packet, fetch_registers_using_g)
8978         (store_register_using_P, store_registers_using_G)
8979         (set_remote_traceframe, check_binary_download)
8980         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8981         (remote_xfer_live_readonly_partial, remote_read_bytes)
8982         (remote_send_printf, remote_flash_write, readchar)
8983         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8984         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8985         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8986         (extended_remote_disable_randomization, extended_remote_run)
8987         (send_environment_packet, extended_remote_environment_support)
8988         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8989         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8990         (packet_command): Now methods of ...
8991         (remote_target): ... this class.
8992         (m_remote_state) <remote_target>: New field.
8993         (struct remote_state) <stop_reply_queue,
8994         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8995         fields.
8996         (remote_state::remote_state): Allocate stop_reply_queue.
8997         (remote_state): Delete global.
8998         (get_remote_state_raw): Delete.
8999         (remote_target::get_remote_state): Allocate m_remote_state on
9000         demand.
9001         (get_current_remote_target): New.
9002         (remote_ops, extended_remote_ops): Delete.
9003         (wait_forever_enabled_p, remote_async_inferior_event_token):
9004         Delete, moved to struct remote_state.
9005         (remote_target::close): Delete self.  Destruction bits split to
9006         ...
9007         (remote_target::~remote_target): ... this.
9008         (show_memory_packet_size): Adjust to use
9009         get_current_remote_target.
9010         (struct protocol_feature) <func>: Add remote_target parameter.
9011         All callers adjusted.
9012         (curr_quit_handler_target): New.
9013         (remote_serial_quit_handler): Reimplement.
9014         (remote_target::open_1): Adjust to use get_current_remote_target.
9015         Heap-allocate remote_target/extended_remote_target instances.
9016         (vcont_builder::vcont_builder): Add remote_target parameter, and
9017         save it in m_remote.  All callers adjusted.
9018         (vcont_builder::m_remote): New field.
9019         (vcont_builder::restart, vcont_builder::flush)
9020         (vcont_builder::push_action): Use it.
9021         (remote_target::commit_resume): Use it.
9022         (struct queue_iter_param) <remote>: New field.
9023         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9024         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9025         (check_pending_event_prevents_wildcard_vcont_callback)
9026         (remote_target::check_pending_events_prevent_wildcard_vcont)
9027         (remote_target::discard_pending_stop_replies)
9028         (remote_target::discard_pending_stop_replies_in_queue)
9029         (remote_target::remote_notif_remove_queued_reply): Fill in
9030         'remote' field.
9031         (remote_notif_get_pending_events): New.
9032         (remote_target::readchar, remote_target::remote_serial_write):
9033         Save/restore curr_quit_handler_target.
9034         (putpkt): New.
9035         (kill_new_fork_children): Fill in 'remote' field.
9036         (packet_command): Use get_current_remote_target, defer to
9037         remote_target method of same name.
9038         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9039         parameter, and save it in m_remote.  All callers adjusted.
9040         (scoped_remote_fd::release): Use m_remote.
9041         (scoped_remote_fd::m_remote): New field.
9042         (remote_file_put, remote_file_get, remote_file_delete): Use
9043         get_current_remote_target, defer to remote_target method of same
9044         name.
9045         (remote_btrace_reset): Add remote_state paremeter.  Update all
9046         callers.
9047         (remote_async_inferior_event_handler). Pass down 'data'.
9048         (remote_new_objfile): Use get_current_remote_target.
9049         (remote_target::vcont_r_supported): New.
9050         (set_range_stepping): Use get_current_remote_target and
9051         remote_target::vcont_r_supported.
9052         (_initialize_remote): Don't allocate 'remote_state' and
9053         'stop_reply_queue' globals.
9054         * remote.h (struct remote_target): Forward declare.
9055         (getpkt, putpkt, remote_notif_get_pending_events): Add
9056         'remote_target' parameter.
9057
9058 2018-05-22  Pedro Alves  <palves@redhat.com>
9059
9060         * remote.c (vcont_builder): Now a class.  Make all data members
9061         private.
9062         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9063         Declare methods.
9064         (vcont_builder_restart): Rename to ...
9065         (vcont_builder::restart): ... this.
9066         (vcont_builder_flush): Rename to ...
9067         (vcont_builder::flush): ... this.
9068         (vcont_builder_push_action): Rename to ...
9069         (vcont_builder::push_action): ... this.
9070         (remote_target::commit_resume): Adjust.
9071
9072 2018-05-22  Pedro Alves  <palves@redhat.com>
9073
9074         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9075         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9076         (get_fixed_memory_packet_size): New.
9077         (get_memory_packet_size): Use it.
9078         (set_memory_packet_size): Don't override the config size with
9079         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9080         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9081         Don't refer to get_memory_packet_size if not connected to a remote
9082         target.  Show "(default)" if configured size is 0.
9083
9084 2018-05-22  Pedro Alves  <palves@redhat.com>
9085
9086         * remote.c (remote_target::mourn_inferior): Move
9087         discard_pending_stop_replies call here from ...
9088         (_initialize_remote): ... here.
9089
9090 2018-05-22  Pedro Alves  <palves@redhat.com>
9091
9092         * remote.c (compare_section_command): Remove set_general_process
9093         call.
9094
9095 2018-05-22  Pedro Alves  <palves@redhat.com>
9096
9097         * remote.c (struct packet_reg, struct remote_arch_state):
9098         Move higher up in the file.
9099         (remote_state) <m_arch_states>: Store remote_arch_state values
9100         instead of remote_arch_state pointers.
9101         (remote_state::get_remote_arch_state): Adjust.
9102
9103 2018-05-22  Pedro Alves  <palves@redhat.com>
9104
9105         * remote.c: Include <unordered_map>.
9106         (remote_state): Now a class.
9107         (remote_state) <get_remote_arch_state>: Declare method.
9108         <get_remote_arch_state>: New field.
9109         (remote_arch_state) <remote_arch_state>: Declare ctor.
9110         <regs>: Now a unique_ptr.
9111         (remote_gdbarch_data_handle): Delete.
9112         (get_remote_arch_state): Delete.
9113         (remote_state::get_remote_arch_state): New.
9114         (get_remote_state): Adjust to call remote_state's
9115         get_remote_arch_state method.
9116         (init_remote_state): Delete, bits factored out to ...
9117         (remote_arch_state::remote_arch_state): ... this new method.
9118         (get_remote_packet_size, get_memory_packet_size)
9119         (process_g_packet, remote_target::fetch_registers)
9120         (remote_target::prepare_to_store, store_registers_using_G)
9121         (remote_target::store_registers, remote_target::get_trace_status):
9122         Adjust to call remote_state's method.
9123         (_initialize_remote): Remove reference to
9124         remote_gdbarch_data_handle.
9125
9126 2018-05-22  Pedro Alves  <palves@redhat.com>
9127
9128         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9129         pread>: New method declarations.
9130         (remote_target::open_1): Adjust.
9131         (readahead_cache_invalidate): Rename to ...
9132         (readahead_cache::invalidate): ... this, and adjust to be a class
9133         method.
9134         (readahead_cache_invalidate_fd): Rename to ...
9135         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9136         class method.
9137         (remote_hostio_pwrite): Adjust.
9138         (remote_hostio_pread_from_cache): Rename to ...
9139         (readahead_cache::pread): ... this, and adjust to be a class
9140         method.
9141         (remote_hostio_close): Adjust.
9142
9143 2018-05-22  Pedro Alves  <palves@redhat.com>
9144
9145         * remote.c (remote_hostio_close_cleanup): Delete.
9146         (class scoped_remote_fd): New.
9147         (remote_file_put, remote_file_get): Use it.
9148
9149 2018-05-22  Pedro Alves  <palves@redhat.com>
9150
9151         (struct vCont_action_support): Use bool and initialize all fields.
9152         (struct readahead_cache): Initialize all fields.
9153         (remote_state): Use bool and initialize all fields.
9154         (remote_state::remote_state, remote_state::~remote_state): New.
9155         (new_remote_state): Delete.
9156         (_initialize_remote): Use new to allocate remote_state.
9157
9158 2018-05-22  Pedro Alves  <palves@redhat.com>
9159             張俊芝  <zjz@zjz.name>
9160
9161         PR gdb/22973
9162         * c-exp.y: Include "c-support.h".
9163         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9164         of tolower.  Use c_ident_is_alpha to scan names.
9165         * c-lang.c: Include "c-support.h".
9166         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9167         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9168         * c-support.h: New file, with bits factored out from ...
9169         * cp-name-parser.y: ... this file.
9170         Include "c-support.h".
9171         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9172         c-support.h and renamed.
9173         (symbol_end, yylex): Adjust.
9174
9175 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9176
9177         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9178         parameter type to CORE_ADDR.
9179         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9180         parameter type in declaration to CORE_ADDR.
9181         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9182         target_auxv_search to get AT_HWCAP and use the result to get the
9183         target description.
9184         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9185         to CORE_ADDR. Remove the cast of the return value to unsigned
9186         long. Fix error predicate of target_auxv_search.
9187         (ppc_linux_nat_target::read_description): Change the type of the
9188         hwcap variable to CORE_ADDR.
9189
9190 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9191
9192         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9193         if the size of fpscr is larger than 32 bits.
9194
9195 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9196
9197         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9198         (ppc32_linux_vsxregmap): New global.
9199         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9200         regcache_supply_regset, and regcache_collect_regset.
9201         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9202         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9203         (fetch_vsx_register, store_vsx_register): Remove.
9204         (fetch_vsx_registers): Add regno parameter. Get regset using
9205         ppc_linux_vsxregset. Use regset to supply registers.
9206         (store_vsx_registers): Add regno parameter. Get regset using
9207         ppc_linux_vsxregset. Use regset to collect registers.
9208         (fetch_register): Call fetch_vsx_registers instead of
9209         fetch_vsx_register.
9210         (store_register): Call store_vsx_registers instead of
9211         store_vsx_register.
9212         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9213         new regno parameter.
9214         (store_ppc_registers): Call store_vsx_registers with -1 for the
9215         new regno parameter.
9216         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9217         (ppc_collect_vsxregset): Remove.
9218
9219 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9220
9221         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9222         offset fields.
9223         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9224         for vector register offset fields.
9225         (ppc64_fbsd_reg_offsets): Likewise.
9226         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9227         to vector register offset fields.
9228         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9229         to vector register offset fields.
9230         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9231         vector register offset fields.
9232         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9233         initializers for vector register offset fields.
9234         (rs6000_aix64_reg_offsets): Likewise.
9235         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9236         (ppc_supply_vrregset): Remove.
9237         (ppc_collect_vrregset): Remove.
9238         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9239         (ppc_linux_vrregset) : New function.
9240         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9241         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9242         (ppc32_linux_vrregset): Remove.
9243         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9244         and use result instead of ppc32_linux_vrregset.
9245         (ppc32_linux_reg_offsets): Remove initializers for vector register
9246         offset fields.
9247         (ppc64_linux_reg_offsets): Likewise.
9248         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9249         * ppc-linux-nat.c: Include regset.h.
9250         (gdb_vrregset_t): Adjust comment to account for little-endian
9251         mode.
9252         (supply_vrregset, fill_vrregset): Remove.
9253         (fetch_altivec_register, store_altivec_register): Remove.
9254         (fetch_altivec_registers): Add regno parameter. Get regset using
9255         ppc_linux_vrregset. Use regset to supply registers.
9256         (store_altivec_registers): Add regno parameter. Get regset using
9257         ppc_linux_vrregset. Use regset to collect registers.
9258         (fetch_register): Call fetch_altivec_registers instead of
9259         fetch_altivec_register.
9260         (store_register): Call store_altivec_registers instead of
9261         store_altivec_register.
9262         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9263         the new regno parameter.
9264         (store_ppc_registers): Call store_altivec_registers with -1 for
9265         the new regno parameter.
9266
9267 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9268
9269         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9270         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9271         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9272         (gdb_vrregset_t): Change array type size to
9273         PPC_LINUX_SIZEOF_VRREGSET.
9274         (gdb_vsxregset_t): Change array type size to
9275         PPC_LINUX_SIZEOF_VSXREGSET.
9276         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9277         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9278         PPC_LINUX_SIZEOF_VSXREGSET.
9279
9280 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9281
9282         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9283         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9284         nat/ppc-linux.c.
9285         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9286         ppc_linux_target_wordsize with tid.
9287         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9288         wordsize with tid.
9289         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9290         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9291         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9292         tid parameter. Remove static specifier.
9293         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9294         (ppc_linux_target_wordsize): New declaration.
9295
9296 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9297
9298         * arch/ppc-linux-common.c: New file.
9299         * arch/ppc-linux-common.h: New file.
9300         * arch/ppc-linux-tdesc.h: New file.
9301         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9302         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9303         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9304         arch/ppc-linux-tdesc.h.
9305         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9306         arch/ppc-linux-tdesc.h.
9307         (ppc_linux_nat_target::read_description): Remove target
9308         description matching code. Fill a ppc_linux_features struct and
9309         call ppc_linux_match_description with it. Move comment about ISA
9310         2.05 to ppc-linux-common.c.
9311         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9312         arch/ppc-linux-tdesc.h.
9313         (ppc_linux_core_read_description): Remove target description
9314         matching code. Fill a ppc_linux_features struct and call
9315         ppc_linux_match_description with it.
9316         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9317         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9318         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9319         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9320         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9321         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9322         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9323         (tdesc_powerpc_e500l): Remove.
9324
9325 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9326
9327         * ada-lang.c (catch_assert_command): Pass empty string instead
9328         of NULL for excep_string argument.
9329
9330 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9331
9332         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9333         the width of the requested register exceeds the width of the
9334         `ptrace' data type.
9335
9336 2018-05-21  Tom Tromey  <tom@tromey.com>
9337
9338         * printcmd.c (output_command): Remove.
9339         (output_command_const): Rename to output_command.
9340         * valprint.h (output_command): Rename from output_command_const.
9341         * tracepoint.c (trace_dump_actions): Call output_command.
9342
9343 2018-05-21  Tom Tromey  <tom@tromey.com>
9344
9345         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9346         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9347         * ada-lang.h (create_ada_exception_catchpoint): Update.
9348         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9349         std::string.
9350         (create_excep_cond_exprs, ~ada_catchpoint)
9351         (should_stop_exception, print_one_exception)
9352         (print_mention_exception, print_recreate_exception): Update.
9353         (ada_get_next_arg): Remove.
9354         (catch_ada_exception_command_split): Use std::string.  Change type
9355         of "excep_string", "cond_string".
9356         (catch_ada_exception_command): Update.
9357         (create_ada_exception_catchpoint): Change type of excep_string.
9358         (ada_exception_sal): Remove excep_string parameter.
9359         (~ada_catchpoint): Remove.
9360
9361 2018-05-21  Tom Tromey  <tom@tromey.com>
9362
9363         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9364         cleanup.
9365
9366 2018-05-21  Tom Tromey  <tom@tromey.com>
9367
9368         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9369         Return unique_xmalloc_ptr.
9370         (print_it_exception): Update.
9371
9372 2018-05-21  Tom Tromey  <tom@tromey.com>
9373
9374         * tracepoint.c (trace_dump_actions): Use std::string.
9375
9376 2018-05-21  Tom Tromey  <tom@tromey.com>
9377
9378         * symfile.c (reread_symbols): Use std::string for original_name.
9379
9380 2018-05-21  Tom Tromey  <tom@tromey.com>
9381
9382         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9383         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9384         constructor.
9385
9386 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9387
9388         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9389         instance to...
9390         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9391         * objfiles.c (get_objfile_bfd_data): Allocate
9392         objfile_per_bfd_storage with obstack_new when allocating on
9393         obstack.
9394
9395 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9396
9397         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9398         OBSTACK_ZALLOC.
9399         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9400         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9401         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9402         (add_pending): Likewise.
9403         (parse_symbol): Likewise.
9404         (parse_partial_symbols): Likewise.
9405         (psymtab_to_symtab_1): Likewise.
9406         (new_psymtab): Likewise.
9407         (elfmdebug_build_psymtabs): Likewise.
9408         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9409         * objfiles.c (get_objfile_bfd_data): Likewise.
9410         (objfile_register_static_link): Likewise.
9411         * psymtab.c (allocate_psymtab): Likewise.
9412         * stabsread.c (read_member_functions): Likewise.
9413         * xcoffread.c (xcoff_end_psymtab): Likewise.
9414
9415 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9416
9417         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9418         compiler supports std::is_trivially_constructible.
9419         * common/poison.h: Include obstack.h.
9420         (IsMallocable): Define to is_trivially_constructible if the
9421         compiler supports it, define to true_type otherwise.
9422         (xobnew): New.
9423         (XOBNEW): Redefine.
9424         (xobnewvec): New.
9425         (XOBNEWVEC): Redefine.
9426         * gdb_obstack.h (obstack_zalloc): New.
9427         (OBSTACK_ZALLOC): Redefine.
9428         (obstack_calloc): New.
9429         (OBSTACK_CALLOC): Redefine.
9430         (obstack_new): New.
9431         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9432         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9433         gdbarch.c.
9434         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9435         obstack_calloc/obstack_zalloc.
9436         (gdbarch_obstack_zalloc): Remove.
9437         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9438
9439 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9440
9441         * stack.c (backtrace_command_1): Remove useless variable int i.
9442
9443 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9444
9445         * stack.c (print_frame_info): Fix comment.
9446
9447 2018-05-18  Tom Tromey  <tom@tromey.com>
9448
9449         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9450         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9451         (~dwarf2_per_objfile): Update
9452         (dwarf2_get_dwz_file): Use new.
9453         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9454         unique_ptr.
9455
9456 2018-05-18  Tom Tromey  <tom@tromey.com>
9457
9458         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9459         unique_ptr.
9460         * dwarf2read.c (struct dwp_file): Add constructor and
9461         initializers.
9462         (open_and_init_dwp_file): Return a unique_ptr.
9463         (dwarf2_per_objfile, create_dwp_hash_table)
9464         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9465         (lookup_dwo_unit_in_dwp): Update.
9466         (open_and_init_dwp_file, get_dwp_file): Update.
9467
9468 2018-05-18  Tom Tromey  <tom@tromey.com>
9469
9470         * dwarf2read.c (dwarf2_per_objfile): Update.
9471         (struct mapped_index): Add initializers.
9472         (dwarf2_read_index): Use new.
9473         (dw2_symtab_iter_init): Update.
9474         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9475         unique_ptr.
9476
9477 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9478
9479         * dwarf2read.c (mapped_index) <total_size>: Remove.
9480
9481 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9482
9483         * unittests/format_pieces-selftests.c (test_format_specifier):
9484         Add ARI comments.
9485
9486 2018-05-18  Tom Tromey  <tom@tromey.com>
9487
9488         * c-typeprint.c (maybe_print_hole): New function.
9489         (c_print_type_struct_field_offset): Update.
9490         (c_type_print_base_struct_union): Call maybe_print_hole.
9491
9492 2018-05-17  Keith Seitz  <keiths@redhat.com>
9493
9494         * breakpoint.c (build_bpstat_chain): New function, moved from
9495         bpstat_stop_status.
9496         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9497         If no stop chain is passed, call build_bpstat_chain to build it.
9498         * breakpoint.h (build_bpstat_chain): Declare.
9499         (bpstat_stop_status): Move documentation here from breakpoint.c.
9500         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9501         build the stop chain and pass it to skip_inline_frames.
9502         Pass this stop chain to bpstat_stop_status.
9503         * inline-frame.c: Include breakpoint.h.
9504         (stopped_by_user_bp_inline_frame): New function.
9505         (skip_inline_frames): Add parameter `stop_chain'.
9506         Move documention to inline-frame.h.
9507         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9508         whether the frame should be elided.
9509         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9510         Add moved documentation and update for new parameter.
9511
9512 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9513
9514         PR cli/14975
9515         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9516         unittests/format_pieces-selftests.c.
9517         * common/format.h (format_piece) <operator==>: New.
9518         (format_pieces) <operator[]>: Remove.
9519         * common/format.c (format_pieces::format_pieces): Handle \e.
9520         * unittests/format_pieces-selftests.c: New.
9521
9522 2018-05-17  Tom Tromey  <tom@tromey.com>
9523
9524         PR symtab/23010:
9525         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9526         (dw2_instantiate_symtab): Add skip_partial parameter.
9527         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9528         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9529         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9530         (dw2_expand_symtabs_matching_one)
9531         (dw2_find_pc_sect_compunit_symtab)
9532         (dw2_debug_names_lookup_symbol)
9533         (dw2_debug_names_expand_symtabs_for_function): Update.
9534         (init_cutu_and_read_dies): Add skip_partial parameter.
9535         (process_psymtab_comp_unit, build_type_psymtabs_1)
9536         (process_skeletonless_type_unit, load_partial_comp_unit)
9537         (psymtab_to_symtab_1): Update.
9538         (load_full_comp_unit): Add skip_partial parameter.
9539         (process_imported_unit_die, dwarf2_read_addr_index)
9540         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9541         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9542         (read_signatured_type): Update.
9543
9544 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9545
9546         * value.c (release_value): Remove unused variable.
9547         (record_latest_value): Likewise.
9548         (access_value_history): Likewise.
9549         (preserve_values): Likewise.
9550
9551 2018-05-17  Tom Tromey  <tom@tromey.com>
9552
9553         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9554         Initialize.
9555
9556 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9557
9558         PR gdb/22286
9559         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9560         Also handle registers whose width is not a multiple of
9561         PTRACE_TYPE_RET.
9562         (linux_nat_trad_target::store_register): Likewise.
9563
9564 2018-05-16  Tom Tromey  <tom@tromey.com>
9565
9566         * gdbcore.h (core_bfd): Redefine.
9567         * corelow.c (core_target::close): Update.
9568         (core_target_open): Update.
9569         * progspace.h (struct program_space) <cbfd>: Now a
9570         gdb_bfd_ref_ptr.
9571
9572 2018-05-16  Tom Tromey  <tom@tromey.com>
9573
9574         PR cli/19551:
9575         * symfile-add-flags.h (enum symfile_add_flags)
9576         <SYMFILE_NOT_FILENAME>: New constant.
9577         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9578         objfile name from BFD.
9579         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9580         * minidebug.c (find_separate_debug_file_in_section): Put
9581         ".gnu_debugdata" into BFD's file name.
9582
9583 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9584
9585         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9586         Remove.
9587
9588 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9589
9590         PR binutils/21446
9591         * aarch64-tdep.c (aarch64_analyze_prologue,
9592         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9593         Indicate not interested in errors.
9594
9595 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9596
9597         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9598         Supply the MIPS_ZERO_REGNUM register.
9599
9600 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9601
9602         * mips-tdep.c (mask_address_var): Make variable static.
9603
9604 2018-05-14  Tom Tromey  <tom@tromey.com>
9605
9606         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9607
9608 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9609
9610         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9611         FXSAVE_ADDR for the mxcsr register.
9612
9613 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9614
9615         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9616
9617 2018-05-11  Pedro Alves  <palves@redhat.com>
9618
9619         * corelow.c (core_target) <core_target>: No longer inline.
9620         Initialize m_core_gdbarch, m_core_vec and build the section table
9621         here.
9622         <~core_target>: New.
9623         <core_gdbarch, get_core_register_section>: New methods.
9624         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9625         factored out from ...
9626         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9627         (core_ops): Delete.
9628         (sniff_core_bfd): Add gdbarch parameter.
9629         (core_close): Delete, merged into ...
9630         (core_target::close): ... here.  Delete self.
9631         (core_close_cleanup): Delete.
9632         (core_target_open): Allocate a core_target on the heap.  Use a
9633         unique_ptr instead of a cleanup.  Bits moved into the core_target
9634         ctor.  Adjust to use core_target methods instead of globals.
9635         (get_core_register_section): Rename to ...
9636         (core_target::get_core_register_section): ... this and adjust.
9637         (struct get_core_registers_cb_data): New.
9638         (get_core_registers_cb): Use it.  Use bool.
9639         (core_target::fetch_registers, core_target::files_info)
9640         (core_target::xfer_partial, core_target::read_description)
9641         (core_target::pid_to, core_target::thread_name): Adjust to
9642         reference class fields instead of globals.
9643         * target.h (struct target_ops_deleter, target_ops_up): New.
9644
9645 2018-05-11  Pedro Alves  <palves@redhat.com>
9646
9647         * corefile.c (core_file_command): Move to corelow.c.
9648         * corelow.c (the_core_target): Delete.
9649         (core_file_command): Moved from corefile.c.  Check exec_bfd
9650         instead of the_core_target.  Use target_detach instead of calling
9651         into the_core_target directly.
9652         (maybe_say_no_core_file_now): New.
9653         (core_target::detach): Use it.
9654         (_initialize_corelow): Remove references to the_core_target.
9655         * gdbcore.h (the_core_target): Delete.
9656
9657 2018-05-11  Tom Tromey  <tromey@redhat.com>
9658             Pedro Alves  <palves@redhat.com>
9659
9660         * corefile.c (core_bfd): Remove.
9661         * gdbcore.h (core_bfd): Now a macro.
9662         * progspace.h (struct program_space) <cbfd>: New field.
9663
9664 2018-05-11  Tom Tromey  <tom@tromey.com>
9665
9666         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9667         gdb::def_vector.
9668
9669 2018-05-10  Tom Tromey  <tom@tromey.com>
9670
9671         * configure: Rebuild.
9672         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9673
9674 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9675
9676         PR server/23158:
9677         * regformats/regdat.sh: Adjust script, following the addition
9678         of the new expedite_regs parameter to init_target_desc.
9679
9680 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9681     
9682         PR gdb/23127
9683         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9684         set_gdbarch_significant_addr_bit.
9685         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9686         set_gdbarch_significant_addr_bit.
9687         * utils.c (address_significant): Update to sign extend addr.
9688
9689 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9690
9691         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9692         (xtensa_linux_init_abi): Limit tdep->num_regs by
9693         tdep->num_nopriv_regs.
9694         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9695         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9696         not initialized.
9697
9698 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9699
9700         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9701
9702 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9703
9704         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9705         (I387_MXCSR_INIT_VAL): New constant.
9706         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9707         buffer if it was supplied by the inferior.
9708         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9709         (i387_xsave_get_clear_bv): New function.
9710         (i387_supply_xsave): Only read x87 control registers from the
9711         xsave buffer if the feature is enabled, and the state will have
9712         been written, otherwise, provide a suitable default.
9713         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9714         including x87 control registers.  Update control registers if they
9715         have changed from the default value, and mark features as enabled
9716         as required.
9717         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9718
9719 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9720
9721         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9722
9723 2018-05-07  Tom Tromey  <tom@tromey.com>
9724
9725         * configure: Rebuild.
9726         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9727
9728 2018-05-07  Tom Tromey  <tom@tromey.com>
9729
9730         PR tdep/20362:
9731         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9732         bit.  Use correct value for VDIV.
9733
9734 2018-05-04  Tom Tromey  <tom@tromey.com>
9735
9736         * configure: Rebuild.
9737         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9738
9739 2018-05-04  Tom Tromey  <tom@tromey.com>
9740
9741         * linux-record.c (record_linux_system_call) <case
9742         RECORD_SYS_RECVFROM>: Add "break".
9743
9744 2018-05-04  Tom Tromey  <tom@tromey.com>
9745
9746         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9747         Add missing "break".
9748         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9749         Add missing "break".
9750
9751 2018-05-04  Tom Tromey  <tom@tromey.com>
9752
9753         * rs6000-tdep.c (ppc_process_record_op4)
9754         (ppc_process_record_op63): Add fall-through comment.
9755
9756 2018-05-04  Tom Tromey  <tom@tromey.com>
9757
9758         * i386-tdep.c (i386_process_record): Add fall-through comment.
9759
9760 2018-05-04  Tom Tromey  <tom@tromey.com>
9761
9762         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9763         comment.
9764
9765 2018-05-04  Tom Tromey  <tom@tromey.com>
9766
9767         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9768         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9769         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9770         comment.
9771         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9772         comment.
9773         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9774         comment.
9775
9776 2018-05-04  Tom Tromey  <tom@tromey.com>
9777
9778         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9779
9780 2018-05-04  Tom Tromey  <tom@tromey.com>
9781
9782         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9783         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9784         * symfile.c (section_is_mapped): Fix fall-through comment.
9785         * stabsread.c (define_symbol, read_member_functions): Fix
9786         fall-through comment.
9787         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9788         comment.
9789         * remote.c (remote_wait_as): Fix fall-through comment.
9790         * p-exp.y (yylex): Fix fall-through comment.
9791         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9792         comment.
9793         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9794         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9795         * jv-exp.y (yylex): Fix fall-through comment.
9796         * go-exp.y (lex_one_token): Fix fall-through comment.
9797         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9798         fall-through comment.
9799         * f-exp.y (yylex): Fix fall-through comment.
9800         * dwarf2read.c (process_die): Fix fall-through comments.
9801         * dbxread.c (process_one_symbol): Fix fall-through comment.
9802         * d-exp.y (lex_one_token): Fix fall-through comment.
9803         * cp-name-parser.y (yylex): Fix fall-through comment.
9804         * coffread.c (coff_symtab_read): Fix fall-through comment.
9805         * c-exp.y (lex_one_token): Fix fall-through comment.
9806         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9807         comment.
9808         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9809         comment.
9810
9811 2018-05-04  Tom Tromey  <tom@tromey.com>
9812
9813         PR python/22730:
9814         * NEWS: Mention gdb.execute change.
9815         * gdbcmd.h (execute_control_command): Don't declare.
9816         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9817         execute_control_commands, execute_control_commands_to_string.
9818         * cli/cli-script.h (execute_control_commands)
9819         (execute_control_commands_to_string): Declare.
9820         (execute_control_command): Add from_tty parameter.
9821         * cli/cli-script.c (execute_control_commands)
9822         (execute_control_commands_to_string): New functions.
9823         (execute_user_command): Use execute_control_commands.
9824         (execute_control_command_1): Add "from_tty" parameter.  Update.
9825         (execute_control_command): Likewise.
9826
9827 2018-05-04  Tom Tromey  <tom@tromey.com>
9828
9829         PR python/22731:
9830         * NEWS: Mention that breakpoint commands are writable.
9831         * python/py-breakpoint.c (bppy_set_commands): New function.
9832         (breakpoint_object_getset) <"commands">: Use it.
9833
9834 2018-05-04  Tom Tromey  <tom@tromey.com>
9835
9836         * tracepoint.c (actions_command): Update.
9837         * mi/mi-cmd-break.c (mi_command_line_array)
9838         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9839         (mi_read_next_line): Remove.
9840         (mi_cmd_break_commands): Update.
9841         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9842         function_view.
9843         * cli/cli-script.c (get_command_line): Update.
9844         (process_next_line): Use function_view.  Constify.
9845         (recurse_read_control_structure, read_command_lines)
9846         (read_command_lines_1): Change argument types to function_view.
9847         (do_define_command, document_command): Update.
9848         * breakpoint.h (check_tracepoint_command): Don't declare.
9849         * breakpoint.c (check_tracepoint_command): Remove.
9850         (commands_command_1, create_tracepoint_from_upload): Update.
9851
9852 2018-05-04  Tom Tromey  <tom@tromey.com>
9853
9854         PR gdb/11750:
9855         * cli/cli-script.h (enum command_control_type) <define_control>:
9856         New constant.
9857         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9858         (build_command_line, execute_control_command_1)
9859         (process_next_line): Likewise.
9860         (do_define_command): New function, extracted from define_command.
9861         (define_command): Use it.
9862
9863 2018-05-04  Tom Tromey  <tom@tromey.com>
9864
9865         * tracepoint.c (actions_command): Update.
9866         * cli/cli-script.h (read_command_lines): Update.
9867         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9868         (MAX_TMPBUF): Remove define.
9869         (define_command): Use string_printf.
9870         (document_command): Likewise.
9871         * breakpoint.c (commands_command_1): Update.
9872
9873 2018-05-04  Tom Tromey  <tom@tromey.com>
9874
9875         * top.c (execute_command): Update.
9876         * cli/cli-script.h (print_command_lines): Now varargs.
9877         * cli/cli-script.c (print_command_lines): Now varargs.
9878         (execute_control_command_1) <case while_control, case if_control>:
9879         Update.
9880
9881 2018-05-04  Tom Tromey  <tom@tromey.com>
9882
9883         * tracepoint.c (all_tracepoint_actions): Rename from
9884         all_tracepoint_actions_and_cleanup.  Change return type.
9885         (actions_command, encode_actions_1, encode_actions)
9886         (trace_dump_actions, tdump_command): Update.
9887         * remote.c (remote_download_command_source): Update.
9888         * python/python.c (gdbpy_eval_from_control_command)
9889         (python_command, python_interactive_command): Update.
9890         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9891         * guile/guile.c (guile_command)
9892         (gdbscm_eval_from_control_command, guile_command): Update.
9893         * compile/compile.c (compile_code_command)
9894         (compile_print_command, compile_to_object): Update.
9895         * cli/cli-script.h (struct command_lines_deleter): New.
9896         (counted_command_line): New typedef.
9897         (struct command_line): Add constructor, destructor.
9898         <body_list>: Remove.
9899         <body_list_0, body_list_1>: New members.
9900         (command_line_up): Remove typedef.
9901         (read_command_lines, read_command_lines_1, get_command_line):
9902         Update.
9903         (copy_command_lines): Don't declare.
9904         * cli/cli-script.c (build_command_line): Use "new".
9905         (get_command_line): Return counted_command_line.
9906         (print_command_lines, execute_user_command)
9907         (execute_control_command_1, while_command, if_command): Update.
9908         (realloc_body_list): Remove.
9909         (process_next_line, recurse_read_control_structure): Update.
9910         (read_command_lines, read_command_lines_1): Return counted_command_line.
9911         (free_command_lines): Use "delete".
9912         (copy_command_lines): Remove.
9913         (define_command, document_command, show_user_1): Update.
9914         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9915         a counted_command_line.
9916         * breakpoint.h (counted_command_line): Remove typedef.
9917         (breakpoint_set_commands): Update.
9918         * breakpoint.c (check_no_tracepoint_commands)
9919         (validate_commands_for_breakpoint): Update.
9920         (breakpoint_set_commands): Change commands to be a
9921         counted_command_line.
9922         (commands_command_1, update_dprintf_command_list)
9923         (create_tracepoint_from_upload): Update.
9924
9925 2018-05-04  Tom Tromey  <tom@tromey.com>
9926
9927         * cli/cli-decode.h (cmd_list_element): New constructor.
9928         (~cmd_list_element): New destructor.
9929         (struct cmd_list_element): Add initializers.
9930         * cli/cli-decode.c (do_add_cmd): Use "new".
9931         (delete_cmd): Use "delete".
9932
9933 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9934             Pedro Alves <palves@redhat.com>
9935
9936         PR breakpoints/19806 and support for PR external/20207.
9937         * NEWS: Mention Aarch64 watchpoint improvements.
9938         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9939         watchpoints and PR external/20207 watchpoints.
9940         * nat/aarch64-linux-hw-point.c
9941         (kernel_supports_any_contiguous_range): New.
9942         (aarch64_watchpoint_offset): New.
9943         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9944         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9945         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9946         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9947         next_addr_orig_p.  Support PR external/20207 watchpoints.
9948         (aarch64_downgrade_regs): New.
9949         (aarch64_dr_state_insert_one_point): New parameters offset and
9950         addr_orig.
9951         (aarch64_dr_state_remove_one_point): Likewise.
9952         (aarch64_handle_breakpoint): Update caller.
9953         (aarch64_handle_aligned_watchpoint): Likewise.
9954         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9955         aligned_offset.
9956         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9957         aarch64_downgrade_regs.
9958         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9959         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9960         (DR_CONTROL_MASK): ... this.
9961         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9962         (unsigned int aarch64_watchpoint_offset): New prototype.
9963         (aarch64_linux_set_debug_regs): Remove const from state.
9964         * utils.c (align_up, align_down): Move to ...
9965         * common/common-utils.c (align_up, align_down): ... here.
9966         * utils.h (align_up, align_down): Move to ...
9967         * common/common-utils.h (align_up, align_down): ... here.
9968
9969 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9970
9971         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9972         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9973         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9974         Re-implement to match the ABI as summarized in GCC's
9975         gcc/config/sparc/sparc.c.  All callers updated.
9976         (sparc32_store_arguments): Remove assertion.
9977
9978 2018-05-04  Tom Tromey  <tom@tromey.com>
9979
9980         * printcmd.c: Don't include tui.h.
9981         (decode_format): Use skip_spaces.
9982
9983 2018-05-04  Tom Tromey  <tom@tromey.com>
9984
9985         PR gdb/22619:
9986         * printcmd.c (last_count): New global.
9987         (x_command): Use saved count when repeating.
9988
9989 2018-05-04  Tom Tromey  <tom@tromey.com>
9990
9991         * nto-procfs.c (do_closedir_cleanup): Remove.
9992         (procfs_pidlist): Use gdb_dir_up.
9993         * procfs.c (do_closedir_cleanup): Remove.
9994         (proc_update_threads): Use gdb_dir_up.
9995         * common/filestuff.h (struct gdb_dir_deleter): New.
9996         (gdb_dir_up): New typedef.
9997
9998 2018-05-04  Tom Tromey  <tom@tromey.com>
9999
10000         * ada-lang.c (print_mention_exception): Use std::string.
10001
10002 2018-05-04  Tom Tromey  <tom@tromey.com>
10003
10004         * ada-lang.c (create_excep_cond_exprs): Update.
10005         (ada_exception_catchpoint_cond_string): Use std::string.
10006
10007 2018-05-04  Tom Tromey  <tom@tromey.com>
10008
10009         * ada-lang.c (xget_renaming_scope): Return std::string.
10010         (old_renaming_is_invisible): Update.
10011
10012 2018-05-04  Tom Tromey  <tom@tromey.com>
10013
10014         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10015         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10016
10017 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10018
10019         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10020
10021 2018-05-04  Tom Tromey  <tom@tromey.com>
10022
10023         * remote.c (remote_query_supported_append): Change type.
10024         (remote_check_symbols): Update.
10025
10026 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10027
10028         PR gdb/11420
10029         * configure.ac: Prepend libpython.
10030         * python/python-config.py: Likewise.
10031         * configure: Regenerate.
10032
10033 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10034
10035         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10036
10037 2018-05-03  Pedro Alves  <palves@redhat.com>
10038
10039         * s390-linux-nat.c
10040         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10041         override.  Write 'true' instead of '1'.
10042         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10043         declaration.
10044
10045 2018-05-02  Pedro Alves  <palves@redhat.com>
10046
10047         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10048         add_inf_child_target.
10049         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10050         add_inf_child_target.
10051         * aix-thread.c (aix_thread_target_info): New.
10052         (aix_thread_target) <shortname, longname, doc>: Delete.
10053         <info>: New.
10054         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10055         add_inf_child_target.
10056         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10057         add_inf_child_target.
10058         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10059         add_inf_child_target.
10060         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10061         add_inf_child_target.
10062         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10063         add_inf_child_target.
10064         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10065         add_inf_child_target.
10066         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10067         add_inf_child_target.
10068         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10069         add_inf_child_target.
10070         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10071         add_inf_child_target.
10072         * bfd-target.c (target_bfd_target_info): New.
10073         (target_bfd) <shortname, longname, doc>: Delete.
10074         <info>: New.
10075         * bsd-kvm.c (bsd_kvm_target_info): New.
10076         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10077         <info>: New.
10078         (bsd_kvm_target::open): Rename to ...
10079         (bsd_kvm_target_open): ... this.  Adjust.
10080         * bsd-uthread.c (bsd_uthread_target_info): New.
10081         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10082         <info>: New.
10083         * corefile.c (core_file_command): Adjust.
10084         * corelow.c (core_target_info): New.
10085         (core_target) <shortname, longname, doc>: Delete.
10086         <info>: New.
10087         (core_target::open): Rename to ...
10088         (core_target_open): ... this.  Adjust.
10089         * ctf.c (ctf_target_info): New.
10090         (ctf_target) <shortname, longname, doc>: Delete.
10091         <info>: New.
10092         (ctf_target::open): Rename to ...
10093         (ctf_target_open): ... this.
10094         (_initialize_ctf): Adjust.
10095         * exec.c (exec_target_info): New.
10096         (exec_target) <shortname, longname, doc>: Delete.
10097         <info>: New.
10098         (exec_target::open): Rename to ...
10099         (exec_target_open): ... this.
10100         * gdbcore.h (core_target_open): Declare.
10101         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10102         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10103         add_inf_child_target.
10104         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10105         add_inf_child_target.
10106         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10107         add_inf_child_target.
10108         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10109         add_inf_child_target.
10110         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10111         add_inf_child_target.
10112         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10113         add_inf_child_target.
10114         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10115         add_inf_child_target.
10116         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10117         add_inf_child_target.
10118         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10119         add_inf_child_target.
10120         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10121         add_inf_child_target.
10122         * inf-child.c (inf_child_target_info): New.
10123         (inf_child_target::info): New.
10124         (inf_child_open_target): Remove 'target' parameter.  Use
10125         get_native_target instead.
10126         (inf_child_target::open): Delete.
10127         (add_inf_child_target): New.
10128         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10129         Delete.
10130         <info>: New.
10131         (add_inf_child_target): Declare.
10132         (inf_child_open_target): Declare.
10133         * linux-thread-db.c (thread_db_target_info): New.
10134         (thread_db_target) <shortname, longname, doc>: Delete.
10135         <info>: New.
10136         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10137         add_inf_child_target.
10138         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10139         add_inf_child_target.
10140         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10141         add_inf_child_target.
10142         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10143         add_inf_child_target.
10144         * make-target-delegates (print_class): Adjust.
10145         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10146         add_inf_child_target.
10147         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10148         add_inf_child_target.
10149         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10150         add_inf_child_target.
10151         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10152         add_inf_child_target.
10153         * nto-procfs.c (nto_native_target_info): New.
10154         (nto_procfs_target_native) <shortname, longname, doc>:
10155         Delete.
10156         <info>: New.
10157         (nto_procfs_target_info): New.
10158         (nto_procfs_target_procfs) <shortname, longname, doc>:
10159         Delete.
10160         <info>: New.
10161         (init_procfs_targets): Adjust.
10162         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10163         add_inf_child_target.
10164         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10165         add_inf_child_target.
10166         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10167         add_inf_child_target.
10168         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10169         add_inf_child_target.
10170         * ravenscar-thread.c (ravenscar_target_info): New.
10171         (ravenscar_thread_target) <shortname, longname, doc>:
10172         Delete.
10173         <info>: New.
10174         * record-btrace.c (record_btrace_target_info):
10175         (record_btrace_target) <shortname, longname, doc>: Delete.
10176         <info>: New.
10177         (record_btrace_target::open): Rename to ...
10178         (record_btrace_target_open): ... this.  Adjust.
10179         * record-full.c (record_longname, record_doc): New.
10180         (record_full_base_target) <shortname, longname, doc>: Delete.
10181         <info>: New.
10182         (record_full_target_info): New.
10183         (record_full_target): <shortname>: Delete.
10184         <info>: New.
10185         (record_full_core_open_1, record_full_open_1): Update comments.
10186         (record_full_base_target::open): Rename to ...
10187         (record_full_open): ... this.
10188         (cmd_record_full_restore): Update.
10189         (_initialize_record_full): Update.
10190         * remote-sim.c (remote_sim_target_info): New.
10191         (gdbsim_target) <shortname, longname, doc>: Delete.
10192         <info>: New.
10193         (gdbsim_target::open): Rename to ...
10194         (gdbsim_target_open): ... this.
10195         (_initialize_remote_sim): Adjust.
10196         * remote.c (remote_doc): New.
10197         (remote_target_info): New.
10198         (remote_target) <shortname, longname, doc>: Delete.
10199         <info>: New.
10200         (extended_remote_target_info): New.
10201         (extended_remote_target) <shortname, longname, doc>: Delete.
10202         <info>: New.
10203         (remote_target::open_1): Make static.  Adjust.
10204         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10205         * s390-linux-nat.c (_initialize_s390_nat): Use
10206         add_inf_child_target.
10207         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10208         add_inf_child_target.
10209         * sol-thread.c (thread_db_target_info): New.
10210         (sol_thread_target) <shortname, longname, doc>: Delete.
10211         <info>: New.
10212         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10213         add_inf_child_target.
10214         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10215         add_inf_child_target.
10216         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10217         add_inf_child_target.
10218         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10219         add_inf_child_target.
10220         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10221         add_inf_child_target.
10222         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10223         add_inf_child_target.
10224         * spu-linux-nat.c (_initialize_spu_nat): Use
10225         add_inf_child_target.
10226         * spu-multiarch.c (spu_multiarch_target_info): New.
10227         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10228         <info>: New.
10229         * target-delegates.c: Regenerate.
10230         * target.c: Include <unordered_map>.
10231         (target_ops_p): Delete.
10232         (DEF_VEC_P(target_ops_p)): Delete.
10233         (target_factories): New.
10234         (test_target_info): New.
10235         (test_target_ops::info): New.
10236         (open_target): Adjust to use target_factories.
10237         (add_target_with_completer): Rename to ...
10238         (add_target): ... this.  Change prototype.  Register target_info
10239         and open callback in target_factories.  Register target_info in
10240         command context instead of target_ops.
10241         (add_target): Delete old implementation.
10242         (add_deprecated_target_alias): Change prototype.  Adjust.
10243         (the_native_target): New.
10244         (set_native_target, get_native_target): New.
10245         (find_default_run_target): Use the_native_target.
10246         (find_attach_target, find_run_target): Simplify.
10247         (target_ops::open): Delete.
10248         (dummy_target_info): New.
10249         (dummy_target::shortname, dummy_target::longname)
10250         (dummy_target::doc): Delete.
10251         (dummy_target::info): New.
10252         (debug_target::shortname, debug_target::longname)
10253         (debug_target::doc): Delete.
10254         (debug_target::info): New.
10255         * target.h (struct target_info): New.
10256         (target_ops::~target_ops): Add comment.
10257         (target_ops::info): New.
10258         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10259         longer virtual.  Implement in terms of target_info.
10260         (set_native_target, get_native_target): Declare.
10261         (target_open_ftype): New.
10262         (add_target, add_target_with_completer)
10263         (add_deprecated_target_alias): Change prototype.
10264         (test_target) <shortname, longname, doc>: Delete.
10265         <info>: New.
10266         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10267         add_inf_child_target.
10268         * tracefile-tfile.c (tfile_target_info): New.
10269         (tfile_target) <shortname, longname, doc>: Delete.
10270         <info>: New.
10271         (tfile_target::open): Rename to ...
10272         (tfile_target_open): ... this.
10273         (_initialize_tracefile_tfile): Adjust.
10274         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10275         add_inf_child_target.
10276         * windows-nat.c (_initialize_windows_nat): Use
10277         add_inf_child_target.
10278         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10279         add_inf_child_target.
10280
10281 2018-05-02  Pedro Alves  <palves@redhat.com>
10282
10283         * linux-nat.h (linux_nat_target) <low_new_thread,
10284         low_delete_thread, low_new_fork, low_forget_process,
10285         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10286         New virtual methods.
10287         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10288         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10289         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10290         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10291         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10292         Delete.
10293         * linux-fork.c (delete_fork): Adjust to call low method.
10294         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10295         (linux_nat_new_fork, linux_nat_forget_process_hook)
10296         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10297         (linux_nat_status_is_event):
10298         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10299         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10300         to call low method.
10301         (sigtrap_is_event): Rename to ...
10302         (linux_nat_target::low_status_is_event): ... this.
10303         (linux_nat_set_status_is_event): Delete.
10304         (save_stop_reason, linux_nat_wait_1)
10305         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10306         low methods.
10307         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10308         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10309         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10310         (linux_nat_set_prepare_to_resume): Delete.
10311         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10312         low virtual methods.
10313         * amd64-linux-nat.c: Likewise.
10314         * arm-linux-nat.c: Likewise.
10315         * i386-linux-nat.c: Likewise.
10316         * ia64-linux-nat.c: Likewise.
10317         * mips-linux-nat.c: Likewise.
10318         * ppc-linux-nat.c: Likewise.
10319         * s390-linux-nat.c: Likewise.
10320         * sparc64-linux-nat.c: Likewise.
10321         * x86-linux-nat.c: Likewise.
10322         * x86-linux-nat.h: Include "nat/x86-linux.h".
10323         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10324         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10325         Override methods.
10326
10327 2018-05-02  Pedro Alves  <palves@redhat.com>
10328
10329         * target.h (target_ops)
10330         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10331         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10332         stopped_by_watchpoint, have_continuable_watchpoint,
10333         stopped_data_address, watchpoint_addr_within_range,
10334         can_accel_watchpoint_condition, can_run, thread_alive,
10335         has_all_memory, has_memory, has_stack, has_registers,
10336         has_execution, can_async_p, is_async_p, supports_non_stop,
10337         always_non_stop_p, can_execute_reverse, supports_multi_process,
10338         supports_enable_disable_tracepoint,
10339         supports_disable_randomization, supports_string_tracing,
10340         supports_evaluation_of_breakpoint_conditions,
10341         can_run_breakpoint_commands, filesystem_is_local,
10342         can_download_tracepoint, get_trace_state_variable_value,
10343         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10344         record_is_replaying, record_will_replay,
10345         augmented_libraries_svr4_read>: Adjust to return bool.
10346         * aarch64-linux-nat.c: All implementations adjusted.
10347         * aix-thread.c: All implementations adjusted.
10348         * arm-linux-nat.c: All implementations adjusted.
10349         * breakpoint.c: All implementations adjusted.
10350         * bsd-kvm.c: All implementations adjusted.
10351         * bsd-uthread.c: All implementations adjusted.
10352         * corelow.c: All implementations adjusted.
10353         * ctf.c: All implementations adjusted.
10354         * darwin-nat.c: All implementations adjusted.
10355         * darwin-nat.h: All implementations adjusted.
10356         * exec.c: All implementations adjusted.
10357         * fbsd-nat.c: All implementations adjusted.
10358         * fbsd-nat.h: All implementations adjusted.
10359         * gnu-nat.c: All implementations adjusted.
10360         * gnu-nat.h: All implementations adjusted.
10361         * go32-nat.c: All implementations adjusted.
10362         * ia64-linux-nat.c: All implementations adjusted.
10363         * inf-child.c: All implementations adjusted.
10364         * inf-child.h: All implementations adjusted.
10365         * inf-ptrace.c: All implementations adjusted.
10366         * inf-ptrace.h: All implementations adjusted.
10367         * linux-nat.c: All implementations adjusted.
10368         * linux-nat.h: All implementations adjusted.
10369         * mips-linux-nat.c: All implementations adjusted.
10370         * nto-procfs.c: All implementations adjusted.
10371         * ppc-linux-nat.c: All implementations adjusted.
10372         * procfs.c: All implementations adjusted.
10373         * ravenscar-thread.c: All implementations adjusted.
10374         * record-btrace.c: All implementations adjusted.
10375         * record-full.c: All implementations adjusted.
10376         * remote-sim.c: All implementations adjusted.
10377         * remote.c: All implementations adjusted.
10378         * s390-linux-nat.c: All implementations adjusted.
10379         * sol-thread.c: All implementations adjusted.
10380         * spu-multiarch.c: All implementations adjusted.
10381         * target-delegates.c: All implementations adjusted.
10382         * target.c: All implementations adjusted.
10383         * target.h: All implementations adjusted.
10384         * tracefile-tfile.c: All implementations adjusted.
10385         * tracefile.c: All implementations adjusted.
10386         * tracefile.h: All implementations adjusted.
10387         * windows-nat.c: All implementations adjusted.
10388         * x86-linux-nat.h: All implementations adjusted.
10389         * x86-nat.h: All implementations adjusted.
10390
10391 2018-05-02  Pedro Alves  <palves@redhat.com>
10392
10393         * make-target-delegates (scan_target_h): Don't trim lines here.
10394         Replace sequences of tabs and/or whitespace with a single
10395         whitespace.
10396         (top level, parsing methods): Trim each line before processing it
10397         here.
10398
10399 2018-05-02  Pedro Alves  <palves@redhat.com>
10400             John Baldwin  <jhb@freebsd.org>
10401
10402         * target.h (enum strata) <debug_stratum>: New.
10403         (struct target_ops) <all delegation methods>: Replace by C++
10404         virtual methods, and drop "to_" prefix.  All references updated
10405         throughout.
10406         <to_shortname, to_longname, to_doc, to_data,
10407         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10408         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10409         virtual methods.  All references updated throughout.
10410         <can_attach, supports_terminal_ours, can_create_inferior,
10411         get_thread_control_capabilities, attach_no_wait>: New
10412         virtual methods.
10413         <insert_breakpoint, remove_breakpoint>: Now
10414         TARGET_DEFAULT_NORETURN methods.
10415         <info_proc>: Now returns bool.
10416         <to_magic>: Delete.
10417         (OPS_MAGIC): Delete.
10418         (current_target): Delete.  All references replaced by references
10419         to ...
10420         (target_stack): ... this.  New.
10421         (target_shortname, target_longname): Adjust.
10422         (target_can_run): Now a function declaration.
10423         (default_child_has_all_memory, default_child_has_memory)
10424         (default_child_has_stack, default_child_has_registers)
10425         (default_child_has_execution): Remove target_ops parameter.
10426         (complete_target_initialization): Delete.
10427         (memory_breakpoint_target): New template class.
10428         (test_target_ops): Refactor as a C++ class with virtual methods.
10429         * make-target-delegates (NAME_PART): Tighten.
10430         (POINTER_PART, CP_SYMBOL): New.
10431         (SIMPLE_RETURN_PART): Reimplement.
10432         (VEC_RETURN_PART): Expect less.
10433         (RETURN_PART, VIRTUAL_PART): New.
10434         (METHOD): Adjust to C++ virtual methods.
10435         (scan_target_h): Remove reference to C99.
10436         (dname): Output "target_ops::" prefix.
10437         (write_function_header): Adjust to output a C++ class method.
10438         (write_declaration): New.
10439         (write_delegator): Adjust to output a C++ class method.
10440         (tdname): Output "dummy_target::" prefix.
10441         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10442         method.
10443         (tdefault_names, debug_names): Delete.
10444         (return_types, tdefaults, styles, argtypes_array): New.
10445         (top level): All methods are delegators.
10446         (print_class): New.
10447         (top level): Print dummy_target and debug_target classes.
10448         * target-delegates.c: Regenerate.
10449         * target-debug.h (target_debug_print_enum_info_proc_what)
10450         (target_debug_print_thread_control_capabilities)
10451         (target_debug_print_thread_info_p): New.
10452         * target.c (dummy_target): Delete.
10453         (the_dummy_target, the_debug_target): New.
10454         (target_stack): Now extern.
10455         (set_targetdebug): Push/unpush debug target.
10456         (default_child_has_all_memory, default_child_has_memory)
10457         (default_child_has_stack, default_child_has_registers)
10458         (default_child_has_execution): Remove target_ops parameter.
10459         (complete_target_initialization): Delete.
10460         (add_target_with_completer): No longer call
10461         complete_target_initialization.
10462         (target_supports_terminal_ours): Use regular delegation.
10463         (update_current_target): Delete.
10464         (push_target): No longer check magic number.  Don't call
10465         update_current_target.
10466         (unpush_target): Don't call update_current_target.
10467         (target_is_pushed): No longer check magic number.
10468         (target_require_runnable): Skip for all stratums over
10469         process_stratum.
10470         (target_ops::info_proc): New.
10471         (target_info_proc): Use find_target_at and
10472         find_default_run_target.
10473         (target_supports_disable_randomization): Use regular delegation.
10474         (target_get_osdata): Use find_target_at.
10475         (target_ops::open, target_ops::close, target_ops::can_attach)
10476         (target_ops::attach, target_ops::can_create_inferior)
10477         (target_ops::create_inferior, target_ops::can_run)
10478         (target_can_run): New.
10479         (default_fileio_target): Use regular delegation.
10480         (target_ops::fileio_open, target_ops::fileio_pwrite)
10481         (target_ops::fileio_pread, target_ops::fileio_fstat)
10482         (target_ops::fileio_close, target_ops::fileio_unlink)
10483         (target_ops::fileio_readlink): New.
10484         (target_fileio_open_1, target_fileio_unlink)
10485         (target_fileio_readlink): Always call the target method.  Handle
10486         FILEIO_ENOSYS.
10487         (return_zero, return_zero_has_execution): Delete.
10488         (init_dummy_target): Delete.
10489         (dummy_target::dummy_target, dummy_target::shortname)
10490         (dummy_target::longname, dummy_target::doc)
10491         (debug_target::debug_target, debug_target::shortname)
10492         (debug_target::longname, debug_target::doc): New.
10493         (target_supports_delete_record): Use regular delegation.
10494         (setup_target_debug): Delete.
10495         (maintenance_print_target_stack): Skip debug_stratum.
10496         (initialize_targets): Instantiate the_dummy_target and
10497         the_debug_target.
10498         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10499         use target_stack.
10500         (target_auxv_search, fprint_target_auxv): Adjust.
10501         (info_auxv_command): Adjust to use target_stack.
10502         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10503         * exceptions.c (print_flush): Handle a NULL target_stack.
10504         * regcache.c (target_ops_no_register): Refactor as class with
10505         virtual methods.
10506
10507         * exec.c (exec_target): New class.
10508         (exec_ops): Now an exec_target.
10509         (exec_open, exec_close_1, exec_get_section_table)
10510         (exec_xfer_partial, exec_files_info, exec_has_memory)
10511         (exec_make_note_section): Refactor as exec_target methods.
10512         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10513         Delete.
10514         (exec_target::find_memory_regions): New.
10515         (_initialize_exec): Don't call init_exec_ops.
10516         * gdbcore.h (exec_file_clear): Delete.
10517
10518         * corefile.c (core_target): Delete.
10519         (core_file_command): Adjust.
10520         * corelow.c (core_target): New class.
10521         (the_core_target): New.
10522         (core_close): Remove target_ops parameter.
10523         (core_close_cleanup): Adjust.
10524         (core_target::close): New.
10525         (core_open, core_detach, get_core_registers, core_files_info)
10526         (core_xfer_partial, core_thread_alive, core_read_description)
10527         (core_pid_to_str, core_thread_name, core_has_memory)
10528         (core_has_stack, core_has_registers, core_info_proc): Rework as
10529         core_target methods.
10530         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10531         (_initialize_corelow): Initialize the_core_target.
10532         * gdbcore.h (core_target): Delete.
10533         (the_core_target): New.
10534
10535         * ctf.c: (ctf_target): New class.
10536         (ctf_ops): Now a ctf_target.
10537         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10538         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10539         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10540         methods.
10541         (init_ctf_ops): Delete.
10542         (_initialize_ctf): Don't call it.
10543         * tracefile-tfile.c (tfile_target): New class.
10544         (tfile_ops): Now a tfile_target.
10545         (tfile_open, tfile_close, tfile_files_info)
10546         (tfile_get_tracepoint_status, tfile_trace_find)
10547         (tfile_fetch_registers, tfile_xfer_partial)
10548         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10549         Refactor as tfile_target methods.
10550         (tfile_xfer_partial_features): Remove target_ops parameter.
10551         (init_tfile_ops): Delete.
10552         (_initialize_tracefile_tfile): Don't call it.
10553         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10554         (tracefile_has_stack, tracefile_has_registers)
10555         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10556         tracefile_target methods.
10557         (init_tracefile_ops): Delete.
10558         (tracefile_target::tracefile_target): New.
10559         * tracefile.h: Include "target.h".
10560         (tracefile_target): New class.
10561         (init_tracefile_ops): Delete.
10562
10563         * spu-multiarch.c (spu_multiarch_target): New class.
10564         (spu_ops): Now a spu_multiarch_target.
10565         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10566         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10567         (spu_search_memory, spu_mourn_inferior): Refactor as
10568         spu_multiarch_target methods.
10569         (init_spu_ops): Delete.
10570         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10571         complete_target_initialization.
10572
10573         * ravenscar-thread.c (ravenscar_thread_target): New class.
10574         (ravenscar_ops): Now a ravenscar_thread_target.
10575         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10576         (ravenscar_thread_alive, ravenscar_pid_to_str)
10577         (ravenscar_fetch_registers, ravenscar_store_registers)
10578         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10579         (ravenscar_stopped_by_hw_breakpoint)
10580         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10581         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10582         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10583         methods.
10584         (init_ravenscar_thread_ops): Delete.
10585         (_initialize_ravenscar): Remove references to
10586         init_ravenscar_thread_ops and complete_target_initialization.
10587
10588         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10589         (bsd_uthread_target): New class.
10590         (bsd_uthread_ops): Now a bsd_uthread_target.
10591         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10592         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10593         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10594         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10595         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10596         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10597         (bsd_uthread_target): Delete function.
10598         (_initialize_bsd_uthread): Remove reference to
10599         complete_target_initialization.
10600
10601         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10602         (target_bfd): ... this new class.
10603         (target_bfd_xfer_partial, target_bfd_get_section_table)
10604         (target_bfd_close): Refactor as target_bfd methods.
10605         (target_bfd::~target_bfd): New.
10606         (target_bfd_reopen): Adjust.
10607         (target_bfd::close): New.
10608
10609         * record-btrace.c (record_btrace_target): New class.
10610         (record_btrace_ops): Now a record_btrace_target.
10611         (record_btrace_open, record_btrace_stop_recording)
10612         (record_btrace_disconnect, record_btrace_close)
10613         (record_btrace_async, record_btrace_info)
10614         (record_btrace_insn_history, record_btrace_insn_history_range)
10615         (record_btrace_insn_history_from, record_btrace_call_history)
10616         (record_btrace_call_history_range)
10617         (record_btrace_call_history_from, record_btrace_record_method)
10618         (record_btrace_is_replaying, record_btrace_will_replay)
10619         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10620         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10621         (record_btrace_store_registers, record_btrace_prepare_to_store)
10622         (record_btrace_to_get_unwinder)
10623         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10624         (record_btrace_commit_resume, record_btrace_wait)
10625         (record_btrace_stop, record_btrace_can_execute_reverse)
10626         (record_btrace_stopped_by_sw_breakpoint)
10627         (record_btrace_supports_stopped_by_sw_breakpoint)
10628         (record_btrace_stopped_by_hw_breakpoint)
10629         (record_btrace_supports_stopped_by_hw_breakpoint)
10630         (record_btrace_update_thread_list, record_btrace_thread_alive)
10631         (record_btrace_goto_begin, record_btrace_goto_end)
10632         (record_btrace_goto, record_btrace_stop_replaying_all)
10633         (record_btrace_execution_direction)
10634         (record_btrace_prepare_to_generate_core)
10635         (record_btrace_done_generating_core): Refactor as
10636         record_btrace_target methods.
10637         (init_record_btrace_ops): Delete.
10638         (_initialize_record_btrace): Remove reference to
10639         init_record_btrace_ops.
10640         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10641         the execution_direction global.
10642         (record_full_base_target, record_full_target)
10643         (record_full_core_target): New classes.
10644         (record_full_ops): Now a record_full_target.
10645         (record_full_core_ops): Now a record_full_core_target.
10646         (record_full_target::detach, record_full_target::disconnect)
10647         (record_full_core_target::disconnect)
10648         (record_full_target::mourn_inferior, record_full_target::kill):
10649         New.
10650         (record_full_open, record_full_close, record_full_async): Refactor
10651         as methods of the record_full_base_target class.
10652         (record_full_resume, record_full_commit_resume): Refactor
10653         as methods of the record_full_target class.
10654         (record_full_wait, record_full_stopped_by_watchpoint)
10655         (record_full_stopped_data_address)
10656         (record_full_stopped_by_sw_breakpoint)
10657         (record_full_supports_stopped_by_sw_breakpoint)
10658         (record_full_stopped_by_hw_breakpoint)
10659         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10660         methods of the record_full_base_target class.
10661         (record_full_store_registers, record_full_xfer_partial)
10662         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10663         Refactor as methods of the record_full_target class.
10664         (record_full_can_execute_reverse, record_full_get_bookmark)
10665         (record_full_goto_bookmark, record_full_execution_direction)
10666         (record_full_record_method, record_full_info, record_full_delete)
10667         (record_full_is_replaying, record_full_will_replay)
10668         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10669         (record_full_stop_replaying): Refactor as methods of the
10670         record_full_base_target class.
10671         (record_full_core_resume, record_full_core_kill)
10672         (record_full_core_fetch_registers)
10673         (record_full_core_prepare_to_store)
10674         (record_full_core_store_registers, record_full_core_xfer_partial)
10675         (record_full_core_insert_breakpoint)
10676         (record_full_core_remove_breakpoint)
10677         (record_full_core_has_execution): Refactor
10678         as methods of the record_full_core_target class.
10679         (record_full_base_target::supports_delete_record): New.
10680         (init_record_full_ops): Delete.
10681         (init_record_full_core_ops): Delete.
10682         (record_full_save): Refactor as method of the
10683         record_full_base_target class.
10684         (_initialize_record_full): Remove references to
10685         init_record_full_ops and init_record_full_core_ops.
10686
10687         * remote.c (remote_target, extended_remote_target): New classes.
10688         (remote_ops): Now a remote_target.
10689         (extended_remote_ops): Now an extended_remote_target.
10690         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10691         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10692         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10693         (remote_pass_signals, remote_set_syscall_catchpoint)
10694         (remote_program_signals, )
10695         (remote_thread_always_alive): Remove target_ops parameter.
10696         (remote_thread_alive, remote_thread_name)
10697         (remote_update_thread_list, remote_threads_extra_info)
10698         (remote_static_tracepoint_marker_at)
10699         (remote_static_tracepoint_markers_by_strid)
10700         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10701         (remote_open): Refactor as methods of remote_target.
10702         (extended_remote_open, extended_remote_detach)
10703         (extended_remote_attach, extended_remote_post_attach):
10704         (extended_remote_supports_disable_randomization)
10705         (extended_remote_create_inferior): : Refactor as method of
10706         extended_remote_target.
10707         (remote_set_permissions, remote_open_1, remote_detach)
10708         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10709         (remote_resume, remote_commit_resume, remote_stop)
10710         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10711         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10712         (remote_prepare_to_store, remote_store_registers)
10713         (remote_flash_erase, remote_flash_done, remote_files_info)
10714         (remote_kill, remote_mourn, remote_insert_breakpoint)
10715         (remote_remove_breakpoint, remote_insert_watchpoint)
10716         (remote_watchpoint_addr_within_range)
10717         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10718         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10719         (remote_supports_stopped_by_sw_breakpoint)
10720         (remote_stopped_by_hw_breakpoint)
10721         (remote_supports_stopped_by_hw_breakpoint)
10722         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10723         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10724         (remote_verify_memory): Refactor as methods of remote_target.
10725         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10726         parameter.
10727         (remote_xfer_partial, remote_get_memory_xfer_limit)
10728         (remote_search_memory, remote_rcmd, remote_memory_map)
10729         (remote_pid_to_str, remote_get_thread_local_address)
10730         (remote_get_tib_address, remote_read_description): Refactor as
10731         methods of remote_target.
10732         (remote_target::fileio_open, remote_target::fileio_pwrite)
10733         (remote_target::fileio_pread, remote_target::fileio_close): New.
10734         (remote_hostio_readlink, remote_hostio_fstat)
10735         (remote_filesystem_is_local, remote_can_execute_reverse)
10736         (remote_supports_non_stop, remote_supports_disable_randomization)
10737         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10738         (remote_supports_enable_disable_tracepoint)
10739         (remote_supports_string_tracing)
10740         (remote_can_run_breakpoint_commands, remote_trace_init)
10741         (remote_download_tracepoint, remote_can_download_tracepoint)
10742         (remote_download_trace_state_variable, remote_enable_tracepoint)
10743         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10744         (remote_trace_start, remote_get_trace_status)
10745         (remote_get_tracepoint_status, remote_trace_stop)
10746         (remote_trace_find, remote_get_trace_state_variable_value)
10747         (remote_save_trace_data, remote_get_raw_trace_data)
10748         (remote_set_disconnected_tracing, remote_core_of_thread)
10749         (remote_set_circular_trace_buffer, remote_traceframe_info)
10750         (remote_get_min_fast_tracepoint_insn_len)
10751         (remote_set_trace_buffer_size, remote_set_trace_notes)
10752         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10753         (remote_disable_btrace, remote_teardown_btrace)
10754         (remote_read_btrace, remote_btrace_conf)
10755         (remote_augmented_libraries_svr4_read, remote_load)
10756         (remote_pid_to_exec_file, remote_can_do_single_step)
10757         (remote_execution_direction, remote_thread_handle_to_thread_info):
10758         Refactor as methods of remote_target.
10759         (init_remote_ops, init_extended_remote_ops): Delete.
10760         (remote_can_async_p, remote_is_async_p, remote_async)
10761         (remote_thread_events, remote_upload_tracepoints)
10762         (remote_upload_trace_state_variables): Refactor as methods of
10763         remote_target.
10764         (_initialize_remote): Remove references to init_remote_ops and
10765         init_extended_remote_ops.
10766
10767         * remote-sim.c (gdbsim_target): New class.
10768         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10769         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10770         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10771         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10772         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10773         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10774         Refactor as methods of gdbsim_target.
10775         (gdbsim_ops): Now a gdbsim_target.
10776         (init_gdbsim_ops): Delete.
10777         (gdbsim_cntrl_c): Adjust.
10778         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10779
10780         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10781         (the_amd64_linux_nat_target): New.
10782         (amd64_linux_fetch_inferior_registers)
10783         (amd64_linux_store_inferior_registers): Refactor as methods of
10784         amd64_linux_nat_target.
10785         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10786         * i386-linux-nat.c: Don't include "linux-nat.h".
10787         (i386_linux_nat_target): New class.
10788         (the_i386_linux_nat_target): New.
10789         (i386_linux_fetch_inferior_registers)
10790         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10791         as methods of i386_linux_nat_target.
10792         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10793         * inf-child.c (inf_child_ops): Delete.
10794         (inf_child_fetch_inferior_registers)
10795         (inf_child_store_inferior_registers): Delete.
10796         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10797         methods of inf_child_target.
10798         (inf_child_target::supports_terminal_ours)
10799         (inf_child_target::terminal_init)
10800         (inf_child_target::terminal_inferior)
10801         (inf_child_target::terminal_ours_for_output)
10802         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10803         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10804         New.
10805         (inf_child_open, inf_child_disconnect, inf_child_close)
10806         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10807         (inf_child_post_startup_inferior, inf_child_can_run)
10808         (inf_child_pid_to_exec_file): Refactor as methods of
10809         inf_child_target.
10810         (inf_child_follow_fork): Delete.
10811         (inf_child_target::can_create_inferior)
10812         (inf_child_target::can_attach): New.
10813         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10814         (inf_child_target::has_stack, inf_child_target::has_registers)
10815         (inf_child_target::has_execution): New.
10816         (inf_child_fileio_open, inf_child_fileio_pwrite)
10817         (inf_child_fileio_pread, inf_child_fileio_fstat)
10818         (inf_child_fileio_close, inf_child_fileio_unlink)
10819         (inf_child_fileio_readlink, inf_child_use_agent)
10820         (inf_child_can_use_agent): Refactor as methods of
10821         inf_child_target.
10822         (return_zero, inf_child_target): Delete.
10823         (inf_child_target::inf_child_target): New.
10824         * inf-child.h: Include "target.h".
10825         (inf_child_target): Delete function prototype.
10826         (inf_child_target): New class.
10827         (inf_child_open_target, inf_child_mourn_inferior)
10828         (inf_child_maybe_unpush_target): Delete.
10829         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10830         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10831         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10832         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10833         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10834         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10835         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10836         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10837         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10838         methods of inf_ptrace_target.
10839         (inf_ptrace_target): Delete function.
10840         * inf-ptrace.h: Include "inf-child.h".
10841         (inf_ptrace_target): Delete function declaration.
10842         (inf_ptrace_target): New class.
10843         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10844         * linux-nat.c (linux_target): New.
10845         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10846         (linux_nat_target::~linux_nat_target): New.
10847         (linux_child_post_attach, linux_child_post_startup_inferior)
10848         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10849         (linux_child_remove_fork_catchpoint)
10850         (linux_child_insert_vfork_catchpoint)
10851         (linux_child_remove_vfork_catchpoint)
10852         (linux_child_insert_exec_catchpoint)
10853         (linux_child_remove_exec_catchpoint)
10854         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10855         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10856         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10857         (linux_nat_stopped_data_address)
10858         (linux_nat_stopped_by_sw_breakpoint)
10859         (linux_nat_supports_stopped_by_sw_breakpoint)
10860         (linux_nat_stopped_by_hw_breakpoint)
10861         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10862         (linux_nat_kill, linux_nat_mourn_inferior)
10863         (linux_nat_xfer_partial, linux_nat_thread_alive)
10864         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10865         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10866         (linux_child_static_tracepoint_markers_by_strid)
10867         (linux_nat_is_async_p, linux_nat_can_async_p)
10868         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10869         (linux_nat_supports_multi_process)
10870         (linux_nat_supports_disable_randomization, linux_nat_async)
10871         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10872         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10873         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10874         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10875         methods of linux_nat_target.
10876         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10877         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10878         parameter.
10879         (check_stopped_by_watchpoint): Adjust.
10880         (linux_xfer_partial): Delete.
10881         (linux_target_install_ops, linux_target, linux_nat_add_target):
10882         Delete.
10883         (linux_nat_target::linux_nat_target): New.
10884         * linux-nat.h: Include "inf-ptrace.h".
10885         (linux_nat_target): New.
10886         (linux_target, linux_target_install_ops, linux_nat_add_target):
10887         Delete function declarations.
10888         (linux_target): Declare global.
10889         * linux-thread-db.c (thread_db_target): New.
10890         (thread_db_target::thread_db_target): New.
10891         (thread_db_ops): Delete.
10892         (the_thread_db_target): New.
10893         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10894         (thread_db_update_thread_list, thread_db_pid_to_str)
10895         (thread_db_extra_thread_info)
10896         (thread_db_thread_handle_to_thread_info)
10897         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10898         (thread_db_resume): Refactor as methods of thread_db_target.
10899         (init_thread_db_ops): Delete.
10900         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10901         * x86-linux-nat.c: Don't include "linux-nat.h".
10902         (super_post_startup_inferior): Delete.
10903         (x86_linux_nat_target::~x86_linux_nat_target): New.
10904         (x86_linux_child_post_startup_inferior)
10905         (x86_linux_read_description, x86_linux_enable_btrace)
10906         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10907         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10908         methods of x86_linux_nat_target.
10909         (x86_linux_create_target): Delete.  Bits folded ...
10910         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10911         pointer.
10912         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10913         (x86_linux_nat_target): New class.
10914         (x86_linux_create_target): Delete.
10915         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10916         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10917         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10918         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10919         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10920         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10921         make extern.
10922         (x86_use_watchpoints): Delete.
10923         * x86-nat.h: Include "breakpoint.h" and "target.h".
10924         (x86_use_watchpoints): Delete.
10925         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10926         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10927         (x86_insert_watchpoint, x86_remove_watchpoint)
10928         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10929         (x86_stopped_by_hw_breakpoint): New declarations.
10930         (x86_nat_target): New template class.
10931
10932         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10933         (the_ppc_linux_nat_target): New.
10934         (ppc_linux_fetch_inferior_registers)
10935         (ppc_linux_can_use_hw_breakpoint)
10936         (ppc_linux_region_ok_for_hw_watchpoint)
10937         (ppc_linux_ranged_break_num_registers)
10938         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10939         (ppc_linux_insert_mask_watchpoint)
10940         (ppc_linux_remove_mask_watchpoint)
10941         (ppc_linux_can_accel_watchpoint_condition)
10942         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10943         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10944         (ppc_linux_watchpoint_addr_within_range)
10945         (ppc_linux_masked_watch_num_registers)
10946         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10947         (ppc_linux_read_description): Refactor as methods of
10948         ppc_linux_nat_target.
10949         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10950
10951         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10952         (procfs_target): New class.
10953         (the_procfs_target): New.
10954         (procfs_target): Delete function.
10955         (procfs_auxv_parse, procfs_attach, procfs_detach)
10956         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10957         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10958         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10959         (procfs_create_inferior, procfs_update_thread_list)
10960         (procfs_thread_alive, procfs_pid_to_str)
10961         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10962         (procfs_stopped_data_address, procfs_insert_watchpoint)
10963         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10964         (proc_find_memory_regions, procfs_info_proc)
10965         (procfs_make_note_section): Refactor as methods of procfs_target.
10966         (_initialize_procfs): Adjust.
10967         * sol-thread.c (sol_thread_target): New class.
10968         (sol_thread_ops): Now a sol_thread_target.
10969         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10970         (sol_thread_fetch_registers, sol_thread_store_registers)
10971         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10972         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10973         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10974         (init_sol_thread_ops): Delete.
10975         (_initialize_sol_thread): Adjust.  Remove references to
10976         init_sol_thread_ops and complete_target_initialization.
10977
10978         * windows-nat.c (windows_nat_target): New class.
10979         (windows_fetch_inferior_registers)
10980         (windows_store_inferior_registers, windows_resume, windows_wait)
10981         (windows_attach, windows_detach, windows_pid_to_exec_file)
10982         (windows_files_info, windows_create_inferior)
10983         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10984         (windows_close, windows_pid_to_str, windows_xfer_partial)
10985         (windows_get_tib_address, windows_get_ada_task_ptid)
10986         (windows_thread_name, windows_thread_alive): Refactor as
10987         windows_nat_target methods.
10988         (do_initial_windows_stuff): Adjust.
10989         (windows_target): Delete function.
10990         (_initialize_windows_nat): Adjust.
10991
10992         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10993         (darwin_mourn_inferior, darwin_kill_inferior)
10994         (darwin_create_inferior, darwin_attach, darwin_detach)
10995         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10996         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10997         (darwin_supports_multi_process): Refactor as darwin_nat_target
10998         methods.
10999         (darwin_resume_to, darwin_files_info): Delete.
11000         (_initialize_darwin_inferior): Rename to ...
11001         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11002         * darwin-nat.h: Include "inf-child.h".
11003         (darwin_nat_target): New class.
11004         (darwin_complete_target): Delete.
11005         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11006         (darwin_target): New.
11007         (i386_darwin_fetch_inferior_registers)
11008         (i386_darwin_store_inferior_registers): Refactor as methods of
11009         darwin_nat_target.
11010         (darwin_complete_target): Delete, with ...
11011         (_initialize_i386_darwin_nat): ... bits factored out here.
11012
11013         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11014         (the_alpha_linux_nat_target): New.
11015         (alpha_linux_register_u_offset): Refactor as
11016         alpha_linux_nat_target method.
11017         (_initialize_alpha_linux_nat): Adjust.
11018         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11019         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11020         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11021         methods of linux_nat_trad_target.
11022         (linux_trad_target): Delete.
11023         * linux-nat-trad.h (linux_trad_target): Delete function.
11024         (linux_nat_trad_target): New class.
11025         * mips-linux-nat.c (mips_linux_nat_target): New class.
11026         (super_fetch_registers, super_store_registers, super_close):
11027         Delete.
11028         (the_mips_linux_nat_target): New.
11029         (mips64_linux_regsets_fetch_registers)
11030         (mips64_linux_regsets_store_registers)
11031         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11032         (mips_linux_register_u_offset, mips_linux_read_description)
11033         (mips_linux_can_use_hw_breakpoint)
11034         (mips_linux_stopped_by_watchpoint)
11035         (mips_linux_stopped_data_address)
11036         (mips_linux_region_ok_for_hw_watchpoint)
11037         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11038         (mips_linux_close): Refactor as methods of mips_linux_nat.
11039         (_initialize_mips_linux_nat): Adjust to C++ification.
11040
11041         * aix-thread.c (aix_thread_target): New class.
11042         (aix_thread_ops): Now an aix_thread_target.
11043         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11044         (aix_thread_fetch_registers, aix_thread_store_registers)
11045         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11046         (aix_thread_thread_alive, aix_thread_pid_to_str)
11047         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11048         Refactor as methods of aix_thread_target.
11049         (init_aix_thread_ops): Delete.
11050         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11051         and complete_target_initialization.
11052         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11053         (rs6000_nat_target): New class.
11054         (the_rs6000_nat_target): New.
11055         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11056         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11057         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11058         (super_create_inferior): Delete.
11059         (_initialize_rs6000_nat): Adjust to C++ification.
11060
11061         * arm-linux-nat.c (arm_linux_nat_target): New class.
11062         (the_arm_linux_nat_target): New.
11063         (arm_linux_fetch_inferior_registers)
11064         (arm_linux_store_inferior_registers, arm_linux_read_description)
11065         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11066         (arm_linux_remove_hw_breakpoint)
11067         (arm_linux_region_ok_for_hw_watchpoint)
11068         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11069         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11070         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11071         arm_linux_nat_target.
11072         (_initialize_arm_linux_nat): Adjust to C++ification.
11073
11074         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11075         (the_aarch64_linux_nat_target): New.
11076         (aarch64_linux_fetch_inferior_registers)
11077         (aarch64_linux_store_inferior_registers)
11078         (aarch64_linux_child_post_startup_inferior)
11079         (aarch64_linux_read_description)
11080         (aarch64_linux_can_use_hw_breakpoint)
11081         (aarch64_linux_insert_hw_breakpoint)
11082         (aarch64_linux_remove_hw_breakpoint)
11083         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11084         (aarch64_linux_region_ok_for_hw_watchpoint)
11085         (aarch64_linux_stopped_data_address)
11086         (aarch64_linux_stopped_by_watchpoint)
11087         (aarch64_linux_watchpoint_addr_within_range)
11088         (aarch64_linux_can_do_single_step): Refactor as methods of
11089         aarch64_linux_nat_target.
11090         (super_post_startup_inferior): Delete.
11091         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11092
11093         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11094         (the_hppa_linux_nat_target): New.
11095         (hppa_linux_fetch_inferior_registers)
11096         (hppa_linux_store_inferior_registers): Refactor as methods of
11097         hppa_linux_nat_target.
11098         (_initialize_hppa_linux_nat): Adjust to C++ification.
11099
11100         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11101         (the_ia64_linux_nat_target): New.
11102         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11103         (ia64_linux_stopped_data_address)
11104         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11105         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11106         ia64_linux_nat_target methods.
11107         (super_xfer_partial): Delete.
11108         (_initialize_ia64_linux_nat): Adjust to C++ification.
11109
11110         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11111         (the_m32r_linux_nat_target): New.
11112         (m32r_linux_fetch_inferior_registers)
11113         (m32r_linux_store_inferior_registers): Refactor as
11114         m32r_linux_nat_target methods.
11115         (_initialize_m32r_linux_nat): Adjust to C++ification.
11116
11117         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11118         (the_m68k_linux_nat_target): New.
11119         (m68k_linux_fetch_inferior_registers)
11120         (m68k_linux_store_inferior_registers): Refactor as
11121         m68k_linux_nat_target methods.
11122         (_initialize_m68k_linux_nat): Adjust to C++ification.
11123
11124         * s390-linux-nat.c (s390_linux_nat_target): New class.
11125         (the_s390_linux_nat_target): New.
11126         (s390_linux_fetch_inferior_registers)
11127         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11128         (s390_insert_watchpoint, s390_remove_watchpoint)
11129         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11130         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11131         (s390_auxv_parse, s390_read_description): Refactor as methods of
11132         s390_linux_nat_target.
11133         (_initialize_s390_nat): Adjust to C++ification.
11134
11135         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11136         (the_sparc_linux_nat_target): New.
11137         (_initialize_sparc_linux_nat): Adjust to C++ification.
11138         * sparc-nat.c (sparc_fetch_inferior_registers)
11139         (sparc_store_inferior_registers): Remove target_ops parameter.
11140         * sparc-nat.h (sparc_fetch_inferior_registers)
11141         (sparc_store_inferior_registers): Remove target_ops parameter.
11142         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11143         (the_sparc64_linux_nat_target): New.
11144         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11145
11146         * spu-linux-nat.c (spu_linux_nat_target): New class.
11147         (the_spu_linux_nat_target): New.
11148         (spu_child_post_startup_inferior, spu_child_post_attach)
11149         (spu_child_wait, spu_fetch_inferior_registers)
11150         (spu_store_inferior_registers, spu_xfer_partial)
11151         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11152         methods.
11153         (_initialize_spu_nat): Adjust to C++ification.
11154
11155         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11156         (the_tilegx_linux_nat_target): New.
11157         (fetch_inferior_registers, store_inferior_registers):
11158         Refactor as methods.
11159         (_initialize_tile_linux_nat): Adjust to C++ification.
11160
11161         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11162         (the_xtensa_linux_nat_target): New.
11163         (xtensa_linux_fetch_inferior_registers)
11164         (xtensa_linux_store_inferior_registers): Refactor as
11165         xtensa_linux_nat_target methods.
11166         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11167
11168         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11169         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11170         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11171         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11172         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11173         (fbsd_stopped_by_sw_breakpoint)
11174         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11175         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11176         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11177         (fbsd_post_startup_inferior, fbsd_post_attach)
11178         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11179         (fbsd_set_syscall_catchpoint)
11180         (super_xfer_partial, super_resume, super_wait)
11181         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11182         (fbsd_handle_debug_trap): Remove target_ops parameter.
11183         (fbsd_nat_add_target): Delete.
11184         * fbsd-nat.h: Include "inf-ptrace.h".
11185         (fbsd_nat_add_target): Delete.
11186         (USE_SIGTRAP_SIGINFO): Define.
11187         (fbsd_nat_target): New class.
11188
11189         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11190         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11191         (amd64bsd_target): Delete.
11192         * amd64-bsd-nat.h: New file.
11193         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11194         "x86-bsd-nat.h".
11195         (amd64_fbsd_nat_target): New class.
11196         (the_amd64_fbsd_nat_target): New.
11197         (amd64fbsd_read_description): Refactor as method of
11198         amd64_fbsd_nat_target.
11199         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11200         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11201         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11202         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11203         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11204         (i386bsd_target): Delete.
11205         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11206         (i386bsd_fetch_inferior_registers)
11207         (i386bsd_store_inferior_registers): Declare.
11208         (i386_bsd_nat_target): New class.
11209         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11210         (the_i386_fbsd_nat_target): New.
11211         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11212         i386_fbsd_nat_target methods.
11213         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11214         (_initialize_i386fbsd_nat): Adjust to C++ification.
11215         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11216         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11217         (_initialize_x86_bsd_nat): Adjust to C++ification.
11218         * x86-bsd-nat.h: Include "x86-nat.h".
11219         (x86bsd_target): Delete declaration.
11220         (x86bsd_nat_target): New class.
11221
11222         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11223         (the_aarch64_fbsd_nat_target): New.
11224         (aarch64_fbsd_fetch_inferior_registers)
11225         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11226         aarch64_fbsd_nat_target.
11227         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11228         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11229         (the_alpha_bsd_nat_target): New.
11230         (alphabsd_fetch_inferior_registers)
11231         (alphabsd_store_inferior_registers): Refactor as
11232         alpha_bsd_nat_target methods.
11233         (_initialize_alphabsd_nat): Refactor as methods of
11234         alpha_bsd_nat_target.
11235         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11236         (the_amd64_nbsd_nat_target): New.
11237         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11238         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11239         (the_amd64_obsd_nat_target): New.
11240         (_initialize_amd64obsd_nat): Adjust to C++ification.
11241         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11242         (the_arm_fbsd_nat_target): New.
11243         (arm_fbsd_fetch_inferior_registers)
11244         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11245         (_initialize_arm_fbsd_nat): Refactor as methods of
11246         arm_fbsd_nat_target.
11247         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11248         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11249         (the_arm_netbsd_nat_target): New.
11250         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11251         arm_netbsd_nat_target.
11252         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11253         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11254         (the_hppa_nbsd_nat_target): New.
11255         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11256         hppa_nbsd_nat_target methods.
11257         (_initialize_hppanbsd_nat): Adjust to C++ification.
11258         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11259         (the_hppa_obsd_nat_target): New.
11260         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11261         methods of hppa_obsd_nat_target.
11262         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11263         add_target.
11264         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11265         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11266         add_target.
11267         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11268         (_initialize_i386obsd_nat): Use add_target.
11269         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11270         (the_m68k_bsd_nat_target): New.
11271         (m68kbsd_fetch_inferior_registers)
11272         (m68kbsd_store_inferior_registers): Refactor as methods of
11273         m68k_bsd_nat_target.
11274         (_initialize_m68kbsd_nat): Adjust to C++ification.
11275         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11276         (the_mips_fbsd_nat_target): New.
11277         (mips_fbsd_fetch_inferior_registers)
11278         (mips_fbsd_store_inferior_registers): Refactor as methods of
11279         mips_fbsd_nat_target.
11280         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11281         add_target.
11282         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11283         (the_mips_nbsd_nat_target): New.
11284         (mipsnbsd_fetch_inferior_registers)
11285         (mipsnbsd_store_inferior_registers): Refactor as methods of
11286         mips_nbsd_nat_target.
11287         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11288         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11289         (the_mips64_obsd_nat_target): New.
11290         (mips64obsd_fetch_inferior_registers)
11291         (mips64obsd_store_inferior_registers): Refactor as methods of
11292         mips64_obsd_nat_target.
11293         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11294         add_target.
11295         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11296         nbsd_nat_target.
11297         * nbsd-nat.h: Include "inf-ptrace.h".
11298         (nbsd_nat_target): New class.
11299         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11300         (obsd_wait): Refactor as methods of obsd_nat_target.
11301         (obsd_add_target): Delete.
11302         * obsd-nat.h: Include "inf-ptrace.h".
11303         (obsd_nat_target): New class.
11304         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11305         (the_ppc_fbsd_nat_target): New.
11306         (ppcfbsd_fetch_inferior_registers)
11307         (ppcfbsd_store_inferior_registers): Refactor as methods of
11308         ppc_fbsd_nat_target.
11309         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11310         add_target.
11311         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11312         (the_ppc_nbsd_nat_target): New.
11313         (ppcnbsd_fetch_inferior_registers)
11314         (ppcnbsd_store_inferior_registers): Refactor as methods of
11315         ppc_nbsd_nat_target.
11316         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11317         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11318         (the_ppc_obsd_nat_target): New.
11319         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11320         methods of ppc_obsd_nat_target.
11321         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11322         add_target.
11323         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11324         (the_sh_nbsd_nat_target): New.
11325         (shnbsd_fetch_inferior_registers)
11326         (shnbsd_store_inferior_registers): Refactor as methods of
11327         sh_nbsd_nat_target.
11328         (_initialize_shnbsd_nat): Adjust to C++ification.
11329         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11330         (inf_ptrace_xfer_partial): Delete.
11331         (sparc_xfer_partial, sparc_target): Delete.
11332         * sparc-nat.h (sparc_fetch_inferior_registers)
11333         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11334         (sparc_target): Delete function declaration.
11335         (sparc_target): New template class.
11336         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11337         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11338         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11339         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11340         add_target.
11341         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11342         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11343         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11344         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11345         add_target.
11346         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11347         (the_vax_bsd_nat_target): New.
11348         (vaxbsd_fetch_inferior_registers)
11349         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11350         methods.
11351         (_initialize_vaxbsd_nat): Adjust to C++ification.
11352
11353         * bsd-kvm.c (bsd_kvm_target): New class.
11354         (bsd_kvm_ops): Now a bsd_kvm_target.
11355         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11356         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11357         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11358         bsd_kvm_target.
11359         (bsd_kvm_return_one): Delete.
11360         (bsd_kvm_add_target): Adjust to C++ification.
11361
11362         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11363         (nto_procfs_target_procfs): New classes.
11364         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11365         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11366         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11367         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11368         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11369         (procfs_remove_hw_breakpoint, procfs_resume)
11370         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11371         (procfs_kill_inferior, procfs_store_registers)
11372         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11373         as methods of nto_procfs_target.
11374         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11375         (nto_native_ops): Delete.
11376         (procfs_open, procfs_native_open): Delete.
11377         (nto_native_ops): Now an nto_procfs_target_native.
11378         (init_procfs_targets): Adjust to C++ification.
11379         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11380         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11381         Refactor as methods of nto_procfs_target.
11382
11383         * go32-nat.c (go32_nat_target): New class.
11384         (the_go32_nat_target): New.
11385         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11386         (go32_store_registers, go32_xfer_partial, go32_files_info)
11387         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11388         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11389         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11390         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11391         (go32_target): Delete.
11392         (_initialize_go32_nat): Adjust to C++ification.
11393
11394         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11395         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11396         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11397         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11398         gnu_nat_target.
11399         (gnu_target): Delete.
11400         * gnu-nat.h (gnu_target): Delete.
11401         (gnu_nat_target): New class.
11402         * i386-gnu-nat.c (gnu_base_target): New.
11403         (i386_gnu_nat_target): New class.
11404         (the_i386_gnu_nat_target): New.
11405         (_initialize_i386gnu_nat): Adjust to C++ification.
11406
11407 2018-05-02  Pedro Alves  <palves@redhat.com>
11408
11409         * bfd-target.c (target_bfd_xclose): Rename to ...
11410         (target_bfd_close): ... this.
11411         (target_bfd_reopen): Adjust.
11412         * target.c (target_close): Remove references to to_xclose.
11413         * target.h (target_ops::to_xclose): Delete.
11414         (target_ops::to_close): Update comments.
11415
11416 2018-05-02  Pedro Alves  <palves@redhat.com>
11417
11418         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11419         "linux-nat.h".
11420         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11421         * inf-ptrace.c (inf_ptrace_register_u_offset)
11422         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11423         (inf_ptrace_store_register, inf_ptrace_store_registers)
11424         (inf_ptrace_trad_target): Move to ...
11425         * linux-nat-trad.c: ... this new file.
11426         * linux-nat-trad.h: New file.
11427         * linux-nat.c (linux_target_install_ops): Make extern.
11428         (linux_trad_target): Delete.
11429         * linux-nat.h (linux_trad_target): Delete declaration.
11430         (linux_target_install_ops): Declare.
11431         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11432         "linux-nat.h".
11433
11434 2018-05-02  Pedro Alves  <palves@redhat.com>
11435
11436         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11437         procfs_target/add_target here.
11438         * procfs.c (procfs_target): Make static.
11439         (_initialize_procfs): Call add_target here.
11440         * procfs.h (struct target_ops): Remove forward declaration.
11441         (procfs_target): Remove declaration.
11442         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11443
11444 2018-05-02  Pedro Alves  <palves@redhat.com>
11445
11446         * procfs.c (procfs_stopped_by_watchpoint)
11447         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11448         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11449         Forward declare.
11450         (procfs_use_watchpoints): Delete, move contents...
11451         (procfs_target): ... here.
11452         * procfs.h (procfs_use_watchpoints): Delete declaration.
11453         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11454         procfs_use_watchpoints.
11455         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11456         procfs_use_watchpoints.
11457
11458 2018-05-02  Tom Tromey  <tom@tromey.com>
11459
11460         PR python/20084:
11461         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11462         and var_zuinteger_unlimited.
11463         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11464         and PARAM_ZUINTEGER_UNLIMITED.
11465         (set_parameter_value): Handle var_zuinteger and
11466         var_zuinteger_unlimited.
11467         (add_setshow_generic): Likewise.
11468         (parmpy_init): Likewise.
11469
11470 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11471
11472         PR rust/23124
11473         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11474         pointer is not null before dereferencing it.
11475
11476 2018-04-30  Tom Tromey  <tom@tromey.com>
11477
11478         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11479         is_mi_like_p.
11480
11481 2018-04-30  Tom Tromey  <tom@tromey.com>
11482
11483         * breakpoint.c (mention): Remove use of is_mi_like_p.
11484         (print_mention_ranged_breakpoint): Likewise.
11485         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11486         of is_mi_like_p.
11487
11488 2018-04-30  Tom Tromey  <tom@tromey.com>
11489
11490         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11491
11492 2018-04-30  Tom Tromey  <tom@tromey.com>
11493
11494         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11495         (info_spu_event_command): Remove some uses of is_mi_like_p.
11496
11497 2018-04-30  Tom Tromey  <tom@tromey.com>
11498
11499         * python/py-framefilter.c (py_print_single_arg)
11500         (enumerate_locals, py_print_args, py_print_frame): Remove some
11501         uses of is_mi_like_p.
11502
11503 2018-04-30  Tom Tromey  <tom@tromey.com>
11504
11505         * ui-out.c: Update.
11506         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11507         * ui-out.h (ui_out::is_mi_like_p): Now const.
11508         (ui_out::do_is_mi_like_p): Now const.
11509         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11510
11511 2018-04-30  Tom Tromey  <tom@tromey.com>
11512
11513         * varobj.c (varobj_set_visualizer): Use new_reference.
11514         * python/python.c (gdbpy_decode_line): Use new_reference.
11515         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11516         new_reference.
11517
11518 2018-04-30  Tom Tromey  <tom@tromey.com>
11519
11520         * varobj.c (install_new_value): Use new_reference.
11521         * value.h (value_incref): Return void.  Swap intro comment with
11522         value_decref.
11523         * value.c (set_value_parent): Use new_reference.
11524         (value_incref): Return void.  Update intro comment.
11525         (release_value): Use new_reference.
11526         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11527
11528 2018-04-30  Tom Tromey  <tom@tromey.com>
11529
11530         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11531         * gdb_bfd.h (new_bfd_ref): Remove.
11532         (gdb_bfd_open): Update comment.
11533         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11534         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11535         (gdb_bfd_fdopenr): Use new_reference.
11536         * exec.c (exec_file_attach): Use new_reference.
11537
11538 2018-04-30  Tom Tromey  <tom@tromey.com>
11539
11540         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11541         method.
11542
11543 2018-04-30  Tom Tromey  <tom@tromey.com>
11544
11545         * jit.c (jit_read_code_entry): Use type_align.
11546         * i386-tdep.c (i386_gdbarch_init): Don't call
11547         set_gdbarch_long_long_align_bit.
11548         * gdbarch.sh: Remove long_long_align_bit.
11549         * gdbarch.c, gdbarch.h: Rebuild.
11550         * arc-tdep.c (arc_type_align): New function.
11551         (arc_gdbarch_init): Use arc_type_align.  Don't call
11552         set_gdbarch_long_long_align_bit.
11553
11554 2018-04-30  Tom Tromey  <tom@tromey.com>
11555
11556         * rust-lang.c (rust_type_alignment): Remove.
11557         (rust_composite_type): Use type_align.
11558
11559 2018-04-30  Tom Tromey  <tom@tromey.com>
11560
11561         * NEWS: Mention Type.align.
11562         * python/py-type.c (typy_get_alignof): New function.
11563         (type_object_getset): Add "alignof".
11564
11565 2018-04-30  Tom Tromey  <tom@tromey.com>
11566
11567         PR exp/17095:
11568         * NEWS: Update.
11569         * std-operator.def (UNOP_ALIGNOF): New operator.
11570         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11571         New.
11572         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11573         * c-lang.c (c_op_print_tab): Add alignof.
11574         * c-exp.y (ALIGNOF): New token.
11575         (exp): Add "ALIGNOF" production.
11576         (ident_tokens): Add _Alignof and alignof.
11577
11578 2018-04-30  Tom Tromey  <tom@tromey.com>
11579
11580         * i386-tdep.c (i386_type_align): New function.
11581         (i386_gdbarch_init): Update.
11582         * gdbarch.sh (type_align): New method.
11583         * gdbarch.c, gdbarch.h: Rebuild.
11584         * arch-utils.h (default_type_align): Declare.
11585         * arch-utils.c (default_type_align): New function.
11586         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11587         (struct type) <align_log2>: New field.
11588         <instance_flags>: Now a bitfield.
11589         (TYPE_RAW_ALIGN): New macro.
11590         (type_align, type_raw_align, set_type_align): Declare.
11591         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11592         functions.
11593         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11594         (get_alignment, maybe_set_alignment): New functions.
11595         (read_structure_type, read_enumeration_type, read_array_type)
11596         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11597         (read_subrange_type, read_base_type): Set type alignment.
11598
11599 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11600
11601         * dwarf2read.c (read_index_from_section): Use bool.
11602
11603 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11604
11605         PR gdb/22950
11606         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11607         with #ifdef.
11608
11609 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11610
11611         PR build/22873
11612         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11613         last step, and do it atomically.
11614
11615 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11616
11617         * compile/compile-c-types.c (convert_int, convert_float):
11618         Update for C FE v1.
11619
11620 2018-04-27  Tom Tromey  <tom@tromey.com>
11621
11622         PR rust/22545:
11623         * rust-lang.c (rust_inclusive_range_type_p): New function.
11624         (rust_range): Handle inclusive ranges.
11625         (rust_compute_range): Likewise.
11626         * rust-exp.y (struct rust_op) <inclusive>: New field.
11627         (DOTDOTEQ): New constant.
11628         (range_expr): Add "..=" productions.
11629         (operator_tokens): Add "..=" token.
11630         (ast_range): Add "inclusive" parameter.
11631         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11632         ranges.
11633         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11634         bounds values.
11635         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11636         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11637         Update comments.
11638         * expprint.c (print_subexp_standard): Handle new bounds values.
11639         (dump_subexp_body_standard): Likewise.
11640
11641 2018-04-27  Tom Tromey  <tom@tromey.com>
11642
11643         * configure: Rebuild.
11644         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11645         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11646         "OVERRIDE".
11647         (class symbol_needs_eval_context): Likewise.
11648         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11649         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11650         "virtual".
11651         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11652         "override".
11653         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11654         * aarch64-tdep.c (instruction_reader::read): Use "override".
11655         (instruction_reader_test::read): Likewise.
11656         * arm-tdep.c (instruction_reader::read): Use "override".
11657         (instruction_reader_thumb::read): Likewise.
11658
11659 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11660
11661         PR remote/9665
11662         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11663         instead of remote_send.
11664         (remote_send): Remove.
11665
11666 2018-04-26  Pedro Alves  <palves@redhat.com>
11667
11668         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11669         find_function_start_sal instead of find_pc_line.
11670
11671 2018-04-26  Pedro Alves  <palves@redhat.com>
11672
11673         * breakpoint.c (set_breakpoint_location_function): Handle
11674         mst_data_gnu_ifunc.
11675         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11676         * elfread.c (elf_symtab_read): Give data symbols with
11677         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11678         (elf_rel_plt_read): Update comment.
11679         * linespec.c (convert_linespec_to_sals): Handle
11680         mst_data_gnu_ifunc.
11681         (minsym_found): Handle mst_data_gnu_ifunc.
11682         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11683         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11684         * parse.c (find_minsym_type_and_address): Handle
11685         mst_data_gnu_ifunc.
11686         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11687         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11688         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11689         comment.
11690         <mst_data_gnu_ifunc>: New enumerator.
11691
11692 2018-04-26  Pedro Alves  <palves@redhat.com>
11693
11694         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11695         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11696         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11697         Handle it.
11698         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11699         (lookup_minimal_symbol_by_pc): Adjust.
11700         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11701         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11702         * minsyms.h (lookup_msym_prefer): New enum.
11703         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11704         parameter by a lookup_msym_prefer parameter.
11705
11706 2018-04-26  Pedro Alves  <palves@redhat.com>
11707
11708         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11709         ends in "@plt" instead of looking at the symbol's section.
11710
11711 2018-04-26  Pedro Alves  <palves@redhat.com>
11712
11713         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11714         all references.
11715         (find_pc_partial_function_gnu_ifunc): Rename to ...
11716         (find_pc_partial_function): ... this, and remove references to
11717         'is_gnu_ifunc_p'.
11718         (find_pc_partial_function): Delete old implementation.
11719         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11720
11721 2018-04-26  Pedro Alves  <palves@redhat.com>
11722
11723         * linespec.c (struct bound_minimal_symbol_search_key): New.
11724         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11725         skip first line if we found a GNU ifunc minimal symbol by name.
11726         (compare_msymbols): Change parameters to work with a destructured
11727         lhs minsym.
11728         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11729         functions.
11730
11731 2018-04-26  Pedro Alves  <palves@redhat.com>
11732
11733         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11734         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11735         address/name.
11736         (add_location_to_breakpoint): Store the minsym and the objfile in
11737         the breakpoint location.
11738         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11739         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11740         Record the minsym in the sal.
11741         * symtab.h (symtab_and_line) <msymbol>: New field.
11742
11743 2018-04-26  Pedro Alves  <palves@redhat.com>
11744
11745         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11746         unless we actually resolved the ifunc.
11747
11748 2018-04-26  Pedro Alves  <palves@redhat.com>
11749
11750         * c-exp.y (variable production): Prefer ifunc minsyms over
11751         regular function symbols.
11752         * symtab.c (find_gnu_ifunc): New function.
11753         * minsyms.h (lookup_msym_prefer): New enum.
11754         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11755         parameter by a lookup_msym_prefer parameter.
11756         * symtab.h (find_gnu_ifunc): New declaration.
11757
11758 2018-04-26  Pedro Alves  <palves@redhat.com>
11759
11760         * blockframe.c (find_gnu_ifunc_target_type): New function.
11761         (find_function_type): New.
11762         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11763         return a value with a memory address.
11764         (eval_call): For calls to GNU ifunc functions, try to find the
11765         type of the target function from the type that the resolver
11766         returns.
11767         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11768         symbols.
11769         * infcall.c (find_function_return_type): Delete.
11770         (find_function_addr): Add 'function_type' parameter.  For calls to
11771         GNU ifunc functions, try to find the type of the target function
11772         from the type that the resolver returns, and return it via
11773         FUNCTION_TYPE.
11774         (call_function_by_hand_dummy): Adjust to use the function type
11775         returned by find_function_addr.
11776         (find_function_addr): Add 'function_type' parameter and move
11777         description here.
11778         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11779         declarations.
11780
11781 2018-04-26  Pedro Alves  <palves@redhat.com>
11782
11783         * c-exp.y (variable production): Skip finding an alias for ifunc
11784         symbols.
11785
11786 2018-04-26  Pedro Alves  <palves@redhat.com>
11787
11788         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11789
11790 2018-04-25  Pedro Alves  <palves@redhat.com>
11791
11792         * infcmd.c (kill_command): Print the pid as string, not the whole
11793         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11794         message.
11795         * remote.c (remote_detach_1): Print the pid as string, not the
11796         whole thread's ptid.
11797
11798 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11799             Sergio Durigan Junior  <sergiodj@redhat.com>
11800             Pedro Alves  <palves@redhat.com>
11801
11802         * infcmd.c (kill_command): Print message when inferior has
11803         been killed.
11804         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11805         '1'.
11806         (add_inferior): Improve message printed when
11807         'print_inferior_events' is on.
11808         (exit_inferior): Remove message printed when
11809         'print_inferior_events' is on.
11810         (detach_inferior): Improve message printed when
11811         'print_inferior_events' is on.
11812         (initialize_inferiors): Use 'add_inferior_silent' to set
11813         'current_inferior_'.
11814         * inferior.h (print_inferior_events): Declare here as
11815         'extern'.
11816         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11817         '[Detaching...]' messages when 'print_inferior_events' is on.
11818         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11819         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11820         'Detaching after fork from child...', replace it by '... from
11821         parent...'.
11822         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11823         prefix/suffix when printing 'Detaching...' messages.  Print
11824         them when 'print_inferior_events' is on.
11825         * remote.c (remote_detach_1): Print message when detaching
11826         from inferior and '!is_fork_parent'.
11827
11828 2018-04-24  Tom Tromey  <tom@tromey.com>
11829
11830         * cli-out.h: Reindent.
11831
11832 2018-04-24  Tom Tromey  <tom@tromey.com>
11833
11834         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11835         (cli_ui_out::do_field_string): Use fputs_filtered.
11836         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11837
11838 2018-04-23  Tom Tromey  <tom@tromey.com>
11839
11840         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11841         gdb::unique_xmalloc_ptr.
11842
11843 2018-04-23  Tom Tromey  <tom@tromey.com>
11844
11845         * configure: Rebuild.
11846
11847 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11848
11849         PR gdb/23095
11850         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11851         prepare_for_testing.  Set normal_bp to r_debug_state if target
11852         is bsd.
11853
11854 2018-04-21  Pedro Alves  <palves@redhat.com>
11855             Rajendra SY  <rajendra.sy@gmail.com>
11856
11857         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11858         * remote.c (extended_remote_attach): In all-stop mode, mark the
11859         thread as executing.
11860
11861 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11862
11863         * thread.c (thread_apply_all_command): Fix comment.
11864         (thread_command): Fix comment.
11865
11866 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11867
11868         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11869         parameter.
11870         * features/aarch64-core.c (create_feature_aarch64_core):
11871         Regenerate.
11872         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11873         Likewise.
11874         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11875         Likewise.
11876         * features/i386/32bit-avx512.c
11877         (create_feature_i386_32bit_avx512): Likewise.
11878         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11879         Likewise.
11880         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11881         Likewise.
11882         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11883         Likewise.
11884         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11885         Likewise.
11886         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11887         Likewise.
11888         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11889         Likewise.
11890         * features/i386/64bit-avx512.c
11891         (create_feature_i386_64bit_avx512): Likewise.
11892         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11893         Likewise.
11894         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11895         Likewise.
11896         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11897         Likewise.
11898         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11899         Likewise.
11900         * features/i386/64bit-segments.c
11901         (create_feature_i386_64bit_segments): Likewise.
11902         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11903         Likewise.
11904         * features/i386/x32-core.c
11905         (create_feature_i386_x32_core): Likewise.
11906         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11907         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11908         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11909         * target-descriptions.c: In generated code, don't pass xml
11910         filename.
11911
11912 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11913
11914         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11915         (print_xml_feature::visit_post): Likewise.
11916         (print_xml_feature::visit): Likewise.
11917         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11918         (print_xml_feature): Add new class.
11919         * regformats/regdat.sh: Null xmltarget on feature targets.
11920         * target-descriptions.c (struct target_desc): Add xmltarget.
11921         (maintenance_check_tdesc_xml_convert): Add unittest function.
11922         (tdesc_get_features_xml): Add function to get xml.
11923         (maintenance_check_xml_descriptions): Test xml generation.
11924         * xml-tdesc.c (string_read_description_xml): Add function.
11925         * xml-tdesc.h (string_read_description_xml): Add declaration.
11926
11927 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11928
11929         * features/Makefile: Add feature marker to targets with new style
11930         target descriptions.
11931         * regformats/aarch64.dat: Regenerate.
11932         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11933         * regformats/i386/amd64-avx-linux.dat: Likewise.
11934         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11935         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11936         * regformats/i386/amd64-linux.dat: Likewise.
11937         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11938         * regformats/i386/amd64.dat: Likewise.
11939         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11940         * regformats/i386/i386-avx-linux.dat: Likewise.
11941         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11942         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11943         * regformats/i386/i386-linux.dat: Likewise.
11944         * regformats/i386/i386-mmx-linux.dat: Likewise.
11945         * regformats/i386/i386-mpx-linux.dat: Likewise.
11946         * regformats/i386/i386.dat: Likewise.
11947         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11948         * regformats/i386/x32-avx-linux.dat: Likewise.
11949         * regformats/i386/x32-linux.dat: Likewise.
11950         * regformats/tic6x-c62x-linux.dat: Likewise.
11951         * regformats/tic6x-c64x-linux.dat: Likewise.
11952         * regformats/tic6x-c64xp-linux.dat: Likewise.
11953         * regformats/regdat.sh: Parse feature marker.
11954
11955 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11956
11957         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11958         (tdesc_osabi_name): Likewise.
11959         * target-descriptions.c (tdesc_architecture_name): Add new
11960         function.
11961         (tdesc_osabi_name): Likewise.
11962
11963 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11964
11965         * common/tdesc.c (tdesc_predefined_type): Move to here.
11966         (tdesc_named_type): Likewise.
11967         (tdesc_create_vector): Likewise.
11968         (tdesc_create_struct): Likewise.
11969         (tdesc_set_struct_size): Likewise.
11970         (tdesc_create_union): Likewise.
11971         (tdesc_create_flags): Likewise.
11972         (tdesc_create_enum): Likewise.
11973         (tdesc_add_field): Likewise.
11974         (tdesc_add_typed_bitfield): Likewise.
11975         (tdesc_add_bitfield): Likewise.
11976         (tdesc_add_flag): Likewise.
11977         (tdesc_add_enum_value): Likewise.
11978         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11979         (struct tdesc_type_vector): Likewise.
11980         (struct tdesc_type_field): Likewise.
11981         (struct tdesc_type_with_fields): Likewise.
11982         (tdesc_create_enum): Add declaration.
11983         (tdesc_add_typed_bitfield): Likewise.
11984         (tdesc_add_enum_value): Likewise.
11985         * target-descriptions.c (tdesc_type_field): Move from here.
11986         (tdesc_type_builtin): Likewise.
11987         (tdesc_type_vector): Likewise.
11988         (tdesc_type_with_fields): Likewise.
11989         (tdesc_predefined_types): Likewise.
11990         (tdesc_named_type): Likewise.
11991         (tdesc_create_vector): Likewise.
11992         (tdesc_create_struct): Likewise.
11993         (tdesc_set_struct_size): Likewise.
11994         (tdesc_create_union): Likewise.
11995         (tdesc_create_flags): Likewise.
11996         (tdesc_create_enum): Likewise.
11997         (tdesc_add_field): Likewise.
11998         (tdesc_add_typed_bitfield): Likewise.
11999         (tdesc_add_bitfield): Likewise.
12000         (tdesc_add_flag): Likewise.
12001         (tdesc_add_enum_value): Likewise.
12002         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12003         (tdesc_add_typed_bitfield): Likewise.
12004         (tdesc_add_enum_value): Likewise.
12005
12006 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12007
12008         * common/tdesc.c (tdesc_feature::accept): Move to here.
12009         (tdesc_feature::operator==): Likewise.
12010         (tdesc_create_reg): Likewise.
12011         * common/tdesc.h (tdesc_type_kind): Likewise.
12012         (struct tdesc_type): Likewise.
12013         (struct tdesc_feature): Likewise.
12014         * regformats/regdat.sh: Create a feature.
12015         * target-descriptions.c (tdesc_type_kind): Move from here.
12016         (tdesc_type): Likewise.
12017         (tdesc_type_up): Likewise.
12018         (tdesc_feature): Likewise.
12019         (tdesc_create_reg): Likewise.
12020
12021 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12022
12023         * Makefile.in: Add arch/tdesc.c
12024         * common/tdesc.c: New file.
12025         * common/tdesc.h (tdesc_element_visitor): Move to here.
12026         (tdesc_element): Likewise.
12027         (tdesc_reg): Likewise.
12028         (tdesc_reg_up): Likewise.
12029         * regformats/regdef.h (reg): Add offset to constructors.
12030         * target-descriptions.c (tdesc_element_visitor): Move from here.
12031         (tdesc_element): Likewise.
12032         (tdesc_reg): Likewise.
12033         (tdesc_reg_up): Likewise.
12034
12035 2018-04-17  Tom Tromey  <tom@tromey.com>
12036
12037         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12038         discriminant field.
12039
12040 2018-04-17  Tom Tromey  <tom@tromey.com>
12041
12042         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12043
12044 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12045
12046         * symtab.c (print_symbol_info): Skip printing filename and line
12047         number when `last' is NULL.
12048         (symtab_symbol_info): Use empty string instead of NULL for first
12049         invocation of print_symbol_info.
12050         (rbreak_command): Pass NULL to `last' parameter of
12051         print_symbol_info.
12052
12053 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12054
12055         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12056         instead of nullptr.
12057
12058 2018-04-16  Pedro Alves  <palves@redhat.com>
12059
12060         * MAINTAINERS (sh): Remove.
12061         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12062         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12063         (ALLDEPFILES): Remove sh64-tdep.c.
12064         * NEWS: Mentions that support for SH-5/SH64 is removed.
12065         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12066         (sh*-*-openbsd*): Ditto.
12067         (sh64-*-elf*): Remove.
12068         (sh*): Remove.
12069         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12070         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12071         * sh-tdep.c: No longer include "sh64-tdep.h".
12072         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12073         * sh64-tdep.c, sh64-tdep.h: Remove files.
12074
12075 2018-04-16  Pedro Alves  <palves@redhat.com>
12076
12077         * MAINTAINERS: Remove m88k.
12078         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12079         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12080         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12081         * NEWS: Mention that support for m88k was removed.
12082         * configure.host (m88*-*-*): Remove support.
12083         * configure.nat (m88k-*-*): Remove support.
12084         * configure.tgt (m88*-*-openbsd*): Remove.
12085         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12086
12087 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12088
12089         * configure.tgt (x86_tobjs): New variable.
12090         (amd64_tobjs, i386_tobjs): Use it.
12091
12092 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12093
12094         * symtab.c (print_symbol_info): Precede the symbol definition by
12095         the line number when available.
12096         * NEWS: Advertise this enhancement.
12097
12098 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12099
12100         * NEWS (New options): announce set/show record btrace cpu.
12101         * btrace.c: Include record-btrace.h.
12102         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12103         the vendor is unknown.
12104         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12105         Maybe overwrite the btrace configuration's cpu.
12106         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12107         (btrace_fetch): Add cpu parameter.  Update callers.
12108         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12109         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12110         errata workarounds if the vendor is unknown.
12111         * python/py-record-btrace.c: Include record-btrace.h.
12112         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12113         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12114         * record-btrace.c (record_btrace_cpu_state_kind): New.
12115         (record_btrace_cpu): New.
12116         (set_record_btrace_cpu_cmdlist): New.
12117         (record_btrace_get_cpu): New.
12118         (require_btrace_thread, record_btrace_info)
12119         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12120         (cmd_set_record_btrace_cpu_none): New.
12121         (cmd_set_record_btrace_cpu_auto): New.
12122         (cmd_set_record_btrace_cpu): New.
12123         (cmd_show_record_btrace_cpu): New.
12124         (_initialize_record_btrace): Initialize set/show record btrace cpu
12125         commands.
12126         * record-btrace.h (record_btrace_get_cpu): New.
12127
12128 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12129
12130         * record.c (set_record_command): Fix typo in message.
12131
12132 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12133
12134         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12135
12136 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12137
12138         * infrun.c (process_event_stop_test): Call
12139         gdbarch_in_indirect_branch_thunk.
12140         * gdbarch.sh (in_indirect_branch_thunk): New.
12141         * gdbarch.c: Regenerated.
12142         * gdbarch.h: Regenerated.
12143         * x86-tdep.h: New.
12144         * x86-tdep.c: New.
12145         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12146         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12147         (ALLDEPFILES): Add x86-tdep.c.
12148         * arch-utils.h (default_in_indirect_branch_thunk): New.
12149         * arch-utils.c (default_in_indirect_branch_thunk): New.
12150         * i386-tdep: Include x86-tdep.h.
12151         (i386_in_indirect_branch_thunk): New.
12152         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12153         function.
12154         * amd64-tdep: Include x86-tdep.h.
12155         (amd64_in_indirect_branch_thunk): New.
12156         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12157
12158 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12159
12160         PR gdb/23053
12161         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12162         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12163         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12164         regression.
12165
12166 2018-04-12  Tom Tromey  <tom@tromey.com>
12167
12168         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12169         (rust_evaluate_subexp): Likewise.
12170
12171 2018-04-12  Pedro Alves  <palves@redhat.com>
12172
12173         * procfs.c (procfs_detach): Make forward declaration's prototype
12174         match definition's protototype.
12175         (proc_get_LDT_entry): Remove stale do_cleanups call.
12176
12177 2018-04-12  Pedro Alves  <palves@redhat.com>
12178
12179         * target.h (target_ops::to_has_exited): Delete.
12180         (target_has_exited): Delete.
12181         * target-delegates.c: Regenerate.
12182
12183 2018-04-11  Pedro Alves  <palves@redhat.com>
12184
12185         * target.c (fileio_fh_t::t): Add comment.
12186         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12187         (target_fileio_close): Handle a NULL target.
12188         (invalidate_fileio_fh): New.
12189         (target_close): Call it.
12190         * remote.c (remote_hostio_send_command): No longer check whether
12191         remote_desc is open.
12192
12193 2018-04-11  Pedro Alves  <palves@redhat.com>
12194
12195         * target.c (fileio_fh_t): Make it a named struct instead of a
12196         typedef.
12197         (fileio_fh_t::is_closed): New method.
12198         (DEF_VEC_O (fileio_fh_t)): Remove.
12199         (fileio_fhandles): Now a std::vector.
12200         (is_closed_fileio_fh): Delete.
12201         (acquire_fileio_fd): Adjust.  Rename parameters.
12202         (release_fileio_fd): Adjust.
12203         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12204         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12205         (target_fileio_close): Adjust.
12206
12207 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12208
12209         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12210         index.
12211
12212 2018-04-10  Pedro Alves  <palves@redhat.com>
12213
12214         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12215         (scoped_finish_thread_state): New class.
12216         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12217         cleanup.
12218         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12219         (fetch_inferior_event, normal_stop): Likewise.
12220         * thread.c (finish_thread_state_cleanup): Delete.
12221
12222 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12223             Pedro Alves  <palves@redhat.com>
12224
12225         * value.c: Include "selftest.h" and "common/array-view.h".
12226         (struct range) <operator ==>: New.
12227         (test_ranges_contain): New.
12228         (check_ranges_vector): New.
12229         (test_insert_into_bit_range_vector): New.
12230         (_initialize_values): Register selftests.
12231         * common/array-view.h (operator==, operator!=): New.
12232
12233 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12234
12235         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12236         an iterator.
12237         * inline-frame.c: Include <algorithm>.
12238         (struct inline_state): Add constructor.
12239         (inline_state_s): Remove.
12240         (DEF_VEC_O(inline_state_s)): Remove.
12241         (inline_states): Change type to std::vector.
12242         (find_inline_frame_state): Adjust to std::vector.
12243         (allocate_inline_frame_state): Remove.
12244         (clear_inline_frame_state): Adjust to std::vector.
12245         (skip_inline_frames): Adjust to std::vector.
12246
12247 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12248
12249         * tracepoint.h (struct trace_state_variable): Add constructor.
12250         <name>: Change type to std::string.
12251         * tracepoint.c (tsv_s): Remove.
12252         (DEF_VEC_O(tsv_s)): Remove.
12253         (tvariables): Change to std::vector.
12254         (create_trace_state_variable): Adjust to std::vector.
12255         (find_trace_state_variable): Likewise.
12256         (find_trace_state_variable_by_number): Likewise.
12257         (delete_trace_state_variable): Likewise.
12258         (trace_variable_command): Adjust to std::string.
12259         (delete_trace_variable_command): Likewise.
12260         (tvariables_info_1): Adjust to std::vector.
12261         (save_trace_state_variables): Likewise.
12262         (start_tracing): Likewise.
12263         (merge_uploaded_trace_state_variables): Adjust to std::vector
12264         and std::string.
12265         * target.h (struct target_ops)
12266         <to_download_trace_state_variable>: Pass reference to
12267         trace_state_variable.
12268         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12269         * target-delegates.c: Re-generate.
12270         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12271         (mi_tsv_deleted): Likewise.
12272         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12273         * remote.c (remote_download_trace_state_variable): Change
12274         pointer to reference and adjust.
12275         * make-target-delegates (parse_argtypes): Handle references.
12276         (write_function_header): Likewise.
12277         (munge_type): Likewise.
12278
12279 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12280
12281         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12282         string_view-selftests.c.
12283         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12284         testsuite.
12285         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12286         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12287         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12288         * unittests/basic_string_view/element_access/char/1.cc:
12289         Likewise.
12290         * unittests/basic_string_view/element_access/char/empty.cc:
12291         Likewise.
12292         * unittests/basic_string_view/element_access/char/front_back.cc:
12293         Likewise.
12294         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12295         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12296         Likewise.
12297         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12298         Likewise.
12299         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12300         Likewise.
12301         * unittests/basic_string_view/operations/compare/char/1.cc:
12302         Likewise.
12303         * unittests/basic_string_view/operations/compare/char/13650.cc:
12304         Likewise.
12305         * unittests/basic_string_view/operations/copy/char/1.cc:
12306         Likewise.
12307         * unittests/basic_string_view/operations/data/char/1.cc:
12308         Likewise.
12309         * unittests/basic_string_view/operations/find/char/1.cc:
12310         Likewise.
12311         * unittests/basic_string_view/operations/find/char/2.cc:
12312         Likewise.
12313         * unittests/basic_string_view/operations/find/char/3.cc:
12314         Likewise.
12315         * unittests/basic_string_view/operations/find/char/4.cc:
12316         Likewise.
12317         * unittests/basic_string_view/operations/rfind/char/1.cc:
12318         Likewise.
12319         * unittests/basic_string_view/operations/rfind/char/2.cc:
12320         Likewise.
12321         * unittests/basic_string_view/operations/rfind/char/3.cc:
12322         Likewise.
12323         * unittests/basic_string_view/operations/substr/char/1.cc:
12324         Likewise.
12325         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12326         * unittests/string_view-selftests.c: New file.
12327
12328 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12329
12330         * unittests/basic_string_view/capacity/1.cc: New file.
12331         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12332         * unittests/basic_string_view/cons/char/1.cc: New file.
12333         * unittests/basic_string_view/cons/char/2.cc: New file.
12334         * unittests/basic_string_view/cons/char/3.cc: New file.
12335         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12336         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12337         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12338         * unittests/basic_string_view/element_access/char/1.cc: New file.
12339         * unittests/basic_string_view/element_access/char/2.cc: New file.
12340         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12341         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12342         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12343         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12344         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12345         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12346         * unittests/basic_string_view/include.cc: New file.
12347         * unittests/basic_string_view/inserters/char/1.cc: New file.
12348         * unittests/basic_string_view/inserters/char/2.cc: New file.
12349         * unittests/basic_string_view/inserters/char/3.cc: New file.
12350         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12351         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12352         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12353         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12354         * unittests/basic_string_view/literals/types.cc: New file.
12355         * unittests/basic_string_view/literals/values.cc: New file.
12356         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12357         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12358         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12359         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12360         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12361         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12362         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12363         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12364         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12365         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12366         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12367         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12368         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12369         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12370         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12371         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12372         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12373         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12374         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12375         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12376         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12377         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12378         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12379         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12380         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12381         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12382         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12383         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12384         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12385         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12386         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12387         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12388         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12389         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12390         * unittests/basic_string_view/operators/char/2.cc: New file.
12391         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12392         * unittests/basic_string_view/range_access/char/1.cc: New file.
12393         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12394         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12395         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12396         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12397         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12398         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12399         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12400         * unittests/basic_string_view/typedefs.cc: New file.
12401         * unittests/basic_string_view/types/1.cc: New file.
12402
12403 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12404
12405         * common/gdb_string_view.h: Remove libstdc++ implementation
12406         details, adjust to gdb reality.
12407         * common/gdb_string_view.tcc: Likewise.
12408         * cli/cli-script.c (struct string_view): Remove.
12409         (user_args) <m_args>: Change element type to gdb::string_view.
12410         (user_args::insert_args): Adjust.
12411
12412 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12413
12414         * common/gdb_string_view.h: New file.
12415         * common/gdb_string_view.tcc: New file.
12416
12417 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12418
12419         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12420         * configure: Re-generate.
12421
12422 2018-04-09  Pedro Alves  <palves@redhat.com>
12423
12424         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12425         (set_target_gdbarch): Call
12426         gdb::observers::architecture_changed.notify instead of
12427         observer_notify_architecture_changed.
12428
12429 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12430
12431         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12432         (do_restore_current_traceframe_cleanup): Remove.
12433         (restore_current_traceframe_cleanup_dtor): Remove.
12434         (make_cleanup_restore_current_traceframe): Remove.
12435         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12436         New.
12437         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12438         * infrun.c (fetch_inferior_event): Use
12439         scoped_restore_current_traceframe.
12440
12441 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12442
12443         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12444         Remove.
12445         <n_allocated_type_units>: Remove.
12446         <all_type_units>: Change to std::vector.
12447         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12448         to std::vector change.
12449         (dwarf2_per_objfile::get_cutu): Likewise.
12450         (dwarf2_per_objfile::get_tu): Likewise.
12451         (create_signatured_type_table_from_index): Likewise.
12452         (create_signatured_type_table_from_debug_names): Likewise.
12453         (dw2_symtab_iter_next): Likewise.
12454         (dw2_print_stats): Likewise.
12455         (dw2_expand_all_symtabs): Likewise.
12456         (dw2_expand_marked_cus): Likewise.
12457         (dw2_debug_names_iterator::next): Likewise.
12458         (dwarf2_initialize_objfile): Likewise.
12459         (add_signatured_type_cu_to_table): Likewise.
12460         (create_all_type_units): Likewise.
12461         (add_type_unit): Likewise.
12462         (struct tu_abbrev_offset): Add constructor.
12463         (build_type_psymtabs_1): Adjust to std::vector change.
12464         (print_tu_stats): Likewise.
12465         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12466         (write_debug_names): Likewise.
12467
12468 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12469
12470         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12471         Make an std::vector.
12472         <n_comp_units>: Remove.
12473         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12474         to std::vector change.
12475         (dwarf2_per_objfile::get_cutu): Likewise.
12476         (dwarf2_per_objfile::get_cu): Likewise.
12477         (create_cus_from_index): Likewise.
12478         (create_addrmap_from_index): Likewise.
12479         (create_addrmap_from_aranges): Likewise.
12480         (dwarf2_read_index): Likewise.
12481         (dw2_find_last_source_symtab): Likewise.
12482         (dw2_map_symtabs_matching_filename): Likewise.
12483         (dw2_symtab_iter_next): Likewise.
12484         (dw2_print_stats): Likewise.
12485         (dw2_expand_all_symtabs): Likewise.
12486         (dw2_expand_symtabs_with_fullname): Likewise.
12487         (dw2_expand_marked_cus): Likewise.
12488         (dw2_map_symbol_filenames): Likewise.
12489         (create_cus_from_debug_names): Likewise.
12490         (dwarf2_read_debug_names): Likewise.
12491         (dw2_debug_names_iterator::next): Likewise.
12492         (dwarf2_initialize_objfile): Likewise.
12493         (set_partial_user): Likewise.
12494         (dwarf2_build_psymtabs_hard): Likewise.
12495         (read_comp_units_from_section): Remove arguments, adjust to
12496         std::vector change.
12497         (create_all_comp_units): Adjust to std::vector and
12498         read_comp_units_from_section changes.
12499         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12500         change.
12501         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12502         (psyms_seen_size): Likewise.
12503         (write_gdbindex): Likewise.
12504         (write_debug_names): Likewise.
12505
12506 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12507
12508         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12509         with dwarf2_per_objfile.
12510         (create_cus_from_index): Likewise.
12511         (create_signatured_type_table_from_index): Likewise.
12512         (dwarf2_read_index): Likewise.
12513         (dwarf2_initialize_objfile): Likewise.
12514         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12515         per_cu rather than get_dwarf2_per_objfile.
12516
12517 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12518
12519         * dwarf2read.h (struct signatured_type): Forward declare.
12520         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12521         New methods.
12522         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12523         (dw2_get_cutu): ...this.
12524         (dwarf2_per_objfile::get_cu): Rename from...
12525         (dw2_get_cu): ...this.
12526         (dwarf2_per_objfile::get_tu): New.
12527         (create_addrmap_from_index): Adjust.
12528         (create_addrmap_from_aranges): Adjust.
12529         (dw2_find_last_source_symtab): Adjust.
12530         (dw2_map_symtabs_matching_filename): Adjust.
12531         (dw2_symtab_iter_next): Adjust.
12532         (dw2_print_stats): Adjust.
12533         (dw2_expand_all_symtabs): Adjust.
12534         (dw2_expand_symtabs_with_fullname): Adjust.
12535         (dw2_expand_marked_cus): Adjust.
12536         (dw_expand_symtabs_matching_file_matcher): Adjust.
12537         (dw2_map_symbol_filenames): Adjust.
12538         (dw2_debug_names_iterator::next): Adjust.
12539         (dwarf2_initialize_objfile): Adjust.
12540         (set_partial_user): Adjust.
12541         (dwarf2_build_psymtabs_hard): Adjust.
12542
12543 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12544
12545         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12546         Remove unused variables.
12547         (dw2_map_symtabs_matching_filename): Likewise.
12548         (dwarf2_record_block_ranges): Likewise.
12549         (dwarf2_read_addr_index): Likewise.
12550         (follow_die_offset): Likewise.
12551
12552 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12553
12554         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12555         to symbol_file_add_main.
12556
12557 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12558
12559         PR mi/22299
12560         * mi/mi-console.c (do_fputc_async_safe): New.
12561         (mi_console_file::write_async_safe): New.
12562         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12563         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12564         New.
12565         * ui-file.c (ui_file::putstrn): Adjust call to
12566         fputstrn_unfiltered.
12567         * utils.c (printchar): Replace do_fputs and do_fprintf
12568         parameters by do_fputc.
12569         (fputstr_filtered): Adjust call to printchar.
12570         (fputstr_unfiltered): Likewise.
12571         (fputstrn_filtered): Likewise.
12572         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12573         printchar.
12574         * utils.h (do_fputc_ftype): New typedef.
12575         (fputstrn_unfiltered): Add do_fputc parameter.
12576
12577 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12578
12579         * regformats/i386/i386-avx.dat: Remove.
12580
12581 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12582
12583         PR gdb/22979
12584         * amd64-tdep.c (amd64_none_init_abi): New function.
12585         (amd64_x32_none_init_abi): New function.
12586         (_initialize_amd64_tdep): Register handlers for x86-64 and
12587         x64_32 with GDB_OSABI_NONE.
12588         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12589         GDB_OSABI_NONE osabi.
12590
12591 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12592
12593         PR gdb/22980
12594         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12595         GDB_OSABI_NONE.
12596         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12597         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12598
12599 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12600
12601         * common/byte-vector.h (char_vector): New type.
12602         * target.h (target_read_alloc): Return
12603         gdb::optional<byte_vector>.
12604         (target_read_stralloc): Return gdb::optional<char_vector>.
12605         (target_get_osdata): Return gdb::optional<char_vector>.
12606         * target.c (target_read_alloc_1): Templatize.  Replacement
12607         manual memory management with vector.
12608         (target_read_alloc): Change return type, adjust.
12609         (target_read_stralloc): Change return type, adjust.
12610         (target_get_osdata): Change return type, adjust.
12611         * auxv.c (struct auxv_info) <length>: Remove.
12612         <data>: Change type to gdb::optional<byte_vector>.
12613         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12614         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12615         (target_auxv_search): Adjust.
12616         (fprint_target_auxv): Adjust.
12617         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12618         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12619         (linux_make_corefile_notes): Adjust.
12620         * osdata.c (get_osdata): Adjust.
12621         * remote.c (remote_get_threads_with_qxfer): Adjust.
12622         (remote_memory_map): Adjust.
12623         (remote_traceframe_info): Adjust.
12624         (btrace_read_config): Adjust.
12625         (remote_read_btrace): Adjust.
12626         (remote_pid_to_exec_file): Adjust.
12627         * solib-aix.c (solib_aix_get_library_list): Adjust.
12628         * solib-dsbt.c (decode_loadmap): Don't free buf.
12629         (dsbt_get_initial_loadmaps): Adjust.
12630         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12631         * solib-target.c (solib_target_current_sos): Adjust.
12632         * tracepoint.c (sdata_make_value): Adjust.
12633         * xml-support.c (xinclude_start_include): Adjust.
12634         (xml_fetch_content_from_file): Adjust.
12635         * xml-support.h (xml_fetch_another): Change return type.
12636         (xml_fetch_content_from_file): Change return type.
12637         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12638         * xml-tdesc.c (file_read_description_xml): Adjust.
12639         (fetch_available_features_from_target): Change return type.
12640         (target_fetch_description_xml): Adjust.
12641         (target_read_description_xml): Adjust.
12642
12643 2018-04-06  Tom Tromey  <tom@tromey.com>
12644
12645         * value.c (~value): Update.
12646         (struct value) <contents>: Now unique_xmalloc_ptr.
12647         (value_contents_bits_eq, allocate_value_contents)
12648         (value_contents_raw, value_contents_all_raw)
12649         (value_contents_for_printing, value_contents_for_printing_const)
12650         (set_value_enclosing_type): Update.
12651
12652 2018-04-06  Tom Tromey  <tom@tromey.com>
12653
12654         * value.c (range_s): Remove typedef, VEC.
12655         (struct range): Add operator<.
12656         (range_lessthan): Remove.
12657         (ranges_contain): Change type.
12658         (~value): Update.
12659         (struct value) <unavailable, optimized_out>: Now std::vector.
12660         (value_entirely_available)
12661         (value_entirely_covered_by_range_vector)
12662         (value_entirely_unavailable, value_entirely_optimized_out):
12663         Update.
12664         (insert_into_bit_range_vector): Change argument type.
12665         (find_first_range_overlap): Likewise.
12666         (struct ranges_and_idx, value_contents_bits_eq)
12667         (require_not_optimized_out, require_available): Update.
12668         (ranges_copy_adjusted): Change argument types.
12669         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12670
12671 2018-04-06  Tom Tromey  <tom@tromey.com>
12672
12673         * value.c (~value): Update.
12674         (struct value) <parent>: Now a value_ref_ptr.
12675         (value_parent, set_value_parent, value_address, value_copy):
12676         Update.
12677
12678 2018-04-06  Tom Tromey  <tom@tromey.com>
12679
12680         * value.c (struct value): Add constructor, destructor, and member
12681         initializers.
12682         (allocate_value_lazy, value_decref): Update.
12683
12684 2018-04-06  Tom Tromey  <tom@tromey.com>
12685
12686         * value.c (struct value) <released, next>: Remove.
12687         (all_values): Now a std::vector.
12688         (allocate_value_lazy): Update.
12689         (value_next): Remove.
12690         (value_mark, value_free_to_mark, release_value)
12691         (value_release_to_mark): Update.
12692
12693 2018-04-06  Tom Tromey  <tom@tromey.com>
12694
12695         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12696         (free_value_chain): Remove.
12697         * value.c (free_value_chain): Remove.
12698         (value_release_to_mark): Return a std::vector.
12699         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12700         std::vector.
12701         (check_condition): Update.
12702         * eval.c (fetch_subexp_value): Change "val_chain" to a
12703         std::vector.
12704         * breakpoint.c (update_watchpoint): Update.
12705         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12706
12707 2018-04-06  Tom Tromey  <tom@tromey.com>
12708
12709         * value.h (free_all_values): Remove.
12710         * value.c (free_all_values): Remove.
12711
12712 2018-04-06  Tom Tromey  <tom@tromey.com>
12713
12714         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12715         (value_history_chain, value_history_count): Remove.
12716         (value_history): New global.
12717         (record_latest_value, access_value_history, show_values)
12718         (preserve_values): Update.
12719
12720 2018-04-06  Tom Tromey  <tom@tromey.com>
12721
12722         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12723         * varobj.c (varobj_set_display_format, varobj_set_value)
12724         (install_default_visualizer, construct_visualizer)
12725         (install_new_value, ~varobj, varobj_get_value_type)
12726         (my_value_of_variable, varobj_editable_p): Update.
12727         * c-varobj.c (c_describe_child, c_value_of_variable)
12728         (cplus_number_of_children, cplus_describe_child): Update.
12729         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12730         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12731         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12732
12733 2018-04-06  Tom Tromey  <tom@tromey.com>
12734
12735         * printcmd.c (last_examine_address): Change type to
12736         value_ref_ptr.
12737         (do_examine, x_command): Update.
12738
12739 2018-04-06  Tom Tromey  <tom@tromey.com>
12740
12741         * value.c (release_value): Update.
12742         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12743         (struct bpstats) <val>: Now a value_ref_ptr.
12744         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12745         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12746         (~watchpoint, print_it_watchpoint, watch_command_1)
12747         (invalidate_bp_value_on_memory_change): Update.
12748
12749 2018-04-06  Tom Tromey  <tom@tromey.com>
12750
12751         * varobj.c (varobj_clear_saved_item)
12752         (update_dynamic_varobj_children, install_new_value, ~varobj):
12753         Update.
12754         * value.h (value_incref): Move declaration earlier.
12755         (value_decref): Rename from value_free.
12756         (struct value_ref_policy): New.
12757         (value_ref_ptr): New typedef.
12758         (struct value_deleter): Remove.
12759         (gdb_value_up): Remove typedef.
12760         (release_value): Change return type.
12761         (release_value_or_incref): Remove.
12762         * value.c (set_value_parent): Update.
12763         (value_incref): Change return type.
12764         (value_decref): Rename from value_free.
12765         (value_free_to_mark, free_all_values, free_value_chain): Update.
12766         (release_value): Return value_ref_ptr.
12767         (release_value_or_incref): Remove.
12768         (record_latest_value, set_internalvar, clear_internalvar):
12769         Update.
12770         * stack.c (info_frame_command): Don't call value_free.
12771         * python/py-value.c (valpy_dealloc, valpy_new)
12772         (value_to_value_object): Update.
12773         * printcmd.c (do_examine): Update.
12774         * opencl-lang.c (lval_func_free_closure): Update.
12775         * mi/mi-main.c (register_changed_p): Don't call value_free.
12776         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12777         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12778         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12779         value_free.
12780         * guile/scm-value.c (vlscm_free_value_smob)
12781         (vlscm_scm_from_value): Update.
12782         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12783         (frame_unwind_register_unsigned, get_frame_register_bytes)
12784         (put_frame_register_bytes): Don't call value_free.
12785         * findvar.c (address_from_register): Don't call value_free.
12786         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12787         * dwarf2loc.c (entry_data_value_free_closure)
12788         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12789         (dwarf2_evaluate_loc_desc_full): Update.
12790         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12791         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12792         (~watchpoint, watch_command_1)
12793         (invalidate_bp_value_on_memory_change): Update.
12794         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12795
12796 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12797
12798         PR gdb/23022
12799         * warning.m4: Add -Wno-error=deprecated-register.
12800         * configure: Re-generate.
12801
12802 2018-04-05  Tom Tromey  <tom@tromey.com>
12803
12804         * linespec.h: Remove include of "vec.h".
12805
12806 2018-04-05  Tom Tromey  <tom@tromey.com>
12807
12808         * linespec.c (typep): Remove typedef.
12809         (find_methods, find_superclass_methods): Take a std::vector.
12810         (find_method): Use std::vector.
12811
12812 2018-04-05  Tom Tromey  <tom@tromey.com>
12813
12814         * utils.c (compare_strings): Remove.
12815         * utils.h (compare_strings): Remove.
12816         * objc-lang.h (find_imps): Update.
12817         * objc-lang.c (find_methods): Take a std::vector.
12818         (uniquify_strings, find_imps): Likewise.
12819         * linespec.c (find_methods): Take a std::vector.
12820         (decode_objc): Use std::vector.
12821         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12822         a std::vector.
12823         (find_method, find_function_symbols): Use std::vector.
12824
12825 2018-04-05  Tom Tromey  <tom@tromey.com>
12826
12827         * completer.c (completion_tracker::completion_tracker): Remove
12828         cast.
12829         (completion_tracker::discard_completions): Likewise.
12830         * breakpoint.c (ambiguous_names_p): Remove cast.
12831         * ada-lang.c (_initialize_ada_language): Remove cast.
12832         * utils.h (streq): Update.
12833         (streq_hash): Add new declaration.
12834         * utils.c (streq): Return bool.
12835         (streq_hash): New function.
12836
12837 2018-04-05  Tom Tromey  <tom@tromey.com>
12838
12839         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12840         Remove a string copy.
12841
12842 2018-04-05  Tom Tromey  <tom@tromey.com>
12843
12844         * linespec.c (filter_results): Use std::vector.
12845         (decode_line_2, decode_line_full): Update.
12846
12847 2018-04-05  Tom Tromey  <tom@tromey.com>
12848
12849         * linespec.c (canonical_to_fullform): Return std::string.
12850         (filter_results): Update.
12851         (struct decode_line_2_item): Add constructor.
12852         <fullform, displayform>: Now std::string.
12853         (decode_line_2_compare_items): Now a std::sort comparator.
12854         (decode_line_2): Update.
12855
12856 2018-04-05  Tom Tromey  <tom@tromey.com>
12857
12858         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12859         (unexpected_linespec_error): Update.
12860         (linespec_parse_basic, parse_linespec): Update.
12861
12862 2018-04-05  Tom Tromey  <tom@tromey.com>
12863
12864         * linespec.c (linespec_parse_basic): Reindent.
12865
12866 2018-04-05  Tom Tromey  <tom@tromey.com>
12867
12868         * minsyms.h (iterate_over_minimal_symbols): Update.
12869         * minsyms.c (iterate_over_minimal_symbols): Take a
12870         gdb::function_view.
12871         * linespec.c (struct collect_minsyms): Remove.
12872         (compare_msyms): Now a std::sort comparator.
12873         (add_minsym): Add parameters.
12874         (search_minsyms_for_name): Update.  Use std::vector.
12875
12876 2018-04-03  Tom Tromey  <tom@tromey.com>
12877
12878         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12879         gdb::byte_vector.
12880
12881 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12882
12883         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12884
12885 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12886
12887         PR gdb/16959
12888         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12889         printing static type.
12890
12891 2018-04-01  Tom Tromey  <tom@tromey.com>
12892
12893         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12894         (rs6000_xfer_shared_libraries): Update.
12895
12896 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12897
12898         * common/gdb_vecs.h (char_ptr): Remove.
12899         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12900
12901 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12902
12903         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12904         with std::vector.
12905         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12906
12907 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12908
12909         * tracepoint.h (struct uploaded_tp): Initialize fields.
12910         <actions, step_actions, cmd_strings>: Change type to
12911         std::vector<char *>.
12912         * tracepoint.c (get_uploaded_tp): Allocate with new.
12913         (free_uploaded_tps): Free with delete.
12914         (parse_tracepoint_definition): Adjust to std::vector change.
12915         * breakpoint.c (read_uploaded_action): Likewise.
12916         (create_tracepoint_from_upload): Likewise.
12917         * ctf.c (ctf_write_uploaded_tp): Likewise.
12918         (SET_ARRAY_FIELD): Likewise.
12919         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12920
12921 2018-03-30  Tom Tromey  <tom@tromey.com>
12922
12923         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12924         std::unique_ptr.
12925         (svr4_keep_data_in_core): Update.
12926         (svr4_read_so_list): Update.
12927
12928 2018-03-30  Tom Tromey  <tom@tromey.com>
12929
12930         * windows-nat.c (handle_output_debug_string, handle_exception):
12931         Update.
12932         * target.h (target_read_string): Update.
12933         * target.c (target_read_string): Change "string" to
12934         unique_xmalloc_ptr.
12935         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12936         Update.
12937         * solib-frv.c (frv_current_sos): Update.
12938         * solib-dsbt.c (dsbt_current_sos): Update.
12939         * solib-darwin.c (darwin_current_sos): Update.
12940         * linux-thread-db.c (inferior_has_bug): Update.
12941         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12942         Update.  Remove alloca.
12943         * ada-lang.c (ada_main_name): Update.
12944
12945 2018-03-30  Tom Tromey  <tom@tromey.com>
12946
12947         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12948         (struct dwo_file_deleter): New.
12949         (dwo_file_up): New typedef.
12950         (open_and_init_dwo_file): Use dwo_file_up.
12951         (free_dwo_file_cleanup): Remove.
12952
12953 2018-03-30  Tom Tromey  <tom@tromey.com>
12954
12955         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12956         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12957
12958 2018-03-30  Tom Tromey  <tom@tromey.com>
12959
12960         * dwarf2read.c (class free_cached_comp_units): New class.
12961         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12962         (free_cached_comp_units): Remove function.
12963
12964 2018-03-30  Tom Tromey  <tom@tromey.com>
12965
12966         * utils.h (make_cleanup_unpush_target): Remove.
12967         * inf-ptrace.c (struct target_unpusher): New.
12968         (target_unpush_up) New typedef.
12969         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12970         target_unpush_up.
12971         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12972
12973 2018-03-27  Tom Tromey  <tom@tromey.com>
12974
12975         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12976
12977 2018-03-27  Pedro Alves  <palves@redhat.com>
12978             Tom Tromey  <tom@tromey.com>
12979
12980         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12981         destructor.  Now a class.
12982         (gdb_readline_wrapper_cleanup): Remove function.
12983         (gdb_readline_wrapper): Remove cleanups.
12984
12985 2018-03-27  Tom Tromey  <tom@tromey.com>
12986
12987         * typeprint.h (struct type_print_options) <local_typedefs,
12988         global_typedefs>: Remove "struct" keyword.
12989         (class typedef_hash_table): New class.
12990         (recursively_update_typedef_hash, add_template_parameters)
12991         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12992         (find_typedef_in_hash): Don't declare.
12993         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12994         (typedef_hash_table::recursively_update): Rename from
12995         recursively_update_typedef_hash.  Now a member.
12996         (typedef_hash_table::add_template_parameters): Rename from
12997         add_template_parameters.  Now a member.
12998         (typedef_hash_table::typedef_hash_table): Now a constructor;
12999         rename from create_typedef_hash.
13000         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13001         rename from free_typedef_hash.
13002         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13003         (do_free_global_table): Remove.
13004         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13005         from copy_type_recursive.
13006         (create_global_typedef_table): Remove.
13007         (typedef_hash_table::find_global_typedef): Now a member of
13008         typedef_hash_table.
13009         (typedef_hash_table::find_typedef): Rename from
13010         find_typedef_in_hash; now a member.
13011         (whatis_exp): Update.
13012         * extension.h (struct ext_lang_type_printers): Add constructor and
13013         destructor.
13014         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13015         declare.
13016         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13017         Now a constructor; rename from start_ext_lang_type_printers.
13018         (ext_lang_type_printers): Now a destructor; rename from
13019         free_ext_lang_type_printers.
13020         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13021         Update.
13022         (c_type_print_base_struct_union): Update.  Remove cleanups.
13023
13024 2018-03-27  Tom Tromey  <tom@tromey.com>
13025
13026         * dwarf-index-write.c: Include <cmath>.
13027
13028 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13029
13030         * NEWS: Add entry describing new "set|show varsize-limit" command.
13031         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13032         command.
13033         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13034         "set variable".
13035
13036 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13037
13038         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13039         dwarf-index-write.c
13040         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13041         * dwarf-index-common.c: New file.
13042         * dwarf-index-common.h: New file.
13043         * dwarf-index-write.c: New file.
13044         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13045         (struct dwarf2_section_info): Move from here.
13046         (dwarf2_section_info_def): Likewise.
13047         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13048         (offset_type): Likewise.
13049         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13050         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13051         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13052         (byte_swap): Likewise.
13053         (MAYBE_SWAP): Likewise.
13054         (dwarf2_per_cu_ptr): Likewise.
13055         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13056         (struct tu_stats): Likewise.
13057         (struct dwarf2_per_objfile): Likewise.
13058         (struct dwarf2_per_cu_data): Likewise.
13059         (struct signatured_type): Likewise.
13060         (sig_type_ptr): Likewise.
13061         (DEF_VEC_P (sig_type_ptr)): Likewise.
13062         (INDEX4_SUFFIX): Likewise.
13063         (INDEX5_SUFFIX): Likewise.
13064         (DEBUG_STR_SUFFIX): Likewise.
13065         (dwarf2_read_section): Make non-static.
13066         (mapped_index_string_hash): Move from here.
13067         (dwarf5_djb_hash): Likewise.
13068         (file_write): Likewise.
13069         (class data_buf): Likewise.
13070         (struct symtab_index_entry): Likewise.
13071         (struct mapped_symtab): Likewise.
13072         (find_slot): Likewise.
13073         (hash_expand): Likewise.
13074         (add_index_entry): Likewise.
13075         (uniquify_cu_indices): Likewise.
13076         (class c_str_view): Likewise.
13077         (class c_str_view_hasher): Likewise.
13078         (class vector_hasher): Likewise.
13079         (write_hash_table): Likewise.
13080         (psym_index_map): Likewise.
13081         (struct addrmap_index_data): Likewise.
13082         (add_address_entry): Likewise.
13083         (add_address_entry_worker): Likewise.
13084         (write_address_map): Likewise.
13085         (symbol_kind): Likewise.
13086         (write_psymbols): Likewise.
13087         (struct signatured_type_index_data): Likewise.
13088         (write_one_signatured_type): Likewise.
13089         (recursively_count_psymbols): Likewise.
13090         (recursively_write_psymbols): Likewise.
13091         (class debug_names): Likewise.
13092         (check_dwarf64_offsets): Likewise.
13093         (psyms_seen_size): Likewise.
13094         (write_gdbindex): Likewise.
13095         (write_debug_names): Likewise.
13096         (assert_file_size): Likewise.
13097         (write_psymtabs_to_index): Likewise.
13098         (save_gdb_index_command): Likewise.
13099         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13100         command.
13101         * dwarf2read.h: New file.
13102
13103 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13104
13105         PR gdb/22670
13106         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13107         symbol name if the CU's language stores symbol names in linkage
13108         format.
13109         * language.h (struct language_defn)
13110         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13111         all instances of this struct.
13112
13113 2018-03-26  Tom Tromey  <tom@tromey.com>
13114
13115         * stack.c (backtrace_command_1): Remove verbose code.
13116
13117 2018-03-26  Tom Tromey  <tom@tromey.com>
13118
13119         * python/py-framefilter.c (py_print_type): Don't catch
13120         exceptions.  Return void.
13121         (py_print_value): Likewise.
13122         (py_print_single_arg): Likewise.
13123         (enumerate_args): Don't catch exceptions.
13124         (py_print_args): Likewise.
13125         (py_print_frame): Likewise.
13126         (gdbpy_apply_frame_filter): Catch exceptions here.
13127
13128 2018-03-26  Tom Tromey  <tom@tromey.com>
13129
13130         * stack.c (_initialize_stack): Remove trailing newlines from help
13131         text.  Add "Usage" line to "backtrace" help.
13132
13133 2018-03-26  Tom Tromey  <tom@tromey.com>
13134
13135         PR python/16486:
13136         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13137
13138 2018-03-26  Tom Tromey  <tom@tromey.com>
13139
13140         * python/py-framefilter.c (py_print_single_arg): Return
13141         EXT_LANG_BT_ERROR from catch.
13142
13143 2018-03-26  Tom Tromey  <tom@tromey.com>
13144
13145         PR backtrace/15584:
13146         * stack.c (backtrace_command_1): Move some code into no-filters
13147         "if".
13148
13149 2018-03-26  Tom Tromey  <tom@tromey.com>
13150
13151         * python/py-framefilter.c (throw_quit_or_print_exception): New
13152         function.
13153         (gdbpy_apply_frame_filter): Use it.
13154
13155 2018-03-26  Tom Tromey  <tom@tromey.com>
13156
13157         PR cli/17716:
13158         * python/py-framefilter.c (py_print_type, py_print_value)
13159         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13160         RETURN_MASK_ERROR.
13161
13162 2018-03-26  Tom Tromey  <tom@tromey.com>
13163
13164         * python/py-framefilter.c (enumerate_args): Use
13165         gdb::unique_xmalloc_ptr.
13166
13167 2018-03-26  Tom Tromey  <tom@tromey.com>
13168
13169         * python/py-framefilter.c (py_print_frame): Return
13170         EXT_LANG_BT_OK.
13171         (gdbpy_apply_frame_filter): Update comment.
13172         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13173         Remove.
13174         <EXT_LANG_BT_NO_FILTERS>: Change value.
13175
13176 2018-03-26  Tom Tromey  <tom@tromey.com>
13177
13178         PR backtrace/15582:
13179         * stack.c (backtrace_command): Parse "hide" argument.
13180         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13181         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13182         constant.
13183
13184 2018-03-26  Tom Tromey  <tom@tromey.com>
13185
13186         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13187         add "flags".
13188         (backtrace_command): Remove "fulltrace", add "flags".
13189
13190 2018-03-26  Tom Tromey  <tom@tromey.com>
13191
13192         * stack.c (backtrace_command): Rewrite command line parsing.
13193
13194 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13195
13196         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13197
13198 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13199
13200         * filename-seen-cache.h: Add include guard.
13201
13202 2018-03-26  Keith Seitz  <keiths@redhat.com>
13203
13204         * symfile.c (place_section): Remove "struct" from section_addr_info
13205         in comment.
13206         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13207         "struct" keyword from section_addr_info.
13208
13209 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13210
13211         * regformats/regdef.h (reg): Add constructors.
13212
13213 2018-03-25  Pedro Alves  <palves@redhat.com>
13214
13215         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13216         if then/else bodies in var_func_name extraction.
13217
13218 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13219
13220         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13221         lookup_minimal_symbol() to find symbol entry.
13222         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13223
13224 2018-03-23  Keith Seitz  <keiths@redhat.com>
13225
13226         PR c++/22968
13227         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13228         nested type definitions for C++, too.
13229
13230 2018-03-23  Tom Tromey  <tom@tromey.com>
13231
13232         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13233         a typedef.
13234         (macho_register_oso): Remove.
13235         (macho_symtab_read): Take a std::vector.
13236         (oso_el_compare_name): Now a std::sort comparator.
13237         (macho_symfile_read_all_oso): Take a std::vector.
13238         (macho_symfile_read): Use std::vector.  Remove cleanups.
13239
13240 2018-03-22  Tom Tromey  <tom@tromey.com>
13241
13242         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13243         (record_full_goto_bookmark): Use std::string.
13244
13245 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13246
13247         PR tdep/18295
13248         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13249         a single mask.
13250
13251 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13252
13253         * rs6000-tdep.c (store_insn_p): New function.
13254         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13255         and cr_reg to their unshifted values. Use store_insn_p to
13256         match LR saves using either R1 or fdata->alloca_reg. Use
13257         store_insn_p to match CR saves. Set alloca_reg_offset
13258         when alloca_reg and framep are set. Remove lr_reg shift
13259         when assigning to fdata->lr_register.
13260
13261 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13262
13263         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13264         command line args instead of emitting a warning.
13265
13266 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13267
13268         * tracepoint.h (struct static_tracepoint_marker): Initialize
13269         fields, define default constructor, move constructor and move
13270         assignment, disable the rest.
13271         <str_id, extra>: Make std::string.
13272         (release_static_tracepoint_marker): Remove.
13273         (free_current_marker): Remove.
13274         * tracepoint.c (free_current_marker): Remove.
13275         (parse_static_tracepoint_marker_definition): Adjust to
13276         std::string, use new hex2str overload.
13277         (release_static_tracepoint_marker): Remove.
13278         (print_one_static_tracepoint_marker): Get marker by reference
13279         and adjust to std::string.
13280         (info_static_tracepoint_markers_command): Adjust to std::vector
13281         changes
13282         * target.h (static_tracepoint_marker_p): Remove typedef.
13283         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13284         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13285         bool.
13286         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13287         * target-debug.h
13288         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13289         (target_debug_print_std_vector_static_tracepoint_marker): New.
13290         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13291         to...
13292         (target_debug_print_static_tracepoint_marker_p): ... this.
13293         * target-delegates.c: Re-generate.
13294         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13295         Make std::string.
13296         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13297         (decode_static_tracepoint_spec): Adjust to std::vector.
13298         (tracepoint_print_one_detail): Adjust to std::string.
13299         (strace_marker_decode_location): Adjust to std::string.
13300         (update_static_tracepoint): Adjust to std::string, remove call
13301         to release_static_tracepoint_marker.
13302         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13303         Adjust to std::vector.
13304         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13305         (remote_static_tracepoint_markers_by_strid): Adjust to
13306         std::vector.
13307         * common/rsp-low.h (hex2str): New overload with explicit count
13308         of bytes.
13309         * common/rsp-low.c (hex2str): New overload with explicit count
13310         of bytes.
13311         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13312         (_initialize_rsp_low_selftests): Add test_hex2str test.
13313         * unittests/tracepoint-selftests.c
13314         (test_parse_static_tracepoint_marker_definition): Adjust to
13315         std::string.
13316
13317 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13318
13319         * tracepoint.c (parse_static_tracepoint_marker_definition):
13320         Consider case where the definition is followed by more
13321         definitions.
13322         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13323         tracepoint-selftests.c.
13324         * unittests/tracepoint-selftests.c: New.
13325
13326 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13327
13328         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13329         Carvalho.
13330
13331 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13332
13333         * symtab.c (find_pc_sect_line): fixed indentation.
13334
13335 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13336
13337         * symtab.c (find_pc_sect_line): now uses binary search.
13338
13339 2018-03-19  Tom Tromey  <tom@tromey.com>
13340
13341         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13342         "IDENT" production.
13343
13344 2018-03-19  Pedro Alves  <palves@redhat.com>
13345             Tom Tromey  <tom@tromey.com>
13346
13347         * unittests/observable-selftests.c: New file.
13348         * common/observable.h: New file.
13349         * observable.h: New file.
13350         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13351         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13352         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13353         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13354         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13355         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13356         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13357         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13358         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13359         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13360         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13361         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13362         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13363         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13364         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13365         tui/tui-interp.c, valops.c: Update all users.
13366         * tui/tui-hooks.c (tui_bp_created_observer)
13367         (tui_bp_deleted_observer, tui_bp_modified_observer)
13368         (tui_inferior_exit_observer, tui_before_prompt_observer)
13369         (tui_normal_stop_observer, tui_register_changed_observer):
13370         Remove.
13371         (tui_observers_token): New global.
13372         (attach_or_detach, tui_attach_detach_observers): New functions.
13373         (tui_install_hooks, tui_remove_hooks): Use
13374         tui_attach_detach_observers.
13375         * record-btrace.c (record_btrace_thread_observer): Remove.
13376         (record_btrace_thread_observer_token): New global.
13377         * observer.sh: Remove.
13378         * observer.c: Rename to observable.c.
13379         * observable.c (namespace gdb_observers): Define new objects.
13380         (observer_debug): Move into gdb_observers namespace.
13381         (struct observer, struct observer_list, xalloc_observer_list_node)
13382         (xfree_observer_list_node, generic_observer_attach)
13383         (generic_observer_detach, generic_observer_notify): Remove.
13384         (_initialize_observer): Update.
13385         Don't include observer.inc.
13386         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13387         (clean mostlyclean): Likewise.
13388         (observer.h, observer.inc): Remove targets.
13389         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13390         (COMMON_SFILES): Use observable.c, not observer.c.
13391         * .gitignore: Remove observer.h.
13392
13393 2018-03-18  Tom Tromey  <tom@tromey.com>
13394
13395         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13396         gdb::def_vector.
13397         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13398
13399 2018-03-17  Tom Tromey  <tom@tromey.com>
13400
13401         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13402
13403 2018-03-17  Tom Tromey  <tom@tromey.com>
13404
13405         * target.c (class scoped_target_fd): New.
13406         (target_fileio_close_cleanup): Remove.
13407         (target_fileio_read_alloc_1): Use scoped_target_fd.
13408
13409 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13410
13411         * silent-rules.mk: New.
13412         * Makefile.in: Include silent-rules.mk
13413         (srcdir, VPATH, top_srcdir): Move up.
13414         (COMPILE): Add ECHO_CXX.
13415         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13416         (init.c): Add ECHO_INIT_C.
13417         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13418         (version.c): Add ECHO_GEN.
13419         (printcmd.o): Add ECHO_CXX.
13420         (target-float.o): Add ECHO_CXX.
13421         (ada-exp.o): Add ECHO_CXX.
13422         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13423         (insight$(EXEEXT)): Add ECHO_CXXLD.
13424         * gnulib/configure.ac: Add AM_SILENT_RULES.
13425         * gnulib/aclocal.m4: Re-generate.
13426         * gnulib/configure: Re-generate.
13427         * gnulib/import/Makefile.in: Re-generate.
13428
13429 2018-03-16  Tom Tromey  <tom@tromey.com>
13430
13431         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13432         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13433         * utils.c (do_free_section_addr_info)
13434         (make_cleanup_free_section_addr_info): Remove.
13435         * symfile.h (struct other_sections): Add constructor.
13436         (struct section_addr_info): Remove.
13437         (section_addr_info): New typedef.
13438         (struct sym_fns) <sym_offsets>: Change type of parameter.
13439         (build_section_addr_info_from_objfile)
13440         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13441         (default_symfile_offsets, symbol_file_add)
13442         (symbol_file_add_from_bfd)
13443         (build_section_addr_info_from_section_table): Update.
13444         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13445         * symfile.c (alloc_section_addr_info): Remove.
13446         (build_section_addr_info_from_section_table): Change return type.
13447         Update.
13448         (build_section_addr_info_from_bfd)
13449         (build_section_addr_info_from_objfile): Likewise.
13450         (free_section_addr_info): Remove.
13451         (relative_addr_info_to_section_offsets): Change type of "addrs".
13452         (addrs_section_compar): Now a std::sort comparator.
13453         (addrs_section_sort): Change return type.
13454         (addr_info_make_relative): Change type of "addrs".  Update.
13455         (default_symfile_offsets, syms_from_objfile_1)
13456         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13457         (symbol_file_add_separate): Update.
13458         (symbol_file_add): Change type of "addrs".  Update.
13459         (add_symbol_file_command): Update.  Remove cleanups.
13460         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13461         cleanups.
13462         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13463         * solib.c (solib_read_symbols): Update.
13464         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13465         * machoread.c (macho_symfile_offsets): Update.
13466         * jit.c (jit_bfd_try_read_symtab): Update.
13467
13468 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13469
13470         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13471         unittests/utils-selftests.c.
13472         * unittests/utils-selftests.c: New file.
13473
13474 2018-03-14  Tom Tromey  <tom@tromey.com>
13475
13476         PR cli/14977:
13477         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13478         for NULL.
13479
13480 2018-03-14  Tom Tromey  <tom@tromey.com>
13481
13482         PR cli/19918:
13483         * printcmd.c (printf_pointer): Allow "-" in format.
13484
13485 2018-03-14  Tom Tromey  <tom@tromey.com>
13486
13487         * printcmd.c (_initialize_printcmd): Add usage to printf.
13488
13489 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13490
13491         * MAINTAINERS: Update my email address.
13492
13493 2018-03-13  Tom Tromey  <tom@tromey.com>
13494
13495         * machoread.c (macho_check_dsym): Change filenamep to a
13496         std::string*.
13497         (macho_symfile_read): Update.
13498         * symfile.c (load_command): Use std::string.
13499
13500 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13501
13502         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13503         to error message string.
13504         (riscv_register_name): Use xsnprintf instead of sprintf.
13505         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13506         internal_error.
13507         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13508         error.
13509         (riscv_push_dummy_call): Likewise.
13510
13511 2018-03-12  Tom Tromey  <tom@tromey.com>
13512
13513         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13514         Use gdb::byte_vector.
13515         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13516
13517 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13518
13519         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13520         parameter type to readable_regcache.
13521         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13522         the declaration.
13523
13524 2018-03-11  Tom Tromey  <tom@tromey.com>
13525
13526         * dwarf2read.c (struct nextfield): Add initializers.
13527         (struct nextfnfield): Remove.
13528         (struct fnfieldlist): Add initializers.  Remove "length" and
13529         "head", use std::vector.
13530         (struct decl_field_list): Remove.
13531         (struct field_info): Add initializers.
13532         <fields, baseclasses>: Now std::vector.
13533         <nbaseclasses, nfnfields, typedef_field_list_count,
13534         nested_types_list_count>: Remove.
13535         (dwarf2_add_field, dwarf2_add_type_defn)
13536         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13537         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13538         (process_structure_scope): Update.
13539
13540 2018-03-11  Tom Tromey  <tom@tromey.com>
13541
13542         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13543         for use by std::sort.
13544         (build_type_psymtabs_1): Use std::vector.
13545
13546 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13547
13548         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13549         and LIBMPFR in the printed configuration.
13550
13551 2018-03-08  Tom Tromey  <tom@tromey.com>
13552
13553         * source.c (get_filename_and_charpos): Use scoped_fd.
13554         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13555         (procfs_pidlist): Likewise.
13556         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13557         (iterate_over_mappings): Likewise.
13558
13559 2018-03-08  Tom Tromey  <tom@tromey.com>
13560
13561         * infcall.c (struct call_return_meta_info)
13562         <stack_temporaries_enabled>: Remove.
13563         (get_call_return_value, call_function_by_hand_dummy): Update.
13564         * thread.c (disable_thread_stack_temporaries): Remove.
13565         (enable_thread_stack_temporaries): Remove.
13566         (thread_stack_temporaries_enabled_p): Return bool.
13567         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13568         (get_last_thread_stack_temporary): Update.
13569         * eval.c (evaluate_subexp): Update.
13570         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13571         class, not a function.
13572         (value_ptr, value_vec): Remove typedefs.
13573         (class thread_info) <stack_temporaries_enabled>: Now bool.
13574         <stack_temporaries>: Now a std::vector.
13575         (thread_stack_temporaries_enabled_p)
13576         (value_in_thread_stack_temporaries): Return bool.
13577
13578 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13579
13580         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13581         (getpkt_or_notif_sane_1): Likewise.
13582
13583 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13584
13585         * build-id.c (build_id_to_debug_bfd): Use std::string.
13586
13587 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13588
13589         * build-id.c (find_separate_debug_file_by_buildid): Return
13590         std::string.
13591         * build-id.h (find_separate_debug_file_by_buildid): Return
13592         std::string.
13593         * coffread.c (coff_symfile_read): Adjust to std::string.
13594         * elfread.c (elf_symfile_read): Adjust to std::string.
13595         * symfile.c (separate_debug_file_exists): Change parameter to
13596         std::string.
13597         (find_separate_debug_file): Return std::string.
13598         (find_separate_debug_file_by_debuglink): Return std::string.
13599         * symfile.h (find_separate_debug_file_by_debuglink): Return
13600         std::string.
13601
13602 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13603
13604         * common/xml-utils.c (xml_escape_text): Move code to...
13605         (xml_escape_text_append): ... this new function.
13606         * common/xml-utils.h (xml_escape_text_append): New declaration.
13607         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13608         New function.
13609         (_initialize_xml_utils): register test_xml_escape_text_append as
13610         a selftest.
13611
13612 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13613
13614         * defs.h: Remove MAX_REGISTER_SIZE.
13615         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13616         asserts.
13617         * python/py-unwind.c (pyuw_sniffer): Likewise.
13618
13619 2018-03-07  Tom Tromey  <tom@tromey.com>
13620
13621         * linux-tdep.c (linux_info_proc): Update.
13622         * target.h (struct target_ops) <to_fileio_readlink>: Return
13623         optional<string>.
13624         (target_fileio_readlink): Return optional<string>.
13625         * remote.c (remote_hostio_readlink): Return optional<string>.
13626         * inf-child.c (inf_child_fileio_readlink): Return
13627         optional<string>.
13628         * target.c (target_fileio_readlink): Return optional<string>.
13629
13630 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13631
13632         * regcache.c (cooked_read_test): Add riscv to the list of
13633         architectures that have a save_reggroup.
13634
13635 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13636
13637         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13638         value is not a dynamic class object.
13639
13640 2018-03-06  Tom Tromey  <tom@tromey.com>
13641
13642         * rust-exp.y: Formatting fixes.
13643
13644 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13645
13646         * riscv-tdep.c (riscv_register_name): Remove target description
13647         support.
13648         (riscv_gdbarch_init): Remove target description check.
13649
13650 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13651
13652         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13653         comment.
13654         * riscv-tdep.h: Likewise.
13655
13656 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13657
13658         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13659         (riscv_pseudo_register_write): Delete.
13660         (riscv_gdbarch_init): Remove all use of pseudo registers.
13661
13662 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13663
13664         * record-btrace.c (btrace_print_lines): Replace cleanup
13665         parameter with RAII equivalents.
13666         (btrace_insn_history): Replace cleanup with RAII equivalents.
13667         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13668         make_cleanup_ui_out_tuple_begin_end): Remove.
13669         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13670         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13671         make_cleanup_ui_out_list_begin_end): Remove.
13672
13673 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13674
13675         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13676         parameter types to std::vector.  Use bool.
13677         (record_btrace_wait): Replace VEC(tp_t) with
13678         std::vector<thread_info *>.
13679         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13680
13681 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13682
13683         * record-btrace.c (record_btrace_disable_callback): Remove.
13684         (struct scoped_btrace_disable): New.
13685         (record_btrace_open): Use scoped_btrace_disable.
13686
13687 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13688
13689         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13690         reading values from registers.
13691
13692 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13693
13694         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13695         where appropriate.
13696
13697 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13698
13699         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13700         change parameter type.  Use GDB's print functions, and use
13701         core_addr_to_string where appropriate.
13702         (riscv_push_dummy_call): Use core_addr_to_string where
13703         appropriate, update call to riscv_print_arg_location, and reindent
13704         a few lines.
13705         (riscv_return_value): Update call to riscv_print_arg_location.
13706
13707 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13708             Tim Newsome <tim@sifive.com>
13709             Albert Ou <a0u@eecs.berkeley.edu>
13710             Darius Rad <darius@bluespec.com>
13711
13712         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13713         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13714         (ALLDEPFILES): Add riscv-tdep.c
13715         * configure.tgt: Add riscv support.
13716         * riscv-tdep.c: New file.
13717         * riscv-tdep.h: New file.
13718         * NEWS: Mention new target.
13719         * MAINTAINERS: Add entry for riscv.
13720
13721 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13722
13723         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13724         fields within aggregates.
13725
13726 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13727
13728         * record-btrace.c (btrace_print_lines): Change type of flags to
13729         gdb_disassembly_flags.
13730
13731 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13732
13733         * fbsd-nat.c: Include "inf-ptrace.h".
13734         (USE_SIGTRAP_SIGINFO): Conditionally define.
13735         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13736         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13737         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13738         function.
13739         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13740         Likewise.
13741         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13742         Likewise.
13743         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13744         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13745         "supports_stopped_by_hw_breakpoint" target methods.
13746
13747 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13748
13749         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13750         * fbsd-nat.c (debug_fbsd_nat): New variable.
13751         (show_fbsd_nat_debug): New function.
13752         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13753         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13754
13755 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13756
13757         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13758         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13759         prototype.
13760         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13761         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13762         method.
13763
13764 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13765
13766         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13767         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13768
13769 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13770
13771         * charset.c (struct charset_vector): New.
13772         (charsets): Change type to charset_vector.
13773         (find_charset_names): Adjust.
13774         (add_one): Adjust.
13775         (_initialize_charset): Adjust.
13776
13777 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13778
13779         * progspace.h (struct program_space) <deleted_solibs>: Change
13780         type to std::vector<std::string>.
13781         * progspace.c (clear_program_space_solib_cache): Adjust.
13782         * breakpoint.c (print_solib_event): Adjust.
13783         (check_status_catch_solib): Adjust.
13784         * solib.c (update_solib_list): Adjust.
13785         * ui-out.h (class ui_out) <field_string>: New overload.
13786         * ui-out.c (ui_out::field_string): New overload.
13787
13788 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13789
13790         * progspace.h (struct program_space): Add constructor and
13791         destructor, initialize fields.
13792         (add_program_space): Remove.
13793         * progspace.c (add_program_space): Rename to...
13794         (program_space::program_space): ... this.
13795         (release_program_space): Rename to...
13796         (program_space::~program_space): ... this.
13797         (delete_program_space): Use delete to delete program_space.
13798         (initialize_progspace): Use new to allocate program_space.
13799         * inferior.c (add_inferior_with_spaces): Likewise.
13800         (clone_inferior_command): Likewise.
13801         * infrun.c (follow_fork_inferior): Likewise.
13802         (handle_vfork_child_exec_or_exit): Likewise.
13803
13804 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13805
13806         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13807         (delim_string_to_char_ptr_vec): Return std::vector of
13808         gdb::unique_xmalloc_ptr.
13809         (dirnames_to_char_ptr_vec_append): Take std::vector of
13810         gdb::unique_xmalloc_ptr.
13811         (dirnames_to_char_ptr_vec): Return std::vector of
13812         gdb::unique_xmalloc_ptr.
13813         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13814         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13815         (delim_string_to_char_ptr_vec): Return an std::vector of
13816         gdb::unique_xmalloc_ptr, adjust the code.
13817         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13818         gdb::unique_xmalloc_ptr, adjust the code.
13819         (dirnames_to_char_ptr_vec): Return an std::vector of
13820         gdb::unique_xmalloc_ptr, adjust the code.
13821         * auto-load.c (auto_load_safe_path_vec): Change type to
13822         std::vector of gdb::unique_xmalloc_ptr.
13823         (auto_load_expand_dir_vars): Return an std::vector of
13824         gdb::unique_xmalloc_ptr, adjust the code.
13825         (auto_load_safe_path_vec_update): Adjust.
13826         (filename_is_in_auto_load_safe_path_vec): Adjust.
13827         (auto_load_objfile_script_1): Adjust.
13828         * build-id.c (build_id_to_debug_bfd): Adjust.
13829         * linux-thread-db.c (thread_db_load_search): Adjust.
13830         * source.c (add_path): Adjust.
13831         (openp): Adjust.
13832         * symfile.c (find_separate_debug_file): Adjust.
13833         * utils.c (do_free_char_ptr_vec): Remove.
13834         (make_cleanup_free_char_ptr_vec): Remove.
13835
13836 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13837
13838         PR gdb/22907
13839         * common/pathstuff.c: Conditionally include "<windows.h>".
13840
13841 2018-03-01  Georg Sauthoff  <mail@georg.so>
13842
13843         PR gdb/22888
13844         * gcore.in: Quote variables and switch interpreter to bash.
13845
13846 2018-03-01  Tom Tromey  <tom@tromey.com>
13847
13848         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13849         assertion.  Add assertion for discriminant_index.
13850         (quirk_rust_enum): Use correct base type name in univariant case.
13851
13852 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13853
13854         * record.c (get_call_history_modifiers): Return a
13855         record_print_flags.
13856         (cmd_record_call_history): Adjust.
13857         * record-btrace.c (record_btrace_call_history): Adjust.
13858         (record_btrace_call_history_range): Adjust.
13859         (record_btrace_call_history_from): Adjust.
13860         * target-debug.h (target_debug_print_record_print_flags): New.
13861         * target-delegates.c: Re-generate.
13862         * target.c (target_call_history): Change flags type.
13863         (target_call_history_from): Likewise.
13864         (target_call_history_range): Likewise.
13865         * target.h (struct target_ops) <target_call_history>: Likewise.
13866         (target_call_history_from): Likewise.
13867         (target_call_history_range): Likewise.
13868
13869 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13870             Simon Marchi  <simon.marchi@polymtl.ca>
13871
13872         * common/common-utils.c: Include "sys/stat.h".
13873         (is_regular_file): Move here from "source.c"; change return
13874         type to "bool".
13875         * common/common-utils.h (is_regular_file): New prototype.
13876         * common/pathstuff.c (contains_dir_separator): New function.
13877         * common/pathstuff.h (contains_dir_separator): New prototype.
13878         * source.c: Don't include "sys/stat.h".
13879         (is_regular_file): Move to "common/common-utils.c".
13880
13881 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13882
13883         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13884         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13885         * auto-load.c: Include "common/pathstuff.h".
13886         * common/common-def.h (current_directory): Move here.
13887         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13888         function.
13889         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13890         prototype.
13891         * common/pathstuff.c: New file.
13892         * common/pathstuff.h: New file.
13893         * compile/compile.c: Include "common/pathstuff.h".
13894         * defs.h (current_directory): Move to "common/common-defs.h".
13895         * dwarf2read.c: Include "common/pathstuff.h".
13896         * exec.c: Likewise.
13897         * guile/scm-safe-call.c: Likewise.
13898         * linux-thread-db.c: Likewise.
13899         * main.c: Likewise.
13900         * nto-tdep.c: Likewise.
13901         * objfiles.c: Likewise.
13902         * source.c: Likewise.
13903         * symtab.c: Likewise.
13904         * utils.c: Include "common/pathstuff.h".
13905         (gdb_realpath): Move to "common/pathstuff.c".
13906         (gdb_realpath_keepfile): Likewise.
13907         (gdb_abspath): Likewise.
13908         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13909         (gdb_realpath_keepfile): Likewise.
13910         (gdb_abspath): Likewise.
13911
13912 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13913
13914         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13915         wildcard process pid for super_resume for kernels with a
13916         specific bug.
13917
13918 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13919
13920         * compile/compile.c (get_args): Add additional comments
13921         explaining function.
13922
13923 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13924             Tom Tromey  <tom@tromey.com>
13925
13926         * target.h (memory_write_request_s): Remove typedef.  Don't define
13927         VEC.
13928         (target_write_memory_blocks): Change argument to std::vector.
13929         (struct memory_write_request): Add constructor.
13930         * target-memory.c (compare_block_starting_address): Return bool.
13931         Change argument types.
13932         (claim_memory): Change arguments to use std::vector.
13933         (split_regular_and_flash_blocks, blocks_to_erase)
13934         (compute_garbled_blocks): Likewise.
13935         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13936         (target_write_memory_blocks): Change argument to std::vector.
13937         * symfile.c (struct load_section_data): Add constructor and
13938         destructor.  Use std::vector for "requests".
13939         (struct load_progress_data): Add initializers.
13940         (load_section_callback): Update.  Use "new".
13941         (clear_memory_write_data): Remove.
13942         (generic_load): Update.
13943
13944 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13945
13946         * arch/aarch64.h: Use common/tdesc.h.
13947
13948 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13949
13950         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13951         architecture with a 64-bit ABI.
13952
13953 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13954
13955         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13956         ahead of target description loading.
13957
13958 2018-02-26  Tom Tromey  <tom@tromey.com>
13959
13960         * stack.c (backtrace_command_1): Update.
13961         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13962         of "flags".
13963         * python/py-framefilter.c (py_print_frame)
13964         (gdbpy_apply_frame_filter): Change type of "flags".
13965         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13966         of "flags".
13967         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13968         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13969         * extension.h (enum frame_filter_flag): Rename from
13970         frame_filter_flags.
13971         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13972         (apply_ext_lang_frame_filter): Change type of "flags".
13973         * extension.c (apply_ext_lang_frame_filter): Change type of
13974         "flags".
13975         * extension-priv.h (struct extension_language_ops)
13976         <apply_frame_filter>: Change type of "flags".
13977
13978 2018-02-26  Tom Tromey  <tom@tromey.com>
13979
13980         PR python/16497:
13981         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13982         off-by-one in py_end computation.
13983         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13984         PRINT_MORE_FRAMES.
13985         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13986         constant.
13987
13988 2018-02-26  Tom Tromey  <tom@tromey.com>
13989
13990         * dwarf2read.c (struct variant_field): New.
13991         (struct nextfield) <variant>: New field.
13992         (dwarf2_add_field): Handle DW_TAG_variant_part.
13993         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13994         discriminated union.
13995         (read_structure_type): Handle DW_TAG_variant_part.
13996         (handle_struct_member_die): New function, extracted from
13997         process_structure_scope.  Handle DW_TAG_variant.
13998         (process_structure_scope): Handle discriminated unions.  Call
13999         handle_struct_member_die.
14000
14001 2018-02-26  Tom Tromey  <tom@tromey.com>
14002
14003         * rust-lang.h (rust_last_path_segment): Declare.
14004         * rust-lang.c (rust_last_path_segment): Now public.  Change
14005         contract.
14006         (struct disr_info): Remove.
14007         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14008         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14009         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14010         (rust_enum_p, rust_enum_variant): New function.
14011         (rust_underscore_fields): Remove "offset" parameter.
14012         (rust_print_enum): New function.
14013         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14014         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14015         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14016         enums.
14017         (rust_internal_print_type): New function, from rust_print_type.
14018         Remove enum code.
14019         (rust_print_type): Call rust_internal_print_type.
14020         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14021         Update enum handling.
14022         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14023         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14024         (rust_union_quirks): New functions.
14025         (process_full_comp_unit, process_full_type_unit): Call
14026         rust_union_quirks.
14027         (process_structure_scope): Update rust_unions if necessary.
14028
14029 2018-02-26  Tom Tromey  <tom@tromey.com>
14030
14031         * value.h (value_union_variant): Declare.
14032         * valops.c (value_union_variant): New function.
14033         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14034         (struct discriminant_info): New.
14035         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14036         enumerator.
14037         (struct main_type) <flag_discriminated_union>: New field.
14038
14039 2018-02-26  Tom Tromey  <tom@tromey.com>
14040
14041         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14042         unittests/unpack-selftests.c.
14043         * unittests/unpack-selftests.c: New file.
14044         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14045
14046 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14047
14048         * dwarf2read.c (struct partial_die_info) <read>: New method.
14049         (read_partial_die): Remove the declaration.
14050         (load_partial_dies): Update.
14051         (partial_die_info::partial_die_info):
14052         (read_partial_die): Change it to partial_die_info::read.
14053
14054 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14055
14056         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14057         (fixup_partial_die): Remove declaration.
14058         (scan_partial_symbols): Update.
14059         (partial_die_parent_scope): Likewise.
14060         (partial_die_full_name): Likewise.
14061         (fixup_partial_die): Change it to partial_die_info::fixup.
14062
14063 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14064
14065         * dwarf2read.c (read_partial_die): Update the declaration.
14066         (load_partial_dies): Caller update.
14067         (read_partial_die): Remove one argument abbrev_len.
14068
14069 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14070
14071         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14072         assignment operator.
14073         (load_partial_dies): Use ctor and copy ctor.
14074         (read_partial_die): Update.
14075         (dwarf2_cu::find_partial_die): Use ctor.
14076
14077 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14078
14079         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14080         (find_partial_die_in_comp_unit): Change it to
14081         dwarf2_cu::find_partial_die.
14082         (find_partial_die): Update.
14083
14084 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14085
14086         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14087         is NULL.
14088
14089 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14090
14091         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14092
14093 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14094
14095         * arch/amd64.h: Use common/tdesc.h.
14096         * arch/i386.c: Likewise.
14097         * arch/i386.h: Likewise.
14098         * arch/tic6x.c: Likewise.
14099         * arch/tdesc.h: Move file from here...
14100         * common/tdesc.h: ...to here.
14101         * features/aarch64-core.c: Regenerate.
14102         * features/aarch64-fpu.c: Regenerate.
14103         * features/i386/32bit-avx.c: Regenerate.
14104         * features/i386/32bit-avx512.c: Regenerate.
14105         * features/i386/32bit-core.c: Regenerate.
14106         * features/i386/32bit-linux.c: Regenerate.
14107         * features/i386/32bit-mpx.c: Regenerate.
14108         * features/i386/32bit-pkeys.c: Regenerate.
14109         * features/i386/32bit-sse.c: Regenerate.
14110         * features/i386/64bit-avx.c: Regenerate.
14111         * features/i386/64bit-avx512.c: Regenerate.
14112         * features/i386/64bit-core.c: Regenerate.
14113         * features/i386/64bit-linux.c: Regenerate.
14114         * features/i386/64bit-mpx.c: Regenerate.
14115         * features/i386/64bit-pkeys.c: Regenerate.
14116         * features/i386/64bit-segments.c: Regenerate.
14117         * features/i386/64bit-sse.c: Regenerate.
14118         * features/i386/x32-core.c: Regenerate.
14119         * features/tic6x-c6xp.c: Regenerate.
14120         * features/tic6x-core.c: Regenerate.
14121         * features/tic6x-gp.c: Regenerate.
14122         * target-descriptions.c: Use common/tdesc.h.
14123         * target-descriptions.h: Likewise.
14124
14125 2018-02-24  Tom Tromey  <tom@tromey.com>
14126
14127         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14128         (try_thread_db_load_from_dir, thread_db_load_search): Use
14129         std::string.
14130         (info_auto_load_libthread_db_compare): Return bool.  Change
14131         argument types.
14132         (info_auto_load_libthread_db): Use std::vector, std::string.
14133         Remove cleanups.
14134
14135 2018-02-24  Tom Tromey  <tom@tromey.com>
14136
14137         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14138         std::string.
14139         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14140         std::string*.
14141         * gdbarch.c: Rebuild.
14142         * gdbarch.h: Rebuild.
14143         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14144         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14145         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14146         std::string*.
14147
14148 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14149
14150         * gdbtypes.h (sect_offset): Change type to uint64_t.
14151         (sect_offset_str): New function.
14152         * dwarf2read.c (create_addrmap_from_aranges): Use
14153         sect_offset_str.
14154         (error_check_comp_unit_head): Likewise.
14155         (create_debug_type_hash_table): Likewise.
14156         (read_cutu_die_from_dwo): Likewise.
14157         (init_cutu_and_read_dies): Likewise.
14158         (init_cutu_and_read_dies_no_follow): Likewise.
14159         (process_psymtab_comp_unit_reader): Likewise.
14160         (partial_die_parent_scope): Likewise.
14161         (peek_die_abbrev): Likewise.
14162         (process_queue): Likewise.
14163         (dwarf2_physname): Likewise.
14164         (read_namespace_alias): Likewise.
14165         (read_import_statement): Likewise.
14166         (create_dwo_cu_reader): Likewise.
14167         (create_cus_hash_table): Likewise.
14168         (lookup_dwo_cutu): Likewise.
14169         (inherit_abstract_dies): Likewise.
14170         (read_func_scope): Likewise.
14171         (read_call_site_scope): Likewise.
14172         (dwarf2_add_member_fn): Likewise.
14173         (read_common_block): Likewise.
14174         (read_module_type): Likewise.
14175         (read_typedef): Likewise.
14176         (read_subrange_type): Likewise.
14177         (load_partial_dies): Likewise.
14178         (read_partial_die): Likewise.
14179         (find_partial_die): Likewise.
14180         (read_str_index): Likewise.
14181         (dwarf2_string_attr): Likewise.
14182         (build_error_marker_type): Likewise.
14183         (lookup_die_type): Likewise.
14184         (dump_die_shallow): Likewise.
14185         (follow_die_ref): Likewise.
14186         (dwarf2_fetch_die_loc_sect_off): Likewise.
14187         (dwarf2_fetch_constant_bytes): Likewise.
14188         (follow_die_sig): Likewise.
14189         (get_signatured_type): Likewise.
14190         (get_DW_AT_signature_type): Likewise.
14191         (dwarf2_find_containing_comp_unit): Likewise.
14192         (set_die_type): Likewise.
14193
14194 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14195
14196         * arch/aarch64.c: Include "common-defs.h".
14197         * arch/amd64.c: Likewise.
14198         * arch/i386.c: Likewise.
14199
14200 2018-02-21  Tom Tromey  <tom@tromey.com>
14201
14202         * value.h: (extract_field_op): Update.
14203         * eval.c (extract_field_op): Return a const char *.
14204         * expression.h (parse_expression_for_completion): Update.
14205         * completer.c (complete_expression): Update.
14206         (add_struct_fields): Make fieldname const.
14207         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14208         (mark_completion_tag, parse_exp_in_context_1): Update.
14209         (parse_expression_for_completion): Change "name" to
14210         unique_xmalloc_ptr*.
14211
14212 2018-02-21  Tom Tromey  <tom@tromey.com>
14213
14214         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14215
14216 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14217
14218         * avr-tdep.c (avr_read_pc): Change parameter type to
14219         readable_regcache.
14220         * gdbarch.sh (read_pc): Likewise.
14221         * gdbarch.c: Re-generated.
14222         * gdbarch.h: Re-generated.
14223         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14224         readable_regcache.
14225         * ia64-tdep.c (ia64_read_pc): Likewise.
14226         * mips-tdep.c (mips_read_pc): Likewise.
14227         * spu-tdep.c (spu_read_pc): Likewise.
14228
14229 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14230
14231         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14232         * regcache-dump.c: New file.
14233         * regcache.c: Move register_dump to regcache-dump.c.
14234         (maintenance_print_registers): Likewise.
14235         (maintenance_print_raw_registers): Likewise.
14236         (maintenance_print_cooked_registers): Likewise.
14237         (maintenance_print_register_groups): Likewise.
14238         (maintenance_print_remote_registers): Likewise.
14239         (_initialize_regcache): Likewise.
14240         * regcache.h (register_dump): Moved from regcache.c.
14241
14242 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14243
14244         * regcache.c (regcache::regcache): Update.
14245         (regcache::invalidate): Move it to detached_regcache::invalidate.
14246         (get_thread_arch_aspace_regcache): Update.
14247         (regcache::raw_update): Update.
14248         (regcache::cooked_read): Remove some code.
14249         (regcache::cooked_read_value): Likewise.
14250         (regcache::raw_write): Remove assert on m_readonly_p.
14251         (regcache::raw_supply_integer): Move it to
14252         detached_regcache::raw_supply_integer.
14253         (regcache::raw_supply_zeroed): Likewise.
14254         * regcache.h (detached_regcache) <raw_supply_integer>: New
14255         declaration.
14256         <raw_supply_zeroed, invalidate>: Likewise.
14257         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14258         <invalidate>: Likewise.
14259         <m_readonly_p>: Removed.
14260
14261 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14262
14263         * infcmd.c (get_return_value): Let stop_regs point to
14264         get_current_regcache.
14265         * regcache.c (regcache::regcache): Remove.
14266         (register_dump_reg_buffer): New class.
14267         (regcache_print): Adjust.
14268         * regcache.h (regcache): Remove constructors.
14269
14270 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14271
14272         * regcache.c (class register_dump): New class.
14273         (register_dump_regcache, register_dump_none): New class.
14274         (register_dump_remote, register_dump_groups): New class.
14275         (regcache_print): Update.
14276         * regcache.h (regcache_dump_what): Move it to regcache.c.
14277         (regcache) <dump>: Remove.
14278
14279 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14280
14281         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14282          reg_buffer_rw *.
14283         (jit_unwind_reg_set_impl): Call raw_supply.
14284         (jit_frame_sniffer): Use reg_buffer_rw.
14285         * record-full.c (record_full_core_regbuf): Change its type.
14286         (record_full_core_open_1): Use reg_buffer_rw.
14287         (record_full_close): Likewise.
14288         (record_full_core_fetch_registers): Use regcache->raw_supply.
14289         (record_full_core_store_registers): Likewise.
14290         * regcache.c (regcache::get_register_status): Move it to
14291         reg_buffer.
14292         (regcache_raw_set_cached_value): Remove.
14293         (regcache::raw_set_cached_value): Remove.
14294         (regcache::raw_write): Call raw_supply.
14295         (regcache::raw_supply): Move it to reg_buffer_rw.
14296         * regcache.h (regcache_raw_set_cached_value): Remove.
14297         (reg_buffer_rw): New class.
14298
14299 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14300
14301         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14302         readonly_detached_regcache.
14303         (dummy_frame_prev_register): Use regcache->cooked_read.
14304         * frame.c (frame_save_as_regcache): Change return type.
14305         (frame_pop): Update.
14306         * frame.h (frame_save_as_regcache): Update declaration.
14307         * inferior.h (get_infcall_suspend_state_regcache): Update
14308         declaration.
14309         * infrun.c (infcall_suspend_state) <registers>: use
14310         readonly_detached_regcache.
14311         (save_infcall_suspend_state): Don't use regcache_dup.
14312         (get_infcall_suspend_state_regcache): Change return type.
14313         * linux-fork.c (struct fork_info) <savedregs>: Change to
14314         readonly_detached_regcache.
14315         <pc>: New field.
14316         (fork_save_infrun_state): Don't use regcache_dup.
14317         (info_checkpoints_command): Adjust.
14318         * mi/mi-main.c (register_changed_p): Update declaration.
14319         (mi_cmd_data_list_changed_registers): Use
14320         readonly_detached_regcache.
14321         (register_changed_p): Change parameter type to
14322         readonly_detached_regcache.
14323         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14324         readonly_detached_regcache.
14325         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14326         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14327         New.
14328         (regcache::save): Move it to reg_buffer.
14329         (regcache::restore): Change parameter type.
14330         (regcache_dup): Remove.
14331         * regcache.h (reg_buffer) <save>: New method.
14332         (readonly_detached_regcache): New class.
14333         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14334         readonly_detached_regcache.
14335         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14336
14337 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14338
14339         * frame.c (frame_save_as_regcache): Use regcache method save.
14340         (frame_pop): Use regcache method restore.
14341         * infrun.c (restore_infcall_suspend_state): Likewise.
14342         * linux-fork.c (fork_load_infrun_state): Likewise.
14343         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14344         save.
14345         * regcache.c (regcache_save): Remove.
14346         (regcache::restore): More asserts.
14347         (regcache_cpy): Remove.
14348         * regcache.h (regcache_save): Remove the declaration.
14349         (regcache::restore): Move from private to public.
14350         Remove the friend declaration of regcache_cpy.
14351         (regcache_cpy): Remove declaration.
14352
14353 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14354
14355         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14356         parameter type to 'readable_regcache *'.
14357         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14358         * arm-tdep.c (arm_neon_quad_read): Likewise.
14359         (arm_pseudo_read): Likewise.
14360         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14361         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14362         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14363         * gdbarch.c: Re-generated.
14364         * gdbarch.h: Re-generated.
14365         * gdbarch.sh (pseudo_register_read): Change parameter type to
14366         'readable_regcache *'.
14367         (pseudo_register_read_value): Likewise.
14368         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14369         (h8300_pseudo_register_read): Likewise.
14370         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14371         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14372         (i386_pseudo_register_read_into_value): Likewise.
14373         (i386_pseudo_register_read_value): Likewise.
14374         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14375         declaration.
14376         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14377         * m32c-tdep.c (m32c_raw_read): Likewise.
14378         (m32c_read_flg): Likewise.
14379         (m32c_banked_register): Likewise.
14380         (m32c_banked_read): Likewise.
14381         (m32c_sb_read): Likewise.
14382         (m32c_part_read): Likewise.
14383         (m32c_cat_read): Likewise.
14384         (m32c_r3r2r1r0_read): Likewise.
14385         (m32c_pseudo_register_read): Likewise.
14386         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14387         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14388         (mep_pseudo_cr64_read): Likewise.
14389         (mep_pseudo_register_read): Likewise.
14390         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14391         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14392         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14393         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14394         (regcache::cooked_read): Likewise.
14395         (regcache::cooked_read_value): Likewise.
14396         (regcache_cooked_read_signed):
14397         (regcache::cooked_read): Likewise.
14398         * regcache.h (readable_regcache): New class.
14399         (regcache): Inherit readable_regcache.  Move some methods to
14400         readable_regcache.
14401         * rl78-tdep.c (rl78_pseudo_register_read): Change
14402         parameter type to 'readable_regcache *'.
14403         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14404         (e500_pseudo_register_read): Change parameter type to
14405         'readable_regcache *'.
14406         (dfp_pseudo_register_read): Likewise.
14407         (vsx_pseudo_register_read): Likewise.
14408         (efpr_pseudo_register_read): Likewise.
14409         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14410         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14411         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14412         (sh64_pseudo_register_read): Likewise.
14413         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14414         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14415         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14416         (spu_pseudo_register_read): Likewise.
14417         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14418         (xtensa_pseudo_register_read): Likewise.
14419
14420 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14421
14422         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14423         (regcache::arch): Move it to reg_buffer::arch.
14424         (regcache::register_buffer): Likewise.
14425         (regcache::assert_regnum): Likewise.
14426         (regcache::num_raw_registers): Likewise.
14427         * regcache.h (reg_buffer): New class.
14428         (regcache): Inherit reg_buffer.
14429
14430 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14431
14432         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14433         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14434
14435 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14436
14437         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14438
14439 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14440
14441         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14442         (SFILES): Remove common/*.c files.
14443         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14444         * common/common.host: Add common reference.
14445         * configure.ac: Likewise.
14446         * configure: Regenerate.
14447
14448 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14449
14450         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14451         (block_initialize_namespace): Use new.
14452         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14453         (dwarf2_free_objfile): Use delete.
14454         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14455         (copy_type_recursive): Use new.
14456         * gdb_obstack.h (allocate_on_obstack): New.
14457
14458 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14459
14460         PR gdb/22849
14461         * inferior.c (exit_inferior_1): Reset inf->control.
14462
14463 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14464
14465         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14466         declaration.
14467
14468 2018-02-14  Pedro Alves  <palves@redhat.com>
14469
14470         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14471         frame_cleanup_after_sniffer on exception.
14472
14473 2018-02-14  Tom Tromey  <tom@tromey.com>
14474
14475         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14476         const.
14477         (solib_bfd_open): Make pathname const.
14478         * solib.c (solib_bfd_open): Make pathname const.
14479         * solib-spu.c (spu_bfd_fopen): Make name const.
14480         (spu_bfd_open): Make pathname const.
14481         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14482         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14483
14484 2018-02-14  Tom Tromey  <tom@tromey.com>
14485
14486         * symfile.c (symfile_bfd_open): Update.
14487         * source.h (openp, source_full_path_of, find_and_open_source):
14488         Change argument type to unique_xmalloc_ptr.
14489         * source.c (openp): Take a unique_xmalloc_ptr.
14490         (source_full_path_of, find_and_open_source): Likewise.
14491         (open_source_file, symtab_to_fullname): Update.
14492         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14493         unique_xmalloc_ptr.
14494         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14495         (exec_file_find): Update.
14496         * psymtab.c (psymtab_to_fullname): Update.
14497         * nto-tdep.h (nto_find_and_open_solib): Update.
14498         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14499         unique_xmalloc_ptr.
14500         * exec.c (exec_file_attach): Update.
14501         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14502         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14503
14504 2018-02-14  Tom Tromey  <tom@tromey.com>
14505
14506         * solib.c: Include source.h.
14507         * nto-tdep.c: Include source.h.
14508         * mi/mi-cmd-env.c: Include source.h.
14509         * infcmd.c: Include source.h.
14510         * exec.c: Include source.h.
14511         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14512         (add_path, directory_switch, source_path, init_source_path): Move
14513         declarations...
14514         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14515         (add_path, directory_switch, source_path, init_source_path):
14516         ...here.
14517
14518 2018-02-14  Tom Tromey  <tom@tromey.com>
14519
14520         * solist.h (exec_file_find, solib_find): Return
14521         unique_xmalloc_ptr.
14522         (solib_bfd_fopen): Take a const char *.
14523         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14524         (exec_file_find, solib_find): Likewise.
14525         (solib_bfd_fopen): Do not take ownership of "pathname".
14526         (solib_bfd_open): Use unique_xmalloc_ptr.
14527         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14528         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14529         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14530         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14531
14532 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14533
14534         * ada-lang.c (name_match_type_from_name): Remove reference to
14535         ada_name_for_lookup in function's documentation.
14536         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14537
14538 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14539
14540         * defs.h (enum openp_flags): New enum.
14541         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14542         Move to enum openp_flags.
14543         (openp_flags): New enum flags.
14544         (openp): Change parameter type to openp_flags.
14545         * source.c (openp): Change parameter type to openp_flags.
14546         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14547         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14548
14549 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14550
14551         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14552         per-command.
14553
14554 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14555
14556         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14557         into...
14558         (class dwarf2_queue_guard): ...the destructor of this new class.
14559         (dw2_do_instantiate_symtab): Create instance of the new class
14560         dwarf2_queue_guard, remove cleanup.
14561
14562 2018-02-09  Tom Tromey  <tom@tromey.com>
14563
14564         * source.c (find_source_lines): Don't reference past the end of
14565         the vector.
14566
14567 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14568
14569         * remote.c (remote_btrace_maybe_reopen): Change error message.
14570         * btrace.c (btrace_enable): Likewise.
14571         (parse_xml_btrace): Likewise.
14572         (parse_xml_btrace_conf): Likewise.
14573
14574 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14575
14576         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14577         (linux_enable_pt, linux_enable_bts): Call
14578         diagnose_perf_event_open_fail.
14579
14580 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14581
14582         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14583         Remove parameter and change return type.  Update callers.  Move it.
14584         (linux_enable_bts, linux_enable_pt): Improve error message.
14585         (linux_enable_pt): Remove zero buffer size check.
14586         (linux_enable_btrace): Improve error messages.  Remove NULL return
14587         check.
14588
14589 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14590
14591         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14592         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14593         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14594         (linux_supports_pt, linux_supports_btrace): Remove.
14595         (linux_enable_bts): Call cpu_supports_bts.
14596         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14597         * remote.c (remote_supports_btrace): Remove.
14598         (init_remote_ops): Remove remote_supports_btrace.
14599         * target-delegates.c: Regenerated.
14600         * target.c (target_supports_btrace): Remove.
14601         * target.h (target_ops) <to_supports_btrace>: Remove
14602         (target_supports_btrace): Remove.
14603         * x86-linux-nat.c (x86_linux_create_target): Remove
14604         linux_supports_btrace.
14605
14606 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14607
14608         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14609         btrace failed.
14610         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14611         exception and use message in own exception.
14612
14613 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14614
14615         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14616         (perf_event_pt_event_type): Use gdb_file_up.
14617         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14618         scoped_fd, and scoped_mmap.
14619
14620 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14621
14622         * common/scoped_mmap.h: New.
14623         * unittests/scoped_mmap-selftest.c: New.
14624         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14625         unittests/scoped_mmap-selftest.c.
14626
14627 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14628
14629         * common/scoped_fd.h: New.
14630         * unittests/scoped_fd-selftest.c: New.
14631         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14632         unittests/scoped_fd-selftest.c.
14633
14634 2018-02-09  Tom Tromey  <tom@tromey.com>
14635
14636         * auto-load.c (auto_load_section_scripts): Use
14637         gdb::unique_xmalloc_ptr.
14638
14639 2018-02-09  Tom Tromey  <tom@tromey.com>
14640
14641         * auto-load.c (execute_script_contents): Use std::string.
14642
14643 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14644
14645         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14646         Python function, rather than a new command.
14647
14648 2018-02-08  Tom Tromey  <tom@tromey.com>
14649
14650         * solib.c (solib_find_1): Use std::string.
14651         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14652
14653 2018-02-08  Tom Tromey  <tom@tromey.com>
14654
14655         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14656
14657 2018-02-08  Tom Tromey  <tom@tromey.com>
14658
14659         * source.c (find_source_lines): Use gdb::def_vector.
14660
14661 2018-02-08  Tom Tromey  <tom@tromey.com>
14662
14663         * macrocmd.c (struct temporary_macro_definition): New.
14664         (macro_define_command): Use temporary_macro_definition.  Remove
14665         cleanups.
14666         (free_macro_definition_ptr): Remove.
14667
14668 2018-02-08  Tom Tromey  <tom@tromey.com>
14669
14670         * macroexp.c (maybe_expand): Use std::string.
14671
14672 2018-02-08  Tom Tromey  <tom@tromey.com>
14673
14674         * macroexp.c (struct macro_buffer): Add initializers for some
14675         members.
14676         (init_buffer, init_shared_buffer, free_buffer)
14677         (free_buffer_return_text): Remove.
14678         (macro_buffer): New constructors.
14679         (~macro_buffer): New destructor.
14680         (macro_buffer::set_shared): New method.
14681         (macro_buffer::resize_buffer, macro_buffer::appendc)
14682         (macro_buffer::appendmem): Now methods, not free functions.
14683         (set_token, append_tokens_without_splicing, stringify)
14684         (macro_stringify): Update.
14685         (gather_arguments): Change return type.  Remove argc_p argument,
14686         add args_ptr argument.  Use std::vector.
14687         (substitute_args): Remove argc argument.  Accept std::vector.
14688         (expand): Update.  Use std::vector.
14689         (scan, macro_expand, macro_expand_next): Update.
14690
14691 2018-02-08  Tom Tromey  <tom@tromey.com>
14692
14693         * symtab.c (default_collect_symbol_completion_matches_break_on):
14694         Use unique_xmalloc_ptr.
14695         * macroscope.h: (sal_macro_scope, user_macro_scope)
14696         (default_macro_scope): Return unique_xmalloc_ptr.
14697         * macroscope.c (sal_macro_scope, user_macro_scope)
14698         (default_macro_scope): Return unique_xmalloc_ptr.
14699         * macroexp.h (macro_expand, macro_expand_once): Return
14700         unique_xmalloc_ptr.
14701         * macroexp.c (macro_expand, macro_expand_once): Return
14702         unique_xmalloc_ptr.
14703         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14704         (info_macro_command, info_macros_command): Use
14705         unique_xmalloc_ptr.
14706         * compile/compile-c-support.c (write_macro_definitions): Use
14707         unique_xmalloc_ptr.
14708         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14709
14710 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14711
14712         * value.c (value_static_field): Assign field type instead of
14713         containing type when returning an optimized out value.
14714
14715 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14716
14717         * ft32-tdep.c (ft32_read_pc): Remove.
14718         (ft32_write_pc): Remove.
14719         (ft32_gdbarch_init): Update.
14720         * m32r-tdep.c (m32r_read_pc): Remove.
14721         (m32r_gdbarch_init): Update.
14722         * mep-tdep.c (mep_read_pc): Remove.
14723         (mep_gdbarch_init): Update.
14724         * microblaze-tdep.c (microblaze_write_pc): Remove.
14725         (microblaze_gdbarch_init): Update.
14726         * mn10300-tdep.c (mn10300_read_pc): Remove.
14727         (mn10300_write_pc): Remove.
14728         (mn10300_gdbarch_init): Update.
14729         * moxie-tdep.c (moxie_read_pc): Remove.
14730         (moxie_write_pc): Remove.
14731         (moxie_gdbarch_init): Update.
14732
14733 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14734
14735         * expprint.c (print_subexp_standard): Handle
14736         OP_F77_UNDETERMINED_ARGLIST.
14737         (dump_subexp_body_standard): Likewise.
14738
14739 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14740
14741         * target-descriptions.c (tdesc_element_visitor) Add empty
14742         implementations.
14743         (tdesc_type): Move make_gdb_type from here.
14744         (tdesc_type_builtin): Likewise.
14745         (tdesc_type_vector): Likewise.
14746         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14747         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14748         (make_gdb_type_union): Likewise.
14749         (make_gdb_type_flags): Likewise.
14750         (make_gdb_type_enum): Likewise.
14751         (make_gdb_type): New function.
14752         (tdesc_register_type): Use static make_gdb_type.
14753
14754 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14755
14756         * infcmd.c (default_print_one_register_info): Align natural-format
14757         column values consistently one under another.
14758         (pad_to_column): New function.
14759
14760 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14761
14762         * dwarf2read.c (dwarf2_physname): Move commment.
14763
14764 2018-02-01  Leszek Swirski  <leszeks@google.com>
14765
14766         * varobj.c (varobj_formatted_print_options): Allow recursive
14767         pretty printing if pretty printing is enabled.
14768
14769 2018-02-01  Leszek Swirski  <leszeks@google.com>
14770
14771         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14772         names after a structop as a filename.
14773
14774 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14775
14776         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14777         (arm_record_coproc_data_proc): Likewise.
14778
14779 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14780
14781         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14782
14783 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14784
14785         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14786         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14787
14788 2018-01-31  Pedro Alves  <palves@redhat.com>
14789
14790         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14791         * inflow.c (child_terminal_save_inferior): Wrap reference to
14792         tcgetpgrp in HAVE_TERMIOS_H.
14793         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14794         _WIN32.
14795         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14796         always iterate over all inferiors.
14797         (gdbsim_cntrl_c): Adjust.
14798         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14799
14800 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14801
14802         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14803         index type is objfile-owned if the element type is as well.
14804
14805 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14806
14807         GDB 8.1 released.
14808
14809 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14810
14811         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14812         "features/s390x-linux64.c".
14813         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14814         s390_linux32 and s390x_linux64.
14815         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14816         default tdesc.
14817         * s390-tdep.c: Include "features/s390-linux32.c" and
14818         "features/s390x-linux64.c".
14819         (s390_tdesc_valid): Add check for tdesc_has_registers.
14820         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14821         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14822         tdesc_s390x_linux64.
14823         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14824         tdesc_s390x_linux64 to...
14825         * s390-tdep.h: ...here.
14826
14827 2018-01-30  Pedro Alves  <palves@redhat.com>
14828
14829         PR gdb/13211
14830         * config.in, configure: Regenerate.
14831         * configure.ac: Check for getpgid.
14832         * go32-nat.c (go32_pass_ctrlc): New.
14833         (go32_target): Install it.
14834         * inf-child.c (inf_child_target): Install
14835         child_terminal_save_inferior, child_pass_ctrlc and
14836         child_interrupt.
14837         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14838         (inf_ptrace_target): No longer install it.
14839         * infcmd.c (interrupt_target_1): Adjust.
14840         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14841         (child_interrupt): Declare.
14842         (inferior::terminal_state): New.
14843         * inflow.c (struct terminal_info): Update comments.
14844         (inferior_process_group): Delete.
14845         (terminal_is_ours): Delete.
14846         (gdb_tty_state): New.
14847         (child_terminal_init): Adjust.
14848         (is_gdb_terminal, sharing_input_terminal_1)
14849         (sharing_input_terminal): New functions.
14850         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14851         Set the process's actual process group in the foreground if
14852         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14853         mark terminal as the inferior's if not sharing GDB's terminal.
14854         Don't check attach_flag.
14855         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14856         pass down a target_terminal_state.
14857         (child_terminal_save_inferior): New, factored out from ...
14858         (child_terminal_ours_1): ... this.  Handle
14859         target_terminal_state::is_ours_for_output.
14860         (child_interrupt, child_pass_ctrlc): New.
14861         (inflow_inferior_exit): Clear the inferior's terminal_state.
14862         (copy_terminal_info): Copy the inferior's terminal state.
14863         (_initialize_inflow): Remove reference to terminal_is_ours.
14864         * inflow.h (inferior_process_group): Delete.
14865         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14866         * procfs.c (procfs_target): Don't install procfs_interrupt.
14867         (procfs_interrupt): Delete.
14868         * remote.c (remote_serial_quit_handler): Adjust.
14869         (remote_interrupt): Remove ptid parameter.  Adjust.
14870         * target-delegates.c: Regenerate.
14871         * target.c: Include "terminal.h".
14872         (target_terminal::terminal_state): Rename to ...
14873         (target_terminal::m_terminal_state): ... this.
14874         (target_terminal::init): Adjust.
14875         (target_terminal::inferior): Adjust to per-inferior
14876         terminal_state.
14877         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14878         (target_terminal::ours, target_terminal::ours_for_output): Use
14879         target_terminal_is_ours_kind.
14880         (target_interrupt): Remove ptid parameter.  Adjust.
14881         (default_target_pass_ctrlc): Adjust.
14882         * target.h (target_ops::to_terminal_save_inferior): New field.
14883         (target_ops::to_interrupt): Remove ptid_t parameter.
14884         (target_interrupt): Remove ptid_t parameter.  Update comment.
14885         (target_pass_ctrlc): Update comment.
14886         * target/target.h (target_terminal_state): New scoped enum,
14887         factored out of ...
14888         (target_terminal::terminal_state): ... here.
14889         (target_terminal::inferior): Update comments.
14890         (target_terminal::restore_inferior): New.
14891         (target_terminal::is_inferior, target_terminal::is_ours)
14892         (target_terminal::is_ours_for_output): Adjust.
14893         (target_terminal::scoped_restore_terminal_state): Adjust to
14894         rename, and call restore_inferior() instead of inferior().
14895         (target_terminal::scoped_restore_terminal_state::m_state): Change
14896         type.
14897         (target_terminal::terminal_state): Rename to ...
14898         (target_terminal::m_terminal_state): ... this and change type.
14899
14900 2018-01-30  Pedro Alves  <palves@redhat.com>
14901
14902         * linux-nat.c (wait_for_signal): New function.
14903         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14904         directly.
14905         (async_terminal_is_ours)
14906         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14907         (linux_nat_add_target): Don't override
14908         to_terminal_inferior/to_terminal_ours.
14909
14910 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14911
14912         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14913
14914 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14915
14916         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14917         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14918         dwarf2_per_objfile_free here.
14919         (dwarf2_per_objfile_free): Remove.
14920         (_initialize_dwarf2_read): Don't register
14921         dwarf2_per_objfile_free as a registry cleanup.
14922
14923 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14924
14925         Avoid compilation errors in MinGW native builds
14926
14927         The error is triggered by including python-internal.h, and the
14928         error message is:
14929
14930              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14931                       from build-gnulib/import/math.h:27,
14932                       from d:/usr/Python26/include/pyport.h:235,
14933                       from d:/usr/Python26/include/Python.h:58,
14934                       from python/python-internal.h:94,
14935                       from python/py-arch.c:24:
14936              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14937         using ::hypot;
14938                 ^~~~~
14939
14940         This happens because Python headers define 'hypot' to expand t
14941         '_hypot' in the Windows builds.
14942         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14943         'hypoth'.  This avoids a compilation error.
14944
14945 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14946
14947         * MAINTAINERS (Write After Approval): Fix ordering.
14948
14949 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14950
14951         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14952
14953 2018-01-26  Alan Modra  <amodra@gmail.com>
14954
14955         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14956         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14957         Remove nop.  Make const.  Comment.
14958         (powerpc32_plt_stub_so_2): New.
14959         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14960         Correct count.  Update uses.
14961         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14962         Move common code reading PLT entry word.  Correct
14963         powerpc32_plt_stub PLT address calculation.
14964         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14965         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14966         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14967         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14968         (ppc64_standard_linkage8): Likewise.
14969         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14970         Correct insns description.
14971         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14972
14973 2018-01-24  Pedro Alves  <palves@redhat.com>
14974
14975         GCC PR libstdc++/83906
14976         * gdbtypes.c (operator==(const dynamic_prop &,
14977         const dynamic_prop &)): New.
14978         (operator==(const range_bounds &, const range_bounds &)): New.
14979         (check_types_equal): Use them instead of memcmp.
14980         * gdbtypes.h (operator==(const dynamic_prop &,
14981         const dynamic_prop &)): Declare.
14982         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14983         (operator==(const range_bounds &, const range_bounds &)): Declare.
14984         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14985
14986 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14987
14988         * s390-linux-tdep.c (s390_record_address_mask)
14989         (s390_record_calc_disp_common, s390_record_calc_disp)
14990         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14991         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14992         (s390_process_record): Move to s390-tdep.c.
14993         (s390_linux_init_abi_any): Adjust.
14994         * s390-tdep.c (s390_record_address_mask)
14995         (s390_record_calc_disp_common, s390_record_calc_disp)
14996         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14997         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14998         (s390_process_record): Moved from s390-linux-tdep.c
14999         (s390_gdbarch_init): Adjust.
15000
15001 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15002
15003         * s390-linux-nat.c (s390-tdep.h): New include.
15004         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15005         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15006         (ALLDEPFILES): Add s390-tdep.c.
15007         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15008         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15009         * s390-tdep.h: ...this.  New file.
15010         * s390-linux-tdep.c (s390-tdep.h): New include.
15011         (_initialize_s390_tdep): Rename to...
15012         (_initialize_s390_linux_tdep): ...this and adjust.
15013         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15014         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15015         s390-tdep.h.
15016         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15017         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15018         (s390_is_partial_instruction, s390_software_single_step)
15019         (is_non_branch_ril, s390_displaced_step_copy_insn)
15020         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15021         (s390_prologue_data, s390_addr, s390_store, s390_load)
15022         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15023         (s390_register_call_saved, s390_guess_tracepoint_registers)
15024         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15025         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15026         (s390_pseudo_register_name, s390_pseudo_register_type)
15027         (s390_pseudo_register_read, s390_pseudo_register_write)
15028         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15029         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15030         (s390_addr_bits_remove, s390_address_class_type_flags)
15031         (s390_address_class_type_flags_to_name)
15032         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15033         (s390_function_arg_float, s390_function_arg_vector)
15034         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15035         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15036         (s390_frame_align, s390_register_return_value, s390_return_value)
15037         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15038         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15039         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15040         (s390_trad_frame_prev_register, s390_unwind_cache)
15041         (s390_prologue_frame_unwind_cache)
15042         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15043         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15044         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15045         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15046         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15047         (s390_frame_base_address, s390_local_base_address)
15048         (s390_frame_base, s390_gcc_target_options)
15049         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15050         (s390_validate_reg_range, s390_tdesc_valid)
15051         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15052         * s390-tdep.c: ...this.  New file.
15053
15054 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15055
15056         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15057         (s390_process_record, s390_gdbarch_tdep_alloc)
15058         (s390_linux_init_abi_any): Use/set new hook.
15059
15060 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15061
15062         * s390-linux-tdep.c (osabi.h): New include.
15063         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15064         (s390_linux_init_abi_any): New functions.
15065         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15066
15067 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15068
15069         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15070         tdesc_has_registers check
15071
15072 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15073
15074         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15075         (s390_validate_reg_range): New macro.
15076         (s390_gdbarch_init): Adjust.
15077
15078 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15079
15080         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15081         (s390_gdbarch_tdep_alloc): Adjust.
15082         (s390_gdbarch_init): Adjust.
15083
15084 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15085
15086         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15087         <have_tdb>: Change type to bool.
15088         (s390_gdbarch_tdep_alloc): Adjust.
15089         (s390_gdbarch_init): Adjust.
15090
15091 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15092
15093         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15094         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15095         (s390_gdbarch_tdep_alloc): New function.
15096         (s390_gdbarch_init): Allocate tdep at start and use its fields
15097         instead of separate variables.
15098
15099 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15100
15101         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15102         when looking for cached gdbarch and add comment for remaining.
15103
15104 2018-01-22  Pedro Alves  <palves@redhat.com>
15105             Sergio Durigan Junior  <sergiodj@redhat.com>
15106
15107         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15108         case.
15109
15110 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15111
15112         * MAINTAINERS: Update my company e-mail address.
15113
15114 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15115
15116         * regcache.c (cooked_write_test): New function.
15117         (_initialize_regcache): Register the test.
15118
15119 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15120
15121         * ia64-tdep.c (ia64_pseudo_register_read): Call
15122         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15123         * m32c-tdep.c (m32c_cat_read): Likewise.
15124         (m32c_r3r2r1r0_read): Likewise.
15125         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15126         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15127
15128 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15129
15130         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15131         method raw_read instead of regcache_raw_read.
15132         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15133         * arm-tdep.c (arm_neon_quad_read): Likewise.
15134         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15135         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15136         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15137         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15138         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15139         (i386_pseudo_register_read_into_value): Likewise.
15140         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15141         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15142         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15143         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15144         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15145         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15146         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15147         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15148         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15149
15150 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15151
15152         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15153         * configure.tgt: Remove target mt.
15154         * mt-tdep.c: Remove.
15155         * regcache.c (cooked_read_test): Remove the check for mt.
15156
15157 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15158
15159         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15160         instead of gdbarch_pseudo_register_read_value.
15161
15162 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15163
15164         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15165         language is Ada.
15166
15167 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15168
15169         * linespec.c (create_sals_line_offset): Remove code that preserved
15170         the symtab_and_line's line number.
15171
15172 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15173
15174         * varobj.c (varobj_create): Don't set valid_block when creating a
15175         floating varobj.
15176
15177 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15178
15179         * varobj.c (varobj_create): Remove out of date comment.
15180
15181 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15182
15183         PR mi/20395
15184         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15185         updating innermost block.
15186         * parse.c (innermost_block_tracker::update): Take extra type
15187         parameter, and check types match before updating innermost block.
15188         (write_dollar_variable): Update innermost block for registers.
15189         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15190         (innermost_block_tracker::innermost_block_tracker): Initialise
15191         m_types member.
15192         (innermost_block_tracker::reset): Take type parameter.
15193         (innermost_block_tracker::update): Take type parameter, and pass
15194         type through as needed.
15195         (innermost_block_tracker::m_types): New member.
15196         * varobj.c (varobj_create): Pass type when reseting innermost
15197         block.
15198
15199 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15200
15201         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15202         * ada-lang.c (resolve_subexp): Likewise.
15203         * breakpoint.c (set_breakpoint_condition) Likewise.
15204         (watch_command_1) Likewise.
15205         * c-exp.y (variable): Likewise.
15206         * d-exp.y (PrimaryExpression): Likewise.
15207         * f-exp.y (variable): Likewise.
15208         * go-exp.y (variable): Likewise.
15209         * m2-exp.y (variable): Likewise.
15210         * objfiles.c (objfile::~objfile): Likewise.
15211         * p-exp.y (variable): Likewise.
15212         * parse.c (innermost_block): Change type.
15213         * parser-defs.h (class innermost_block_tracker): New.
15214         (innermost_block): Change to innermost_block_tracker.
15215         * printcmd.c (display_command): Switch to innermost_block API.
15216         (do_one_display): Likewise.
15217         * rust-exp.y (do_one_display): Likewise.
15218         * symfile.c (clear_symtab_users): Likewise.
15219         * varobj.c (varobj_create): Switch to innermost_block API, replace
15220         use of innermost_block with block stored on varobj object.
15221
15222 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15223
15224         * expression.h (innermost_block): Remove declaration.
15225         * varobj.c: Add 'parser-defs.h' include.
15226
15227 2018-01-19  Tom Tromey  <tom@tromey.com>
15228
15229         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15230         symbols in the static and global blocks.
15231
15232 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15233
15234         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15235         gdb_ptrace.h, and move including gdb_wait.h ...
15236         * nat/linux-ptrace.h: ... to here.
15237
15238 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15239
15240         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15241         inf_ptrace_detach_success.
15242         (inf_ptrace_detach_success): Add inferior parameter, use it
15243         instead of inferior_ptid, pass it to detach_inferior.
15244         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15245         parameter.
15246         * inferior.c (detach_inferior): Add overload that takes an
15247         inferior object.
15248         * inferior.h (detach_inferior): Likewise.
15249         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15250         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15251         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15252
15253 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15254
15255         * target.h (struct target_ops) <to_detach>: Add inferior
15256         parameter.
15257         (target_detach): Likewise.
15258         * target.c (dispose_inferior): Pass inferior down.
15259         (target_detach): Pass inferior down.  Assert that it is equal to
15260         the current inferior.
15261         * aix-thread.c (aix_thread_detach): Pass inferior down.
15262         * corefile.c (core_file_command): Pass current_inferior() down.
15263         * corelow.c (core_detach): Add inferior parameter.
15264         * darwin-nat.c (darwin_detach): Likewise.
15265         * gnu-nat.c (gnu_detach): Likewise.
15266         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15267         * infcmd.c (detach_command): Pass current_inferior() down to
15268         target_detach.
15269         * infrun.c (follow_fork_inferior): Pass parent_inf to
15270         target_detach.
15271         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15272         target_detach.
15273         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15274         * linux-thread-db.c (thread_db_detach): Likewise.
15275         * nto-procfs.c (procfs_detach): Likewise.
15276         * procfs.c (procfs_detach): Likewise.
15277         * record.c (record_detach): Likewise.
15278         * record.h (struct inferior): Forward-declare.
15279         (record_detach): Add inferior parameter.
15280         * remote-sim.c (gdbsim_detach): Likewise.
15281         * remote.c (remote_detach_1): Likewise.
15282         (remote_detach): Likewise.
15283         (extended_remote_detach): Likewise.
15284         * sol-thread.c (sol_thread_detach): Likewise.
15285         * target-debug.h (target_debug_print_inferior_p): New macro.
15286         * target-delegates.c: Re-generate.
15287         * top.c (kill_or_detach): Pass inferior down to target_detach.
15288         * windows-nat.c (windows_detach): Add inferior parameter.
15289
15290 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15291
15292         * target.h (struct target_ops) <to_detach>: Remove args
15293         parameter.
15294         (target_detach): Likewise.
15295         * target.c (dispose_inferior): Adjust.
15296         (target_detach): Remove args parameter, adjust.
15297         * aix-thread.c (aix_thread_detach): Adjust.
15298         * corefile.c (core_file_command): Adjust.
15299         * corelow.c (core_detach): Adjust.
15300         * darwin-nat.c (darwin_detach): Adjust.
15301         * gnu-nat.c (gnu_detach): Adjust.
15302         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15303         * infcmd.c (detach_command): Adjust
15304         * infrun.c (follow_fork_inferior): Adjust.
15305         (handle_vfork_child_exec_or_exit): Adjust.
15306         * linux-fork.c (linux_fork_detach): Remove args parameter.
15307         * linux-fork.h (linux_fork_detach): Likewise.
15308         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15309         * linux-thread-db.c (thread_db_detach): Likewise.
15310         * nto-procfs.c (procfs_detach): Likewise.
15311         * procfs.c (procfs_detach): Likewise.
15312         (do_detach): Remove signo parameter.
15313         * record.c (record_detach): Remove args parameter.
15314         * record.h (record_detach): Likewise.
15315         * remote-sim.c (gdbsim_detach): Likewise.
15316         * remote.c (remote_detach_1): Likewise.
15317         (remote_detach): Likewise.
15318         (extended_remote_detach): Likewise.
15319         * sol-thread.c (sol_thread_detach): Likewise.
15320         * target-delegates.c: Re-generate.
15321         * top.c (struct qt_args) <args>: Remove field.
15322         (kill_or_detach): Don't pass args.
15323         (quit_force): Don't set args.
15324         * windows-nat.c (windows_detach): Remove args parameter.
15325
15326 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15327
15328         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15329         (arm_linux_init_abi): Install it.
15330
15331 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15332
15333         * osabi.c (gdb_osabi_names): Extend the regexp for
15334         arm-linux-gnueabihf.
15335
15336 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15337
15338         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15339         m_abbrevs.
15340         (abbrev_table::add_abbrev): Update.
15341         (abbrev_table::lookup_abbrev): Update.
15342
15343 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15344
15345         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15346
15347 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15348
15349         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15350         to "std::string".
15351
15352 2018-01-17  Tom Tromey  <tom@tromey.com>
15353
15354         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15355
15356 2018-01-17  Tom Tromey  <tom@tromey.com>
15357
15358         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15359         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15360         (create_array_type_with_stride): Update.
15361         * dwarf2read.c (set_die_type): Update.
15362
15363 2018-01-17  Tom Tromey  <tom@tromey.com>
15364
15365         * dwarf2read.c (delayed_method_info): Remove typedef.
15366         (dwarf2_cu::method_info): Now a std::vector.
15367         (add_to_method_list): Update.
15368         (free_delayed_list): Remove.
15369         (compute_delayed_physnames): Update.
15370         (process_full_comp_unit, process_full_type_unit): Clear the method
15371         list.  Remove cleanups.
15372         (psymtab_include_file_name): Add name_holder parameter.  Use
15373         unique_xmalloc_ptr.
15374         (dwarf_decode_lines): Update.
15375
15376 2018-01-17  Tom Tromey  <tom@tromey.com>
15377             Simon Marchi  <simon.marchi@ericsson.com>
15378
15379         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15380         (dwarf2_per_objfile::free_cached_comp_units)
15381         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15382         (init_cutu_and_read_dies_no_follow): Update.
15383         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15384         (dwarf2_cu::~dwarf2_cu): New.
15385         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15386         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15387
15388 2018-01-17  Tom Tromey  <tom@tromey.com>
15389             Simon Marchi  <simon.marchi@ericsson.com>
15390
15391         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15392         (struct die_reader_specs) <abbrev_table>: New member.
15393         (struct abbrev_table): Add constructor.
15394         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15395         <abbrev_obstack>: Now an auto_obstack.
15396         (abbrev_table_up): New typedef.
15397         (init_cu_die_reader): Add abbrev_table parameter.
15398         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15399         Add result_dwo_abbrev_table.
15400         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15401         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15402         Update.
15403         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15404         parameter.
15405         (skip_children): Update.
15406         (abbrev_table::alloc_abbrev): Rename from
15407         abbrev_table_alloc_abbrev.
15408         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15409         (abbrev_table::lookup_abbrev): Rename from
15410         abbrev_table_lookup_abbrev.
15411         (abbrev_table_read_table): Return abbrev_table_up.
15412         (abbrev_table_free, abbrev_table_free_cleanup)
15413         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15414         (load_partial_dies): Update.
15415
15416 2018-01-17  Tom Tromey  <tom@tromey.com>
15417
15418         * dwarf2read.c (dwarf2_compute_name): Update comment.
15419         (read_func_scope, read_variable): Update.
15420         (new_symbol): Remove.
15421         (new_symbol_full): Rename to new_symbol.
15422
15423 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15424
15425         PR gdb/16577
15426         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15427         a warning instead of throwing an error, set section size to 0 and return
15428         NULL.
15429         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15430
15431 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15432
15433         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15434         std::string.
15435         (linux_ptrace_attach_fail_reason_string): Likewise.
15436         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15437         Likewise.
15438         (linux_ptrace_attach_fail_reason_string): Likewise.
15439         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15440
15441 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15442
15443         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15444
15445 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15446
15447         PR gdb/21559
15448         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15449         checking for fs_base/gs_base fields in struct user_regs_struct.
15450         * configure: Regenerate.
15451
15452 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15453
15454         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15455         function.
15456         (aarch64_linux_init_abi): Install it to gdbarch hook
15457         gcc_target_options.
15458
15459 2018-01-15  Pedro Alves  <palves@redhat.com>
15460
15461         * common/signals-state-save-restore.c
15462         (save_original_signals_state): Fix typos.
15463
15464 2017-01-12  Tom Tromey  <tom@tromey.com>
15465             Sergio Durigan Junior  <sergiodj@redhat.com>
15466
15467         * Makefile.in (install-only): Install gdb-add-index.
15468
15469 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15470
15471         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15472
15473 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15474
15475         * infrun.c (keep_going_pass_signal): Clear step-over info when
15476         insert_breakpoints fails.
15477
15478 2018-01-11  Pedro Alves  <palves@redhat.com>
15479
15480         PR gdb/22583
15481         * infrun.c (resume): Rename to ...
15482         (resume_1): ... this.
15483         (resume): Reimplement as wrapper around resume_1.
15484
15485 2018-01-11  Pedro Alves  <palves@redhat.com>
15486
15487         PR remote/22597
15488         * remote.c (remote_parse_stop_reply): Default to the last-set
15489         general thread instead of to 'magic_null_ptid'.
15490
15491 2018-01-10  Pedro Alves  <palves@redhat.com>
15492
15493         * language.h (language_get_symbol_name_matcher): Rename ...
15494         (get_symbol_name_matcher): ... this.
15495         * language.c (language_get_symbol_name_matcher): Ditto.
15496         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15497         callers adjusted.
15498
15499 2018-01-10  Pedro Alves  <palves@redhat.com>
15500
15501         PR gdb/22670
15502         * dwarf2read.c
15503         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15504         Adjust to use language_get_symbol_name_matcher instead of
15505         language_defn::la_get_symbol_name_matcher.
15506         * language.c (language_get_symbol_name_matcher): If in Ada mode
15507         and the lookup name is a verbatim match, return Ada's matcher.
15508         * language.h (language_get_symbol_name_matcher): Adjust comment.
15509         (ada_lookup_name_info::verbatim_p):: New method.
15510
15511 2018-01-10  Pedro Alves  <palves@redhat.com>
15512
15513         PR gdb/22670
15514         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15515         minsym's language is language_auto or language_cplus, pass down
15516         language_ada instead.
15517         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15518
15519 2018-01-10  Pedro Alves  <palves@redhat.com>
15520
15521         PR gdb/22670
15522         * minsyms.c (linkage_name_str): New function.
15523         (iterate_over_minimal_symbols): Use it.
15524
15525 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15526
15527         * NEWS: Document that 'info proc' now works on FreeBSD.
15528
15529 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15530
15531         * configure.ac: Check for kinfo_getfile in libutil.
15532         * configure: Regenerate.
15533         * config.in: Regenerate.
15534         * fbsd-nat.c: Include "fbsd-tdep.h".
15535         (fbsd_fetch_cmdline): New.
15536         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15537         rather than calling error.
15538         (fbsd_info_proc): New.
15539         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15540         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15541         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15542
15543 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15544
15545         * fbsd-nat.c (struct free_deleter): Remove.
15546         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15547
15548 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15549
15550         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15551         NULL for an empty pathname.
15552
15553 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15554
15555         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15556         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15557         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15558         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15559         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15560         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15561         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15562         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15563         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15564         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15565         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15566         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15567         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15568         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15569         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15570
15571 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15572
15573         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15574         (gnu_xfer_auxv): New function.
15575         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15576         TARGET_OBJECT_AUXV.
15577
15578 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15579             Simon Marchi  <simon.marchi@ericsson.com>
15580
15581         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15582         common/selftest.c.
15583         (COMMON_OBS): Remove selftest.o.
15584         * configure.ac: Append selftest-arch.c and common/selftest.c to
15585         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15586         * configure: Re-generated.
15587         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15588         GDB_SELF_TEST.
15589         (maintenance_info_selftests): Likewise.
15590
15591 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15592
15593         * ada-valprint.c (val_print_packed_array_elements): Use
15594         proper number of elements when printing an array indexed
15595         by an enumeration type.
15596
15597 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15598
15599         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15600         (dw2_get_file_names_reader): Adjust.
15601         (lookup_dwo_signatured_type): Adjust.
15602         (lookup_dwp_signatured_type): Adjust.
15603         (lookup_signatured_type): Adjust.
15604         (create_type_unit_group): Adjust.
15605         (get_type_unit_group): Adjust.
15606         (process_psymtab_comp_unit_reader): Adjust.
15607         (build_type_psymtabs_reader): Adjust.
15608         (scan_partial_symbols): Adjust.
15609         (add_partial_symbol): Adjust.
15610         (add_partial_subprogram): Adjust.
15611         (peek_die_abbrev): Adjust.
15612         (fixup_go_packaging): Adjust.
15613         (process_imported_unit_die): Adjust.
15614         (dwarf2_compute_name): Adjust.
15615         (dwarf2_physname): Adjust.
15616         (read_import_statement): Adjust.
15617         (handle_DW_AT_stmt_list): Adjust.
15618         (read_file_scope): Adjust.
15619         (read_func_scope): Adjust.
15620         (read_lexical_block_scope): Adjust.
15621         (read_call_site_scope): Adjust.
15622         (read_variable): Adjust.
15623         (dwarf2_rnglists_process): Adjust.
15624         (dwarf2_ranges_process): Adjust.
15625         (dwarf2_ranges_read): Adjust.
15626         (dwarf2_get_pc_bounds): Adjust.
15627         (dwarf2_record_block_ranges): Adjust.
15628         (dwarf2_add_field): Adjust.
15629         (dwarf2_add_member_fn): Adjust.
15630         (read_structure_type): Adjust.
15631         (process_structure_scope): Adjust.
15632         (read_enumeration_type): Adjust.
15633         (read_array_type): Adjust.
15634         (mark_common_block_symbol_computed): Adjust.
15635         (read_common_block): Adjust.
15636         (read_namespace_type): Adjust.
15637         (read_namespace): Adjust.
15638         (read_module_type): Adjust.
15639         (read_tag_pointer_type): Adjust.
15640         (read_tag_ptr_to_member_type): Adjust.
15641         (read_tag_string_type): Adjust.
15642         (read_subroutine_type): Adjust.
15643         (read_typedef): Adjust.
15644         (read_base_type): Adjust.
15645         (attr_to_dynamic_prop): Adjust.
15646         (read_subrange_type): Adjust.
15647         (read_unspecified_type): Adjust.
15648         (dwarf2_read_abbrevs): Adjust.
15649         (load_partial_dies): Adjust.
15650         (read_partial_die): Adjust.
15651         (find_partial_die): Adjust.
15652         (guess_partial_die_structure_name): Adjust.
15653         (fixup_partial_die): Adjust.
15654         (read_attribute_value): Adjust.
15655         (read_addr_index): Adjust.
15656         (read_addr_index_from_leb128): Adjust.
15657         (read_str_index): Adjust.
15658         (dwarf2_string_attr): Adjust.
15659         (get_debug_line_section): Adjust.
15660         (dwarf_decode_line_header): Adjust.
15661         (lnp_state_machine::check_line_address): Adjust.
15662         (dwarf_decode_lines_1): Adjust.
15663         (dwarf_decode_lines): Adjust.
15664         (dwarf2_start_symtab): Adjust.
15665         (var_decode_location): Adjust.
15666         (new_symbol_full): Adjust.
15667         (dwarf2_const_value_data): Adjust.
15668         (dwarf2_const_value_attr): Adjust.
15669         (dwarf2_const_value): Adjust.
15670         (die_type): Adjust.
15671         (die_containing_type): Adjust.
15672         (build_error_marker_type): Adjust.
15673         (lookup_die_type): Adjust.
15674         (guess_full_die_structure_name): Adjust.
15675         (anonymous_struct_prefix): Adjust.
15676         (determine_prefix): Adjust.
15677         (dwarf2_name): Adjust.
15678         (follow_die_ref_or_sig): Adjust.
15679         (follow_die_offset): Adjust.
15680         (follow_die_ref): Adjust.
15681         (follow_die_sig_1): Adjust.
15682         (follow_die_sig): Adjust.
15683         (get_signatured_type): Adjust.
15684         (get_DW_AT_signature_type): Adjust.
15685         (decode_locdesc): Adjust.
15686         (dwarf_decode_macros): Adjust.
15687         (cu_debug_loc_section): Adjust.
15688         (fill_in_loclist_baton): Adjust.
15689         (dwarf2_symbol_mark_computed): Adjust.
15690         (init_one_comp_unit): Don't assign
15691         dwarf2_cu::dwarf2_per_objfile.
15692         (set_die_type): Adjust.
15693
15694 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15695
15696         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15697         <dwarf2_per_objfile>: New field.
15698         (dwarf2_per_objfile): Remove global.
15699         (get_dwarf2_per_objfile): New function.
15700         (set_dwarf2_per_objfile): New function.
15701         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15702         dwarf2_per_objfile.
15703         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15704         (read_abbrev_offset): Likewise.
15705         (read_indirect_string): Likewise.
15706         (read_indirect_line_string): Likewise.
15707         (read_indirect_string_at_offset): Likewise.
15708         (read_indirect_string_from_dwz): Likewise.
15709         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15710         dwarf2_per_objfile.
15711         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15712         (create_all_comp_units): Change objfile parameter to
15713         dwarf2_per_objfile.
15714         (create_all_type_units): Likewise.
15715         (process_queue): Add dwarf2_per_objfile parameter.
15716         (read_and_check_comp_unit_head): Likewise.
15717         (lookup_dwo_unit_in_dwp): Likewise.
15718         (get_dwp_file): Likewise.
15719         (process_cu_includes): Likewise.
15720         (struct free_dwo_file_cleanup_data): New struct.
15721         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15722         set_dwarf2_per_objfile.
15723         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15724         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15725         context, adjust calls.
15726         (dw2_instantiate_symtab): Likewise.
15727         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15728         (dw2_get_cu): Likewise.
15729         (create_cu_from_index_list): Change objfile parameter to
15730         dwarf2_per_objfile.
15731         (create_cus_from_index_list): Get dwarf2_per_objfile from
15732         context, adjust calls.
15733         (create_cus_from_index): Likewise.
15734         (create_signatured_type_table_from_index): Change objfile
15735         parameter to dwarf2_per_objfile.
15736         (create_signatured_type_table_from_debug_names): Change objfile
15737         parameter to dwarf2_per_objfile.
15738         (create_addrmap_from_index): Likewise.
15739         (create_addrmap_from_aranges): Likewise.
15740         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15741         (dw2_setup): Remove.
15742         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15743         context.
15744         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15745         get_dwarf2_per_objfile.
15746         (dw2_forget_cached_source_info): Likewise.
15747         (dw2_map_symtabs_matching_filename): Likewise.
15748         (struct dw2_symtab_iterator) <index>: Remove.
15749         <dwarf2_per_objfile>: New field.
15750         (dw2_symtab_iter_init): Replace index parameter with
15751         dwarf2_per_objfile.
15752         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15753         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15754         (dw2_print_stats): Likewise.
15755         (dw2_dump): Likewise.
15756         (dw2_expand_symtabs_for_function): Likewise.
15757         (dw2_expand_all_symtabs): Likewise.
15758         (dw2_expand_symtabs_with_fullname): Likewise.
15759         (dw2_expand_marked_cus): Replace index and objfile parameters
15760         with dwarf2_per_objfile.
15761         (dw_expand_symtabs_matching_file_matcher): Add
15762         dwarf2_per_objfile parameter and adjust calls.
15763         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15764         adjust calls.
15765         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15766         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15767         adjust calls.
15768         (create_cus_from_debug_names_list): Replace objfile parameter
15769         with dwarf2_per_objfile and adjust calls.
15770         (create_cus_from_debug_names): Likewise.
15771         (dwarf2_read_debug_names): Likewise.
15772         (mapped_debug_names::namei_to_name): Adjust call.
15773         (dw2_debug_names_iterator::next): Likewise.
15774         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15775         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15776         (dw2_debug_names_dump): Likewise.
15777         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15778         (dw2_debug_names_expand_symtabs_matching): Likewise.
15779         (dwarf2_initialize_objfile): Likewise.
15780         (dwarf2_build_psymtabs): Likewise.
15781         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15782         this_cu.
15783         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15784         (read_and_check_comp_unit_head): Likewise.
15785         (read_abbrev_offset): Likewise.
15786         (create_debug_type_hash_table): Likewise.
15787         (create_debug_types_hash_table): Likewise.
15788         (create_all_type_units): Replace objfile parameter with
15789         dwarf2_per_objfile.
15790         (add_type_unit): Add dwarf2_per_objfile parameter.
15791         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15792         with dwarf2_per_objfile.
15793         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15794         (lookup_dwp_signatured_type): Likewise.
15795         (lookup_signatured_type): Likewise.
15796         (read_cutu_die_from_dwo): Likewise.
15797         (init_tu_and_read_dwo_dies): Likewise.
15798         (init_cutu_and_read_dies): Likewise.
15799         (init_cutu_and_read_dies_no_follow): Likewise.
15800         (allocate_type_unit_groups_table): Add objfile parameter.
15801         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15802         (get_type_unit_group): Likewise.
15803         (process_psymtab_comp_unit): Update call.
15804         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15805         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15806         (print_tu_stats): Likewise.
15807         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15808         in void* parameter.
15809         (build_type_psymtabs): Change objfile parameter to
15810         dwarf2_per_objfile.
15811         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15812         passed in void* parameter.
15813         (process_skeletonless_type_units): Change objfile parameter to
15814         dwarf2_per_objfile.
15815         (set_partial_user): Likewise.
15816         (dwarf2_build_psymtabs_hard): Likewise.
15817         (read_comp_units_from_section): Likewise.
15818         (create_all_comp_units): Likewise.
15819         (scan_partial_symbols): Update calls.
15820         (add_partial_symbol): Likewise.
15821         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15822         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15823         (process_queue): Add dwarf2_per_objfile parameter.
15824         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15825         (compute_compunit_symtab_includes): Likewise.
15826         (process_cu_includes): Add dwarf2_per_objfile parameter.
15827         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15828         (process_full_type_unit): Likewise.
15829         (process_imported_unit_die): Update call.
15830         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15831         (read_file_scope): Likewise.
15832         (allocate_dwo_file_hash_table): Add objfile parameter.
15833         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15834         (create_cus_hash_table): Likewise.
15835         (create_dwp_hash_table): Likewise.
15836         (create_dwo_unit_in_dwp_v1): Likewise.
15837         (create_dwp_v2_section): Likewise.
15838         (create_dwo_unit_in_dwp_v2): Likewise.
15839         (lookup_dwo_unit_in_dwp): Likewise.
15840         (try_open_dwop_file): Likewise.
15841         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15842         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15843         cleanup to include a reference to dwarf2_per_objfile.
15844         (open_dwp_file): Add dwarf2_per_objfile parameter.
15845         (open_and_init_dwp_file): Likewise.
15846         (get_dwp_file): Likewise.
15847         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15848         (queue_and_load_all_dwo_tus): Update call.
15849         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15850         data.
15851         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15852         (dwarf2_ranges_process): Likewise.
15853         (dwarf2_get_pc_bounds): Likewise.
15854         (mark_common_block_symbol_computed): Likewise.
15855         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15856         (dwarf2_read_abbrevs): Update call.
15857         (read_partial_die): Use dwarf2_per_objfile from cu.
15858         (find_partial_die): Likewise.
15859         (fixup_partial_die): Likewise.
15860         (read_attribute_value): Likewise.
15861         (read_indirect_string_at_offset_from): Add objfile parameter.
15862         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15863         parameter.
15864         (read_indirect_string_from_dwz): Add objfile parameter.
15865         (read_indirect_string): Add objfile parameter.
15866         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15867         (read_addr_index): Use dwarf2_per_objfile from cu.
15868         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15869         call dw2_setup.
15870         (read_str_index): Use dwarf2_per_objfile from cu.
15871         (get_debug_line_section): Likewise.
15872         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15873         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15874         (new_symbol_full): Use dwarf2_per_objfile from cu.
15875         (build_error_marker_type): Likewise.
15876         (lookup_die_type): Likewise.
15877         (determine_prefix): Likewise.
15878         (follow_die_offset): Likewise.
15879         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15880         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15881         (dwarf2_fetch_die_type_sect_off): Likewise.
15882         (dwarf2_get_die_type): Likewise.
15883         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15884         (get_signatured_type): Likewise.
15885         (get_DW_AT_signature_type): Likewise.
15886         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15887         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15888         (cu_debug_loc_section): Likewise.
15889         (fill_in_loclist_baton): Likewise.
15890         (dwarf2_symbol_mark_computed): Likewise.
15891         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15892         dwarf2_per_objfile.
15893         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15894         parameter.
15895         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15896         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15897         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15898         (set_die_type): Use dwarf2_free_objfile from cu.
15899         (get_die_type_at_offset): Likewise.
15900         (dwarf2_per_objfile_free): Don't assign global variable.
15901         (debug_names) <constructor>: Add dwarf2_per_objfile
15902         parameter, update m_debugstrlookup construction.
15903         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15904         parameter.
15905         <m_dwarf2_per_objfile>: New field.
15906         <lookup>: Use m_dwarf2_per_objfile.
15907         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15908         (psyms_seen_size): Likewise.
15909         (write_gdbindex): Replace objfile parameter with
15910         dwarf2_per_objfile.
15911         (write_debug_names): Likewise.
15912         (write_psymtabs_to_index): Likewise.
15913         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15914         calls.
15915
15916 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15917
15918         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15919         <dwarf2_per_objfile>: New field.
15920         (struct dwarf2_per_cu_data) <objfile>: Remove.
15921         <dwarf2_per_objfile>: New field.
15922         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15923         of objfile.
15924         (create_signatured_type_table_from_index): Likewise.
15925         (create_debug_type_hash_table): Likewise.
15926         (fill_in_sig_entry_from_dwo_entry): Likewise.
15927         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15928         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15929         objfile.
15930         (create_partial_symtab): Access objfile through
15931         dwarf2_per_objfile.
15932         (process_psymtab_comp_unit_reader): Likewise.
15933         (read_comp_units_from_section): Likewise.
15934         (scan_partial_symbols): Likewise.
15935         (add_partial_symbol): Likewise.
15936         (add_partial_subprogram): Likewise.
15937         (peek_die_abbrev): Likewise.
15938         (fixup_go_packaging): Likewise.
15939         (process_full_comp_unit): Likewise.
15940         (process_full_type_unit): Likewise.
15941         (process_imported_unit_die): Likewise.
15942         (dwarf2_compute_name): Likewise.
15943         (dwarf2_physname): Likewise.
15944         (read_import_statement): Likewise.
15945         (create_cus_hash_table): Assign dwarf2_physname instead of
15946         objfile.
15947         (read_func_scope): Access objfile through dwarf2_per_objfile.
15948         (read_lexical_block_scope): Likewise.
15949         (read_call_site_scope): Likewise.
15950         (read_variable): Likewise.
15951         (dwarf2_rnglists_process): Likewise.
15952         (dwarf2_ranges_process): Likewise.
15953         (dwarf2_ranges_read): Likewise.
15954         (dwarf2_record_block_ranges): Likewise.
15955         (dwarf2_add_field): Likewise.
15956         (dwarf2_add_member_fn): Likewise.
15957         (read_structure_type): Likewise.
15958         (process_structure_scope): Likewise.
15959         (read_enumeration_type): Likewise.
15960         (read_array_type): Likewise.
15961         (read_common_block): Likewise.
15962         (read_namespace_type): Likewise.
15963         (read_namespace): Likewise.
15964         (read_module_type): Likewise.
15965         (read_tag_pointer_type): Likewise.
15966         (read_tag_ptr_to_member_type): Likewise.
15967         (read_tag_string_type): Likewise.
15968         (read_subroutine_type): Likewise.
15969         (read_typedef): Likewise.
15970         (read_base_type): Likewise.
15971         (attr_to_dynamic_prop): Likewise.
15972         (read_subrange_type): Likewise.
15973         (read_unspecified_type): Likewise.
15974         (load_partial_dies): Likewise.
15975         (read_partial_die): Likewise.
15976         (find_partial_die): Likewise.
15977         (guess_partial_die_structure_name): Likewise.
15978         (fixup_partial_die): Likewise.
15979         (read_attribute_value): Likewise.
15980         (read_addr_index_from_leb128): Likewise.
15981         (dwarf2_read_addr_index): Likewise.
15982         (dwarf2_string_attr): Likewise.
15983         (lnp_state_machine::check_line_address): Likewise.
15984         (dwarf_decode_lines_1): Likewise.
15985         (dwarf_decode_lines): Likewise.
15986         (dwarf2_start_symtab): Likewise.
15987         (var_decode_location): Likewise.
15988         (new_symbol_full): Likewise.
15989         (dwarf2_const_value_data): Likewise.
15990         (dwarf2_const_value_attr): Likewise.
15991         (dwarf2_const_value): Likewise.
15992         (die_type): Likewise.
15993         (die_containing_type): Likewise.
15994         (lookup_die_type): Likewise.
15995         (guess_full_die_structure_name): Likewise.
15996         (anonymous_struct_prefix): Likewise.
15997         (dwarf2_name): Likewise.
15998         (follow_die_ref_or_sig): Likewise.
15999         (follow_die_offset): Likewise.
16000         (follow_die_ref): Likewise.
16001         (dwarf2_fetch_die_loc_sect_off): Likewise.
16002         (dwarf2_fetch_constant_bytes): Likewise.
16003         (dwarf2_fetch_die_type_sect_off): Likewise.
16004         (dwarf2_get_die_type): Likewise.
16005         (follow_die_sig): Likewise.
16006         (decode_locdesc): Likewise.
16007         (dwarf2_per_cu_objfile): Likewise.
16008         (dwarf2_per_cu_text_offset): Likewise.
16009         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16010         objfile.
16011         (set_die_type): Access objfile through
16012         dwarf2_per_objfile.
16013
16014 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16015
16016         * valprint.c (converted_character_d): Remove typedef.
16017         (DEF_VEC_O (converted_character_d)): Remove.
16018         (count_next_character): Use std::vector.
16019         (print_converted_chars_to_obstack): Likewise.
16020         (generic_printstr): Likewise.
16021
16022 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16023
16024         * xml-support.h (struct gdb_xml_value): Add constructor.
16025         <value>: Change type to unique_xmalloc_ptr.
16026         (gdb_xml_value_s): Remove typedef.
16027         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16028         (gdb_xml_element_start_handler): Change parameter type to
16029         std::vector.
16030         (xml_find_attribute): Likewise.
16031         * xml-support.c (xml_find_attribute): Change parameter type to
16032         std::vector and adjust.
16033         (gdb_xml_values_cleanup): Remove.
16034         (gdb_xml_parser::start_element): Adjust to std::vector.
16035         (xinclude_start_include): Change paraeter type to std::vector
16036         and adjust.
16037         * btrace.c (check_xml_btrace_version): Likewise.
16038         (parse_xml_btrace_block): Likewise.
16039         (parse_xml_btrace_pt_config_cpu): Likewise.
16040         (parse_xml_btrace_pt): Likewise.
16041         (parse_xml_btrace_conf_bts): Likewise.
16042         (parse_xml_btrace_conf_pt): Likewise.
16043         * memory-map.c (memory_map_start_memory): Likewise.
16044         (memory_map_start_property): Likewise.
16045         * osdata.c (osdata_start_osdata): Likewise.
16046         (osdata_start_item): Likewise.
16047         (osdata_start_column): Likewise.
16048         * remote.c (start_thread): Likewise.
16049         * solib-aix.c (library_list_start_library): Likewise.
16050         (library_list_start_list): Likewise.
16051         * solib-svr4.c (library_list_start_library): Likewise.
16052         (svr4_library_list_start_list): Likewise.
16053         * solib-target.c (library_list_start_segment): Likewise.
16054         (library_list_start_section): Likewise.
16055         (library_list_start_library): Likewise.
16056         (library_list_start_list): Likewise.
16057         * tracepoint.c (traceframe_info_start_memory): Likewise.
16058         (traceframe_info_start_tvar): Likewise.
16059         * xml-syscall.c (syscall_start_syscall): Likewise.
16060         * xml-tdesc.c (tdesc_start_target): Likewise.
16061         (tdesc_start_feature): Likewise.
16062         (tdesc_start_reg): Likewise.
16063         (tdesc_start_union): Likewise.
16064         (tdesc_start_struct): Likewise.
16065         (tdesc_start_flags): Likewise.
16066         (tdesc_start_enum): Likewise.
16067         (tdesc_start_field): Likewise.
16068         (tdesc_start_enum_value): Likewise.
16069         (tdesc_start_vector): Likewise.
16070
16071 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16072
16073         * extension.h (struct xmethod_worker) <clone>: Remove.
16074         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16075         Remove.
16076         (python_xmethod_worker::clone): Remove.
16077         * valops.c (find_overload_match): Use std::move instead of
16078         clone.
16079
16080 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16081
16082         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16083         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16084         <free_xmethod_worker_data>: Remove.
16085         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16086         <get_xmethod_arg_types>: Remove.
16087         <get_xmethod_result_type>: Remove.
16088         <invoke_xmethod>: Remove.
16089         * extension.c (new_xmethod_worker): Remove.
16090         (clone_xmethod_worker): Remove.
16091         (get_matching_xmethod_workers): Return void, pass std::vector by
16092         pointer.
16093         (get_xmethod_arg_types): Rename to...
16094         (xmethod_worker::get_arg_types): ... this, and adjust.
16095         (get_xmethod_result_type): Rename to...
16096         (xmethod_worker::get_result_type): ... this, and adjust.
16097         (invoke_xmethod): Remove.
16098         (free_xmethod_worker): Remove.
16099         (free_xmethod_worker_vec): Remove.
16100         * extension.h (enum ext_lang_rc): Move here from
16101         extension-priv.h.
16102         (struct xmethod_worker): Add constructor and destructor.
16103         <data>: Remove.
16104         <value>: Remove.
16105         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16106         virtual pure methods.
16107         <get_arg_types, get_result_type>: New methods.
16108         (xmethod_worker_ptr): Remove typedef.
16109         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16110         (xmethod_worker_vec): Remove typedef.
16111         (xmethod_worker_up): New typedef.
16112         (invoke_xmethod): Remove.
16113         (clone_xmethod_worker): Remove.
16114         (free_xmethod_worker): Remove.
16115         (free_xmethod_worker_vec): Remove.
16116         (get_xmethod_arg_types): Remove.
16117         (get_xmethod_result_type): Remove.
16118         * valops.c (find_method_list): Use std::vector, don't use
16119         intermediate vector.
16120         (value_find_oload_method_list): Use std::vector.
16121         (find_overload_match): Use std::vector.
16122         (find_oload_champ): Use std::vector.
16123         * value.c (value_free): Use operator delete.
16124         (value_of_xmethod): Rename to...
16125         (value_from_xmethod): ... this.  Don't assign
16126         xmethod_worker::value, take rvalue-reference.
16127         (result_type_of_xmethod): Adjust.
16128         (call_xmethod): Adjust.
16129         * value.h: Include extension.h.
16130         (struct xmethod_worker): Don't forward-declare.
16131         (value_of_xmethod): Rename to...
16132         (value_from_xmethod): ... this, take rvalue-reference.
16133         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16134         (struct python_xmethod_worker): ... this, add constructor and
16135         destructor.
16136         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16137         (gdbpy_free_xmethod_worker_data): Rename to...
16138         (python_xmethod_worker::~python_xmethod_worker): ... this and
16139         adjust.
16140         (gdbpy_clone_xmethod_worker_data): Rename to...
16141         (python_xmethod_worker::clone): ... this and adjust.
16142         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16143         temporary vector.
16144         (gdbpy_get_xmethod_arg_types): Rename to...
16145         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16146         (gdbpy_get_xmethod_result_type): Rename to...
16147         (python_xmethod_worker::do_get_result_type): ... this and
16148         adjust.
16149         (gdbpy_invoke_xmethod): Rename to...
16150         (python_xmethod_worker::invoke): ... this and adjust.
16151         (new_python_xmethod_worker): Rename to...
16152         (python_xmethod_worker::python_xmethod_worker): ... this and
16153         adjust.
16154         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16155         Remove.
16156         (gdbpy_free_xmethod_worker_data): Remove.
16157         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16158         (gdbpy_get_xmethod_arg_types): Remove.
16159         (gdbpy_get_xmethod_result_type): Remove.
16160         (gdbpy_invoke_xmethod): Remove.
16161         * python/python.c (python_extension_ops): Remove obsolete
16162         callbacks.
16163
16164 2018-01-05  Pedro Alves  <palves@redhat.com>
16165
16166         PR gdb/18653
16167         * common/signals-state-save-restore.c
16168         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16169         find a custom handler preinstalled, instead of internal erroring.
16170         But only warn if !quiet.
16171         * common/signals-state-save-restore.h
16172         (save_original_signals_state): New parameter 'quiet'.
16173         * main.c (captured_main_1): Move save_original_signals_state call
16174         after option handling, and pass QUIET.
16175
16176 2018-01-05  Pedro Alves  <palves@redhat.com>
16177
16178         * spu-tdep.c (spu_catch_start): Pass
16179         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16180
16181 2018-01-05  Pedro Alves  <palves@redhat.com>
16182
16183         PR gdb/22670
16184         * ada-lang.c (literal_symbol_name_matcher): New function.
16185         (ada_get_symbol_name_matcher): Use it for
16186         symbol_name_match_type::SEARCH_NAME.
16187         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16188         it down instead of assuming symbol_name_match_type::FULL.
16189         * block.h (block_lookup_symbol): New parameter 'match_type'.
16190         * c-valprint.c (print_unpacked_pointer): Use
16191         lookup_symbol_search_name instead of lookup_symbol.
16192         * compile/compile-object-load.c (get_out_value_type): Pass down
16193         symbol_name_match_type::SEARCH_NAME.
16194         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16195         symbol_name_match_type::FULL.
16196         * cp-support.c (cp_get_symbol_name_matcher): Handle
16197         symbol_name_match_type::SEARCH_NAME.
16198         * infrun.c (insert_exception_resume_breakpoint): Use
16199         lookup_symbol_search_name.
16200         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16201         * psymtab.c (maintenance_check_psymtabs): Use
16202         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16203         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16204         SYMBOL_SEARCH_NAME.
16205         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16206         if symbol_name_match_type::SEARCH_NAME.
16207         (lookup_symbol_in_language): Pass down
16208         symbol_name_match_type::FULL.
16209         (lookup_symbol_search_name): New.
16210         (lookup_language_this): Pass down
16211         symbol_name_match_type::SEARCH_NAME.
16212         (lookup_symbol_aux, lookup_local_symbol): New parameter
16213         'match_type'.  Pass it down.
16214         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16215         (lookup_symbol_search_name): New declaration.
16216         (lookup_symbol_in_block): New 'match_type' parameter.
16217
16218 2018-01-05  Pedro Alves  <palves@redhat.com>
16219
16220         PR gdb/22670
16221         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16222         ada_lookup_symbol.
16223         (ada_lookup_symbol): Reimplement in terms of
16224         ada_lookup_symbol_list, bits factored out from
16225         ada_lookup_encoded_symbol.
16226
16227 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16228
16229         * ada-exp.y (write_object_renaming): When subscripting an array
16230         using a symbol as the index, pass the block in call to
16231         ada_lookup_encoded_symbol when looking that symbol up.
16232
16233 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16234
16235         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16236         TYPE_INDEX_TYPE.
16237
16238 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16239
16240         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16241         the case where VALUE_LVAL (val0) is not lval_memory.
16242
16243 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16244
16245         * ada-valprint.c (print_optional_low_bound): Handle
16246         character-indexed array printing like boolean-indexed array
16247         printing.
16248
16249 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16250
16251         * NEWS: Create a new section for the next release branch.
16252         Rename the section of the current branch, now that it has
16253         been cut.
16254
16255 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16256
16257         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16258         * version.in: Bump version to 8.1.50.DATE-git.
16259
16260 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16261
16262         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16263         Add field.
16264         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16265         Add field.
16266         (default_exception_support_info) <catch_handlers_sym>: Add field.
16267         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16268         (ada_exception_name_addr_1): Add "catch handlers" handling.
16269         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16270         Update all callers.
16271         (create_excep_cond_exprs) <ex>: Add parameter.
16272         (re_set_exception): Update create_excep_cond_exprs call.
16273         (print_it_exception, print_one_exception, print_mention_exception)
16274         (print_recreate_exception): Add "catch handler" handling.
16275         (allocate_location_catch_handlers, re_set_catch_handlers)
16276         (check_status_catch_handlers, print_it_catch_handlers)
16277         (print_one_catch_handlers, print_mention_catch_handlers)
16278         (print_recreate_catch_handlers): New function.
16279         (catch_handlers_breakpoint_ops): New variable.
16280         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16281         Add parameter.  Add "catch handler" handling.
16282         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16283         Add "catch handler" handling.
16284         (ada_exception_catchpoint_cond_string): Add "catch handler"
16285         handling.
16286         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16287         call.
16288         (catch_ada_handlers_command): New function.
16289         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16290         operations structure.
16291         (_initialize_ada_language): Add "catch handlers" command entry.
16292         * NEWS: Document "catch handlers" feature.
16293
16294 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16295
16296         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16297         account when creating the array type of the slice.
16298         (ada_value_slice): Likewise.
16299
16300 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16301
16302         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16303         New enum value.
16304         (create_array_type_with_stride): Add byte_stride_prop parameter.
16305         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16306         New parameter.  Update all callers in this file.
16307         (array_type_has_dynamic_stride): New function.
16308         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16309         of arrays with dynamic byte strides.
16310         * dwarf2read.c (read_array_type): Add support for dynamic
16311         DW_AT_byte_stride attributes.
16312
16313 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16314
16315         * dwarf2read.c (read_unspecified_type): Treat
16316         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16317
16318 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16319
16320         Update copyright year range in all GDB files.
16321
16322 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16323
16324         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16325         and gdb/testsuite/gdb.base/step-line.c.
16326
16327 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16328
16329         * copyright.py (main): Dump the contents of
16330         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16331         even if BY_HAND is empty.
16332
16333 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16334
16335         * top.c (print_gdb_version): Update Copyright year in version
16336         message.
16337
16338 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16339
16340         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16341
16342 For older changes see ChangeLog-2017.
16343 \f
16344 Local Variables:
16345 mode: change-log
16346 left-margin: 8
16347 fill-column: 74
16348 version-control: never
16349 coding: utf-8
16350 End: