778eebc1b10df9fcbceada42baa75770eaeeb4d2
[external/binutils.git] / gdb / ChangeLog
1 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2             Simon Marchi  <simon.marchi@ericsson.com>
3
4         * linespec.c (symtab_vector_up): Remove.
5         (symtabs_from_filename): Change return type to std::vector.
6         (collect_symtabs_from_filename): Likewise.
7         (create_sals_line_offset): Assign return value of
8         collect_symtabs_from_filename to *ls->file_symtabs.
9         (convert_explicit_location_to_linespec): Remove call to release.
10         (parse_linespec): Likewise.
11         (symtab_collector) <symtab_collector>: Remove initialization of
12         m_symtabs.
13         <release_symtabs>: Change return type to std::vector<symtab *>.
14         <operator ()>: Adjust.
15
16 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
17
18         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
19         defined.
20         (union sigval32, struct siginfo32, fbsd_siginfo_size)
21         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
22         of KERN_PROC_AUXV and PT_LWPINFO.
23         (fbsd_nat_target::xfer_partial): Define method unconditionally.
24         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
25         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
26         Make TARGET_OBJECT_FREEBSD_VMMAP and
27         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
28         and KERN_PROC_PS_STRINGS.
29         * fbsd-nat.h: Include <sys/proc.h>.
30         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
31
32 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
33
34         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
35         header files.
36         (riscv_linux_nat_target::read_description): New method.
37
38 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
39
40         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
41         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
42         (riscv_tdesc_cache): New global.
43         (riscv_create_target_description): Look in the cache before
44         creating a new target description.
45
46 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
47
48         * arch/riscv.h (riscv_gdb_features::operator==): New.
49         (riscv_gdb_features::operator!=): New.
50         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
51         operator.
52
53 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
54
55         * arch/riscv.h (riscv_create_target_description): Make return type
56         const.
57         * arch/riscv.c (riscv_create_target_description): Likewise.
58         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
59
60 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
61             Keith Seitz  <keiths@redhat.com>
62             Tom Tromey  <tom@tromey.com>
63             Sergio Durigan Junior  <sergiodj@redhat.com>
64
65         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
66         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
67         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
68         inside the CU.
69
70 2018-11-30  Pedro Alves  <palves@redhat.com>
71
72         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
73         <stratum>: New override.
74         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
75         <stratum>: New override.
76         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
77         <stratum>: New override.
78         * exec.c (exec_target) <exec_target>: Delete.
79         <stratum>: New override.
80         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
81         stratum method instead of the to_stratum field.
82         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
83         <stratum>: New override.
84         (thread_db_target::thread_db_target): Delete.
85         * make-target-delegates (print_class): Don't print a ctor
86         declaration.  Print a stratum method override declaration.
87         * process-stratum-target.h (process_stratum_target)
88         <process_stratum_target>: Delete.
89         <stratum>: New override.
90         * ravenscar-thread.c (ravenscar_thread_target)
91         <ravenscar_thread_target>: Delete.
92         <stratum>: New override.
93         * record-btrace.c (record_btrace_target)
94         <record_btrace_target>: Delete.
95         <stratum>: New override.
96         * record-full.c (record_full_base_target)
97         <record_full_base_target>: Delete.
98         <stratum>: New override.
99         * record.c (record_disconnect, record_detach)
100         (record_mourn_inferior, record_kill): Adjust to use the stratum
101         method instead of the to_stratum field.
102         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
103         * sol-thread.c (sol_thread_target)
104         <sol_thread_target>: Delete.
105         <stratum>: New override.
106         * spu-multiarch.c (spu_multiarch_target)
107         <spu_multiarch_target>: Delete.
108         <stratum>: New override.
109         * target-delegates.c: Regenerate.
110         * target.c (target_stack::push, target_stack::unpush)
111         (pop_all_targets_above, pop_all_targets_at_and_above)
112         (info_target_command, target_require_runnable)
113         (target_stack::find_beneath): Adjust to use the stratum method
114         instead of the to_stratum field.
115         (dummy_target::dummy_target): Delete.
116         (dummy_target::stratum): New.
117         (debug_target::debug_target): Delete.
118         (debug_target::stratum): New.
119         (maintenance_print_target_stack): Adjust to use the stratum method
120         instead of the to_stratum field.
121         * target.h (struct target_ops) <stratum>: New method.
122         <to_stratum>: Delete.
123         <is_pushed>: Adjust to use the stratum method
124         instead of the to_stratum field.
125
126 2018-11-30  Pedro Alves  <palves@redhat.com>
127
128         * corelow.c (core_target) <has_all_memory, has_execution>: New
129         overrides.
130         * inf-child.c (inf_child_target::has_all_memory)
131         (inf_child_target::has_memory, inf_child_target::has_stack)
132         (inf_child_target::has_registers)
133         (inf_child_target::has_execution): Delete.
134         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
135         has_stack, has_registers, has_execution>: Delete.
136         * process-stratum-target.c
137         (process_stratum_target::has_all_memory)
138         (process_stratum_target::has_memory)
139         (process_stratum_target::has_stack)
140         (process_stratum_target::has_registers)
141         (process_stratum_target::has_execution): New.
142         * process-stratum-target.h (process_stratum_target)
143         <has_all_memory, has_memory, has_stack, has_registers,
144         has_execution>: New method overrides.
145         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
146         has_memory, has_stack, has_registers, has_execution>: Delete.
147         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
148         has_execution>: Delete.
149         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
150         has_registers, has_execution>: Delete.
151         * target.c (default_child_has_all_memory)
152         (default_child_has_memory, default_child_has_stack)
153         (default_child_has_registers, default_child_has_execution):
154         Delete.
155         * target.h (default_child_has_all_memory)
156         (default_child_has_memory, default_child_has_stack)
157         (default_child_has_registers, default_child_has_execution):
158         Delete.
159         * tracefile.h (tracefile_target) <has_execution>: New override.
160
161 2018-11-30  Pedro Alves  <palves@redhat.com>
162
163         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
164         * bsd-kvm.c: Include "process-stratum-target.h".
165         (bsd_kvm_target): Now inherits from process_stratum_target.
166         (bsd_kvm_target::bsd_kvm_target): Default it.
167         * corelow.c: Include "process-stratum-target.h".
168         (core_target): Now inherits from process_stratum_target.
169         (core_target::core_target): Don't set to_stratum here.
170         * inf-child.c (inf_child_target::inf_child_target): Delete.
171         * inf-child.h: Include "process-stratum-target.h".
172         (inf_child_target): Inherit from process_stratum_target.
173         (inf_child_target) <inf_child_target>: Default it.
174         <can_async_p, supports_non_stop, supports_disable_randomization>:
175         Delete overrides.
176         * process-stratum-target.c: New file.
177         * process-stratum-target.h: New file.
178         * remote-sim.c: Include "process-stratum-target.h".
179         (gdbsim_target): Inherit from process_stratum_target.
180         <gdbsim_target>: Default it.
181         * remote.c: Include "process-stratum-target.h".
182         (remote_target): Inherit from process_stratum_target.
183         <remote_target>: Default it.
184         * target.c (default_thread_address_space)
185         (default_thread_architecture): Delete.
186         * target.h (target_ops) <thread_architecture>: Now returns NULL by
187         default.
188         <thread_address_space>: Ditto.
189         * test-target.h: Include "process-stratum-target.h" instead of
190         "target.h".
191         (test_target_ops): Inherit from process_stratum_target.
192         <test_target_ops>: Default it.
193         * tracefile.c (tracefile_target::tracefile_target): Delete.
194         * tracefile.h: Include "process-stratum-target.h".
195         (tracefile_target): Inherit from process_stratum_target.
196         <tracefile_target>: Default it.
197         * target-delegates.c: Regenerate.
198
199 2018-11-30  Pedro Alves  <palves@redhat.com>
200
201         * Makefile.in (COMMON_SFILES): Add test-target.c.
202         * gdbarch-selftests.c: Include "test-target.h".
203         * regcache.c: Include "test-target.h".
204         * target.c (test_target_info, test_target_ops::info): Move to ...
205         * test-target.c: ... this new file.
206         * target.h (test_target_ops): Move to ...
207         * test-target.h: ... this new file.
208
209 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
210
211         * source.c (forward_search_command): Fix leak by using
212         xrealloc even for the first allocation in the loop, as buf
213         is static.
214
215 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
216
217         PR gdb/23093
218         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
219         (fbsd_gdb_signal_to_target): New.
220         (fbsd_init_abi): Install gdbarch "signal_from_target" and
221         "signal_to_target" methods.
222
223 2018-11-29  Tom Tromey  <tom@tromey.com>
224
225         * valarith.c (value_x_unop): Don't set argvec[3].
226
227 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
228
229         PR gdb/23917
230         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
231         semicolon.
232
233 2018-11-26  Pedro Alves  <palves@redhat.com>
234
235         * procfs.c (procfs_notice_thread): Replace uses of
236         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
237         * sol-thread.c (sol_thread_target::wait)
238         (sol_update_thread_list_callback): Likewise.
239
240 2018-11-25  Tom Tromey  <tom@tromey.com>
241
242         * ui-out.c (ui_out::field_fmt): Remove comment.
243         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
244         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
245
246 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
247
248         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
249         leak in open_source_file' has been partially undone by '2179fbc36d23
250         Return scoped_fd from open_source_file'. Re-add the transfer of
251         current s->fullname to the unique_xmalloc_ptr fullname given
252         to find_and_open_source.
253
254 2018-11-23  Pedro Alves  <palves@redhat.com>
255
256         * gdbthread.h (enum thread_state): Move comments here.
257         (is_running, is_stopped, is_exited): Remove declarations.
258
259 2018-11-22  Pedro Alves  <palves@redhat.com>
260
261         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
262         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
263         ALL_NON_EXITED_THREADS with all_non_exited_threads.
264         (print_one_breakpoint_location): Replace ALL_INFERIORS with
265         all_inferiors.
266         * bsd-kvm.c: Include inferior.h.
267         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
268         with all_non_exited_threads.
269         * common/filtered-iterator.h: New.
270         * common/safe-iterator.h: New.
271         * corelow.c (core_target_open): Don't call init_thread_list here.
272         * darwin-nat.c (thread_info_from_private_thread_info): Replace
273         ALL_THREADS with all_threads.
274         * fbsd-nat.c (fbsd_nat_target::resume): Replace
275         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
276         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
277         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
278         * fork-child.c (postfork_hook): Don't call init_thread_list here.
279         * gdbarch-selftests.c (register_to_value_test): Adjust.
280         * gdbthread.h: Don't include "inferior.h" here.
281         (struct inferior): Forward declare.
282         (enum step_over_calls_kind): Moved here from inferior.h.
283         (thread_info::deletable): Definition moved to thread.c.
284         (find_thread_ptid (inferior *, ptid_t)): Declare.
285         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
286         Include "thread-iter.h".
287         (all_threads, all_non_exited_threads, all_threads_safe): New.
288         (any_thread_p): Declare.
289         (thread_list): Delete.
290         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
291         all_non_exited_threads.
292         (proceed_after_attach_callback): Delete.
293         (proceed_after_attach): Take an inferior pointer instead of an
294         integer PID.  Adjust to use range-for.
295         (attach_post_wait): Pass down inferior pointer instead of pid.
296         Use range-for instead of ALL_NON_EXITED_THREADS.
297         (detach_command): Remove init_thread_list call.
298         * inferior-iter.h: New.
299         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
300         (delete_thread_of_inferior): Delete.
301         (delete_inferior, exit_inferior_1): Use range-for with
302         inf->threads_safe() instead of iterate_over_threads.
303         (inferior_appeared): Call init_thread_list here.
304         (discard_all_inferiors): Use all_non_exited_inferiors.
305         (find_inferior_id, find_inferior_pid): Use all_inferiors.
306         (iterate_over_inferiors): Use all_inferiors_safe.
307         (have_inferiors, number_of_live_inferiors): Use
308         all_non_exited_inferiors.
309         (number_of_inferiors): Use all_inferiors and std::distance.
310         (print_inferior): Use all_inferiors.
311         * inferior.h: Include gdbthread.h.
312         (enum step_over_calls_kind): Moved to gdbthread.h.
313         (struct inferior) <thread_list>: New field.
314         <threads, non_exited_threads, threads_safe>: New methods.
315         (ALL_INFERIORS): Delete.
316         Include "inferior-iter.h".
317         (ALL_NON_EXITED_INFERIORS): Delete.
318         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
319         functions.
320         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
321         ALL_NON_EXITED_THREADS with all_non_exited_threads.
322         * infrun.c (follow_exec): Use all_threads_safe.
323         (clear_proceed_status, proceed): Use all_non_exited_threads.
324         (init_wait_for_inferior): Don't clear inline frame state here.
325         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
326         all_threads instead of ALL_NON_EXITED_THREADS.
327         (random_pending_event_thread): Use all_non_exited_threads instead
328         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
329         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
330         instead of ALL_NON_EXITED_THREADS.
331         (handle_no_resumed): Use all_non_exited_threads instead of
332         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
333         ALL_INFERIORS.
334         (restart_threads, switch_back_to_stepped_thread): Use
335         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
336         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
337         all_inferiors.
338         (kill_unfollowed_fork_children): Use inf->non_exited_threads
339         instead of ALL_NON_EXITED_THREADS.
340         * linux-tdep.c (linux_make_corefile_notes): Use
341         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
342         * linux-thread-db.c (thread_db_target::update_thread_list):
343         Replace ALL_INFERIORS with all_inferiors.
344         (thread_db_target::thread_handle_to_thread_info): Use
345         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
346         * mi/mi-interp.c (multiple_inferiors_p): New.
347         (mi_on_resume_1): Simplify using all_non_exited_threads and
348         multiple_inferiors_p.
349         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
350         instead of ALL_NON_EXITED_THREADS.
351         * nto-procfs.c (nto_procfs_target::open): Don't call
352         init_thread_list here.
353         * record-btrace.c (record_btrace_target_open)
354         (record_btrace_target::stop_recording)
355         (record_btrace_target::close)
356         (record_btrace_target::record_is_replaying)
357         (record_btrace_target::resume, record_btrace_target::wait)
358         (record_btrace_target::record_stop_replaying): Use
359         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
360         * record-full.c (record_full_wait_1): Use all_non_exited_threads
361         instead of ALL_NON_EXITED_THREADS.
362         * regcache.c (cooked_read_test): Remove reference to global
363         thread_list.
364         * remote-sim.c (gdbsim_target::create_inferior): Don't call
365         init_thread_list here.
366         * remote.c (remote_target::update_thread_list): Use
367         all_threads_safe instead of ALL_NON_EXITED_THREADS.
368         (remote_target::process_initial_stop_replies): Replace
369         ALL_INFERIORS with all_non_exited_inferiors and use
370         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
371         (remote_target::open_1): Don't call init_thread_list here.
372         (remote_target::append_pending_thread_resumptions)
373         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
374         instead of ALL_NON_EXITED_THREADS.
375         (remote_target::commit_resume)
376         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
377         with all_non_exited_inferiors and use all_non_exited_threads
378         instead of ALL_NON_EXITED_THREADS.
379         (remote_target::kill_new_fork_children): Use
380         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
381         init_thread_list and init_wait_for_inferior calls.
382         (remote_target::remote_btrace_maybe_reopen)
383         (remote_target::thread_handle_to_thread_info): Use
384         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
385         * target.c (target_terminal::restore_inferior)
386         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
387         all_non_exited_inferiors.
388         * thread-iter.c: New file.
389         * thread-iter.h: New file.
390         * thread.c: Include "inline-frame.h".
391         (thread_list): Delete.
392         (clear_thread_inferior_resources): Call clear_inline_frame_state.
393         (init_thread_list): Use all_threads_safe instead of
394         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
395         (new_thread): Adjust to per-inferior thread lists.
396         (add_thread_silent): Pass inferior to find_thread_ptid.
397         (thread_info::deletable): New, moved from the header.
398         (delete_thread_1): Adjust to per-inferior thread lists.
399         (find_thread_global_id): Use inf->threads().
400         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
401         find_thread_ptid.
402         (find_thread_ptid(inferior*, ptid_t)): New overload.
403         (iterate_over_threads): Use all_threads_safe.
404         (any_thread_p): New.
405         (thread_count): Use all_threads and std::distance.
406         (live_threads_count): Use all_non_exited_threads and
407         std::distance.
408         (valid_global_thread_id): Use all_threads.
409         (in_thread_list): Use find_thread_ptid.
410         (first_thread_of_inferior): Adjust to per-inferior thread lists.
411         (any_thread_of_inferior, any_live_thread_of_inferior): Use
412         inf->non_exited_threads().
413         (prune_threads, delete_exited_threads): Use all_threads_safe.
414         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
415         (set_resumed, set_running): Use all_non_exited_threads.
416         (is_thread_state, is_stopped, is_exited, is_running)
417         (is_executing): Delete.
418         (set_executing, set_stop_requested, finish_thread_state): Use
419         all_non_exited_threads.
420         (print_thread_info_1): Use all_inferiors and all_threads.
421         (thread_apply_all_command): Use all_non_exited_threads.
422         (thread_find_command): Use all_threads.
423         (update_threads_executing): Use all_non_exited_threads.
424         * tid-parse.c (parse_thread_id): Use inf->threads.
425         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
426
427 2018-11-22  Pedro Alves  <palves@redhat.com>
428
429         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
430         switch to it before calling into try_open_exec_file.
431
432 2018-11-22  Pedro Alves  <palves@redhat.com>
433
434         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
435         inferior_thread instead of find_thread_ptid, and only when
436         inferior_ptid is not null_ptid.
437         * inferior.c (add_inferior): Don't include target_pid_to_str
438         output when the inferior is not started.
439         * python/py-inferior.c (python_on_normal_stop): Don't use
440         find_thread_ptid.
441         (tui_on_user_selected_context_changed): Use inferior_thread
442         instead of find_thread_ptid, and only when inferior_ptid is not
443         null_ptid.
444
445 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
446
447         PR python/23714
448         * gdb/python/python.c (execute_gdb_command): Call
449         prevent_dont_repeat earlier to avoid affecting dont_repeat.
450
451 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
452
453         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
454         (HFILES_NO_SRCDIR): Add arch/riscv.h.
455         * arch/riscv.c: New file.
456         * arch/riscv.h: New file.
457         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
458         this list, and add arch/riscv.o.
459         * features/Makefile: Add riscv features.
460         * features/riscv/32bit-cpu.c: New file.
461         * features/riscv/32bit-cpu.xml: New file.
462         * features/riscv/32bit-csr.c: New file.
463         * features/riscv/32bit-csr.xml: New file.
464         * features/riscv/32bit-fpu.c: New file.
465         * features/riscv/32bit-fpu.xml: New file.
466         * features/riscv/64bit-cpu.c: New file.
467         * features/riscv/64bit-cpu.xml: New file.
468         * features/riscv/64bit-csr.c: New file.
469         * features/riscv/64bit-csr.xml: New file.
470         * features/riscv/64bit-fpu.c: New file.
471         * features/riscv/64bit-fpu.xml: New file.
472         * features/riscv/rebuild-csr-xml.sh: New file.
473         * riscv-tdep.c: Add 'arch/riscv.h' include.
474         (riscv_gdb_reg_names): Delete.
475         (csr_reggroup): New global.
476         (struct riscv_register_alias): Delete.
477         (struct riscv_register_feature): New structure.
478         (riscv_register_aliases): Delete.
479         (riscv_xreg_feature): New global.
480         (riscv_freg_feature): New global.
481         (riscv_virtual_feature): New global.
482         (riscv_csr_feature): New global.
483         (riscv_create_csr_aliases): New function.
484         (riscv_read_misa_reg): Delete.
485         (riscv_has_feature): Delete.
486         (riscv_isa_xlen): Simplify, just return cached xlen.
487         (riscv_isa_flen): Simplify, just return cached flen.
488         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
489         (riscv_register_name): Update to make use of tdesc_register_name.
490         Look up xreg and freg names in the new globals riscv_xreg_feature
491         and riscv_freg_feature.  Don't supply csr aliases here.
492         (riscv_fpreg_q_type): Delete.
493         (riscv_register_type): Use tdesc_register_type in almost all
494         cases, override the returned type in a few specific cases only.
495         (riscv_print_one_register_info): Handle errors reading registers.
496         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
497         registers that are otherwise unknown to GDB.  Also check the
498         csr_reggroup.
499         (riscv_print_registers_info): Remove assert about upper register
500         number, and use gdbarch_register_reggroup_p instead of
501         short-cutting.
502         (riscv_find_default_target_description): New function.
503         (riscv_check_tdesc_feature): New function.
504         (riscv_add_reggroups): New function.
505         (riscv_setup_register_aliases): New function.
506         (riscv_init_reggroups): New function.
507         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
508         setup register groups.  Register new riscv debug variable.
509         * riscv-tdep.h: Add 'arch/riscv.h' include.
510         (struct gdbarch_tdep): Remove abi union, and add
511         riscv_gdbarch_features field.  Remove cached quad floating point
512         type, and provide initialisation for double type field.
513         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
514         the list of targets using the feature based target descriptions.
515         * NEWS: Mention target description support.
516
517 2018-11-21  Pedro Alves  <palves@redhat.com>
518
519         * valops.c (find_method_list, value_find_oload_method_list)
520         (find_overload_match, find_oload_champ): Rename parameters and
521         locals.
522
523 2018-11-21  Pedro Alves  <palves@redhat.com>
524
525         * valops.c (find_method_list): Replace pointer and length
526         parameters with an gdb::array_view.  Adjust.
527         (value_find_oload_method_list): Likewise.
528         (find_overload_match): Use gdb::array_view for methods list.
529         Adjust to find_oload_champ interface change.
530         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
531         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
532
533 2018-11-21  Pedro Alves  <palves@redhat.com>
534
535         * gdbtypes.c (compare_badness): Change type of parameters to const
536         reference.  Adjust to badness_vector being a std::vector now.
537         (rank_function): Adjust to badness_vector being a std::vector now.
538         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
539         (LENGTH_MATCH): Delete.
540         (compare_badness): Change type of parameters to const reference.
541         (rank_function): Return a badness_vector by value now.
542         (find_overload_match): Adjust to badness_vector being a
543         std::vector now.  Remove cleanups.
544         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
545         badness_vector pointer.
546         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
547         a badness_vector pointer.  Adjust to badness_vector being a
548         std::vector now.  Remove cleanups.
549         (find_oload_champ): 'oload_champ_bv' parameter now
550         a badness_vector pointer.  Adjust to badness_vector being a
551         std::vector now.  Remove cleanups.
552
553 2018-11-21  Pedro Alves  <palves@redhat.com>
554
555         * cp-support.c (sym_return_val_size, sym_return_val_index)
556         (sym_return_val): Delete.
557         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
558         add to the vector.
559         (make_symbol_overload_list): Adjust to return a std::vector
560         instead of maintaining a global open coded vector.
561         (make_symbol_overload_list_block): Add std::vector parameter.
562         (make_symbol_overload_list_block): Rename to ...
563         (add_symbol_overload_list_block): ... this and add std::vector
564         parameter.
565         (make_symbol_overload_list_namespace): Rename to ...
566         (add_symbol_overload_list_namespace): ... this and add std::vector
567         parameter.
568         (make_symbol_overload_list_adl_namespace): Rename to ...
569         (add_symbol_overload_list_adl_namespace): ... this and add
570         std::vector parameter.
571         (make_symbol_overload_list_adl): Delete.
572         (add_symbol_overload_list_adl): New.
573         (make_symbol_overload_list_using): Rename to ...
574         (add_symbol_overload_list_using): ... this and add std::vector
575         parameter.
576         (make_symbol_overload_list_qualified): Rename to ...
577         (add_symbol_overload_list_qualified): ... this and add std::vector
578         parameter.
579         * cp-support.h: Include "common/array-view.h" and <vector>.
580         (make_symbol_overload_list): Change return type to std::vector.
581         (make_symbol_overload_list_adl): Delete declaration.
582         (add_symbol_overload_list_adl): New declaration.
583         * valops.c (find_overload_match): Local 'oload_syms' now a
584         std::vector.
585         (find_oload_champ_namespace): 'oload_syms' parameter now a
586         std::vector pointer.
587         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
588         std::vector pointer.  Adjust to new make_symbol_overload_list
589         interface.
590
591 2018-11-21  Pedro Alves  <palves@redhat.com>
592
593         * common/array-view.h (array_view::splice(size_type, size_t)): New.
594         (array_view::splice(size_type)): New.
595         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
596         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
597         std::vector.
598         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
599         * extension.h: Include "common/array-view.h".
600         (xmethod_worker::invoke): Adjust to use gdb::array_view.
601         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
602         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
603         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
604         (xmethod_worker::do_get_result_type): Adjust to use
605         gdb::array_view.
606         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
607         * gdbtypes.h: Include "common/array-view.h".
608         (rank_function): Adjust to use gdb::array_view.
609         * python/py-xmethods.c (python_xmethod_worker::invoke)
610         (python_xmethod_worker::do_get_arg_types)
611         (python_xmethod_worker::do_get_result_type)
612         (python_xmethod_worker::invoke): Adjust to new interfaces.
613         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
614         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
615         * valops.c (find_overload_match, find_oload_champ_namespace)
616         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
617         gdb:array_view and the new xmethod_worker interfaces.
618         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
619         gdb::array_view.
620         * value.h (find_overload_match, result_type_of_xmethod)
621         (call_xmethod): Adjust to use gdb::array_view.
622         * unittests/array-view-selftests.c: Add slicing tests.
623
624 2018-11-21  Pedro Alves  <palves@redhat.com>
625
626         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
627         * common/array-view.h (make_array_view): New.
628         * compile/compile-object-run.c (compile_object_run): Adjust to
629         pass an array_view.
630         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
631         * eval.c (eval_call): Adjust to pass an array_view.
632         (evaluate_subexp_standard): Adjust to pass an array_view.
633         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
634         * guile/scm-value.c (gdbscm_value_call): Likewise.
635         * infcall.c (push_dummy_code): Replace pointer + size parameters
636         with an array_view parameter.
637         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
638         adjust.
639         * infcall.h: Include "common/array-view.h".
640         (call_function_by_hand, call_function_by_hand_dummy): Replace
641         pointer + size parameters with an array_view parameter.
642         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
643         * linux-tdep.c (linux_infcall_mmap): Likewise.
644         * objc-lang.c (lookup_objc_class, lookup_child_selector)
645         (value_nsstring, print_object_command): Likewise.
646         * python/py-value.c (valpy_call): Likewise.
647         * rust-lang.c (rust_evaluate_funcall): Likewise.
648         * spu-tdep.c (flush_ea_cache): Likewise.
649         * valarith.c (value_x_binop, value_x_unop): Likewise.
650         * valops.c (value_allocate_space_in_inferior): Likewise.
651         * unittests/array-view-selftests.c (run_tests): Add
652         gdb::make_array_view test.
653
654 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
655
656         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
657         than a fixed size buffer.
658
659 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
660
661         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
662         and remove insertion of extra spaces in GDB's output.
663         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
664         Layout field into a temporary buffer, and then output it as a
665         string field.
666
667 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
668
669         * NEWS: Document the language choice done by
670         'info [types|functions|variables]|rbreak'.
671
672 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
673
674         * symtab.c (treg_matches_sym_type_name): Use
675         scoped_switch_to_sym_language_if_auto instead of local logic.
676         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
677         to switch to SYM language when language mode is auto.
678
679 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
680
681         * language.h (scoped_switch_to_sym_language_if_auto): New class.
682
683 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
684
685         * symtab.c (search_symbols): Properly check absence of type regexp
686         before entering the loop scanning the minimal symbols.
687
688 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
689
690         * s12z-tdep.c (s12z_extract_return_value): New function.
691         (inv_reg_perm) New array.
692         (s12z_return_value): Populate readbuf if non-null.
693
694 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
695
696         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
697         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
698         to MinGW fixed by Gnulib.
699         (O_NOINHERIT): Define if not defined.
700
701 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
702
703         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
704
705 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
706
707         * infrun.c (displaced_step_inferior_state) <next>: Remove.
708
709 2018-11-19  Tom Tromey  <tom@tromey.com>
710
711         * source.c (get_filename_and_charpos): Return void.
712
713 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
714
715         * skip.c (_initialize_step_skip): Fix "info skip" help.
716
717 2018-11-16  Tom Tromey  <tom@tromey.com>
718
719         PR rust/23625:
720         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
721
722 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
723
724         * infrun.c (displaced_step_inferior_states): Change type to
725         std::forward_list.
726         (get_displaced_stepping_state): Adjust.
727         (displaced_step_in_progress_any_inferior): Adjust.
728         (add_displaced_stepping_state): Adjust.
729         (remove_displaced_stepping_state): Adjust.
730
731 2018-11-18  Tom Tromey  <tom@tromey.com>
732
733         PR build/23814:
734         * target-delegates.c: Rebuild.
735         * ia64-linux-nat.c (class ia64_linux_nat_target)
736         <have_steppable_watchpoint>: Use override.  Return true, not 1.
737         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
738         "self" argument.
739         (ia64_linux_nat_target::low_new_thread): Rename.
740         (class ia64_linux_nat_target) <read_description>: Don't declare.
741         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
742         bool.
743
744 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
745
746         PR gdb/22736:
747         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
748         lang_struct_return code.
749
750 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
751
752         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
753         return_method.
754         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
755         * amd64-tdep.c (amd64_push_arguments): Likewise.
756         (amd64_push_dummy_call): Likewise.
757         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
758         * arc-tdep.c (arc_push_dummy_call): Likewise.
759         * arm-tdep.c (arm_push_dummy_call): Likewise.
760         * avr-tdep.c (avr_push_dummy_call): Likewise.
761         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
762         * cris-tdep.c (cris_push_dummy_call): Likewise.
763         * csky-tdep.c (csky_push_dummy_call): Likewise.
764         * frv-tdep.c (frv_push_dummy_call): Likewise.
765         * gdbarch.c: Regenerate.
766         * gdbarch.h: Regenerate.
767         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
768         return_method.
769         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
770         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
771         (hppa64_push_dummy_call): Likewise.
772         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
773         * i386-tdep.c (i386_push_dummy_call): Likewise.
774         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
775         * infcall.c (call_function_by_hand_dummy): Likewise.
776         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
777         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
778         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
779         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
780         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
781         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
782         * mep-tdep.c (mep_push_dummy_call): Likewise.
783         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
784         (mips_n32n64_push_dummy_call): Likewise.
785         (mips_o32_push_dummy_call): Likewise.
786         (mips_o64_push_dummy_call): Likewise.
787         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
788         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
789         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
790         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
791         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
792         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
793         (ppc64_sysv_abi_push_dummy_call): Likewise.
794         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
795         (ppc64_sysv_abi_push_dummy_call): Likewise.
796         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
797         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
798         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
799         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
800         * rx-tdep.c (rx_push_dummy_call): Likewise.
801         * s390-tdep.c (s390_push_dummy_call): Likewise.
802         * score-tdep.c (score_push_dummy_call): Likewise.
803         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
804         (sh_push_dummy_call_nofpu): Likewise.
805         * sparc-tdep.c (sparc32_store_arguments): Likewise.
806         (sparc32_push_dummy_call): Likewise.
807         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
808         (sparc64_push_dummy_call): Likewise.
809         * spu-tdep.c (spu_push_dummy_call): Likewise.
810         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
811         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
812         * v850-tdep.c (v850_push_dummy_call): Likewise.
813         * vax-tdep.c (vax_push_dummy_call): Likewise.
814         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
815         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
816
817 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
818
819         * gdbarch.sh (enum function_call_return_method): Add enum.
820         * gdbarch.h: Regenerate.
821         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
822
823 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
824
825         * unittests/copy_bitwise-selftests.c: New file.
826         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
827         (selftests::copy_bitwise_tests): Delete, moving this code to
828         unittests/copy_bitwise-selftests.c instead.
829         (_initialize_utils): Do not register copy_bitwise tests.
830         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
831         unittests/copy_bitwise-selftests.c.
832
833 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
834
835         * ada-lang.c (move_bits): Delete. Update all callers to use
836         copy_bitwise instead.
837         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
838         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
839         Move from here to utils.c.
840         (_initialize_dwarf2loc): Remove call to register copy_bitwise
841         selftests.
842         * utils.h (copy_bitwise): Add declaration.
843         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
844         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
845         Moved here from dwarf2loc.c.
846         (_initialize_utils): Register copy_bitwise selftests.
847
848 2018-11-14  Jim Wilson  <jimw@sifive.com>
849
850         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
851         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
852         then increment next_regnum if odd.
853         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
854         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
855         function type.  Pass new arg to riscv_arg_location based on function
856         type.
857         (riscv_return_value): Pass new arg to riscv_arg_location.
858
859         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
860         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
861         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
862
863         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
864         setting len.  New local align, set to max of arg align and xlen,
865         and pass to first riscv_assign_stack_location call.
866
867 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
868
869         * skip.c (complete_skip_number): New function.
870         (_initialize_step_skip): Add completers to some skip commands.
871
872 2018-11-09  Tom Tromey  <tom@tromey.com>
873
874         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
875         (struct remote_g_packet_data): Derive from allocate_on_obstack.
876         <guesses>: Now a std::vector.
877         (remote_g_packet_data_init, register_remote_g_packet_guess):
878         Update.
879         (remote_read_description_p): Update.  Return bool.
880         (remote_target::read_description): Update.
881         (struct remote_g_packet_guess): Add constructor.
882
883 2018-11-09  Tom Tromey  <tom@tromey.com>
884
885         * common/scoped_fd.h (class scoped_fd): Add move constructor and
886         move assignment operator.
887         * psymtab.c (psymtab_to_fullname): Update.
888         * source.h (open_source_file): Return scoped_fd.
889         (find_and_open_source): Likewise.
890         * source.c (open_source_file): Return scoped_fd.
891         (get_filename_and_charpos): Update.
892         (print_source_lines_base): Update.  Use scoped_fd::to_file.
893         (forward_search_command): Likewise.
894         (reverse_search_command): Likewise.
895         (find_and_open_source): Return scoped_fd.
896         * tui/tui-source.c (tui_set_source_content): Update.  Use
897         gdb_file_up.
898
899 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
900
901         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
902         overflow.
903
904 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
905
906         * configure: Regenerate.
907
908 2018-11-09  Tom de Vries  <tdevries@suse.de>
909
910         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
911         unconditionally, to set the language of the symbol.  Manage freeing
912         returned pointer using gdb::unique_xmalloc_ptr.
913
914 2018-11-08  Tom Tromey  <tom@tromey.com>
915
916         * record.c (require_record_target): Upper-case "<TAB>".
917
918 2018-11-08  Tom Tromey  <tom@tromey.com>
919
920         * python/lib/gdb/command/pretty_printers.py
921         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
922
923 2018-11-08  Tom Tromey  <tom@tromey.com>
924
925         PR gdb/23555:
926         PR gdb/23838:
927         * target.h (target_supports_terminal_ours): Return bool.
928         * target.c (target_supports_terminal_ours): Handle case where
929         current_top_target returns nullptr.  Return bool.
930
931 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
932
933         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
934         return the correct count for potential HFAs.
935
936 2018-11-08  Jan Beulich  <jbeulich@suse.com>
937
938         * i387-tdep.c (i387_supply_xsave): Split handling of
939         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
940         (i387_collect_xsave): Likewise.
941
942 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
943
944         * riscv-tdep.c (riscv_insn::decode): Update header comment.
945         (riscv_frame_this_id): Catch errors thrown while building the
946         frame cache, leave the frame id as the default, which is the outer
947         frame id.
948
949 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
950
951         * ada-lang.c (read_atcb): Only set task_info->called_task if
952         task_info->state == Entry_Caller_Sleep.
953         (print_ada_task_info): Do not check task_info->state before
954         checking task_info->called_task.
955         (info_task): Likewise.
956
957 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
958
959         * ada-tasks.c (read_atcb): Clear task_info before computing
960         the value of each of its fields.
961
962 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
963
964         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
965         NULL before dereferencing it.
966
967 2018-11-06  Tom de Vries  <tdevries@suse.de>
968
969         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
970         program headers.
971
972 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
973
974         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
975         so that it applies to uclinux as well.
976
977 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
978
979         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
980         when on AAPCS.
981
982 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
983
984         * riscv-fbsd-nat.c (getregs_supplies): Return true for
985         RISCV_CSR_SSTATUS_REGNUM.
986
987 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
988
989         * source.c (open_source_file): Fix leak by transferring the
990         current s->fullname to the unique_xmalloc_ptr fullname given
991         to find_and_open_source.
992
993 2018-11-04  Tom Tromey  <tom@tromey.com>
994
995         * varobj.c (install_default_visualizer): Update.
996         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
997         Return gdbpy_ref.
998         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
999         (find_pretty_printer_from_progspace)
1000         (find_pretty_printer_from_gdb, find_pretty_printer)
1001         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1002         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1003         Update.
1004
1005 2018-11-04  Tom Tromey  <tom@tromey.com>
1006
1007         * python/python.c (gdbpy_parameter_value): Update.
1008         * python/python-internal.h (python_string_to_unicode)
1009         (python_string_to_target_python_string)
1010         (host_string_to_python_string): Return gdbpy_ref.
1011         * python/py-utils.c (python_string_to_unicode)
1012         (unicode_to_encoded_python_string)
1013         (unicode_to_target_python_string)
1014         (python_string_to_target_string)
1015         (python_string_to_target_python_string): Return gdbpy_ref.
1016         (python_string_to_host_string): Update.
1017         (host_string_to_python_string): Return gdbpy_ref.
1018         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1019         (stpy_fullname): Update.
1020         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1021         Update.
1022         * python/py-prettyprint.c (print_string_repr): Update.
1023         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1024         (objfpy_get_build_id): Update.
1025         * python/py-breakpoint.c (bppy_get_location)
1026         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1027         Update.
1028
1029 2018-11-04  Tom Tromey  <tom@tromey.com>
1030
1031         * python/python-internal.h (gdb_py_object_from_longest)
1032         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1033         * python/py-value.c (valpy_int): Update.
1034         * python/py-utils.c (gdb_py_object_from_longest): Return
1035         gdbpy_ref.
1036         (gdb_py_object_from_ulongest): Likewise.
1037         * python/py-type.c (typy_get_alignof): Update.
1038         * python/py-linetable.c (ltpy_get_all_source_lines)
1039         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1040         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1041
1042 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1043
1044         * ada-lang.c (_initialize_ada_language): Fix typo.
1045
1046 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1047
1048         * language.c (type): Remove.
1049         (_initialize_language): Remove assignment to type.
1050
1051 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1052
1053         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1054         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1055         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1056         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1057         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1058         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1059         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1060         and aarch64-ravenscar-thread.o.
1061         * NEWS: Add entry documenting Ravenscar tasking support
1062         on AArch64 ELF.
1063
1064 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1065
1066         * symtab.c (info_functions_command): Initialize quiet flag.
1067         * stack.c (info_args_command): Likewise.
1068
1069 2018-11-01  Jim Wilson  <jimw@sifive.com>
1070
1071         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1072         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1073         debugging messages.
1074
1075 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1076
1077         * ada-lang.c (ada_watch_location_expression): New function.
1078         (ada_language_defn): Set la_watch_location_expression to
1079         ada_watch_location_expression.
1080
1081 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1082
1083         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1084
1085 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1086
1087         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1088         shifting.
1089
1090 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1091             Joel Brobecker  <brobecker@adacore.com>
1092
1093         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1094         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1095         * arm-pikeos-tdep.c: New file.
1096         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1097         embedded system.
1098         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1099
1100 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1101
1102         * common/pathstuff.c (get_standard_temp_dir): New.
1103         * common/pathstuff.h (get_standard_temp_dir): New.
1104         * config.in: Re-generate.
1105         * configure: Re-generate.
1106         * configure.ac: Don't check for mkdtemp.
1107         * gnulib/aclocal-m4-deps.mk: Re-generate.
1108         * gnulib/aclocal.m4: Re-generate.
1109         * gnulib/config.in: Re-generate.
1110         * gnulib/configure: Re-generate.
1111         * gnulib/import/Makefile.am: Re-generate.
1112         * gnulib/import/Makefile.in: Re-generate.
1113         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1114         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1115         * gnulib/import/m4/mkdtemp.m4: New file.
1116         * gnulib/import/mkdtemp.c: New file.
1117         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1118         Add mkdtemp module.
1119         * unittests/mkdir-recursive-selftests.c (test): Use
1120         get_standard_temp_dir.
1121         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1122         ifdef.
1123         * compile/compile.c (get_compile_file_tempdir): Likewise.
1124
1125 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1126
1127         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1128         (SIG_FRAME_LR_OFFSET64): New define.
1129         (SIG_FRAME_FP_OFFSET64): New define.
1130         (aix_sighandle_frame_cache): New Function.
1131         (aix_sighandle_frame_this_id): New Function.
1132         (aix_sighandle_frame_prev_register): New Function.
1133         (aix_sighandle_frame_sniffer): New Function.
1134         (aix_sighandle_frame_unwind): New global variable.
1135         (rs6000_aix_init_osabi): Install new frame unwinder.
1136
1137 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1138
1139         PR gdb/23835
1140         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1141         already defined.
1142
1143 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1144
1145         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1146
1147 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1148
1149         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1150         (producer_is_icc): New function.
1151         (check_producer): Set producer_is_icc field on dwarf2_cu.
1152         (dwarf2_init_integer_type): New function.
1153         (read_base_type): Call dwarf2_init_integer_type instead of
1154         init_integer_type in all cases.
1155         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1156         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1157         LEN is greater than 0.
1158
1159 2018-10-30  Tom Tromey  <tom@tromey.com>
1160
1161         * main.c (captured_main_1): Check return value of bfd_init.
1162
1163 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1164
1165         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1166         Adjust comments.
1167
1168 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1169
1170         * procfs.c: Include common/pathstuff.h.
1171
1172 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1173
1174         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1175         Add missing braces.  No functional change.
1176
1177 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1178
1179         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1180         to report a bad option and fix indentation.
1181         * demangle.c (demangle_command): Use report_unrecognized_option_error
1182         to report a bad option and correctly report the bad option.
1183
1184 2018-10-27  Tom Tromey  <tom@tromey.com>
1185
1186         PR cli/23364:
1187         * darwin-nat.c (copied_shell): New global.
1188         (may_have_sip): Rename from should_disable_startup_with_shell.
1189         (copy_shell_to_cache, maybe_cache_shell): New functions.
1190         (darwin_nat_target::create_inferior): Update.  Use
1191         copied_shell.
1192
1193 2018-10-27  Tom Tromey  <tom@tromey.com>
1194
1195         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1196         (run_tests): Call test_to_file.
1197         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1198         temporary files.
1199         * common/scoped_fd.h (scoped_fd::to_file): New method.
1200
1201 2018-10-27  Tom Tromey  <tom@tromey.com>
1202
1203         * unittests/scoped_mmap-selftests.c (test_normal): Use
1204         gdb_mkostemp_cloexec.
1205         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1206         Use gdb_mkostemp_cloexec.
1207         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1208         gnulib/config.in, gnulib/configure,
1209         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1210         gnulib/import/m4/gnulib-cache.m4,
1211         gnulib/import/m4/gnulib-comp.m4: Update.
1212         * gnulib/import/m4/mkostemp.m4: New file.
1213         * gnulib/import/m4/mkstemp.m4: Remove.
1214         * gnulib/import/mkostemp.c: New file.
1215         * gnulib/import/mkstemp.m4: Remove.
1216         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1217         mkstemp, add mkostemp.  Apply new patch.
1218         * gnulib/import/stdlib.in.h: Apply patch.
1219         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1220         New file.
1221         * dwarf-index-write.c (write_psymtabs_to_index): Use
1222         gdb_mkostemp_cloexec.
1223         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1224
1225 2018-10-27  Tom Tromey  <tom@tromey.com>
1226
1227         * unittests/mkdir-recursive-selftests.c: New file.
1228         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1229         unittests/mkdir-recursive-selftests.c.
1230         * dwarf-index-cache.c (mkdir_recursive): Move to
1231         common/filestuff.c.
1232         (index_cache::store): Check return value of mkdir_recursive.
1233         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1234         (_initialize_index_cache): Don't register test.
1235         * common/filestuff.h (mkdir_recursive): Declare.
1236         * common/filestuff.c (mkdir_recursive): Move from
1237         dwarf-index-cache.c.  Return bool.
1238
1239 2018-10-27  Tom Tromey  <tom@tromey.com>
1240
1241         * dwarf-index-write.c (write_psymtabs_to_index): Move
1242         make_temp_filename to common/pathstuff.c.
1243         * common/pathstuff.h (make_temp_filename): Declare.
1244         * common/pathstuff.c (make_temp_filename): New function, moved
1245         from dwarf-index-write.c.
1246
1247 2018-10-27  Tom Tromey  <tom@tromey.com>
1248
1249         * procfs.c (procfs_target::create_inferior): Use get_shell.
1250         * cli/cli-cmds.c (shell_escape): Use get_shell.
1251         * windows-nat.c (windows_nat_target::create_inferior): Use
1252         get_shell.
1253         * common/pathstuff.c (get_shell): New function.
1254         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1255         (fork_inferior): Use get_shell.
1256         * common/pathstuff.h (get_shell): Declare.
1257
1258 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1259
1260         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1261
1262 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1263
1264         * stack.c (print_variable_and_value_data): Add preg and treg.
1265         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1266         and update callers.
1267         (print_frame_arg_vars): Likewise.
1268         (prepare_reg): New function.
1269         (info_locals_command): Extract info print args and use them.
1270         (info_args_command): Likewise.
1271         (_initialize_stack): Modify on-line help.
1272         * symtab.c (treg_matches_sym_type_name): New function.
1273         (search_symbols): New arg t_regexp.
1274         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1275         (info_variables_command): Extract info print args and use them.
1276         (info_functions_command): Likewise.
1277         (info_types_command): Update call to symtab_symbol_info.
1278         (_initialize_symtab): Modify on-line help.
1279         * symtab.h (treg_matches_sym_type_name): New function.
1280         (search_symbols): New t_regexp arg.
1281
1282 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1283
1284         * cli-utils.c (extract_arg_maybe_quoted): New function.
1285         (extract_info_print_args): New function.
1286         (info_print_args_help): New function.
1287         (report_unrecognized_option_error): New function.
1288         * cli-utils.h (extract_arg_maybe_quoted): New function.
1289         (extract_info_print_args): New function.
1290         (info_print_args_help): New function.
1291         (report_unrecognized_option_error): New function.
1292
1293 2018-10-26  Tom Tromey  <tom@tromey.com>
1294
1295         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1296         (compute_compunit_symtab_includes): Update.
1297         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1298         (compunit_symtab_ptr): Likewise.
1299
1300 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1301
1302         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1303         default_print_auxv_entry for specific tag values.
1304
1305 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1306
1307         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1308
1309 2018-10-26  Jim Wilson  <jimw@sifive.com>
1310
1311         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1312         (riscv_linux_sigframe_init): Declare.
1313         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1314         (riscv_linux_sigframe): New.
1315         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1316         (riscv_linux_sigframe_init): Define.
1317         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1318
1319         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1320         (riscv_isa_flen): Likewise.  Drop static.
1321         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1322         (riscv_isa_flen): Likewise.  Declare.
1323
1324 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1325             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1326
1327         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1328         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1329         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1330         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1331         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1332         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1333         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1334         Define.
1335         (struct ppc_linux_features) <htm>: New field.
1336         (ppc_linux_no_features): Add initializer for htm field.
1337         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1338         new tdescs.
1339         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1340         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1341         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1342         Define if not already defined.
1343         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1344         and rs6000/powerpc-isa207-htm-vsx64l.
1345         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1346         rs6000/powerpc-isa207-htm-vsx64l.xml.
1347         * features/rs6000/power-htm-spr.xml: New file.
1348         * features/rs6000/power-htm-core.xml: New file.
1349         * features/rs6000/power64-htm-core.xml: New file.
1350         * features/rs6000/power-htm-fpu.xml: New file.
1351         * features/rs6000/power-htm-altivec.xml: New file.
1352         * features/rs6000/power-htm-vsx.xml: New file.
1353         * features/rs6000/power-htm-ppr.xml: New file.
1354         * features/rs6000/power-htm-dscr.xml: New file.
1355         * features/rs6000/power-htm-tar.xml: New file.
1356         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1357         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1358         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1359         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1360         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1361         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1362         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1363         fetch_regset with HTM regsets.
1364         (store_register, store_ppc_registers): Call store_regset with HTM
1365         regsets.
1366         (ppc_linux_nat_target::read_description): Set htm field in the
1367         features struct if needed.
1368         * ppc-linux-tdep.c: Include
1369         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1370         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1371         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1372         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1373         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1374         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1375         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1376         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1377         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1378         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1379         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1380         (ppc32_linux_ctarregset): New globals.
1381         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1382         (ppc_linux_collect_core_cpgrregset): New function.
1383         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1384         regsets.
1385         (ppc_linux_core_read_description): Check if the tm spr section is
1386         present and set htm in the features struct.
1387         (_initialize_ppc_linux_tdep): Call
1388         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1389         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1390         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1391         Declare.
1392         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1393         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1394         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1395         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1396         New fields.
1397         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1398         Likewise.
1399         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1400         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1401         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1402         New enum fields.
1403         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1404         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1405         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1406         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1407         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1408         <PPC_CTAR_REGNUM>: Likewise.
1409         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1410         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1411         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1412         (IS_CEFP_PSEUDOREG): Define.
1413         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1414         registers.  Return names for the checkpointed DFP, VSX, and EFP
1415         pseudo registers.
1416         (rs6000_pseudo_register_type): Remove initial assert and raise an
1417         internal error in the else clause instead.  Return types for the
1418         checkpointed DFP, VSX, and EFP pseudo registers.
1419         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1420         checkpointed DFP pseudo registers.
1421         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1422         checkpointed VSX pseudo registers.
1423         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1424         from efpr_pseudo_register_read and
1425         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1426         registers.
1427         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1428         Handle checkpointed DFP, VSX, and EFP registers.
1429         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1430         (efp_ax_pseudo_register_collect): New functions.
1431         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1432         register logic to new functions.  Handle checkpointed DFP, VSX,
1433         and EFP pseudo registers.
1434         (rs6000_gdbarch_init): Look for and validate the htm features.
1435         Include checkpointed DFP, VSX and EFP pseudo-registers.
1436         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1437         HTM registers.
1438
1439 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1440
1441         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1442         without altivec or fpu.
1443
1444 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1445             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1446
1447         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1448         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1449         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1450         Define if not already defined.
1451         * features/rs6000/power-ebb.xml: New file.
1452         * features/rs6000/power-linux-pmu.xml: New file.
1453         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1454         features.
1455         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1456         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1457         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1458         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1459         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1460         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1461         fetch_regset with ebb and pmu regsets.
1462         (store_register, store_ppc_registers): Call store_regset with ebb
1463         and pmu regsets.
1464         (ppc_linux_nat_target::read_description): Set isa207 field in the
1465         features struct if ebb and pmu are avaiable.
1466         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1467         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1468         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1469         and pmu regsets.
1470         (ppc_linux_core_read_description): Check if the pmu section is
1471         present and set isa207 in the features struct.
1472         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1473         (ppc32_linux_pmuregset): Declare.
1474         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1475         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1476         <ppc_sier_regnum>: New field.
1477         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1478         New enum values.
1479         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1480         values.
1481         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1482         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1483         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1484         ebb and pmu features.
1485
1486 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1487             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1488
1489         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1490         (tdesc_powerpc_isa207_vsx64l): Declare.
1491         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1492         (struct ppc_linux_features) <isa207>: New field.
1493         (ppc_linux_no_features): Add initializer for isa207 field.
1494         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1495         new tdescs.
1496         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1497         (NT_PPC_TAR): Define if not already defined.
1498         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1499         rs6000/powerpc-isa207-vsx64l.
1500         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1501         rs6000/powerpc-isa207-vsx64l.xml.
1502         * features/rs6000/power-tar.xml: New file.
1503         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1504         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1505         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1506         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1507         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1508         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1509         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1510         fetch_regset with the TAR regset.
1511         (store_register, store_ppc_registers): Call store_regset with the
1512         TAR regset.
1513         (ppc_linux_nat_target::read_description): Set isa207 field in the
1514         features struct if needed.
1515         * ppc-linux-tdep.c: Include
1516         features/rs6000/powerpc-isa207-vsx32l.c and
1517         features/rs6000/powerpc-isa207-vsx64l.c.
1518         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1519         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1520         regset.
1521         (ppc_linux_core_read_description): Check if the tar section is
1522         present and set isa207 in the features struct.
1523         (_initialize_ppc_linux_tdep): Call
1524         initialize_tdesc_powerpc_isa207_vsx32l and
1525         initialize_tdesc_powerpc_isa207_vsx64l.
1526         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1527         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1528         (enum) <PPC_TAR_REGNUM>: New enum value.
1529         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1530         feature.
1531         (ppc_process_record_op31): Record changes to TAR.
1532
1533 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1534             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1535
1536         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1537         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1538         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1539         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1540         (struct ppc_linux_features) <ppr_dscr>: New field.
1541         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1542         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1543         new tdescs.
1544         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1545         Define if not already defined.
1546         * features/Makefile (WHICH): Add
1547         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1548         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1549         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1550         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1551         * features/rs6000/power-dscr.xml: New file.
1552         * features/rs6000/power-ppr.xml: New file.
1553         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1554         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1555         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1556         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1557         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1558         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1559         * ppc-linux-nat.c: Include <sys/uio.h>.
1560         (fetch_regset, store_regset, check_regset): New functions.
1561         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1562         DSCR and PPR regsets.
1563         (store_register, store_ppc_registers): Call store_regset with
1564         DSCR and PPR regsets.
1565         (ppc_linux_get_hwcap2): New function.
1566         (ppc_linux_nat_target::read_description): Call
1567         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1568         features struct if needed.
1569         * ppc-linux-tdep.c: Include
1570         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1571         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1572         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1573         (ppc32_linux_dscrregset): New globals.
1574         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1575         and dscr regsets.
1576         (ppc_linux_core_read_description): Check if the ppr and dscr
1577         sections are present and set ppr_dscr in the features struct.
1578         (_initialize_ppc_linux_tdep): Call
1579         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1580         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1581         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1582         (ppc32_linux_dscrregset): Declare.
1583         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1584         <ppc_dscr_regnum>: New field.
1585         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1586         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1587         and dscr features.
1588         (ppc_process_record_op31): Record changes to PPR and DSCR.
1589
1590 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1591
1592         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1593         second initializer line for the have_* variables.  Initialize
1594         have_fpu to 0 instead of 1.
1595
1596 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1597
1598         * arch/ppc-linux-common.c (ppc_linux_match_description):
1599         Parenthesize tdesc assignements and indent them properly.
1600
1601 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1602
1603         * ppc-linux-nat.c (fetch_register): Change if statement to else
1604         if.
1605         (store_register): Likewise.
1606
1607 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1608
1609         * rs6000-tdep.c: Remove reggroups.h include.
1610         (rs6000_pseudo_register_reggroup_p): Remove.
1611         (rs6000_gdbarch_init): Remove call to
1612         set_tdesc_pseudo_register_reggroup_p.
1613
1614 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1615
1616         * reggroups.c (default_register_reggroup_p): Return true for
1617         decfloat registers and float_reggroup.
1618
1619 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1620
1621         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1622         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1623         ppc_linux_collect_vrregset by regcache_collect_regset.
1624
1625 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1626
1627         * linux-tdep.c (linux_collect_regset_section_cb): Use
1628         std::vector<gdb_byte> instead of char * and malloc for buf.
1629         Remove xfree.
1630
1631 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1632
1633         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1634         symtab_start instead of always using language_unknown.
1635
1636 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1637
1638         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1639         READ_P parameter, catch and ignore register access errors from
1640         either the old or new MISA location.
1641         (riscv_has_feature): Update call to riscv_read_misa_reg.
1642
1643 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1644
1645         * python/py-function.c (convert_values_to_python): Return
1646         gdbpy_ref<>.  Add header comment.
1647         (fnpy_call): Adjust.
1648
1649 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1650
1651         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1652         (cmdpy_completer_handle_brkchars): Adjust.
1653         (cmdpy_completer): Adjust.
1654
1655 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1656
1657         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1658         Pass correct regnum to raw_supply_zeroed.
1659
1660 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1661
1662         * regcache.c (cooked_read_test): Add CSKY to the list of
1663         architectures with a save_reggroup
1664
1665 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1666
1667         PR gdb/23368
1668         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1669         transfer terminal state from old new new inferior.
1670         * terminal.h (swap_terminal_info): New function.
1671         * inflow.c (swap_terminal_info): New function.
1672
1673 2018-10-23  Tom Tromey  <tom@tromey.com>
1674
1675         * record-btrace.c (get_thread_current_frame_id): Rename from
1676         get_thread_current_frame.  Return a frame_id.
1677         (record_btrace_start_replaying): Update.
1678
1679 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1680
1681         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1682         for CSRs.
1683
1684 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1685
1686         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1687         have_nonsteppable_watchpoint attribute to 1.
1688
1689 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1690
1691         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1692         register names.
1693         (struct register_alias): Rename to...
1694         (struct riscv_register_alias): ...this, and update comment.
1695         (riscv_register_aliases): Update type, and alias names.  Remove
1696         CSR names from this list.
1697         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1698         register names.  Add an extra assertion.
1699         (riscv_is_regnum_a_named_csr): New function.
1700         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1701
1702 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1703
1704         * configure.tgt: Add configuration for s12z.
1705         * s12z-tdep.c:  New file.
1706         * NEWS: Mention new target.
1707
1708 2018-10-22  Jim Wilson  <jimw@sifive.com>
1709
1710         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1711         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1712
1713         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1714         (riscv_register_type): Use them.
1715         (riscv_print_one_register_info): Handle union of floats same as float.
1716         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1717         riscv_fpreg_q_type fields.
1718
1719 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1720
1721         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1722         * gdbarch.h: Re-generate.
1723         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1724         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1725         * eval.c (evaluate_subexp_standard): Likewise.
1726         * findvar.c (value_of_register): Likewise.
1727         (value_of_register_lazy): Likewise.
1728         (address_from_register): Likewise.
1729         * frame.c (get_frame_register_bytes): Likewise.
1730         * gdbarch-selftests.c (register_to_value_test): Likewise.
1731         * h8300-tdep.c (h8300_register_type): Likewise.
1732         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1733         (i386_svr4_reg_to_regnum): Likewise.
1734         * infcmd.c (default_print_registers_info): Likewise.
1735         (registers_info): Likewise.
1736         (print_vector_info): Likewise.
1737         (default_print_float_info): Likewise.
1738         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1739         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1740         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1741         (mi_cmd_data_list_changed_registers): Likewise.
1742         (mi_cmd_data_list_register_values): Likewise.
1743         (mi_cmd_data_write_register_values): Likewise.
1744         (mi_cmd_trace_frame_collected): Likewise.
1745         * mips-tdep.c (print_gp_register_row): Likewise.
1746         (mips_print_registers_info): Likewise.
1747         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1748         * regcache.c (init_regcache_descr): Likewise.
1749         (register_size): Likewise.
1750         (register_dump::dump): Likewise.
1751         (cooked_read_test): Likewise.
1752         (cooked_write_test): Likewise.
1753         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1754         (rs6000_gdbarch_init): Likewise.
1755         * stabsread.c (stab_reg_to_regnum): Likewise.
1756         * stack.c (info_frame_command): Likewise.
1757         * target-descriptions.c (tdesc_register_name): Likewise.
1758         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1759         * tui/tui-regs.c (tui_show_register_group): Likewise.
1760         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1761         (user_reg_map_regnum_to_name): Likewise.
1762         (value_of_user_reg): Likewise.
1763         (maintenance_print_user_registers): Likewise.
1764         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1765         (xtensa_register_name): Likewise.
1766         (xtensa_register_type): Likewise.
1767         (xtensa_reg_to_regnum): Likewise.
1768         (xtensa_pseudo_register_read): Likewise.
1769         (xtensa_pseudo_register_write): Likewise.
1770
1771 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1772
1773         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1774         correctly-sized buffer with raw_read.
1775         (amd64_pseudo_register_write): Use correctly-sized buffer for
1776         raw_read/raw_write.
1777
1778 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1779
1780         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1781         in add_prefix_cmd of set print type.
1782
1783 2018-10-19  Tom Tromey  <tom@tromey.com>
1784
1785         PR tui/18388:
1786         * NEWS: Mention tabset deprecation.
1787         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1788         (update_tab_width): New function.
1789         (tui_set_tab_width, tui_show_tab_width): New functions.
1790         (tui_set_tab_width_command): Use update_tab_width.
1791         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1792         Add new "set tui tab-width" command.
1793         * tui/tui-source.c (tui_set_source_content): Update.
1794         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1795         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1796         Don't declare.
1797         (tui_tab_width): Declare.
1798         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1799         (tui_set_default_tab_len): Remove.
1800
1801 2018-10-19  Tom Tromey  <tom@tromey.com>
1802
1803         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1804         (key_is_backspace, tui_getc): Don't declare.
1805         * tui/tui-io.c (key_is_start_sequence): Now static.
1806         (key_is_end_sequence, key_is_backspace): Remove.
1807         (tui_getc): Now static.
1808
1809 2018-10-19  Tom Tromey  <tom@tromey.com>
1810
1811         * symfile.c (reread_symbols): Clear "static_links".
1812
1813 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1814
1815         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1816         define.
1817         (aarch64_linux_sigframe_init): Extra boundary checks.
1818
1819 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1820
1821         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1822         the possibly non-existent tdesc type 'vec128', but the type of raw
1823         register v16 instead.
1824
1825 2018-10-19  Gary Benson <gbenson@redhat.com>
1826
1827         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1828
1829 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1830
1831         PR cli/23785
1832         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1833         NULL.
1834
1835 2018-10-17  Paul Koning  <paul_koning@dell.com>
1836
1837         * charset.c (convert_between_encodings): Fix unsigned overflow.
1838
1839 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1840
1841         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1842         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1843         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1844         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1845         New functions.
1846         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1847         and fbsd_info_proc_mappings_header.
1848         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1849         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1850         New.
1851
1852 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1853
1854         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1855         Solaris Maintainer.
1856
1857 2018-10-15  Tom Tromey  <tom@tromey.com>
1858
1859         * tui/tui.c (strcat_to_buf): Remove casts.
1860         * tui/tui-winsource.c (tui_show_source_line)
1861         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1862         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1863         * tui/tui-windata.c (tui_first_data_item_displayed)
1864         (tui_delete_data_content_windows, tui_erase_data_content)
1865         (tui_display_all_data, tui_display_data_from)
1866         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1867         * tui/tui-win.c (tui_set_win_height)
1868         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1869         casts.
1870         * tui/tui-win.c (tui_resize_all): Remove casts.
1871         (tui_scroll_backward_command, tui_set_focus)
1872         (tui_set_tab_width_command): Likewise.
1873         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1874         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1875         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1876         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1877         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1878         Remove casts.
1879
1880 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1881
1882         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1883         AArch64/ARM maintainer.
1884
1885 2018-10-11  Gary Benson <gbenson@redhat.com>
1886
1887         * interps.h (interp::m_name): Make private and mutable.
1888         * interps.c (interp::~interp): Free m_name.
1889
1890 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1891             Simon Marchi <simark@simark.ca>
1892
1893         * README (`configure' options): Add documentation for new
1894         "--enable-unit-tests" option.
1895         * acinclude.m4: Include "selftest.m4".
1896         * configure: Regenerate.
1897         * configure.ac: Use "GDB_AC_SELFTEST".
1898         * maint.c (maintenance_selftest): Update message informing
1899         that selftests have been disabled.
1900         (maintenance_info_selftests): Likewise.
1901         * selftest.m4: New file.
1902
1903 2018-10-10  Gary Benson <gbenson@redhat.com>
1904
1905         * remote.c (remote_target::remote_send_printf): Add
1906         missing va_end found by Coverity.
1907
1908 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1909
1910         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1911
1912 2018-10-09  Tom Tromey  <tom@tromey.com>
1913
1914         * configure: Rebuild.
1915         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1916         * NEWS: Update --enable-ubsan documentation.
1917
1918 2018-10-09  Gary Benson <gbenson@redhat.com>
1919
1920         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1921         found by Coverity.
1922
1923 2018-10-08  Tom Tromey  <tom@tromey.com>
1924
1925         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1926         variable.
1927         (riscv_fbsd_init_abi): Likewise.
1928
1929 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1930         * valops.c (value_struct_elt_for_reference): Rename local variable
1931         to work around the shadowing a previous local warning.
1932
1933 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1934
1935         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1936         * NEWS: Mention new FreeBSD/riscv native configuration.
1937         * configure.host: Add riscv*-*-freebsd*.
1938         * configure.nat: Likewise.
1939         * riscv-fbsd-nat.c: New file.
1940
1941 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1942
1943         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1944         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1945         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1946         * NEWS: Mention new FreeBSD/riscv target.
1947         * configure.tgt: Add riscv*-*-freebsd*.
1948         * riscv-fbsd-tdep.c: New file.
1949         * riscv-fbsd-tdep.h: New file.
1950
1951 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1952
1953         * regcache.h (struct regcache_map_entry): Note that this type can
1954         be used with traditional frame caches.
1955         * trad-frame.c (trad_frame_set_reg_regmap): New.
1956         * trad-frame.h (trad_frame_set_reg_regmap): New.
1957
1958 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1959
1960         PR c++/16841
1961         * valops.c (get_virtual_base_offset): New function.
1962         (value_struct_elt_for_reference): Use it to get virtual base offset
1963         and add it in calculating class member address.
1964
1965 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1966
1967         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1968         (check_producer): Check if the producer is codewarrior.
1969         (producer_is_codewarrior): New function.
1970         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1971         produced by codewarrior.
1972         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1973
1974 2018-10-06  Tom Tromey  <tom@tromey.com>
1975
1976         PR python/19399:
1977         * python/py-inferior.c: Add "architecture" entry.
1978         (infpy_architecture): New function.
1979
1980 2018-10-06  Tom Tromey  <tom@tromey.com>
1981
1982         PR python/21765:
1983         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1984         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1985         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1986         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1987
1988 2018-10-06  Tom Tromey  <tom@tromey.com>
1989
1990         PR build/17077:
1991         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1992         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1993         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1994         #include.
1995
1996 2018-10-06  Tom Tromey  <tom@tromey.com>
1997
1998         * python/py-breakpoint.c (bppy_get_location): Handle a
1999         bp_breakpoint without a location.
2000
2001 2018-10-06  Tom Tromey  <tom@tromey.com>
2002
2003         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2004         (_RegEx): Reformat help text.
2005         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2006         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2007         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2008         text.
2009         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2010         (EnableXMethod, DisableXMethod): Remove help indentation.
2011         Capitalize meta-syntactic variables.
2012         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2013         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2014         Capitalize meta-syntactic variables.
2015         * python/lib/gdb/command/explore.py (ExploreCommand)
2016         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2017         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2018         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2019         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2020         Remove help indentation.
2021         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2022         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2023         (DisableFrameFilter, SetFrameFilterPriority)
2024         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2025
2026 2018-10-06  Tom Tromey  <tom@tromey.com>
2027
2028         PR tui/28819:
2029         * tui/tui-io.c (gdb_wgetch): New function.
2030         (tui_mld_getc, tui_getc): Use it.
2031
2032 2018-10-05  Tom Tromey  <tom@tromey.com>
2033
2034         * sol-thread.c (sol_thread_target::wait): Rename inner
2035         "save_ptid".
2036
2037 2018-10-04  Tom Tromey  <tom@tromey.com>
2038
2039         * configure: Rebuild.
2040         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2041
2042 2018-10-04  Tom Tromey  <tom@tromey.com>
2043
2044         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2045         declaration of "block".
2046
2047 2018-10-04  Tom Tromey  <tom@tromey.com>
2048
2049         * common/filestuff.c (fdwalk): Remove inner declaration of
2050         "result".
2051
2052 2018-10-04  Tom Tromey  <tom@tromey.com>
2053
2054         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2055         "structs_addr" and hoist declaration.
2056
2057 2018-10-04  Tom Tromey  <tom@tromey.com>
2058
2059         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2060         variable "size".
2061
2062 2018-10-04  Tom Tromey  <tom@tromey.com>
2063
2064         * mdebugread.c (parse_partial_symbols): Use std::string.
2065
2066 2018-10-04  Tom Tromey  <tom@tromey.com>
2067
2068         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2069         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2070         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2071         header.
2072         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2073         more inner scope.
2074         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2075         * varobj.c (varobj_update): Rename inner "newobj",
2076         "type_changed".
2077         * valprint.c (generic_emit_char): Rename inner "buf".
2078         * valops.c (find_overload_match): Rename inner "temp".
2079         (value_struct_elt_for_reference): Declare "v" in more inner
2080         scope.
2081         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2082         * unittests/array-view-selftests.c (run_tests): Rename inner
2083         "vec".
2084         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2085         header.
2086         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2087         "tsv" in more inner scope.
2088         (print_one_static_tracepoint_marker): Rename inner
2089         "tuple_emitter".
2090         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2091         (tic6x_push_dummy_call): Don't redeclare "addr".
2092         * target-float.c: Declare "dto" lower.
2093         * symtab.c (lookup_local_symbol): Rename inner "sym".
2094         (find_pc_sect_line): Rename inner "pc".
2095         * stack.c (print_frame): Don't redeclare "gdbarch".
2096         (return_command): Rename inner "gdbarch".
2097         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2098         "sp".
2099         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2100         header.
2101         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2102         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2103         scope.
2104         * remote.c (remote_target::update_thread_list): Don't redeclare
2105         "tp".
2106         (remote_target::process_initial_stop_replies): Rename inner
2107         "thread".
2108         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2109         (remote_target::wait_as): Don't redeclare "stop_reply".
2110         (remote_target::get_thread_local_address): Rename inner
2111         "result".
2112         (remote_target::get_tib_address): Likewise.
2113
2114         * regcache.c (cooked_read_test): Rename "regnum".
2115         * record-btrace.c (cmd_record_btrace_start): Rename inner
2116         "exception".
2117         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2118         loop header.
2119         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2120         header.
2121         (ppu2spu_sniffer): Rename inner "buf".
2122         * parse.c (operator_check_standard): Rename inner "type",
2123         "objfile".
2124         * p-valprint.c (pascal_val_print): Introduce new scope for
2125         "low_bound", "high_bound".
2126         * p-exp.y (yylex): Declare "i" in loop header.
2127         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2128         Lower declaration of "s".
2129         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2130         header.
2131         (nios2_push_dummy_call): Rename "len".
2132         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2133         "buf".
2134         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2135         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2136         (linux_xfer_osdata_modules): Likewise.
2137         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2138         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2139         (mips_o64_push_dummy_call): Likewise.
2140         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2141         "op".
2142         * mi/mi-main.c (list_available_thread_groups): Rename inner
2143         "tuple_emitter".
2144         (mi_cmd_data_read_memory): Rename inner "opts".
2145         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2146         "tuple_emitter".
2147         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2148         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2149         more inner scope.
2150         (parse_partial_symbols): Rename inner "pst", "p", "name"
2151         * main.c (captured_main_1): Rename inner "i"s.
2152         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2153         "oso2".
2154         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2155         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2156         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2157         (handle_signal_stop): Rename inner "gdbarch".
2158         (handle_command): Declare "signum" in loop header.
2159         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2160         "status".
2161         (examine_prologue): Rename inner "sol" and "sof".
2162         (ia64_extract_return_value): Rename inner "val".  Declare another
2163         "val" in a more inner scope.
2164         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2165         inner scope.
2166         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2167         "except".
2168         * findvar.c (default_read_var_value): Don't redeclare "addr".
2169         * f-exp.y (yylex): Declare "i" in loop header.
2170         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2171         Rename inner "type", "expect_type".
2172         (evaluate_subexp_for_sizeof): Rename inner "pc".
2173         * elfread.c (elf_symfile_read): Rename inner "abfd".
2174         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2175         "bytes_read".
2176         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2177         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2178         (dwarf_decode_line_header): Rename inner "lh".
2179         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2180         "offset".  Declare "i" in loop header.
2181         (disassemble_dwarf_expression): Rename inner "addr_size".
2182         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2183         inner "result".
2184         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2185         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2186         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2187         "inner_list_emitter".
2188         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2189         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2190         declaration in a block.
2191         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2192         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2193         "obstack_final_size".
2194         * cp-support.c (inspect_type): Declare "i" in loop header.
2195         * compile/compile.c (compile_instance::insert_symbol_error):
2196         Rename inner "e".
2197         * common/agent.c (agent_run_command): Remove inner "ret"
2198         declaration.
2199         * coffread.c (coff_symfile_read): Rename inner "name".
2200         (coff_symfile_read): Rename inner "abfd".
2201         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2202         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2203         "high".
2204         * c-exp.y (lex_one_token): Move "len" declaration lower.
2205         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2206         "gdbarch".
2207         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2208         "b".
2209         (watch_command_1): Declare "mark" later.
2210         (clear_command): Don't shadow "a" or "b".
2211         (delete_command): Rename inner "b".
2212         (delete_trace_command): Likewise.
2213         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2214         "op".
2215         (arm_gdbarch_init): Remove inner "e_flags".
2216         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2217         "offset" in inner blocks.
2218
2219 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2220
2221         * dwarf-index-write.c (file_write): Don't write if the vector is
2222         empty.
2223
2224 2018-10-05  Tom de Vries  <tdevries@suse.de>
2225
2226         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2227         PyArg_ParseTuple call.
2228
2229 2018-10-05  Tom de Vries  <tdevries@suse.de>
2230
2231         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2232         PyArg_ParseTuple call.
2233
2234 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2235
2236         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2237         to avoid exceeding 80 characters per line limit.
2238
2239 2018-10-04  Tom Tromey  <tom@tromey.com>
2240
2241         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2242         (reread_symbols): Update.
2243         * complaints.h (clear_complaints): Remove argument.
2244         * complaints.c (enum complaint_series): Remove.
2245         (series): Remove global.
2246         (complaint_internal): Update.
2247         (clear_complaints): Remove argument.
2248
2249 2018-10-04  Tom Tromey  <tom@tromey.com>
2250
2251         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2252         debugging symbols" message if there is a separate debug objfile.
2253
2254 2018-10-04  Tom Tromey  <tom@tromey.com>
2255
2256         PR cli/19551:
2257         * symfile.c (symbol_file_add_with_addrs): Update output.
2258         * psymtab.c (require_partial_symbols): Update output.
2259
2260 2018-10-04  Tom Tromey  <tom@tromey.com>
2261
2262         PR cli/22234:
2263         * complaints.c: Emit \n.
2264
2265 2018-10-04  Tom Tromey  <tom@tromey.com>
2266
2267         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2268         (separate_debug_file_exists, find_separate_debug_file)
2269         (add_symbol_file_command, reread_symbols, allocate_symtab)
2270         (allocate_compunit_symtab): Use filtered printing, not
2271         unfiltered.
2272         * psymtab.c (require_partial_symbols, dump_psymtab)
2273         (allocate_psymtab): Use filtered printing, not unfiltered.
2274
2275 2018-10-04  Tom Tromey  <tom@tromey.com>
2276
2277         * complaints.c (complaint_internal): Correctly check complaint
2278         count.
2279
2280 2018-10-04  Tom Tromey  <tom@tromey.com>
2281
2282         * complaints.h (struct complaints): Remove declaration.
2283         * complaints.c (clear_complaints): Remove an unused variable.
2284
2285 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2286
2287         * MAINTAINERS (Write After Approval): Add self.
2288
2289 2018-10-03  Tom Tromey  <tom@tromey.com>
2290
2291         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2292         "buffer_contents".
2293         * coffread.c (coff_symtab_read): Initialize "newobj".
2294
2295 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2296
2297         * dwarf2read.c (read_func_scope): Remove struct keyword in
2298         range-based for.
2299
2300 2018-10-03  Tom Tromey  <tom@tromey.com>
2301
2302         * README: Mention --enable-ubsan.
2303         * NEWS: Mention --enable-ubsan.
2304         * acinclude.m4: Include sanitize.m4.
2305         * configure: Rebuild.
2306         * configure.ac: Call AM_GDB_UBSAN.
2307         * sanitize.m4: New file.
2308
2309 2018-10-03  Tom Tromey  <tom@tromey.com>
2310
2311         * expression.h (enum exp_opcode): Use uint8_t as base type.
2312         * expprint.c (op_name): Handle invalid opcodes.
2313
2314 2018-10-03  Tom Tromey  <tom@tromey.com>
2315
2316         * parse.c (prefixify_expression): Add assert.
2317         (parse_exp_in_context_1): Throw exception if the expression is
2318         empty.
2319
2320 2018-10-03  Tom Tromey  <tom@tromey.com>
2321
2322         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2323
2324 2018-10-03  Tom Tromey  <tom@tromey.com>
2325
2326         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2327
2328 2018-10-03  Tom Tromey  <tom@tromey.com>
2329
2330         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2331         unsigned.
2332
2333 2018-10-03  Tom Tromey  <tom@tromey.com>
2334
2335         * findvar.c (extract_integer): Do work in an unsigned type.
2336
2337 2018-10-03  Tom Tromey  <tom@tromey.com>
2338
2339         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2340         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2341         base type.
2342         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2343         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2344         type.
2345         * c-lang.h (enum c_string_type_values): Use unsigned as base
2346         type.
2347         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2348
2349 2018-10-03  Tom Tromey  <tom@tromey.com>
2350
2351         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2352         <~dwarf2_frame_state_reg_info>: Update.
2353         <dwarf2_frame_state_reg_info>: Update.
2354         <alloc_regs>: Add assertion.  Update.
2355         <reg>: Now a std::vector.
2356         <num_regs>: Remove.
2357         <swap>: Update.
2358         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2359         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2360
2361 2018-10-03  Tom Tromey  <tom@tromey.com>
2362
2363         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2364
2365 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2366
2367         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2368
2369 2018-10-02  Tom Tromey  <tom@tromey.com>
2370
2371         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2372
2373 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2374
2375         * NEWS: Mention changed commands.
2376         * ser-uds.c: New file.
2377         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2378         * configure: Regenerate.
2379         * Makefile.in: Add new file.
2380         * serial.c (serial_open): Check if filename is a socket
2381         and lookup the appropriate interface accordingly.
2382
2383 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2384
2385         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2386         define.
2387         (AARCH64_EXTRA_MAGIC): Likewise.
2388         (AARCH64_FPSIMD_MAGIC): Likewise.
2389         (AARCH64_SVE_MAGIC): Likewise.
2390         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2391         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2392         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2393         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2394         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2395         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2396         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2397         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2398         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2399         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2400         (read_aarch64_ctx): Add function.
2401         (aarch64_linux_sigframe_init): Detect FP registers.
2402
2403 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2404
2405         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2406         (AARCH64_D0_REGNUM): Likewise.
2407         (AARCH64_S0_REGNUM): Likewise.
2408         (AARCH64_H0_REGNUM): Likewise.
2409         (AARCH64_B0_REGNUM): Likewise.
2410         (AARCH64_SVE_V0_REGNUM): Likewise.
2411         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2412         (AARCH64_D0_REGNUM): Likewise.
2413         (AARCH64_S0_REGNUM): Likewise.
2414         (AARCH64_H0_REGNUM): Likewise.
2415         (AARCH64_B0_REGNUM): Likewise.
2416         (AARCH64_SVE_V0_REGNUM): Likewise.
2417
2418 2018-10-01  Gary Benson <gbenson@redhat.com>
2419
2420         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2421         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2422         prfpregset_t instead of gdb_prfpregset_t.
2423         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2424         * configure, config.in: Rebuild.
2425
2426 2018-10-01  Gary Benson <gbenson@redhat.com>
2427
2428         * common/gdb_proc_service.h: New file, factored out from...
2429         * gdb_proc_service.h: Moved common code to the above file.
2430         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2431
2432 2018-10-01  Gary Benson <gbenson@redhat.com>
2433
2434         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2435         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2436
2437 2018-10-01  Gary Benson <gbenson@redhat.com>
2438
2439         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2440         (AC_CHECK_HEADERS): Check for linux/elf.h.
2441         * configure, config.in: Rebuild.
2442         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2443         doesn't define elf_fpregset_t.
2444
2445 2018-10-01  Gary Benson <gbenson@redhat.com>
2446
2447         * gdb_proc_service.h: Whitespace change.
2448
2449 2018-10-01  Tom Tromey  <tom@tromey.com>
2450
2451         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2452         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2453         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2454
2455 2018-10-01  Tom Tromey  <tom@tromey.com>
2456
2457         * README: Minor change.
2458
2459 2018-09-30  Pedro Alves  <palves@redhat.com>
2460
2461         * darwin-nat-info.c (darwin_debug_regions_recurse)
2462         (info_mach_exceptions_command): Remove unused local variables.
2463         * darwin-nat.c (darwin_decode_notify_message)
2464         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2465         (darwin_stop_inferior, darwin_setup_exceptions)
2466         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2467         (darwin_nat_target::attach, darwin_nat_target::detach)
2468         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2469         local variables.
2470         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2471         variables.
2472
2473 2018-09-29  Tom Tromey  <tom@tromey.com>
2474
2475         * README: Remove some leftover text.
2476
2477 2018-09-29  Tom Tromey  <tom@tromey.com>
2478
2479         * PROBLEMS: Rewrite.
2480         * README: Update.
2481
2482 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2483
2484         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2485         case with explicit breakpoint kind.
2486         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2487         'additional_info' and related logic.
2488         (riscv_debug_breakpoints): New variable.
2489         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2490         instruction to determine the breakpoint kind.
2491         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2492         flag.  Update description of 'set/show riscv
2493         use-compressed-breakpoints' flag.
2494
2495 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2496
2497         (NEWS): Mention changes to frame related commands.
2498         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2499         (add_prefix_cmd_suppress_notification): New function.
2500         (add_com_suppress_notification): Call
2501         add_cmd_suppress_notification.
2502         * command.h (add_cmd_suppress_notification): Declare.
2503         (add_prefix_cmd_suppress_notification): Declare.
2504         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2505         (parse_frame_specification): Moved from stack.c, with
2506         simplification to handle a single argument.
2507         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2508         switch to the selected frame.  Add a header comment.
2509         * stack.c: Remove 'safe-ctype.h' include.
2510         (find_frame_for_function): Add declaration.
2511         (find_frame_for_address): New function.
2512         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2513         (frame_selection_by_function_completer): New function.
2514         (info_frame_command): Rename to...
2515         (info_frame_command_core): ...this, and update parameter types.
2516         (select_frame_command): Rename to...
2517         (select_frame_command_core): ...this, and update parameter types.
2518         (frame_command): Rename to...
2519         (frame_command_core): ...this, and update parameter types.
2520         (class frame_command_helper): New class to wrap implementations of
2521         frame related sub-commands.
2522         (frame_apply_cmd_list): New static global.
2523         (frame_cmd_list): Make static.
2524         (select_frame_cmd_list): New global for sub-commands.
2525         (info_frame_cmd_list): New global for sub-commands.
2526         (_initialize_stack): Register sub-commands for 'frame',
2527         'select-frame', and 'info frame'.  Update 'frame apply' commands
2528         to use frame_apply_cmd_list.  Move function local static
2529         frame_apply_list to file static frame_apply_cmd_list for
2530         consistency.
2531         * stack.h (select_frame_command): Delete declarationn.
2532         (select_frame_for_mi): Declare new function.
2533
2534 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2535
2536         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2537         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2538         and NOP.
2539
2540 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2541
2542         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2543
2544 2018-09-26  Tom Tromey  <tom@tromey.com>
2545
2546         * valops.c (auto_abandon): Remove dead code.
2547
2548 2018-09-26  Tom Tromey  <tom@tromey.com>
2549
2550         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2551
2552 2018-09-24  Tom Tromey  <tom@tromey.com>
2553
2554         * common/pathstuff.c (get_standard_cache_dir): Make
2555         "xdg_cache_home" and "home" const.
2556         * top.c (init_history): Make "tmpenv" const.
2557         * main.c (get_init_files): Make "homedir" const.
2558
2559 2018-09-23  Tom Tromey  <tom@tromey.com>
2560
2561         PR python/18852:
2562         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2563
2564 2018-09-23  Tom Tromey  <tom@tromey.com>
2565
2566         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2567         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2568         * python/python-internal.h (gdbpy_handle_exception): Declare.
2569         * python/py-utils.c (gdbpy_handle_exception): New function.
2570
2571 2018-09-23  Tom Tromey  <tom@tromey.com>
2572
2573         PR python/17284:
2574         * python/py-type.c (typy_template_argument): Check for negative
2575         argument number.
2576
2577 2018-09-23  Tom Tromey  <tom@tromey.com>
2578
2579         PR python/14062:
2580         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2581
2582 2018-09-23  Tom Tromey  <tom@tromey.com>
2583
2584         PR python/18170:
2585         * python/py-value.c (valpy_int): Allow conversion from pointer
2586         type.
2587
2588 2018-09-23  Tom Tromey  <tom@tromey.com>
2589
2590         PR python/20126:
2591         * python/py-value.c (valpy_int): Respect type sign.
2592
2593 2018-09-23  Tom Tromey  <tom@tromey.com>
2594
2595         PR python/18352;
2596         * python/py-value.c (valpy_float): Allow conversions from int or
2597         char.
2598         (valpy_int, valpy_long): Allow conversions from float.
2599
2600 2018-09-23  Tom Tromey  <tom@tromey.com>
2601
2602         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2603         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2604
2605 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2606
2607         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2608         __sighndlr.
2609         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2610
2611 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2612
2613         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2614         target_terminal::ours().
2615
2616 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2617
2618         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2619         of vl to ULONGEST.
2620
2621 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2622
2623         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2624         redundant condition.
2625
2626 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2627
2628         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2629
2630         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2631         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2632         * sol-thread.c (ps_pdmodel): Don't guard definition.
2633
2634         * procfs.c: Fix formatting.
2635
2636         * procfs.c (sysset_t_alloc): Remove.
2637         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2638         (procfs_debug_inferior): Likewise.
2639         (procfs_set_exec_trap): Likewise.
2640         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2641         (proc_set_traced_sysexit): Likewise.
2642
2643         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2644         (dead_procinfo): Likewise.
2645         (proc_warn): Likewise.
2646         (proc_error): Likewise.
2647         (proc_get_LDT_entry): Likewise.
2648         (do_attach): Likewise.
2649         (procfs_target::pid_to_str): Likewise.
2650         (iterate_over_mappings): Likewise.
2651
2652         * procfs.c (create_procinfo): Fix ARI warning.
2653         (proc_get_status): Likewise.
2654         (proc_stop_process): Likewise.
2655         (proc_run_process): Likewise.
2656         (proc_kill): Likewise.
2657         (proc_get_LDT_entry): Likewise.
2658         (procfs_find_LDT_entry): Likewise.
2659         (proc_update_threads): Likewise.
2660         (proc_iterate_over_threads): Likewise.
2661         (do_attach): Likewise.
2662         (procfs_xfer_memory): Likewise.
2663         (invalidate_cache): Likewise.
2664         (procfs_target::resume): Likewise.
2665         (procfs_init_inferior): Likewise.
2666         (procfs_set_exec_trap): Likewise.
2667         (procfs_target::thread_alive): Likewise.
2668         (procfs_target::pid_to_exec_file): Likewise.
2669         (iterate_over_mappings): Likewise.
2670         (procfs_target::make_corefile_notes): Likewise.
2671         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2672
2673         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2674         (procfs_find_LDT_entry): Likewise.
2675         * sol-thread.c (ps_lgetLDT): Likewise.
2676
2677 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2678
2679         PR tdep/17903
2680         * procfs.c (procfs_target): Declare pid_to_exec_file.
2681         (procfs_target::pid_to_exec_file): New.
2682
2683 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2684
2685         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2686         renaming.
2687         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2688         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2689
2690 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2691
2692         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2693         (supply_fpregset, fill_fpregset): Move ...
2694         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2695         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2696         Remove references to ioctl-based procfs.
2697         Include <sys/reg.h>.
2698         Remove PR_MODEL_NATIVE guards.
2699         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2700         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2701
2702 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2703
2704         PR gdb/20981:
2705         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2706         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2707         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2708
2709 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2710
2711         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2712         (fbsd_print_sockaddr_in6): Likewise.
2713
2714 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2715             Chris January  <chris.january@arm.com>
2716
2717         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2718         (evaluate_subexp_standard): Return a dummy type when
2719         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2720         OP_F77_UNDETERMINED_ARGLIST case.
2721         * expression.h (enum noside): Update comment.
2722
2723 2018-09-19  George Vasick <george.vasick@oracle.com>
2724
2725         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2726
2727 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2728             April Chin <april.chin@oracle.com>
2729             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2730
2731         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2732         uint_t lwpid_t.
2733         (create_procinfo): Print pids in /proc without leading zeros.
2734
2735 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2736
2737         * nios2-tdep.c (nios2_gcc_target_options): New.
2738         (nios2_gdb_arch_init): Install new hook.
2739
2740 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2741
2742         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2743         New file.
2744         * update-gnulib.sh: Apply patch.
2745         * configure: Re-generate.
2746
2747 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2748
2749         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2750         description.  Make "info proc" command descriptions more
2751         consistent.
2752
2753 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2754
2755         * NEWS: Mention 'info proc files' command.
2756
2757 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2758
2759         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2760         descriptors for IP_FILES and IP_ALL.
2761
2762 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2763
2764         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2765         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2766         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2767         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2768         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2769         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2770         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2771         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2772         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2773         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2774         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2775         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2776         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2777         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2778         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2779         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2780         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2781         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2782         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2783         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2784         (struct fbsd_sockaddr_un): New types.
2785         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2786         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2787         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2788         (fbsd_core_info_proc_files): New functions.
2789         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2790         IP_ALL.
2791         * fbsd-tdep.h (fbsd_info_proc_files_header)
2792         (fbsd_info_proc_files_entry): New.
2793
2794 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2795
2796         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2797         * infcmd.c (info_proc_cmd_files): New function.
2798         (_initialize_infcmd): Register 'info proc files' command.
2799
2800 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2801
2802         * gnulib/aclocal-m4-deps.mk: Re-generate.
2803         * gnulib/aclocal.m4: Re-generate.
2804         * gnulib/config.in: Re-generate.
2805         * gnulib/configure: Re-generate.
2806         * gnulib/import/Makefile.am: Re-generate.
2807         * gnulib/import/Makefile.in: Re-generate.
2808         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2809         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2810         * gnulib/import/arpa_inet.in.h: New file.
2811         * gnulib/import/inet_ntop.c: New file.
2812         * gnulib/import/m4/arpa_inet_h.m4: New file.
2813         * gnulib/import/m4/inet_ntop.m4: New file.
2814         * gnulib/import/m4/netinet_in_h.m4: New file.
2815         * gnulib/import/m4/socklen.m4: New file.
2816         * gnulib/import/m4/sockpfaf.m4: New file.
2817         * gnulib/import/m4/stdalign.m4: New file.
2818         * gnulib/import/m4/sys_uio_h.m4: New file.
2819         * gnulib/import/netinet_in.in.h: New file.
2820         * gnulib/import/stdalign.in.h: New file.
2821         * gnulib/import/sys_socket.c: New file.
2822         * gnulib/import/sys_socket.in.h: New file.
2823         * gnulib/import/sys_uio.in.h: New file.
2824         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2825         module.
2826
2827 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2828
2829         * gnulib/aclocal-m4-deps.mk: New file.
2830         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2831         deterministically.
2832
2833 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2834
2835         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2836         KVE_PATH.
2837
2838 2018-09-18  Tom Tromey  <tom@tromey.com>
2839
2840         * compile/compile-object-load.c (struct
2841         link_hash_table_cleanup_data): Add constructor and destructor.
2842         Use DISABLE_COPY_AND_ASSIGN.
2843         (~link_hash_table_cleanup_data): Rename from
2844         link_hash_table_free.  Now a destructor.
2845         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2846
2847 2018-09-18  Tom Tromey  <tom@tromey.com>
2848
2849         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2850         * compile/compile-object-load.c (struct munmap_list): Move to
2851         header file.
2852         (munmap_list::add): Rename from munmap_list_add; rewrite.
2853         (munmap_list::~munmap_list): Rename from munmap_list_free.
2854         (munmap_listp_free_cleanup): Remove.
2855         (compile_object_load): Update.
2856         * compile/compile-object-load.h (struct munmap_list): Move from
2857         compile-object-load.c.  Rewrite.
2858
2859 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2860
2861         * aarch64-tdep.c (pass_in_v): Use register size.
2862         (aarch64_extract_return_value): Likewise.
2863         (aarch64_store_return_value): Likewise.
2864
2865 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2866
2867         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2868         rlim_t.
2869
2870 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2871
2872         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2873         Fix short help line.
2874
2875 2018-09-17  Tom Tromey  <tom@tromey.com>
2876
2877         PR python/20445:
2878         * configure: Rebuild.
2879         * configure.ac: Conditionally use -DNDEBUG for Python.
2880
2881 2018-09-17  Tom Tromey  <tom@tromey.com>
2882
2883         * configure: Rebuild.
2884         * configure.ac: Use gmp as a library dependency when checking for
2885         mpfr.
2886
2887 2018-09-17  Pedro Alves  <palves@redhat.com>
2888
2889         * python/py-inferior.c (find_inferior_object): Delete.
2890
2891 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2892
2893         * compile/compile-cplus-types.c
2894         (compile_cplus_instance::enter_scope): Don't use new_scope after
2895         std::move.
2896
2897 2018-09-17  Tom Tromey  <tom@tromey.com>
2898
2899         * common/pathstuff.c (get_standard_cache_dir): Use
2900         ~/Library/Caches on macOS.
2901         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2902
2903 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2904
2905         PR python/23669
2906         * breakpoint.c (commands_cmd_element): New.
2907         (_initialize_breakpoint): Assign commands_cmd_element.
2908         * breakpoint.h (commands_cmd_element): New.
2909         * cli/cli-script.c (while_cmd_element, if_command,
2910         define_cmd_element): New.
2911         (command_name_equals): Remove.
2912         (process_next_line): Compare commands by pointer, not by name.
2913         (_initialize_cli_script): Assign the various cmd_list_element
2914         variables.
2915         * compile/compile.c (compile_cmd_element): New.
2916         (_initialize_compile): Assign compile_cmd_element.
2917         * compile/compile.h (compile_cmd_element): New.
2918         * guile/guile.c (guile_cmd_element): New.
2919         (install_gdb_commands): Assign guile_cmd_element.
2920         * guile/guile.h (guile_cmd_element): New.
2921         * python/python.c (python_cmd_element): New.
2922         (_initialize_python): Assign python_cmd_element.
2923         * python/python.h (python_cmd_element): New.
2924         * tracepoint.c (while_stepping_cmd_element): New.
2925         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2926         * tracepoint.h (while_stepping_cmd_element): New.
2927
2928 2018-09-17  Tom Tromey  <tom@tromey.com>
2929
2930         * infrun.c (save_infcall_suspend_state): Return
2931         infcall_suspend_state_up.
2932         (save_infcall_control_state): Return infcall_control_state_up.
2933         * inferior.h (save_infcall_suspend_state)
2934         (save_infcall_control_state): Declare later.  Return unique
2935         pointers.
2936
2937 2018-09-17  Tom Tromey  <tom@tromey.com>
2938
2939         * infrun.c (struct stop_context): Declare constructor,
2940         destructor, "changed" method.
2941         (stop_context::stop_context): Rename from save_stop_context.
2942         (stop_context::~stop_context): Rename from
2943         release_stop_context_cleanup.
2944         (normal_stop): Update.
2945         (stop_context::changed): Rename from stop_context_changed.  Return
2946         bool.
2947
2948 2018-09-17  Tom Tromey  <tom@tromey.com>
2949
2950         * inferior.h (struct infcall_suspend_state_deleter): New.
2951         (infcall_suspend_state_up): New typedef.
2952         (struct infcall_control_state_deleter): New.
2953         (infcall_control_state_up): New typedef.
2954         (make_cleanup_restore_infcall_suspend_state)
2955         (make_cleanup_restore_infcall_control_state): Don't declare.
2956         * infcall.c (call_function_by_hand_dummy): Update.
2957         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2958         (make_cleanup_restore_infcall_suspend_state): Remove.
2959         (do_restore_infcall_control_state_cleanup)
2960         (make_cleanup_restore_infcall_control_state): Remove.
2961
2962 2018-09-17  Tom Tromey  <tom@tromey.com>
2963
2964         * gdbthread.h (struct thread_control_state): Add initializer.
2965         (class thread_info) <control>: Remove initializer.
2966         * inferior.h (struct inferior_control_state): Add initializer.
2967         (class inferior) <control>: Remove initializer.
2968         (exit_inferior_1): Update.
2969         * infrun.c (struct infcall_control_state): Add constructors.
2970         (save_infcall_control_state): Use new.
2971         (restore_infcall_control_state, discard_infcall_control_state):
2972         Use delete.
2973
2974 2018-09-17  Tom Tromey  <tom@tromey.com>
2975
2976         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2977         unique_ptr.
2978         <siginfo_data>: Now a unique_xmalloc_ptr.
2979         (save_infcall_suspend_state, restore_infcall_suspend_state)
2980         (discard_infcall_suspend_state)
2981         (get_infcall_suspend_state_regcache): Update.
2982
2983 2018-09-17  Tom Tromey  <tom@tromey.com>
2984
2985         * gdbthread.h (struct thread_suspend_state): Add initializers.
2986         (class thread_info) <suspend>: Remove initializer.
2987         * infrun.c (struct infcall_suspend_state): Add initializers.
2988         (save_infcall_suspend_state): Use new.
2989         (discard_infcall_suspend_state): Use delete.
2990
2991 2018-09-16  Tom Tromey  <tom@tromey.com>
2992
2993         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2994         Remove.
2995         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2996         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2997         (py_varobj_iter_new): Likewise.
2998         (py_varobj_get_iterator): Use gdbpy_ref.
2999
3000 2018-09-16  Tom Tromey  <tom@tromey.com>
3001
3002         * python/py-threadevent.c (py_get_event_thread): Simplify.
3003         * python/py-inferior.c (infpy_thread_from_thread_handle):
3004         Return immediately after calling thread_to_thread_object.  Use
3005         Py_RETURN_NONE.
3006         (thread_to_thread_object): Set the exception on a NULL return.
3007
3008 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3009
3010         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3011
3012 2018-09-16  Tom Tromey  <tom@tromey.com>
3013
3014         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3015         Remove.
3016
3017 2018-09-16  Tom Tromey  <tom@tromey.com>
3018
3019         * python/python-internal.h (thread_to_thread_object): Change
3020         return type.
3021         * python/py-inferior.c (thread_to_thread_object): Return a new
3022         reference.
3023         (infpy_thread_from_thread_handle): Update.
3024         * python/py-infthread.c (gdbpy_selected_thread): Update.
3025         * python/py-stopevent.c (create_stop_event_object): Update.
3026         * python/py-threadevent.c (py_get_event_thread): Return a new
3027         reference.
3028         (py_get_event_thread): Update.
3029         * python/py-event.h (py_get_event_thread): Change return type.
3030         * python/py-continueevent.c (create_continue_event_object):
3031         Update.
3032
3033 2018-09-16  Tom Tromey  <tom@tromey.com>
3034
3035         * python/py-progspace.c (pspy_get_objfiles): Update.
3036         * python/python-internal.h (objfile_to_objfile_object): Change
3037         return type.
3038         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3039         Update.
3040         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3041         Update.
3042         * python/python.c (gdbpy_get_current_objfile): Update.
3043         (gdbpy_objfiles): Update.
3044         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3045         Update.
3046         (objfile_to_objfile_object): Return a new reference.
3047         * python/py-symtab.c (stpy_get_objfile): Update.
3048         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3049         Update.
3050
3051 2018-09-16  Tom Tromey  <tom@tromey.com>
3052
3053         * python/py-inferior.c (infpy_get_progspace): Update.
3054         * python/python-internal.h (pspace_to_pspace_object): Change
3055         return type.
3056         * python/py-newobjfileevent.c
3057         (create_clear_objfiles_event_object): Update.
3058         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3059         Update.
3060         * python/python.c (gdbpy_get_current_progspace): Update.
3061         (gdbpy_progspaces): Update.
3062         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3063         reference.
3064         * python/py-objfile.c (objfpy_get_progspace): Update.
3065         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3066         Update.
3067
3068 2018-09-16  Tom Tromey  <tom@tromey.com>
3069
3070         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3071         (solib_name, block_for_pc, find_pc_line): New functions.
3072         (execute_unwinders): Update.
3073         * python/py-block.c (gdbpy_block_for_pc): Remove.
3074         * python/py-inferior.c (infpy_get_progspace): New function.
3075         (inferior_object_getset) <progspace>: Add.
3076         * python/py-progspace.c (pspy_objfiles): Rewrite.
3077         (pspy_solib_name, pspy_block_for_pc)
3078         (pspy_find_pc_line, pspy_is_valid): New functions.
3079         (progspace_object_methods): Add entries for solib_name,
3080         block_for_pc, find_pc_line, is_valid.
3081         * python/python-internal.h (gdbpy_block_for_pc)
3082         (build_objfiles_list): Don't declare.
3083         * python/python.c: Don't include solib.h.
3084         (gdbpy_solib_name, gdbpy_find_pc_line)
3085         (gdbpy_get_current_progspace, build_objfiles_list)
3086         (gdbpy_objfiles): Remove.
3087         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3088         solib_name, find_pc_line>: Remove entries.
3089
3090 2018-09-16  Tom Tromey  <tom@tromey.com>
3091
3092         * top.c (new_ui_command): Use GNU style for metasyntactic
3093         variables.
3094         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3095         variables.
3096         * maint.c (maintenance_translate_address): Remove "<>" around
3097         text.
3098         * interps.c (interpreter_exec_cmd): Use GNU style for
3099         metasyntactic variables.
3100         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3101         metasyntactic variables.
3102         * tracepoint.c (tfind_range_command): Use GNU style for
3103         metasyntactic variables.
3104         (tfind_outside_command): Likewise.
3105         (_initialize_tracepoint): Likewise.
3106         * remote.c (extended_remote_target::create_inferior): Use GNU
3107         style for metasyntactic variables.
3108         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3109         metasyntactic variables.
3110         (adi_assign_command): Likewise.
3111
3112 2018-09-16  Tom Tromey  <tom@tromey.com>
3113
3114         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3115         metasyntactic variables.  Print message if no disassembler options
3116         are available.
3117
3118 2018-09-15  Tom Tromey  <tom@tromey.com>
3119
3120         * infcmd.c (get_inferior_args): Return const char *.
3121         * inferior.h (get_inferior_args): Return type now const.
3122         * linux-tdep.c (linux_fill_prpsinfo): Update.
3123         * procfs.c (procfs_target::make_corefile_notes): Update.
3124
3125 2018-09-07  Tom Tromey  <tom@tromey.com>
3126
3127         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3128         inside the TRY.
3129
3130 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3131
3132         * nios2-tdep.c (nios2_type_align): New.
3133         (nios2_gdb_arch_init): Install type_align hook.
3134
3135 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3136
3137         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3138         type that is neither object file owned, nor gdbarch owned.
3139         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3140         gdbarch is non-NULL.
3141         (alloc_type_instance): Allocate non-objfile owned types on the
3142         gdbarch obstack.
3143         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3144         using TYPE_ALLOC to ensure memory is allocated on the correct
3145         obstack.
3146         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3147         obstack, or the gdbarch obstack.
3148         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3149
3150 2018-09-14  Tom Tromey  <tom@tromey.com>
3151
3152         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3153         block.
3154
3155 2018-09-14  Tom Tromey  <tom@tromey.com>
3156
3157         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3158
3159 2018-09-13  Tom Tromey  <tom@tromey.com>
3160
3161         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3162         static.
3163
3164 2018-09-13  Tom Tromey  <tom@tromey.com>
3165
3166         * exec.c (try_open_exec_file): Use std::string.
3167
3168 2018-09-13  Tom Tromey  <tom@tromey.com>
3169
3170         * utils.h (gdb_bfd_errmsg): Return std::string.
3171         * exec.c (exec_file_attach): Update.
3172         * compile/compile-object-load.c (compile_object_load): Update.
3173         * utils.c (gdb_bfd_errmsg): Return std::string.
3174
3175 2018-09-13  Tom Tromey  <tom@tromey.com>
3176
3177         * procfs.c (struct procinfo_deleter): New.
3178         (procinfo_up): New typedef.
3179         (do_destroy_procinfo_cleanup): Remove.
3180         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3181
3182 2018-09-13  Tom Tromey  <tom@tromey.com>
3183
3184         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3185
3186 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3187 2018-09-13  Tom Tromey  <tom@tromey.com>
3188
3189         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3190         (pspy_get_objfiles): New function.
3191         (progspace_object_methods): New.
3192         (pspace_object_type): Add tp_methods callback.
3193         * python/python-internal.h (build_objfiles_list): New
3194         declaration.
3195         * python/python.c (build_objfiles_list): New function.
3196         (gdbpy_objfiles): Implement using build_objfiles_list.
3197         * NEWS: Mention the Progspace.objfiles method.
3198
3199 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3200
3201         * python/py-inferior.c (infpy_get_progspace): New function.
3202         (inferior_object_getset): Add progspace property.
3203         * NEWS: Mention the new property.
3204
3205 2018-09-13  Tom Tromey  <tom@tromey.com>
3206
3207         PR rust/23650:
3208         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3209
3210 2018-09-13  Tom Tromey  <tom@tromey.com>
3211
3212         PR rust/23626:
3213         * rust-lang.c (rust_enum_variant): Now static.
3214         (rust_empty_enum_p): New function.
3215         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3216         Handle empty enum.
3217
3218 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3219
3220         * python/py-inferior.c (infpy_repr): New.
3221         (inferior_object_type): Register infpy_repr.
3222         * python/py-objfile.c (objfpy_repr): New.
3223         (objfile_object_type): Register objfpy_repr.
3224
3225 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3226
3227         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3228
3229 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3230
3231         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3232         typo.
3233
3234 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3235
3236         * common/common-utils.c: Don't include '<sys/stat.h>'.
3237         (is_regular_file): Move to...
3238         * common/filestuff.c (is_regular_file): ... here.
3239         * common/common-utils.h (is_regular_file): Move to...
3240         * common/filestuff.h (is_regular_file): ... here.
3241
3242 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3243
3244         * skip.c (debug_skip): New variable.
3245         (skiplist_entry::do_skip_file_p): Add debug output.
3246         (skiplist_entry::do_skip_gfile_p): Likewise.
3247         (skiplist_entry::skip_function_p): Likewise.
3248         (_initialize_step_skip): Create debug command.
3249         * NEWS: Mention set/show debug skip.
3250
3251 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3252
3253         * darwin-nat.c (should_disable_startup_with_shell):
3254         New function.
3255         (darwin_nat_target::create_inferior): Add call.
3256
3257 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3258
3259         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3260         inf_port, msg_state>: Initialize.
3261         (struct darwin_thread_info) <signaled, single_step>: Change
3262         type and initialize.
3263         (struct darwin_thread_info) <event>: Initialize.
3264
3265 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3266
3267         PR gdb/23555
3268         PR gdb/23558
3269         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3270         guesses.
3271
3272 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3273
3274         Revert:
3275         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3276
3277         PR gdb/23555
3278         PR gdb/23558
3279         * gnulib/aclocal.m4: Regenerate.
3280         * gnulib/config.in: Regenerate.
3281         * gnulib/configure: Regenerate.
3282         * gnulib/import/Makefile.am: Update.
3283         * gnulib/import/Makefile.in: Update.
3284         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3285         * gnulib/import/_Noreturn.h: ... this.
3286         * gnulib/import/alloca.in.h: Update.
3287         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3288         * gnulib/import/arg-nonnull.h: ... this.
3289         * gnulib/import/assure.h: Update.
3290         * gnulib/import/at-func.c: Update.
3291         * gnulib/import/basename-lgpl.c: Update.
3292         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3293         * gnulib/import/c++defs.h: ... this.
3294         * gnulib/import/canonicalize-lgpl.c: Update.
3295         * gnulib/import/cdefs.h: Update.
3296         * gnulib/import/chdir-long.c: Update.
3297         * gnulib/import/chdir-long.h: Update.
3298         * gnulib/import/cloexec.c: Update.
3299         * gnulib/import/cloexec.h: Update.
3300         * gnulib/import/close.c: Update.
3301         * gnulib/import/closedir.c: Update.
3302         * gnulib/import/config.charset: Update.
3303         * gnulib/import/dirent-private.h: Update.
3304         * gnulib/import/dirent.in.h: Update.
3305         * gnulib/import/dirfd.c: Update.
3306         * gnulib/import/dirname-lgpl.c: Update.
3307         * gnulib/import/dirname.h: Update.
3308         * gnulib/import/dosname.h: Update.
3309         * gnulib/import/dup-safer-flag.c: Update.
3310         * gnulib/import/dup-safer.c: Update.
3311         * gnulib/import/dup.c: Update.
3312         * gnulib/import/dup2.c: Update.
3313         * gnulib/import/errno.in.h: Update.
3314         * gnulib/import/error.c: Update.
3315         * gnulib/import/error.h: Update.
3316         * gnulib/import/exitfail.c: Update.
3317         * gnulib/import/exitfail.h: Update.
3318         * gnulib/import/extra/update-copyright: Update.
3319         * gnulib/import/fchdir.c: Update.
3320         * gnulib/import/fcntl.c: Update.
3321         * gnulib/import/fcntl.in.h: Update.
3322         * gnulib/import/fd-hook.c: Update.
3323         * gnulib/import/fd-hook.h: Update.
3324         * gnulib/import/fd-safer-flag.c: Update.
3325         * gnulib/import/fd-safer.c: Update.
3326         * gnulib/import/fdopendir.c: Update.
3327         * gnulib/import/filename.h: Update.
3328         * gnulib/import/filenamecat-lgpl.c: Update.
3329         * gnulib/import/filenamecat.h: Update.
3330         * gnulib/import/flexmember.h: Update.
3331         * gnulib/import/float+.h: Update.
3332         * gnulib/import/float.c: Update.
3333         * gnulib/import/float.in.h: Update.
3334         * gnulib/import/fnmatch.c: Update.
3335         * gnulib/import/fnmatch.in.h: Update.
3336         * gnulib/import/fnmatch_loop.c: Update.
3337         * gnulib/import/fpucw.h: Update.
3338         * gnulib/import/frexp.c: Update.
3339         * gnulib/import/frexpl.c: Update.
3340         * gnulib/import/fstat.c: Update.
3341         * gnulib/import/fstatat.c: Update.
3342         * gnulib/import/getcwd-lgpl.c: Update.
3343         * gnulib/import/getcwd.c: Update.
3344         * gnulib/import/getdtablesize.c: Update.
3345         * gnulib/import/getlogin_r.c: Update.
3346         * gnulib/import/getprogname.c: Update.
3347         * gnulib/import/getprogname.h: Update.
3348         * gnulib/import/gettext.h: Update.
3349         * gnulib/import/gettimeofday.c: Update.
3350         * gnulib/import/glob-libc.h: Update.
3351         * gnulib/import/glob.c: Update.
3352         * gnulib/import/glob.in.h: Update.
3353         * gnulib/import/glob_internal.h: Update.
3354         * gnulib/import/glob_pattern_p.c: Update.
3355         * gnulib/import/globfree.c: Update.
3356         * gnulib/import/hard-locale.c: Update.
3357         * gnulib/import/hard-locale.h: Update.
3358         * gnulib/import/intprops.h: Update.
3359         * gnulib/import/inttypes.in.h: Update.
3360         * gnulib/import/isnan.c: Update.
3361         * gnulib/import/isnand-nolibm.h: Update.
3362         * gnulib/import/isnand.c: Update.
3363         * gnulib/import/isnanl-nolibm.h: Update.
3364         * gnulib/import/isnanl.c: Update.
3365         * gnulib/import/itold.c: Update.
3366         * gnulib/import/libc-config.h: Update.
3367         * gnulib/import/limits.in.h: Update.
3368         * gnulib/import/localcharset.c: Update.
3369         * gnulib/import/localcharset.h: Update.
3370         * gnulib/import/localtime-buffer.c: Update.
3371         * gnulib/import/localtime-buffer.h: Update.
3372         * gnulib/import/lstat.c: Update.
3373         * gnulib/import/m4/00gnulib.m4: Update.
3374         * gnulib/import/m4/__inline.m4: Update.
3375         * gnulib/import/m4/absolute-header.m4: Update.
3376         * gnulib/import/m4/alloca.m4: Update.
3377         * gnulib/import/m4/builtin-expect.m4: Update.
3378         * gnulib/import/m4/canonicalize.m4: Update.
3379         * gnulib/import/m4/chdir-long.m4: Update.
3380         * gnulib/import/m4/close.m4: Update.
3381         * gnulib/import/m4/closedir.m4: Update.
3382         * gnulib/import/m4/configmake.m4: Update.
3383         * gnulib/import/m4/d-ino.m4: Update.
3384         * gnulib/import/m4/d-type.m4: Update.
3385         * gnulib/import/m4/dirent_h.m4: Update.
3386         * gnulib/import/m4/dirfd.m4: Update.
3387         * gnulib/import/m4/dirname.m4: Update.
3388         * gnulib/import/m4/double-slash-root.m4: Update.
3389         * gnulib/import/m4/dup.m4: Update.
3390         * gnulib/import/m4/dup2.m4: Update.
3391         * gnulib/import/m4/eealloc.m4: Update.
3392         * gnulib/import/m4/environ.m4: Update.
3393         * gnulib/import/m4/errno_h.m4: Update.
3394         * gnulib/import/m4/error.m4: Update.
3395         * gnulib/import/m4/exponentd.m4: Update.
3396         * gnulib/import/m4/exponentl.m4: Update.
3397         * gnulib/import/m4/extensions.m4: Update.
3398         * gnulib/import/m4/extern-inline.m4: Update.
3399         * gnulib/import/m4/fchdir.m4: Update.
3400         * gnulib/import/m4/fcntl-o.m4: Update.
3401         * gnulib/import/m4/fcntl.m4: Update.
3402         * gnulib/import/m4/fcntl_h.m4: Update.
3403         * gnulib/import/m4/fdopendir.m4: Update.
3404         * gnulib/import/m4/filenamecat.m4: Update.
3405         * gnulib/import/m4/flexmember.m4: Update.
3406         * gnulib/import/m4/float_h.m4: Update.
3407         * gnulib/import/m4/fnmatch.m4: Update.
3408         * gnulib/import/m4/fnmatch_h.m4: Update.
3409         * gnulib/import/m4/fpieee.m4: Update.
3410         * gnulib/import/m4/frexp.m4: Update.
3411         * gnulib/import/m4/frexpl.m4: Update.
3412         * gnulib/import/m4/fstat.m4: Update.
3413         * gnulib/import/m4/fstatat.m4: Update.
3414         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3415         * gnulib/import/m4/getcwd-path-max.m4: Update.
3416         * gnulib/import/m4/getcwd.m4: Update.
3417         * gnulib/import/m4/getdtablesize.m4: Update.
3418         * gnulib/import/m4/getlogin.m4: Update.
3419         * gnulib/import/m4/getlogin_r.m4: Update.
3420         * gnulib/import/m4/getpagesize.m4: Update.
3421         * gnulib/import/m4/getprogname.m4: Update.
3422         * gnulib/import/m4/gettimeofday.m4: Update.
3423         * gnulib/import/m4/glibc21.m4: Update.
3424         * gnulib/import/m4/glob.m4: Update.
3425         * gnulib/import/m4/glob_h.m4: Update.
3426         * gnulib/import/m4/gnulib-cache.m4: Update.
3427         * gnulib/import/m4/gnulib-common.m4: Update.
3428         * gnulib/import/m4/gnulib-comp.m4: Update.
3429         * gnulib/import/m4/gnulib-tool.m4: Update.
3430         * gnulib/import/m4/hard-locale.m4: Update.
3431         * gnulib/import/m4/include_next.m4: Update.
3432         * gnulib/import/m4/inttypes-pri.m4: Update.
3433         * gnulib/import/m4/inttypes.m4: Update.
3434         * gnulib/import/m4/isnand.m4: Update.
3435         * gnulib/import/m4/isnanl.m4: Update.
3436         * gnulib/import/m4/largefile.m4: Update.
3437         * gnulib/import/m4/limits-h.m4: Update.
3438         * gnulib/import/m4/localcharset.m4: Update.
3439         * gnulib/import/m4/locale-fr.m4: Update.
3440         * gnulib/import/m4/locale-ja.m4: Update.
3441         * gnulib/import/m4/locale-zh.m4: Update.
3442         * gnulib/import/m4/localtime-buffer.m4: Update.
3443         * gnulib/import/m4/longlong.m4: Update.
3444         * gnulib/import/m4/lstat.m4: Update.
3445         * gnulib/import/m4/malloc.m4: Update.
3446         * gnulib/import/m4/malloca.m4: Update.
3447         * gnulib/import/m4/math_h.m4: Update.
3448         * gnulib/import/m4/mbrtowc.m4: Update.
3449         * gnulib/import/m4/mbsinit.m4: Update.
3450         * gnulib/import/m4/mbsrtowcs.m4: Update.
3451         * gnulib/import/m4/mbstate_t.m4: Update.
3452         * gnulib/import/m4/memchr.m4: Update.
3453         * gnulib/import/m4/memmem.m4: Update.
3454         * gnulib/import/m4/mempcpy.m4: Update.
3455         * gnulib/import/m4/memrchr.m4: Update.
3456         * gnulib/import/m4/mkdir.m4: Update.
3457         * gnulib/import/m4/mkstemp.m4: Update.
3458         * gnulib/import/m4/mmap-anon.m4: Update.
3459         * gnulib/import/m4/mode_t.m4: Update.
3460         * gnulib/import/m4/msvc-inval.m4: Update.
3461         * gnulib/import/m4/msvc-nothrow.m4: Update.
3462         * gnulib/import/m4/multiarch.m4: Update.
3463         * gnulib/import/m4/nocrash.m4: Update.
3464         * gnulib/import/m4/off_t.m4: Update.
3465         * gnulib/import/m4/onceonly.m4: Update.
3466         * gnulib/import/m4/open-cloexec.m4: Update.
3467         * gnulib/import/m4/open.m4: Update.
3468         * gnulib/import/m4/openat.m4: Update.
3469         * gnulib/import/m4/opendir.m4: Update.
3470         * gnulib/import/m4/pathmax.m4: Update.
3471         * gnulib/import/m4/rawmemchr.m4: Update.
3472         * gnulib/import/m4/readdir.m4: Update.
3473         * gnulib/import/m4/readlink.m4: Update.
3474         * gnulib/import/m4/realloc.m4: Update.
3475         * gnulib/import/m4/rename.m4: Update.
3476         * gnulib/import/m4/rewinddir.m4: Update.
3477         * gnulib/import/m4/rmdir.m4: Update.
3478         * gnulib/import/m4/save-cwd.m4: Update.
3479         * gnulib/import/m4/secure_getenv.m4: Update.
3480         * gnulib/import/m4/setenv.m4: Update.
3481         * gnulib/import/m4/signal_h.m4: Update.
3482         * gnulib/import/m4/ssize_t.m4: Update.
3483         * gnulib/import/m4/stat-time.m4: Update.
3484         * gnulib/import/m4/stat.m4: Update.
3485         * gnulib/import/m4/std-gnu11.m4: Update.
3486         * gnulib/import/m4/stdbool.m4: Update.
3487         * gnulib/import/m4/stddef_h.m4: Update.
3488         * gnulib/import/m4/stdint.m4: Update.
3489         * gnulib/import/m4/stdio_h.m4: Update.
3490         * gnulib/import/m4/stdlib_h.m4: Update.
3491         * gnulib/import/m4/strchrnul.m4: Update.
3492         * gnulib/import/m4/strdup.m4: Update.
3493         * gnulib/import/m4/strerror.m4: Update.
3494         * gnulib/import/m4/string_h.m4: Update.
3495         * gnulib/import/m4/strstr.m4: Update.
3496         * gnulib/import/m4/strtok_r.m4: Update.
3497         * gnulib/import/m4/sys_socket_h.m4: Update.
3498         * gnulib/import/m4/sys_stat_h.m4: Update.
3499         * gnulib/import/m4/sys_time_h.m4: Update.
3500         * gnulib/import/m4/sys_types_h.m4: Update.
3501         * gnulib/import/m4/tempname.m4: Update.
3502         * gnulib/import/m4/time_h.m4: Update.
3503         * gnulib/import/m4/unistd-safer.m4: Update.
3504         * gnulib/import/m4/unistd_h.m4: Update.
3505         * gnulib/import/m4/warn-on-use.m4: Update.
3506         * gnulib/import/m4/wchar_h.m4: Update.
3507         * gnulib/import/m4/wchar_t.m4: Update.
3508         * gnulib/import/m4/wctype_h.m4: Update.
3509         * gnulib/import/m4/wint_t.m4: Update.
3510         * gnulib/import/malloc.c: Update.
3511         * gnulib/import/malloc/scratch_buffer.h: Update.
3512         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3513         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3514         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3515         * gnulib/import/malloca.c: Update.
3516         * gnulib/import/malloca.h: Update.
3517         * gnulib/import/malloca.valgrind: Update.
3518         * gnulib/import/math.in.h: Update.
3519         * gnulib/import/mbrtowc.c: Update.
3520         * gnulib/import/mbsinit.c: Update.
3521         * gnulib/import/mbsrtowcs-impl.h: Update.
3522         * gnulib/import/mbsrtowcs-state.c: Update.
3523         * gnulib/import/mbsrtowcs.c: Update.
3524         * gnulib/import/memchr.c: Update.
3525         * gnulib/import/memmem.c: Update.
3526         * gnulib/import/mempcpy.c: Update.
3527         * gnulib/import/memrchr.c: Update.
3528         * gnulib/import/mkdir.c: Update.
3529         * gnulib/import/mkstemp.c: Update.
3530         * gnulib/import/msvc-inval.c: Update.
3531         * gnulib/import/msvc-inval.h: Update.
3532         * gnulib/import/msvc-nothrow.c: Update.
3533         * gnulib/import/msvc-nothrow.h: Update.
3534         * gnulib/import/open.c: Update.
3535         * gnulib/import/openat-die.c: Update.
3536         * gnulib/import/openat-priv.h: Update.
3537         * gnulib/import/openat-proc.c: Update.
3538         * gnulib/import/openat.c: Update.
3539         * gnulib/import/openat.h: Update.
3540         * gnulib/import/opendir.c: Update.
3541         * gnulib/import/pathmax.h: Update.
3542         * gnulib/import/pipe-safer.c: Update.
3543         * gnulib/import/rawmemchr.c: Update.
3544         * gnulib/import/readdir.c: Update.
3545         * gnulib/import/readlink.c: Update.
3546         * gnulib/import/realloc.c: Update.
3547         * gnulib/import/ref-add.sin: Update.
3548         * gnulib/import/ref-del.sin: Update.
3549         * gnulib/import/rename.c: Update.
3550         * gnulib/import/rewinddir.c: Update.
3551         * gnulib/import/rmdir.c: Update.
3552         * gnulib/import/same-inode.h: Update.
3553         * gnulib/import/save-cwd.c: Update.
3554         * gnulib/import/save-cwd.h: Update.
3555         * gnulib/import/scratch_buffer.h: Update.
3556         * gnulib/import/secure_getenv.c: Update.
3557         * gnulib/import/setenv.c: Update.
3558         * gnulib/import/signal.in.h: Update.
3559         * gnulib/import/stat-time.c: Update.
3560         * gnulib/import/stat-time.h: Update.
3561         * gnulib/import/stat-w32.c: Update.
3562         * gnulib/import/stat-w32.h: Update.
3563         * gnulib/import/stat.c: Update.
3564         * gnulib/import/stdbool.in.h: Update.
3565         * gnulib/import/stddef.in.h: Update.
3566         * gnulib/import/stdint.in.h: Update.
3567         * gnulib/import/stdio.in.h: Update.
3568         * gnulib/import/stdlib.in.h: Update.
3569         * gnulib/import/str-two-way.h: Update.
3570         * gnulib/import/strchrnul.c: Update.
3571         * gnulib/import/strdup.c: Update.
3572         * gnulib/import/streq.h: Update.
3573         * gnulib/import/strerror-override.c: Update.
3574         * gnulib/import/strerror-override.h: Update.
3575         * gnulib/import/strerror.c: Update.
3576         * gnulib/import/string.in.h: Update.
3577         * gnulib/import/stripslash.c: Update.
3578         * gnulib/import/strnlen1.c: Update.
3579         * gnulib/import/strnlen1.h: Update.
3580         * gnulib/import/strstr.c: Update.
3581         * gnulib/import/strtok_r.c: Update.
3582         * gnulib/import/sys_stat.in.h: Update.
3583         * gnulib/import/sys_time.in.h: Update.
3584         * gnulib/import/sys_types.in.h: Update.
3585         * gnulib/import/tempname.c: Update.
3586         * gnulib/import/tempname.h: Update.
3587         * gnulib/import/time.in.h: Update.
3588         * gnulib/import/unistd--.h: Update.
3589         * gnulib/import/unistd-safer.h: Update.
3590         * gnulib/import/unistd.in.h: Update.
3591         * gnulib/import/unsetenv.c: Update.
3592         * gnulib/import/verify.h: Update.
3593         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3594         * gnulib/import/wchar.in.h: Update.
3595         * gnulib/import/wctype.in.h: Update.
3596         * gnulib/import/xalloc-oversized.h: Update.
3597         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3598         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3599
3600 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3601
3602         * record-btrace.c (get_thread_current_frame): Remove
3603         old_inferior_ptid.
3604
3605 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3606
3607         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3608         with check_tag to 1 if and only if the type is tagged and the
3609         component being searched cannot been found in the current
3610         view. Otherwise, always call ada_to_fixed_type with
3611         check_tag to 0.
3612
3613 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3614
3615         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3616         declaration.
3617         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3618         * ada-varobj.c (ada_varobj_get_number_of_children,
3619         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3620
3621 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3622
3623         * ada-valprint.c (ada_value_print): Use type instead of
3624         enclosing type.
3625
3626 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3627
3628         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3629         an array of access to unconstrained array.
3630
3631 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3632
3633         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3634         (ada_check_typedef): Use it.
3635
3636 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3637
3638         * ada-varobj.c (ada_varobj_describe_struct_child)
3639         (ada_varobj_describe_child): Handle union case like struct one.
3640
3641 2018-09-10  Tom Tromey  <tom@tromey.com>
3642
3643         PR python/18380:
3644         * python/python.c (_initialize_python): Make example in "python"
3645         help work in Python 3.
3646
3647 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3648
3649         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3650         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3651         $(EXEEXT) to the script, as it is not a program.
3652
3653 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3654
3655         * python/py-prettyprint.c (pretty_print_one_value): Return
3656         gdbpy_ref<>.
3657         (print_string_repr): Adjust.
3658         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3659         * python/python-internal.h (apply_varobj_pretty_printer): Return
3660         gdbpy_ref<>.
3661         * varobj.c (varobj_value_get_print_value): Adjust.
3662
3663 2018-09-08  Tom Tromey  <tom@tromey.com>
3664
3665         PR python/16047:
3666         * python/py-prettyprint.c (pretty_print_one_value): Check for
3667         to_string method.
3668
3669 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3670
3671         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3672         replace_operator_with_call.
3673
3674 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3675
3676         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3677
3678 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3679
3680         * ada-typeprint.c (print_range): Print the bounds using TYPE
3681         rather than its TYPE_TARGET_TYPE.
3682
3683 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3684
3685         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3686         call to ada_to_fixed_value_create.
3687
3688 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3689
3690         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3691
3692 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3693
3694         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3695         by calls to error.
3696
3697 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3698
3699         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3700         Move update of loop variable "fi".
3701
3702 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3703
3704         * ada-lang.c (value_assign_to_component): In the case of
3705         big-endian targets, extract the bits of the given VAL
3706         using an src_offset of zero if container is not a scalar.
3707
3708 2018-09-06  Simon Ser  <contact@emersion.fr>
3709
3710         PR gdb/23105
3711         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3712         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3713         * fbsd-tdep.c (fbsd_make_note_desc): New.
3714         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3715         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3716         * target.h (enum target_object) Add FreeBSD-specific
3717         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3718
3719 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3720
3721         * compile/compile-c.h (generate_c_for_variable_locations):
3722         Change reference to pointer.
3723         * compile/compile-c-support.c (compile_program) <compute>:
3724         Likewise.
3725         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3726         (generate_c_for_for_one_variable): Likewise
3727         (generate_c_for_variable_locations): Likewise
3728         * compile/compile-c-types.c (compile_c_instance::convert_type):
3729         Likewise
3730         * compile/compile-cplus-symbols.c (convert_one_symbol):
3731         std::move the scope passed to enter_scope.
3732         * compile/compile-cplus-types.c
3733         (compile_cplus_instance::enter_scope): Make parameter
3734         rvalue-reference.
3735         (compile_cplus_instance::new_scope): Change reference to
3736         pointer.
3737         (compile_cplus_instance::convert_type): Likewise
3738         (compile_cplus_convert_typedef): std::move the scope passed to
3739         enter_scope.
3740         (compile_cplus_convert_struct_or_union): Likewise.
3741         (compile_cplus_convert_enum): Likewise.
3742         (compile_cplus_convert_namespace): Likewise.
3743         * compile/compile-cplus.h (compile_cplus_instance)
3744         <enter_scope>: Make parameter rvalue-reference.
3745         * compile/compile-internal.h (compile_instance)
3746         <get_cached_type>: Likewise
3747         * compile/compile-loc2c.c (push): Likewise
3748         (pushf): Likewise
3749         (unary): Likewise
3750         (binary): Likewise
3751         (print_label): Likewise
3752         (pushf_register_address): Likewise
3753         (pushf_register): Likewise
3754         (do_compile_dwarf_expr_to_c): Likewise
3755         (compile_dwarf_expr_to_c): Likewise
3756         (compile_dwarf_bounds_to_c): Likewise
3757         * compile/compile.c (compile_instance::get_cached_type):
3758         Likewise
3759         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3760         (compile_dwarf_bounds_to_c): Likewise
3761         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3762         (dwarf2_compile_property_to_c): Likewise
3763         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3764         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3765         Likewise
3766
3767 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3768
3769         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3770         * tui/tui-data.c (init_content_element): Don't initialize it.
3771
3772 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3773
3774         * tui/tui-data.h (struct tui_win_info)
3775         <detail::opaque>: Remove.
3776         * tui/tui-data.c (init_win_info): Remove assignment.
3777
3778 2018-09-05  Tom Tromey  <tom@tromey.com>
3779
3780         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3781         -Wformat-nonliteral.
3782         * target-float.c (host_float_ops<T>::to_string)
3783         (host_float_ops<T>::from_string): Use
3784         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3785         * configure: Rebuild.
3786
3787 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3788
3789         * printcmd.c (printf_c_string): Use
3790         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3791         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3792
3793 2018-09-05  Tom Tromey  <tom@tromey.com>
3794
3795         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3796
3797 2018-09-05  Tom de Vries  <tdevries@suse.de>
3798
3799         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3800         with resolve_abstract_p == true.
3801         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3802         defaulting to false. Propagate resolve_abstract_p to
3803         dwarf2_fetch_die_loc_sect_off.
3804         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3805         parameter, defaulting to false.
3806         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3807         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3808         parameter.
3809         * dwarf2read.h (struct die_info): Forward-declare.
3810         (die_info_ptr): New typedef.
3811         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3812
3813 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3814
3815         GDB 8.2 released.
3816
3817 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3818             Pedro Alves  <palves@redhat.com>
3819
3820         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3821         "aclocal-m4-deps.mk".  Include file here.
3822         $(srcdir)/aclocal.m4: Add "configure.ac".
3823         * gnulib/aclocal-m4-deps.mk: New file.
3824         * gnulib/update-gnulib.sh: Automatically update
3825         "aclocal-m4-deps.mk".
3826
3827 2018-09-04  Tom Tromey  <tom@tromey.com>
3828
3829         * configure: Rebuild.
3830         * configure.ac: Remove multi-ice code.
3831
3832 2018-09-04  Tom Tromey  <tom@tromey.com>
3833
3834         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3835         (ada-exp.o): Update.
3836
3837 2018-09-04  Tom Tromey  <tom@tromey.com>
3838
3839         * Makefile.in (printcmd.o, target-float.o): Remove.
3840         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3841
3842 2018-09-04  Tom Tromey  <tom@tromey.com>
3843
3844         * gnulib/Makefile.in: Remove obsolete comment.
3845         * Makefile.in: Remove obsolete comment.
3846
3847 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3848
3849         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3850         line with '+'.
3851
3852 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3853
3854         * riscv-tdep.c: Add 'prologue-value.h' include.
3855         (struct riscv_unwind_cache): New struct.
3856         (riscv_debug_unwinder): New global.
3857         (riscv_scan_prologue): Update arguments, capture register details
3858         from prologue scan.
3859         (riscv_skip_prologue): Reformat arguments line, move end of
3860         prologue calculation into riscv_scan_prologue.
3861         (riscv_frame_cache): Update return type, create
3862         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3863         details.
3864         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3865         (riscv_frame_prev_register): Use the trad_frame within the
3866         riscv_unwind_cache.
3867         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3868         flag.
3869
3870 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3871
3872         * trad-frame.h (trad_frame_set_realreg): Declare.
3873         (trad_frame_set_addr): Declare.
3874         * trad-frame.c (trad_frame_set_realreg): Define new function.
3875         (trad_frame_set_addr): Define new function.
3876         (trad_frame_set_reg_realreg): Use new function.
3877         (trad_frame_set_reg_addr): Use new function.
3878
3879 2018-09-01  Keith Seitz  <keiths@redhat.com>
3880
3881         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3882         pulongest instead of "%lld".
3883         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3884         ATTRIBUTE_UNUSED.
3885
3886 2018-08-31  Tom Tromey  <tom@tromey.com>
3887
3888         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3889         variant part type.
3890
3891 2018-08-31  Pedro Alves  <palves@redhat.com>
3892
3893         * gdbarch.h: Regenerate.
3894
3895 2018-08-31  Pedro Alves  <palves@redhat.com>
3896
3897         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3898         * target.h (Hardware watchpoint interfaces): Describe
3899         continuable/steppable/non-steppable watchpoints.
3900         * gdbarch.h, gdbarch.c: Regenerate.
3901
3902 2018-08-31  Pedro Alves  <palves@redhat.com>
3903
3904         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3905         Delete.
3906         * s390-linux-nat.c
3907         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3908         * target.h (target_ops::have_continuable_watchpoint): Delete.
3909         (target_have_continuable_watchpoint): Delete.
3910         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3911         * target-delegates.c: Regenerate.
3912
3913 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3914
3915         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3916         the files present in "gnulib/import/m4/".
3917
3918 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3919
3920         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3921         c.sw, c.swsp, and c.sdsp.
3922
3923 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3924
3925         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3926         (riscv_read_misa_reg): Don't cache value read into inferior data.
3927         (riscv_new_inferior_data): Delete.
3928         (riscv_inferior_data_cleanup): Delete.
3929         (riscv_inferior_data): Delete.
3930         (riscv_invalidate_inferior_data): Delete.
3931         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3932
3933 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3934
3935         * compile/compile-cplus-types.c
3936         (compile_cplus_instance::leave_scope): Take the address of scope
3937         object.
3938         (compile_cplus_instance::convert_qualified_base): Compare quals
3939         to 0.
3940
3941 2018-08-30  Keith Seitz  <keiths@redhat.com>
3942
3943         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3944         Use "%s" and host_address_to_string instead of "%p" in printf.
3945
3946 2018-08-29  Keith Seitz  <keiths@redhat.com>
3947
3948         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3949         and compile-cplus-types.c.
3950         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3951         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3952         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3953         Declare.
3954         * compile/compile-c-support.c: Include compile-cplus.h.
3955         (load_libcompile): Templatize.
3956         (get_compile_context): "New" function.
3957         (c_get_compile_context): Use get_compile_context.
3958         (cplus_get_compile_context): New function.
3959         (cplus_push_user_expression, cplus_pop_user_expression)
3960         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3961         (cplus_compute_program): Define new structs/functions.
3962         * compile/compile-cplus-symmbols.c: New file.
3963         * compile/compile-cplus-types.c: New file.
3964         * compile/compile-cplus.h: New file.
3965         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3966         Declare.
3967         * compile/compile-object-load.c (get_out_value_type): Use
3968         strncmp_iw when comparing symbol names.
3969         (compile_object_load): Add mst_bss and mst_data.
3970         * compile/compile.c (_initialize_compile): Remove
3971         -Wno-implicit-function-declaration from `compile_args'.
3972         * compile/gcc-cp-plugin.h: New file.
3973         * NEWS: Mention C++ compile support and new debug options.
3974
3975 2018-08-29  Keith Seitz  <keiths@redhat.com>
3976
3977         * linespec.c (collect_info::add_symbol): Make virtual.
3978         (struct symbol_searcher_collect_info): New struct.
3979         (symbol_searcher::find_all_symbols): New method.
3980         * symtab.h (class symbol_searcher): New class.
3981
3982 2018-08-29  Keith Seitz  <keiths@redhat.com>
3983
3984         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3985         Change to vector of block_symbol.  Update all users.
3986         (struct collect_info) <symbols>: Likewise.
3987         (collect_info::add_symbol): Take block_symbol as argument.
3988         Update all callers.
3989         (decode_compound_collector) <m_symbols>: Change type to vector
3990         of block_symbol.  Update all users.
3991         (decode_compound_collector::operator ()): Change parameter type
3992         to block_symbol.
3993         (find_method, find_function_symbols, find_linespec_symbols)
3994         (find_label_symbols_in_block, find_label_symbols): Change symbol
3995         vectors to block_symbol vectors.
3996         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3997         block_symbol.
3998
3999 2018-08-29  Keith Seitz  <keiths@redhat.com>
4000
4001         * linespec.c (symbolp): Remove typedef and VEC definitions.
4002         (bound_minimal_symbol_d): Likewise.
4003
4004 2018-08-29  Keith Seitz  <keiths@redhat.com>
4005
4006         * linespec.c (decode_compound_collector::decode_compound_collector):
4007         Remove initialization for `m_symtabs'.
4008         (decode_compound_collector::release_symbols): Change return type
4009         to std::vector.  Update all callers.
4010         (class decode_compound_collector) <m_symbols>: Change type to
4011         std::vector.
4012         (lookup_prefix_sym): Change return type to std::vector.  Update all
4013         callers.
4014         (compare_symbols): Remove.
4015         (std_compare_symbols): Rename to `compare_symbols'.
4016         (find_method): Change `sym_classes' parameter to std::vector.
4017         Update all callers.  Use std::sort to sort sym_classes.
4018         (find_linespec_symbols): Remove cleanup.
4019
4020 2018-08-29  Keith Seitz  <keiths@redhat.com>
4021
4022         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4023         std::vector.  Update all users.
4024         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4025         (struct collect_info) <minimal_symbols>: Likewise.
4026         (compare_msymbols): Return bool.  Change parameters to const
4027         bound_minimal_symbol references.
4028         (find_method, find_function_symbols, find_linespec_symbols): Change
4029         `minsyms' parameter to std::vector.  Update all callers.
4030
4031 2018-08-29  Keith Seitz  <keiths@redhat.com>
4032
4033         * linespec.c (struct linespec) <label_symbols>: Change type to
4034         std::vector.  Update all users.
4035         (find_label_symbols_in_block): Change `result' parameter to
4036         std::vector.  Update all callers.
4037         (find_label_symbols): Return std::vector.  Update all callers.
4038
4039 2018-08-29  Keith Seitz  <keiths@redhat.com>
4040
4041         * linespec.c (struct linespec) <function_symbols>: Change type to
4042         std::vector.  Update all users.
4043         (struct collect_info) <function_symbols>: Likewise.
4044         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4045         (std_compare_symbols): New function.
4046         (find_method, find_function_symbols, find_linespec_symbols)
4047         (find_label_symbols_in_block): Change `symbols' parameter to
4048         std::vector.  Update all callers.
4049         (find_label_symbols): Likewise for `function_symbols' and
4050         `label_funcs_ret'.
4051
4052 2018-08-29  Keith Seitz  <keiths@redhat.com>
4053
4054         * linespec.c (symtab_vector_up): Define.
4055         (struct linespec) <file_symtabs>: Change type to std::vector *.
4056         Update all uses.
4057         (struct collect_info) <file_symtabs>: Likewise.
4058         (collect_symtabs_from_filename): Return symtab_vector_up.
4059         Update all callers.
4060         (decode_objc): Remove cleanup.
4061         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4062         (symtab_collector::release_symtabs): Return symtab_vector_up.
4063         Update all callers.
4064         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4065         Update all users.
4066         (collect_symtabs_from_filename, symtabs_from_filename): Return
4067         symtab_vector_up.  Update all callers.
4068
4069 2018-08-29  Tom Tromey  <tom@tromey.com>
4070
4071         * csky-tdep.c (csky_analyze_prologue): Use
4072         core_addr_to_string_nz.
4073
4074 2018-08-29  Tom Tromey  <tom@tromey.com>
4075
4076         * windows-nat.c (struct xlate_exception) <them>: Change type to
4077         DWORD.
4078         (xlate): Fix formatting.  Remove last entry.
4079         (struct xlate_exception, xlate): Comment out.
4080         (windows_nat_target::resume): Use ranged for.
4081
4082 2018-08-29  Jim Wilson  <jimw@sifive.com>
4083
4084         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4085         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4086         of NT_PRFPREG.
4087         (riscv_linux_nat_target::store_registers): Likewise.
4088
4089 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4090
4091         PR gdb/23555
4092         PR gdb/23558
4093         * gnulib/aclocal.m4: Regenerate.
4094         * gnulib/config.in: Regenerate.
4095         * gnulib/configure: Regenerate.
4096         * gnulib/import/Makefile.am: Update.
4097         * gnulib/import/Makefile.in: Update.
4098         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4099         * gnulib/import/_Noreturn.h: ... this.
4100         * gnulib/import/alloca.in.h: Update.
4101         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4102         * gnulib/import/arg-nonnull.h: ... this.
4103         * gnulib/import/assure.h: Update.
4104         * gnulib/import/at-func.c: Update.
4105         * gnulib/import/basename-lgpl.c: Update.
4106         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4107         * gnulib/import/c++defs.h: ... this.
4108         * gnulib/import/canonicalize-lgpl.c: Update.
4109         * gnulib/import/cdefs.h: Update.
4110         * gnulib/import/chdir-long.c: Update.
4111         * gnulib/import/chdir-long.h: Update.
4112         * gnulib/import/cloexec.c: Update.
4113         * gnulib/import/cloexec.h: Update.
4114         * gnulib/import/close.c: Update.
4115         * gnulib/import/closedir.c: Update.
4116         * gnulib/import/config.charset: Update.
4117         * gnulib/import/dirent-private.h: Update.
4118         * gnulib/import/dirent.in.h: Update.
4119         * gnulib/import/dirfd.c: Update.
4120         * gnulib/import/dirname-lgpl.c: Update.
4121         * gnulib/import/dirname.h: Update.
4122         * gnulib/import/dosname.h: Update.
4123         * gnulib/import/dup-safer-flag.c: Update.
4124         * gnulib/import/dup-safer.c: Update.
4125         * gnulib/import/dup.c: Update.
4126         * gnulib/import/dup2.c: Update.
4127         * gnulib/import/errno.in.h: Update.
4128         * gnulib/import/error.c: Update.
4129         * gnulib/import/error.h: Update.
4130         * gnulib/import/exitfail.c: Update.
4131         * gnulib/import/exitfail.h: Update.
4132         * gnulib/import/extra/update-copyright: Update.
4133         * gnulib/import/fchdir.c: Update.
4134         * gnulib/import/fcntl.c: Update.
4135         * gnulib/import/fcntl.in.h: Update.
4136         * gnulib/import/fd-hook.c: Update.
4137         * gnulib/import/fd-hook.h: Update.
4138         * gnulib/import/fd-safer-flag.c: Update.
4139         * gnulib/import/fd-safer.c: Update.
4140         * gnulib/import/fdopendir.c: Update.
4141         * gnulib/import/filename.h: Update.
4142         * gnulib/import/filenamecat-lgpl.c: Update.
4143         * gnulib/import/filenamecat.h: Update.
4144         * gnulib/import/flexmember.h: Update.
4145         * gnulib/import/float+.h: Update.
4146         * gnulib/import/float.c: Update.
4147         * gnulib/import/float.in.h: Update.
4148         * gnulib/import/fnmatch.c: Update.
4149         * gnulib/import/fnmatch.in.h: Update.
4150         * gnulib/import/fnmatch_loop.c: Update.
4151         * gnulib/import/fpucw.h: Update.
4152         * gnulib/import/frexp.c: Update.
4153         * gnulib/import/frexpl.c: Update.
4154         * gnulib/import/fstat.c: Update.
4155         * gnulib/import/fstatat.c: Update.
4156         * gnulib/import/getcwd-lgpl.c: Update.
4157         * gnulib/import/getcwd.c: Update.
4158         * gnulib/import/getdtablesize.c: Update.
4159         * gnulib/import/getlogin_r.c: Update.
4160         * gnulib/import/getprogname.c: Update.
4161         * gnulib/import/getprogname.h: Update.
4162         * gnulib/import/gettext.h: Update.
4163         * gnulib/import/gettimeofday.c: Update.
4164         * gnulib/import/glob-libc.h: Update.
4165         * gnulib/import/glob.c: Update.
4166         * gnulib/import/glob.in.h: Update.
4167         * gnulib/import/glob_internal.h: Update.
4168         * gnulib/import/glob_pattern_p.c: Update.
4169         * gnulib/import/globfree.c: Update.
4170         * gnulib/import/hard-locale.c: Update.
4171         * gnulib/import/hard-locale.h: Update.
4172         * gnulib/import/intprops.h: Update.
4173         * gnulib/import/inttypes.in.h: Update.
4174         * gnulib/import/isnan.c: Update.
4175         * gnulib/import/isnand-nolibm.h: Update.
4176         * gnulib/import/isnand.c: Update.
4177         * gnulib/import/isnanl-nolibm.h: Update.
4178         * gnulib/import/isnanl.c: Update.
4179         * gnulib/import/itold.c: Update.
4180         * gnulib/import/libc-config.h: Update.
4181         * gnulib/import/limits.in.h: Update.
4182         * gnulib/import/localcharset.c: Update.
4183         * gnulib/import/localcharset.h: Update.
4184         * gnulib/import/localtime-buffer.c: Update.
4185         * gnulib/import/localtime-buffer.h: Update.
4186         * gnulib/import/lstat.c: Update.
4187         * gnulib/import/m4/00gnulib.m4: Update.
4188         * gnulib/import/m4/__inline.m4: Update.
4189         * gnulib/import/m4/absolute-header.m4: Update.
4190         * gnulib/import/m4/alloca.m4: Update.
4191         * gnulib/import/m4/builtin-expect.m4: Update.
4192         * gnulib/import/m4/canonicalize.m4: Update.
4193         * gnulib/import/m4/chdir-long.m4: Update.
4194         * gnulib/import/m4/close.m4: Update.
4195         * gnulib/import/m4/closedir.m4: Update.
4196         * gnulib/import/m4/configmake.m4: Update.
4197         * gnulib/import/m4/d-ino.m4: Update.
4198         * gnulib/import/m4/d-type.m4: Update.
4199         * gnulib/import/m4/dirent_h.m4: Update.
4200         * gnulib/import/m4/dirfd.m4: Update.
4201         * gnulib/import/m4/dirname.m4: Update.
4202         * gnulib/import/m4/double-slash-root.m4: Update.
4203         * gnulib/import/m4/dup.m4: Update.
4204         * gnulib/import/m4/dup2.m4: Update.
4205         * gnulib/import/m4/eealloc.m4: Update.
4206         * gnulib/import/m4/environ.m4: Update.
4207         * gnulib/import/m4/errno_h.m4: Update.
4208         * gnulib/import/m4/error.m4: Update.
4209         * gnulib/import/m4/exponentd.m4: Update.
4210         * gnulib/import/m4/exponentl.m4: Update.
4211         * gnulib/import/m4/extensions.m4: Update.
4212         * gnulib/import/m4/extern-inline.m4: Update.
4213         * gnulib/import/m4/fchdir.m4: Update.
4214         * gnulib/import/m4/fcntl-o.m4: Update.
4215         * gnulib/import/m4/fcntl.m4: Update.
4216         * gnulib/import/m4/fcntl_h.m4: Update.
4217         * gnulib/import/m4/fdopendir.m4: Update.
4218         * gnulib/import/m4/filenamecat.m4: Update.
4219         * gnulib/import/m4/flexmember.m4: Update.
4220         * gnulib/import/m4/float_h.m4: Update.
4221         * gnulib/import/m4/fnmatch.m4: Update.
4222         * gnulib/import/m4/fnmatch_h.m4: Update.
4223         * gnulib/import/m4/fpieee.m4: Update.
4224         * gnulib/import/m4/frexp.m4: Update.
4225         * gnulib/import/m4/frexpl.m4: Update.
4226         * gnulib/import/m4/fstat.m4: Update.
4227         * gnulib/import/m4/fstatat.m4: Update.
4228         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4229         * gnulib/import/m4/getcwd-path-max.m4: Update.
4230         * gnulib/import/m4/getcwd.m4: Update.
4231         * gnulib/import/m4/getdtablesize.m4: Update.
4232         * gnulib/import/m4/getlogin.m4: Update.
4233         * gnulib/import/m4/getlogin_r.m4: Update.
4234         * gnulib/import/m4/getpagesize.m4: Update.
4235         * gnulib/import/m4/getprogname.m4: Update.
4236         * gnulib/import/m4/gettimeofday.m4: Update.
4237         * gnulib/import/m4/glibc21.m4: Update.
4238         * gnulib/import/m4/glob.m4: Update.
4239         * gnulib/import/m4/glob_h.m4: Update.
4240         * gnulib/import/m4/gnulib-cache.m4: Update.
4241         * gnulib/import/m4/gnulib-common.m4: Update.
4242         * gnulib/import/m4/gnulib-comp.m4: Update.
4243         * gnulib/import/m4/gnulib-tool.m4: Update.
4244         * gnulib/import/m4/hard-locale.m4: Update.
4245         * gnulib/import/m4/include_next.m4: Update.
4246         * gnulib/import/m4/inttypes-pri.m4: Update.
4247         * gnulib/import/m4/inttypes.m4: Update.
4248         * gnulib/import/m4/isnand.m4: Update.
4249         * gnulib/import/m4/isnanl.m4: Update.
4250         * gnulib/import/m4/largefile.m4: Update.
4251         * gnulib/import/m4/limits-h.m4: Update.
4252         * gnulib/import/m4/localcharset.m4: Update.
4253         * gnulib/import/m4/locale-fr.m4: Update.
4254         * gnulib/import/m4/locale-ja.m4: Update.
4255         * gnulib/import/m4/locale-zh.m4: Update.
4256         * gnulib/import/m4/localtime-buffer.m4: Update.
4257         * gnulib/import/m4/longlong.m4: Update.
4258         * gnulib/import/m4/lstat.m4: Update.
4259         * gnulib/import/m4/malloc.m4: Update.
4260         * gnulib/import/m4/malloca.m4: Update.
4261         * gnulib/import/m4/math_h.m4: Update.
4262         * gnulib/import/m4/mbrtowc.m4: Update.
4263         * gnulib/import/m4/mbsinit.m4: Update.
4264         * gnulib/import/m4/mbsrtowcs.m4: Update.
4265         * gnulib/import/m4/mbstate_t.m4: Update.
4266         * gnulib/import/m4/memchr.m4: Update.
4267         * gnulib/import/m4/memmem.m4: Update.
4268         * gnulib/import/m4/mempcpy.m4: Update.
4269         * gnulib/import/m4/memrchr.m4: Update.
4270         * gnulib/import/m4/mkdir.m4: Update.
4271         * gnulib/import/m4/mkstemp.m4: Update.
4272         * gnulib/import/m4/mmap-anon.m4: Update.
4273         * gnulib/import/m4/mode_t.m4: Update.
4274         * gnulib/import/m4/msvc-inval.m4: Update.
4275         * gnulib/import/m4/msvc-nothrow.m4: Update.
4276         * gnulib/import/m4/multiarch.m4: Update.
4277         * gnulib/import/m4/nocrash.m4: Update.
4278         * gnulib/import/m4/off_t.m4: Update.
4279         * gnulib/import/m4/onceonly.m4: Update.
4280         * gnulib/import/m4/open-cloexec.m4: Update.
4281         * gnulib/import/m4/open.m4: Update.
4282         * gnulib/import/m4/openat.m4: Update.
4283         * gnulib/import/m4/opendir.m4: Update.
4284         * gnulib/import/m4/pathmax.m4: Update.
4285         * gnulib/import/m4/rawmemchr.m4: Update.
4286         * gnulib/import/m4/readdir.m4: Update.
4287         * gnulib/import/m4/readlink.m4: Update.
4288         * gnulib/import/m4/realloc.m4: Update.
4289         * gnulib/import/m4/rename.m4: Update.
4290         * gnulib/import/m4/rewinddir.m4: Update.
4291         * gnulib/import/m4/rmdir.m4: Update.
4292         * gnulib/import/m4/save-cwd.m4: Update.
4293         * gnulib/import/m4/secure_getenv.m4: Update.
4294         * gnulib/import/m4/setenv.m4: Update.
4295         * gnulib/import/m4/signal_h.m4: Update.
4296         * gnulib/import/m4/ssize_t.m4: Update.
4297         * gnulib/import/m4/stat-time.m4: Update.
4298         * gnulib/import/m4/stat.m4: Update.
4299         * gnulib/import/m4/std-gnu11.m4: Update.
4300         * gnulib/import/m4/stdbool.m4: Update.
4301         * gnulib/import/m4/stddef_h.m4: Update.
4302         * gnulib/import/m4/stdint.m4: Update.
4303         * gnulib/import/m4/stdio_h.m4: Update.
4304         * gnulib/import/m4/stdlib_h.m4: Update.
4305         * gnulib/import/m4/strchrnul.m4: Update.
4306         * gnulib/import/m4/strdup.m4: Update.
4307         * gnulib/import/m4/strerror.m4: Update.
4308         * gnulib/import/m4/string_h.m4: Update.
4309         * gnulib/import/m4/strstr.m4: Update.
4310         * gnulib/import/m4/strtok_r.m4: Update.
4311         * gnulib/import/m4/sys_socket_h.m4: Update.
4312         * gnulib/import/m4/sys_stat_h.m4: Update.
4313         * gnulib/import/m4/sys_time_h.m4: Update.
4314         * gnulib/import/m4/sys_types_h.m4: Update.
4315         * gnulib/import/m4/tempname.m4: Update.
4316         * gnulib/import/m4/time_h.m4: Update.
4317         * gnulib/import/m4/unistd-safer.m4: Update.
4318         * gnulib/import/m4/unistd_h.m4: Update.
4319         * gnulib/import/m4/warn-on-use.m4: Update.
4320         * gnulib/import/m4/wchar_h.m4: Update.
4321         * gnulib/import/m4/wchar_t.m4: Update.
4322         * gnulib/import/m4/wctype_h.m4: Update.
4323         * gnulib/import/m4/wint_t.m4: Update.
4324         * gnulib/import/malloc.c: Update.
4325         * gnulib/import/malloc/scratch_buffer.h: Update.
4326         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4327         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4328         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4329         * gnulib/import/malloca.c: Update.
4330         * gnulib/import/malloca.h: Update.
4331         * gnulib/import/malloca.valgrind: Update.
4332         * gnulib/import/math.in.h: Update.
4333         * gnulib/import/mbrtowc.c: Update.
4334         * gnulib/import/mbsinit.c: Update.
4335         * gnulib/import/mbsrtowcs-impl.h: Update.
4336         * gnulib/import/mbsrtowcs-state.c: Update.
4337         * gnulib/import/mbsrtowcs.c: Update.
4338         * gnulib/import/memchr.c: Update.
4339         * gnulib/import/memmem.c: Update.
4340         * gnulib/import/mempcpy.c: Update.
4341         * gnulib/import/memrchr.c: Update.
4342         * gnulib/import/mkdir.c: Update.
4343         * gnulib/import/mkstemp.c: Update.
4344         * gnulib/import/msvc-inval.c: Update.
4345         * gnulib/import/msvc-inval.h: Update.
4346         * gnulib/import/msvc-nothrow.c: Update.
4347         * gnulib/import/msvc-nothrow.h: Update.
4348         * gnulib/import/open.c: Update.
4349         * gnulib/import/openat-die.c: Update.
4350         * gnulib/import/openat-priv.h: Update.
4351         * gnulib/import/openat-proc.c: Update.
4352         * gnulib/import/openat.c: Update.
4353         * gnulib/import/openat.h: Update.
4354         * gnulib/import/opendir.c: Update.
4355         * gnulib/import/pathmax.h: Update.
4356         * gnulib/import/pipe-safer.c: Update.
4357         * gnulib/import/rawmemchr.c: Update.
4358         * gnulib/import/readdir.c: Update.
4359         * gnulib/import/readlink.c: Update.
4360         * gnulib/import/realloc.c: Update.
4361         * gnulib/import/ref-add.sin: Update.
4362         * gnulib/import/ref-del.sin: Update.
4363         * gnulib/import/rename.c: Update.
4364         * gnulib/import/rewinddir.c: Update.
4365         * gnulib/import/rmdir.c: Update.
4366         * gnulib/import/same-inode.h: Update.
4367         * gnulib/import/save-cwd.c: Update.
4368         * gnulib/import/save-cwd.h: Update.
4369         * gnulib/import/scratch_buffer.h: Update.
4370         * gnulib/import/secure_getenv.c: Update.
4371         * gnulib/import/setenv.c: Update.
4372         * gnulib/import/signal.in.h: Update.
4373         * gnulib/import/stat-time.c: Update.
4374         * gnulib/import/stat-time.h: Update.
4375         * gnulib/import/stat-w32.c: Update.
4376         * gnulib/import/stat-w32.h: Update.
4377         * gnulib/import/stat.c: Update.
4378         * gnulib/import/stdbool.in.h: Update.
4379         * gnulib/import/stddef.in.h: Update.
4380         * gnulib/import/stdint.in.h: Update.
4381         * gnulib/import/stdio.in.h: Update.
4382         * gnulib/import/stdlib.in.h: Update.
4383         * gnulib/import/str-two-way.h: Update.
4384         * gnulib/import/strchrnul.c: Update.
4385         * gnulib/import/strdup.c: Update.
4386         * gnulib/import/streq.h: Update.
4387         * gnulib/import/strerror-override.c: Update.
4388         * gnulib/import/strerror-override.h: Update.
4389         * gnulib/import/strerror.c: Update.
4390         * gnulib/import/string.in.h: Update.
4391         * gnulib/import/stripslash.c: Update.
4392         * gnulib/import/strnlen1.c: Update.
4393         * gnulib/import/strnlen1.h: Update.
4394         * gnulib/import/strstr.c: Update.
4395         * gnulib/import/strtok_r.c: Update.
4396         * gnulib/import/sys_stat.in.h: Update.
4397         * gnulib/import/sys_time.in.h: Update.
4398         * gnulib/import/sys_types.in.h: Update.
4399         * gnulib/import/tempname.c: Update.
4400         * gnulib/import/tempname.h: Update.
4401         * gnulib/import/time.in.h: Update.
4402         * gnulib/import/unistd--.h: Update.
4403         * gnulib/import/unistd-safer.h: Update.
4404         * gnulib/import/unistd.in.h: Update.
4405         * gnulib/import/unsetenv.c: Update.
4406         * gnulib/import/verify.h: Update.
4407         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4408         * gnulib/import/wchar.in.h: Update.
4409         * gnulib/import/wctype.in.h: Update.
4410         * gnulib/import/xalloc-oversized.h: Update.
4411         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4412         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4413
4414 2018-08-16  Gary Benson <gbenson@redhat.com>
4415
4416         PR gdb/13000:
4417         * gdb/main.c (captured_main_1): Exit with nonzero status
4418         in batch mode if the last command to be executed failed.
4419         * NEWS: Mention the above.
4420
4421 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4422
4423         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4424         end of warning message.
4425
4426 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4427
4428         PR gdb/22943:
4429         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4430         (aarch64_extract_return_value): Use
4431         aapcs_is_vfp_call_or_return_candidate.
4432         (aarch64_return_in_memory): Likewise.
4433         (aarch64_store_return_value): Likewise.
4434
4435 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4436
4437         * aarch64-tdep.c
4438         (aapcs_is_vfp_call_or_return_candidate): Make static
4439         (pass_in_v_or_stack): Remove function.
4440         (pass_in_v_vfp_candidate): New function.
4441         (aarch64_push_dummy_call): Check for float register candidates.
4442
4443 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4444
4445         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4446         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4447         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4448
4449 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4450
4451         PR build/23399
4452         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4453         (struct ipa_sym_addresses): Rename to...
4454         (struct ipa_sym_addresses_common): ... this.
4455         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4456
4457 2018-08-28  Tom Tromey  <tom@tromey.com>
4458
4459         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4460         (token_fifo): Now a std::vector.
4461         (yylex, c_parse): Update.
4462         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4463         (token_fifo): Now a std::vector.
4464         (yylex, d_parse): Update.
4465         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4466         (token_fifo): Now a std::vector.
4467         (yylex, go_parse): Update.
4468
4469 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4470
4471         * parser-defs.h (struct type_stack) <elements>: Change type to
4472         std::vector<union type_stack_elt>.
4473         <depth, size>: Remove.
4474         * parse.c (parse_exp_in_context_1): Adjust.
4475         (type_stack_reserve): Remove.
4476         (check_type_stack_depth): Remove.
4477         (insert_into_type_stack): Adjust to std::vector.
4478         (insert_type): Likewise.
4479         (push_type): Likewise.
4480         (push_type_int): Likewise.
4481         (insert_type_address_space): Likewise.
4482         (pop_type): Likewise.
4483         (pop_type_int): Likewise.
4484         (pop_typelist): Likewise.
4485         (pop_type_stack): Likewise.
4486         (append_type_stack): Likewise.
4487         (push_type_stack): Likewise.
4488         (get_type_stack): Likewise.
4489         (type_stack_cleanup): Likewise.
4490         (push_typelist): Likewise.
4491         (follow_types): Likewise.
4492         (_initialize_parse): Likewise.
4493
4494 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4495
4496         * NEWS: Mention csky target.
4497
4498 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4499             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4500             Don Breazeal  <donb@codesourcery.com>
4501
4502         * csky-linux-tdep.c: New file.
4503         * csky-tdep.c: Likewise.
4504         * csky-tdep.h: Likewise.
4505         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4506         csky-tdep.o.
4507         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4508         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4509         * configure.tgt: Add csky support.
4510
4511 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4512
4513         * python/py-framefilter.c (py_print_frame): Print frame architecture
4514         when printing on an MI output.
4515
4516 2018-08-27  Tom Tromey  <tom@tromey.com>
4517
4518         PR build/23087:
4519         * configure: Rebuild.
4520         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4521
4522 2018-08-27  Tom Tromey  <tom@tromey.com>
4523
4524         * aarch64-linux-tdep.c
4525         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4526         casts to int.
4527
4528 2018-08-27  Tom Tromey  <tom@tromey.com>
4529
4530         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4531         unsigned.
4532         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4533         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4534         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4535         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4536         unsigned.
4537
4538 2018-08-27  Tom Tromey  <tom@tromey.com>
4539
4540         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4541         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4542
4543 2018-08-27  Tom Tromey  <tom@tromey.com>
4544
4545         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4546         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4547         ULONGEST_MAX.
4548         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4549         ULONGEST_MAX.
4550         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4551         ULONGEST_MAX.
4552         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4553         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4554         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4555         ULONGEST_MAX.
4556         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4557         (ppc64_linux_sigaction_tramp_frame)
4558         (ppc32_linux_sighandler_tramp_frame)
4559         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4560         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4561         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4562         * mn10300-linux-tdep.c (am33_linux_sigframe)
4563         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4564         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4565         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4566         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4567         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4568         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4569         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4570         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4571         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4572         * microblaze-linux-tdep.c
4573         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4574         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4575         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4576         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4577         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4578         * common/common-types.h (ULONGEST_MAX): New define.
4579         (CORE_ADDR_MAX): Fix formatting.
4580         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4581         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4582         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4583         (arm_linux_rt_sigreturn_tramp_frame)
4584         (arm_eabi_linux_sigreturn_tramp_frame)
4585         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4586         (thumb2_eabi_linux_sigreturn_tramp_frame)
4587         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4588         (arm_linux_restart_syscall_tramp_frame)
4589         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4590         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4591         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4592         ULONGEST_MAX.
4593         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4594
4595 2018-08-27  Tom Tromey  <tom@tromey.com>
4596
4597         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4598         CORE_ADDR_MAX.
4599         * mips-tdep.c (mips_deal_with_atomic_sequence)
4600         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4601         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4602         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4603         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4604         CORE_ADDR_MAX.
4605         * aarch64-tdep.c (aarch64_software_single_step): Use
4606         CORE_ADDR_MAX.
4607
4608 2018-08-27  Tom Tromey  <tom@tromey.com>
4609
4610         * linespec.c (complete_linespec_component): Add cast to "char".
4611         * completer.c (completion_tracker::build_completion_result): Add
4612         cast to "char".
4613
4614 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4615
4616         * solist.h (struct solist, struct target_so_ops): Fix
4617         indentation.
4618
4619 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4620
4621         * ada-tasks.c (ada_task_info_s): Remove typedef.
4622         (DEF_VEC_O(ada_task_info_s)): Remove.
4623         (struct ada_tasks_inferior_data): Initialize fields.
4624         <task_list>: Make an std::vector.
4625         (get_ada_tasks_inferior_data): Allocate with new.
4626         (ada_get_task_number): Adjust.
4627         (get_task_number_from_id): Likewise.
4628         (valid_task_id): Likewise.
4629         (ada_get_task_info_from_ptid): Likewise.
4630         (iterate_over_live_ada_tasks): Likewise.
4631         (add_ada_task): Likewise.
4632         (read_known_tasks): Likewise.
4633         (ada_build_task_list): Likewise.
4634         (print_ada_task_info): Likewise.
4635         (info_task): Likewise.
4636         (task_command_1): Likewise.
4637
4638 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4639
4640         * ada-lang.c (add_angle_brackets): Return std::string.
4641
4642 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4643
4644         * python/py-threadevent.c (py_get_event_thread): Initialize
4645         pythread.
4646
4647 2018-08-24  Pedro Alves  <palves@redhat.com>
4648
4649         * python/py-bpevent.c (create_breakpoint_event_object): Use
4650         copy-initialization.
4651         * python/py-continueevent.c (emit_continue_event): Use
4652         copy-initialization.
4653         * python/py-exitedevent.c (create_exited_event_object): Return a
4654         gdbpy_ref<>.
4655         (emit_exited_event): Use copy-initialization.
4656         * python/py-inferior.c (python_new_inferior)
4657         (python_inferior_deleted, add_thread_object): Use
4658         copy-initialization.
4659         * python/py-infevents.c (create_inferior_call_event_object)
4660         (create_register_changed_event_object)
4661         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4662         (emit_inferior_call_event, emit_memory_changed_event)
4663         (emit_register_changed_event): Use copy-initialization.
4664         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4665         Return a gdbpy_ref<>.
4666         (emit_new_objfile_event): Use copy-initialization.
4667         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4668         (emit_clear_objfiles_event): Use copy-initialization.
4669         * python/py-signalevent.c (create_signal_event_object): Use
4670         copy-initialization.
4671         * python/py-threadevent.c (create_thread_event_object): Use
4672         copy-initialization.
4673
4674 2018-08-24  Pedro Alves  <palves@redhat.com>
4675             Simon Marchi  <simon.marchi@ericsson.com>
4676
4677         PR gdb/23379
4678         * python/py-continueevent.c: Include "gdbthread.h".
4679         (create_continue_event_object): Add intro comment.  Add 'ptid'
4680         parameter.  Use it to find thread to pass to
4681         create_thread_event_object.
4682         (emit_continue_event): Pass PTID down to
4683         create_continue_event_object.
4684         * python/py-event.h (py_get_event_thread): Declare.
4685         (create_thread_event_object): Remove default from 'thread'
4686         parameter.
4687         * python/py-stopevent.c (create_stop_event_object): Use
4688         py_get_event_thread.
4689         * python/py-threadevent.c (get_event_thread): Rename to ...
4690         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4691         and use it to find the thread.
4692         (create_thread_event_object): Assert that THREAD isn't null.
4693         Don't find the event thread here.
4694
4695 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4696
4697         * block.h (blockrange, blockranges): New struct declarations.
4698         (struct block): Add new field named `ranges'.
4699         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4700         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4701         macros for accessing ranges in struct block.
4702         (make_blockranges): New declaration.
4703         block.c (make_blockranges): New function.
4704         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4705         for block.
4706         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4707         * blockframe.c (cache_pc_function_block): New static global.
4708         (clear_pc_function_cache): Clear cache_pc_function_block.
4709         (find_pc_partial_function): Move comment to symtab.h.  Add
4710         support for non-contiguous blocks.
4711         * cli/cli-cmds.c (block.h): Include.
4712         (print_disassembly): Handle printing of non-contiguous blocks.
4713         (disassemble_current_function): Likewise.
4714         (disassemble_command): Likewise.
4715
4716         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4717         BLOCK_START.
4718         * blockframe.c (get_pc_function_start): Likewise.
4719         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4720         (gcc_symbol_address): Likewise.
4721         * compile/compile-object-run.c (compile_object_run): Likewise.
4722         * compile/compile.c (get_expr_block_and_pc): Likewise.
4723         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4724         (func_addr_to_tail_call_list): Likewise.
4725         * findvar.c (default_read_var_value): Likewise.
4726         * inline-frame.c (inline_frame_this_id): Likewise.
4727         (skip-inline_frames): Likewise.
4728         * infcmd.c (until_next_command): Likewise.
4729         * linespec.c (convert_linespec_to_sals): Likewise.
4730         * parse.c (parse_exp_in_context_1): Likewise.
4731         * printcmd.c (build_address_symbolic): likewise.
4732         (info_address_command): Likewise.
4733         symtab.c (find_function_start_sal): Likewise.
4734         (skip_prologue_sal): Likewise.
4735         (find_function_alias_target): Likewise.
4736         (find_gnu_ifunc): Likewise.
4737         * stack.c (find_frame_funname): Likewise.
4738         * symtab.c (fixup_symbol_section): Likewise.
4739         (find_function_start_sal): Likewise.
4740         (skip_prologue_sal): Likewsie.
4741         (find_function_alias_target): Likewise.
4742         (find_gnu_ifunc): Likewise.
4743         * tracepoint.c (info_scope_command): Likewise.
4744         * value.c (value_fn_field): Likewise.
4745
4746         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4747         in place of find_pc_partial_function.
4748         * blockframe.c (find_function_entry_range_from_pc): New function.
4749         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4750         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4751         for each range in a block.
4752
4753
4754 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4755
4756         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4757         incrementation.
4758
4759 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4760
4761         * solib-svr4.c (read_program_headers_from_bfd): Return
4762         gdb::optional<gdb::byte_vector>.
4763         (svr4_exec_displacement): Adjust.
4764
4765 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4766
4767         * solib-svr4.c (read_program_header): Return
4768         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4769         (find_program_interpreter): Return
4770         gdb::optional<gdb::byte_vector>.
4771         (scan_dyntag_auxv): Adjust.
4772         (enable_break): Adjust.
4773         (svr4_exec_displacement): Adjust.
4774
4775 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4776
4777         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4778         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4779
4780 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4781
4782         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4783         string_vprintf.
4784         * guile/scm-utils.c (gdbscm_printf): Likewise.
4785         * serial.c (serial_printf): Likewise.
4786         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4787
4788 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4789
4790         * stack.c (print_frame): Print frame architecture when printing on
4791         an MI output.
4792         * NEWS: Mention new "arch" attribute in frame output.
4793
4794 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4795
4796         * arch/aarch64.h (aarch64_regnum): Update comment.
4797
4798 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4799
4800         * NEWS: Add SVE to 8.2 section.
4801
4802 2018-08-21  Pedro Alves  <palves@redhat.com>
4803
4804         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4805         out from gdbscm_parse_function_args.
4806         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4807         gdbscm_parse_function_args_1.
4808
4809 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4810
4811         PR gdb/17816
4812         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4813         operator.
4814
4815 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4816
4817         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4818
4819 2018-08-19  Michael Spang  <spang@google.com>
4820
4821         PR gdb/11786
4822         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4823         for PT_TLS segments.
4824
4825 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4826
4827         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4828         dwarf_variable_value.
4829         * dwarf2-frame.c (class dwarf_expr_executor):
4830         Add override for dwarf_variable_value.
4831         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4832         (class symbol_needs_eval_context): Likewise.
4833         (indirect_synthetic_pointer): Add forward declaration.
4834         (sect_variable_value): New function.
4835         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4836         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4837         for DW_OP_GNU_variable_value.
4838
4839 2018-08-16  Tom Tromey  <tom@tromey.com>
4840
4841         * top.c (read_command_file): Update.
4842         (command_line_input): Remove "repeat" argument.
4843         * ada-lang.c (get_selections): Update.
4844         * linespec.c (decode_line_2): Update.
4845         * defs.h (command_line_input): Remove argument.
4846         * cli/cli-script.c (read_next_line): Update.
4847         * python/py-gdb-readline.c: Update.
4848
4849 2018-08-17  Tom Tromey  <tom@tromey.com>
4850
4851         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4852         command_line_input.
4853
4854 2018-08-15  Tom Tromey  <tom@tromey.com>
4855
4856         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4857
4858 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4859
4860         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4861         If used, use find_pc_partial_function to find address range
4862         to disassemble.
4863         * mi/mi-main.c (mi_cmd_list_features): Report
4864         "data-disassemble-a-option" feature.
4865         * NEWS: Mention new -data-disassemble option -a.
4866
4867 2018-08-13  Tom Tromey  <tom@tromey.com>
4868
4869         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4870
4871 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4872
4873         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4874         (aarch64_linux_collect_sve_regset): Likewise.
4875         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4876         * regcache.h (regcache_map_entry_size): New function.
4877
4878 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4879
4880         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4881         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4882         (SVE_HEADER_VL_LENGTH): Likewise.
4883         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4884         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4885         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4886         (SVE_HEADER_SIZE_OFFSET): Likewise.
4887         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4888         (SVE_HEADER_VL_OFFSET): Likewise.
4889         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4890         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4891         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4892         (SVE_HEADER_SIZE): Likewise.
4893         (aarch64_linux_core_read_vq): Add function.
4894         (aarch64_linux_core_read_description): Check for SVE section.
4895
4896 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4897
4898         * aarch64-fbsd-tdep.c
4899         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4900         collect_size.
4901         * aarch64-linux-tdep.c
4902         (aarch64_linux_iterate_over_regset_sections): Likewise.
4903         * alpha-linux-tdep.c
4904         (alpha_linux_iterate_over_regset_sections):
4905         * alpha-nbsd-tdep.c
4906         (alphanbsd_iterate_over_regset_sections): Likewise.
4907         * amd64-fbsd-tdep.c
4908         (amd64fbsd_iterate_over_regset_sections): Likewise.
4909         * amd64-linux-tdep.c
4910         (amd64_linux_iterate_over_regset_sections): Likewise.
4911         * arm-bsd-tdep.c
4912         (armbsd_iterate_over_regset_sections): Likewise.
4913         * arm-fbsd-tdep.c
4914         (arm_fbsd_iterate_over_regset_sections): Likewise.
4915         * arm-linux-tdep.c
4916         (arm_linux_iterate_over_regset_sections): Likewise.
4917         * corelow.c (get_core_registers_cb): Likewise.
4918         (core_target::fetch_registers): Likewise.
4919         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4920         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4921         * gdbarch.h (void): Regenerate.
4922         * gdbarch.sh: Add supply_size and collect_size.
4923         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4924         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4925         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4926         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4927         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4928         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4929         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4930         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4931         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4932         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4933         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4934         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4935         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4936         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4937         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4938         Likewise.
4939         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4940         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4941         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4942         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4943         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4944         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4945         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4946         Likewise.
4947         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4948         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4949         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4950         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4951         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4952         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4953         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4954         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4955
4956 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4957
4958         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4959         with string_printf.
4960
4961 2018-08-10  Keith Seitz  <keiths@redhat.com>
4962
4963         * compile/compile-c-support.c (add_code_header, add_code_footer):
4964         Move into policy class.
4965         (c_push_user_expression, pop_user_expression_nop)
4966         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4967         (compile_program): New host class.
4968         (c_compile_program): New typedef.
4969         (c_compute_porgram): Use c_compile_program.
4970
4971 2018-08-10  Keith Seitz  <keiths@redhat.com>
4972
4973         * compile/compile-internal.h (compile_instance::~compile_instance):
4974         Remove calls to htab_delete.
4975         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4976         * compile.c (compile_instance::compile_instance): Initialize
4977         htab unique pointers.
4978         (compile_instance::get_cached_type, compile_instance::insert_type)
4979         (compile_instance::error_symbol_once): Update for unique_ptr.
4980
4981 2018-08-10  Keith Seitz  <keiths@redhat.com>
4982
4983         * compile/compile-c-symbols.c (struct symbol_error)
4984         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4985         (compile_instance::insert_symbol_error)
4986         (compile_instance::error_symbol_once): Move to ...
4987         * compile/compile.c: ... here.
4988
4989 2018-08-10  Keith Seitz  <keiths@redhat.com>
4990
4991         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4992         instead of `new_compile_instance'.
4993         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4994         Update description.
4995         If the symbol error map is not initialized, create it.
4996         (generate_c_for_for_one_symbol): Do not check/initialize
4997         the symbol error map.
4998         * compile/compile-c-types.c (compile_c_instance): Make a class.
4999         Update all callers.
5000         (compile_instance::compile_instance): Initialize the type cache.
5001         (get_cached_type): New function.
5002         (insert_type): Update description.
5003         (compile_c_instance::m_default_cflags): Define.
5004         (convert_type): Update description.  Use get_cached_type.
5005         (delete_instance): Moved to destructor.
5006         (new_compile_instance): Moved to constructor.
5007         * compile/compile-c.h (compile_c_instance): Make class inheriting
5008         from compile_instance.
5009         <base>: Remove field.
5010         <type_map, symbol_err_map>: Move to base class.
5011         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5012         * compile/compile-internal.h (compile_instance): Make class.
5013         <type_map_t, symbol_err_map_t>: Define.
5014         <fe>: Rename to `m_gcc_fe'.
5015         <scope, block, gcc_target_options>: Add `m_' prefix.
5016         <m_type_map, m_symbol_err_map>: New fields, moved from
5017         compile_c_instance.
5018         <destroy>: Remove.
5019         (convert_type, new_compile_instance): Remove.
5020         * compile/compile.c (cleanup_compile_instance): Remove.
5021         (compile_to_object): Use unique_ptr to eliminate cleanups.
5022         (compile_instance::set_print_callback, compile_instance::version)
5023         (compile_instance::set_verbose)
5024         (compile_instance::set_driver_filename)
5025         (compile_instance::set_triplet_regexp)
5026         (compile_instance::set_arguments)
5027         (compile_instance::set_source_file)
5028         (compile_instance::compile): Define.
5029
5030 2018-08-10  Keith Seitz  <keiths@redhat.com>
5031
5032         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5033         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5034         gcc-c-fe.def to define C plugin.
5035         (delete_instance): Delete `c_plugin'.
5036         (new_compile_instance): Initialize `c_plugin'.
5037         * compile/compile-c.h: Include gcc_c_plugin.h.
5038         (struct compile_c_instance) <c_plugin>: New member.
5039         * gcc-c-plugin.h: New file.
5040         Update all callers with API change.
5041
5042 2018-08-10  Keith Seitz  <keiths@redhat.com>
5043
5044         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5045         (HFILES_NO_SRCDIR): ... to here.
5046         Add compile-internal.h and compile-c.h.
5047         * compile/compile-c-support.c: Include compile-c.h.
5048         * compile/compile-c-symbols.c: Include compile-c.h.
5049         (generate_c_for_variable_locations): Update comment.
5050         * compile/compile-c-types.c: Include compile-c.h.
5051         * compile/compile-c.h: New file -- moved C language declarations
5052         from other files here.
5053         * compile/compile-internal.h: Do not include hashtab.h or
5054         common/enum-flags.h.
5055         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5056         (gcc_convert_symbol, gcc_symbol_address)
5057         (generate_c_for_variable_locations, c_get_mode_for_size)
5058         (c_get_range_decl_name): Definitions moved to compile-c.h.
5059         * compile/compile-loc2c.c: Include compile-c.h.
5060
5061 2018-08-10  Keith Seitz  <keiths@redhat.com>
5062
5063         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5064         (c_symbol_substitution_name): ... this.
5065         Update all callers.
5066
5067 2018-08-10  Keith Seitz  <keiths@redhat.com>
5068
5069         * compile/compile-c-support.c (c_compute_program): Use
5070         unique_xmalloc_ptr to eliminate cleanup.
5071         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5072         Return a unique_xmalloc_ptr and eliminate cleanup.
5073         * compile/compile-internal.h (generate_c_for_variable_locations):
5074         Return unique_xmalloc_ptr and update description.
5075
5076 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5077
5078         * corelow.c (core_target::get_core_register_section): Rename
5079         min_size to section_min_size.
5080
5081 2018-08-09  Jim Wilson  <jimw@sifive.com>
5082
5083         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5084         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5085         * NEWS: Mention new GNU/Linux RISC-V target.
5086         * configure.host: Add riscv*-*-linux*.
5087         * configure.nat: Add riscv*.
5088         * configure.tgt: Add riscv*-*-linux*.
5089         * riscv-linux-nat.c: New file.
5090         * riscv-linux-tdep.c: New file.
5091
5092 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5093
5094         * infrun.c (resume): Make static, add forward declaration.
5095         (proceed): Update header comment.
5096         * infrun.h (resume): Delete declaration.
5097
5098 2018-08-09  Tom Tromey  <tom@tromey.com>
5099
5100         * riscv-tdep.h: Minor formatting fixes.
5101
5102 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5103
5104         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5105         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5106         (test_mkdir_recursive): Likewise.
5107         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5108
5109 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5110
5111         * valarith.c (value_subscripted_rvalue): If an array is not in
5112         memory, and we don't know the upper bound, then we can't know that
5113         the requested element exists or not.
5114
5115 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5116
5117         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5118         (target_options_to_string): Add comment.
5119
5120 2018-08-08  Tom Tromey  <tom@tromey.com>
5121
5122         * unittests/scoped_mmap-selftests.c: Check result of "write".
5123
5124 2018-08-08  Jim Wilson  <jimw@sifive.com>
5125
5126         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5127         (decode_register_index_short): New.
5128         (decode_j_type_insn, decode_cj_type_insn): New.
5129         (decode_b_type_insn, decode_cb_type_insn): New.
5130         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5131         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5132         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5133         is_c_sw_insn instead of is_sw_insn.
5134         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5135         (riscv_software_single_step): New.
5136         * riscv-tdep.h (riscv_software_single_step): Declare.
5137
5138         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5139         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5140
5141 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5142
5143         PR gdb/18050:
5144         * target.c (dispose_inferior): Don't dispose of inferiors that are
5145         already killed.
5146
5147 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5148
5149         * remote.c (remote_target::download_tracepoint): Change char* to
5150         const char*.
5151
5152 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5153
5154         * target.h (target_options_to_string): Return an std::string.
5155         * target.c (str_comma_list_concat_elem): Return void, use
5156         std::string.
5157         (do_option): Likewise.
5158         (target_options_to_string): Return an std::string.
5159         * linux-nat.c (linux_nat_target::wait): Adjust.
5160         * target-debug.h (target_debug_print_options): Adjust.
5161
5162 2018-08-07  Tom Tromey  <tom@tromey.com>
5163
5164         * Makefile.in (CPPFLAGS): New variable.
5165         (INTERNAL_CPPFLAGS): Use it.
5166
5167 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5168
5169         * NEWS: Mention the index cache.
5170
5171 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5172
5173         * common/pathstuff.h (get_standard_cache_dir): New.
5174         * common/pathstuff.c (get_standard_cache_dir): New.
5175         * build-id.h (build_id_to_string): New.
5176         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5177         DEBUG_STR_SUFFIX): Move to here.
5178         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5179         DEBUG_STR_SUFFIX): Move from there.
5180         (write_psymtabs_to_index): Make non-static, add basename
5181         parameter.  Write to temporary files, rename when done.
5182         (save_gdb_index_command): Adjust call to
5183         write_psymtabs_to_index.
5184         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5185         field.
5186         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5187         (get_gdb_index_contents_from_cache): New.
5188         (get_gdb_index_contents_from_cache_dwz): New.
5189         (dwarf2_initialize_objfile): Read index from cache.
5190         (dwarf2_build_psymtabs): Save to index.
5191         * dwarf-index-cache.h: New file.
5192         * dwarf-index-cache.c: New file.
5193         * dwarf-index-write.h: New file.
5194
5195 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5196
5197         * gnulib/aclocal.m4: Re-generate.
5198         * gnulib/config.in: Re-generate.
5199         * gnulib/configure: Re-generate.
5200         * gnulib/import/Makefile.am: Re-generate.
5201         * gnulib/import/Makefile.in: Re-generate.
5202         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5203         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5204         * gnulib/import/m4/mkdir.m4: New file.
5205         * gnulib/import/mkdir.c: New file.
5206         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5207         module.
5208
5209 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5210
5211         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5212         * common/scoped_mmap.c: New file.
5213         * common/scoped_mmap.h (destroy): New method.
5214         (~scoped_mmap, reset): Use destroy.
5215         (scoped_mmap): New move constructor.
5216         (mmap_file): New declaration.
5217         * unittests/scoped_mmap-selftests.c (test_normal,
5218         test_invalid_filename, run_tests): New functions.
5219         (_initialize_scoped_mmap_selftests): Register selftest.
5220
5221 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5222
5223         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5224         (read_gdb_index_from_buffer): ... this.  Remove section
5225         parameter, add buffer parameter.
5226         (get_gdb_index_contents_ftype,
5227         get_gdb_index_contents_dwz_ftype): New typedefs.
5228         (dwarf2_read_gdb_index): Add callback parameters to get the
5229         index contents.
5230         (get_gdb_index_contents_from_section): New.
5231         (dwarf2_initialize_objfile): Update call to
5232         dwarf2_read_gdb_index.
5233
5234 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5235
5236         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5237         (gdb_open_cloexec): Likewise.
5238         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5239         (commandline_from_pid): Likewise.
5240         (linux_xfer_osdata_threads): Likewise.
5241         (linux_xfer_osdata_fds): Likewise.
5242         * ada-lang.c (is_package_name): Likewise.
5243         * auxv.c (procfs_xfer_auxv): Likewise.
5244         * breakpoint.c (print_one_breakpoint_location): Use
5245         uiout::field_fmt.
5246         (print_one_catch_solib): Use string_printf.
5247         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5248         (add_pe_forwarded_sym): Likewise.
5249         * dwarf2read.c (create_type_unit_group): Likewise.
5250         (build_error_marker_type): Likewise.
5251         * infcall.c (get_function_name): Likewise.
5252         * valprint.c (print_converted_chars_to_obstack): Likewise.
5253         * xtensa-tdep.c (xtensa_register_type): Likewise.
5254
5255 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5256
5257         * remote.c (remote_target::download_tracepoint): Fix format
5258         string errors.
5259
5260 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5261
5262         * tracefile.c: Include common/byte-vector.h.
5263         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5264         with trace_regblock_size if needed.  Update uses of buf.
5265
5266 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5267
5268         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5269         std::vector<unsigned char>.
5270         * tracepoint.c (collection_list::collection_list): Remove
5271         m_regs_mask initializer from initializer list.  Resize
5272         m_regs_mask using the largest remote register number.
5273         (collection_list::add_remote_register): Remove size check on
5274         m_regs_mask.  Use at to access element.
5275         (collection_list::stringify): Change type of temp_buf to
5276         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5277         stringify the register mask.  Use pack_hex_byte for the register
5278         mask.
5279
5280 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5281
5282         * tracepoint.h (class collection_list) <add_register>: Remove.
5283         <add_remote_register, add_ax_registers, add_local_register>:
5284         Declare.
5285         <add_memrange>: Add scope parameter.
5286         * tracepoint.c (encode_actions_1): Likewise.
5287         (collection_list::add_register): Rename to ...
5288         (collection_list::add_remote_register): ... this.  Update
5289         comment.
5290         (collection_list::add_ax_registers, add_local_register): New
5291         methods.
5292         (collection_list::add_memrange): Add scope parameter.  Call
5293         add_local_register instead of add_register.
5294         (finalize_tracepoint_aexpr): New function.
5295         (collection_list::collect_symbol): Update calls to add_memrange.
5296         Call add_local_register instead of add_register.  Call
5297         add_ax_registers.  Call finalize_tracepoint_aexpr.
5298         (encode_actions_1): Get remote regnos for $reg action.  Call
5299         add_remote_register, add_ax_registers, and add_local_register.
5300         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5301         (validate_actionline): Call finalize_tracepoint_aexpr.
5302
5303 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5304
5305         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5306         Replace array buf with gdb::char_vector buf, of size
5307         get_remote_packet_size ().  Replace references to buf and
5308         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5309         and xsnprintf with snprintf.  Raise errors if the buffer is too
5310         small.
5311
5312 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5313
5314         * remote.c (remote_target::download_tracepoint): Fix the has_more
5315         predicate in the QTDP action list iteration.
5316
5317 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5318
5319         * remote.c (remote_target::download_tracepoint): Fix indentation
5320         in for block.
5321
5322 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5323
5324         * proc-api.c (_initialize_proc_api): Remove c, unused.
5325         * procfs.c (procfs_init_inferior): Remove signals, unused.
5326         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5327         unused.
5328
5329 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5330             Andrew Burgess  <andrew.burgess@embecosm.com>
5331
5332         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5333         'W_STOPCODE (0)' as this could be ambiguous.
5334
5335 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5336
5337         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5338         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5339         "ai_socktype").
5340
5341 2018-08-02  Tom Tromey  <tom@tromey.com>
5342
5343         PR symtab/16842.
5344         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5345         symbols.
5346         (process_structure_scope): Likewise.
5347
5348 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5349
5350         PR gdb/22629:
5351         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5352         kill inferior.
5353
5354 2018-08-02  Tom Tromey  <tom@tromey.com>
5355
5356         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5357         (darwin_suspend_inferior, darwin_resume_inferior)
5358         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5359         (darwin_check_new_threads): Check result of get_darwin_inferior.
5360
5361 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5362
5363         GDB 8.1.1 released.
5364
5365 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5366
5367         * varobj.c (varobj_get_path_expr_parent): Report an error if
5368         parent is a dynamic varobj.
5369
5370 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5371
5372         * gnulib/aclocal.m4: Re-generate.
5373         * gnulib/config.in: Re-generate.
5374         * gnulib/configure: Re-generate.
5375         * gnulib/import/Makefile.in: Re-generate.
5376         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5377         * gnulib/import/m4/onceonly.m4: Re-generate.
5378
5379 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5380
5381         * target-descriptions.c (struct xml_test_tdesc): New.
5382         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5383         (record_xml_tdesc): Update.
5384         (maintenance_check_xml_descriptions): Update.
5385         * target-descriptions.h (record_xml_tdesc): Update comment.
5386
5387 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5388
5389         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5390         checking array bounds are defined.
5391
5392 2018-07-30  Tom Tromey  <tom@tromey.com>
5393
5394         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5395         irreflexivity violation.
5396
5397 2018-07-30  Tom Tromey  <tom@tromey.com>
5398
5399         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5400         * value.c (unpack_long): Remove lint code.
5401         * valops.c (value_ind): Remove lint code.
5402         * valarith.c (value_x_binop, value_x_unop, value_equal)
5403         (value_pos): Remove lint code.
5404
5405 2018-07-28  Tom de Vries  <tdevries@suse.de>
5406
5407         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5408         with undefined upper bound as <optimized out>.
5409
5410 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5411
5412         * gcore.in: Rename variable "name" to "prefix".  Expand
5413         "usage" text.
5414
5415 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5416
5417         * windows-nat.c (windows_nat_target::create_inferior): Update to
5418         call close() in global namespace.
5419
5420 2018-07-26  Tom Tromey  <tom@tromey.com>
5421
5422         * dwarf-index-write.c (add_address_entry): Don't add objfile
5423         offsets.
5424         * dbxread.c (find_stab_function): Rename from
5425         find_stab_function_addr.  Return a bound_minimal_symbol.
5426         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5427         Don't add objfile offsets.
5428         (end_psymtab): Use raw_text_low, raw_text_high,
5429         MSYMBOL_VALUE_RAW_ADDRESS.
5430         (read_ofile_symtab): Update.
5431         (process_one_symbol): Update.
5432         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5433         offsets.
5434         (dw2_relocate): Remove.
5435         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5436         searching addrmap.
5437         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5438         Update.
5439         (process_psymtab_comp_unit_reader, add_partial_symbol)
5440         (add_partial_subprogram, dwarf2_ranges_read): Update.
5441         (load_partial_dies): Update.
5442         (add_address_entry): Don't add objfile offsets.
5443         (dwarf2_build_include_psymtabs): Update.
5444         (create_addrmap_from_aranges): Don't add objfile offsets.
5445         (dw2_find_pc_sect_compunit_symtab): Update.
5446         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5447         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5448         Update.
5449         (parse_partial_symbols): Don't add objfile offsets.  Use
5450         raw_text_low, raw_text_high.  Update.
5451         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5452         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5453         or call 'relocate' quick function.  Clear psymbol_map.
5454         * psympriv.h (struct partial_symbol) <address>: Add section
5455         offset.
5456         <set_unrelocated_address>: Rename from set_address.
5457         <raw_text_low, raw_text_high>: New methods.
5458         <text_low, text_high>: Add objfile parameter.
5459         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5460         set_unrelocated_address.
5461         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5462         (find_pc_psymbol): Update.
5463         (fixup_psymbol_section, relocate_psymtabs): Remove.
5464         (dump_psymtab, psym_functions): Update.
5465         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5466         parameter.
5467         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5468         (start_psymtab_common): Update.
5469         * symfile-debug.c (debug_qf_relocate): Remove.
5470         (debug_sym_quick_functions): Update.
5471         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5472         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5473         Update.
5474
5475 2018-07-26  Tom Tromey  <tromey@redhat.com>
5476
5477         * dbxread.c (end_psymtab): Use text_high_valid and
5478         text_low_valid.
5479         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5480         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5481         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5482         Update comment.
5483         <text_low_valid, text_high_valid>: New fields.
5484         <set_text_low, set_text_high>: Update.
5485         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5486
5487 2018-07-26  Tom Tromey  <tom@tromey.com>
5488
5489         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5490         Update.
5491         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5492         textlow and texthigh fields.
5493         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5494         Update.
5495         * mdebugread.c (parse_lines, parse_partial_symbols)
5496         (psymtab_to_symtab_1): Update.
5497         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5498         Rename fields.  Update comment.  Now private.
5499         <text_low, text_high, set_text_low, set_text_high>: New methods.
5500         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5501         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5502         (start_psymtab_common, maintenance_info_psymtabs)
5503         (maintenance_check_psymtabs): Update.
5504         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5505         texthigh fields.
5506         (scan_xcoff_symtab): Update.
5507
5508 2018-07-26  Tom Tromey  <tromey@redhat.com>
5509
5510         * psympriv.h (struct partial_symbol) <unrelocated_address,
5511         address, set_address>: New methods.
5512         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5513         (fixup_psymbol_section, relocate_psymtabs): Update.
5514         (print_partial_symbols): Add 'objfile' parameter.  Update.
5515         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5516         Update.
5517
5518 2018-07-26  Tom Tromey  <tom@tromey.com>
5519
5520         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5521         (debug_names::write_psymbols): Update.
5522         * psympriv.h (struct partial_symbol): Derive from
5523         general_symbol_info.
5524         <obj_section>: New method.
5525         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5526         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5527         (find_pc_sect_psymbol, fixup_psymbol_section)
5528         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5529         (print_partial_symbols, recursively_search_psymtabs)
5530         (compare_psymbols, psymbol_hash, psymbol_compare)
5531         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5532         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5533
5534 2018-07-26  Tom Tromey  <tromey@redhat.com>
5535
5536         * dbxread.c (end_psymtab): Remove dead code.
5537
5538 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5539
5540         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5541         DWARF unwinders are disabled.
5542         * dwarf2-frame.c: Add dwarf2read.h include.
5543         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5544         disabled.
5545         (dwarf2_frame_unwinders_enabled_p): Define.
5546         (show_dwarf_unwinders_enabled_p): New function.
5547         (_initialize_dwarf2_frame): Register switch to control DWARF
5548         unwinder use.
5549         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5550         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5551         (show_dwarf_cmdlist): Remove static keyword.
5552         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5553         (show_dwarf_cmdlist): Declare.
5554         * NEWS: Document new feature.
5555
5556 2018-07-26  Tom de Vries  <tdevries@suse.de>
5557
5558         PR breakpoints/23366
5559         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5560
5561 2018-07-26  Tom de Vries  <tdevries@suse.de>
5562
5563         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5564         DW_AT_count can't be translated to a dynamic prop.
5565
5566 2018-07-25  Tom de Vries  <tdevries@suse.de>
5567
5568         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5569         try/catch.
5570
5571 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5572
5573         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5574
5575 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5576
5577         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5578
5579 2018-07-24  Keith Seitz  <keiths@redhat.comt
5580
5581         PR symtab/23010
5582         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5583         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5584         instead of add_symbol_to_list.
5585         (read_file_scope): Call prepare_one_comp_unit before reading
5586         any other DIEs.
5587
5588 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5589
5590         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5591
5592 2018-07-24  Tom Tromey  <tom@tromey.com>
5593
5594         * utils.c (malloc, realloc, free): Don't declare.
5595         * configure, config.in: Rebuild.
5596         * configure.ac: Don't check for declarations of free, malloc, or
5597         realloc.
5598
5599 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5600
5601         * aarch64-linux-nat.c
5602         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5603         variable.
5604         * arm-linux-nat.c (fetch_regs): Likewise.
5605         (store_regs): Likewise.
5606         (fetch_vfp_regs): Likewise.
5607         (store_vfp_regs): Likewise.
5608         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5609         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5610         (arm_linux_nat_target::insert_watchpoint): Likewise.
5611         (arm_linux_nat_target::remove_watchpoint): Likewise.
5612         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5613         Likewise.
5614         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5615         Likewise.
5616         * ppc-linux-nat.c (fetch_register): Likewise.
5617         (fetch_all_gp_regs): Likewise.
5618         (fetch_ppc_registers): Likewise.
5619         (store_all_gp_regs): Likewise.
5620         (store_ppc_registers): Likewise.
5621         (hwdebug_insert_point): Likewise.
5622         (can_use_watchpoint_cond_accel): Likewise.
5623         * remote-sim.c (gdb_os_write_stdout): Likewise.
5624
5625 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5626             Tom Tromey  <tom@tromey.com>
5627
5628         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5629         test for it.
5630         * configure: Rebuild.
5631
5632 2018-07-22  Tom Tromey  <tom@tromey.com>
5633
5634         * regformats/regdat.sh: Define xmltarget_${name} inside
5635         #ifndef IN_PROCESS_AGENT.
5636
5637 2018-07-22  Tom Tromey  <tom@tromey.com>
5638
5639         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5640
5641 2018-07-22  Tom Tromey  <tom@tromey.com>
5642
5643         * symfile.c (reread_symbols): Notify iter, not objfile.
5644
5645 2018-07-22  Tom Tromey  <tom@tromey.com>
5646
5647         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5648         Use arch_ops.
5649         (ravenscar_thread_target::prepare_to_store): Likewise.
5650
5651 2018-07-22  Tom Tromey  <tom@tromey.com>
5652
5653         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5654         unused variable.  Call value_fetch_lazy when needed.
5655         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5656         Remove unused variable.  Call value_fetch_lazy when needed.
5657
5658 2018-07-22  Tom Tromey  <tom@tromey.com>
5659
5660         * m32c-tdep.c (mark_dma): Return void.
5661         (make_regs): Remove unused declarations.
5662
5663 2018-07-22  Tom Tromey  <tom@tromey.com>
5664
5665         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5666         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5667         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5668         bkscm_get_valid_block_smob_arg_unsafe for effect.
5669
5670 2018-07-22  Tom Tromey  <tom@tromey.com>
5671
5672         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5673         value_type.
5674
5675 2018-07-22  Tom Tromey  <tom@tromey.com>
5676
5677         * windows-nat.c (saved_context): Conditionally define.
5678         * remote.c (remote_target::remote_btrace_maybe_reopen):
5679         Conditionally declare "warned".
5680         * inflow.c (sigquit_ours): Conditionally define.
5681         (new_tty): Move "tty" declaration inside #if.
5682         * guile/guile.c (guile_datadir): Conditionally define.
5683         * charset.c (set_be_le_names): Move some declarations inside #if.
5684         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5685         #if.
5686         (parse_xml_btrace_conf): Likewise.
5687
5688 2018-07-22  Tom Tromey  <tom@tromey.com>
5689
5690         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5691
5692 2018-07-22  Tom Tromey  <tom@tromey.com>
5693
5694         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5695         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5696         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5697         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5698         * stack.c (frame_apply_level_command): Remove unused variable.
5699         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5700         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5701         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5702         unused variable.
5703         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5704         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5705         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5706         variable.
5707         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5708         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5709         variable.
5710         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5711         Remove unused variable.
5712         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5713         variable.
5714         * common/tdesc.c (print_xml_feature::visit): Remove unused
5715         variable.
5716         * compile/compile-object-load.c (store_regs): Remove unused
5717         variables.
5718         * complaints.c (clear_complaints): Remove unused variable.
5719         * corelow.c (core_target_open): Remove unused variable.
5720         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5721         variable.
5722         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5723         variable.
5724         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5725         variable.
5726         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5727         variable.
5728         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5729         variable.
5730         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5731         variable.
5732         * ia64-tdep.c (examine_prologue): Remove unused variable.
5733         * infcall.c (run_inferior_call): Remove unused variable.
5734         * inferior.c (exit_inferior): Remove unused variable.
5735         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5736         * linespec.c (decode_line_2): Remove unused variable.
5737         * linux-nat.c (super_close): Remove.
5738         * linux-tdep.c (linux_info_proc): Remove unused variable.
5739         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5740         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5741         Remove unused variable.
5742         * parse.c (find_minsym_type_and_address): Remove unused variable.
5743         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5744         variable.
5745         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5746         variable.
5747         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5748         variables.
5749         * record-btrace.c (record_btrace_target::store_registers): Remove
5750         unused variable.
5751         (cmd_show_record_btrace_cpu): Remove unused variable.
5752         * riscv-tdep.c (riscv_register_reggroup_p)
5753         (riscv_push_dummy_call, riscv_return_value): Remove unused
5754         variable.
5755         * rust-exp.y (literal): Remove unused variable.
5756         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5757         unused variable.
5758         <STRUCTOP_ANONYMOUS>: Likewise.
5759         * s390-linux-tdep.c (s390_linux_init_abi_31)
5760         (s390_linux_init_abi_64): Remove unused variable.
5761         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5762         (file_select_thread, net_windows_open, _initialize_ser_windows):
5763         Remove unused variables.
5764         * symtab.c (find_pc_sect_line): Remove unused variable.
5765         * target-memory.c (compute_garbled_blocks): Remove unused
5766         variable.
5767         (target_write_memory_blocks): Remove unused variable.
5768         * target.c (target_stack::unpush): Remove unused variables.
5769         * tracepoint.c (start_tracing, all_tracepoint_actions)
5770         (merge_uploaded_trace_state_variables)
5771         (print_one_static_tracepoint_marker): Remove unused variable.
5772         * unittests/basic_string_view/element_access/char/1.cc (test01):
5773         Remove unused variable.
5774         * windows-nat.c (windows_continue, windows_add_all_dlls)
5775         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5776         Remove unused variables.
5777
5778 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5779
5780         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5781         attr_profile in HAVE_ELF.
5782         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5783         HAVE_ELF.
5784
5785 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5786
5787         * frame.c (frame_register_unwind): Change parameter name.
5788         (frame_unwind_register): Likewise.
5789         (frame_unwind_register_value): Likewise.
5790         (frame_unwind_register_signed): Likewise.
5791         (frame_unwind_register_unsigned): Likewise.
5792         * frame.h (frame_register_unwind): Likewise.
5793         (frame_unwind_register): Likewise.
5794         (frame_unwind_register_value): Likewise.
5795         (frame_unwind_register_signed): Likewise.
5796         (frame_unwind_register_unsigned): Likewise.
5797         (frame_unwind_arch): Likewise.
5798
5799 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5800
5801         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5802         ISA maintenance.
5803
5804 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5805
5806         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5807         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5808         hand.
5809
5810 2018-07-20  Keith Seitz  <keiths@redhat.com>
5811
5812         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5813         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5814         m_compunit_symtab, m_language>: Add "m_" prefix.
5815         Update all uses.
5816         * buildsym.c: Update all uses.
5817
5818 2018-07-20  Tom Tromey  <tom@tromey.com>
5819
5820         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5821         * buildsym.h (record_line_ftype): Remove typedef.
5822
5823 2018-07-20  Tom Tromey  <tom@tromey.com>
5824
5825         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5826         (end_expandable_symtab): Likewise.
5827         (end_symtab_get_static_block): Likewise.
5828         (end_symtab_from_static_block): Likewise.
5829         * buildsym-legacy.c (augment_type_symtab): Remove.
5830         (end_expandable_symtab): Remove.
5831         (end_symtab_get_static_block): Remove.
5832         (end_symtab_from_static_block): Remove.
5833
5834 2018-07-20  Tom Tromey  <tom@tromey.com>
5835
5836         * dwarf2read.c: Include buildsym.h.
5837         (struct dwarf2_cu) <builder>: New method.
5838         (fixup_go_packaging): Update.
5839         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5840         use scoped_free_pendings.
5841         (using_directives): Add "cu" parameter, remove "language".
5842         (read_import_statement, setup_type_unit_groups, )
5843         (read_func_scope, read_lexical_block_scope)
5844         (dwarf2_record_block_ranges, read_namespace): Update.
5845         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5846         (lnp_state_machine::handle_end_sequence): Update.
5847         (class lnp_state_machine) <m_cu>: New member.
5848         <m_record_line_callback>: Remove.
5849         <m_currently_recording_lines>: New member.
5850         (lnp_state_machine::handle_set_file): Update.
5851         (noop_record_line): Remove.
5852         (dwarf_record_line_p): Add cu parameter.
5853         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5854         (lnp_state_machine::record_line)
5855         (lnp_state_machine::lnp_state_machine)
5856         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5857         (dwarf_decode_lines): Update.
5858         (dwarf2_start_subfile): Add cu parameter.
5859         (dwarf2_start_symtab, new_symbol): Update.
5860         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5861         Remove dwarf2_per_objfile parameter.
5862         (dwarf_decode_macros): Update.
5863
5864 2018-07-20  Tom Tromey  <tom@tromey.com>
5865
5866         * stabsread.c (define_symbol): Update.
5867         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5868         * dwarf2read.c (new_symbol): Update.
5869         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5870         * cp-namespace.c: Include buildsym.h.
5871         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5872         * buildsym-legacy.c (get_buildsym_compunit): New function.
5873
5874 2018-07-20  Tom Tromey  <tom@tromey.com>
5875
5876         * xcoffread.c: Include buildsym-legacy.h.
5877         * windows-nat.c: Include buildsym-legacy.h.
5878         * stabsread.c: Include buildsym-legacy.h.
5879         * mdebugread.c: Include buildsym-legacy.h.
5880         * buildsym-legacy.h: New file.
5881         * buildsym-legacy.c: New file, from buildsym.c.
5882         * go32-nat.c: Include buildsym-legacy.h.
5883         * dwarf2read.c: Include buildsym-legacy.h.
5884         * dbxread.c: Include buildsym-legacy.h.
5885         * cp-namespace.c: Include buildsym-legacy.h.
5886         * coffread.c: Include buildsym-legacy.h.
5887         * buildsym.h: Move some contents to buildsym-legacy.h.
5888         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5889         buildsym-legacy.c.
5890         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5891
5892 2018-07-20  Tom Tromey  <tom@tromey.com>
5893
5894         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5895         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5896         (buildsym_compunit::buildsym_compunit)
5897         (buildsym_compunit::~buildsym_compunit)
5898         (buildsym_compunit::get_macro_table): Define.
5899
5900 2018-07-20  Tom Tromey  <tom@tromey.com>
5901
5902         * buildsym.c (reset_symtab_globals): Remove.
5903         (buildsym_compunit::end_symtab_from_static_block): Update.
5904         (buildsym_compunit::augment_type_symtab): Update.
5905         (end_symtab_from_static_block): Call free_buildsym_compunit.
5906         (augment_type_symtab, end_symtab, end_expandable_symtab):
5907         Likewise.
5908
5909 2018-07-20  Tom Tromey  <tom@tromey.com>
5910
5911         * arch-utils.c: Do not include buildsym.h.
5912         * mipsread.c: Do not include buildsym.h.
5913         * machoread.c: Do not include buildsym.h.
5914         * elfread.c: Do not include buildsym.h.
5915
5916 2018-07-20  Tom Tromey  <tom@tromey.com>
5917
5918         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5919         initialization.
5920         (buildsym_compunit): Add new constructor.
5921         (struct buildsym_compunit) <get_last_source_file, finish_block,
5922         record_block_range, start_subfile, patch_subfile_names,
5923         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5924         set_last_source_start_addr, get_last_source_start_addr,
5925         get_local_using_directives, set_local_using_directives,
5926         get_global_using_directives, outermost_context_p,
5927         get_current_context_stack, get_context_stack_depth,
5928         get_current_subfile, get_local_symbols, get_file_symbols,
5929         get_global_symbols, record_debugformat, record_producer,
5930         push_context, pop_context, end_symtab_get_static_block,
5931         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5932         New public methods.
5933         <record_pending_block, finish_block_internal, make_blockvector,
5934         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5935         private methods.
5936         Update all users.
5937
5938 2018-05-22  Tom Tromey  <tom@tromey.com>
5939
5940         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5941         parameter.
5942         (finish_block_internal): Update.
5943
5944 2018-07-20  Tom Tromey  <tom@tromey.com>
5945
5946         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5947         parameter.
5948         (finish_block_internal): Update.
5949
5950 2018-07-20  Tom Tromey  <tom@tromey.com>
5951
5952         * buildsym.h (EXTERN): Don't define or undef.
5953         * buildsym.c (EXTERN): Don't define.
5954
5955 2018-07-20  Tom Tromey  <tom@tromey.com>
5956
5957         * buildsym.c: Remove TODO comment.
5958
5959 2018-07-20  Tom Tromey  <tom@tromey.com>
5960
5961         * coffread.c (coff_symtab_read): Update.
5962         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5963         (xcoff_new_init): Update.
5964         * mipsread.c (mipscoff_new_init): Update.
5965         * mdebugread.c (mdebug_build_psymtabs): Update.
5966         * elfread.c (elf_new_init): Update.
5967         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5968         Update.
5969         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5970         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5971         (stabsect_build_psymtabs): Update.
5972         * buildsym.h (buildsym_init): Don't declare.
5973         * buildsym.c: Update comment.
5974         (prepare_for_building): Remove.
5975         (start_symtab, restart_symtab): Update.
5976         (reset_symtab_globals): Update comment.
5977         (buildsym_init): Remove.
5978
5979 2018-07-20  Tom Tromey  <tom@tromey.com>
5980
5981         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5982         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5983         (read_enum_type, common_block_start, common_block_end)
5984         (cleanup_undefined_types_1, finish_global_stabs): Update.
5985         * mdebugread.c (psymtab_to_symtab_1): Update.
5986         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5987         (read_lexical_block_scope, new_symbol): Update.
5988         * dbxread.c (process_one_symbol): Update.
5989         * coffread.c (coff_symtab_read, process_coff_symbol)
5990         (coff_read_enum_type): Update.
5991         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5992         declare.
5993         (get_local_symbols, get_file_symbols, get_global_symbols): New
5994         functions.
5995         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5996         m_global_symbols.
5997         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5998         (~scoped_free_pendings): Update.
5999         (finish_block, prepare_for_building, reset_symtab_globals)
6000         (end_symtab_get_static_block, end_symtab_with_blockvector)
6001         (augment_type_symtab, push_context): Update.
6002         (get_local_symbols, get_file_symbols, get_global_symbols): New
6003         functions.
6004         (buildsym_init): Update.
6005
6006 2018-07-20  Tom Tromey  <tom@tromey.com>
6007
6008         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6009         (process_full_type_unit): Likewise.
6010         (dwarf2_start_symtab): Set list_in_scope.
6011
6012 2018-07-20  Tom Tromey  <tom@tromey.com>
6013
6014         * dwarf2read.c (process_psymtab_comp_unit_reader)
6015         (build_type_psymtabs_reader): Do not set list_in_scope.
6016
6017 2018-07-20  Tom Tromey  <tom@tromey.com>
6018
6019         * buildsym.c (free_pendings): Remove.
6020         (add_symbol_to_list, scoped_free_pendings)
6021         (finish_block_internal, buildsym_init): Update.
6022
6023 2018-07-20  Tom Tromey  <tom@tromey.com>
6024
6025         * xcoffread.c (read_xcoff_symtab): Update.
6026         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6027         Update.
6028         * dbxread.c (process_one_symbol): Update.
6029         * coffread.c (coff_symtab_read): Update.
6030         * buildsym.h (finish_block): Update.
6031         * buildsym.c (finish_block): Remove "listhead" argument.
6032         (end_symtab_get_static_block): Update.
6033
6034 2018-07-20  Tom Tromey  <tom@tromey.com>
6035
6036         * buildsym.h (class scoped_free_pendings): Remove constructor.
6037         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6038         method.
6039         <m_pending_block_obstack, m_pending_blocks>: New members.
6040         (pending_block_obstack, pending_blocks): Remove.
6041         (scoped_free_pendings::scoped_free_pendings): Default.
6042         (~scoped_free_pendings): Update.
6043         (free_pending_blocks): Remove.
6044         (finish_block_internal, record_pending_block, make_blockvector)
6045         (end_symtab_get_static_block, augment_type_symtab, push_context)
6046         (buildsym_init): Update.
6047
6048 2018-07-20  Tom Tromey  <tom@tromey.com>
6049
6050         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6051         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6052         members.
6053         (pending_addrmap, pending_addrmap_obstack)
6054         (pending_addrmap_interesting): Remove.
6055         (scoped_free_pendings, record_block_range, make_blockvector)
6056         (prepare_for_building, reset_symtab_globals, buildsym_init):
6057         Update.
6058
6059 2018-07-20  Tom Tromey  <tom@tromey.com>
6060
6061         * xcoffread.c (process_linenos): Update.
6062         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6063         * mdebugread.c (psymtab_to_symtab_1): Update.
6064         * dwarf2read.c (setup_type_unit_groups)
6065         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6066         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6067         * dbxread.c (process_one_symbol): Update.
6068         * coffread.c (coff_symtab_read, enter_linenos)
6069         (process_coff_symbol): Update.
6070         * buildsym.h (current_subfile): Don't declare.
6071         (get_current_subfile): Declare.
6072         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6073         member.
6074         (start_subfile, free_buildsym_compunit, push_subfile)
6075         (prepare_for_building, start_symtab): Update.
6076         (get_current_subfile): New function.
6077
6078 2018-07-20  Tom Tromey  <tom@tromey.com>
6079
6080         * coffread.c (coff_symtab_read): Update.
6081         * xcoffread.c (read_xcoff_symtab): Update.
6082         * dwarf2read.c (new_symbol): Update.
6083         (read_func_scope, read_lexical_block_scope): Update.
6084         * dbxread.c (process_one_symbol): Update.
6085         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6086         (outermost_context_p): Remove macro.
6087         (outermost_context_p, get_current_context_stack)
6088         (get_context_stack_depth): Declare.
6089         (pop_context): Return struct context_stack.
6090         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6091         member.
6092         (context_stack_size): Remove.
6093         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6094         (prepare_for_building, end_symtab_get_static_block)
6095         (augment_type_symtab, push_context): Update.
6096         (pop_context): Return struct context_stack.
6097         (outermost_context_p, get_current_context_stack)
6098         (get_context_stack_depth): New functions.
6099         (buildsym_init): Update.
6100
6101 2018-07-20  Tom Tromey  <tom@tromey.com>
6102
6103         * rust-exp.y: Now a pure parser.  Update all rules.
6104         (%union): Move earlier.
6105         (current_parser, work_obstack): Remove globals.
6106         (rust_parser, ~rust_parser): Update.
6107         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6108         lex_character, lex_number, lex_string, lex_identifier,
6109         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6110         convert_name, convert_params_to_expression,
6111         convert_ast_to_expression, ast_basic_type, ast_operation,
6112         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6113         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6114         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6115         ast_array_type, ast_slice_type, ast_reference_type,
6116         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6117         (rust_parse): Update.
6118         (rustyyerror, rustyylex): Add parser parameter.
6119         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6120         (rust_lex_stringish_test, rust_lex_test_sequence)
6121         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6122         (rust_lex_test_push_back, rust_lex_tests): Update.
6123
6124 2018-07-19  Pedro Alves  <palves@redhat.com>
6125
6126         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6127         gdb::unique_xmalloc_ptr.
6128         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6129         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6130         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6131         copy-initialization.
6132         * guile/scm-pretty-print.c (ppscm_print_children): Use
6133         gdb::unique_xmalloc_ptr instead of cleanups.
6134         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6135         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6136         gdb::unique_xmalloc_ptr.
6137         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6138         Adjust to use gdb::unique_xmalloc_ptr.
6139         * guile/scm-utils.c (extract_arg): Adjust.
6140         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6141         gdb::unique_xmalloc_ptr instead of a cleanup.
6142
6143 2018-07-19  Tom Tromey  <tom@tromey.com>
6144
6145         * utils.c (do_value_free_to_mark)
6146         (make_cleanup_value_free_to_mark): Remove.
6147         * utils.h (make_cleanup_value_free_to_mark): Remove.
6148
6149 2018-07-19  Pedro Alves  <palves@redhat.com>
6150
6151         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6152         forwarding reference.
6153
6154 2018-07-18  Pedro Alves  <palves@redhat.com>
6155
6156         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6157         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6158         cleanup.
6159
6160 2018-07-18  Pedro Alves  <palves@redhat.com>
6161
6162         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6163         exceptions.
6164         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6165         (gdbscm_wrap): New.
6166         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6167         directly instead of a cleanup.
6168         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6169         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6170         (vlscm_binop_gdbthrow): New, factored out from ...
6171         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6172         (vlscm_rich_compare): Use gdbscm_wrap.
6173         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6174         instead of a cleanup.
6175         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6176         cleanup.
6177         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6178         Use xfree directly instead of a cleanup.
6179         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6180         Adjust to use gdbscm_wrap and scoped_value_mark.
6181         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6182         (gdbscm_value_address, gdbscm_value_dereference)
6183         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6184         scoped_value_mark.
6185         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6186         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6187         scoped_value_mark.
6188         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6189         gdbscm_wrap and scoped_value_mark.
6190         (gdbscm_value_to_string): Use xfree directly instead of a
6191         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6192         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6193         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6194         scoped_value_mark.
6195         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6196         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6197         scoped_value_mark.
6198         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6199         gdbscm_wrap.
6200
6201 2018-07-18  Tom de Vries  <tdevries@suse.de>
6202
6203         * findvar.c (default_read_var_value): Also resolve dynamic type for
6204         LOC_OPTIMIZED_OUT vars.
6205
6206 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6207
6208         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6209         decoding.
6210
6211 2018-07-17  Tom Tromey  <tom@tromey.com>
6212
6213         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6214         (compute_enum_list, pascm_set_param_value_x)
6215         (gdbscm_parameter_value): Update.
6216         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6217         (gdbscm_scm_to_host_string): Update.
6218         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6219         Update.
6220         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6221         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6222         * guile/scm-string.c (gdbscm_scm_to_string): Return
6223         unique_xmalloc_ptr.
6224         (gdbscm_scm_to_host_string): Likewise.
6225
6226 2018-07-17  Tom Tromey  <tom@tromey.com>
6227
6228         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6229         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6230         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6231         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6232         unique_xmalloc_ptr.
6233
6234 2018-07-17  Tom Tromey  <tom@tromey.com>
6235
6236         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6237         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6238         Update.
6239         * guile/scm-cmd.c (cmdscm_function): Update.
6240         * guile/scm-pretty-print.c
6241         (ppscm_print_exception_unless_memory_error): Update.
6242         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6243         Return unique_xmalloc_ptr.
6244
6245 2018-07-17  Tom Tromey  <tom@tromey.com>
6246
6247         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6248         Use string_printf.
6249
6250 2018-07-17  Jim Wilson  <jimw@sifive.com>
6251
6252         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6253         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6254         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6255         unecessary braces after EF_RISCV_RVC test.  Delete call to
6256         set_gdbarch_decr_pc_after_break.
6257
6258         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6259         RISCV_LAST_FP_REGNUM + 1.
6260         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6261
6262 2018-07-17  Tom Tromey  <tom@tromey.com>
6263
6264         * configure.ac: Remove --disable-gdbcli.
6265         * configure: Rebuild.
6266         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6267         (SUBDIR_CLI_CFLAGS): Remove.
6268         (SFILES): Use SUBDIR_CLI_SRCS.
6269         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6270
6271 2018-07-17  Tom Tromey  <tom@tromey.com>
6272
6273         PR gdb/18624:
6274         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6275
6276 2018-07-16  Jim Wilson  <jimw@sifive.com>
6277
6278         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6279
6280 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6281
6282         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6283         variable.
6284         (libunwind_frame_sniffer): Likewise.
6285         (libunwind_frame_prev_register): Likewise.
6286         (libunwind_sigtramp_frame_sniffer): Likewise.
6287         * ia64-tdep.c (ia64_access_reg): Likewise.
6288         (ia64_access_rse_reg): Likewise.
6289         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6290         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6291
6292 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6293
6294         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6295
6296 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6297
6298         * remote-sim.c (gdbsim_target::close,
6299         gdbsim_target::mourn_inferior): Remove unused variables.
6300
6301 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6302
6303         * ia64-tdep.c (ktab_buf): New global.
6304         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6305         (get_kernel_table): Adjust.
6306
6307 2018-07-16  Tom Tromey  <tom@tromey.com>
6308
6309         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6310         * dwarf2read.c (using_directives, new_symbol): Use
6311         outermost_context_p.
6312         * dbxread.c (process_one_symbol): Use outermost_context_p.
6313         * coffread.c (coff_symtab_read): Use outermost_context_p.
6314
6315 2018-07-16  Tom Tromey  <tom@tromey.com>
6316
6317         * dwarf2read.c (using_directives, read_func_scope)
6318         (read_lexical_block_scope): Update.
6319         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6320         * buildsym.h (local_using_directives, global_using_directives):
6321         Don't declare.
6322         (get_local_using_directives, set_local_using_directives)
6323         (get_global_using_directives): Declare.
6324         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6325         m_global_using_directives>: New members.
6326         (finish_block_internal, prepare_for_building)
6327         (reset_symtab_globals, end_symtab_get_static_block)
6328         (push_context): Update.
6329         (get_local_using_directives, set_local_using_directives)
6330         (get_global_using_directives): New functions.
6331         (buildsym_init): Update.
6332
6333 2018-07-16  Tom Tromey  <tom@tromey.com>
6334
6335         * xcoffread.c (xcoff_initial_scan): Don't call
6336         free_pending_blocks.
6337         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6338         * buildsym.h (class scoped_free_pendings): Add constructor.
6339         (free_pending_blocks): Don't declare.
6340         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6341         (free_pending_blocks): Now static.
6342
6343 2018-07-16  Tom Tromey  <tom@tromey.com>
6344
6345         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6346         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6347         member.
6348         (struct subfile_stack): Remove.
6349         (subfile_stack): Remove.
6350         (push_subfile, pop_subfile, buildsym_init): Update.
6351
6352 2018-07-16  Tom Tromey  <tom@tromey.com>
6353
6354         * buildsym.c (push_subfile): Use gdb_assert.
6355         (pop_subfile): Use gdb_assert.
6356
6357 2018-07-16  Tom Tromey  <tom@tromey.com>
6358
6359         * buildsym.h (merge_symbol_lists): Remove.
6360         * buildsym.c (merge_symbol_lists): Remove.
6361
6362 2018-07-16  Tom Tromey  <tom@tromey.com>
6363
6364         * stabsread.c (scan_file_globals): Update comment.
6365         * stabsread.h (scan_file_globals): Move from buildsym.h.
6366         * buildsym.h (scan_file_globals): Move to stabsread.h.
6367
6368 2018-07-16  Tom Tromey  <tom@tromey.com>
6369
6370         * xcoffread.c (xcoff_new_init): Update.
6371         * mipsread.c (mipscoff_new_init): Update.
6372         * mdebugread.c (mdebug_build_psymtabs): Update.
6373         * elfread.c (elf_new_init): Update.
6374         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6375         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6376         * buildsym.h (buildsym_new_init): Don't declare.
6377         * buildsym.c (buildsym_new_init): Remove.
6378
6379 2018-07-16  Tom Tromey  <tom@tromey.com>
6380
6381         * stabsread.h (within_function): Move from buildsym.h.
6382         * stabsread.c (start_stabs): Clear within_function.
6383         * coffread.c (coff_start_symtab): Clear within_function.
6384         * buildsym.h (within_function): Move to stabsread.h.
6385         * buildsym.c (prepare_for_building): Update.
6386
6387 2018-07-16  Tom Tromey  <tom@tromey.com>
6388
6389         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6390         * dwarf2read.c (dwarf2_start_symtab): Don't set
6391         processing_gcc_compilation.
6392         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6393
6394 2018-07-16  Tom Tromey  <tom@tromey.com>
6395
6396         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6397         (next_symbol_text_func): Move from buildsym.h.
6398         * stabsread.c (hashname): Move from buildsym.c.
6399         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6400         (next_symbol_text_func, hashname): Move to stabsread.h.
6401         * buildsym.c: Don't include bcache.h
6402         (hashname): Move to stasbread.c.
6403
6404 2018-07-16  Tom Tromey  <tom@tromey.com>
6405
6406         * buildsym.h (context_stack_size): Don't declare.
6407         * buildsym.c (context_stack_size): New global.
6408
6409 2018-07-16  Tom Tromey  <tom@tromey.com>
6410
6411         * dbxread.c (processing_acc_compilation): New global.
6412         * buildsym.h (processing_acc_compilation): Don't declare.
6413
6414 2018-07-16  Tom Tromey  <tom@tromey.com>
6415
6416         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6417         * dbxread.c (read_ofile_symtab): Update.
6418         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6419         * buildsym.h (last_source_start_addr): Remove.
6420         (set_last_source_start_addr, get_last_source_start_addr):
6421         Declare.
6422         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6423         parameter.
6424         (struct buildsym_compunit) <m_last_source_start_addr>: New
6425         member.
6426         (prepare_for_building): Remove start_addr parameter.
6427         (start_symtab, restart_symtab, end_symtab_get_static_block)
6428         (end_symtab_with_blockvector): Update.
6429         (set_last_source_start_addr, get_last_source_start_addr): New
6430         functions.
6431
6432 2018-07-16  Tom Tromey  <tom@tromey.com>
6433
6434         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6435         member.
6436         (have_line_numbers): Remove.
6437         (record_line, prepare_for_building, end_symtab_get_static_block)
6438         (augment_type_symtab): Update.
6439
6440 2018-07-16  Tom Tromey  <tom@tromey.com>
6441
6442         * buildsym.c (~buildsym_compunit): Free the macro table.
6443         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6444         methods.
6445         <m_pending_macros>: New member.
6446         (pending_macros): Remove.
6447         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6448         (reset_symtab_globals, end_symtab_get_static_block)
6449         (end_symtab_with_blockvector, augment_type_symtab)
6450         (buildsym_init): Update.
6451
6452 2018-07-16  Tom Tromey  <tom@tromey.com>
6453
6454         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6455         parameter.
6456         (buildsym_compunit::set_last_source_file): New method.
6457         <m_last_source_file>: New member.
6458         (prepare_for_building): Remove "name" parameter.
6459         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6460         (last_source_file): Remove.
6461         (set_last_source_file, get_last_source_file): Update.
6462
6463 2018-07-16  Tom Tromey  <tom@tromey.com>
6464
6465         * buildsym.c (prepare_for_building): Add assert.
6466
6467 2018-07-16  Tom Tromey  <tom@tromey.com>
6468
6469         * buildsym.c (~buildsym_compunit): Update.
6470         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6471         (start_subfile, patch_subfile_names)
6472         (end_symtab_with_blockvector): Update.
6473
6474 2018-07-16  Tom Tromey  <tom@tromey.com>
6475
6476         * buildsym.c (struct buildsym_compunit): Add constructor,
6477         destructor, initializers.
6478         (start_buildsym_compunit): Remove.
6479         (free_buildsym_compunit): Use "delete".
6480         (start_symtab, restart_symtab): Use "new".
6481
6482 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6483
6484         * symfile.c (set_objfile_default_section_offset): Remove struct
6485         keyword.
6486
6487 2018-07-14  Stafford Horne  <shorne@gmail.com>
6488
6489         * (Responsible Maintainers): Add myself as or1k maintainer.
6490
6491 2018-07-13  Tom Tromey  <tom@tromey.com>
6492
6493         * symfile.c (set_objfile_default_section_offset): Use extra braces
6494         around initializer.
6495
6496 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6497
6498         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6499         non-branching basr.
6500
6501 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6502
6503         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6504         unittests/cli-utils-selftests.c
6505         * unittests/cli-utils-selftests.c: New file.
6506
6507 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6508
6509         * NEWS: Mention new commands. Mention change to 'thread apply'.
6510
6511 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6512
6513         * thread.c (thr_try_catch_cmd): New function.
6514         (thread_apply_all_command): Handle qcs flags.
6515         (thread_apply_command): Handle qcs flags.
6516         (taas_command): New function.
6517         (tfaas_command): New function.
6518         (_initialize_thread): Update to setup the new commands 'taas
6519         and 'tfaas'. Change doc string for 'thread apply'.
6520
6521 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6522
6523         * stack.c: (trailing_outermost_frame): New function, mostly
6524         extracted from backtrace_command_1.
6525         (leading_innermost_frame): New function.
6526         (backtrace_command_1): Update to call trailing_outermost_frame.
6527         (frame_apply_command_count): New function.
6528         (frame_apply_level_command): New function.
6529         (frame_apply_all_command): New function.
6530         (frame_apply_command): New function.
6531         (faas_command): New function.
6532         (frame_cmd_list): New variable.
6533         (_initialize_stack): Update to setup the new commands 'frame apply'
6534         and 'faas'.
6535
6536 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6537
6538         * cli-utils.c (number_or_range_parser::get_number): Only handle
6539         numbers or convenience var as numbers.
6540         (parse_flags): New function.
6541         (parse_flags_qcs): New function.
6542         (number_or_range_parser::finished): Ensure parsing end is detected
6543         before end of string.
6544         * cli-utils.h (parse_flags): New function.
6545         (parse_flags_qcs): New function.
6546         (number_or_range_parser): Remove m_finished bool.
6547         (number_or_range_parser::skip_range): Set m_in_range to false.
6548
6549 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6550
6551         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6552         on Windows.
6553
6554 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6555             Jan Kratochvil  <jan.kratochvil@redhat.com>
6556             Paul Fertser  <fercerpav@gmail.com>
6557             Tsutomu Seki  <sekiriki@gmail.com>
6558             Pedro Alves  <palves@redhat.com>
6559
6560         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6561         'unittests/parse-connection-spec-selftests.c'.
6562         (COMMON_SFILES): Add 'common/netstuff.c'.
6563         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6564         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6565         * common/netstuff.c: New file.
6566         * common/netstuff.h: New file.
6567         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6568         (wait_for_connect): Update comment.  New parameter
6569         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6570         Use 'sock' directly instead of 'scb->fd'.
6571         (try_connect): New function, with code from 'net_open'.
6572         (net_open): Rewrite main loop to deal with multiple
6573         sockets/addresses.  Handle IPv6-style hostnames; implement
6574         support for IPv6 connections.
6575         * unittests/parse-connection-spec-selftests.c: New file.
6576
6577 2018-07-11  Pedro Alves  <palves@redhat.com>
6578
6579         PR gdb/23377
6580         * remote.c (remote_target::remote_detach_pid): Call
6581         set_current_process.
6582
6583 2018-07-11  Pedro Alves  <palves@redhat.com>
6584
6585         * h8300-tdep.c (h8300_gdbarch_init): Remove
6586         set_gdbarch_ecoff_reg_to_regnum calls.
6587
6588 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6589
6590         PR c++/23373
6591         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6592         offsets/sizes for static members of a class/struct.
6593
6594 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6595
6596         * target-descriptions.c (tdesc_register_bitsize): Rename.
6597         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6598         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6599         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6600
6601 2018-07-10  Tom Tromey  <tom@tromey.com>
6602
6603         * breakpoint.c (moribund_locations): Now static and a
6604         std::vector.
6605         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6606         (build_bpstat_chain, update_global_location_list)
6607         (breakpoint_retire_moribund): Update.
6608         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6609         VEC.
6610
6611 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6612
6613         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6614         (riscv_register_reggroup_p): Use new function, remove unneeded
6615         parenthesis.
6616         (riscv_push_dummy_call): Extend assert to compare against xlen or
6617         flen based on register type.
6618
6619 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6620
6621         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6622
6623 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6624
6625         * remote.c (show_hardware_watchpoint_limit): New function.
6626         (show_hardware_watchpoint_length_limit): New function.
6627         (show_hardware_breakpoint_limit): New function.
6628         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6629         where appropriate, update help text.
6630
6631 2018-07-09  Tom Tromey  <tom@tromey.com>
6632
6633         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6634         (CLIBS): Don't mention NAT_CLIBS.
6635
6636 2018-07-09  Tom Tromey  <tom@tromey.com>
6637
6638         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6639         (LIBGDB_OBS, clean mostlyclean): Update.
6640         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6641
6642 2018-07-09  Tom Tromey  <tom@tromey.com>
6643
6644         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6645         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6646         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6647
6648 2018-07-09  Tom Tromey  <tom@tromey.com>
6649
6650         * Makefile.in (ALLDEPFILES): Remove exec.c.
6651         (COMMON_OBS): Remove exec.o.
6652         (COMMON_SFILES): Add exec.c.
6653
6654 2018-07-09  Tom Tromey  <tom@tromey.com>
6655
6656         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6657
6658 2018-07-09  Tom Tromey  <tom@tromey.com>
6659
6660         * Makefile.in (clean mostlyclean): Remove stamp-version.
6661         (version.c): Depend on stamp-version.
6662         (stamp-version): New rule, from version.c rule.
6663
6664 2018-07-09  Tom Tromey  <tom@tromey.com>
6665
6666         * Makefile.in (init.c): Depend on stamp-init.
6667         (stamp-init): New rule, from init.c rule.
6668         (clean mostlyclean): Remove stamp-init.
6669
6670 2018-07-09  Tom Tromey  <tom@tromey.com>
6671
6672         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6673         SUBDIR_GCC_COMPILE_SRCS.
6674
6675 2018-07-09  Tom Tromey  <tom@tromey.com>
6676
6677         * Makefile.in (init.c): Remove some unused sed rules.
6678
6679 2018-07-09  Tom Tromey  <tom@tromey.com>
6680
6681         * Makefile.in (TSOBS): Remove.
6682         (INIT_FILES): Update.
6683         (LIBGDB_OBS): Update.
6684         (COMMON_SFILES): Add inflow.c.
6685         (SFILES): Remove inflow.c.
6686
6687 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6688
6689         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6690
6691 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6692
6693         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6694         get_saveloc_name, is_signal_frame_name, step_name,
6695         init_remote_name, create_addr_space_name,
6696         destroy_addr_space_name, search_unwind_table_name,
6697         find_dyn_list_name): Constify.
6698
6699 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6700
6701         * darwin-nat.c (darwin_pthread_kill): New function.
6702         (darwin_resume_thread): Use darwin_pthread_kill.
6703
6704 2018-07-05  Tom de Vries  <tdevries@suse.de>
6705
6706         * macroexp.c (macro_buffer) <operator=>: New member function.
6707
6708 2018-07-04  Tom Tromey  <tom@tromey.com>
6709
6710         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6711
6712 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6713
6714         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6715         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6716         * maint.c: Likewise.
6717         * top.c: Likewise.
6718
6719 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6720
6721         * NEWS: Create a new section for the next release branch.
6722         Rename the section of the current branch, now that it has
6723         been cut.
6724
6725 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6726
6727         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6728         * version.in: Bump version to 8.2.50.DATE-git.
6729
6730 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6731             Pedro Alves  <palves@redhat.com>
6732
6733         * linux-nat.c (linux_init_ptrace): Rename to ...
6734         (linux_init_ptrace_procfs): ... this.  Call
6735         linux_proc_init_warnings.
6736         (linux_nat_target::post_attach)
6737         (linux_nat_target::post_startup_inferior): Adjust.
6738         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6739         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6740
6741 2018-07-04  Tom de Vries  <tdevries@suse.de>
6742
6743         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6744         check ...
6745         (read_comp_unit_head): ... here.
6746
6747 2018-07-03  Tom Tromey  <tom@tromey.com>
6748
6749         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6750         (stop_tracing, tstatus_command)
6751         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6752         (print_one_static_tracepoint_marker): Update.
6753         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6754         std::vector.
6755         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6756         VEC.
6757         (all_tracepoints, static_tracepoints_here): Return std::vector.
6758
6759 2018-07-03  Tom Tromey  <tom@tromey.com>
6760
6761         * common/ptid.c (ptid_equal): Remove.
6762         * common/ptid.h (ptid_equal): Don't declare.
6763         * ada-tasks.c: Update.
6764         * breakpoint.c: Update.
6765         * common/agent.c: Update.
6766         * corelow.c: Update.
6767         * darwin-nat-info.c: Update.
6768         * darwin-nat.c: Update.
6769         * dcache.c: Update.
6770         * dtrace-probe.c: Update.
6771         * dummy-frame.c: Update.
6772         * fbsd-nat.c: Update.
6773         * frame.c: Update.
6774         * gdbthread.h: Update.
6775         * gnu-nat.c: Update.
6776         * go32-nat.c: Update.
6777         * inf-loop.c: Update.
6778         * inf-ptrace.c: Update.
6779         * infcall.c: Update.
6780         * infcmd.c: Update.
6781         * inflow.c: Update.
6782         * infrun.c: Update.
6783         * linux-fork.c: Update.
6784         * linux-nat.c: Update.
6785         * linux-thread-db.c: Update.
6786         * mi/mi-cmd-var.c: Update.
6787         * mi/mi-interp.c: Update.
6788         * mi/mi-main.c: Update.
6789         * nto-procfs.c: Update.
6790         * ppc-linux-tdep.c: Update.
6791         * procfs.c: Update.
6792         * python/py-inferior.c: Update.
6793         * python/py-record-btrace.c: Update.
6794         * python/py-record.c: Update.
6795         * ravenscar-thread.c: Update.
6796         * regcache.c: Update.
6797         * remote-sim.c: Update.
6798         * remote.c: Update.
6799         * sol-thread.c: Update.
6800         * solib.c: Update.
6801         * target.c: Update.
6802         * tui/tui-stack.c: Update.
6803         * varobj.c: Update.
6804         * windows-nat.c: Update.
6805         * windows-tdep.c: Update.
6806
6807 2018-07-03  Tom Tromey  <tom@tromey.com>
6808
6809         * common/ptid.c (ptid_match): Remove.
6810         * common/ptid.h (ptid_match): Don't declare.
6811         * fbsd-nat.c: Update.
6812         * infcmd.c: Update.
6813         * infrun.c: Update.
6814         * linux-nat.c: Update.
6815         * record-btrace.c: Update.
6816         * regcache.c: Update.
6817         * remote.c: Update.
6818
6819 2018-07-03  Tom Tromey  <tom@tromey.com>
6820
6821         * common/ptid.c (ptid_tid_p): Remove.
6822         * common/ptid.h (ptid_tid_p): Don't declare.
6823         * sol-thread.c: Update.
6824
6825 2018-07-03  Tom Tromey  <tom@tromey.com>
6826
6827         * common/ptid.c (ptid_lwp_p): Remove.
6828         * common/ptid.h (ptid_lwp_p): Don't declare.
6829         * fbsd-nat.c: Update.
6830         * linux-nat.c: Update.
6831         * nat/linux-procfs.c: Update.
6832         * nat/x86-linux-dregs.c: Update.
6833         * sol-thread.c: Update.
6834
6835 2018-07-03  Tom Tromey  <tom@tromey.com>
6836
6837         * common/ptid.c (ptid_is_pid): Remove.
6838         * common/ptid.h (ptid_is_pid): Don't declare.
6839         * infrun.c: Update.
6840         * linux-nat.c: Update.
6841         * mi/mi-interp.c: Update.
6842         * remote.c: Update.
6843         * thread.c: Update.
6844
6845 2018-07-03  Tom Tromey  <tom@tromey.com>
6846
6847         * common/ptid.c (ptid_get_tid): Remove.
6848         * common/ptid.h (ptid_get_tid): Don't declare.
6849         * ada-tasks.c: Update.
6850         * aix-thread.c: Update.
6851         * bsd-uthread.c: Update.
6852         * darwin-nat.c: Update.
6853         * fbsd-nat.c: Update.
6854         * i386-darwin-nat.c: Update.
6855         * infrun.c: Update.
6856         * linux-tdep.c: Update.
6857         * nto-procfs.c: Update.
6858         * ppc-ravenscar-thread.c: Update.
6859         * python/py-infthread.c: Update.
6860         * ravenscar-thread.c: Update.
6861         * sol-thread.c: Update.
6862         * sparc-ravenscar-thread.c: Update.
6863         * windows-nat.c: Update.
6864
6865 2018-07-03  Tom Tromey  <tom@tromey.com>
6866
6867         * common/ptid.c (ptid_get_lwp): Remove.
6868         * common/ptid.h (ptid_get_lwp): Don't declare.
6869         * aarch64-linux-nat.c: Update.
6870         * ada-tasks.c: Update.
6871         * aix-thread.c: Update.
6872         * amd64-linux-nat.c: Update.
6873         * arm-linux-nat.c: Update.
6874         * corelow.c: Update.
6875         * fbsd-nat.c: Update.
6876         * fbsd-tdep.c: Update.
6877         * gnu-nat.c: Update.
6878         * i386-cygwin-tdep.c: Update.
6879         * i386-gnu-nat.c: Update.
6880         * i386-linux-nat.c: Update.
6881         * ia64-linux-nat.c: Update.
6882         * inf-ptrace.c: Update.
6883         * infrun.c: Update.
6884         * linux-fork.c: Update.
6885         * linux-nat.c: Update.
6886         * linux-tdep.c: Update.
6887         * linux-thread-db.c: Update.
6888         * mips-linux-nat.c: Update.
6889         * nat/aarch64-linux-hw-point.c: Update.
6890         * nat/aarch64-linux.c: Update.
6891         * nat/linux-btrace.c: Update.
6892         * nat/linux-osdata.c: Update.
6893         * nat/linux-procfs.c: Update.
6894         * nat/x86-linux-dregs.c: Update.
6895         * obsd-nat.c: Update.
6896         * ppc-fbsd-nat.c: Update.
6897         * ppc-linux-nat.c: Update.
6898         * procfs.c: Update.
6899         * python/py-infthread.c: Update.
6900         * ravenscar-thread.c: Update.
6901         * remote.c: Update.
6902         * s390-linux-nat.c: Update.
6903         * sol-thread.c: Update.
6904         * sol2-tdep.c: Update.
6905         * spu-linux-nat.c: Update.
6906         * x86-linux-nat.c: Update.
6907         * xtensa-linux-nat.c: Update.
6908
6909 2018-07-03  Tom Tromey  <tom@tromey.com>
6910
6911         * common/ptid.c (ptid_get_pid): Remove.
6912         * common/ptid.h (ptid_get_pid): Don't declare.
6913         * aarch64-linux-nat.c: Update.
6914         * ada-lang.c: Update.
6915         * aix-thread.c: Update.
6916         * alpha-bsd-nat.c: Update.
6917         * amd64-fbsd-nat.c: Update.
6918         * amd64-linux-nat.c: Update.
6919         * arm-linux-nat.c: Update.
6920         * arm-nbsd-nat.c: Update.
6921         * auxv.c: Update.
6922         * break-catch-syscall.c: Update.
6923         * breakpoint.c: Update.
6924         * bsd-uthread.c: Update.
6925         * corelow.c: Update.
6926         * ctf.c: Update.
6927         * darwin-nat.c: Update.
6928         * fbsd-nat.c: Update.
6929         * fbsd-tdep.c: Update.
6930         * gcore.c: Update.
6931         * gnu-nat.c: Update.
6932         * hppa-nbsd-nat.c: Update.
6933         * hppa-obsd-nat.c: Update.
6934         * i386-fbsd-nat.c: Update.
6935         * ia64-linux-nat.c: Update.
6936         * inf-ptrace.c: Update.
6937         * infcmd.c: Update.
6938         * inferior.c: Update.
6939         * inferior.h: Update.
6940         * inflow.c: Update.
6941         * infrun.c: Update.
6942         * linux-fork.c: Update.
6943         * linux-nat.c: Update.
6944         * linux-tdep.c: Update.
6945         * linux-thread-db.c: Update.
6946         * m68k-bsd-nat.c: Update.
6947         * mi/mi-interp.c: Update.
6948         * mi/mi-main.c: Update.
6949         * mips-linux-nat.c: Update.
6950         * mips-nbsd-nat.c: Update.
6951         * mips64-obsd-nat.c: Update.
6952         * nat/aarch64-linux-hw-point.c: Update.
6953         * nat/aarch64-linux.c: Update.
6954         * nat/linux-btrace.c: Update.
6955         * nat/linux-osdata.c: Update.
6956         * nat/linux-procfs.c: Update.
6957         * nat/x86-linux-dregs.c: Update.
6958         * nto-procfs.c: Update.
6959         * obsd-nat.c: Update.
6960         * ppc-linux-nat.c: Update.
6961         * ppc-nbsd-nat.c: Update.
6962         * ppc-obsd-nat.c: Update.
6963         * proc-service.c: Update.
6964         * procfs.c: Update.
6965         * python/py-inferior.c: Update.
6966         * python/py-infthread.c: Update.
6967         * ravenscar-thread.c: Update.
6968         * record.c: Update.
6969         * remote-sim.c: Update.
6970         * remote.c: Update.
6971         * rs6000-nat.c: Update.
6972         * s390-linux-nat.c: Update.
6973         * sh-nbsd-nat.c: Update.
6974         * sol-thread.c: Update.
6975         * sparc-nat.c: Update.
6976         * sparc64-tdep.c: Update.
6977         * spu-linux-nat.c: Update.
6978         * spu-tdep.c: Update.
6979         * target-debug.h: Update.
6980         * target.c: Update.
6981         * thread.c: Update.
6982         * tid-parse.c: Update.
6983         * tracefile-tfile.c: Update.
6984         * vax-bsd-nat.c: Update.
6985         * windows-nat.c: Update.
6986         * x86-linux-nat.c: Update.
6987         * x86-nat.c: Update.
6988
6989 2018-07-03  Tom Tromey  <tom@tromey.com>
6990
6991         * common/ptid.c (pid_to_ptid): Remove.
6992         * common/ptid.h (pid_to_ptid): Don't declare.
6993         * aix-thread.c: Update.
6994         * arm-linux-nat.c: Update.
6995         * common/ptid.c: Update.
6996         * common/ptid.h: Update.
6997         * corelow.c: Update.
6998         * ctf.c: Update.
6999         * darwin-nat.c: Update.
7000         * fbsd-nat.c: Update.
7001         * fork-child.c: Update.
7002         * gnu-nat.c: Update.
7003         * go32-nat.c: Update.
7004         * inf-ptrace.c: Update.
7005         * infcmd.c: Update.
7006         * inferior.c: Update.
7007         * infrun.c: Update.
7008         * linux-fork.c: Update.
7009         * linux-nat.c: Update.
7010         * nat/aarch64-linux-hw-point.c: Update.
7011         * nat/fork-inferior.c: Update.
7012         * nat/x86-linux-dregs.c: Update.
7013         * nto-procfs.c: Update.
7014         * obsd-nat.c: Update.
7015         * procfs.c: Update.
7016         * progspace.c: Update.
7017         * remote.c: Update.
7018         * rs6000-nat.c: Update.
7019         * s390-linux-nat.c: Update.
7020         * sol-thread.c: Update.
7021         * spu-linux-nat.c: Update.
7022         * target.c: Update.
7023         * top.c: Update.
7024         * tracefile-tfile.c: Update.
7025         * windows-nat.c: Update.
7026
7027 2018-07-03  Tom Tromey  <tom@tromey.com>
7028
7029         * common/ptid.h (ptid_build): Don't declare.
7030         * common/ptid.c (ptid_build): Remove.
7031         * aix-thread.c: Update.
7032         * bsd-kvm.c: Update.
7033         * bsd-uthread.c: Update.
7034         * common/agent.c: Update.
7035         * common/ptid.c: Update.
7036         * common/ptid.h: Update.
7037         * corelow.c: Update.
7038         * darwin-nat.c: Update.
7039         * fbsd-nat.c: Update.
7040         * gnu-nat.c: Update.
7041         * linux-fork.c: Update.
7042         * linux-nat.c: Update.
7043         * linux-thread-db.c: Update.
7044         * nat/linux-osdata.c: Update.
7045         * nat/linux-procfs.c: Update.
7046         * nto-procfs.c: Update.
7047         * obsd-nat.c: Update.
7048         * proc-service.c: Update.
7049         * procfs.c: Update.
7050         * ravenscar-thread.c: Update.
7051         * remote-sim.c: Update.
7052         * remote.c: Update.
7053         * sol-thread.c: Update.
7054         * target.c: Update.
7055         * windows-nat.c: Update.
7056
7057 2018-07-03  Tom Tromey  <tom@tromey.com>
7058
7059         * infrun.c (follow_exec): Use exit_inferior_silent.
7060         * inferior.c (exit_inferior_num_silent): Remove.
7061         * inferior.h (exit_inferior_num_silent): Don't declare.
7062
7063 2018-07-03  Tom Tromey  <tom@tromey.com>
7064
7065         PR cli/23340:
7066         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7067         inferior_ptid on error.
7068
7069 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7070             Simon Marchi  <simon.marchi@polymtl.ca>
7071
7072         PR tdep/8282
7073         * disasm.h (gdb_disassembler): Add
7074         `m_disassembler_options_holder'. member
7075         * disasm.c (get_all_disassembler_options): New function.
7076         (gdb_disassembler::gdb_disassembler): Use it.
7077         (gdb_buffered_insn_length_init_dis): Likewise.
7078         (gdb_buffered_insn_length): Adjust accordingly.
7079         (set_disassembler_options): Handle options with arguments.
7080         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7081         line if showing options with descriptions.
7082         (disassembler_options_completer): Adapt to using the
7083         `disasm_options_and_args_t' structure.
7084         * mips-tdep.c (mips_disassembler_options): New variable.
7085         (mips_disassembler_options_o32): Likewise.
7086         (mips_disassembler_options_n32): Likewise.
7087         (mips_disassembler_options_n64): Likewise.
7088         (gdb_print_insn_mips): Don't set `disassembler_options'.
7089         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7090         functions.
7091         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7092         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7093         `gdbarch_disassembler_options_implicit' and
7094         `gdbarch_valid_disassembler_options'.
7095         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7096         `disasm_options_and_args_t' structure.
7097         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7098         method.
7099         (valid_disassembler_options): Switch from `disasm_options_t' to
7100         the `disasm_options_and_args_t' structure.
7101         * NEWS: Document `set disassembler-options' support for the MIPS
7102         target.
7103         * gdbarch.h: Regenerate.
7104         * gdbarch.c: Regenerate.
7105
7106 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7107
7108         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7109
7110 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7111
7112         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7113         parameter in call to amd64_target_description.
7114         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7115         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7116         (amd64fbsd_init_abi): Likewise.
7117         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7118         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7119         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7120         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7121
7122 2018-06-29  Pedro Alves  <palves@redhat.com>
7123
7124         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7125         "segments" parameter.
7126         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7127         (_initialize_amd64_tdep): Update call to
7128         amd64_create_target_description.
7129         (amd64_target_description): Add "segments" parameter.  Adjust
7130         the implementation to use it.
7131         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7132         call to amd64_create_target_description.
7133         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7134         * gdb/arch/amd64.h (amd64_create_target_description): Add
7135         "segments" register.
7136         * gdb/arch/amd64.c (amd64_create_target_description): Add
7137         "segments" parameter.  Call create_feature_i386_64bit_segments
7138         only if SEGMENTS is true.
7139         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7140         call to amd64_create_target_description.
7141
7142 2018-06-29  Pedro Alves  <palves@redhat.com>
7143
7144         * thread.c (thread_target_id_str): New, factored out from ...
7145         (print_thread_info_1): ... here.  Use it to compute the max
7146         "Target Id" column width.
7147
7148 2018-06-29  Pedro Alves  <palves@redhat.com>
7149
7150         * remote.c (remote_target::extra_thread_info): Delete
7151         'display_buf' and 'n' locals.  from the cache, regardless of
7152         packet mechanims is in use.  Use cache for qThreadExtra and qP
7153         methods too.
7154
7155 2018-06-29  Pedro Alves  <palves@redhat.com>
7156
7157         * blockframe.c (find_pc_sect_containing_function): New function.
7158         * breakpoint.c (print_breakpoint_location): Don't call
7159         find_pc_sect_function.
7160         * linespec.c (create_sals_line_offset): Record the location's
7161         symbol in the sal.
7162         * linespec.c (convert_address_location_to_sals): Fill in sal's
7163         symbol with find_pc_sect_containing_function.
7164         * symtab.c (find_function_start_sal): Rename to ...
7165         (find_function_start_sal_1): ... this.
7166         (find_function_start_sal): Reimplement as wrapper around
7167         find_function_start_sal_1, and use
7168         find_pc_sect_containing_function to fill in the sal's symbol.
7169         (find_function_start_sal(symbol*, bool)): Adjust.
7170         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7171         comments.
7172         (find_pc_sect_containing_function): Declare.
7173
7174 2018-06-29  Pedro Alves  <palves@redhat.com>
7175
7176         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7177         true if the the location has no symbol.
7178
7179 2018-06-28  Tom Tromey  <tom@tromey.com>
7180
7181         * NEWS: Mention --enable-codesign.
7182         * silent-rules.mk (ECHO_SIGN): New variable.
7183         * configure.ac: Add --enable-codesign.
7184         * configure: Rebuild.
7185         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7186         (gdb$(EXEEXT)): Optionally invoke codesign.
7187
7188 2018-06-28  Pedro Alves  <palves@redhat.com>
7189
7190         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7191         comments.
7192         (switch_to_thread_no_regs): Adjust comment.
7193         * infcmd.c (stop_pc): Delete.
7194         (post_create_inferior, info_program_command): Replace references
7195         to stop_pc with references to thread_info->suspend.stop_pc.
7196         * inferior.h (stop_pc): Delete declaration.
7197         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7198         (handle_inferior_event_1, handle_signal_stop)
7199         (process_event_stop_test, keep_going_stepped_thread)
7200         (handle_step_into_function, handle_step_into_function_backward)
7201         (print_stop_location): Replace references to stop_pc with
7202         references to thread_info->suspend.stop_pc.
7203         (struct infcall_suspend_state) <stop_pc>: Delete field.
7204         (save_infcall_suspend_state, restore_infcall_suspend_state):
7205         Remove references to inf_stat->stop_pc.
7206         * linux-fork.c (fork_load_infrun_state): Likewise.
7207         * record-btrace.c (record_btrace_set_replay): Likewise.
7208         * record-full.c (record_full_goto_entry): Likewise.
7209         * remote.c (print_one_stopped_thread): Likewise.
7210         * target.c (target_resume): Extend comment.
7211         * thread.c (set_executing_thread): New.
7212         (set_executing): Use it.
7213         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7214         Remove references to stop_pc.
7215
7216 2018-06-28  Pedro Alves  <palves@redhat.com>
7217
7218         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7219         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7220
7221 2018-06-28  Tom Tromey  <tom@tromey.com>
7222
7223         * coffread.c (coff_symfile_finish): Update.
7224         * xcoffread.c (xcoff_symfile_finish): Update.
7225         * elfread.c (elf_symfile_finish): Update.
7226         * symfile.h (dwarf2_free_objfile): Don't declare.
7227         * dwarf2read.c (_initialize_dwarf2_read): Use
7228         register_objfile_data_with_cleanup.
7229         (dwarf2_free_objfile): Now static.  Change signature.
7230
7231 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7232
7233         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7234         option "-o" to add-symbol-file-load to add an offset to each
7235         section's load address.
7236         * symfile.c (set_objfile_default_section_offset): New function.
7237
7238 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7239
7240         * symfile.c (add_symbol_file_command): Make sure that sections
7241         with the same name are sorted in the same order.
7242
7243 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7244
7245         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7246         require the second argument.  If omitted, load sections at the
7247         addresses specified in the file.
7248
7249 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7250
7251         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7252         (_initialize_symfile): Add option "-o" to symbol-file to add an
7253         offset to each section of the symbol file.
7254
7255 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7256
7257         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7258
7259 2018-06-27  Tom Tromey  <tom@tromey.com>
7260
7261         * stack.c (_initialize_stack): Update "func" help text.
7262
7263 2018-06-27  Tom Tromey  <tom@tromey.com>
7264
7265         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7266         std::vector.
7267         (unwind_infopy_str, pyuw_create_unwind_info)
7268         (unwind_infopy_add_saved_register, pyuw_sniffer)
7269         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7270         Update.
7271         (struct saved_reg): Add constructor.
7272         <value>: Now a gdbpy_ref<>.
7273
7274 2018-06-27  Tom Tromey  <tom@tromey.com>
7275
7276         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7277
7278 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7279
7280         * gdb-gdb.py.in: Format using autopep8.
7281
7282 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7283
7284         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7285         (type_lookup_function): Recognize CORE_ADDR values.
7286
7287 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7288
7289         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7290         print tag_name.
7291
7292 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7293
7294         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7295         <__lt__>: Add.
7296
7297 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7298
7299         * gdb-gdb.py: Move to...
7300         * gdb-gdb.py.in: ... here.
7301         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7302         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7303         dependencies.
7304         (distclean): Remove gdb-gdb.py when cleaning.
7305         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7306         * configure: Re-generate.
7307
7308 2018-06-27  Pedro Alves  <palves@redhat.com>
7309
7310         * proc-service.c (get_ps_regcache): New.
7311         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7312         (ps_lsetfpregs): Use it.
7313
7314 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7315
7316         PR gdb/21695
7317         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7318         declaration.
7319         (dwarf_decode_lines_1): Adjust.
7320
7321 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7322
7323         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7324         override.
7325         <info_proc>: Likewise.
7326
7327 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7328
7329         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7330         to windows_fetch_one_register, and only handle the case of
7331         fetching one register.  Move the code that reloads the context
7332         and iterates over all registers if R is negative to...
7333         (windows_nat_target::fetch_registers): ... here.
7334         (do_windows_store_inferior_registers): Rename to
7335         windows_store_one_register, and only handle the case of storing
7336         one register.  Move the code that handles the case where r is
7337         negative to...
7338         (windows_nat_target::store_registers) ... here.
7339
7340 2018-06-26  Tom Tromey  <tom@tromey.com>
7341
7342         PR rust/22574:
7343         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7344         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7345         Update.
7346         (rust_internal_print_type): Add podata parameter.
7347         (rust_print_type): Update.
7348
7349 2018-06-26  Tom Tromey  <tom@tromey.com>
7350
7351         * typeprint.h (struct print_offset_data) <update, finish,
7352         maybe_print_hole>: New methods.
7353         <indentation>: New constant.
7354         * typeprint.c (print_offset_data::indentation): Define.
7355         (print_offset_data::maybe_print_hole, print_offset_data::update)
7356         (print_offset_data::finish): Move from c-typeprint.c and rename.
7357         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7358         (print_spaces_filtered_with_print_options): Update.
7359         (c_print_type_union_field_offset, maybe_print_hole)
7360         (c_print_type_struct_field_offset): Move to typeprint.c and
7361         rename.
7362         (c_type_print_base_struct_union): Update.
7363
7364 2018-06-25  Pedro Alves  <palves@redhat.com>
7365
7366         * gdbthread.h (thread_info_ref, delete_thread)
7367         (delete_thread_silent, first_thread_of_inferior)
7368         (any_thread_of_inferior, switch_to_thread)
7369         (enable_thread_stack_temporaries)
7370         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7371         (get_last_thread_stack_temporary)
7372         (value_in_thread_stack_temporaries, can_access_registers_thread):
7373         Spell out "struct thread_info" instead of just "thread_info".
7374         * inferior.h (notice_new_inferior): Likewise.
7375
7376 2018-06-25  Pedro Alves  <palves@redhat.com>
7377
7378         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7379         pass thread_info pointer to delete_thread.
7380         (windows_nat_target::detach): Pass inferior pointer to
7381         detach_inferior.
7382         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7383         delete_thread.
7384         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7385         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7386         and pass a thread_info pointer to delete_thread.
7387         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7388         pass thread_info pointer to delete_thread.
7389         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7390         delete_thread_silent call.
7391         * procfs.c (procfs_target::detach): Pass inferior pointer to
7392         detach_inferior.
7393         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7394         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7395         delete_thread_silent call.
7396         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7397         pass thread_info pointer to delete_thread.
7398         (windows_nat_target::detach): Pass inferior pointer to
7399         delete_inferior.
7400
7401 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7402
7403         * regcache.c (readable_regcache::read_part): Fix asserts.
7404         (reg_buffer::raw_collect_part): New function.
7405         (regcache::write_part): Fix asserts.
7406         (reg_buffer::raw_supply_part): New function.
7407         (regcache::transfer_regset_register): New helper function.
7408         (regcache::transfer_regset): Call new functions.
7409         (regcache_supply_regset): Use gdb_byte*.
7410         (regcache::supply_regset): Likewise.
7411         (regcache_collect_regset): Likewise.
7412         (regcache::collect_regset): Likewise.
7413         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7414         (reg_buffer::raw_supply_part): Likewise.
7415         (regcache::transfer_regset_register): Likewise.
7416         (regcache::transfer_regset): Use gdb_byte*.
7417
7418 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7419
7420         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7421
7422 2018-06-21  Pedro Alves  <palves@redhat.com>
7423
7424         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7425         instead of a ptid_t.  All callers adjusted.
7426         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7427         adjusted.
7428         (print_ada_task_info, display_current_task_id, task_command_1):
7429         Adjust.
7430         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7431         inferior_thread.
7432         (breakpoint_kind): Adjust.
7433         (remove_breakpoints_pid): Rename to ...
7434         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7435         pointer.  All callers adjusted.
7436         (bpstat_clear_actions): Use inferior_thread.
7437         (get_bpstat_thread): New.
7438         (bpstat_do_actions): Use it.
7439         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7440         to take a thread_info pointer.  All callers adjusted.
7441         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7442         (breakpoint_re_set_thread): Use inferior_thread.
7443         * breakpoint.h (struct inferior): Forward declare.
7444         (bpstat_stop_status): Update.
7445         (remove_breakpoints_pid): Delete.
7446         (remove_breakpoints_inf): New.
7447         * bsd-uthread.c (bsd_uthread_target::wait)
7448         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7449         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7450         (maint_btrace_packet_history_cmd)
7451         (maint_btrace_clear_packet_history_cmd): Adjust.
7452         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7453         inferior_thread.
7454         * cli/cli-interp.c: Include "inferior.h".
7455         * common/refcounted-object.h (struct
7456         refcounted_object_ref_policy): New.
7457         * compile/compile-object-load.c: Include gdbthread.h.
7458         (store_regs): Use inferior_thread.
7459         * corelow.c (core_target::close): Use current_inferior.
7460         (core_target_open): Adjust to use first_thread_of_inferior and use
7461         the current inferior.
7462         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7463         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7464         <thread>: ... this new field.  All references adjusted.
7465         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7466         Take a thread_info pointer instead of a ptid_t.
7467         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7468         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7469         thread_info pointer instead of a ptid_t.
7470         * elfread.c: Include "inferior.h".
7471         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7472         Use inferior_thread.
7473         * eval.c (evaluate_subexp): Likewise.
7474         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7475         inferior_thread.
7476         * gdb_proc_service.h (struct thread_info): Forward declare.
7477         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7478         <thread>: ... this new field.  All references adjusted.
7479         * gdbarch.h, gdbarch.c: Regenerate.
7480         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7481         'thread' parameter.  All implementations and callers adjusted.
7482         * gdbthread.h (thread_info) <set_running>: New method.
7483         (delete_thread, delete_thread_silent): Take a thread_info pointer
7484         instead of a ptid.
7485         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7486         (first_thread_of_process): Delete, replaced by ...
7487         (first_thread_of_inferior): ... this new function.  All callers
7488         adjusted.
7489         (any_live_thread_of_process): Delete, replaced by ...
7490         (any_live_thread_of_inferior): ... this new function.  All callers
7491         adjusted.
7492         (switch_to_thread, switch_to_no_thread): Declare.
7493         (is_executing): Delete.
7494         (enable_thread_stack_temporaries): Update comment.
7495         <enable_thread_stack_temporaries>: Take a thread_info pointer
7496         instead of a ptid_t.  Incref the thread.
7497         <~enable_thread_stack_temporaries>: Decref the thread.
7498         <m_ptid>: Delete
7499         <m_thr>: New.
7500         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7501         (get_last_thread_stack_temporary)
7502         (value_in_thread_stack_temporaries, can_access_registers_thread):
7503         Take a thread_info pointer instead of a ptid_t.  All callers
7504         adjusted.
7505         * infcall.c (get_call_return_value): Use inferior_thread.
7506         (run_inferior_call): Work with thread pointers instead of ptid_t.
7507         (call_function_by_hand_dummy): Work with thread pointers instead
7508         of ptid_t.  Use thread_info_ref.
7509         * infcmd.c (proceed_thread_callback): Access thread's state
7510         directly.
7511         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7512         access thread's state directly.
7513         (continue_command): Use inferior_thread.
7514         (info_program_command): Use find_thread_ptid and access thread
7515         state directly.
7516         (proceed_after_attach_callback): Use thread state directly.
7517         (notice_new_inferior): Take a thread_info pointer instead of a
7518         ptid_t.  All callers adjusted.
7519         (exit_inferior): Take an inferior pointer instead of a pid.  All
7520         callers adjusted.
7521         (exit_inferior_silent): New.
7522         (detach_inferior): Delete.
7523         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7524         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7525         (detach_inferior_command, kill_inferior_command): Use
7526         find_inferior_id instead of valid_gdb_inferior_id and
7527         gdb_inferior_id_to_pid.
7528         (inferior_command): Use inferior and thread pointers.
7529         * inferior.h (struct thread_info): Forward declare.
7530         (notice_new_inferior): Take a thread_info pointer instead of a
7531         ptid_t.  All callers adjusted.
7532         (detach_inferior): Delete declaration.
7533         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7534         instead of a pid.  All callers adjusted.
7535         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7536         (valid_gdb_inferior_id): Delete.
7537         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7538         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7539         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7540         ...
7541         <inf>: ... this new field.
7542         <step_ptid>: Delete, replaced by ...
7543         <step_thread>: ... this new field.
7544         (get_displaced_stepping_state): Take an inferior pointer instead
7545         of a pid.  All callers adjusted.
7546         (displaced_step_in_progress_any_inferior): Adjust.
7547         (displaced_step_in_progress_thread): Take a thread pointer instead
7548         of a ptid_t.  All callers adjusted.
7549         (displaced_step_in_progress, add_displaced_stepping_state): Take
7550         an inferior pointer instead of a pid.  All callers adjusted.
7551         (get_displaced_step_closure_by_addr): Adjust.
7552         (remove_displaced_stepping_state): Take an inferior pointer
7553         instead of a pid.  All callers adjusted.
7554         (displaced_step_prepare_throw, displaced_step_prepare)
7555         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7556         All callers adjusted.
7557         (start_step_over): Adjust.
7558         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7559         displaced step queue.
7560         (do_target_resume): Adjust.
7561         (fetch_inferior_event): Use inferior_thread.
7562         (context_switch, get_inferior_stop_soon): Take an
7563         execution_control_state pointer instead of a ptid_t.  All callers
7564         adjusted.
7565         (switch_to_thread_cleanup): Delete.
7566         (stop_all_threads): Use scoped_restore_current_thread.
7567         * inline-frame.c: Include "gdbthread.h".
7568         (inline_state) <inline_state>: Take a thread pointer instead of a
7569         ptid_t.  All callers adjusted.
7570         <ptid>: Delete, replaced by ...
7571         <thread>: ... this new field.
7572         (find_inline_frame_state): Take a thread pointer instead of a
7573         ptid_t.  All callers adjusted.
7574         (skip_inline_frames, step_into_inline_frame)
7575         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7576         pointer instead of a ptid_t.  All callers adjusted.
7577         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7578         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7579         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7580         pointers directly.
7581         * linux-nat.c (get_detach_signal): Likewise.
7582         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7583         (thread_db_notice_clone): Adjust.
7584         (thread_db_find_new_threads_silently)
7585         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7586         a thread pointer instead of a ptid_t.  All callers adjusted.
7587         * mi/mi-cmd-var.c: Include "inferior.h".
7588         (mi_cmd_var_update_iter): Update to use thread pointers.
7589         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7590         inferior directly.
7591         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7592         out to ...
7593         (mi_output_running): ... this new function.
7594         (mi_on_resume_1): Adjust to use it.
7595         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7596         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7597         directly.
7598         (interrupt_thread_callback): : Adjust to use thread and inferior
7599         pointers.
7600         * proc-service.c: Include "gdbthread.h".
7601         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7602         * progspace-and-thread.c: Include "inferior.h".
7603         * progspace.c: Include "inferior.h".
7604         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7605         hold a reference to an inferior_object.
7606         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7607         inferior_thread.
7608         * python/py-inferior.c (struct inferior_object): Give the type a
7609         tag name instead of a typedef.
7610         (python_on_normal_stop): No need to check if the current thread is
7611         listed.
7612         (inferior_to_inferior_object): Change return type to
7613         inferior_object.  All callers adjusted.
7614         (find_thread_object): Delete, bits factored out to ...
7615         (thread_to_thread_object): ... this new function.
7616         * python/py-infthread.c (create_thread_object): Use
7617         inferior_to_inferior_object.
7618         (thpy_is_stopped): Use thread pointer directly.
7619         (gdbpy_selected_thread): Use inferior_thread.
7620         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7621         field, replaced with ...
7622         <thread>: ... this new field.  All users adjusted.
7623         (btpy_insn_or_gap_new): Drop const.
7624         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7625         callers adjusted.
7626         * python/py-record.c: Include "gdbthread.h".
7627         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7628         a ptid_t.  All callers adjusted.
7629         (gdbpy_current_recording): Use inferior_thread.
7630         * python/py-record.h (recpy_record_object) <ptid>: Delete
7631         field, replaced with ...
7632         <thread>: ... this new field.  All users adjusted.
7633         (recpy_element_object) <ptid>: Delete
7634         field, replaced with ...
7635         <thread>: ... this new field.  All users adjusted.
7636         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7637         a ptid_t.  All callers adjusted.
7638         * python/py-threadevent.c: Include "gdbthread.h".
7639         (get_event_thread): Use thread_to_thread_object.
7640         * python/python-internal.h (struct inferior_object): Forward
7641         declare.
7642         (find_thread_object, find_inferior_object): Delete declarations.
7643         (thread_to_thread_object, inferior_to_inferior_object): New
7644         declarations.
7645         * record-btrace.c: Include "inferior.h".
7646         (require_btrace_thread): Use inferior_thread.
7647         (record_btrace_frame_sniffer)
7648         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7649         (get_thread_current_frame): Use scoped_restore_current_thread and
7650         switch_to_thread.
7651         (get_thread_current_frame): Use thread pointer directly.
7652         (record_btrace_replay_at_breakpoint): Use thread's inferior
7653         pointer directly.
7654         * record-full.c: Include "inferior.h".
7655         * regcache.c: Include "gdbthread.h".
7656         (get_thread_arch_regcache): Use the inferior's address space
7657         directly.
7658         (get_thread_regcache, registers_changed_thread): New.
7659         * regcache.h (get_thread_regcache(thread_info *thread)): New
7660         overload.
7661         (registers_changed_thread): New.
7662         (remote_target) <remote_detach_1>: Swap order of parameters.
7663         (remote_add_thread): <remote_add_thread>: Return the new thread.
7664         (get_remote_thread_info(ptid_t)): New overload.
7665         (remote_target::remote_notice_new_inferior): Use thread pointers
7666         directly.
7667         (remote_target::process_initial_stop_replies): Use
7668         thread_info::set_running.
7669         (remote_target::remote_detach_1, remote_target::detach)
7670         (extended_remote_target::detach): Adjust.
7671         * stack.c (frame_show_address): Use inferior_thread.
7672         * target-debug.h (target_debug_print_thread_info_pp): New.
7673         * target-delegates.c: Regenerate.
7674         * target.c (default_thread_address_space): Delete.
7675         (memory_xfer_partial_1): Use current_inferior.
7676         (target_detach): Use current_inferior.
7677         (target_thread_address_space): Delete.
7678         (generic_mourn_inferior): Use current_inferior.
7679         * target.h (struct target_ops) <thread_address_space>: Delete.
7680         (target_thread_address_space): Delete.
7681         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7682         pointers directly.
7683         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7684         thread pointer instead of a ptid_t.  Adjust all callers.
7685         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7686         (first_thread_of_process): Delete, replaced by ...
7687         (first_thread_of_inferior): ... this new function.  All callers
7688         adjusted.
7689         (any_thread_of_process): Rename to ...
7690         (any_thread_of_inferior): ... this, and take an inferior pointer.
7691         (any_live_thread_of_process): Rename to ...
7692         (any_live_thread_of_inferior): ... this, and take an inferior
7693         pointer.
7694         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7695         (value_in_thread_stack_temporaries)
7696         (get_last_thread_stack_temporary): Take a thread pointer instead
7697         of a ptid_t.  Adjust all callers.
7698         (thread_info::set_running): New.
7699         (validate_registers_access): Use inferior_thread.
7700         (can_access_registers_ptid): Rename to ...
7701         (can_access_registers_thread): ... this, and take a thread
7702         pointer.
7703         (print_thread_info_1): Adjust to compare thread pointers instead
7704         of ptids.
7705         (switch_to_no_thread, switch_to_thread): Make extern.
7706         (scoped_restore_current_thread::~scoped_restore_current_thread):
7707         Use m_thread pointer directly.
7708         (scoped_restore_current_thread::scoped_restore_current_thread):
7709         Use inferior_thread.
7710         (thread_command): Use thread pointer directly.
7711         (thread_num_make_value_helper): Use inferior_thread.
7712         * top.c (execute_command): Use inferior_thread.
7713         * tui/tui-interp.c: Include "inferior.h".
7714         * varobj.c (varobj_create): Use inferior_thread.
7715         (value_of_root_1): Use find_thread_global_id instead of
7716         global_thread_id_to_ptid.
7717
7718 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7719
7720         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7721         possible.
7722         (regcache::write_part): Likewise.
7723         (readable_regcache::cooked_read_part): Update comment.
7724         (readable_regcache::cooked_write_part): Likewise.
7725         * regcache.h: (readable_regcache::read_part): Likewise.
7726         (regcache::write_part): Likewise.
7727
7728 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7729             Dirk Schubert  <dirk.schubert@arm.com>
7730
7731         * aarch64-linux-nat.c (post_attach): New.
7732         (aarch64_linux_nat_target::post_attach): Override post_attach to
7733         record the number of hardware debug registers.
7734
7735 2018-06-20  Tom Tromey  <tom@tromey.com>
7736
7737         * python/py-param.c (add_setshow_generic): Make parameters const.
7738         (parmpy_init): Update.
7739
7740 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7741
7742         * regcache.h (regcache_cooked_read_ftype): Rename to...
7743         (register_read_ftype): ...this, change type to function_view.
7744         (class reg_buffer) <save>: Remove src parameter.
7745         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7746         parameter non-const in first overload.  Remove src parameter in
7747         second overload.
7748         * regcache.c (do_cooked_read): Remove.
7749         (readonly_detached_regcache::readonly_detached_regcache): Make
7750         parameter non-const, adjust call to other constructor.
7751         (reg_buffer::save): Remove src parameter.
7752         * frame.c (do_frame_register_read): Remove.
7753         (frame_save_as_regcache): Use lambda function.
7754         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7755         parameter to ppu2spu_data *.
7756         (ppu2spu_sniffer): Use lambda function.
7757
7758 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7759
7760         * record-full.c (record_full_target::insert_breakpoint): Remove
7761         "struct" keyword, add const.
7762
7763 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7764
7765         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7766         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7767         * configure.ac: Remove AC_PREREQ, add missing quoting.
7768         * gnulib/configure.ac: Modernize usage of
7769         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7770         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7771         (AUTOMAKE_VERSION): Bump to 1.15.1.
7772         * configure: Re-generate.
7773         * config.in: Re-generate.
7774         * aclocal.m4: Re-generate.
7775         * gnulib/aclocal.m4: Re-generate.
7776         * gnulib/config.in: Re-generate.
7777         * gnulib/configure: Re-generate.
7778         * gnulib/import/Makefile.in: Re-generate.
7779
7780 2018-06-19  Pedro Alves  <palves@redhat.com>
7781
7782         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7783         (lookup_minimal_symbol_by_pc_section): ... here with
7784         gdb_assert_not_reached added.
7785
7786 2018-06-19  Pedro Alves  <palves@redhat.com>
7787
7788         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7789         parameter with a block parameter.  Compare location's block symbol
7790         with the frame's block instead of addresses.
7791         (skip_inline_frames): Pass the current block instead of the
7792         frame's address.  Break out as soon as we determine the frame
7793         should not be skipped.
7794
7795 2018-06-18  Tom Tromey  <tom@tromey.com>
7796
7797         * solib-aix.c (solib_aix_get_section_offsets): Return
7798         unique_xmalloc_ptr.
7799         (solib_aix_solib_create_inferior_hook): Update.
7800
7801 2018-06-18  Tom Tromey  <tom@tromey.com>
7802
7803         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7804
7805 2018-06-18  Tom Tromey  <tom@tromey.com>
7806
7807         * solib-frv.c (frv_relocate_main_executable): Use
7808         unique_xmalloc_ptr.
7809         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7810         unique_xmalloc_ptr.
7811
7812 2018-06-18  Tom Tromey  <tom@tromey.com>
7813
7814         * objfiles.h (inhibit_section_map_updates): Update.
7815         (resume_section_map_updates, resume_section_map_updates_cleanup):
7816         Remove.
7817         * solib-svr4.c (svr4_handle_solib_event): Update.
7818         * objfiles.c (inhibit_section_map_updates): Return
7819         scoped_restore_tmpl<int>.
7820         (resume_section_map_updates, resume_section_map_updates_cleanup):
7821         Remove.
7822
7823 2018-06-18  Tom Tromey  <tom@tromey.com>
7824
7825         * valprint.h (read_string): Update.
7826         * valprint.c (read_string): Change type of "buffer".
7827         (val_print_string): Update.
7828         * python/py-value.c (valpy_string): Update.
7829         * language.h (struct language_defn) <la_get_string>: Change
7830         type of "buffer".
7831         (default_get_string, c_get_string): Update.
7832         * language.c (default_get_string): Change type of "buffer".
7833         * guile/scm-value.c (gdbscm_value_to_string): Update.
7834         * c-lang.c (c_get_string): Change type of "buffer".
7835
7836 2018-06-18  Tom Tromey  <tom@tromey.com>
7837
7838         * ser-mingw.c (struct pipe_state_destroyer): New.
7839         (pipe_state_up): New typedef.
7840         (cleanup_pipe_state): Remove.
7841         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7842
7843 2018-06-18  Tom Tromey  <tom@tromey.com>
7844
7845         * rust-lang.h (rust_yyerror): Don't declare.
7846         * rust-lang.c (rust_language_defn): Update.
7847         * rust-exp.y (yyerror): Now static.
7848         * parse.c (parse_exp_in_context_1): Update.
7849         * p-lang.h (p_yyerror): Don't declare.
7850         * p-lang.c (p_language_defn): Update.
7851         * p-exp.y (yyerror): Now static.
7852         * opencl-lang.c (opencl_language_defn): Update.
7853         * objc-lang.c (objc_language_defn): Update.
7854         * m2-lang.h (m2_yyerror): Don't declare.
7855         * m2-lang.c (m2_language_defn): Update.
7856         * m2-exp.y (yyerror): Now static.
7857         * language.h (struct language_defn) <la_error>: Remove.
7858         * language.c (unk_lang_error): Remove.
7859         (unknown_language_defn, auto_language_defn): Remove.
7860         * go-lang.h (go_yyerror): Don't declare.
7861         * go-lang.c (go_language_defn): Update.
7862         * go-exp.y (yyerror): Now static.
7863         * f-lang.h (f_yyerror): Don't declare.
7864         * f-lang.c (f_language_defn): Update.
7865         * f-exp.y (yyerror): Now static.
7866         * d-lang.h (d_yyerror): Don't declare.
7867         * d-lang.c (d_language_defn): Update.
7868         * d-exp.y (yyerror): Now static.
7869         * c-lang.h (c_yyerror): Don't declare.
7870         * c-lang.c (c_language_defn, cplus_language_defn)
7871         (asm_language_defn, minimal_language_defn): Update.
7872         * c-exp.y (yyerror): Now static.
7873         * ada-lang.h (ada_yyerror): Don't declare.
7874         * ada-lang.c (ada_language_defn): Update.
7875         * ada-exp.y (yyerror): Now static.
7876
7877 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7878
7879         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7880         (store_sveregs_to_thread): Likewise.
7881         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7882         (aarch64_linux_store_inferior_registers): Likewise.
7883         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7884         function.
7885         (aarch64_sve_regs_copy_to_regcache): Likewise.
7886         (aarch64_sve_regs_copy_from_regcache): Likewise.
7887         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7888         declaration.
7889         (aarch64_sve_regs_copy_to_regcache): Likewise.
7890         (aarch64_sve_regs_copy_from_regcache): Likewise.
7891         (sve_context): Structure from Linux headers.
7892         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7893         (SVE_SIG_ZREG_SIZE): Likewise.
7894         (SVE_SIG_PREG_SIZE): Likewise.
7895         (SVE_SIG_FFR_SIZE): Likewise.
7896         (SVE_SIG_REGS_OFFSET): Likewise.
7897         (SVE_SIG_ZREGS_OFFSET): Likewise.
7898         (SVE_SIG_ZREG_OFFSET): Likewise.
7899         (SVE_SIG_ZREGS_SIZE): Likewise.
7900         (SVE_SIG_PREGS_OFFSET): Likewise.
7901         (SVE_SIG_PREG_OFFSET): Likewise.
7902         (SVE_SIG_PREGS_SIZE): Likewise.
7903         (SVE_SIG_FFR_OFFSET): Likewise.
7904         (SVE_SIG_REGS_SIZE): Likewise.
7905         (SVE_SIG_CONTEXT_SIZE): Likewise.
7906         (SVE_PT_REGS_MASK): Likewise.
7907         (SVE_PT_REGS_FPSIMD): Likewise.
7908         (SVE_PT_REGS_SVE): Likewise.
7909         (SVE_PT_VL_INHERIT): Likewise.
7910         (SVE_PT_VL_ONEXEC): Likewise.
7911         (SVE_PT_REGS_OFFSET): Likewise.
7912         (SVE_PT_FPSIMD_OFFSET): Likewise.
7913         (SVE_PT_FPSIMD_SIZE): Likewise.
7914         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7915         (SVE_PT_SVE_PREG_SIZE): Likewise.
7916         (SVE_PT_SVE_FFR_SIZE): Likewise.
7917         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7918         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7919         (__SVE_SIG_TO_PT): Likewise.
7920         (SVE_PT_SVE_OFFSET): Likewise.
7921         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7922         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7923         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7924         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7925         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7926         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7927         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7928         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7929         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7930         (SVE_PT_SVE_SIZE): Likewise.
7931         (SVE_PT_SIZE): Likewise.
7932         (HAS_SVE_STATE): New define.
7933
7934 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7935
7936         * nat/aarch64-sve-linux-sigcontext.h: New file.
7937         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7938         new files.
7939         (SVE_VQ_MIN): Likewise.
7940         (SVE_VQ_MAX): Likewise.
7941         (SVE_VL_MIN): Likewise.
7942         (SVE_VL_MAX): Likewise.
7943         (SVE_NUM_ZREGS): Likewise.
7944         (SVE_NUM_PREGS): Likewise.
7945         (sve_vl_valid): Likewise.
7946         (struct user_sve_header): Likewise.
7947
7948 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7949             Richard Bunt <Richard.Bunt@arm.com>
7950
7951         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7952         was requested by GDB.
7953
7954 2018-06-15  Tom de Vries  <tdevries@suse.de>
7955
7956         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7957
7958 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7959
7960         * gnulib/update-gnulib.sh: Print expected versions of
7961         autoconf/aclocal.
7962
7963 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7964
7965         * arch-utils.c (default_type_align): Use type_length_units.
7966         * gdbtypes.c (type_align): Use type_length_units.
7967
7968 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7969
7970         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7971         of 'define' command.
7972
7973 2018-06-14  Tom de Vries  <tdevries@suse.de>
7974
7975         PR cli/22573
7976         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7977         get_no_prettyformat_print_options.
7978
7979 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7980
7981         * sparc-nat.h: Include target.h.
7982         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7983         <fetch_registers>: Remove this argument in function call.
7984         <store_registers>: Remove this argument in function call, remove
7985         extra semicolon.
7986         <low_forget_process>: Call sparc64_forget_process instead of
7987         sparc_forget_process.
7988
7989 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7990
7991         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7992         (procfs_target::make_corefile_notes): Adjust to new
7993         target_read_alloc return type.
7994
7995 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7996             Stephen Roberts  <stephen.roberts@arm.com>
7997
7998         PR gdb/22882
7999         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8000         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8001         Move should_notify_stop local into more inner scope.
8002
8003 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8004             Stephen Roberts  <stephen.roberts@arm.com>
8005
8006         PR gdb/22882
8007         * infrun.c (resume_1): Add call to mark_async_event_handler.
8008
8009 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8010
8011         * infrun.c (do_target_wait): Change old version of $pc printed.
8012
8013 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8014
8015         * dwarf2read.c (read_index_from_section): Rename to...
8016         (read_gdb_index_from_section): ... this, update all callers.
8017         (dwarf2_read_index): Rename to...
8018         (dwarf2_read_gdb_index): ... this, update all callers.
8019
8020 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8021
8022         * hppa-linux-nat.c
8023         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8024         hppa_linux_nat_target::fetch_registers.
8025
8026 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8027
8028         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8029         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8030         (AARCH64_DWARF_SVE_FFR): Likewise.
8031         (AARCH64_DWARF_SVE_P0): Likewise.
8032         (AARCH64_DWARF_SVE_Z0): Likewise.
8033
8034 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8035
8036         * common/common-regcache.h (raw_compare): New function.
8037         * regcache.c (regcache::raw_compare): Likewise.
8038         * regcache.h (regcache::raw_compare): New declaration.
8039
8040 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8041
8042         * common/common-regcache.h (reg_buffer_common): New structure.
8043         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8044         (reg_buffer::raw_supply): Likewise.
8045         (reg_buffer::raw_supply_integer): Likewise.
8046         (reg_buffer::raw_supply_zeroed): Likewise.
8047         (reg_buffer::raw_collect): Likewise.
8048         (reg_buffer::raw_collect_integer): Likewise.
8049         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8050         (reg_buffer::raw_supply): Likewise.
8051         (reg_buffer::raw_supply_integer): Likewise.
8052         (reg_buffer::raw_supply_zeroed): Likewise.
8053         (reg_buffer::raw_collect): Likewise.
8054         (reg_buffer::raw_collect_integer): Likewise.
8055
8056 2018-06-10  Tom Tromey  <tom@tromey.com>
8057
8058         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8059         (class remote_state) <stop_reply_queue>: Now std::vector.
8060         (remote_state::~remote_state)
8061         (remote_target::stop_reply_queue_length): Update.
8062         (struct queue_iter_param, remove_child_of_pending_fork)
8063         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8064         (check_pending_event_prevents_wildcard_vcont_callback)
8065         (remove_stop_reply_for_inferior)
8066         (remove_stop_reply_of_remote_state)
8067         (remote_notif_remove_once_on_match)
8068         (stop_reply_match_ptid_and_ws)
8069         (remote_kill_child_of_pending_fork): Remove.
8070         (remote_target::remove_new_fork_children)
8071         (remote_target::check_pending_events_prevent_wildcard_vcont)
8072         (remote_target::discard_pending_stop_replies)
8073         (remote_target::discard_pending_stop_replies_in_queue)
8074         (remote_target::remote_notif_remove_queued_reply)
8075         (remote_target::queued_stop_reply)
8076         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8077         (remote_target::wait, remote_target::kill_new_fork_children)
8078         (remote_target::async): Update.
8079
8080 2018-06-10  Tom Tromey  <tom@tromey.com>
8081
8082         * record-full.c (record_full_arch_list_cleanups): Remove.
8083         (record_full_message): Use try/catch.
8084         (record_full_wait_cleanups): Remove.
8085         (record_full_wait_1): Use try/catch.
8086         (record_full_restore): Likewise.
8087
8088 2018-06-10  Tom Tromey  <tom@tromey.com>
8089
8090         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8091         declare VEC.  Add constructor.
8092         <in_target_beneath>: Now bool.
8093         (record_full_breakpoints): Now a std::vector, static.
8094         (record_full_sync_record_breakpoints)
8095         (record_full_init_record_breakpoints)
8096         (record_full_target::insert_breakpoint)
8097         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8098
8099 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8100
8101         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8102         * serial.c (serial_interface_lookup): Remove struct keyword.
8103
8104 2018-06-10  Tom Tromey  <tom@tromey.com>
8105
8106         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8107         method.
8108         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8109         a method.
8110         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8111         method.
8112         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8113         "beneath" as a method.
8114         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8115         Use "beneath" as a method.
8116
8117 2018-06-10  Tom Tromey  <tom@tromey.com>
8118
8119         * tracefile.c (struct trace_file_writer_deleter): New.
8120         <operator()>: Rename from trace_file_writer_xfree.
8121         (trace_file_writer_up): New typedef.
8122         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8123
8124 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8125
8126         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8127         <m_registers, m_register_status>: Change type to
8128         std::unique_ptr.
8129         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8130         XCNEWVEC.
8131
8132 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8133
8134         * common/common-regcache.h (enum register_status): Add
8135         underlying type "signed char".
8136         * regcache.h (reg_buffer) <m_register_status>: Change type to
8137         register_status *.
8138         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8139         register_status instead of signed char.
8140         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8141         (reg_buffer::get_register_status): Remove cast.
8142         (readable_regcache::raw_read): Remove cast.
8143         (readable_regcache::cooked_read): Remove cast.
8144
8145 2018-06-09  Tom Tromey  <tom@tromey.com>
8146
8147         * source.c (reverse_search_command, forward_search_command): Use
8148         scoped_fd.
8149
8150 2018-06-09  Tom Tromey  <tom@tromey.com>
8151
8152         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8153         (serial_ops_list): Now static, std::vector.
8154         (serial_interface_lookup, serial_add_interface): Update.
8155
8156 2018-06-09  Tom Tromey  <tom@tromey.com>
8157
8158         * dwarf2read.c (process_cu_includes): Update.
8159         (process_full_comp_unit): Update.
8160         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8161         std::vector.
8162
8163 2018-06-08  Paul Koning  <paul_koning@dell.com>
8164
8165         PR gdb/23252
8166
8167         * python/python.c (do_start_initialization):
8168         Avoid call to internal Python API.
8169         (init__gdb_module): New function.
8170
8171 2018-06-08  Gary Benson <gbenson@redhat.com>
8172
8173         * linux-thread-db.c (valprint.h): New include.
8174         (struct check_thread_db_info): New structure.
8175         (check_thread_db_on_load, tdb_testinfo): New static globals.
8176         (check_thread_db, check_thread_db_callback): New functions.
8177         (try_thread_db_load_1): Run integrity checks if requested.
8178         (maintenance_check_libthread_db): New function.
8179         (_initialize_thread_db): Register "maint check libthread-db"
8180         and "maint set/show check-libthread-db".
8181         * NEWS: Mention the above new commands.
8182
8183 2018-06-08  Tom Tromey  <tom@tromey.com>
8184
8185         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8186         now a method.
8187
8188 2018-06-08  Tom Tromey  <tom@tromey.com>
8189
8190         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8191
8192 2018-06-08  Tom Tromey  <tom@tromey.com>
8193
8194         * common/btrace-common.h (struct btrace_data): Add constructor,
8195         destructor, move assignment operator.
8196         <empty, clear, fini>: New methods.
8197         <format>: Initialize.
8198         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8199         (btrace_data_empty): Don't declare.
8200         * common/btrace-common.c (btrace_data_init): Remove.
8201         (btrace_data::fini): Rename from btrace_data_fini.
8202         (btrace_data::empty): Rename from btrace_data_empty.
8203         (btrace_data::clear): Rename from btrace_data_clear.  Return
8204         bool.
8205         * btrace.h (make_cleanup_btrace_data): Don't declare.
8206         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8207         (parse_xml_btrace): Update.
8208         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8209         (maint_btrace_clear_packet_history_cmd): Update.
8210
8211 2018-06-07  Pedro Alves  <palves@redhat.com>
8212
8213         * target.h (target_ops) <beneath>: Now a method.  All references
8214         updated.
8215         (class target_stack): New.
8216         * target.c (g_target_stack): New.
8217         (g_current_top_target): Delete.
8218         (current_top_target): Get the top target out of g_target_stack.
8219         (target_stack::push, target_stack::unpush): New.
8220         (push_target, unpush_target): Reimplement.
8221         (target_is_pushed): Reimplement in terms of g_target_stack.
8222         (target_ops::beneath, target_stack::find_beneath): New.
8223
8224 2018-06-07  Pedro Alves  <palves@redhat.com>
8225
8226         * target.h (find_target_beneath): Delete declaration.
8227         * target.c (find_target_beneath): Delete definition.
8228         * aix-thread.c: All callers of find_target_beneath adjusted to
8229         call target_ops::beneath instead.
8230         * bsd-uthread.c: Likewise.
8231         * linux-thread-db.c: Likewise.
8232         * ravenscar-thread.c: Likewise.
8233         * sol-thread.c: Likewise.
8234         * spu-multiarch.c: Likewise.
8235
8236 2018-06-07  Pedro Alves  <palves@redhat.com>
8237
8238         * target.h (target_ops) <beneath>: Now a method.  All references
8239         updated.
8240         (target_ops) <m_beneath>: New.
8241         * target.c (target_ops::beneath): New.
8242         * corelow.c: Adjust all references to target_ops::beneath.
8243         * linux-thread-db.c: Likewise.
8244         * make-target-delegates: Likewise.
8245         * record-btrace.c: Likewise.
8246         * record-full.c: Likewise.
8247         * remote.c: Likewise.
8248         * target.c: Likewise.
8249         * target-delegates.c: Regenerate.
8250
8251 2018-06-07  Pedro Alves  <palves@redhat.com>
8252
8253         * target.h (target_stack): Delete.
8254         (current_top_target): Declare function.
8255         * target.c (target_stack): Delete.
8256         (g_current_top_target): New.
8257         (current_top_target): New function.
8258         * auxv.c: Use current_top_target instead of target_stack
8259         throughout.
8260         * avr-tdep.c: Likewise.
8261         * breakpoint.c: Likewise.
8262         * corefile.c: Likewise.
8263         * elfread.c: Likewise.
8264         * eval.c: Likewise.
8265         * exceptions.c: Likewise.
8266         * frame.c: Likewise.
8267         * gdbarch-selftests.c: Likewise.
8268         * gnu-v3-abi.c: Likewise.
8269         * ia64-tdep.c: Likewise.
8270         * ia64-vms-tdep.c: Likewise.
8271         * infcall.c: Likewise.
8272         * infcmd.c: Likewise.
8273         * infrun.c: Likewise.
8274         * linespec.c: Likewise.
8275         * linux-tdep.c: Likewise.
8276         * minsyms.c: Likewise.
8277         * ppc-linux-nat.c: Likewise.
8278         * ppc-linux-tdep.c: Likewise.
8279         * procfs.c: Likewise.
8280         * regcache.c: Likewise.
8281         * remote.c: Likewise.
8282         * rs6000-tdep.c: Likewise.
8283         * s390-linux-nat.c: Likewise.
8284         * s390-tdep.c: Likewise.
8285         * solib-aix.c: Likewise.
8286         * solib-darwin.c: Likewise.
8287         * solib-dsbt.c: Likewise.
8288         * solib-spu.c: Likewise.
8289         * solib-svr4.c: Likewise.
8290         * solib-target.c: Likewise.
8291         * sparc-tdep.c: Likewise.
8292         * sparc64-tdep.c: Likewise.
8293         * spu-tdep.c: Likewise.
8294         * symfile.c: Likewise.
8295         * symtab.c: Likewise.
8296         * target-descriptions.c: Likewise.
8297         * target-memory.c: Likewise.
8298         * target.c: Likewise.
8299         * target.h: Likewise.
8300         * tracefile-tfile.c: Likewise.
8301         * tracepoint.c: Likewise.
8302         * valops.c: Likewise.
8303         * valprint.c: Likewise.
8304         * value.c: Likewise.
8305         * windows-tdep.c: Likewise.
8306         * mi/mi-main.c: Likewise.
8307
8308 2018-06-07  Tom Tromey  <tom@tromey.com>
8309
8310         * valprint.h (build_address_symbolic): Declare.
8311         * printcmd.c (print_address_symbolic): Update.
8312         (build_address_symbolic): Change "name" and "filename" to
8313         std::string.
8314         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8315         Update.
8316         * defs.h (build_address_symbolic): Remove declaration.
8317
8318 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8319
8320         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8321         (aarch64_vnv_type): Add function.
8322         (aarch64_pseudo_register_name): Add V regs for SVE.
8323         (aarch64_pseudo_register_type): Likewise.
8324         (aarch64_pseudo_register_reggroup_p): Likewise.
8325         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8326         (aarch64_pseudo_read_value): Add V regs for SVE.
8327         (aarch64_pseudo_write_2): Use V0 offset for SVE
8328         (aarch64_pseudo_write): Add V regs for SVE.
8329         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8330
8331 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8332
8333         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8334         (sve_vl_from_vq): Likewise.
8335
8336 2018-06-05  Tom Tromey  <tom@tromey.com>
8337
8338         * cli/cli-cmds.c (show_version): Update.
8339         * top.c (print_gdb_version): Add "interactive" parameter.
8340         Update.
8341         * main.c (captured_main_1): Update.
8342         * top.h (print_gdb_version): Add "interactive" parameter and a
8343         comment.
8344
8345 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8346
8347         * common/enum-flags.h: Add trailing semicolon to example in
8348         comment.
8349
8350 2018-06-05  Tom Tromey  <tom@tromey.com>
8351
8352         PR cli/12326:
8353         * NEWS: Add entry about pager.
8354         * utils.c (pagination_disabled_for_command): New global.
8355         (prompt_for_continue): Allow "c" response to prompt.
8356         (reinitialize_more_filter): Clear
8357         pagination_disabled_for_command.
8358         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8359
8360 2018-06-04  Tom Tromey  <tom@tromey.com>
8361
8362         * ada-lang.h (ada_lookup_symbol_list): Update.
8363         * ada-lang.c (resolve_subexp): Update.
8364         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8365         parameter.
8366         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8367         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8368         results parameter to std::vector.
8369         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8370         Update.
8371         * ada-exp.y (block_lookup): Update.
8372         (select_possible_type_sym): Change type of syms.  Remove nsyms
8373         parameter.
8374         (write_var_or_type, write_name_assoc): Update.
8375
8376 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8377
8378         * windows-nat.c (windows_nat_target::xfer_partial): Return
8379         TARGET_XFER_E_IO if we need to delegate to the target beneath
8380         but BENEATH is NULL.
8381
8382 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8383
8384         * Makefile.in (config.status): Add configure.nat as a
8385         dependency.
8386
8387 2018-06-04  Tom Tromey  <tom@tromey.com>
8388
8389         * cp-name-parser.y (cpname_state): Add method declarations.
8390         (HANDLE_QUAL): Update.
8391         (cpname_state::d_grab, cpname_state::fill_comp)
8392         (cpname_state::make_operator, cpname_state::make_dtor)
8393         (cpname_state::make_builtin_type, cpname_state::make_name)
8394         (cpname_state::d_qualify, cpname_state::d_int_type)
8395         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8396         (%union): Move earlier.
8397
8398 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8399
8400         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8401
8402 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8403
8404         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8405         (aarch64_pseudo_write_1): Likewise.
8406         (aarch64_pseudo_read_value): Use helper.
8407         (aarch64_pseudo_write): Likewise.
8408
8409 2018-06-04  Pedro Alves  <palves@redhat.com>
8410
8411         * darwin-nat.c (darwin_ops): Delete.
8412         (darwin_attach_pid): Use get_native_target.
8413
8414 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8415
8416         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8417         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8418
8419 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8420
8421         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8422         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8423         (aarch64_gdbarch_init): Check for SVE.
8424         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8425
8426 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8427
8428         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8429         * aarch64-tdep.h (aarch64_read_description): Likewise.
8430         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8431         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8432         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8433         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8434         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8435
8436 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8437
8438         * value.c (value_fetch_lazy_bitfield): New.
8439         (value_fetch_lazy_memory): New.
8440         (value_fetch_lazy_register): New.
8441         (value_fetch_lazy): Factor out to smaller functions.
8442
8443 2018-06-01  Tom Tromey  <tom@tromey.com>
8444
8445         * cp-name-parser.y (backslashable, represented): Now const.
8446
8447 2018-06-01  Tom Tromey  <tom@tromey.com>
8448
8449         * cp-name-parser.y: Include parser-defs.h.
8450         (parser_fprintf): Remove declaration.
8451
8452 2018-06-01  Tom Tromey  <tom@tromey.com>
8453
8454         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8455         %parse-param.
8456         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8457         (global_result): Remove globals.
8458         (struct cpname_state): New.
8459         (yyparse): Don't declare.
8460         (yylex, yyerror): Move declarations after %union.
8461         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8462         (make_name): Add state parameter.
8463         Update all callers.
8464         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8465         parameter.
8466         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8467         Update.
8468         (yylex): Add lvalp, state parameters.
8469         (yyerror): Add state parameter.
8470         (cp_demangled_name_to_comp): Update.
8471
8472 2018-06-01  Tom Tromey  <tom@tromey.com>
8473
8474         * cp-name-parser.y (parser_fprintf): Declare.
8475         (GDB_YY_REMAP_PREFIX): Define.
8476         Include yy-remap.h.  Don't redefine yy* identifiers.
8477
8478 2018-06-01  Tom Tromey  <tom@tromey.com>
8479
8480         * python/py-type.c (typy_legacy_template_argument): Update.
8481         * cp-support.h (cp_demangled_name_to_comp): Update.
8482         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8483         parameter to be a "std::string *".
8484         (main): Update.
8485
8486 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8487
8488         * ada-lex.l: Include "diagnostics.h" instead of
8489         "common/diagnostics.h".
8490         * unittests/environ-selftests.c: Likewise.
8491         * common/diagnostics.h: Moved to ../include.
8492
8493 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8494
8495         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8496         to language_mode_manual while calling breakpoint_re_set_one.
8497
8498 2018-06-01  Tom Tromey  <tom@tromey.com>
8499
8500         * valops.c (value_cast_structs, destructor_name_p): Update.
8501         * symtab.c (gdb_mangle_name): Update.
8502         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8503         Update.
8504         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8505         (pascal_object_print_value_fields, pascal_object_print_value):
8506         Update.
8507         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8508         * linespec.c (find_methods): Update.
8509         * gdbtypes.h (type_name_no_tag): Remove.
8510         (type_name_or_error): Rename from type_name_no_tag_or_error.
8511         * gdbtypes.c (type_name_no_tag): Remove.
8512         (type_name_or_error): Rename from type_name_no_tag_or_error.
8513         (lookup_struct_elt_type, check_typedef): Update.
8514         * expprint.c (print_subexp_standard): Update.
8515         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8516         * d-namespace.c (d_lookup_nested_symbol): Update.
8517         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8518         (cp_print_class_member): Update.
8519         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8520         * completer.c (add_struct_fields): Update.
8521         * c-typeprint.c (cp_type_print_derivation_info)
8522         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8523         Update.
8524         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8525         (ada_prefer_type, ada_is_exception_sym): Update.
8526
8527 2018-06-01  Tom Tromey  <tom@tromey.com>
8528
8529         * valops.c (enum_constant_from_type, value_namespace_elt)
8530         (value_maybe_namespace_elt): Update.
8531         * valarith.c (find_size_for_pointer_math): Update.
8532         * target-descriptions.c (make_gdb_type): Update.
8533         * symmisc.c (print_symbol): Update.
8534         * stabsread.c (define_symbol, read_type)
8535         (complain_about_struct_wipeout, add_undefined_type)
8536         (cleanup_undefined_types_1): Update.
8537         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8538         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8539         (rust_internal_print_type, rust_composite_type)
8540         (rust_evaluate_funcall, rust_evaluate_subexp)
8541         (rust_inclusive_range_type_p): Update.
8542         * python/py-type.c (typy_get_tag): Update.
8543         * p-typeprint.c (pascal_type_print_base): Update.
8544         * mdebugread.c (parse_symbol, parse_type): Update.
8545         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8546         Update.
8547         * guile/scm-type.c (gdbscm_type_tag): Update.
8548         * go-lang.c (sixg_string_p): Update.
8549         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8550         Update.
8551         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8552         (TYPE_TAG_NAME): Remove.
8553         * gdbtypes.c (type_name_no_tag): Simplify.
8554         (check_typedef, check_types_equal, recursive_dump_type)
8555         (copy_type_recursive, arch_composite_type): Update.
8556         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8557         in summary mode when needed.
8558         * eval.c (evaluate_funcall): Update.
8559         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8560         (process_structure_scope, read_enumeration_type)
8561         (read_namespace_type, read_module_type, determine_prefix): Update.
8562         * cp-support.c (inspect_type): Update.
8563         * coffread.c (process_coff_symbol, decode_base_type): Update.
8564         * c-varobj.c (c_is_path_expr_parent): Update.
8565         * c-typeprint.c (c_type_print_base_struct_union): Update.
8566         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8567         summary when using C language.
8568         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8569         (gen_maybe_namespace_elt): Update.
8570         * ada-lang.c (ada_type_name): Simplify.
8571         (empty_record, ada_template_to_fixed_record_type_1)
8572         (template_to_static_fixed_type)
8573         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8574
8575 2018-06-01  Tom Tromey  <tom@tromey.com>
8576
8577         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8578         c_print_type.
8579         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8580         (c_print_type): Update.
8581         (c_print_type): New overload.
8582         (c_type_print_varspec_prefix, c_type_print_args)
8583         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8584         (c_type_print_base_struct_union, c_type_print_base_1)
8585         (cp_type_print_method_args): Add "language" parameter.
8586         (c_type_print_base): Update.
8587         * c-lang.h (c_print_type): Add new overload.
8588
8589 2018-06-01  Tom Tromey  <tom@tromey.com>
8590
8591         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8592         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8593
8594 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8595
8596         * aarch64-tdep.c (aarch64_sve_register_names): New const
8597         var.
8598         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8599         (AARCH64_SVE_Z_REGS_NUM): New define.
8600         (AARCH64_SVE_P_REGS_NUM): Likewise.
8601         (AARCH64_SVE_NUM_REGS): Likewise.
8602
8603 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8604
8605         * nat/linux-ptrace.h [__alpha__]
8606         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8607         definitions.
8608
8609 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8610
8611         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8612         the endianness selected.
8613         * NEWS: Document `set endian auto' mode operation update.
8614
8615 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8616
8617         * Makefile.in: Add new header.
8618         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8619         (sve_vl_from_vg): Likewise.
8620         (sve_vq_from_vl): Likewise.
8621         (sve_vl_from_vq): Likewise.
8622         (sve_vq_from_vg): Likewise.
8623         (sve_vg_from_vq): Likewise.
8624         * configure.nat: Add new c file.
8625         * nat/aarch64-sve-linux-ptrace.c: New file.
8626         * nat/aarch64-sve-linux-ptrace.h: New file.
8627
8628 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8629
8630         * aarch64-linux-nat.c (aarch64_linux_read_description):
8631         Add parmeter zero.
8632         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8633         Likewise.
8634         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8635         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8636         (aarch64_gdbarch_init): Add parmeter zero.
8637         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8638         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8639         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8640         parmeter.
8641         * doc/gdb.texinfo: Describe SVE feature
8642         * features/aarch64-sve.c: New file.
8643
8644 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8645
8646         PR gdb/23210
8647         * gdbarch.sh (significant_addr_bit): Default to zero when
8648         not set by target architecture.
8649         * gdbarch.c: Re-generated.
8650         * utils.c (address_significant): Update.
8651
8652 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8653
8654         * stack.c (func_command): Remove trailing newline in call to error.
8655
8656 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8657
8658         * regcache.h (regcache_raw_collect): Remove, update callers to
8659         use regcache::raw_collect.
8660         * regcache.c (regcache_raw_collect): Remove.
8661
8662 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8663
8664         * regcache.h (regcache_raw_supply): Remove, update callers to
8665         use detached_regcache::raw_supply.
8666         * regcache.c (regcache_raw_supply): Remove.
8667
8668 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8669
8670         * regcache.h (regcache_cooked_write_part): Remove, update
8671         callers to use regcache::cooked_write_part.
8672         * regcache.c (regcache_cooked_write_part): Remove.
8673
8674 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8675
8676         * regcache.h (regcache_cooked_read_part): Remove, update callers
8677         to use readable_regcache::cooked_read_part.
8678         * regcache.c (regcache_cooked_read_part): Remove.
8679
8680 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8681
8682         * regcache.h (regcache_cooked_read_value): Remove, update
8683         callers to use readable_regcache::cooked_read_value.
8684         * regcache.c (regcache_cooked_read_value): Remove.
8685
8686 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8687
8688         * regcache.h (regcache_cooked_write): Remove, update callers to
8689         use regcache::cooked_write.
8690         * regcache.c (regcache_cooked_write): Remove.
8691
8692 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8693
8694         * regcache.h (regcache_invalidate): Remove, update callers to
8695         use detached_regcache::invalidate instead.
8696         * regcache.c (regcache_invalidate): Remove.
8697
8698 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8699
8700         * regcache.h (regcache_raw_write_part): Remove, update callers
8701         to use regcache::raw_write_part instead.
8702         * regcache.c (regcache_raw_write_part): Remove.
8703
8704 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8705
8706         * regcache.h (regcache_raw_read_part): Remove, update callers to
8707         use readable_regcache::raw_read_part instead.
8708         * regcache.c (regcache_raw_read_part): Remove.
8709
8710 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8711
8712         * regcache.h (regcache_cooked_read): Remove, update callers to
8713         use readable_regcache::cooked_read instead.
8714         * regcache.c (regcache_cooked_read): Remove.
8715
8716 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8717
8718         * regcache.h (regcache_raw_write): Remove, update callers to use
8719         regcache::raw_write instead.
8720         * regcache.c (regcache_raw_write): Remove.
8721
8722 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8723
8724         * regcache.h (regcache_raw_read): Remove, update callers to use
8725         readable_regcache::raw_read instead.
8726         * regcache.c (regcache_raw_read): Remove.
8727
8728 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8729
8730         * regcache.h (regcache_raw_update): Remove, update callers to
8731         use readable_regcache::raw_update instead.
8732         * regcache.c (regcache_raw_update): Remove.
8733
8734 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8735
8736         * regcache.h (regcache_register_status): Remove, update callers
8737         to use reg_buffer::get_register_status directly instead.
8738         * regcache.c (regcache_register_status): Remove.
8739
8740 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8741
8742         * regcache.h (regcache_get_ptid): Remove, update all callers to
8743         call regcache::ptid instead.
8744         * regcache.c (regcache_get_ptid): Remove.
8745
8746 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8747
8748         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8749
8750 2018-05-30  Pedro Alves  <palves@redhat.com>
8751
8752         * common/common-exceptions.h (exception_rethrow): Use
8753         ATTRIBUTE_NORETURN.
8754
8755 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8756
8757         * breakpoint.c (print_solib_event, check_status_catch_solib):
8758         Remove struct keyword in range-based for loops.
8759         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8760         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8761         Likewise.
8762         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8763         Likewise.
8764         * symfile.c (addr_info_make_relative): Likewise.
8765         * thread.c (value_in_thread_stack_temporaries): Likewise.
8766
8767 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8768
8769         PR gdb/16841
8770         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8771         aggregate type to get its real type before accessing it.
8772
8773 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8774
8775         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8776         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8777         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8778         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8779         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8780         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8781         * printcmd.c (info_address_command): Likewise.
8782
8783 2018-05-29  Tom Tromey  <tom@tromey.com>
8784
8785         * windows-nat.c (handle_exception): Update fall-through comment.
8786
8787 2018-05-29  Tom Tromey  <tom@tromey.com>
8788
8789         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8790         (struct program_space) <added_solibs>: Now a std::vector.
8791         * breakpoint.c (print_solib_event): Update.
8792         (check_status_catch_solib): Update.
8793         * progspace.c (clear_program_space_solib_cache): Update.
8794         * solib.c (update_solib_list): Update.
8795
8796 2018-05-29  Tom Tromey  <tom@tromey.com>
8797
8798         * python/py-type.c (typy_richcompare): Update.
8799         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8800         * gdbtypes.h (types_deeply_equal): Return bool.
8801         (types_equal): Likewise.
8802         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8803         declare VEC.
8804         (check_types_equal): Change worklist to std::vector.  Return
8805         bool.
8806         (struct type_equality_entry): Add constructor.
8807         (compare_maybe_null_strings): Return bool.
8808         (check_types_worklist): Return bool.  Change worklist to
8809         std::vector.
8810         (types_deeply_equal): Use std::vector.
8811         (types_equal): Return bool.
8812         (compare_maybe_null_strings): Simplify.
8813
8814 2018-05-29  Tom Tromey  <tom@tromey.com>
8815
8816         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8817
8818 2018-05-29  Tom Tromey  <tom@tromey.com>
8819
8820         * objc-lang.h: Don't include cp-support.h.
8821         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8822         declare VEC.
8823
8824 2018-05-27  Tom Tromey  <tom@tromey.com>
8825
8826         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8827
8828 2018-05-25  Tom Tromey  <tom@tromey.com>
8829
8830         * value.c (value::location): Initialize.
8831
8832 2018-05-25  Tom Tromey  <tom@tromey.com>
8833
8834         * dbxread.c (init_bincl_list): Remove.
8835         (bincl_list): Now a std::vector.
8836         (bincls_allocated, next_bincl): Remove.
8837         (free_bincl_list, do_free_bincl_list_cleanup)
8838         (make_cleanup_free_bincl_list): Remove.
8839         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8840         unique_xmalloc_ptr.
8841         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8842         (struct header_file_location): Add constructor.
8843         (add_bincl_to_list): Remove.
8844
8845 2018-05-25  Tom Tromey  <tom@tromey.com>
8846
8847         * tui/tui.c (tui_enable): Update.
8848         * mi/mi-interp.c (mi_interp::init): Update.
8849         * interps.h (class interp) <name>: New method.
8850         <m_name>: Rename from name.
8851         (~scoped_restore_interp): Update.
8852         * interps.c (interp::interp): Update.
8853         (interp_add, interp_set, interp_lookup_existing)
8854         (current_interp_named_p): Update.
8855
8856 2018-05-25  Tom Tromey  <tom@tromey.com>
8857
8858         * interps.c (interp_name): Remove.
8859         * mi/mi-interp.c (mi_interp::init): Update.
8860         * interps.h (interp_name): Remove.
8861         (~scoped_restore_interp): Update.
8862         * tui/tui.c (tui_enable): Update.
8863
8864 2018-05-25  Tom Tromey  <tom@tromey.com>
8865
8866         * utils.c (fputs_maybe_filtered): Update.
8867         * linespec.c (decode_line_full): Update.
8868         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8869         (mi_print_breakpoint_for_event, mi_solib_loaded)
8870         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8871         (mi_user_selected_context_changed): Update.
8872         * mi/mi-main.c (mi_execute_command): Update.
8873         * cli/cli-script.c (execute_control_command): Update.
8874         * python/python.c (execute_gdb_command): Update.
8875         * solib.c (info_sharedlibrary_command): Update.
8876         * interps.c (interp_ui_out): Remove.
8877         * interps.h (interp_ui_out): Remove.
8878
8879 2018-05-25  Tom Tromey  <tom@tromey.com>
8880
8881         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8882         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8883         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8884
8885 2018-05-25  Tom Tromey  <tom@tromey.com>
8886
8887         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8888         * interps.c (interp_exec): Use scoped_restore.
8889
8890 2018-05-25  Tom Tromey  <tom@tromey.com>
8891
8892         * remote.c (remote_target::remote_file_get): Use
8893         gdb::byte_vector.
8894         (remote_target::remote_file_put): Likewise.
8895
8896 2018-05-25  Tom Tromey  <tom@tromey.com>
8897
8898         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8899         a std::string.
8900         (get_pe_section_index, add_pe_exported_sym): Update.
8901         (read_pe_exported_syms): Use gdb::def_vector.
8902
8903 2018-05-25  Tom Tromey  <tom@tromey.com>
8904
8905         * frame.c (remove_prev_frame): Remove.
8906         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8907
8908 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8909
8910         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8911         Remove prototypes.
8912         * mips-linux-nat.c (supply_fpregset): Always call
8913         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8914         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8915         `mips_fill_fpregset'.
8916         * mips-linux-tdep.c (mips_supply_fpregset)
8917         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8918         (mips_fill_fpregset_wrapper): Remove functions.
8919         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8920         (mips_linux_fpregset): Remove variable.
8921         (mips_linux_iterate_over_regset_sections): Use
8922         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8923         (mips_linux_o32_sigframe_init): Remove comment.
8924
8925 2018-05-25  Pedro Alves  <palves@redhat.com>
8926
8927         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8928         (struct readahead_cache, struct packet_reg, struct
8929         remote_arch_state, class remote_state): Move higher up in the
8930         file.
8931         (remote_target::m_remote_state): Now an object instead of a pointer.
8932         (remote_target::get_remote_state): Adjust.
8933
8934 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8935
8936         * stack.c (select_and_print_frame): Delete.
8937         (struct function_bounds): Move struct within function.
8938         (func_command): Most content moved into new function
8939         find_frame_for_function, use new function, print result, add
8940         function comment.
8941         (find_frame_for_function): New function, now returns a result.
8942
8943 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8944
8945         * stack.c (iterate_over_block_arg_vars): Fix comment.
8946         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8947
8948 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8949
8950         PR gdb/23203
8951         * frame.c
8952         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8953         Define.
8954         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8955         Define.
8956         * frame.h (class scoped_restore_selected_frame): New class.
8957         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8958         of any exception, use scoped_restore_selected_frame to restore the
8959         frame instead.
8960
8961 2018-05-24  Pedro Alves  <palves@redhat.com>
8962
8963         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8964         override.
8965
8966 2018-05-23  Tom Tromey  <tom@tromey.com>
8967
8968         * complaints.c (struct complaints): Remove.
8969         (symfile_complaint_book): Remove.
8970         (series): New global.
8971         (complaint_internal): Update.
8972         (clear_complaints): Update.
8973
8974 2018-05-23  Tom Tromey  <tom@tromey.com>
8975
8976         * complaints.c (counters): New global.
8977         (struct complain): Remove.
8978         (struct complaints) <root>: Remove.
8979         (complaint_sentinel): Remove.
8980         (symfile_complaint_book): Update.
8981         (find_complaint) Remove.
8982         (complaint_internal, clear_complaints): Update.
8983
8984 2018-05-23  Tom Tromey  <tom@tromey.com>
8985
8986         * complaints.c (struct complain) <file, line>: Remove.
8987         (find_complaint): Remove file, line parameters.
8988         (complaint_internal): Update.
8989
8990 2018-05-23  Tom Tromey  <tom@tromey.com>
8991
8992         * complaints.c (vcomplaint): Remove.
8993         (complaint_internal) Merge in contents of vcomplaint.
8994
8995 2018-05-23  Tom Tromey  <tom@tromey.com>
8996
8997         * complaints.c (struct complaints) <explanation>: Remove.
8998         (symfile_explanations): Remove.
8999         (symfile_complaint_book): Update.
9000         (vcomplaint): Update.
9001         (struct explanation): Remove.
9002
9003 2018-05-23  Tom Tromey  <tom@tromey.com>
9004
9005         * complaints.c (symfile_complaints): Remove.
9006         (complaint_internal): Remove "complaints" parameter.
9007         (clear_complaints, vcomplaint): Remove "c" parameter.
9008         (get_complaints): Remove.
9009         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9010         (dwarf2_debug_line_missing_file_complaint)
9011         (dwarf2_debug_line_missing_end_sequence_complaint)
9012         (dwarf2_complex_location_expr_complaint)
9013         (dwarf2_const_value_length_mismatch_complaint)
9014         (dwarf2_section_buffer_overflow_complaint)
9015         (dwarf2_macro_malformed_definition_complaint)
9016         (dwarf2_invalid_attrib_class_complaint)
9017         (create_addrmap_from_index, dw2_symtab_iter_next)
9018         (dw2_expand_marked_cus)
9019         (dw2_debug_names_iterator::find_vec_in_debug_names)
9020         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9021         (create_debug_type_hash_table, init_cutu_and_read_dies)
9022         (partial_die_parent_scope, add_partial_enumeration)
9023         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9024         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9025         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9026         (create_cus_hash_table, create_dwp_hash_table)
9027         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9028         (dwarf2_rnglists_process, dwarf2_ranges_process)
9029         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9030         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9031         (handle_struct_member_die, process_structure_scope)
9032         (read_array_type, read_common_block, read_module_type)
9033         (read_tag_pointer_type, read_typedef, read_base_type)
9034         (read_subrange_type, load_partial_dies, partial_die_info::read)
9035         (partial_die_info::read, partial_die_info::read)
9036         (partial_die_info::read, read_checked_initial_length_and_offset)
9037         (dwarf2_string_attr, read_formatted_entries)
9038         (dwarf_decode_line_header)
9039         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9040         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9041         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9042         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9043         (get_signatured_type, get_DW_AT_signature_type)
9044         (decode_locdesc, file_file_name, consume_improper_spaces)
9045         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9046         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9047         (dwarf2_symbol_mark_computed, set_die_type)
9048         (read_attribute_value): Update.
9049         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9050         Update.
9051         * dbxread.c (unknown_symtype_complaint)
9052         (lbrac_mismatch_complaint, repeated_header_complaint)
9053         (set_namestring, function_outside_compilation_unit_complaint)
9054         (read_dbx_symtab, process_one_symbol): Update.
9055         * gdbtypes.c (stub_noname_complaint): Update.
9056         * windows-nat.c (handle_unload_dll): Update.
9057         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9058         (decode_base_type): Update.
9059         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9060         (eb_complaint, record_include_begin, record_include_end)
9061         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9062         (process_xcoff_symbol, read_symbol)
9063         (function_outside_compilation_unit_complaint)
9064         (scan_xcoff_symtab): Update.
9065         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9066         * buildsym.c (finish_block_internal, make_blockvector)
9067         (end_symtab_get_static_block, augment_type_symtab): Update.
9068         * dtrace-probe.c (dtrace_process_dof)
9069         (dtrace_static_probe_ops::get_probes): Update.
9070         * complaints.h (struct complaint): Don't declare.
9071         (symfile_complaints): Remove.
9072         (complaint_internal): Remove "complaints" parameter.
9073         (complaint): Likewise.
9074         (clear_complaints): Likewise.
9075         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9076         (reread_symbols): Update.
9077         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9078         (dwarf2_frame_cache, decode_frame_entry): Update.
9079         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9080         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9081         (info_selectors_command): Update.
9082         * macrotab.c (macro_include, check_for_redefinition)
9083         (macro_undef): Update.
9084         * objfiles.c (filter_overlapping_sections): Update.
9085         * stabsread.c (invalid_cpp_abbrev_complaint)
9086         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9087         (define_symbol, error_type, read_type, rs6000_builtin_type)
9088         (stabs_method_name_from_physname, read_member_functions)
9089         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9090         (attach_fields_to_type, complain_about_struct_wipeout)
9091         (read_range_type, read_args, common_block_start)
9092         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9093         Update.
9094         * mdebugread.c (index_complaint, unknown_ext_complaint)
9095         (basic_type_complaint, bad_tag_guess_complaint)
9096         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9097         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9098         (parse_procedure, parse_lines)
9099         (function_outside_compilation_unit_complaint)
9100         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9101         (bad_tag_guess_complaint, reg_value_complaint): Update.
9102         * cp-support.c (demangled_name_complaint): Update.
9103         * macroscope.c (sal_macro_scope): Update.
9104         * dwarf-index-write.c (class debug_names): Update.
9105
9106 2018-05-23  Tom Tromey  <tom@tromey.com>
9107
9108         * complaints.c (clear_complaints): Remove "noisy" parameter.
9109         * complaints.h (clear_complaints): Update.
9110         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9111         (reread_symbols): Update.
9112
9113 2018-05-23  Tom Tromey  <tom@tromey.com>
9114
9115         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9116         SUBSEQUENT_MESSAGE.
9117         (vcomplaint, clear_complaints): Update.
9118         (symfile_explanations): Remove some messages.
9119
9120 2018-05-23  Tom Tromey  <tom@tromey.com>
9121
9122         * complaints.c (internal_complaint): Remove.
9123         * complaints.h (internal_complaint): Remove.
9124
9125 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9126
9127         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9128
9129 2018-05-22  Pedro Alves  <palves@redhat.com>
9130
9131         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9132         (remote_fileio_badfd, remote_fileio_return_errno)
9133         (remote_fileio_return_success, remote_fileio_func_open)
9134         (remote_fileio_func_open, remote_fileio_func_close)
9135         (remote_fileio_func_read, remote_fileio_func_write)
9136         (remote_fileio_func_lseek, remote_fileio_func_rename)
9137         (remote_fileio_func_unlink, remote_fileio_func_stat)
9138         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9139         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9140         remote_target parameter.
9141         (remote_fio_func_map) <func>: Add remote_target parameter.
9142         (do_remote_fileio_request, remote_fileio_request):
9143         * remote-fileio.h (remote_fileio_request):
9144         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9145         remote_target parameter.
9146         (remote_notif_process, handle_notification): Adjust to pass down
9147         the remote.
9148         (remote_notif_state_allocate): Add remote_target parameter.  Save
9149         it.
9150         * remote-notif.h (struct remote_target): Forward declare.
9151         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9152         remote_target parameter.
9153         (struct remote_notif_state) <remote>: New field.
9154         (remote_notif_ack, remote_notif_parse): Add remote_target
9155         parameter.
9156         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9157         remote_target parameter.
9158         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9159         (threads_listing_context, rmt_thread_action, protocol_feature)
9160         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9161         (packet_result, struct threads_listing_context, remote_state):
9162         Move definitions and declarations higher up.
9163         (remote_target) <~remote_target>: Declare.
9164         (remote_download_command_source, remote_file_put, remote_file_get)
9165         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9166         (remote_hostio_pread_vFile, remote_hostio_send_command)
9167         (remote_hostio_set_filesystem, remote_hostio_open)
9168         (remote_hostio_close, remote_hostio_unlink, remote_state)
9169         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9170         (get_memory_write_packet_size, get_memory_read_packet_size)
9171         (append_pending_thread_resumptions, remote_detach_1)
9172         (append_resumption, remote_resume_with_vcont)
9173         (add_current_inferior_and_thread, wait_ns, wait_as)
9174         (process_stop_reply, remote_notice_new_inferior)
9175         (process_initial_stop_replies, remote_add_thread)
9176         (btrace_sync_conf, remote_btrace_maybe_reopen)
9177         (remove_new_fork_children, kill_new_fork_children)
9178         (discard_pending_stop_replies, stop_reply_queue_length)
9179         (check_pending_events_prevent_wildcard_vcont)
9180         (discard_pending_stop_replies_in_queue, stop_reply)
9181         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9182         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9183         (remote_interrupt_as, remote_interrupt_ns)
9184         (remote_get_noisy_reply, remote_query_attached)
9185         (remote_add_inferior, remote_current_thread, get_current_thread)
9186         (set_thread, set_general_thread, set_continue_thread)
9187         (set_general_process, write_ptid)
9188         (remote_unpack_thread_info_response, remote_get_threadinfo)
9189         (parse_threadlist_response, remote_get_threadlist)
9190         (remote_threadlist_iterator, remote_get_threads_with_ql)
9191         (remote_get_threads_with_qxfer)
9192         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9193         (get_offsets, remote_check_symbols, remote_supported_packet)
9194         (remote_query_supported, remote_packet_size)
9195         (remote_serial_quit_handler, remote_detach_pid)
9196         (remote_vcont_probe, remote_resume_with_hc)
9197         (send_interrupt_sequence, interrupt_query)
9198         (remote_notif_get_pending_events, fetch_register_using_p)
9199         (send_g_packet, process_g_packet, fetch_registers_using_g)
9200         (store_register_using_P, store_registers_using_G)
9201         (set_remote_traceframe, check_binary_download)
9202         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9203         (remote_xfer_live_readonly_partial, remote_read_bytes)
9204         (remote_send_printf, remote_flash_write, readchar)
9205         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9206         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9207         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9208         (extended_remote_disable_randomization, extended_remote_run)
9209         (send_environment_packet, extended_remote_environment_support)
9210         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9211         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9212         (packet_command): Now methods of ...
9213         (remote_target): ... this class.
9214         (m_remote_state) <remote_target>: New field.
9215         (struct remote_state) <stop_reply_queue,
9216         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9217         fields.
9218         (remote_state::remote_state): Allocate stop_reply_queue.
9219         (remote_state): Delete global.
9220         (get_remote_state_raw): Delete.
9221         (remote_target::get_remote_state): Allocate m_remote_state on
9222         demand.
9223         (get_current_remote_target): New.
9224         (remote_ops, extended_remote_ops): Delete.
9225         (wait_forever_enabled_p, remote_async_inferior_event_token):
9226         Delete, moved to struct remote_state.
9227         (remote_target::close): Delete self.  Destruction bits split to
9228         ...
9229         (remote_target::~remote_target): ... this.
9230         (show_memory_packet_size): Adjust to use
9231         get_current_remote_target.
9232         (struct protocol_feature) <func>: Add remote_target parameter.
9233         All callers adjusted.
9234         (curr_quit_handler_target): New.
9235         (remote_serial_quit_handler): Reimplement.
9236         (remote_target::open_1): Adjust to use get_current_remote_target.
9237         Heap-allocate remote_target/extended_remote_target instances.
9238         (vcont_builder::vcont_builder): Add remote_target parameter, and
9239         save it in m_remote.  All callers adjusted.
9240         (vcont_builder::m_remote): New field.
9241         (vcont_builder::restart, vcont_builder::flush)
9242         (vcont_builder::push_action): Use it.
9243         (remote_target::commit_resume): Use it.
9244         (struct queue_iter_param) <remote>: New field.
9245         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9246         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9247         (check_pending_event_prevents_wildcard_vcont_callback)
9248         (remote_target::check_pending_events_prevent_wildcard_vcont)
9249         (remote_target::discard_pending_stop_replies)
9250         (remote_target::discard_pending_stop_replies_in_queue)
9251         (remote_target::remote_notif_remove_queued_reply): Fill in
9252         'remote' field.
9253         (remote_notif_get_pending_events): New.
9254         (remote_target::readchar, remote_target::remote_serial_write):
9255         Save/restore curr_quit_handler_target.
9256         (putpkt): New.
9257         (kill_new_fork_children): Fill in 'remote' field.
9258         (packet_command): Use get_current_remote_target, defer to
9259         remote_target method of same name.
9260         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9261         parameter, and save it in m_remote.  All callers adjusted.
9262         (scoped_remote_fd::release): Use m_remote.
9263         (scoped_remote_fd::m_remote): New field.
9264         (remote_file_put, remote_file_get, remote_file_delete): Use
9265         get_current_remote_target, defer to remote_target method of same
9266         name.
9267         (remote_btrace_reset): Add remote_state paremeter.  Update all
9268         callers.
9269         (remote_async_inferior_event_handler). Pass down 'data'.
9270         (remote_new_objfile): Use get_current_remote_target.
9271         (remote_target::vcont_r_supported): New.
9272         (set_range_stepping): Use get_current_remote_target and
9273         remote_target::vcont_r_supported.
9274         (_initialize_remote): Don't allocate 'remote_state' and
9275         'stop_reply_queue' globals.
9276         * remote.h (struct remote_target): Forward declare.
9277         (getpkt, putpkt, remote_notif_get_pending_events): Add
9278         'remote_target' parameter.
9279
9280 2018-05-22  Pedro Alves  <palves@redhat.com>
9281
9282         * remote.c (vcont_builder): Now a class.  Make all data members
9283         private.
9284         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9285         Declare methods.
9286         (vcont_builder_restart): Rename to ...
9287         (vcont_builder::restart): ... this.
9288         (vcont_builder_flush): Rename to ...
9289         (vcont_builder::flush): ... this.
9290         (vcont_builder_push_action): Rename to ...
9291         (vcont_builder::push_action): ... this.
9292         (remote_target::commit_resume): Adjust.
9293
9294 2018-05-22  Pedro Alves  <palves@redhat.com>
9295
9296         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9297         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9298         (get_fixed_memory_packet_size): New.
9299         (get_memory_packet_size): Use it.
9300         (set_memory_packet_size): Don't override the config size with
9301         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9302         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9303         Don't refer to get_memory_packet_size if not connected to a remote
9304         target.  Show "(default)" if configured size is 0.
9305
9306 2018-05-22  Pedro Alves  <palves@redhat.com>
9307
9308         * remote.c (remote_target::mourn_inferior): Move
9309         discard_pending_stop_replies call here from ...
9310         (_initialize_remote): ... here.
9311
9312 2018-05-22  Pedro Alves  <palves@redhat.com>
9313
9314         * remote.c (compare_section_command): Remove set_general_process
9315         call.
9316
9317 2018-05-22  Pedro Alves  <palves@redhat.com>
9318
9319         * remote.c (struct packet_reg, struct remote_arch_state):
9320         Move higher up in the file.
9321         (remote_state) <m_arch_states>: Store remote_arch_state values
9322         instead of remote_arch_state pointers.
9323         (remote_state::get_remote_arch_state): Adjust.
9324
9325 2018-05-22  Pedro Alves  <palves@redhat.com>
9326
9327         * remote.c: Include <unordered_map>.
9328         (remote_state): Now a class.
9329         (remote_state) <get_remote_arch_state>: Declare method.
9330         <get_remote_arch_state>: New field.
9331         (remote_arch_state) <remote_arch_state>: Declare ctor.
9332         <regs>: Now a unique_ptr.
9333         (remote_gdbarch_data_handle): Delete.
9334         (get_remote_arch_state): Delete.
9335         (remote_state::get_remote_arch_state): New.
9336         (get_remote_state): Adjust to call remote_state's
9337         get_remote_arch_state method.
9338         (init_remote_state): Delete, bits factored out to ...
9339         (remote_arch_state::remote_arch_state): ... this new method.
9340         (get_remote_packet_size, get_memory_packet_size)
9341         (process_g_packet, remote_target::fetch_registers)
9342         (remote_target::prepare_to_store, store_registers_using_G)
9343         (remote_target::store_registers, remote_target::get_trace_status):
9344         Adjust to call remote_state's method.
9345         (_initialize_remote): Remove reference to
9346         remote_gdbarch_data_handle.
9347
9348 2018-05-22  Pedro Alves  <palves@redhat.com>
9349
9350         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9351         pread>: New method declarations.
9352         (remote_target::open_1): Adjust.
9353         (readahead_cache_invalidate): Rename to ...
9354         (readahead_cache::invalidate): ... this, and adjust to be a class
9355         method.
9356         (readahead_cache_invalidate_fd): Rename to ...
9357         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9358         class method.
9359         (remote_hostio_pwrite): Adjust.
9360         (remote_hostio_pread_from_cache): Rename to ...
9361         (readahead_cache::pread): ... this, and adjust to be a class
9362         method.
9363         (remote_hostio_close): Adjust.
9364
9365 2018-05-22  Pedro Alves  <palves@redhat.com>
9366
9367         * remote.c (remote_hostio_close_cleanup): Delete.
9368         (class scoped_remote_fd): New.
9369         (remote_file_put, remote_file_get): Use it.
9370
9371 2018-05-22  Pedro Alves  <palves@redhat.com>
9372
9373         (struct vCont_action_support): Use bool and initialize all fields.
9374         (struct readahead_cache): Initialize all fields.
9375         (remote_state): Use bool and initialize all fields.
9376         (remote_state::remote_state, remote_state::~remote_state): New.
9377         (new_remote_state): Delete.
9378         (_initialize_remote): Use new to allocate remote_state.
9379
9380 2018-05-22  Pedro Alves  <palves@redhat.com>
9381             張俊芝  <zjz@zjz.name>
9382
9383         PR gdb/22973
9384         * c-exp.y: Include "c-support.h".
9385         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9386         of tolower.  Use c_ident_is_alpha to scan names.
9387         * c-lang.c: Include "c-support.h".
9388         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9389         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9390         * c-support.h: New file, with bits factored out from ...
9391         * cp-name-parser.y: ... this file.
9392         Include "c-support.h".
9393         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9394         c-support.h and renamed.
9395         (symbol_end, yylex): Adjust.
9396
9397 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9398
9399         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9400         parameter type to CORE_ADDR.
9401         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9402         parameter type in declaration to CORE_ADDR.
9403         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9404         target_auxv_search to get AT_HWCAP and use the result to get the
9405         target description.
9406         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9407         to CORE_ADDR. Remove the cast of the return value to unsigned
9408         long. Fix error predicate of target_auxv_search.
9409         (ppc_linux_nat_target::read_description): Change the type of the
9410         hwcap variable to CORE_ADDR.
9411
9412 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9413
9414         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9415         if the size of fpscr is larger than 32 bits.
9416
9417 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9418
9419         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9420         (ppc32_linux_vsxregmap): New global.
9421         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9422         regcache_supply_regset, and regcache_collect_regset.
9423         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9424         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9425         (fetch_vsx_register, store_vsx_register): Remove.
9426         (fetch_vsx_registers): Add regno parameter. Get regset using
9427         ppc_linux_vsxregset. Use regset to supply registers.
9428         (store_vsx_registers): Add regno parameter. Get regset using
9429         ppc_linux_vsxregset. Use regset to collect registers.
9430         (fetch_register): Call fetch_vsx_registers instead of
9431         fetch_vsx_register.
9432         (store_register): Call store_vsx_registers instead of
9433         store_vsx_register.
9434         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9435         new regno parameter.
9436         (store_ppc_registers): Call store_vsx_registers with -1 for the
9437         new regno parameter.
9438         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9439         (ppc_collect_vsxregset): Remove.
9440
9441 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9442
9443         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9444         offset fields.
9445         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9446         for vector register offset fields.
9447         (ppc64_fbsd_reg_offsets): Likewise.
9448         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9449         to vector register offset fields.
9450         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9451         to vector register offset fields.
9452         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9453         vector register offset fields.
9454         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9455         initializers for vector register offset fields.
9456         (rs6000_aix64_reg_offsets): Likewise.
9457         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9458         (ppc_supply_vrregset): Remove.
9459         (ppc_collect_vrregset): Remove.
9460         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9461         (ppc_linux_vrregset) : New function.
9462         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9463         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9464         (ppc32_linux_vrregset): Remove.
9465         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9466         and use result instead of ppc32_linux_vrregset.
9467         (ppc32_linux_reg_offsets): Remove initializers for vector register
9468         offset fields.
9469         (ppc64_linux_reg_offsets): Likewise.
9470         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9471         * ppc-linux-nat.c: Include regset.h.
9472         (gdb_vrregset_t): Adjust comment to account for little-endian
9473         mode.
9474         (supply_vrregset, fill_vrregset): Remove.
9475         (fetch_altivec_register, store_altivec_register): Remove.
9476         (fetch_altivec_registers): Add regno parameter. Get regset using
9477         ppc_linux_vrregset. Use regset to supply registers.
9478         (store_altivec_registers): Add regno parameter. Get regset using
9479         ppc_linux_vrregset. Use regset to collect registers.
9480         (fetch_register): Call fetch_altivec_registers instead of
9481         fetch_altivec_register.
9482         (store_register): Call store_altivec_registers instead of
9483         store_altivec_register.
9484         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9485         the new regno parameter.
9486         (store_ppc_registers): Call store_altivec_registers with -1 for
9487         the new regno parameter.
9488
9489 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9490
9491         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9492         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9493         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9494         (gdb_vrregset_t): Change array type size to
9495         PPC_LINUX_SIZEOF_VRREGSET.
9496         (gdb_vsxregset_t): Change array type size to
9497         PPC_LINUX_SIZEOF_VSXREGSET.
9498         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9499         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9500         PPC_LINUX_SIZEOF_VSXREGSET.
9501
9502 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9503
9504         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9505         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9506         nat/ppc-linux.c.
9507         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9508         ppc_linux_target_wordsize with tid.
9509         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9510         wordsize with tid.
9511         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9512         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9513         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9514         tid parameter. Remove static specifier.
9515         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9516         (ppc_linux_target_wordsize): New declaration.
9517
9518 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9519
9520         * arch/ppc-linux-common.c: New file.
9521         * arch/ppc-linux-common.h: New file.
9522         * arch/ppc-linux-tdesc.h: New file.
9523         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9524         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9525         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9526         arch/ppc-linux-tdesc.h.
9527         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9528         arch/ppc-linux-tdesc.h.
9529         (ppc_linux_nat_target::read_description): Remove target
9530         description matching code. Fill a ppc_linux_features struct and
9531         call ppc_linux_match_description with it. Move comment about ISA
9532         2.05 to ppc-linux-common.c.
9533         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9534         arch/ppc-linux-tdesc.h.
9535         (ppc_linux_core_read_description): Remove target description
9536         matching code. Fill a ppc_linux_features struct and call
9537         ppc_linux_match_description with it.
9538         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9539         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9540         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9541         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9542         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9543         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9544         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9545         (tdesc_powerpc_e500l): Remove.
9546
9547 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9548
9549         * ada-lang.c (catch_assert_command): Pass empty string instead
9550         of NULL for excep_string argument.
9551
9552 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9553
9554         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9555         the width of the requested register exceeds the width of the
9556         `ptrace' data type.
9557
9558 2018-05-21  Tom Tromey  <tom@tromey.com>
9559
9560         * printcmd.c (output_command): Remove.
9561         (output_command_const): Rename to output_command.
9562         * valprint.h (output_command): Rename from output_command_const.
9563         * tracepoint.c (trace_dump_actions): Call output_command.
9564
9565 2018-05-21  Tom Tromey  <tom@tromey.com>
9566
9567         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9568         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9569         * ada-lang.h (create_ada_exception_catchpoint): Update.
9570         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9571         std::string.
9572         (create_excep_cond_exprs, ~ada_catchpoint)
9573         (should_stop_exception, print_one_exception)
9574         (print_mention_exception, print_recreate_exception): Update.
9575         (ada_get_next_arg): Remove.
9576         (catch_ada_exception_command_split): Use std::string.  Change type
9577         of "excep_string", "cond_string".
9578         (catch_ada_exception_command): Update.
9579         (create_ada_exception_catchpoint): Change type of excep_string.
9580         (ada_exception_sal): Remove excep_string parameter.
9581         (~ada_catchpoint): Remove.
9582
9583 2018-05-21  Tom Tromey  <tom@tromey.com>
9584
9585         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9586         cleanup.
9587
9588 2018-05-21  Tom Tromey  <tom@tromey.com>
9589
9590         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9591         Return unique_xmalloc_ptr.
9592         (print_it_exception): Update.
9593
9594 2018-05-21  Tom Tromey  <tom@tromey.com>
9595
9596         * tracepoint.c (trace_dump_actions): Use std::string.
9597
9598 2018-05-21  Tom Tromey  <tom@tromey.com>
9599
9600         * symfile.c (reread_symbols): Use std::string for original_name.
9601
9602 2018-05-21  Tom Tromey  <tom@tromey.com>
9603
9604         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9605         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9606         constructor.
9607
9608 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9609
9610         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9611         instance to...
9612         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9613         * objfiles.c (get_objfile_bfd_data): Allocate
9614         objfile_per_bfd_storage with obstack_new when allocating on
9615         obstack.
9616
9617 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9618
9619         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9620         OBSTACK_ZALLOC.
9621         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9622         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9623         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9624         (add_pending): Likewise.
9625         (parse_symbol): Likewise.
9626         (parse_partial_symbols): Likewise.
9627         (psymtab_to_symtab_1): Likewise.
9628         (new_psymtab): Likewise.
9629         (elfmdebug_build_psymtabs): Likewise.
9630         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9631         * objfiles.c (get_objfile_bfd_data): Likewise.
9632         (objfile_register_static_link): Likewise.
9633         * psymtab.c (allocate_psymtab): Likewise.
9634         * stabsread.c (read_member_functions): Likewise.
9635         * xcoffread.c (xcoff_end_psymtab): Likewise.
9636
9637 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9638
9639         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9640         compiler supports std::is_trivially_constructible.
9641         * common/poison.h: Include obstack.h.
9642         (IsMallocable): Define to is_trivially_constructible if the
9643         compiler supports it, define to true_type otherwise.
9644         (xobnew): New.
9645         (XOBNEW): Redefine.
9646         (xobnewvec): New.
9647         (XOBNEWVEC): Redefine.
9648         * gdb_obstack.h (obstack_zalloc): New.
9649         (OBSTACK_ZALLOC): Redefine.
9650         (obstack_calloc): New.
9651         (OBSTACK_CALLOC): Redefine.
9652         (obstack_new): New.
9653         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9654         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9655         gdbarch.c.
9656         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9657         obstack_calloc/obstack_zalloc.
9658         (gdbarch_obstack_zalloc): Remove.
9659         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9660
9661 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9662
9663         * stack.c (backtrace_command_1): Remove useless variable int i.
9664
9665 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9666
9667         * stack.c (print_frame_info): Fix comment.
9668
9669 2018-05-18  Tom Tromey  <tom@tromey.com>
9670
9671         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9672         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9673         (~dwarf2_per_objfile): Update
9674         (dwarf2_get_dwz_file): Use new.
9675         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9676         unique_ptr.
9677
9678 2018-05-18  Tom Tromey  <tom@tromey.com>
9679
9680         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9681         unique_ptr.
9682         * dwarf2read.c (struct dwp_file): Add constructor and
9683         initializers.
9684         (open_and_init_dwp_file): Return a unique_ptr.
9685         (dwarf2_per_objfile, create_dwp_hash_table)
9686         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9687         (lookup_dwo_unit_in_dwp): Update.
9688         (open_and_init_dwp_file, get_dwp_file): Update.
9689
9690 2018-05-18  Tom Tromey  <tom@tromey.com>
9691
9692         * dwarf2read.c (dwarf2_per_objfile): Update.
9693         (struct mapped_index): Add initializers.
9694         (dwarf2_read_index): Use new.
9695         (dw2_symtab_iter_init): Update.
9696         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9697         unique_ptr.
9698
9699 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9700
9701         * dwarf2read.c (mapped_index) <total_size>: Remove.
9702
9703 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9704
9705         * unittests/format_pieces-selftests.c (test_format_specifier):
9706         Add ARI comments.
9707
9708 2018-05-18  Tom Tromey  <tom@tromey.com>
9709
9710         * c-typeprint.c (maybe_print_hole): New function.
9711         (c_print_type_struct_field_offset): Update.
9712         (c_type_print_base_struct_union): Call maybe_print_hole.
9713
9714 2018-05-17  Keith Seitz  <keiths@redhat.com>
9715
9716         * breakpoint.c (build_bpstat_chain): New function, moved from
9717         bpstat_stop_status.
9718         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9719         If no stop chain is passed, call build_bpstat_chain to build it.
9720         * breakpoint.h (build_bpstat_chain): Declare.
9721         (bpstat_stop_status): Move documentation here from breakpoint.c.
9722         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9723         build the stop chain and pass it to skip_inline_frames.
9724         Pass this stop chain to bpstat_stop_status.
9725         * inline-frame.c: Include breakpoint.h.
9726         (stopped_by_user_bp_inline_frame): New function.
9727         (skip_inline_frames): Add parameter `stop_chain'.
9728         Move documention to inline-frame.h.
9729         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9730         whether the frame should be elided.
9731         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9732         Add moved documentation and update for new parameter.
9733
9734 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9735
9736         PR cli/14975
9737         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9738         unittests/format_pieces-selftests.c.
9739         * common/format.h (format_piece) <operator==>: New.
9740         (format_pieces) <operator[]>: Remove.
9741         * common/format.c (format_pieces::format_pieces): Handle \e.
9742         * unittests/format_pieces-selftests.c: New.
9743
9744 2018-05-17  Tom Tromey  <tom@tromey.com>
9745
9746         PR symtab/23010:
9747         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9748         (dw2_instantiate_symtab): Add skip_partial parameter.
9749         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9750         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9751         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9752         (dw2_expand_symtabs_matching_one)
9753         (dw2_find_pc_sect_compunit_symtab)
9754         (dw2_debug_names_lookup_symbol)
9755         (dw2_debug_names_expand_symtabs_for_function): Update.
9756         (init_cutu_and_read_dies): Add skip_partial parameter.
9757         (process_psymtab_comp_unit, build_type_psymtabs_1)
9758         (process_skeletonless_type_unit, load_partial_comp_unit)
9759         (psymtab_to_symtab_1): Update.
9760         (load_full_comp_unit): Add skip_partial parameter.
9761         (process_imported_unit_die, dwarf2_read_addr_index)
9762         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9763         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9764         (read_signatured_type): Update.
9765
9766 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9767
9768         * value.c (release_value): Remove unused variable.
9769         (record_latest_value): Likewise.
9770         (access_value_history): Likewise.
9771         (preserve_values): Likewise.
9772
9773 2018-05-17  Tom Tromey  <tom@tromey.com>
9774
9775         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9776         Initialize.
9777
9778 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9779
9780         PR gdb/22286
9781         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9782         Also handle registers whose width is not a multiple of
9783         PTRACE_TYPE_RET.
9784         (linux_nat_trad_target::store_register): Likewise.
9785
9786 2018-05-16  Tom Tromey  <tom@tromey.com>
9787
9788         * gdbcore.h (core_bfd): Redefine.
9789         * corelow.c (core_target::close): Update.
9790         (core_target_open): Update.
9791         * progspace.h (struct program_space) <cbfd>: Now a
9792         gdb_bfd_ref_ptr.
9793
9794 2018-05-16  Tom Tromey  <tom@tromey.com>
9795
9796         PR cli/19551:
9797         * symfile-add-flags.h (enum symfile_add_flags)
9798         <SYMFILE_NOT_FILENAME>: New constant.
9799         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9800         objfile name from BFD.
9801         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9802         * minidebug.c (find_separate_debug_file_in_section): Put
9803         ".gnu_debugdata" into BFD's file name.
9804
9805 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9806
9807         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9808         Remove.
9809
9810 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9811
9812         PR binutils/21446
9813         * aarch64-tdep.c (aarch64_analyze_prologue,
9814         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9815         Indicate not interested in errors.
9816
9817 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9818
9819         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9820         Supply the MIPS_ZERO_REGNUM register.
9821
9822 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9823
9824         * mips-tdep.c (mask_address_var): Make variable static.
9825
9826 2018-05-14  Tom Tromey  <tom@tromey.com>
9827
9828         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9829
9830 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9831
9832         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9833         FXSAVE_ADDR for the mxcsr register.
9834
9835 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9836
9837         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9838
9839 2018-05-11  Pedro Alves  <palves@redhat.com>
9840
9841         * corelow.c (core_target) <core_target>: No longer inline.
9842         Initialize m_core_gdbarch, m_core_vec and build the section table
9843         here.
9844         <~core_target>: New.
9845         <core_gdbarch, get_core_register_section>: New methods.
9846         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9847         factored out from ...
9848         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9849         (core_ops): Delete.
9850         (sniff_core_bfd): Add gdbarch parameter.
9851         (core_close): Delete, merged into ...
9852         (core_target::close): ... here.  Delete self.
9853         (core_close_cleanup): Delete.
9854         (core_target_open): Allocate a core_target on the heap.  Use a
9855         unique_ptr instead of a cleanup.  Bits moved into the core_target
9856         ctor.  Adjust to use core_target methods instead of globals.
9857         (get_core_register_section): Rename to ...
9858         (core_target::get_core_register_section): ... this and adjust.
9859         (struct get_core_registers_cb_data): New.
9860         (get_core_registers_cb): Use it.  Use bool.
9861         (core_target::fetch_registers, core_target::files_info)
9862         (core_target::xfer_partial, core_target::read_description)
9863         (core_target::pid_to, core_target::thread_name): Adjust to
9864         reference class fields instead of globals.
9865         * target.h (struct target_ops_deleter, target_ops_up): New.
9866
9867 2018-05-11  Pedro Alves  <palves@redhat.com>
9868
9869         * corefile.c (core_file_command): Move to corelow.c.
9870         * corelow.c (the_core_target): Delete.
9871         (core_file_command): Moved from corefile.c.  Check exec_bfd
9872         instead of the_core_target.  Use target_detach instead of calling
9873         into the_core_target directly.
9874         (maybe_say_no_core_file_now): New.
9875         (core_target::detach): Use it.
9876         (_initialize_corelow): Remove references to the_core_target.
9877         * gdbcore.h (the_core_target): Delete.
9878
9879 2018-05-11  Tom Tromey  <tromey@redhat.com>
9880             Pedro Alves  <palves@redhat.com>
9881
9882         * corefile.c (core_bfd): Remove.
9883         * gdbcore.h (core_bfd): Now a macro.
9884         * progspace.h (struct program_space) <cbfd>: New field.
9885
9886 2018-05-11  Tom Tromey  <tom@tromey.com>
9887
9888         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9889         gdb::def_vector.
9890
9891 2018-05-10  Tom Tromey  <tom@tromey.com>
9892
9893         * configure: Rebuild.
9894         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9895
9896 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9897
9898         PR server/23158:
9899         * regformats/regdat.sh: Adjust script, following the addition
9900         of the new expedite_regs parameter to init_target_desc.
9901
9902 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9903     
9904         PR gdb/23127
9905         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9906         set_gdbarch_significant_addr_bit.
9907         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9908         set_gdbarch_significant_addr_bit.
9909         * utils.c (address_significant): Update to sign extend addr.
9910
9911 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9912
9913         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9914         (xtensa_linux_init_abi): Limit tdep->num_regs by
9915         tdep->num_nopriv_regs.
9916         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9917         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9918         not initialized.
9919
9920 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9921
9922         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9923
9924 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9925
9926         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9927         (I387_MXCSR_INIT_VAL): New constant.
9928         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9929         buffer if it was supplied by the inferior.
9930         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9931         (i387_xsave_get_clear_bv): New function.
9932         (i387_supply_xsave): Only read x87 control registers from the
9933         xsave buffer if the feature is enabled, and the state will have
9934         been written, otherwise, provide a suitable default.
9935         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9936         including x87 control registers.  Update control registers if they
9937         have changed from the default value, and mark features as enabled
9938         as required.
9939         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9940
9941 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9942
9943         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9944
9945 2018-05-07  Tom Tromey  <tom@tromey.com>
9946
9947         * configure: Rebuild.
9948         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9949
9950 2018-05-07  Tom Tromey  <tom@tromey.com>
9951
9952         PR tdep/20362:
9953         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9954         bit.  Use correct value for VDIV.
9955
9956 2018-05-04  Tom Tromey  <tom@tromey.com>
9957
9958         * configure: Rebuild.
9959         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9960
9961 2018-05-04  Tom Tromey  <tom@tromey.com>
9962
9963         * linux-record.c (record_linux_system_call) <case
9964         RECORD_SYS_RECVFROM>: Add "break".
9965
9966 2018-05-04  Tom Tromey  <tom@tromey.com>
9967
9968         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9969         Add missing "break".
9970         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9971         Add missing "break".
9972
9973 2018-05-04  Tom Tromey  <tom@tromey.com>
9974
9975         * rs6000-tdep.c (ppc_process_record_op4)
9976         (ppc_process_record_op63): Add fall-through comment.
9977
9978 2018-05-04  Tom Tromey  <tom@tromey.com>
9979
9980         * i386-tdep.c (i386_process_record): Add fall-through comment.
9981
9982 2018-05-04  Tom Tromey  <tom@tromey.com>
9983
9984         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9985         comment.
9986
9987 2018-05-04  Tom Tromey  <tom@tromey.com>
9988
9989         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9990         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9991         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9992         comment.
9993         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9994         comment.
9995         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9996         comment.
9997
9998 2018-05-04  Tom Tromey  <tom@tromey.com>
9999
10000         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10001
10002 2018-05-04  Tom Tromey  <tom@tromey.com>
10003
10004         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10005         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10006         * symfile.c (section_is_mapped): Fix fall-through comment.
10007         * stabsread.c (define_symbol, read_member_functions): Fix
10008         fall-through comment.
10009         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10010         comment.
10011         * remote.c (remote_wait_as): Fix fall-through comment.
10012         * p-exp.y (yylex): Fix fall-through comment.
10013         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10014         comment.
10015         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10016         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10017         * jv-exp.y (yylex): Fix fall-through comment.
10018         * go-exp.y (lex_one_token): Fix fall-through comment.
10019         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10020         fall-through comment.
10021         * f-exp.y (yylex): Fix fall-through comment.
10022         * dwarf2read.c (process_die): Fix fall-through comments.
10023         * dbxread.c (process_one_symbol): Fix fall-through comment.
10024         * d-exp.y (lex_one_token): Fix fall-through comment.
10025         * cp-name-parser.y (yylex): Fix fall-through comment.
10026         * coffread.c (coff_symtab_read): Fix fall-through comment.
10027         * c-exp.y (lex_one_token): Fix fall-through comment.
10028         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10029         comment.
10030         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10031         comment.
10032
10033 2018-05-04  Tom Tromey  <tom@tromey.com>
10034
10035         PR python/22730:
10036         * NEWS: Mention gdb.execute change.
10037         * gdbcmd.h (execute_control_command): Don't declare.
10038         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10039         execute_control_commands, execute_control_commands_to_string.
10040         * cli/cli-script.h (execute_control_commands)
10041         (execute_control_commands_to_string): Declare.
10042         (execute_control_command): Add from_tty parameter.
10043         * cli/cli-script.c (execute_control_commands)
10044         (execute_control_commands_to_string): New functions.
10045         (execute_user_command): Use execute_control_commands.
10046         (execute_control_command_1): Add "from_tty" parameter.  Update.
10047         (execute_control_command): Likewise.
10048
10049 2018-05-04  Tom Tromey  <tom@tromey.com>
10050
10051         PR python/22731:
10052         * NEWS: Mention that breakpoint commands are writable.
10053         * python/py-breakpoint.c (bppy_set_commands): New function.
10054         (breakpoint_object_getset) <"commands">: Use it.
10055
10056 2018-05-04  Tom Tromey  <tom@tromey.com>
10057
10058         * tracepoint.c (actions_command): Update.
10059         * mi/mi-cmd-break.c (mi_command_line_array)
10060         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10061         (mi_read_next_line): Remove.
10062         (mi_cmd_break_commands): Update.
10063         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10064         function_view.
10065         * cli/cli-script.c (get_command_line): Update.
10066         (process_next_line): Use function_view.  Constify.
10067         (recurse_read_control_structure, read_command_lines)
10068         (read_command_lines_1): Change argument types to function_view.
10069         (do_define_command, document_command): Update.
10070         * breakpoint.h (check_tracepoint_command): Don't declare.
10071         * breakpoint.c (check_tracepoint_command): Remove.
10072         (commands_command_1, create_tracepoint_from_upload): Update.
10073
10074 2018-05-04  Tom Tromey  <tom@tromey.com>
10075
10076         PR gdb/11750:
10077         * cli/cli-script.h (enum command_control_type) <define_control>:
10078         New constant.
10079         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10080         (build_command_line, execute_control_command_1)
10081         (process_next_line): Likewise.
10082         (do_define_command): New function, extracted from define_command.
10083         (define_command): Use it.
10084
10085 2018-05-04  Tom Tromey  <tom@tromey.com>
10086
10087         * tracepoint.c (actions_command): Update.
10088         * cli/cli-script.h (read_command_lines): Update.
10089         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10090         (MAX_TMPBUF): Remove define.
10091         (define_command): Use string_printf.
10092         (document_command): Likewise.
10093         * breakpoint.c (commands_command_1): Update.
10094
10095 2018-05-04  Tom Tromey  <tom@tromey.com>
10096
10097         * top.c (execute_command): Update.
10098         * cli/cli-script.h (print_command_lines): Now varargs.
10099         * cli/cli-script.c (print_command_lines): Now varargs.
10100         (execute_control_command_1) <case while_control, case if_control>:
10101         Update.
10102
10103 2018-05-04  Tom Tromey  <tom@tromey.com>
10104
10105         * tracepoint.c (all_tracepoint_actions): Rename from
10106         all_tracepoint_actions_and_cleanup.  Change return type.
10107         (actions_command, encode_actions_1, encode_actions)
10108         (trace_dump_actions, tdump_command): Update.
10109         * remote.c (remote_download_command_source): Update.
10110         * python/python.c (gdbpy_eval_from_control_command)
10111         (python_command, python_interactive_command): Update.
10112         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10113         * guile/guile.c (guile_command)
10114         (gdbscm_eval_from_control_command, guile_command): Update.
10115         * compile/compile.c (compile_code_command)
10116         (compile_print_command, compile_to_object): Update.
10117         * cli/cli-script.h (struct command_lines_deleter): New.
10118         (counted_command_line): New typedef.
10119         (struct command_line): Add constructor, destructor.
10120         <body_list>: Remove.
10121         <body_list_0, body_list_1>: New members.
10122         (command_line_up): Remove typedef.
10123         (read_command_lines, read_command_lines_1, get_command_line):
10124         Update.
10125         (copy_command_lines): Don't declare.
10126         * cli/cli-script.c (build_command_line): Use "new".
10127         (get_command_line): Return counted_command_line.
10128         (print_command_lines, execute_user_command)
10129         (execute_control_command_1, while_command, if_command): Update.
10130         (realloc_body_list): Remove.
10131         (process_next_line, recurse_read_control_structure): Update.
10132         (read_command_lines, read_command_lines_1): Return counted_command_line.
10133         (free_command_lines): Use "delete".
10134         (copy_command_lines): Remove.
10135         (define_command, document_command, show_user_1): Update.
10136         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10137         a counted_command_line.
10138         * breakpoint.h (counted_command_line): Remove typedef.
10139         (breakpoint_set_commands): Update.
10140         * breakpoint.c (check_no_tracepoint_commands)
10141         (validate_commands_for_breakpoint): Update.
10142         (breakpoint_set_commands): Change commands to be a
10143         counted_command_line.
10144         (commands_command_1, update_dprintf_command_list)
10145         (create_tracepoint_from_upload): Update.
10146
10147 2018-05-04  Tom Tromey  <tom@tromey.com>
10148
10149         * cli/cli-decode.h (cmd_list_element): New constructor.
10150         (~cmd_list_element): New destructor.
10151         (struct cmd_list_element): Add initializers.
10152         * cli/cli-decode.c (do_add_cmd): Use "new".
10153         (delete_cmd): Use "delete".
10154
10155 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10156             Pedro Alves <palves@redhat.com>
10157
10158         PR breakpoints/19806 and support for PR external/20207.
10159         * NEWS: Mention Aarch64 watchpoint improvements.
10160         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10161         watchpoints and PR external/20207 watchpoints.
10162         * nat/aarch64-linux-hw-point.c
10163         (kernel_supports_any_contiguous_range): New.
10164         (aarch64_watchpoint_offset): New.
10165         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10166         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10167         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10168         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10169         next_addr_orig_p.  Support PR external/20207 watchpoints.
10170         (aarch64_downgrade_regs): New.
10171         (aarch64_dr_state_insert_one_point): New parameters offset and
10172         addr_orig.
10173         (aarch64_dr_state_remove_one_point): Likewise.
10174         (aarch64_handle_breakpoint): Update caller.
10175         (aarch64_handle_aligned_watchpoint): Likewise.
10176         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10177         aligned_offset.
10178         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10179         aarch64_downgrade_regs.
10180         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10181         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10182         (DR_CONTROL_MASK): ... this.
10183         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10184         (unsigned int aarch64_watchpoint_offset): New prototype.
10185         (aarch64_linux_set_debug_regs): Remove const from state.
10186         * utils.c (align_up, align_down): Move to ...
10187         * common/common-utils.c (align_up, align_down): ... here.
10188         * utils.h (align_up, align_down): Move to ...
10189         * common/common-utils.h (align_up, align_down): ... here.
10190
10191 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10192
10193         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10194         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10195         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10196         Re-implement to match the ABI as summarized in GCC's
10197         gcc/config/sparc/sparc.c.  All callers updated.
10198         (sparc32_store_arguments): Remove assertion.
10199
10200 2018-05-04  Tom Tromey  <tom@tromey.com>
10201
10202         * printcmd.c: Don't include tui.h.
10203         (decode_format): Use skip_spaces.
10204
10205 2018-05-04  Tom Tromey  <tom@tromey.com>
10206
10207         PR gdb/22619:
10208         * printcmd.c (last_count): New global.
10209         (x_command): Use saved count when repeating.
10210
10211 2018-05-04  Tom Tromey  <tom@tromey.com>
10212
10213         * nto-procfs.c (do_closedir_cleanup): Remove.
10214         (procfs_pidlist): Use gdb_dir_up.
10215         * procfs.c (do_closedir_cleanup): Remove.
10216         (proc_update_threads): Use gdb_dir_up.
10217         * common/filestuff.h (struct gdb_dir_deleter): New.
10218         (gdb_dir_up): New typedef.
10219
10220 2018-05-04  Tom Tromey  <tom@tromey.com>
10221
10222         * ada-lang.c (print_mention_exception): Use std::string.
10223
10224 2018-05-04  Tom Tromey  <tom@tromey.com>
10225
10226         * ada-lang.c (create_excep_cond_exprs): Update.
10227         (ada_exception_catchpoint_cond_string): Use std::string.
10228
10229 2018-05-04  Tom Tromey  <tom@tromey.com>
10230
10231         * ada-lang.c (xget_renaming_scope): Return std::string.
10232         (old_renaming_is_invisible): Update.
10233
10234 2018-05-04  Tom Tromey  <tom@tromey.com>
10235
10236         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10237         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10238
10239 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10240
10241         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10242
10243 2018-05-04  Tom Tromey  <tom@tromey.com>
10244
10245         * remote.c (remote_query_supported_append): Change type.
10246         (remote_check_symbols): Update.
10247
10248 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10249
10250         PR gdb/11420
10251         * configure.ac: Prepend libpython.
10252         * python/python-config.py: Likewise.
10253         * configure: Regenerate.
10254
10255 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10256
10257         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10258
10259 2018-05-03  Pedro Alves  <palves@redhat.com>
10260
10261         * s390-linux-nat.c
10262         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10263         override.  Write 'true' instead of '1'.
10264         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10265         declaration.
10266
10267 2018-05-02  Pedro Alves  <palves@redhat.com>
10268
10269         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10270         add_inf_child_target.
10271         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10272         add_inf_child_target.
10273         * aix-thread.c (aix_thread_target_info): New.
10274         (aix_thread_target) <shortname, longname, doc>: Delete.
10275         <info>: New.
10276         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10277         add_inf_child_target.
10278         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10279         add_inf_child_target.
10280         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10281         add_inf_child_target.
10282         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10283         add_inf_child_target.
10284         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10285         add_inf_child_target.
10286         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10287         add_inf_child_target.
10288         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10289         add_inf_child_target.
10290         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10291         add_inf_child_target.
10292         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10293         add_inf_child_target.
10294         * bfd-target.c (target_bfd_target_info): New.
10295         (target_bfd) <shortname, longname, doc>: Delete.
10296         <info>: New.
10297         * bsd-kvm.c (bsd_kvm_target_info): New.
10298         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10299         <info>: New.
10300         (bsd_kvm_target::open): Rename to ...
10301         (bsd_kvm_target_open): ... this.  Adjust.
10302         * bsd-uthread.c (bsd_uthread_target_info): New.
10303         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10304         <info>: New.
10305         * corefile.c (core_file_command): Adjust.
10306         * corelow.c (core_target_info): New.
10307         (core_target) <shortname, longname, doc>: Delete.
10308         <info>: New.
10309         (core_target::open): Rename to ...
10310         (core_target_open): ... this.  Adjust.
10311         * ctf.c (ctf_target_info): New.
10312         (ctf_target) <shortname, longname, doc>: Delete.
10313         <info>: New.
10314         (ctf_target::open): Rename to ...
10315         (ctf_target_open): ... this.
10316         (_initialize_ctf): Adjust.
10317         * exec.c (exec_target_info): New.
10318         (exec_target) <shortname, longname, doc>: Delete.
10319         <info>: New.
10320         (exec_target::open): Rename to ...
10321         (exec_target_open): ... this.
10322         * gdbcore.h (core_target_open): Declare.
10323         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10324         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10325         add_inf_child_target.
10326         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10327         add_inf_child_target.
10328         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10329         add_inf_child_target.
10330         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10331         add_inf_child_target.
10332         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10333         add_inf_child_target.
10334         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10335         add_inf_child_target.
10336         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10337         add_inf_child_target.
10338         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10339         add_inf_child_target.
10340         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10341         add_inf_child_target.
10342         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10343         add_inf_child_target.
10344         * inf-child.c (inf_child_target_info): New.
10345         (inf_child_target::info): New.
10346         (inf_child_open_target): Remove 'target' parameter.  Use
10347         get_native_target instead.
10348         (inf_child_target::open): Delete.
10349         (add_inf_child_target): New.
10350         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10351         Delete.
10352         <info>: New.
10353         (add_inf_child_target): Declare.
10354         (inf_child_open_target): Declare.
10355         * linux-thread-db.c (thread_db_target_info): New.
10356         (thread_db_target) <shortname, longname, doc>: Delete.
10357         <info>: New.
10358         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10359         add_inf_child_target.
10360         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10361         add_inf_child_target.
10362         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10363         add_inf_child_target.
10364         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10365         add_inf_child_target.
10366         * make-target-delegates (print_class): Adjust.
10367         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10368         add_inf_child_target.
10369         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10370         add_inf_child_target.
10371         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10372         add_inf_child_target.
10373         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10374         add_inf_child_target.
10375         * nto-procfs.c (nto_native_target_info): New.
10376         (nto_procfs_target_native) <shortname, longname, doc>:
10377         Delete.
10378         <info>: New.
10379         (nto_procfs_target_info): New.
10380         (nto_procfs_target_procfs) <shortname, longname, doc>:
10381         Delete.
10382         <info>: New.
10383         (init_procfs_targets): Adjust.
10384         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10385         add_inf_child_target.
10386         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10387         add_inf_child_target.
10388         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10389         add_inf_child_target.
10390         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10391         add_inf_child_target.
10392         * ravenscar-thread.c (ravenscar_target_info): New.
10393         (ravenscar_thread_target) <shortname, longname, doc>:
10394         Delete.
10395         <info>: New.
10396         * record-btrace.c (record_btrace_target_info):
10397         (record_btrace_target) <shortname, longname, doc>: Delete.
10398         <info>: New.
10399         (record_btrace_target::open): Rename to ...
10400         (record_btrace_target_open): ... this.  Adjust.
10401         * record-full.c (record_longname, record_doc): New.
10402         (record_full_base_target) <shortname, longname, doc>: Delete.
10403         <info>: New.
10404         (record_full_target_info): New.
10405         (record_full_target): <shortname>: Delete.
10406         <info>: New.
10407         (record_full_core_open_1, record_full_open_1): Update comments.
10408         (record_full_base_target::open): Rename to ...
10409         (record_full_open): ... this.
10410         (cmd_record_full_restore): Update.
10411         (_initialize_record_full): Update.
10412         * remote-sim.c (remote_sim_target_info): New.
10413         (gdbsim_target) <shortname, longname, doc>: Delete.
10414         <info>: New.
10415         (gdbsim_target::open): Rename to ...
10416         (gdbsim_target_open): ... this.
10417         (_initialize_remote_sim): Adjust.
10418         * remote.c (remote_doc): New.
10419         (remote_target_info): New.
10420         (remote_target) <shortname, longname, doc>: Delete.
10421         <info>: New.
10422         (extended_remote_target_info): New.
10423         (extended_remote_target) <shortname, longname, doc>: Delete.
10424         <info>: New.
10425         (remote_target::open_1): Make static.  Adjust.
10426         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10427         * s390-linux-nat.c (_initialize_s390_nat): Use
10428         add_inf_child_target.
10429         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10430         add_inf_child_target.
10431         * sol-thread.c (thread_db_target_info): New.
10432         (sol_thread_target) <shortname, longname, doc>: Delete.
10433         <info>: New.
10434         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10435         add_inf_child_target.
10436         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10437         add_inf_child_target.
10438         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10439         add_inf_child_target.
10440         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10441         add_inf_child_target.
10442         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10443         add_inf_child_target.
10444         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10445         add_inf_child_target.
10446         * spu-linux-nat.c (_initialize_spu_nat): Use
10447         add_inf_child_target.
10448         * spu-multiarch.c (spu_multiarch_target_info): New.
10449         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10450         <info>: New.
10451         * target-delegates.c: Regenerate.
10452         * target.c: Include <unordered_map>.
10453         (target_ops_p): Delete.
10454         (DEF_VEC_P(target_ops_p)): Delete.
10455         (target_factories): New.
10456         (test_target_info): New.
10457         (test_target_ops::info): New.
10458         (open_target): Adjust to use target_factories.
10459         (add_target_with_completer): Rename to ...
10460         (add_target): ... this.  Change prototype.  Register target_info
10461         and open callback in target_factories.  Register target_info in
10462         command context instead of target_ops.
10463         (add_target): Delete old implementation.
10464         (add_deprecated_target_alias): Change prototype.  Adjust.
10465         (the_native_target): New.
10466         (set_native_target, get_native_target): New.
10467         (find_default_run_target): Use the_native_target.
10468         (find_attach_target, find_run_target): Simplify.
10469         (target_ops::open): Delete.
10470         (dummy_target_info): New.
10471         (dummy_target::shortname, dummy_target::longname)
10472         (dummy_target::doc): Delete.
10473         (dummy_target::info): New.
10474         (debug_target::shortname, debug_target::longname)
10475         (debug_target::doc): Delete.
10476         (debug_target::info): New.
10477         * target.h (struct target_info): New.
10478         (target_ops::~target_ops): Add comment.
10479         (target_ops::info): New.
10480         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10481         longer virtual.  Implement in terms of target_info.
10482         (set_native_target, get_native_target): Declare.
10483         (target_open_ftype): New.
10484         (add_target, add_target_with_completer)
10485         (add_deprecated_target_alias): Change prototype.
10486         (test_target) <shortname, longname, doc>: Delete.
10487         <info>: New.
10488         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10489         add_inf_child_target.
10490         * tracefile-tfile.c (tfile_target_info): New.
10491         (tfile_target) <shortname, longname, doc>: Delete.
10492         <info>: New.
10493         (tfile_target::open): Rename to ...
10494         (tfile_target_open): ... this.
10495         (_initialize_tracefile_tfile): Adjust.
10496         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10497         add_inf_child_target.
10498         * windows-nat.c (_initialize_windows_nat): Use
10499         add_inf_child_target.
10500         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10501         add_inf_child_target.
10502
10503 2018-05-02  Pedro Alves  <palves@redhat.com>
10504
10505         * linux-nat.h (linux_nat_target) <low_new_thread,
10506         low_delete_thread, low_new_fork, low_forget_process,
10507         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10508         New virtual methods.
10509         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10510         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10511         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10512         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10513         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10514         Delete.
10515         * linux-fork.c (delete_fork): Adjust to call low method.
10516         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10517         (linux_nat_new_fork, linux_nat_forget_process_hook)
10518         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10519         (linux_nat_status_is_event):
10520         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10521         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10522         to call low method.
10523         (sigtrap_is_event): Rename to ...
10524         (linux_nat_target::low_status_is_event): ... this.
10525         (linux_nat_set_status_is_event): Delete.
10526         (save_stop_reason, linux_nat_wait_1)
10527         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10528         low methods.
10529         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10530         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10531         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10532         (linux_nat_set_prepare_to_resume): Delete.
10533         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10534         low virtual methods.
10535         * amd64-linux-nat.c: Likewise.
10536         * arm-linux-nat.c: Likewise.
10537         * i386-linux-nat.c: Likewise.
10538         * ia64-linux-nat.c: Likewise.
10539         * mips-linux-nat.c: Likewise.
10540         * ppc-linux-nat.c: Likewise.
10541         * s390-linux-nat.c: Likewise.
10542         * sparc64-linux-nat.c: Likewise.
10543         * x86-linux-nat.c: Likewise.
10544         * x86-linux-nat.h: Include "nat/x86-linux.h".
10545         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10546         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10547         Override methods.
10548
10549 2018-05-02  Pedro Alves  <palves@redhat.com>
10550
10551         * target.h (target_ops)
10552         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10553         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10554         stopped_by_watchpoint, have_continuable_watchpoint,
10555         stopped_data_address, watchpoint_addr_within_range,
10556         can_accel_watchpoint_condition, can_run, thread_alive,
10557         has_all_memory, has_memory, has_stack, has_registers,
10558         has_execution, can_async_p, is_async_p, supports_non_stop,
10559         always_non_stop_p, can_execute_reverse, supports_multi_process,
10560         supports_enable_disable_tracepoint,
10561         supports_disable_randomization, supports_string_tracing,
10562         supports_evaluation_of_breakpoint_conditions,
10563         can_run_breakpoint_commands, filesystem_is_local,
10564         can_download_tracepoint, get_trace_state_variable_value,
10565         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10566         record_is_replaying, record_will_replay,
10567         augmented_libraries_svr4_read>: Adjust to return bool.
10568         * aarch64-linux-nat.c: All implementations adjusted.
10569         * aix-thread.c: All implementations adjusted.
10570         * arm-linux-nat.c: All implementations adjusted.
10571         * breakpoint.c: All implementations adjusted.
10572         * bsd-kvm.c: All implementations adjusted.
10573         * bsd-uthread.c: All implementations adjusted.
10574         * corelow.c: All implementations adjusted.
10575         * ctf.c: All implementations adjusted.
10576         * darwin-nat.c: All implementations adjusted.
10577         * darwin-nat.h: All implementations adjusted.
10578         * exec.c: All implementations adjusted.
10579         * fbsd-nat.c: All implementations adjusted.
10580         * fbsd-nat.h: All implementations adjusted.
10581         * gnu-nat.c: All implementations adjusted.
10582         * gnu-nat.h: All implementations adjusted.
10583         * go32-nat.c: All implementations adjusted.
10584         * ia64-linux-nat.c: All implementations adjusted.
10585         * inf-child.c: All implementations adjusted.
10586         * inf-child.h: All implementations adjusted.
10587         * inf-ptrace.c: All implementations adjusted.
10588         * inf-ptrace.h: All implementations adjusted.
10589         * linux-nat.c: All implementations adjusted.
10590         * linux-nat.h: All implementations adjusted.
10591         * mips-linux-nat.c: All implementations adjusted.
10592         * nto-procfs.c: All implementations adjusted.
10593         * ppc-linux-nat.c: All implementations adjusted.
10594         * procfs.c: All implementations adjusted.
10595         * ravenscar-thread.c: All implementations adjusted.
10596         * record-btrace.c: All implementations adjusted.
10597         * record-full.c: All implementations adjusted.
10598         * remote-sim.c: All implementations adjusted.
10599         * remote.c: All implementations adjusted.
10600         * s390-linux-nat.c: All implementations adjusted.
10601         * sol-thread.c: All implementations adjusted.
10602         * spu-multiarch.c: All implementations adjusted.
10603         * target-delegates.c: All implementations adjusted.
10604         * target.c: All implementations adjusted.
10605         * target.h: All implementations adjusted.
10606         * tracefile-tfile.c: All implementations adjusted.
10607         * tracefile.c: All implementations adjusted.
10608         * tracefile.h: All implementations adjusted.
10609         * windows-nat.c: All implementations adjusted.
10610         * x86-linux-nat.h: All implementations adjusted.
10611         * x86-nat.h: All implementations adjusted.
10612
10613 2018-05-02  Pedro Alves  <palves@redhat.com>
10614
10615         * make-target-delegates (scan_target_h): Don't trim lines here.
10616         Replace sequences of tabs and/or whitespace with a single
10617         whitespace.
10618         (top level, parsing methods): Trim each line before processing it
10619         here.
10620
10621 2018-05-02  Pedro Alves  <palves@redhat.com>
10622             John Baldwin  <jhb@freebsd.org>
10623
10624         * target.h (enum strata) <debug_stratum>: New.
10625         (struct target_ops) <all delegation methods>: Replace by C++
10626         virtual methods, and drop "to_" prefix.  All references updated
10627         throughout.
10628         <to_shortname, to_longname, to_doc, to_data,
10629         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10630         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10631         virtual methods.  All references updated throughout.
10632         <can_attach, supports_terminal_ours, can_create_inferior,
10633         get_thread_control_capabilities, attach_no_wait>: New
10634         virtual methods.
10635         <insert_breakpoint, remove_breakpoint>: Now
10636         TARGET_DEFAULT_NORETURN methods.
10637         <info_proc>: Now returns bool.
10638         <to_magic>: Delete.
10639         (OPS_MAGIC): Delete.
10640         (current_target): Delete.  All references replaced by references
10641         to ...
10642         (target_stack): ... this.  New.
10643         (target_shortname, target_longname): Adjust.
10644         (target_can_run): Now a function declaration.
10645         (default_child_has_all_memory, default_child_has_memory)
10646         (default_child_has_stack, default_child_has_registers)
10647         (default_child_has_execution): Remove target_ops parameter.
10648         (complete_target_initialization): Delete.
10649         (memory_breakpoint_target): New template class.
10650         (test_target_ops): Refactor as a C++ class with virtual methods.
10651         * make-target-delegates (NAME_PART): Tighten.
10652         (POINTER_PART, CP_SYMBOL): New.
10653         (SIMPLE_RETURN_PART): Reimplement.
10654         (VEC_RETURN_PART): Expect less.
10655         (RETURN_PART, VIRTUAL_PART): New.
10656         (METHOD): Adjust to C++ virtual methods.
10657         (scan_target_h): Remove reference to C99.
10658         (dname): Output "target_ops::" prefix.
10659         (write_function_header): Adjust to output a C++ class method.
10660         (write_declaration): New.
10661         (write_delegator): Adjust to output a C++ class method.
10662         (tdname): Output "dummy_target::" prefix.
10663         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10664         method.
10665         (tdefault_names, debug_names): Delete.
10666         (return_types, tdefaults, styles, argtypes_array): New.
10667         (top level): All methods are delegators.
10668         (print_class): New.
10669         (top level): Print dummy_target and debug_target classes.
10670         * target-delegates.c: Regenerate.
10671         * target-debug.h (target_debug_print_enum_info_proc_what)
10672         (target_debug_print_thread_control_capabilities)
10673         (target_debug_print_thread_info_p): New.
10674         * target.c (dummy_target): Delete.
10675         (the_dummy_target, the_debug_target): New.
10676         (target_stack): Now extern.
10677         (set_targetdebug): Push/unpush debug target.
10678         (default_child_has_all_memory, default_child_has_memory)
10679         (default_child_has_stack, default_child_has_registers)
10680         (default_child_has_execution): Remove target_ops parameter.
10681         (complete_target_initialization): Delete.
10682         (add_target_with_completer): No longer call
10683         complete_target_initialization.
10684         (target_supports_terminal_ours): Use regular delegation.
10685         (update_current_target): Delete.
10686         (push_target): No longer check magic number.  Don't call
10687         update_current_target.
10688         (unpush_target): Don't call update_current_target.
10689         (target_is_pushed): No longer check magic number.
10690         (target_require_runnable): Skip for all stratums over
10691         process_stratum.
10692         (target_ops::info_proc): New.
10693         (target_info_proc): Use find_target_at and
10694         find_default_run_target.
10695         (target_supports_disable_randomization): Use regular delegation.
10696         (target_get_osdata): Use find_target_at.
10697         (target_ops::open, target_ops::close, target_ops::can_attach)
10698         (target_ops::attach, target_ops::can_create_inferior)
10699         (target_ops::create_inferior, target_ops::can_run)
10700         (target_can_run): New.
10701         (default_fileio_target): Use regular delegation.
10702         (target_ops::fileio_open, target_ops::fileio_pwrite)
10703         (target_ops::fileio_pread, target_ops::fileio_fstat)
10704         (target_ops::fileio_close, target_ops::fileio_unlink)
10705         (target_ops::fileio_readlink): New.
10706         (target_fileio_open_1, target_fileio_unlink)
10707         (target_fileio_readlink): Always call the target method.  Handle
10708         FILEIO_ENOSYS.
10709         (return_zero, return_zero_has_execution): Delete.
10710         (init_dummy_target): Delete.
10711         (dummy_target::dummy_target, dummy_target::shortname)
10712         (dummy_target::longname, dummy_target::doc)
10713         (debug_target::debug_target, debug_target::shortname)
10714         (debug_target::longname, debug_target::doc): New.
10715         (target_supports_delete_record): Use regular delegation.
10716         (setup_target_debug): Delete.
10717         (maintenance_print_target_stack): Skip debug_stratum.
10718         (initialize_targets): Instantiate the_dummy_target and
10719         the_debug_target.
10720         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10721         use target_stack.
10722         (target_auxv_search, fprint_target_auxv): Adjust.
10723         (info_auxv_command): Adjust to use target_stack.
10724         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10725         * exceptions.c (print_flush): Handle a NULL target_stack.
10726         * regcache.c (target_ops_no_register): Refactor as class with
10727         virtual methods.
10728
10729         * exec.c (exec_target): New class.
10730         (exec_ops): Now an exec_target.
10731         (exec_open, exec_close_1, exec_get_section_table)
10732         (exec_xfer_partial, exec_files_info, exec_has_memory)
10733         (exec_make_note_section): Refactor as exec_target methods.
10734         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10735         Delete.
10736         (exec_target::find_memory_regions): New.
10737         (_initialize_exec): Don't call init_exec_ops.
10738         * gdbcore.h (exec_file_clear): Delete.
10739
10740         * corefile.c (core_target): Delete.
10741         (core_file_command): Adjust.
10742         * corelow.c (core_target): New class.
10743         (the_core_target): New.
10744         (core_close): Remove target_ops parameter.
10745         (core_close_cleanup): Adjust.
10746         (core_target::close): New.
10747         (core_open, core_detach, get_core_registers, core_files_info)
10748         (core_xfer_partial, core_thread_alive, core_read_description)
10749         (core_pid_to_str, core_thread_name, core_has_memory)
10750         (core_has_stack, core_has_registers, core_info_proc): Rework as
10751         core_target methods.
10752         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10753         (_initialize_corelow): Initialize the_core_target.
10754         * gdbcore.h (core_target): Delete.
10755         (the_core_target): New.
10756
10757         * ctf.c: (ctf_target): New class.
10758         (ctf_ops): Now a ctf_target.
10759         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10760         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10761         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10762         methods.
10763         (init_ctf_ops): Delete.
10764         (_initialize_ctf): Don't call it.
10765         * tracefile-tfile.c (tfile_target): New class.
10766         (tfile_ops): Now a tfile_target.
10767         (tfile_open, tfile_close, tfile_files_info)
10768         (tfile_get_tracepoint_status, tfile_trace_find)
10769         (tfile_fetch_registers, tfile_xfer_partial)
10770         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10771         Refactor as tfile_target methods.
10772         (tfile_xfer_partial_features): Remove target_ops parameter.
10773         (init_tfile_ops): Delete.
10774         (_initialize_tracefile_tfile): Don't call it.
10775         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10776         (tracefile_has_stack, tracefile_has_registers)
10777         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10778         tracefile_target methods.
10779         (init_tracefile_ops): Delete.
10780         (tracefile_target::tracefile_target): New.
10781         * tracefile.h: Include "target.h".
10782         (tracefile_target): New class.
10783         (init_tracefile_ops): Delete.
10784
10785         * spu-multiarch.c (spu_multiarch_target): New class.
10786         (spu_ops): Now a spu_multiarch_target.
10787         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10788         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10789         (spu_search_memory, spu_mourn_inferior): Refactor as
10790         spu_multiarch_target methods.
10791         (init_spu_ops): Delete.
10792         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10793         complete_target_initialization.
10794
10795         * ravenscar-thread.c (ravenscar_thread_target): New class.
10796         (ravenscar_ops): Now a ravenscar_thread_target.
10797         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10798         (ravenscar_thread_alive, ravenscar_pid_to_str)
10799         (ravenscar_fetch_registers, ravenscar_store_registers)
10800         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10801         (ravenscar_stopped_by_hw_breakpoint)
10802         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10803         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10804         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10805         methods.
10806         (init_ravenscar_thread_ops): Delete.
10807         (_initialize_ravenscar): Remove references to
10808         init_ravenscar_thread_ops and complete_target_initialization.
10809
10810         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10811         (bsd_uthread_target): New class.
10812         (bsd_uthread_ops): Now a bsd_uthread_target.
10813         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10814         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10815         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10816         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10817         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10818         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10819         (bsd_uthread_target): Delete function.
10820         (_initialize_bsd_uthread): Remove reference to
10821         complete_target_initialization.
10822
10823         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10824         (target_bfd): ... this new class.
10825         (target_bfd_xfer_partial, target_bfd_get_section_table)
10826         (target_bfd_close): Refactor as target_bfd methods.
10827         (target_bfd::~target_bfd): New.
10828         (target_bfd_reopen): Adjust.
10829         (target_bfd::close): New.
10830
10831         * record-btrace.c (record_btrace_target): New class.
10832         (record_btrace_ops): Now a record_btrace_target.
10833         (record_btrace_open, record_btrace_stop_recording)
10834         (record_btrace_disconnect, record_btrace_close)
10835         (record_btrace_async, record_btrace_info)
10836         (record_btrace_insn_history, record_btrace_insn_history_range)
10837         (record_btrace_insn_history_from, record_btrace_call_history)
10838         (record_btrace_call_history_range)
10839         (record_btrace_call_history_from, record_btrace_record_method)
10840         (record_btrace_is_replaying, record_btrace_will_replay)
10841         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10842         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10843         (record_btrace_store_registers, record_btrace_prepare_to_store)
10844         (record_btrace_to_get_unwinder)
10845         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10846         (record_btrace_commit_resume, record_btrace_wait)
10847         (record_btrace_stop, record_btrace_can_execute_reverse)
10848         (record_btrace_stopped_by_sw_breakpoint)
10849         (record_btrace_supports_stopped_by_sw_breakpoint)
10850         (record_btrace_stopped_by_hw_breakpoint)
10851         (record_btrace_supports_stopped_by_hw_breakpoint)
10852         (record_btrace_update_thread_list, record_btrace_thread_alive)
10853         (record_btrace_goto_begin, record_btrace_goto_end)
10854         (record_btrace_goto, record_btrace_stop_replaying_all)
10855         (record_btrace_execution_direction)
10856         (record_btrace_prepare_to_generate_core)
10857         (record_btrace_done_generating_core): Refactor as
10858         record_btrace_target methods.
10859         (init_record_btrace_ops): Delete.
10860         (_initialize_record_btrace): Remove reference to
10861         init_record_btrace_ops.
10862         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10863         the execution_direction global.
10864         (record_full_base_target, record_full_target)
10865         (record_full_core_target): New classes.
10866         (record_full_ops): Now a record_full_target.
10867         (record_full_core_ops): Now a record_full_core_target.
10868         (record_full_target::detach, record_full_target::disconnect)
10869         (record_full_core_target::disconnect)
10870         (record_full_target::mourn_inferior, record_full_target::kill):
10871         New.
10872         (record_full_open, record_full_close, record_full_async): Refactor
10873         as methods of the record_full_base_target class.
10874         (record_full_resume, record_full_commit_resume): Refactor
10875         as methods of the record_full_target class.
10876         (record_full_wait, record_full_stopped_by_watchpoint)
10877         (record_full_stopped_data_address)
10878         (record_full_stopped_by_sw_breakpoint)
10879         (record_full_supports_stopped_by_sw_breakpoint)
10880         (record_full_stopped_by_hw_breakpoint)
10881         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10882         methods of the record_full_base_target class.
10883         (record_full_store_registers, record_full_xfer_partial)
10884         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10885         Refactor as methods of the record_full_target class.
10886         (record_full_can_execute_reverse, record_full_get_bookmark)
10887         (record_full_goto_bookmark, record_full_execution_direction)
10888         (record_full_record_method, record_full_info, record_full_delete)
10889         (record_full_is_replaying, record_full_will_replay)
10890         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10891         (record_full_stop_replaying): Refactor as methods of the
10892         record_full_base_target class.
10893         (record_full_core_resume, record_full_core_kill)
10894         (record_full_core_fetch_registers)
10895         (record_full_core_prepare_to_store)
10896         (record_full_core_store_registers, record_full_core_xfer_partial)
10897         (record_full_core_insert_breakpoint)
10898         (record_full_core_remove_breakpoint)
10899         (record_full_core_has_execution): Refactor
10900         as methods of the record_full_core_target class.
10901         (record_full_base_target::supports_delete_record): New.
10902         (init_record_full_ops): Delete.
10903         (init_record_full_core_ops): Delete.
10904         (record_full_save): Refactor as method of the
10905         record_full_base_target class.
10906         (_initialize_record_full): Remove references to
10907         init_record_full_ops and init_record_full_core_ops.
10908
10909         * remote.c (remote_target, extended_remote_target): New classes.
10910         (remote_ops): Now a remote_target.
10911         (extended_remote_ops): Now an extended_remote_target.
10912         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10913         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10914         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10915         (remote_pass_signals, remote_set_syscall_catchpoint)
10916         (remote_program_signals, )
10917         (remote_thread_always_alive): Remove target_ops parameter.
10918         (remote_thread_alive, remote_thread_name)
10919         (remote_update_thread_list, remote_threads_extra_info)
10920         (remote_static_tracepoint_marker_at)
10921         (remote_static_tracepoint_markers_by_strid)
10922         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10923         (remote_open): Refactor as methods of remote_target.
10924         (extended_remote_open, extended_remote_detach)
10925         (extended_remote_attach, extended_remote_post_attach):
10926         (extended_remote_supports_disable_randomization)
10927         (extended_remote_create_inferior): : Refactor as method of
10928         extended_remote_target.
10929         (remote_set_permissions, remote_open_1, remote_detach)
10930         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10931         (remote_resume, remote_commit_resume, remote_stop)
10932         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10933         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10934         (remote_prepare_to_store, remote_store_registers)
10935         (remote_flash_erase, remote_flash_done, remote_files_info)
10936         (remote_kill, remote_mourn, remote_insert_breakpoint)
10937         (remote_remove_breakpoint, remote_insert_watchpoint)
10938         (remote_watchpoint_addr_within_range)
10939         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10940         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10941         (remote_supports_stopped_by_sw_breakpoint)
10942         (remote_stopped_by_hw_breakpoint)
10943         (remote_supports_stopped_by_hw_breakpoint)
10944         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10945         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10946         (remote_verify_memory): Refactor as methods of remote_target.
10947         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10948         parameter.
10949         (remote_xfer_partial, remote_get_memory_xfer_limit)
10950         (remote_search_memory, remote_rcmd, remote_memory_map)
10951         (remote_pid_to_str, remote_get_thread_local_address)
10952         (remote_get_tib_address, remote_read_description): Refactor as
10953         methods of remote_target.
10954         (remote_target::fileio_open, remote_target::fileio_pwrite)
10955         (remote_target::fileio_pread, remote_target::fileio_close): New.
10956         (remote_hostio_readlink, remote_hostio_fstat)
10957         (remote_filesystem_is_local, remote_can_execute_reverse)
10958         (remote_supports_non_stop, remote_supports_disable_randomization)
10959         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10960         (remote_supports_enable_disable_tracepoint)
10961         (remote_supports_string_tracing)
10962         (remote_can_run_breakpoint_commands, remote_trace_init)
10963         (remote_download_tracepoint, remote_can_download_tracepoint)
10964         (remote_download_trace_state_variable, remote_enable_tracepoint)
10965         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10966         (remote_trace_start, remote_get_trace_status)
10967         (remote_get_tracepoint_status, remote_trace_stop)
10968         (remote_trace_find, remote_get_trace_state_variable_value)
10969         (remote_save_trace_data, remote_get_raw_trace_data)
10970         (remote_set_disconnected_tracing, remote_core_of_thread)
10971         (remote_set_circular_trace_buffer, remote_traceframe_info)
10972         (remote_get_min_fast_tracepoint_insn_len)
10973         (remote_set_trace_buffer_size, remote_set_trace_notes)
10974         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10975         (remote_disable_btrace, remote_teardown_btrace)
10976         (remote_read_btrace, remote_btrace_conf)
10977         (remote_augmented_libraries_svr4_read, remote_load)
10978         (remote_pid_to_exec_file, remote_can_do_single_step)
10979         (remote_execution_direction, remote_thread_handle_to_thread_info):
10980         Refactor as methods of remote_target.
10981         (init_remote_ops, init_extended_remote_ops): Delete.
10982         (remote_can_async_p, remote_is_async_p, remote_async)
10983         (remote_thread_events, remote_upload_tracepoints)
10984         (remote_upload_trace_state_variables): Refactor as methods of
10985         remote_target.
10986         (_initialize_remote): Remove references to init_remote_ops and
10987         init_extended_remote_ops.
10988
10989         * remote-sim.c (gdbsim_target): New class.
10990         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10991         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10992         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10993         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10994         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10995         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10996         Refactor as methods of gdbsim_target.
10997         (gdbsim_ops): Now a gdbsim_target.
10998         (init_gdbsim_ops): Delete.
10999         (gdbsim_cntrl_c): Adjust.
11000         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11001
11002         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11003         (the_amd64_linux_nat_target): New.
11004         (amd64_linux_fetch_inferior_registers)
11005         (amd64_linux_store_inferior_registers): Refactor as methods of
11006         amd64_linux_nat_target.
11007         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11008         * i386-linux-nat.c: Don't include "linux-nat.h".
11009         (i386_linux_nat_target): New class.
11010         (the_i386_linux_nat_target): New.
11011         (i386_linux_fetch_inferior_registers)
11012         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11013         as methods of i386_linux_nat_target.
11014         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11015         * inf-child.c (inf_child_ops): Delete.
11016         (inf_child_fetch_inferior_registers)
11017         (inf_child_store_inferior_registers): Delete.
11018         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11019         methods of inf_child_target.
11020         (inf_child_target::supports_terminal_ours)
11021         (inf_child_target::terminal_init)
11022         (inf_child_target::terminal_inferior)
11023         (inf_child_target::terminal_ours_for_output)
11024         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11025         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11026         New.
11027         (inf_child_open, inf_child_disconnect, inf_child_close)
11028         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11029         (inf_child_post_startup_inferior, inf_child_can_run)
11030         (inf_child_pid_to_exec_file): Refactor as methods of
11031         inf_child_target.
11032         (inf_child_follow_fork): Delete.
11033         (inf_child_target::can_create_inferior)
11034         (inf_child_target::can_attach): New.
11035         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11036         (inf_child_target::has_stack, inf_child_target::has_registers)
11037         (inf_child_target::has_execution): New.
11038         (inf_child_fileio_open, inf_child_fileio_pwrite)
11039         (inf_child_fileio_pread, inf_child_fileio_fstat)
11040         (inf_child_fileio_close, inf_child_fileio_unlink)
11041         (inf_child_fileio_readlink, inf_child_use_agent)
11042         (inf_child_can_use_agent): Refactor as methods of
11043         inf_child_target.
11044         (return_zero, inf_child_target): Delete.
11045         (inf_child_target::inf_child_target): New.
11046         * inf-child.h: Include "target.h".
11047         (inf_child_target): Delete function prototype.
11048         (inf_child_target): New class.
11049         (inf_child_open_target, inf_child_mourn_inferior)
11050         (inf_child_maybe_unpush_target): Delete.
11051         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11052         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11053         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11054         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11055         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11056         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11057         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11058         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11059         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11060         methods of inf_ptrace_target.
11061         (inf_ptrace_target): Delete function.
11062         * inf-ptrace.h: Include "inf-child.h".
11063         (inf_ptrace_target): Delete function declaration.
11064         (inf_ptrace_target): New class.
11065         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11066         * linux-nat.c (linux_target): New.
11067         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11068         (linux_nat_target::~linux_nat_target): New.
11069         (linux_child_post_attach, linux_child_post_startup_inferior)
11070         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11071         (linux_child_remove_fork_catchpoint)
11072         (linux_child_insert_vfork_catchpoint)
11073         (linux_child_remove_vfork_catchpoint)
11074         (linux_child_insert_exec_catchpoint)
11075         (linux_child_remove_exec_catchpoint)
11076         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11077         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11078         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11079         (linux_nat_stopped_data_address)
11080         (linux_nat_stopped_by_sw_breakpoint)
11081         (linux_nat_supports_stopped_by_sw_breakpoint)
11082         (linux_nat_stopped_by_hw_breakpoint)
11083         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11084         (linux_nat_kill, linux_nat_mourn_inferior)
11085         (linux_nat_xfer_partial, linux_nat_thread_alive)
11086         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11087         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11088         (linux_child_static_tracepoint_markers_by_strid)
11089         (linux_nat_is_async_p, linux_nat_can_async_p)
11090         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11091         (linux_nat_supports_multi_process)
11092         (linux_nat_supports_disable_randomization, linux_nat_async)
11093         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11094         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11095         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11096         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11097         methods of linux_nat_target.
11098         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11099         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11100         parameter.
11101         (check_stopped_by_watchpoint): Adjust.
11102         (linux_xfer_partial): Delete.
11103         (linux_target_install_ops, linux_target, linux_nat_add_target):
11104         Delete.
11105         (linux_nat_target::linux_nat_target): New.
11106         * linux-nat.h: Include "inf-ptrace.h".
11107         (linux_nat_target): New.
11108         (linux_target, linux_target_install_ops, linux_nat_add_target):
11109         Delete function declarations.
11110         (linux_target): Declare global.
11111         * linux-thread-db.c (thread_db_target): New.
11112         (thread_db_target::thread_db_target): New.
11113         (thread_db_ops): Delete.
11114         (the_thread_db_target): New.
11115         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11116         (thread_db_update_thread_list, thread_db_pid_to_str)
11117         (thread_db_extra_thread_info)
11118         (thread_db_thread_handle_to_thread_info)
11119         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11120         (thread_db_resume): Refactor as methods of thread_db_target.
11121         (init_thread_db_ops): Delete.
11122         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11123         * x86-linux-nat.c: Don't include "linux-nat.h".
11124         (super_post_startup_inferior): Delete.
11125         (x86_linux_nat_target::~x86_linux_nat_target): New.
11126         (x86_linux_child_post_startup_inferior)
11127         (x86_linux_read_description, x86_linux_enable_btrace)
11128         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11129         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11130         methods of x86_linux_nat_target.
11131         (x86_linux_create_target): Delete.  Bits folded ...
11132         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11133         pointer.
11134         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11135         (x86_linux_nat_target): New class.
11136         (x86_linux_create_target): Delete.
11137         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11138         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11139         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11140         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11141         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11142         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11143         make extern.
11144         (x86_use_watchpoints): Delete.
11145         * x86-nat.h: Include "breakpoint.h" and "target.h".
11146         (x86_use_watchpoints): Delete.
11147         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11148         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11149         (x86_insert_watchpoint, x86_remove_watchpoint)
11150         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11151         (x86_stopped_by_hw_breakpoint): New declarations.
11152         (x86_nat_target): New template class.
11153
11154         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11155         (the_ppc_linux_nat_target): New.
11156         (ppc_linux_fetch_inferior_registers)
11157         (ppc_linux_can_use_hw_breakpoint)
11158         (ppc_linux_region_ok_for_hw_watchpoint)
11159         (ppc_linux_ranged_break_num_registers)
11160         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11161         (ppc_linux_insert_mask_watchpoint)
11162         (ppc_linux_remove_mask_watchpoint)
11163         (ppc_linux_can_accel_watchpoint_condition)
11164         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11165         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11166         (ppc_linux_watchpoint_addr_within_range)
11167         (ppc_linux_masked_watch_num_registers)
11168         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11169         (ppc_linux_read_description): Refactor as methods of
11170         ppc_linux_nat_target.
11171         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11172
11173         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11174         (procfs_target): New class.
11175         (the_procfs_target): New.
11176         (procfs_target): Delete function.
11177         (procfs_auxv_parse, procfs_attach, procfs_detach)
11178         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11179         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11180         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11181         (procfs_create_inferior, procfs_update_thread_list)
11182         (procfs_thread_alive, procfs_pid_to_str)
11183         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11184         (procfs_stopped_data_address, procfs_insert_watchpoint)
11185         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11186         (proc_find_memory_regions, procfs_info_proc)
11187         (procfs_make_note_section): Refactor as methods of procfs_target.
11188         (_initialize_procfs): Adjust.
11189         * sol-thread.c (sol_thread_target): New class.
11190         (sol_thread_ops): Now a sol_thread_target.
11191         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11192         (sol_thread_fetch_registers, sol_thread_store_registers)
11193         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11194         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11195         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11196         (init_sol_thread_ops): Delete.
11197         (_initialize_sol_thread): Adjust.  Remove references to
11198         init_sol_thread_ops and complete_target_initialization.
11199
11200         * windows-nat.c (windows_nat_target): New class.
11201         (windows_fetch_inferior_registers)
11202         (windows_store_inferior_registers, windows_resume, windows_wait)
11203         (windows_attach, windows_detach, windows_pid_to_exec_file)
11204         (windows_files_info, windows_create_inferior)
11205         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11206         (windows_close, windows_pid_to_str, windows_xfer_partial)
11207         (windows_get_tib_address, windows_get_ada_task_ptid)
11208         (windows_thread_name, windows_thread_alive): Refactor as
11209         windows_nat_target methods.
11210         (do_initial_windows_stuff): Adjust.
11211         (windows_target): Delete function.
11212         (_initialize_windows_nat): Adjust.
11213
11214         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11215         (darwin_mourn_inferior, darwin_kill_inferior)
11216         (darwin_create_inferior, darwin_attach, darwin_detach)
11217         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11218         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11219         (darwin_supports_multi_process): Refactor as darwin_nat_target
11220         methods.
11221         (darwin_resume_to, darwin_files_info): Delete.
11222         (_initialize_darwin_inferior): Rename to ...
11223         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11224         * darwin-nat.h: Include "inf-child.h".
11225         (darwin_nat_target): New class.
11226         (darwin_complete_target): Delete.
11227         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11228         (darwin_target): New.
11229         (i386_darwin_fetch_inferior_registers)
11230         (i386_darwin_store_inferior_registers): Refactor as methods of
11231         darwin_nat_target.
11232         (darwin_complete_target): Delete, with ...
11233         (_initialize_i386_darwin_nat): ... bits factored out here.
11234
11235         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11236         (the_alpha_linux_nat_target): New.
11237         (alpha_linux_register_u_offset): Refactor as
11238         alpha_linux_nat_target method.
11239         (_initialize_alpha_linux_nat): Adjust.
11240         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11241         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11242         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11243         methods of linux_nat_trad_target.
11244         (linux_trad_target): Delete.
11245         * linux-nat-trad.h (linux_trad_target): Delete function.
11246         (linux_nat_trad_target): New class.
11247         * mips-linux-nat.c (mips_linux_nat_target): New class.
11248         (super_fetch_registers, super_store_registers, super_close):
11249         Delete.
11250         (the_mips_linux_nat_target): New.
11251         (mips64_linux_regsets_fetch_registers)
11252         (mips64_linux_regsets_store_registers)
11253         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11254         (mips_linux_register_u_offset, mips_linux_read_description)
11255         (mips_linux_can_use_hw_breakpoint)
11256         (mips_linux_stopped_by_watchpoint)
11257         (mips_linux_stopped_data_address)
11258         (mips_linux_region_ok_for_hw_watchpoint)
11259         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11260         (mips_linux_close): Refactor as methods of mips_linux_nat.
11261         (_initialize_mips_linux_nat): Adjust to C++ification.
11262
11263         * aix-thread.c (aix_thread_target): New class.
11264         (aix_thread_ops): Now an aix_thread_target.
11265         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11266         (aix_thread_fetch_registers, aix_thread_store_registers)
11267         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11268         (aix_thread_thread_alive, aix_thread_pid_to_str)
11269         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11270         Refactor as methods of aix_thread_target.
11271         (init_aix_thread_ops): Delete.
11272         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11273         and complete_target_initialization.
11274         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11275         (rs6000_nat_target): New class.
11276         (the_rs6000_nat_target): New.
11277         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11278         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11279         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11280         (super_create_inferior): Delete.
11281         (_initialize_rs6000_nat): Adjust to C++ification.
11282
11283         * arm-linux-nat.c (arm_linux_nat_target): New class.
11284         (the_arm_linux_nat_target): New.
11285         (arm_linux_fetch_inferior_registers)
11286         (arm_linux_store_inferior_registers, arm_linux_read_description)
11287         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11288         (arm_linux_remove_hw_breakpoint)
11289         (arm_linux_region_ok_for_hw_watchpoint)
11290         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11291         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11292         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11293         arm_linux_nat_target.
11294         (_initialize_arm_linux_nat): Adjust to C++ification.
11295
11296         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11297         (the_aarch64_linux_nat_target): New.
11298         (aarch64_linux_fetch_inferior_registers)
11299         (aarch64_linux_store_inferior_registers)
11300         (aarch64_linux_child_post_startup_inferior)
11301         (aarch64_linux_read_description)
11302         (aarch64_linux_can_use_hw_breakpoint)
11303         (aarch64_linux_insert_hw_breakpoint)
11304         (aarch64_linux_remove_hw_breakpoint)
11305         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11306         (aarch64_linux_region_ok_for_hw_watchpoint)
11307         (aarch64_linux_stopped_data_address)
11308         (aarch64_linux_stopped_by_watchpoint)
11309         (aarch64_linux_watchpoint_addr_within_range)
11310         (aarch64_linux_can_do_single_step): Refactor as methods of
11311         aarch64_linux_nat_target.
11312         (super_post_startup_inferior): Delete.
11313         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11314
11315         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11316         (the_hppa_linux_nat_target): New.
11317         (hppa_linux_fetch_inferior_registers)
11318         (hppa_linux_store_inferior_registers): Refactor as methods of
11319         hppa_linux_nat_target.
11320         (_initialize_hppa_linux_nat): Adjust to C++ification.
11321
11322         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11323         (the_ia64_linux_nat_target): New.
11324         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11325         (ia64_linux_stopped_data_address)
11326         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11327         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11328         ia64_linux_nat_target methods.
11329         (super_xfer_partial): Delete.
11330         (_initialize_ia64_linux_nat): Adjust to C++ification.
11331
11332         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11333         (the_m32r_linux_nat_target): New.
11334         (m32r_linux_fetch_inferior_registers)
11335         (m32r_linux_store_inferior_registers): Refactor as
11336         m32r_linux_nat_target methods.
11337         (_initialize_m32r_linux_nat): Adjust to C++ification.
11338
11339         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11340         (the_m68k_linux_nat_target): New.
11341         (m68k_linux_fetch_inferior_registers)
11342         (m68k_linux_store_inferior_registers): Refactor as
11343         m68k_linux_nat_target methods.
11344         (_initialize_m68k_linux_nat): Adjust to C++ification.
11345
11346         * s390-linux-nat.c (s390_linux_nat_target): New class.
11347         (the_s390_linux_nat_target): New.
11348         (s390_linux_fetch_inferior_registers)
11349         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11350         (s390_insert_watchpoint, s390_remove_watchpoint)
11351         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11352         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11353         (s390_auxv_parse, s390_read_description): Refactor as methods of
11354         s390_linux_nat_target.
11355         (_initialize_s390_nat): Adjust to C++ification.
11356
11357         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11358         (the_sparc_linux_nat_target): New.
11359         (_initialize_sparc_linux_nat): Adjust to C++ification.
11360         * sparc-nat.c (sparc_fetch_inferior_registers)
11361         (sparc_store_inferior_registers): Remove target_ops parameter.
11362         * sparc-nat.h (sparc_fetch_inferior_registers)
11363         (sparc_store_inferior_registers): Remove target_ops parameter.
11364         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11365         (the_sparc64_linux_nat_target): New.
11366         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11367
11368         * spu-linux-nat.c (spu_linux_nat_target): New class.
11369         (the_spu_linux_nat_target): New.
11370         (spu_child_post_startup_inferior, spu_child_post_attach)
11371         (spu_child_wait, spu_fetch_inferior_registers)
11372         (spu_store_inferior_registers, spu_xfer_partial)
11373         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11374         methods.
11375         (_initialize_spu_nat): Adjust to C++ification.
11376
11377         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11378         (the_tilegx_linux_nat_target): New.
11379         (fetch_inferior_registers, store_inferior_registers):
11380         Refactor as methods.
11381         (_initialize_tile_linux_nat): Adjust to C++ification.
11382
11383         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11384         (the_xtensa_linux_nat_target): New.
11385         (xtensa_linux_fetch_inferior_registers)
11386         (xtensa_linux_store_inferior_registers): Refactor as
11387         xtensa_linux_nat_target methods.
11388         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11389
11390         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11391         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11392         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11393         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11394         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11395         (fbsd_stopped_by_sw_breakpoint)
11396         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11397         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11398         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11399         (fbsd_post_startup_inferior, fbsd_post_attach)
11400         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11401         (fbsd_set_syscall_catchpoint)
11402         (super_xfer_partial, super_resume, super_wait)
11403         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11404         (fbsd_handle_debug_trap): Remove target_ops parameter.
11405         (fbsd_nat_add_target): Delete.
11406         * fbsd-nat.h: Include "inf-ptrace.h".
11407         (fbsd_nat_add_target): Delete.
11408         (USE_SIGTRAP_SIGINFO): Define.
11409         (fbsd_nat_target): New class.
11410
11411         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11412         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11413         (amd64bsd_target): Delete.
11414         * amd64-bsd-nat.h: New file.
11415         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11416         "x86-bsd-nat.h".
11417         (amd64_fbsd_nat_target): New class.
11418         (the_amd64_fbsd_nat_target): New.
11419         (amd64fbsd_read_description): Refactor as method of
11420         amd64_fbsd_nat_target.
11421         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11422         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11423         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11424         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11425         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11426         (i386bsd_target): Delete.
11427         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11428         (i386bsd_fetch_inferior_registers)
11429         (i386bsd_store_inferior_registers): Declare.
11430         (i386_bsd_nat_target): New class.
11431         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11432         (the_i386_fbsd_nat_target): New.
11433         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11434         i386_fbsd_nat_target methods.
11435         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11436         (_initialize_i386fbsd_nat): Adjust to C++ification.
11437         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11438         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11439         (_initialize_x86_bsd_nat): Adjust to C++ification.
11440         * x86-bsd-nat.h: Include "x86-nat.h".
11441         (x86bsd_target): Delete declaration.
11442         (x86bsd_nat_target): New class.
11443
11444         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11445         (the_aarch64_fbsd_nat_target): New.
11446         (aarch64_fbsd_fetch_inferior_registers)
11447         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11448         aarch64_fbsd_nat_target.
11449         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11450         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11451         (the_alpha_bsd_nat_target): New.
11452         (alphabsd_fetch_inferior_registers)
11453         (alphabsd_store_inferior_registers): Refactor as
11454         alpha_bsd_nat_target methods.
11455         (_initialize_alphabsd_nat): Refactor as methods of
11456         alpha_bsd_nat_target.
11457         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11458         (the_amd64_nbsd_nat_target): New.
11459         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11460         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11461         (the_amd64_obsd_nat_target): New.
11462         (_initialize_amd64obsd_nat): Adjust to C++ification.
11463         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11464         (the_arm_fbsd_nat_target): New.
11465         (arm_fbsd_fetch_inferior_registers)
11466         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11467         (_initialize_arm_fbsd_nat): Refactor as methods of
11468         arm_fbsd_nat_target.
11469         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11470         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11471         (the_arm_netbsd_nat_target): New.
11472         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11473         arm_netbsd_nat_target.
11474         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11475         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11476         (the_hppa_nbsd_nat_target): New.
11477         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11478         hppa_nbsd_nat_target methods.
11479         (_initialize_hppanbsd_nat): Adjust to C++ification.
11480         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11481         (the_hppa_obsd_nat_target): New.
11482         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11483         methods of hppa_obsd_nat_target.
11484         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11485         add_target.
11486         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11487         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11488         add_target.
11489         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11490         (_initialize_i386obsd_nat): Use add_target.
11491         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11492         (the_m68k_bsd_nat_target): New.
11493         (m68kbsd_fetch_inferior_registers)
11494         (m68kbsd_store_inferior_registers): Refactor as methods of
11495         m68k_bsd_nat_target.
11496         (_initialize_m68kbsd_nat): Adjust to C++ification.
11497         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11498         (the_mips_fbsd_nat_target): New.
11499         (mips_fbsd_fetch_inferior_registers)
11500         (mips_fbsd_store_inferior_registers): Refactor as methods of
11501         mips_fbsd_nat_target.
11502         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11503         add_target.
11504         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11505         (the_mips_nbsd_nat_target): New.
11506         (mipsnbsd_fetch_inferior_registers)
11507         (mipsnbsd_store_inferior_registers): Refactor as methods of
11508         mips_nbsd_nat_target.
11509         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11510         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11511         (the_mips64_obsd_nat_target): New.
11512         (mips64obsd_fetch_inferior_registers)
11513         (mips64obsd_store_inferior_registers): Refactor as methods of
11514         mips64_obsd_nat_target.
11515         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11516         add_target.
11517         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11518         nbsd_nat_target.
11519         * nbsd-nat.h: Include "inf-ptrace.h".
11520         (nbsd_nat_target): New class.
11521         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11522         (obsd_wait): Refactor as methods of obsd_nat_target.
11523         (obsd_add_target): Delete.
11524         * obsd-nat.h: Include "inf-ptrace.h".
11525         (obsd_nat_target): New class.
11526         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11527         (the_ppc_fbsd_nat_target): New.
11528         (ppcfbsd_fetch_inferior_registers)
11529         (ppcfbsd_store_inferior_registers): Refactor as methods of
11530         ppc_fbsd_nat_target.
11531         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11532         add_target.
11533         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11534         (the_ppc_nbsd_nat_target): New.
11535         (ppcnbsd_fetch_inferior_registers)
11536         (ppcnbsd_store_inferior_registers): Refactor as methods of
11537         ppc_nbsd_nat_target.
11538         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11539         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11540         (the_ppc_obsd_nat_target): New.
11541         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11542         methods of ppc_obsd_nat_target.
11543         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11544         add_target.
11545         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11546         (the_sh_nbsd_nat_target): New.
11547         (shnbsd_fetch_inferior_registers)
11548         (shnbsd_store_inferior_registers): Refactor as methods of
11549         sh_nbsd_nat_target.
11550         (_initialize_shnbsd_nat): Adjust to C++ification.
11551         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11552         (inf_ptrace_xfer_partial): Delete.
11553         (sparc_xfer_partial, sparc_target): Delete.
11554         * sparc-nat.h (sparc_fetch_inferior_registers)
11555         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11556         (sparc_target): Delete function declaration.
11557         (sparc_target): New template class.
11558         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11559         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11560         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11561         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11562         add_target.
11563         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11564         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11565         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11566         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11567         add_target.
11568         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11569         (the_vax_bsd_nat_target): New.
11570         (vaxbsd_fetch_inferior_registers)
11571         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11572         methods.
11573         (_initialize_vaxbsd_nat): Adjust to C++ification.
11574
11575         * bsd-kvm.c (bsd_kvm_target): New class.
11576         (bsd_kvm_ops): Now a bsd_kvm_target.
11577         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11578         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11579         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11580         bsd_kvm_target.
11581         (bsd_kvm_return_one): Delete.
11582         (bsd_kvm_add_target): Adjust to C++ification.
11583
11584         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11585         (nto_procfs_target_procfs): New classes.
11586         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11587         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11588         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11589         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11590         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11591         (procfs_remove_hw_breakpoint, procfs_resume)
11592         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11593         (procfs_kill_inferior, procfs_store_registers)
11594         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11595         as methods of nto_procfs_target.
11596         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11597         (nto_native_ops): Delete.
11598         (procfs_open, procfs_native_open): Delete.
11599         (nto_native_ops): Now an nto_procfs_target_native.
11600         (init_procfs_targets): Adjust to C++ification.
11601         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11602         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11603         Refactor as methods of nto_procfs_target.
11604
11605         * go32-nat.c (go32_nat_target): New class.
11606         (the_go32_nat_target): New.
11607         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11608         (go32_store_registers, go32_xfer_partial, go32_files_info)
11609         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11610         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11611         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11612         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11613         (go32_target): Delete.
11614         (_initialize_go32_nat): Adjust to C++ification.
11615
11616         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11617         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11618         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11619         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11620         gnu_nat_target.
11621         (gnu_target): Delete.
11622         * gnu-nat.h (gnu_target): Delete.
11623         (gnu_nat_target): New class.
11624         * i386-gnu-nat.c (gnu_base_target): New.
11625         (i386_gnu_nat_target): New class.
11626         (the_i386_gnu_nat_target): New.
11627         (_initialize_i386gnu_nat): Adjust to C++ification.
11628
11629 2018-05-02  Pedro Alves  <palves@redhat.com>
11630
11631         * bfd-target.c (target_bfd_xclose): Rename to ...
11632         (target_bfd_close): ... this.
11633         (target_bfd_reopen): Adjust.
11634         * target.c (target_close): Remove references to to_xclose.
11635         * target.h (target_ops::to_xclose): Delete.
11636         (target_ops::to_close): Update comments.
11637
11638 2018-05-02  Pedro Alves  <palves@redhat.com>
11639
11640         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11641         "linux-nat.h".
11642         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11643         * inf-ptrace.c (inf_ptrace_register_u_offset)
11644         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11645         (inf_ptrace_store_register, inf_ptrace_store_registers)
11646         (inf_ptrace_trad_target): Move to ...
11647         * linux-nat-trad.c: ... this new file.
11648         * linux-nat-trad.h: New file.
11649         * linux-nat.c (linux_target_install_ops): Make extern.
11650         (linux_trad_target): Delete.
11651         * linux-nat.h (linux_trad_target): Delete declaration.
11652         (linux_target_install_ops): Declare.
11653         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11654         "linux-nat.h".
11655
11656 2018-05-02  Pedro Alves  <palves@redhat.com>
11657
11658         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11659         procfs_target/add_target here.
11660         * procfs.c (procfs_target): Make static.
11661         (_initialize_procfs): Call add_target here.
11662         * procfs.h (struct target_ops): Remove forward declaration.
11663         (procfs_target): Remove declaration.
11664         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11665
11666 2018-05-02  Pedro Alves  <palves@redhat.com>
11667
11668         * procfs.c (procfs_stopped_by_watchpoint)
11669         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11670         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11671         Forward declare.
11672         (procfs_use_watchpoints): Delete, move contents...
11673         (procfs_target): ... here.
11674         * procfs.h (procfs_use_watchpoints): Delete declaration.
11675         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11676         procfs_use_watchpoints.
11677         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11678         procfs_use_watchpoints.
11679
11680 2018-05-02  Tom Tromey  <tom@tromey.com>
11681
11682         PR python/20084:
11683         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11684         and var_zuinteger_unlimited.
11685         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11686         and PARAM_ZUINTEGER_UNLIMITED.
11687         (set_parameter_value): Handle var_zuinteger and
11688         var_zuinteger_unlimited.
11689         (add_setshow_generic): Likewise.
11690         (parmpy_init): Likewise.
11691
11692 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11693
11694         PR rust/23124
11695         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11696         pointer is not null before dereferencing it.
11697
11698 2018-04-30  Tom Tromey  <tom@tromey.com>
11699
11700         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11701         is_mi_like_p.
11702
11703 2018-04-30  Tom Tromey  <tom@tromey.com>
11704
11705         * breakpoint.c (mention): Remove use of is_mi_like_p.
11706         (print_mention_ranged_breakpoint): Likewise.
11707         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11708         of is_mi_like_p.
11709
11710 2018-04-30  Tom Tromey  <tom@tromey.com>
11711
11712         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11713
11714 2018-04-30  Tom Tromey  <tom@tromey.com>
11715
11716         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11717         (info_spu_event_command): Remove some uses of is_mi_like_p.
11718
11719 2018-04-30  Tom Tromey  <tom@tromey.com>
11720
11721         * python/py-framefilter.c (py_print_single_arg)
11722         (enumerate_locals, py_print_args, py_print_frame): Remove some
11723         uses of is_mi_like_p.
11724
11725 2018-04-30  Tom Tromey  <tom@tromey.com>
11726
11727         * ui-out.c: Update.
11728         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11729         * ui-out.h (ui_out::is_mi_like_p): Now const.
11730         (ui_out::do_is_mi_like_p): Now const.
11731         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11732
11733 2018-04-30  Tom Tromey  <tom@tromey.com>
11734
11735         * varobj.c (varobj_set_visualizer): Use new_reference.
11736         * python/python.c (gdbpy_decode_line): Use new_reference.
11737         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11738         new_reference.
11739
11740 2018-04-30  Tom Tromey  <tom@tromey.com>
11741
11742         * varobj.c (install_new_value): Use new_reference.
11743         * value.h (value_incref): Return void.  Swap intro comment with
11744         value_decref.
11745         * value.c (set_value_parent): Use new_reference.
11746         (value_incref): Return void.  Update intro comment.
11747         (release_value): Use new_reference.
11748         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11749
11750 2018-04-30  Tom Tromey  <tom@tromey.com>
11751
11752         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11753         * gdb_bfd.h (new_bfd_ref): Remove.
11754         (gdb_bfd_open): Update comment.
11755         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11756         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11757         (gdb_bfd_fdopenr): Use new_reference.
11758         * exec.c (exec_file_attach): Use new_reference.
11759
11760 2018-04-30  Tom Tromey  <tom@tromey.com>
11761
11762         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11763         method.
11764
11765 2018-04-30  Tom Tromey  <tom@tromey.com>
11766
11767         * jit.c (jit_read_code_entry): Use type_align.
11768         * i386-tdep.c (i386_gdbarch_init): Don't call
11769         set_gdbarch_long_long_align_bit.
11770         * gdbarch.sh: Remove long_long_align_bit.
11771         * gdbarch.c, gdbarch.h: Rebuild.
11772         * arc-tdep.c (arc_type_align): New function.
11773         (arc_gdbarch_init): Use arc_type_align.  Don't call
11774         set_gdbarch_long_long_align_bit.
11775
11776 2018-04-30  Tom Tromey  <tom@tromey.com>
11777
11778         * rust-lang.c (rust_type_alignment): Remove.
11779         (rust_composite_type): Use type_align.
11780
11781 2018-04-30  Tom Tromey  <tom@tromey.com>
11782
11783         * NEWS: Mention Type.align.
11784         * python/py-type.c (typy_get_alignof): New function.
11785         (type_object_getset): Add "alignof".
11786
11787 2018-04-30  Tom Tromey  <tom@tromey.com>
11788
11789         PR exp/17095:
11790         * NEWS: Update.
11791         * std-operator.def (UNOP_ALIGNOF): New operator.
11792         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11793         New.
11794         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11795         * c-lang.c (c_op_print_tab): Add alignof.
11796         * c-exp.y (ALIGNOF): New token.
11797         (exp): Add "ALIGNOF" production.
11798         (ident_tokens): Add _Alignof and alignof.
11799
11800 2018-04-30  Tom Tromey  <tom@tromey.com>
11801
11802         * i386-tdep.c (i386_type_align): New function.
11803         (i386_gdbarch_init): Update.
11804         * gdbarch.sh (type_align): New method.
11805         * gdbarch.c, gdbarch.h: Rebuild.
11806         * arch-utils.h (default_type_align): Declare.
11807         * arch-utils.c (default_type_align): New function.
11808         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11809         (struct type) <align_log2>: New field.
11810         <instance_flags>: Now a bitfield.
11811         (TYPE_RAW_ALIGN): New macro.
11812         (type_align, type_raw_align, set_type_align): Declare.
11813         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11814         functions.
11815         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11816         (get_alignment, maybe_set_alignment): New functions.
11817         (read_structure_type, read_enumeration_type, read_array_type)
11818         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11819         (read_subrange_type, read_base_type): Set type alignment.
11820
11821 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11822
11823         * dwarf2read.c (read_index_from_section): Use bool.
11824
11825 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11826
11827         PR gdb/22950
11828         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11829         with #ifdef.
11830
11831 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11832
11833         PR build/22873
11834         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11835         last step, and do it atomically.
11836
11837 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11838
11839         * compile/compile-c-types.c (convert_int, convert_float):
11840         Update for C FE v1.
11841
11842 2018-04-27  Tom Tromey  <tom@tromey.com>
11843
11844         PR rust/22545:
11845         * rust-lang.c (rust_inclusive_range_type_p): New function.
11846         (rust_range): Handle inclusive ranges.
11847         (rust_compute_range): Likewise.
11848         * rust-exp.y (struct rust_op) <inclusive>: New field.
11849         (DOTDOTEQ): New constant.
11850         (range_expr): Add "..=" productions.
11851         (operator_tokens): Add "..=" token.
11852         (ast_range): Add "inclusive" parameter.
11853         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11854         ranges.
11855         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11856         bounds values.
11857         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11858         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11859         Update comments.
11860         * expprint.c (print_subexp_standard): Handle new bounds values.
11861         (dump_subexp_body_standard): Likewise.
11862
11863 2018-04-27  Tom Tromey  <tom@tromey.com>
11864
11865         * configure: Rebuild.
11866         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11867         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11868         "OVERRIDE".
11869         (class symbol_needs_eval_context): Likewise.
11870         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11871         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11872         "virtual".
11873         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11874         "override".
11875         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11876         * aarch64-tdep.c (instruction_reader::read): Use "override".
11877         (instruction_reader_test::read): Likewise.
11878         * arm-tdep.c (instruction_reader::read): Use "override".
11879         (instruction_reader_thumb::read): Likewise.
11880
11881 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11882
11883         PR remote/9665
11884         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11885         instead of remote_send.
11886         (remote_send): Remove.
11887
11888 2018-04-26  Pedro Alves  <palves@redhat.com>
11889
11890         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11891         find_function_start_sal instead of find_pc_line.
11892
11893 2018-04-26  Pedro Alves  <palves@redhat.com>
11894
11895         * breakpoint.c (set_breakpoint_location_function): Handle
11896         mst_data_gnu_ifunc.
11897         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11898         * elfread.c (elf_symtab_read): Give data symbols with
11899         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11900         (elf_rel_plt_read): Update comment.
11901         * linespec.c (convert_linespec_to_sals): Handle
11902         mst_data_gnu_ifunc.
11903         (minsym_found): Handle mst_data_gnu_ifunc.
11904         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11905         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11906         * parse.c (find_minsym_type_and_address): Handle
11907         mst_data_gnu_ifunc.
11908         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11909         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11910         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11911         comment.
11912         <mst_data_gnu_ifunc>: New enumerator.
11913
11914 2018-04-26  Pedro Alves  <palves@redhat.com>
11915
11916         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11917         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11918         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11919         Handle it.
11920         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11921         (lookup_minimal_symbol_by_pc): Adjust.
11922         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11923         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11924         * minsyms.h (lookup_msym_prefer): New enum.
11925         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11926         parameter by a lookup_msym_prefer parameter.
11927
11928 2018-04-26  Pedro Alves  <palves@redhat.com>
11929
11930         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11931         ends in "@plt" instead of looking at the symbol's section.
11932
11933 2018-04-26  Pedro Alves  <palves@redhat.com>
11934
11935         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11936         all references.
11937         (find_pc_partial_function_gnu_ifunc): Rename to ...
11938         (find_pc_partial_function): ... this, and remove references to
11939         'is_gnu_ifunc_p'.
11940         (find_pc_partial_function): Delete old implementation.
11941         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11942
11943 2018-04-26  Pedro Alves  <palves@redhat.com>
11944
11945         * linespec.c (struct bound_minimal_symbol_search_key): New.
11946         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11947         skip first line if we found a GNU ifunc minimal symbol by name.
11948         (compare_msymbols): Change parameters to work with a destructured
11949         lhs minsym.
11950         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11951         functions.
11952
11953 2018-04-26  Pedro Alves  <palves@redhat.com>
11954
11955         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11956         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11957         address/name.
11958         (add_location_to_breakpoint): Store the minsym and the objfile in
11959         the breakpoint location.
11960         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11961         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11962         Record the minsym in the sal.
11963         * symtab.h (symtab_and_line) <msymbol>: New field.
11964
11965 2018-04-26  Pedro Alves  <palves@redhat.com>
11966
11967         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11968         unless we actually resolved the ifunc.
11969
11970 2018-04-26  Pedro Alves  <palves@redhat.com>
11971
11972         * c-exp.y (variable production): Prefer ifunc minsyms over
11973         regular function symbols.
11974         * symtab.c (find_gnu_ifunc): New function.
11975         * minsyms.h (lookup_msym_prefer): New enum.
11976         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11977         parameter by a lookup_msym_prefer parameter.
11978         * symtab.h (find_gnu_ifunc): New declaration.
11979
11980 2018-04-26  Pedro Alves  <palves@redhat.com>
11981
11982         * blockframe.c (find_gnu_ifunc_target_type): New function.
11983         (find_function_type): New.
11984         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11985         return a value with a memory address.
11986         (eval_call): For calls to GNU ifunc functions, try to find the
11987         type of the target function from the type that the resolver
11988         returns.
11989         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11990         symbols.
11991         * infcall.c (find_function_return_type): Delete.
11992         (find_function_addr): Add 'function_type' parameter.  For calls to
11993         GNU ifunc functions, try to find the type of the target function
11994         from the type that the resolver returns, and return it via
11995         FUNCTION_TYPE.
11996         (call_function_by_hand_dummy): Adjust to use the function type
11997         returned by find_function_addr.
11998         (find_function_addr): Add 'function_type' parameter and move
11999         description here.
12000         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12001         declarations.
12002
12003 2018-04-26  Pedro Alves  <palves@redhat.com>
12004
12005         * c-exp.y (variable production): Skip finding an alias for ifunc
12006         symbols.
12007
12008 2018-04-26  Pedro Alves  <palves@redhat.com>
12009
12010         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12011
12012 2018-04-25  Pedro Alves  <palves@redhat.com>
12013
12014         * infcmd.c (kill_command): Print the pid as string, not the whole
12015         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12016         message.
12017         * remote.c (remote_detach_1): Print the pid as string, not the
12018         whole thread's ptid.
12019
12020 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12021             Sergio Durigan Junior  <sergiodj@redhat.com>
12022             Pedro Alves  <palves@redhat.com>
12023
12024         * infcmd.c (kill_command): Print message when inferior has
12025         been killed.
12026         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12027         '1'.
12028         (add_inferior): Improve message printed when
12029         'print_inferior_events' is on.
12030         (exit_inferior): Remove message printed when
12031         'print_inferior_events' is on.
12032         (detach_inferior): Improve message printed when
12033         'print_inferior_events' is on.
12034         (initialize_inferiors): Use 'add_inferior_silent' to set
12035         'current_inferior_'.
12036         * inferior.h (print_inferior_events): Declare here as
12037         'extern'.
12038         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12039         '[Detaching...]' messages when 'print_inferior_events' is on.
12040         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12041         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12042         'Detaching after fork from child...', replace it by '... from
12043         parent...'.
12044         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12045         prefix/suffix when printing 'Detaching...' messages.  Print
12046         them when 'print_inferior_events' is on.
12047         * remote.c (remote_detach_1): Print message when detaching
12048         from inferior and '!is_fork_parent'.
12049
12050 2018-04-24  Tom Tromey  <tom@tromey.com>
12051
12052         * cli-out.h: Reindent.
12053
12054 2018-04-24  Tom Tromey  <tom@tromey.com>
12055
12056         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12057         (cli_ui_out::do_field_string): Use fputs_filtered.
12058         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12059
12060 2018-04-23  Tom Tromey  <tom@tromey.com>
12061
12062         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12063         gdb::unique_xmalloc_ptr.
12064
12065 2018-04-23  Tom Tromey  <tom@tromey.com>
12066
12067         * configure: Rebuild.
12068
12069 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12070
12071         PR gdb/23095
12072         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12073         prepare_for_testing.  Set normal_bp to r_debug_state if target
12074         is bsd.
12075
12076 2018-04-21  Pedro Alves  <palves@redhat.com>
12077             Rajendra SY  <rajendra.sy@gmail.com>
12078
12079         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12080         * remote.c (extended_remote_attach): In all-stop mode, mark the
12081         thread as executing.
12082
12083 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12084
12085         * thread.c (thread_apply_all_command): Fix comment.
12086         (thread_command): Fix comment.
12087
12088 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12089
12090         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12091         parameter.
12092         * features/aarch64-core.c (create_feature_aarch64_core):
12093         Regenerate.
12094         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12095         Likewise.
12096         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12097         Likewise.
12098         * features/i386/32bit-avx512.c
12099         (create_feature_i386_32bit_avx512): Likewise.
12100         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12101         Likewise.
12102         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12103         Likewise.
12104         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12105         Likewise.
12106         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12107         Likewise.
12108         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12109         Likewise.
12110         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12111         Likewise.
12112         * features/i386/64bit-avx512.c
12113         (create_feature_i386_64bit_avx512): Likewise.
12114         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12115         Likewise.
12116         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12117         Likewise.
12118         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12119         Likewise.
12120         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12121         Likewise.
12122         * features/i386/64bit-segments.c
12123         (create_feature_i386_64bit_segments): Likewise.
12124         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12125         Likewise.
12126         * features/i386/x32-core.c
12127         (create_feature_i386_x32_core): Likewise.
12128         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12129         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12130         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12131         * target-descriptions.c: In generated code, don't pass xml
12132         filename.
12133
12134 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12135
12136         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12137         (print_xml_feature::visit_post): Likewise.
12138         (print_xml_feature::visit): Likewise.
12139         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12140         (print_xml_feature): Add new class.
12141         * regformats/regdat.sh: Null xmltarget on feature targets.
12142         * target-descriptions.c (struct target_desc): Add xmltarget.
12143         (maintenance_check_tdesc_xml_convert): Add unittest function.
12144         (tdesc_get_features_xml): Add function to get xml.
12145         (maintenance_check_xml_descriptions): Test xml generation.
12146         * xml-tdesc.c (string_read_description_xml): Add function.
12147         * xml-tdesc.h (string_read_description_xml): Add declaration.
12148
12149 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12150
12151         * features/Makefile: Add feature marker to targets with new style
12152         target descriptions.
12153         * regformats/aarch64.dat: Regenerate.
12154         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12155         * regformats/i386/amd64-avx-linux.dat: Likewise.
12156         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12157         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12158         * regformats/i386/amd64-linux.dat: Likewise.
12159         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12160         * regformats/i386/amd64.dat: Likewise.
12161         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12162         * regformats/i386/i386-avx-linux.dat: Likewise.
12163         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12164         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12165         * regformats/i386/i386-linux.dat: Likewise.
12166         * regformats/i386/i386-mmx-linux.dat: Likewise.
12167         * regformats/i386/i386-mpx-linux.dat: Likewise.
12168         * regformats/i386/i386.dat: Likewise.
12169         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12170         * regformats/i386/x32-avx-linux.dat: Likewise.
12171         * regformats/i386/x32-linux.dat: Likewise.
12172         * regformats/tic6x-c62x-linux.dat: Likewise.
12173         * regformats/tic6x-c64x-linux.dat: Likewise.
12174         * regformats/tic6x-c64xp-linux.dat: Likewise.
12175         * regformats/regdat.sh: Parse feature marker.
12176
12177 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12178
12179         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12180         (tdesc_osabi_name): Likewise.
12181         * target-descriptions.c (tdesc_architecture_name): Add new
12182         function.
12183         (tdesc_osabi_name): Likewise.
12184
12185 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12186
12187         * common/tdesc.c (tdesc_predefined_type): Move to here.
12188         (tdesc_named_type): Likewise.
12189         (tdesc_create_vector): Likewise.
12190         (tdesc_create_struct): Likewise.
12191         (tdesc_set_struct_size): Likewise.
12192         (tdesc_create_union): Likewise.
12193         (tdesc_create_flags): Likewise.
12194         (tdesc_create_enum): Likewise.
12195         (tdesc_add_field): Likewise.
12196         (tdesc_add_typed_bitfield): Likewise.
12197         (tdesc_add_bitfield): Likewise.
12198         (tdesc_add_flag): Likewise.
12199         (tdesc_add_enum_value): Likewise.
12200         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12201         (struct tdesc_type_vector): Likewise.
12202         (struct tdesc_type_field): Likewise.
12203         (struct tdesc_type_with_fields): Likewise.
12204         (tdesc_create_enum): Add declaration.
12205         (tdesc_add_typed_bitfield): Likewise.
12206         (tdesc_add_enum_value): Likewise.
12207         * target-descriptions.c (tdesc_type_field): Move from here.
12208         (tdesc_type_builtin): Likewise.
12209         (tdesc_type_vector): Likewise.
12210         (tdesc_type_with_fields): Likewise.
12211         (tdesc_predefined_types): Likewise.
12212         (tdesc_named_type): Likewise.
12213         (tdesc_create_vector): Likewise.
12214         (tdesc_create_struct): Likewise.
12215         (tdesc_set_struct_size): Likewise.
12216         (tdesc_create_union): Likewise.
12217         (tdesc_create_flags): Likewise.
12218         (tdesc_create_enum): Likewise.
12219         (tdesc_add_field): Likewise.
12220         (tdesc_add_typed_bitfield): Likewise.
12221         (tdesc_add_bitfield): Likewise.
12222         (tdesc_add_flag): Likewise.
12223         (tdesc_add_enum_value): Likewise.
12224         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12225         (tdesc_add_typed_bitfield): Likewise.
12226         (tdesc_add_enum_value): Likewise.
12227
12228 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12229
12230         * common/tdesc.c (tdesc_feature::accept): Move to here.
12231         (tdesc_feature::operator==): Likewise.
12232         (tdesc_create_reg): Likewise.
12233         * common/tdesc.h (tdesc_type_kind): Likewise.
12234         (struct tdesc_type): Likewise.
12235         (struct tdesc_feature): Likewise.
12236         * regformats/regdat.sh: Create a feature.
12237         * target-descriptions.c (tdesc_type_kind): Move from here.
12238         (tdesc_type): Likewise.
12239         (tdesc_type_up): Likewise.
12240         (tdesc_feature): Likewise.
12241         (tdesc_create_reg): Likewise.
12242
12243 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12244
12245         * Makefile.in: Add arch/tdesc.c
12246         * common/tdesc.c: New file.
12247         * common/tdesc.h (tdesc_element_visitor): Move to here.
12248         (tdesc_element): Likewise.
12249         (tdesc_reg): Likewise.
12250         (tdesc_reg_up): Likewise.
12251         * regformats/regdef.h (reg): Add offset to constructors.
12252         * target-descriptions.c (tdesc_element_visitor): Move from here.
12253         (tdesc_element): Likewise.
12254         (tdesc_reg): Likewise.
12255         (tdesc_reg_up): Likewise.
12256
12257 2018-04-17  Tom Tromey  <tom@tromey.com>
12258
12259         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12260         discriminant field.
12261
12262 2018-04-17  Tom Tromey  <tom@tromey.com>
12263
12264         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12265
12266 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12267
12268         * symtab.c (print_symbol_info): Skip printing filename and line
12269         number when `last' is NULL.
12270         (symtab_symbol_info): Use empty string instead of NULL for first
12271         invocation of print_symbol_info.
12272         (rbreak_command): Pass NULL to `last' parameter of
12273         print_symbol_info.
12274
12275 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12276
12277         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12278         instead of nullptr.
12279
12280 2018-04-16  Pedro Alves  <palves@redhat.com>
12281
12282         * MAINTAINERS (sh): Remove.
12283         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12284         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12285         (ALLDEPFILES): Remove sh64-tdep.c.
12286         * NEWS: Mentions that support for SH-5/SH64 is removed.
12287         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12288         (sh*-*-openbsd*): Ditto.
12289         (sh64-*-elf*): Remove.
12290         (sh*): Remove.
12291         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12292         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12293         * sh-tdep.c: No longer include "sh64-tdep.h".
12294         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12295         * sh64-tdep.c, sh64-tdep.h: Remove files.
12296
12297 2018-04-16  Pedro Alves  <palves@redhat.com>
12298
12299         * MAINTAINERS: Remove m88k.
12300         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12301         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12302         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12303         * NEWS: Mention that support for m88k was removed.
12304         * configure.host (m88*-*-*): Remove support.
12305         * configure.nat (m88k-*-*): Remove support.
12306         * configure.tgt (m88*-*-openbsd*): Remove.
12307         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12308
12309 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12310
12311         * configure.tgt (x86_tobjs): New variable.
12312         (amd64_tobjs, i386_tobjs): Use it.
12313
12314 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12315
12316         * symtab.c (print_symbol_info): Precede the symbol definition by
12317         the line number when available.
12318         * NEWS: Advertise this enhancement.
12319
12320 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12321
12322         * NEWS (New options): announce set/show record btrace cpu.
12323         * btrace.c: Include record-btrace.h.
12324         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12325         the vendor is unknown.
12326         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12327         Maybe overwrite the btrace configuration's cpu.
12328         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12329         (btrace_fetch): Add cpu parameter.  Update callers.
12330         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12331         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12332         errata workarounds if the vendor is unknown.
12333         * python/py-record-btrace.c: Include record-btrace.h.
12334         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12335         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12336         * record-btrace.c (record_btrace_cpu_state_kind): New.
12337         (record_btrace_cpu): New.
12338         (set_record_btrace_cpu_cmdlist): New.
12339         (record_btrace_get_cpu): New.
12340         (require_btrace_thread, record_btrace_info)
12341         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12342         (cmd_set_record_btrace_cpu_none): New.
12343         (cmd_set_record_btrace_cpu_auto): New.
12344         (cmd_set_record_btrace_cpu): New.
12345         (cmd_show_record_btrace_cpu): New.
12346         (_initialize_record_btrace): Initialize set/show record btrace cpu
12347         commands.
12348         * record-btrace.h (record_btrace_get_cpu): New.
12349
12350 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12351
12352         * record.c (set_record_command): Fix typo in message.
12353
12354 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12355
12356         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12357
12358 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12359
12360         * infrun.c (process_event_stop_test): Call
12361         gdbarch_in_indirect_branch_thunk.
12362         * gdbarch.sh (in_indirect_branch_thunk): New.
12363         * gdbarch.c: Regenerated.
12364         * gdbarch.h: Regenerated.
12365         * x86-tdep.h: New.
12366         * x86-tdep.c: New.
12367         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12368         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12369         (ALLDEPFILES): Add x86-tdep.c.
12370         * arch-utils.h (default_in_indirect_branch_thunk): New.
12371         * arch-utils.c (default_in_indirect_branch_thunk): New.
12372         * i386-tdep: Include x86-tdep.h.
12373         (i386_in_indirect_branch_thunk): New.
12374         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12375         function.
12376         * amd64-tdep: Include x86-tdep.h.
12377         (amd64_in_indirect_branch_thunk): New.
12378         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12379
12380 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12381
12382         PR gdb/23053
12383         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12384         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12385         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12386         regression.
12387
12388 2018-04-12  Tom Tromey  <tom@tromey.com>
12389
12390         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12391         (rust_evaluate_subexp): Likewise.
12392
12393 2018-04-12  Pedro Alves  <palves@redhat.com>
12394
12395         * procfs.c (procfs_detach): Make forward declaration's prototype
12396         match definition's protototype.
12397         (proc_get_LDT_entry): Remove stale do_cleanups call.
12398
12399 2018-04-12  Pedro Alves  <palves@redhat.com>
12400
12401         * target.h (target_ops::to_has_exited): Delete.
12402         (target_has_exited): Delete.
12403         * target-delegates.c: Regenerate.
12404
12405 2018-04-11  Pedro Alves  <palves@redhat.com>
12406
12407         * target.c (fileio_fh_t::t): Add comment.
12408         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12409         (target_fileio_close): Handle a NULL target.
12410         (invalidate_fileio_fh): New.
12411         (target_close): Call it.
12412         * remote.c (remote_hostio_send_command): No longer check whether
12413         remote_desc is open.
12414
12415 2018-04-11  Pedro Alves  <palves@redhat.com>
12416
12417         * target.c (fileio_fh_t): Make it a named struct instead of a
12418         typedef.
12419         (fileio_fh_t::is_closed): New method.
12420         (DEF_VEC_O (fileio_fh_t)): Remove.
12421         (fileio_fhandles): Now a std::vector.
12422         (is_closed_fileio_fh): Delete.
12423         (acquire_fileio_fd): Adjust.  Rename parameters.
12424         (release_fileio_fd): Adjust.
12425         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12426         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12427         (target_fileio_close): Adjust.
12428
12429 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12430
12431         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12432         index.
12433
12434 2018-04-10  Pedro Alves  <palves@redhat.com>
12435
12436         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12437         (scoped_finish_thread_state): New class.
12438         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12439         cleanup.
12440         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12441         (fetch_inferior_event, normal_stop): Likewise.
12442         * thread.c (finish_thread_state_cleanup): Delete.
12443
12444 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12445             Pedro Alves  <palves@redhat.com>
12446
12447         * value.c: Include "selftest.h" and "common/array-view.h".
12448         (struct range) <operator ==>: New.
12449         (test_ranges_contain): New.
12450         (check_ranges_vector): New.
12451         (test_insert_into_bit_range_vector): New.
12452         (_initialize_values): Register selftests.
12453         * common/array-view.h (operator==, operator!=): New.
12454
12455 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12456
12457         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12458         an iterator.
12459         * inline-frame.c: Include <algorithm>.
12460         (struct inline_state): Add constructor.
12461         (inline_state_s): Remove.
12462         (DEF_VEC_O(inline_state_s)): Remove.
12463         (inline_states): Change type to std::vector.
12464         (find_inline_frame_state): Adjust to std::vector.
12465         (allocate_inline_frame_state): Remove.
12466         (clear_inline_frame_state): Adjust to std::vector.
12467         (skip_inline_frames): Adjust to std::vector.
12468
12469 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12470
12471         * tracepoint.h (struct trace_state_variable): Add constructor.
12472         <name>: Change type to std::string.
12473         * tracepoint.c (tsv_s): Remove.
12474         (DEF_VEC_O(tsv_s)): Remove.
12475         (tvariables): Change to std::vector.
12476         (create_trace_state_variable): Adjust to std::vector.
12477         (find_trace_state_variable): Likewise.
12478         (find_trace_state_variable_by_number): Likewise.
12479         (delete_trace_state_variable): Likewise.
12480         (trace_variable_command): Adjust to std::string.
12481         (delete_trace_variable_command): Likewise.
12482         (tvariables_info_1): Adjust to std::vector.
12483         (save_trace_state_variables): Likewise.
12484         (start_tracing): Likewise.
12485         (merge_uploaded_trace_state_variables): Adjust to std::vector
12486         and std::string.
12487         * target.h (struct target_ops)
12488         <to_download_trace_state_variable>: Pass reference to
12489         trace_state_variable.
12490         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12491         * target-delegates.c: Re-generate.
12492         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12493         (mi_tsv_deleted): Likewise.
12494         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12495         * remote.c (remote_download_trace_state_variable): Change
12496         pointer to reference and adjust.
12497         * make-target-delegates (parse_argtypes): Handle references.
12498         (write_function_header): Likewise.
12499         (munge_type): Likewise.
12500
12501 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12502
12503         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12504         string_view-selftests.c.
12505         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12506         testsuite.
12507         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12508         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12509         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12510         * unittests/basic_string_view/element_access/char/1.cc:
12511         Likewise.
12512         * unittests/basic_string_view/element_access/char/empty.cc:
12513         Likewise.
12514         * unittests/basic_string_view/element_access/char/front_back.cc:
12515         Likewise.
12516         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12517         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12518         Likewise.
12519         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12520         Likewise.
12521         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12522         Likewise.
12523         * unittests/basic_string_view/operations/compare/char/1.cc:
12524         Likewise.
12525         * unittests/basic_string_view/operations/compare/char/13650.cc:
12526         Likewise.
12527         * unittests/basic_string_view/operations/copy/char/1.cc:
12528         Likewise.
12529         * unittests/basic_string_view/operations/data/char/1.cc:
12530         Likewise.
12531         * unittests/basic_string_view/operations/find/char/1.cc:
12532         Likewise.
12533         * unittests/basic_string_view/operations/find/char/2.cc:
12534         Likewise.
12535         * unittests/basic_string_view/operations/find/char/3.cc:
12536         Likewise.
12537         * unittests/basic_string_view/operations/find/char/4.cc:
12538         Likewise.
12539         * unittests/basic_string_view/operations/rfind/char/1.cc:
12540         Likewise.
12541         * unittests/basic_string_view/operations/rfind/char/2.cc:
12542         Likewise.
12543         * unittests/basic_string_view/operations/rfind/char/3.cc:
12544         Likewise.
12545         * unittests/basic_string_view/operations/substr/char/1.cc:
12546         Likewise.
12547         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12548         * unittests/string_view-selftests.c: New file.
12549
12550 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12551
12552         * unittests/basic_string_view/capacity/1.cc: New file.
12553         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12554         * unittests/basic_string_view/cons/char/1.cc: New file.
12555         * unittests/basic_string_view/cons/char/2.cc: New file.
12556         * unittests/basic_string_view/cons/char/3.cc: New file.
12557         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12558         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12559         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12560         * unittests/basic_string_view/element_access/char/1.cc: New file.
12561         * unittests/basic_string_view/element_access/char/2.cc: New file.
12562         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12563         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12564         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12565         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12566         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12567         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12568         * unittests/basic_string_view/include.cc: New file.
12569         * unittests/basic_string_view/inserters/char/1.cc: New file.
12570         * unittests/basic_string_view/inserters/char/2.cc: New file.
12571         * unittests/basic_string_view/inserters/char/3.cc: New file.
12572         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12573         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12574         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12575         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12576         * unittests/basic_string_view/literals/types.cc: New file.
12577         * unittests/basic_string_view/literals/values.cc: New file.
12578         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12579         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12580         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12581         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12582         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12583         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12584         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12585         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12586         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12587         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12588         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12589         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12590         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12591         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12592         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12593         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12594         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12595         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12596         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12597         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12598         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12599         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12600         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12601         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12602         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12603         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12604         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12605         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12606         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12607         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12608         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12609         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12610         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12611         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12612         * unittests/basic_string_view/operators/char/2.cc: New file.
12613         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12614         * unittests/basic_string_view/range_access/char/1.cc: New file.
12615         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12616         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12617         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12618         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12619         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12620         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12621         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12622         * unittests/basic_string_view/typedefs.cc: New file.
12623         * unittests/basic_string_view/types/1.cc: New file.
12624
12625 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12626
12627         * common/gdb_string_view.h: Remove libstdc++ implementation
12628         details, adjust to gdb reality.
12629         * common/gdb_string_view.tcc: Likewise.
12630         * cli/cli-script.c (struct string_view): Remove.
12631         (user_args) <m_args>: Change element type to gdb::string_view.
12632         (user_args::insert_args): Adjust.
12633
12634 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12635
12636         * common/gdb_string_view.h: New file.
12637         * common/gdb_string_view.tcc: New file.
12638
12639 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12640
12641         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12642         * configure: Re-generate.
12643
12644 2018-04-09  Pedro Alves  <palves@redhat.com>
12645
12646         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12647         (set_target_gdbarch): Call
12648         gdb::observers::architecture_changed.notify instead of
12649         observer_notify_architecture_changed.
12650
12651 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12652
12653         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12654         (do_restore_current_traceframe_cleanup): Remove.
12655         (restore_current_traceframe_cleanup_dtor): Remove.
12656         (make_cleanup_restore_current_traceframe): Remove.
12657         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12658         New.
12659         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12660         * infrun.c (fetch_inferior_event): Use
12661         scoped_restore_current_traceframe.
12662
12663 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12664
12665         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12666         Remove.
12667         <n_allocated_type_units>: Remove.
12668         <all_type_units>: Change to std::vector.
12669         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12670         to std::vector change.
12671         (dwarf2_per_objfile::get_cutu): Likewise.
12672         (dwarf2_per_objfile::get_tu): Likewise.
12673         (create_signatured_type_table_from_index): Likewise.
12674         (create_signatured_type_table_from_debug_names): Likewise.
12675         (dw2_symtab_iter_next): Likewise.
12676         (dw2_print_stats): Likewise.
12677         (dw2_expand_all_symtabs): Likewise.
12678         (dw2_expand_marked_cus): Likewise.
12679         (dw2_debug_names_iterator::next): Likewise.
12680         (dwarf2_initialize_objfile): Likewise.
12681         (add_signatured_type_cu_to_table): Likewise.
12682         (create_all_type_units): Likewise.
12683         (add_type_unit): Likewise.
12684         (struct tu_abbrev_offset): Add constructor.
12685         (build_type_psymtabs_1): Adjust to std::vector change.
12686         (print_tu_stats): Likewise.
12687         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12688         (write_debug_names): Likewise.
12689
12690 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12691
12692         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12693         Make an std::vector.
12694         <n_comp_units>: Remove.
12695         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12696         to std::vector change.
12697         (dwarf2_per_objfile::get_cutu): Likewise.
12698         (dwarf2_per_objfile::get_cu): Likewise.
12699         (create_cus_from_index): Likewise.
12700         (create_addrmap_from_index): Likewise.
12701         (create_addrmap_from_aranges): Likewise.
12702         (dwarf2_read_index): Likewise.
12703         (dw2_find_last_source_symtab): Likewise.
12704         (dw2_map_symtabs_matching_filename): Likewise.
12705         (dw2_symtab_iter_next): Likewise.
12706         (dw2_print_stats): Likewise.
12707         (dw2_expand_all_symtabs): Likewise.
12708         (dw2_expand_symtabs_with_fullname): Likewise.
12709         (dw2_expand_marked_cus): Likewise.
12710         (dw2_map_symbol_filenames): Likewise.
12711         (create_cus_from_debug_names): Likewise.
12712         (dwarf2_read_debug_names): Likewise.
12713         (dw2_debug_names_iterator::next): Likewise.
12714         (dwarf2_initialize_objfile): Likewise.
12715         (set_partial_user): Likewise.
12716         (dwarf2_build_psymtabs_hard): Likewise.
12717         (read_comp_units_from_section): Remove arguments, adjust to
12718         std::vector change.
12719         (create_all_comp_units): Adjust to std::vector and
12720         read_comp_units_from_section changes.
12721         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12722         change.
12723         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12724         (psyms_seen_size): Likewise.
12725         (write_gdbindex): Likewise.
12726         (write_debug_names): Likewise.
12727
12728 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12729
12730         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12731         with dwarf2_per_objfile.
12732         (create_cus_from_index): Likewise.
12733         (create_signatured_type_table_from_index): Likewise.
12734         (dwarf2_read_index): Likewise.
12735         (dwarf2_initialize_objfile): Likewise.
12736         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12737         per_cu rather than get_dwarf2_per_objfile.
12738
12739 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12740
12741         * dwarf2read.h (struct signatured_type): Forward declare.
12742         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12743         New methods.
12744         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12745         (dw2_get_cutu): ...this.
12746         (dwarf2_per_objfile::get_cu): Rename from...
12747         (dw2_get_cu): ...this.
12748         (dwarf2_per_objfile::get_tu): New.
12749         (create_addrmap_from_index): Adjust.
12750         (create_addrmap_from_aranges): Adjust.
12751         (dw2_find_last_source_symtab): Adjust.
12752         (dw2_map_symtabs_matching_filename): Adjust.
12753         (dw2_symtab_iter_next): Adjust.
12754         (dw2_print_stats): Adjust.
12755         (dw2_expand_all_symtabs): Adjust.
12756         (dw2_expand_symtabs_with_fullname): Adjust.
12757         (dw2_expand_marked_cus): Adjust.
12758         (dw_expand_symtabs_matching_file_matcher): Adjust.
12759         (dw2_map_symbol_filenames): Adjust.
12760         (dw2_debug_names_iterator::next): Adjust.
12761         (dwarf2_initialize_objfile): Adjust.
12762         (set_partial_user): Adjust.
12763         (dwarf2_build_psymtabs_hard): Adjust.
12764
12765 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12766
12767         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12768         Remove unused variables.
12769         (dw2_map_symtabs_matching_filename): Likewise.
12770         (dwarf2_record_block_ranges): Likewise.
12771         (dwarf2_read_addr_index): Likewise.
12772         (follow_die_offset): Likewise.
12773
12774 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12775
12776         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12777         to symbol_file_add_main.
12778
12779 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12780
12781         PR mi/22299
12782         * mi/mi-console.c (do_fputc_async_safe): New.
12783         (mi_console_file::write_async_safe): New.
12784         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12785         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12786         New.
12787         * ui-file.c (ui_file::putstrn): Adjust call to
12788         fputstrn_unfiltered.
12789         * utils.c (printchar): Replace do_fputs and do_fprintf
12790         parameters by do_fputc.
12791         (fputstr_filtered): Adjust call to printchar.
12792         (fputstr_unfiltered): Likewise.
12793         (fputstrn_filtered): Likewise.
12794         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12795         printchar.
12796         * utils.h (do_fputc_ftype): New typedef.
12797         (fputstrn_unfiltered): Add do_fputc parameter.
12798
12799 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12800
12801         * regformats/i386/i386-avx.dat: Remove.
12802
12803 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12804
12805         PR gdb/22979
12806         * amd64-tdep.c (amd64_none_init_abi): New function.
12807         (amd64_x32_none_init_abi): New function.
12808         (_initialize_amd64_tdep): Register handlers for x86-64 and
12809         x64_32 with GDB_OSABI_NONE.
12810         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12811         GDB_OSABI_NONE osabi.
12812
12813 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12814
12815         PR gdb/22980
12816         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12817         GDB_OSABI_NONE.
12818         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12819         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12820
12821 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12822
12823         * common/byte-vector.h (char_vector): New type.
12824         * target.h (target_read_alloc): Return
12825         gdb::optional<byte_vector>.
12826         (target_read_stralloc): Return gdb::optional<char_vector>.
12827         (target_get_osdata): Return gdb::optional<char_vector>.
12828         * target.c (target_read_alloc_1): Templatize.  Replacement
12829         manual memory management with vector.
12830         (target_read_alloc): Change return type, adjust.
12831         (target_read_stralloc): Change return type, adjust.
12832         (target_get_osdata): Change return type, adjust.
12833         * auxv.c (struct auxv_info) <length>: Remove.
12834         <data>: Change type to gdb::optional<byte_vector>.
12835         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12836         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12837         (target_auxv_search): Adjust.
12838         (fprint_target_auxv): Adjust.
12839         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12840         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12841         (linux_make_corefile_notes): Adjust.
12842         * osdata.c (get_osdata): Adjust.
12843         * remote.c (remote_get_threads_with_qxfer): Adjust.
12844         (remote_memory_map): Adjust.
12845         (remote_traceframe_info): Adjust.
12846         (btrace_read_config): Adjust.
12847         (remote_read_btrace): Adjust.
12848         (remote_pid_to_exec_file): Adjust.
12849         * solib-aix.c (solib_aix_get_library_list): Adjust.
12850         * solib-dsbt.c (decode_loadmap): Don't free buf.
12851         (dsbt_get_initial_loadmaps): Adjust.
12852         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12853         * solib-target.c (solib_target_current_sos): Adjust.
12854         * tracepoint.c (sdata_make_value): Adjust.
12855         * xml-support.c (xinclude_start_include): Adjust.
12856         (xml_fetch_content_from_file): Adjust.
12857         * xml-support.h (xml_fetch_another): Change return type.
12858         (xml_fetch_content_from_file): Change return type.
12859         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12860         * xml-tdesc.c (file_read_description_xml): Adjust.
12861         (fetch_available_features_from_target): Change return type.
12862         (target_fetch_description_xml): Adjust.
12863         (target_read_description_xml): Adjust.
12864
12865 2018-04-06  Tom Tromey  <tom@tromey.com>
12866
12867         * value.c (~value): Update.
12868         (struct value) <contents>: Now unique_xmalloc_ptr.
12869         (value_contents_bits_eq, allocate_value_contents)
12870         (value_contents_raw, value_contents_all_raw)
12871         (value_contents_for_printing, value_contents_for_printing_const)
12872         (set_value_enclosing_type): Update.
12873
12874 2018-04-06  Tom Tromey  <tom@tromey.com>
12875
12876         * value.c (range_s): Remove typedef, VEC.
12877         (struct range): Add operator<.
12878         (range_lessthan): Remove.
12879         (ranges_contain): Change type.
12880         (~value): Update.
12881         (struct value) <unavailable, optimized_out>: Now std::vector.
12882         (value_entirely_available)
12883         (value_entirely_covered_by_range_vector)
12884         (value_entirely_unavailable, value_entirely_optimized_out):
12885         Update.
12886         (insert_into_bit_range_vector): Change argument type.
12887         (find_first_range_overlap): Likewise.
12888         (struct ranges_and_idx, value_contents_bits_eq)
12889         (require_not_optimized_out, require_available): Update.
12890         (ranges_copy_adjusted): Change argument types.
12891         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12892
12893 2018-04-06  Tom Tromey  <tom@tromey.com>
12894
12895         * value.c (~value): Update.
12896         (struct value) <parent>: Now a value_ref_ptr.
12897         (value_parent, set_value_parent, value_address, value_copy):
12898         Update.
12899
12900 2018-04-06  Tom Tromey  <tom@tromey.com>
12901
12902         * value.c (struct value): Add constructor, destructor, and member
12903         initializers.
12904         (allocate_value_lazy, value_decref): Update.
12905
12906 2018-04-06  Tom Tromey  <tom@tromey.com>
12907
12908         * value.c (struct value) <released, next>: Remove.
12909         (all_values): Now a std::vector.
12910         (allocate_value_lazy): Update.
12911         (value_next): Remove.
12912         (value_mark, value_free_to_mark, release_value)
12913         (value_release_to_mark): Update.
12914
12915 2018-04-06  Tom Tromey  <tom@tromey.com>
12916
12917         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12918         (free_value_chain): Remove.
12919         * value.c (free_value_chain): Remove.
12920         (value_release_to_mark): Return a std::vector.
12921         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12922         std::vector.
12923         (check_condition): Update.
12924         * eval.c (fetch_subexp_value): Change "val_chain" to a
12925         std::vector.
12926         * breakpoint.c (update_watchpoint): Update.
12927         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12928
12929 2018-04-06  Tom Tromey  <tom@tromey.com>
12930
12931         * value.h (free_all_values): Remove.
12932         * value.c (free_all_values): Remove.
12933
12934 2018-04-06  Tom Tromey  <tom@tromey.com>
12935
12936         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12937         (value_history_chain, value_history_count): Remove.
12938         (value_history): New global.
12939         (record_latest_value, access_value_history, show_values)
12940         (preserve_values): Update.
12941
12942 2018-04-06  Tom Tromey  <tom@tromey.com>
12943
12944         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12945         * varobj.c (varobj_set_display_format, varobj_set_value)
12946         (install_default_visualizer, construct_visualizer)
12947         (install_new_value, ~varobj, varobj_get_value_type)
12948         (my_value_of_variable, varobj_editable_p): Update.
12949         * c-varobj.c (c_describe_child, c_value_of_variable)
12950         (cplus_number_of_children, cplus_describe_child): Update.
12951         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12952         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12953         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12954
12955 2018-04-06  Tom Tromey  <tom@tromey.com>
12956
12957         * printcmd.c (last_examine_address): Change type to
12958         value_ref_ptr.
12959         (do_examine, x_command): Update.
12960
12961 2018-04-06  Tom Tromey  <tom@tromey.com>
12962
12963         * value.c (release_value): Update.
12964         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12965         (struct bpstats) <val>: Now a value_ref_ptr.
12966         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12967         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12968         (~watchpoint, print_it_watchpoint, watch_command_1)
12969         (invalidate_bp_value_on_memory_change): Update.
12970
12971 2018-04-06  Tom Tromey  <tom@tromey.com>
12972
12973         * varobj.c (varobj_clear_saved_item)
12974         (update_dynamic_varobj_children, install_new_value, ~varobj):
12975         Update.
12976         * value.h (value_incref): Move declaration earlier.
12977         (value_decref): Rename from value_free.
12978         (struct value_ref_policy): New.
12979         (value_ref_ptr): New typedef.
12980         (struct value_deleter): Remove.
12981         (gdb_value_up): Remove typedef.
12982         (release_value): Change return type.
12983         (release_value_or_incref): Remove.
12984         * value.c (set_value_parent): Update.
12985         (value_incref): Change return type.
12986         (value_decref): Rename from value_free.
12987         (value_free_to_mark, free_all_values, free_value_chain): Update.
12988         (release_value): Return value_ref_ptr.
12989         (release_value_or_incref): Remove.
12990         (record_latest_value, set_internalvar, clear_internalvar):
12991         Update.
12992         * stack.c (info_frame_command): Don't call value_free.
12993         * python/py-value.c (valpy_dealloc, valpy_new)
12994         (value_to_value_object): Update.
12995         * printcmd.c (do_examine): Update.
12996         * opencl-lang.c (lval_func_free_closure): Update.
12997         * mi/mi-main.c (register_changed_p): Don't call value_free.
12998         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12999         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13000         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13001         value_free.
13002         * guile/scm-value.c (vlscm_free_value_smob)
13003         (vlscm_scm_from_value): Update.
13004         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13005         (frame_unwind_register_unsigned, get_frame_register_bytes)
13006         (put_frame_register_bytes): Don't call value_free.
13007         * findvar.c (address_from_register): Don't call value_free.
13008         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13009         * dwarf2loc.c (entry_data_value_free_closure)
13010         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13011         (dwarf2_evaluate_loc_desc_full): Update.
13012         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13013         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13014         (~watchpoint, watch_command_1)
13015         (invalidate_bp_value_on_memory_change): Update.
13016         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13017
13018 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13019
13020         PR gdb/23022
13021         * warning.m4: Add -Wno-error=deprecated-register.
13022         * configure: Re-generate.
13023
13024 2018-04-05  Tom Tromey  <tom@tromey.com>
13025
13026         * linespec.h: Remove include of "vec.h".
13027
13028 2018-04-05  Tom Tromey  <tom@tromey.com>
13029
13030         * linespec.c (typep): Remove typedef.
13031         (find_methods, find_superclass_methods): Take a std::vector.
13032         (find_method): Use std::vector.
13033
13034 2018-04-05  Tom Tromey  <tom@tromey.com>
13035
13036         * utils.c (compare_strings): Remove.
13037         * utils.h (compare_strings): Remove.
13038         * objc-lang.h (find_imps): Update.
13039         * objc-lang.c (find_methods): Take a std::vector.
13040         (uniquify_strings, find_imps): Likewise.
13041         * linespec.c (find_methods): Take a std::vector.
13042         (decode_objc): Use std::vector.
13043         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13044         a std::vector.
13045         (find_method, find_function_symbols): Use std::vector.
13046
13047 2018-04-05  Tom Tromey  <tom@tromey.com>
13048
13049         * completer.c (completion_tracker::completion_tracker): Remove
13050         cast.
13051         (completion_tracker::discard_completions): Likewise.
13052         * breakpoint.c (ambiguous_names_p): Remove cast.
13053         * ada-lang.c (_initialize_ada_language): Remove cast.
13054         * utils.h (streq): Update.
13055         (streq_hash): Add new declaration.
13056         * utils.c (streq): Return bool.
13057         (streq_hash): New function.
13058
13059 2018-04-05  Tom Tromey  <tom@tromey.com>
13060
13061         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13062         Remove a string copy.
13063
13064 2018-04-05  Tom Tromey  <tom@tromey.com>
13065
13066         * linespec.c (filter_results): Use std::vector.
13067         (decode_line_2, decode_line_full): Update.
13068
13069 2018-04-05  Tom Tromey  <tom@tromey.com>
13070
13071         * linespec.c (canonical_to_fullform): Return std::string.
13072         (filter_results): Update.
13073         (struct decode_line_2_item): Add constructor.
13074         <fullform, displayform>: Now std::string.
13075         (decode_line_2_compare_items): Now a std::sort comparator.
13076         (decode_line_2): Update.
13077
13078 2018-04-05  Tom Tromey  <tom@tromey.com>
13079
13080         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13081         (unexpected_linespec_error): Update.
13082         (linespec_parse_basic, parse_linespec): Update.
13083
13084 2018-04-05  Tom Tromey  <tom@tromey.com>
13085
13086         * linespec.c (linespec_parse_basic): Reindent.
13087
13088 2018-04-05  Tom Tromey  <tom@tromey.com>
13089
13090         * minsyms.h (iterate_over_minimal_symbols): Update.
13091         * minsyms.c (iterate_over_minimal_symbols): Take a
13092         gdb::function_view.
13093         * linespec.c (struct collect_minsyms): Remove.
13094         (compare_msyms): Now a std::sort comparator.
13095         (add_minsym): Add parameters.
13096         (search_minsyms_for_name): Update.  Use std::vector.
13097
13098 2018-04-03  Tom Tromey  <tom@tromey.com>
13099
13100         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13101         gdb::byte_vector.
13102
13103 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13104
13105         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13106
13107 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13108
13109         PR gdb/16959
13110         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13111         printing static type.
13112
13113 2018-04-01  Tom Tromey  <tom@tromey.com>
13114
13115         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13116         (rs6000_xfer_shared_libraries): Update.
13117
13118 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13119
13120         * common/gdb_vecs.h (char_ptr): Remove.
13121         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13122
13123 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13124
13125         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13126         with std::vector.
13127         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13128
13129 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13130
13131         * tracepoint.h (struct uploaded_tp): Initialize fields.
13132         <actions, step_actions, cmd_strings>: Change type to
13133         std::vector<char *>.
13134         * tracepoint.c (get_uploaded_tp): Allocate with new.
13135         (free_uploaded_tps): Free with delete.
13136         (parse_tracepoint_definition): Adjust to std::vector change.
13137         * breakpoint.c (read_uploaded_action): Likewise.
13138         (create_tracepoint_from_upload): Likewise.
13139         * ctf.c (ctf_write_uploaded_tp): Likewise.
13140         (SET_ARRAY_FIELD): Likewise.
13141         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13142
13143 2018-03-30  Tom Tromey  <tom@tromey.com>
13144
13145         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13146         std::unique_ptr.
13147         (svr4_keep_data_in_core): Update.
13148         (svr4_read_so_list): Update.
13149
13150 2018-03-30  Tom Tromey  <tom@tromey.com>
13151
13152         * windows-nat.c (handle_output_debug_string, handle_exception):
13153         Update.
13154         * target.h (target_read_string): Update.
13155         * target.c (target_read_string): Change "string" to
13156         unique_xmalloc_ptr.
13157         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13158         Update.
13159         * solib-frv.c (frv_current_sos): Update.
13160         * solib-dsbt.c (dsbt_current_sos): Update.
13161         * solib-darwin.c (darwin_current_sos): Update.
13162         * linux-thread-db.c (inferior_has_bug): Update.
13163         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13164         Update.  Remove alloca.
13165         * ada-lang.c (ada_main_name): Update.
13166
13167 2018-03-30  Tom Tromey  <tom@tromey.com>
13168
13169         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13170         (struct dwo_file_deleter): New.
13171         (dwo_file_up): New typedef.
13172         (open_and_init_dwo_file): Use dwo_file_up.
13173         (free_dwo_file_cleanup): Remove.
13174
13175 2018-03-30  Tom Tromey  <tom@tromey.com>
13176
13177         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13178         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13179
13180 2018-03-30  Tom Tromey  <tom@tromey.com>
13181
13182         * dwarf2read.c (class free_cached_comp_units): New class.
13183         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13184         (free_cached_comp_units): Remove function.
13185
13186 2018-03-30  Tom Tromey  <tom@tromey.com>
13187
13188         * utils.h (make_cleanup_unpush_target): Remove.
13189         * inf-ptrace.c (struct target_unpusher): New.
13190         (target_unpush_up) New typedef.
13191         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13192         target_unpush_up.
13193         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13194
13195 2018-03-27  Tom Tromey  <tom@tromey.com>
13196
13197         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13198
13199 2018-03-27  Pedro Alves  <palves@redhat.com>
13200             Tom Tromey  <tom@tromey.com>
13201
13202         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13203         destructor.  Now a class.
13204         (gdb_readline_wrapper_cleanup): Remove function.
13205         (gdb_readline_wrapper): Remove cleanups.
13206
13207 2018-03-27  Tom Tromey  <tom@tromey.com>
13208
13209         * typeprint.h (struct type_print_options) <local_typedefs,
13210         global_typedefs>: Remove "struct" keyword.
13211         (class typedef_hash_table): New class.
13212         (recursively_update_typedef_hash, add_template_parameters)
13213         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13214         (find_typedef_in_hash): Don't declare.
13215         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13216         (typedef_hash_table::recursively_update): Rename from
13217         recursively_update_typedef_hash.  Now a member.
13218         (typedef_hash_table::add_template_parameters): Rename from
13219         add_template_parameters.  Now a member.
13220         (typedef_hash_table::typedef_hash_table): Now a constructor;
13221         rename from create_typedef_hash.
13222         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13223         rename from free_typedef_hash.
13224         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13225         (do_free_global_table): Remove.
13226         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13227         from copy_type_recursive.
13228         (create_global_typedef_table): Remove.
13229         (typedef_hash_table::find_global_typedef): Now a member of
13230         typedef_hash_table.
13231         (typedef_hash_table::find_typedef): Rename from
13232         find_typedef_in_hash; now a member.
13233         (whatis_exp): Update.
13234         * extension.h (struct ext_lang_type_printers): Add constructor and
13235         destructor.
13236         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13237         declare.
13238         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13239         Now a constructor; rename from start_ext_lang_type_printers.
13240         (ext_lang_type_printers): Now a destructor; rename from
13241         free_ext_lang_type_printers.
13242         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13243         Update.
13244         (c_type_print_base_struct_union): Update.  Remove cleanups.
13245
13246 2018-03-27  Tom Tromey  <tom@tromey.com>
13247
13248         * dwarf-index-write.c: Include <cmath>.
13249
13250 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13251
13252         * NEWS: Add entry describing new "set|show varsize-limit" command.
13253         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13254         command.
13255         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13256         "set variable".
13257
13258 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13259
13260         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13261         dwarf-index-write.c
13262         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13263         * dwarf-index-common.c: New file.
13264         * dwarf-index-common.h: New file.
13265         * dwarf-index-write.c: New file.
13266         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13267         (struct dwarf2_section_info): Move from here.
13268         (dwarf2_section_info_def): Likewise.
13269         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13270         (offset_type): Likewise.
13271         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13272         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13273         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13274         (byte_swap): Likewise.
13275         (MAYBE_SWAP): Likewise.
13276         (dwarf2_per_cu_ptr): Likewise.
13277         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13278         (struct tu_stats): Likewise.
13279         (struct dwarf2_per_objfile): Likewise.
13280         (struct dwarf2_per_cu_data): Likewise.
13281         (struct signatured_type): Likewise.
13282         (sig_type_ptr): Likewise.
13283         (DEF_VEC_P (sig_type_ptr)): Likewise.
13284         (INDEX4_SUFFIX): Likewise.
13285         (INDEX5_SUFFIX): Likewise.
13286         (DEBUG_STR_SUFFIX): Likewise.
13287         (dwarf2_read_section): Make non-static.
13288         (mapped_index_string_hash): Move from here.
13289         (dwarf5_djb_hash): Likewise.
13290         (file_write): Likewise.
13291         (class data_buf): Likewise.
13292         (struct symtab_index_entry): Likewise.
13293         (struct mapped_symtab): Likewise.
13294         (find_slot): Likewise.
13295         (hash_expand): Likewise.
13296         (add_index_entry): Likewise.
13297         (uniquify_cu_indices): Likewise.
13298         (class c_str_view): Likewise.
13299         (class c_str_view_hasher): Likewise.
13300         (class vector_hasher): Likewise.
13301         (write_hash_table): Likewise.
13302         (psym_index_map): Likewise.
13303         (struct addrmap_index_data): Likewise.
13304         (add_address_entry): Likewise.
13305         (add_address_entry_worker): Likewise.
13306         (write_address_map): Likewise.
13307         (symbol_kind): Likewise.
13308         (write_psymbols): Likewise.
13309         (struct signatured_type_index_data): Likewise.
13310         (write_one_signatured_type): Likewise.
13311         (recursively_count_psymbols): Likewise.
13312         (recursively_write_psymbols): Likewise.
13313         (class debug_names): Likewise.
13314         (check_dwarf64_offsets): Likewise.
13315         (psyms_seen_size): Likewise.
13316         (write_gdbindex): Likewise.
13317         (write_debug_names): Likewise.
13318         (assert_file_size): Likewise.
13319         (write_psymtabs_to_index): Likewise.
13320         (save_gdb_index_command): Likewise.
13321         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13322         command.
13323         * dwarf2read.h: New file.
13324
13325 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13326
13327         PR gdb/22670
13328         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13329         symbol name if the CU's language stores symbol names in linkage
13330         format.
13331         * language.h (struct language_defn)
13332         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13333         all instances of this struct.
13334
13335 2018-03-26  Tom Tromey  <tom@tromey.com>
13336
13337         * stack.c (backtrace_command_1): Remove verbose code.
13338
13339 2018-03-26  Tom Tromey  <tom@tromey.com>
13340
13341         * python/py-framefilter.c (py_print_type): Don't catch
13342         exceptions.  Return void.
13343         (py_print_value): Likewise.
13344         (py_print_single_arg): Likewise.
13345         (enumerate_args): Don't catch exceptions.
13346         (py_print_args): Likewise.
13347         (py_print_frame): Likewise.
13348         (gdbpy_apply_frame_filter): Catch exceptions here.
13349
13350 2018-03-26  Tom Tromey  <tom@tromey.com>
13351
13352         * stack.c (_initialize_stack): Remove trailing newlines from help
13353         text.  Add "Usage" line to "backtrace" help.
13354
13355 2018-03-26  Tom Tromey  <tom@tromey.com>
13356
13357         PR python/16486:
13358         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13359
13360 2018-03-26  Tom Tromey  <tom@tromey.com>
13361
13362         * python/py-framefilter.c (py_print_single_arg): Return
13363         EXT_LANG_BT_ERROR from catch.
13364
13365 2018-03-26  Tom Tromey  <tom@tromey.com>
13366
13367         PR backtrace/15584:
13368         * stack.c (backtrace_command_1): Move some code into no-filters
13369         "if".
13370
13371 2018-03-26  Tom Tromey  <tom@tromey.com>
13372
13373         * python/py-framefilter.c (throw_quit_or_print_exception): New
13374         function.
13375         (gdbpy_apply_frame_filter): Use it.
13376
13377 2018-03-26  Tom Tromey  <tom@tromey.com>
13378
13379         PR cli/17716:
13380         * python/py-framefilter.c (py_print_type, py_print_value)
13381         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13382         RETURN_MASK_ERROR.
13383
13384 2018-03-26  Tom Tromey  <tom@tromey.com>
13385
13386         * python/py-framefilter.c (enumerate_args): Use
13387         gdb::unique_xmalloc_ptr.
13388
13389 2018-03-26  Tom Tromey  <tom@tromey.com>
13390
13391         * python/py-framefilter.c (py_print_frame): Return
13392         EXT_LANG_BT_OK.
13393         (gdbpy_apply_frame_filter): Update comment.
13394         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13395         Remove.
13396         <EXT_LANG_BT_NO_FILTERS>: Change value.
13397
13398 2018-03-26  Tom Tromey  <tom@tromey.com>
13399
13400         PR backtrace/15582:
13401         * stack.c (backtrace_command): Parse "hide" argument.
13402         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13403         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13404         constant.
13405
13406 2018-03-26  Tom Tromey  <tom@tromey.com>
13407
13408         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13409         add "flags".
13410         (backtrace_command): Remove "fulltrace", add "flags".
13411
13412 2018-03-26  Tom Tromey  <tom@tromey.com>
13413
13414         * stack.c (backtrace_command): Rewrite command line parsing.
13415
13416 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13417
13418         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13419
13420 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13421
13422         * filename-seen-cache.h: Add include guard.
13423
13424 2018-03-26  Keith Seitz  <keiths@redhat.com>
13425
13426         * symfile.c (place_section): Remove "struct" from section_addr_info
13427         in comment.
13428         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13429         "struct" keyword from section_addr_info.
13430
13431 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13432
13433         * regformats/regdef.h (reg): Add constructors.
13434
13435 2018-03-25  Pedro Alves  <palves@redhat.com>
13436
13437         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13438         if then/else bodies in var_func_name extraction.
13439
13440 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13441
13442         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13443         lookup_minimal_symbol() to find symbol entry.
13444         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13445
13446 2018-03-23  Keith Seitz  <keiths@redhat.com>
13447
13448         PR c++/22968
13449         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13450         nested type definitions for C++, too.
13451
13452 2018-03-23  Tom Tromey  <tom@tromey.com>
13453
13454         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13455         a typedef.
13456         (macho_register_oso): Remove.
13457         (macho_symtab_read): Take a std::vector.
13458         (oso_el_compare_name): Now a std::sort comparator.
13459         (macho_symfile_read_all_oso): Take a std::vector.
13460         (macho_symfile_read): Use std::vector.  Remove cleanups.
13461
13462 2018-03-22  Tom Tromey  <tom@tromey.com>
13463
13464         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13465         (record_full_goto_bookmark): Use std::string.
13466
13467 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13468
13469         PR tdep/18295
13470         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13471         a single mask.
13472
13473 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13474
13475         * rs6000-tdep.c (store_insn_p): New function.
13476         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13477         and cr_reg to their unshifted values. Use store_insn_p to
13478         match LR saves using either R1 or fdata->alloca_reg. Use
13479         store_insn_p to match CR saves. Set alloca_reg_offset
13480         when alloca_reg and framep are set. Remove lr_reg shift
13481         when assigning to fdata->lr_register.
13482
13483 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13484
13485         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13486         command line args instead of emitting a warning.
13487
13488 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13489
13490         * tracepoint.h (struct static_tracepoint_marker): Initialize
13491         fields, define default constructor, move constructor and move
13492         assignment, disable the rest.
13493         <str_id, extra>: Make std::string.
13494         (release_static_tracepoint_marker): Remove.
13495         (free_current_marker): Remove.
13496         * tracepoint.c (free_current_marker): Remove.
13497         (parse_static_tracepoint_marker_definition): Adjust to
13498         std::string, use new hex2str overload.
13499         (release_static_tracepoint_marker): Remove.
13500         (print_one_static_tracepoint_marker): Get marker by reference
13501         and adjust to std::string.
13502         (info_static_tracepoint_markers_command): Adjust to std::vector
13503         changes
13504         * target.h (static_tracepoint_marker_p): Remove typedef.
13505         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13506         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13507         bool.
13508         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13509         * target-debug.h
13510         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13511         (target_debug_print_std_vector_static_tracepoint_marker): New.
13512         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13513         to...
13514         (target_debug_print_static_tracepoint_marker_p): ... this.
13515         * target-delegates.c: Re-generate.
13516         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13517         Make std::string.
13518         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13519         (decode_static_tracepoint_spec): Adjust to std::vector.
13520         (tracepoint_print_one_detail): Adjust to std::string.
13521         (strace_marker_decode_location): Adjust to std::string.
13522         (update_static_tracepoint): Adjust to std::string, remove call
13523         to release_static_tracepoint_marker.
13524         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13525         Adjust to std::vector.
13526         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13527         (remote_static_tracepoint_markers_by_strid): Adjust to
13528         std::vector.
13529         * common/rsp-low.h (hex2str): New overload with explicit count
13530         of bytes.
13531         * common/rsp-low.c (hex2str): New overload with explicit count
13532         of bytes.
13533         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13534         (_initialize_rsp_low_selftests): Add test_hex2str test.
13535         * unittests/tracepoint-selftests.c
13536         (test_parse_static_tracepoint_marker_definition): Adjust to
13537         std::string.
13538
13539 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13540
13541         * tracepoint.c (parse_static_tracepoint_marker_definition):
13542         Consider case where the definition is followed by more
13543         definitions.
13544         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13545         tracepoint-selftests.c.
13546         * unittests/tracepoint-selftests.c: New.
13547
13548 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13549
13550         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13551         Carvalho.
13552
13553 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13554
13555         * symtab.c (find_pc_sect_line): fixed indentation.
13556
13557 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13558
13559         * symtab.c (find_pc_sect_line): now uses binary search.
13560
13561 2018-03-19  Tom Tromey  <tom@tromey.com>
13562
13563         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13564         "IDENT" production.
13565
13566 2018-03-19  Pedro Alves  <palves@redhat.com>
13567             Tom Tromey  <tom@tromey.com>
13568
13569         * unittests/observable-selftests.c: New file.
13570         * common/observable.h: New file.
13571         * observable.h: New file.
13572         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13573         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13574         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13575         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13576         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13577         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13578         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13579         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13580         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13581         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13582         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13583         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13584         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13585         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13586         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13587         tui/tui-interp.c, valops.c: Update all users.
13588         * tui/tui-hooks.c (tui_bp_created_observer)
13589         (tui_bp_deleted_observer, tui_bp_modified_observer)
13590         (tui_inferior_exit_observer, tui_before_prompt_observer)
13591         (tui_normal_stop_observer, tui_register_changed_observer):
13592         Remove.
13593         (tui_observers_token): New global.
13594         (attach_or_detach, tui_attach_detach_observers): New functions.
13595         (tui_install_hooks, tui_remove_hooks): Use
13596         tui_attach_detach_observers.
13597         * record-btrace.c (record_btrace_thread_observer): Remove.
13598         (record_btrace_thread_observer_token): New global.
13599         * observer.sh: Remove.
13600         * observer.c: Rename to observable.c.
13601         * observable.c (namespace gdb_observers): Define new objects.
13602         (observer_debug): Move into gdb_observers namespace.
13603         (struct observer, struct observer_list, xalloc_observer_list_node)
13604         (xfree_observer_list_node, generic_observer_attach)
13605         (generic_observer_detach, generic_observer_notify): Remove.
13606         (_initialize_observer): Update.
13607         Don't include observer.inc.
13608         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13609         (clean mostlyclean): Likewise.
13610         (observer.h, observer.inc): Remove targets.
13611         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13612         (COMMON_SFILES): Use observable.c, not observer.c.
13613         * .gitignore: Remove observer.h.
13614
13615 2018-03-18  Tom Tromey  <tom@tromey.com>
13616
13617         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13618         gdb::def_vector.
13619         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13620
13621 2018-03-17  Tom Tromey  <tom@tromey.com>
13622
13623         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13624
13625 2018-03-17  Tom Tromey  <tom@tromey.com>
13626
13627         * target.c (class scoped_target_fd): New.
13628         (target_fileio_close_cleanup): Remove.
13629         (target_fileio_read_alloc_1): Use scoped_target_fd.
13630
13631 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13632
13633         * silent-rules.mk: New.
13634         * Makefile.in: Include silent-rules.mk
13635         (srcdir, VPATH, top_srcdir): Move up.
13636         (COMPILE): Add ECHO_CXX.
13637         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13638         (init.c): Add ECHO_INIT_C.
13639         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13640         (version.c): Add ECHO_GEN.
13641         (printcmd.o): Add ECHO_CXX.
13642         (target-float.o): Add ECHO_CXX.
13643         (ada-exp.o): Add ECHO_CXX.
13644         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13645         (insight$(EXEEXT)): Add ECHO_CXXLD.
13646         * gnulib/configure.ac: Add AM_SILENT_RULES.
13647         * gnulib/aclocal.m4: Re-generate.
13648         * gnulib/configure: Re-generate.
13649         * gnulib/import/Makefile.in: Re-generate.
13650
13651 2018-03-16  Tom Tromey  <tom@tromey.com>
13652
13653         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13654         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13655         * utils.c (do_free_section_addr_info)
13656         (make_cleanup_free_section_addr_info): Remove.
13657         * symfile.h (struct other_sections): Add constructor.
13658         (struct section_addr_info): Remove.
13659         (section_addr_info): New typedef.
13660         (struct sym_fns) <sym_offsets>: Change type of parameter.
13661         (build_section_addr_info_from_objfile)
13662         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13663         (default_symfile_offsets, symbol_file_add)
13664         (symbol_file_add_from_bfd)
13665         (build_section_addr_info_from_section_table): Update.
13666         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13667         * symfile.c (alloc_section_addr_info): Remove.
13668         (build_section_addr_info_from_section_table): Change return type.
13669         Update.
13670         (build_section_addr_info_from_bfd)
13671         (build_section_addr_info_from_objfile): Likewise.
13672         (free_section_addr_info): Remove.
13673         (relative_addr_info_to_section_offsets): Change type of "addrs".
13674         (addrs_section_compar): Now a std::sort comparator.
13675         (addrs_section_sort): Change return type.
13676         (addr_info_make_relative): Change type of "addrs".  Update.
13677         (default_symfile_offsets, syms_from_objfile_1)
13678         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13679         (symbol_file_add_separate): Update.
13680         (symbol_file_add): Change type of "addrs".  Update.
13681         (add_symbol_file_command): Update.  Remove cleanups.
13682         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13683         cleanups.
13684         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13685         * solib.c (solib_read_symbols): Update.
13686         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13687         * machoread.c (macho_symfile_offsets): Update.
13688         * jit.c (jit_bfd_try_read_symtab): Update.
13689
13690 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13691
13692         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13693         unittests/utils-selftests.c.
13694         * unittests/utils-selftests.c: New file.
13695
13696 2018-03-14  Tom Tromey  <tom@tromey.com>
13697
13698         PR cli/14977:
13699         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13700         for NULL.
13701
13702 2018-03-14  Tom Tromey  <tom@tromey.com>
13703
13704         PR cli/19918:
13705         * printcmd.c (printf_pointer): Allow "-" in format.
13706
13707 2018-03-14  Tom Tromey  <tom@tromey.com>
13708
13709         * printcmd.c (_initialize_printcmd): Add usage to printf.
13710
13711 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13712
13713         * MAINTAINERS: Update my email address.
13714
13715 2018-03-13  Tom Tromey  <tom@tromey.com>
13716
13717         * machoread.c (macho_check_dsym): Change filenamep to a
13718         std::string*.
13719         (macho_symfile_read): Update.
13720         * symfile.c (load_command): Use std::string.
13721
13722 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13723
13724         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13725         to error message string.
13726         (riscv_register_name): Use xsnprintf instead of sprintf.
13727         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13728         internal_error.
13729         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13730         error.
13731         (riscv_push_dummy_call): Likewise.
13732
13733 2018-03-12  Tom Tromey  <tom@tromey.com>
13734
13735         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13736         Use gdb::byte_vector.
13737         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13738
13739 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13740
13741         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13742         parameter type to readable_regcache.
13743         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13744         the declaration.
13745
13746 2018-03-11  Tom Tromey  <tom@tromey.com>
13747
13748         * dwarf2read.c (struct nextfield): Add initializers.
13749         (struct nextfnfield): Remove.
13750         (struct fnfieldlist): Add initializers.  Remove "length" and
13751         "head", use std::vector.
13752         (struct decl_field_list): Remove.
13753         (struct field_info): Add initializers.
13754         <fields, baseclasses>: Now std::vector.
13755         <nbaseclasses, nfnfields, typedef_field_list_count,
13756         nested_types_list_count>: Remove.
13757         (dwarf2_add_field, dwarf2_add_type_defn)
13758         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13759         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13760         (process_structure_scope): Update.
13761
13762 2018-03-11  Tom Tromey  <tom@tromey.com>
13763
13764         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13765         for use by std::sort.
13766         (build_type_psymtabs_1): Use std::vector.
13767
13768 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13769
13770         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13771         and LIBMPFR in the printed configuration.
13772
13773 2018-03-08  Tom Tromey  <tom@tromey.com>
13774
13775         * source.c (get_filename_and_charpos): Use scoped_fd.
13776         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13777         (procfs_pidlist): Likewise.
13778         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13779         (iterate_over_mappings): Likewise.
13780
13781 2018-03-08  Tom Tromey  <tom@tromey.com>
13782
13783         * infcall.c (struct call_return_meta_info)
13784         <stack_temporaries_enabled>: Remove.
13785         (get_call_return_value, call_function_by_hand_dummy): Update.
13786         * thread.c (disable_thread_stack_temporaries): Remove.
13787         (enable_thread_stack_temporaries): Remove.
13788         (thread_stack_temporaries_enabled_p): Return bool.
13789         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13790         (get_last_thread_stack_temporary): Update.
13791         * eval.c (evaluate_subexp): Update.
13792         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13793         class, not a function.
13794         (value_ptr, value_vec): Remove typedefs.
13795         (class thread_info) <stack_temporaries_enabled>: Now bool.
13796         <stack_temporaries>: Now a std::vector.
13797         (thread_stack_temporaries_enabled_p)
13798         (value_in_thread_stack_temporaries): Return bool.
13799
13800 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13801
13802         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13803         (getpkt_or_notif_sane_1): Likewise.
13804
13805 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13806
13807         * build-id.c (build_id_to_debug_bfd): Use std::string.
13808
13809 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13810
13811         * build-id.c (find_separate_debug_file_by_buildid): Return
13812         std::string.
13813         * build-id.h (find_separate_debug_file_by_buildid): Return
13814         std::string.
13815         * coffread.c (coff_symfile_read): Adjust to std::string.
13816         * elfread.c (elf_symfile_read): Adjust to std::string.
13817         * symfile.c (separate_debug_file_exists): Change parameter to
13818         std::string.
13819         (find_separate_debug_file): Return std::string.
13820         (find_separate_debug_file_by_debuglink): Return std::string.
13821         * symfile.h (find_separate_debug_file_by_debuglink): Return
13822         std::string.
13823
13824 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13825
13826         * common/xml-utils.c (xml_escape_text): Move code to...
13827         (xml_escape_text_append): ... this new function.
13828         * common/xml-utils.h (xml_escape_text_append): New declaration.
13829         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13830         New function.
13831         (_initialize_xml_utils): register test_xml_escape_text_append as
13832         a selftest.
13833
13834 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13835
13836         * defs.h: Remove MAX_REGISTER_SIZE.
13837         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13838         asserts.
13839         * python/py-unwind.c (pyuw_sniffer): Likewise.
13840
13841 2018-03-07  Tom Tromey  <tom@tromey.com>
13842
13843         * linux-tdep.c (linux_info_proc): Update.
13844         * target.h (struct target_ops) <to_fileio_readlink>: Return
13845         optional<string>.
13846         (target_fileio_readlink): Return optional<string>.
13847         * remote.c (remote_hostio_readlink): Return optional<string>.
13848         * inf-child.c (inf_child_fileio_readlink): Return
13849         optional<string>.
13850         * target.c (target_fileio_readlink): Return optional<string>.
13851
13852 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13853
13854         * regcache.c (cooked_read_test): Add riscv to the list of
13855         architectures that have a save_reggroup.
13856
13857 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13858
13859         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13860         value is not a dynamic class object.
13861
13862 2018-03-06  Tom Tromey  <tom@tromey.com>
13863
13864         * rust-exp.y: Formatting fixes.
13865
13866 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13867
13868         * riscv-tdep.c (riscv_register_name): Remove target description
13869         support.
13870         (riscv_gdbarch_init): Remove target description check.
13871
13872 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13873
13874         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13875         comment.
13876         * riscv-tdep.h: Likewise.
13877
13878 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13879
13880         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13881         (riscv_pseudo_register_write): Delete.
13882         (riscv_gdbarch_init): Remove all use of pseudo registers.
13883
13884 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13885
13886         * record-btrace.c (btrace_print_lines): Replace cleanup
13887         parameter with RAII equivalents.
13888         (btrace_insn_history): Replace cleanup with RAII equivalents.
13889         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13890         make_cleanup_ui_out_tuple_begin_end): Remove.
13891         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13892         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13893         make_cleanup_ui_out_list_begin_end): Remove.
13894
13895 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13896
13897         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13898         parameter types to std::vector.  Use bool.
13899         (record_btrace_wait): Replace VEC(tp_t) with
13900         std::vector<thread_info *>.
13901         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13902
13903 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13904
13905         * record-btrace.c (record_btrace_disable_callback): Remove.
13906         (struct scoped_btrace_disable): New.
13907         (record_btrace_open): Use scoped_btrace_disable.
13908
13909 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13910
13911         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13912         reading values from registers.
13913
13914 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13915
13916         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13917         where appropriate.
13918
13919 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13920
13921         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13922         change parameter type.  Use GDB's print functions, and use
13923         core_addr_to_string where appropriate.
13924         (riscv_push_dummy_call): Use core_addr_to_string where
13925         appropriate, update call to riscv_print_arg_location, and reindent
13926         a few lines.
13927         (riscv_return_value): Update call to riscv_print_arg_location.
13928
13929 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13930             Tim Newsome <tim@sifive.com>
13931             Albert Ou <a0u@eecs.berkeley.edu>
13932             Darius Rad <darius@bluespec.com>
13933
13934         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13935         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13936         (ALLDEPFILES): Add riscv-tdep.c
13937         * configure.tgt: Add riscv support.
13938         * riscv-tdep.c: New file.
13939         * riscv-tdep.h: New file.
13940         * NEWS: Mention new target.
13941         * MAINTAINERS: Add entry for riscv.
13942
13943 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13944
13945         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13946         fields within aggregates.
13947
13948 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13949
13950         * record-btrace.c (btrace_print_lines): Change type of flags to
13951         gdb_disassembly_flags.
13952
13953 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13954
13955         * fbsd-nat.c: Include "inf-ptrace.h".
13956         (USE_SIGTRAP_SIGINFO): Conditionally define.
13957         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13958         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13959         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13960         function.
13961         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13962         Likewise.
13963         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13964         Likewise.
13965         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13966         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13967         "supports_stopped_by_hw_breakpoint" target methods.
13968
13969 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13970
13971         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13972         * fbsd-nat.c (debug_fbsd_nat): New variable.
13973         (show_fbsd_nat_debug): New function.
13974         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13975         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13976
13977 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13978
13979         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13980         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13981         prototype.
13982         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13983         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13984         method.
13985
13986 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13987
13988         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13989         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13990
13991 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13992
13993         * charset.c (struct charset_vector): New.
13994         (charsets): Change type to charset_vector.
13995         (find_charset_names): Adjust.
13996         (add_one): Adjust.
13997         (_initialize_charset): Adjust.
13998
13999 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14000
14001         * progspace.h (struct program_space) <deleted_solibs>: Change
14002         type to std::vector<std::string>.
14003         * progspace.c (clear_program_space_solib_cache): Adjust.
14004         * breakpoint.c (print_solib_event): Adjust.
14005         (check_status_catch_solib): Adjust.
14006         * solib.c (update_solib_list): Adjust.
14007         * ui-out.h (class ui_out) <field_string>: New overload.
14008         * ui-out.c (ui_out::field_string): New overload.
14009
14010 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14011
14012         * progspace.h (struct program_space): Add constructor and
14013         destructor, initialize fields.
14014         (add_program_space): Remove.
14015         * progspace.c (add_program_space): Rename to...
14016         (program_space::program_space): ... this.
14017         (release_program_space): Rename to...
14018         (program_space::~program_space): ... this.
14019         (delete_program_space): Use delete to delete program_space.
14020         (initialize_progspace): Use new to allocate program_space.
14021         * inferior.c (add_inferior_with_spaces): Likewise.
14022         (clone_inferior_command): Likewise.
14023         * infrun.c (follow_fork_inferior): Likewise.
14024         (handle_vfork_child_exec_or_exit): Likewise.
14025
14026 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14027
14028         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14029         (delim_string_to_char_ptr_vec): Return std::vector of
14030         gdb::unique_xmalloc_ptr.
14031         (dirnames_to_char_ptr_vec_append): Take std::vector of
14032         gdb::unique_xmalloc_ptr.
14033         (dirnames_to_char_ptr_vec): Return std::vector of
14034         gdb::unique_xmalloc_ptr.
14035         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14036         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14037         (delim_string_to_char_ptr_vec): Return an std::vector of
14038         gdb::unique_xmalloc_ptr, adjust the code.
14039         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14040         gdb::unique_xmalloc_ptr, adjust the code.
14041         (dirnames_to_char_ptr_vec): Return an std::vector of
14042         gdb::unique_xmalloc_ptr, adjust the code.
14043         * auto-load.c (auto_load_safe_path_vec): Change type to
14044         std::vector of gdb::unique_xmalloc_ptr.
14045         (auto_load_expand_dir_vars): Return an std::vector of
14046         gdb::unique_xmalloc_ptr, adjust the code.
14047         (auto_load_safe_path_vec_update): Adjust.
14048         (filename_is_in_auto_load_safe_path_vec): Adjust.
14049         (auto_load_objfile_script_1): Adjust.
14050         * build-id.c (build_id_to_debug_bfd): Adjust.
14051         * linux-thread-db.c (thread_db_load_search): Adjust.
14052         * source.c (add_path): Adjust.
14053         (openp): Adjust.
14054         * symfile.c (find_separate_debug_file): Adjust.
14055         * utils.c (do_free_char_ptr_vec): Remove.
14056         (make_cleanup_free_char_ptr_vec): Remove.
14057
14058 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14059
14060         PR gdb/22907
14061         * common/pathstuff.c: Conditionally include "<windows.h>".
14062
14063 2018-03-01  Georg Sauthoff  <mail@georg.so>
14064
14065         PR gdb/22888
14066         * gcore.in: Quote variables and switch interpreter to bash.
14067
14068 2018-03-01  Tom Tromey  <tom@tromey.com>
14069
14070         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14071         assertion.  Add assertion for discriminant_index.
14072         (quirk_rust_enum): Use correct base type name in univariant case.
14073
14074 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14075
14076         * record.c (get_call_history_modifiers): Return a
14077         record_print_flags.
14078         (cmd_record_call_history): Adjust.
14079         * record-btrace.c (record_btrace_call_history): Adjust.
14080         (record_btrace_call_history_range): Adjust.
14081         (record_btrace_call_history_from): Adjust.
14082         * target-debug.h (target_debug_print_record_print_flags): New.
14083         * target-delegates.c: Re-generate.
14084         * target.c (target_call_history): Change flags type.
14085         (target_call_history_from): Likewise.
14086         (target_call_history_range): Likewise.
14087         * target.h (struct target_ops) <target_call_history>: Likewise.
14088         (target_call_history_from): Likewise.
14089         (target_call_history_range): Likewise.
14090
14091 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14092             Simon Marchi  <simon.marchi@polymtl.ca>
14093
14094         * common/common-utils.c: Include "sys/stat.h".
14095         (is_regular_file): Move here from "source.c"; change return
14096         type to "bool".
14097         * common/common-utils.h (is_regular_file): New prototype.
14098         * common/pathstuff.c (contains_dir_separator): New function.
14099         * common/pathstuff.h (contains_dir_separator): New prototype.
14100         * source.c: Don't include "sys/stat.h".
14101         (is_regular_file): Move to "common/common-utils.c".
14102
14103 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14104
14105         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14106         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14107         * auto-load.c: Include "common/pathstuff.h".
14108         * common/common-def.h (current_directory): Move here.
14109         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14110         function.
14111         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14112         prototype.
14113         * common/pathstuff.c: New file.
14114         * common/pathstuff.h: New file.
14115         * compile/compile.c: Include "common/pathstuff.h".
14116         * defs.h (current_directory): Move to "common/common-defs.h".
14117         * dwarf2read.c: Include "common/pathstuff.h".
14118         * exec.c: Likewise.
14119         * guile/scm-safe-call.c: Likewise.
14120         * linux-thread-db.c: Likewise.
14121         * main.c: Likewise.
14122         * nto-tdep.c: Likewise.
14123         * objfiles.c: Likewise.
14124         * source.c: Likewise.
14125         * symtab.c: Likewise.
14126         * utils.c: Include "common/pathstuff.h".
14127         (gdb_realpath): Move to "common/pathstuff.c".
14128         (gdb_realpath_keepfile): Likewise.
14129         (gdb_abspath): Likewise.
14130         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14131         (gdb_realpath_keepfile): Likewise.
14132         (gdb_abspath): Likewise.
14133
14134 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14135
14136         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14137         wildcard process pid for super_resume for kernels with a
14138         specific bug.
14139
14140 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14141
14142         * compile/compile.c (get_args): Add additional comments
14143         explaining function.
14144
14145 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14146             Tom Tromey  <tom@tromey.com>
14147
14148         * target.h (memory_write_request_s): Remove typedef.  Don't define
14149         VEC.
14150         (target_write_memory_blocks): Change argument to std::vector.
14151         (struct memory_write_request): Add constructor.
14152         * target-memory.c (compare_block_starting_address): Return bool.
14153         Change argument types.
14154         (claim_memory): Change arguments to use std::vector.
14155         (split_regular_and_flash_blocks, blocks_to_erase)
14156         (compute_garbled_blocks): Likewise.
14157         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14158         (target_write_memory_blocks): Change argument to std::vector.
14159         * symfile.c (struct load_section_data): Add constructor and
14160         destructor.  Use std::vector for "requests".
14161         (struct load_progress_data): Add initializers.
14162         (load_section_callback): Update.  Use "new".
14163         (clear_memory_write_data): Remove.
14164         (generic_load): Update.
14165
14166 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14167
14168         * arch/aarch64.h: Use common/tdesc.h.
14169
14170 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14171
14172         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14173         architecture with a 64-bit ABI.
14174
14175 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14176
14177         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14178         ahead of target description loading.
14179
14180 2018-02-26  Tom Tromey  <tom@tromey.com>
14181
14182         * stack.c (backtrace_command_1): Update.
14183         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14184         of "flags".
14185         * python/py-framefilter.c (py_print_frame)
14186         (gdbpy_apply_frame_filter): Change type of "flags".
14187         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14188         of "flags".
14189         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14190         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14191         * extension.h (enum frame_filter_flag): Rename from
14192         frame_filter_flags.
14193         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14194         (apply_ext_lang_frame_filter): Change type of "flags".
14195         * extension.c (apply_ext_lang_frame_filter): Change type of
14196         "flags".
14197         * extension-priv.h (struct extension_language_ops)
14198         <apply_frame_filter>: Change type of "flags".
14199
14200 2018-02-26  Tom Tromey  <tom@tromey.com>
14201
14202         PR python/16497:
14203         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14204         off-by-one in py_end computation.
14205         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14206         PRINT_MORE_FRAMES.
14207         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14208         constant.
14209
14210 2018-02-26  Tom Tromey  <tom@tromey.com>
14211
14212         * dwarf2read.c (struct variant_field): New.
14213         (struct nextfield) <variant>: New field.
14214         (dwarf2_add_field): Handle DW_TAG_variant_part.
14215         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14216         discriminated union.
14217         (read_structure_type): Handle DW_TAG_variant_part.
14218         (handle_struct_member_die): New function, extracted from
14219         process_structure_scope.  Handle DW_TAG_variant.
14220         (process_structure_scope): Handle discriminated unions.  Call
14221         handle_struct_member_die.
14222
14223 2018-02-26  Tom Tromey  <tom@tromey.com>
14224
14225         * rust-lang.h (rust_last_path_segment): Declare.
14226         * rust-lang.c (rust_last_path_segment): Now public.  Change
14227         contract.
14228         (struct disr_info): Remove.
14229         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14230         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14231         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14232         (rust_enum_p, rust_enum_variant): New function.
14233         (rust_underscore_fields): Remove "offset" parameter.
14234         (rust_print_enum): New function.
14235         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14236         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14237         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14238         enums.
14239         (rust_internal_print_type): New function, from rust_print_type.
14240         Remove enum code.
14241         (rust_print_type): Call rust_internal_print_type.
14242         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14243         Update enum handling.
14244         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14245         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14246         (rust_union_quirks): New functions.
14247         (process_full_comp_unit, process_full_type_unit): Call
14248         rust_union_quirks.
14249         (process_structure_scope): Update rust_unions if necessary.
14250
14251 2018-02-26  Tom Tromey  <tom@tromey.com>
14252
14253         * value.h (value_union_variant): Declare.
14254         * valops.c (value_union_variant): New function.
14255         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14256         (struct discriminant_info): New.
14257         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14258         enumerator.
14259         (struct main_type) <flag_discriminated_union>: New field.
14260
14261 2018-02-26  Tom Tromey  <tom@tromey.com>
14262
14263         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14264         unittests/unpack-selftests.c.
14265         * unittests/unpack-selftests.c: New file.
14266         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14267
14268 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14269
14270         * dwarf2read.c (struct partial_die_info) <read>: New method.
14271         (read_partial_die): Remove the declaration.
14272         (load_partial_dies): Update.
14273         (partial_die_info::partial_die_info):
14274         (read_partial_die): Change it to partial_die_info::read.
14275
14276 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14277
14278         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14279         (fixup_partial_die): Remove declaration.
14280         (scan_partial_symbols): Update.
14281         (partial_die_parent_scope): Likewise.
14282         (partial_die_full_name): Likewise.
14283         (fixup_partial_die): Change it to partial_die_info::fixup.
14284
14285 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14286
14287         * dwarf2read.c (read_partial_die): Update the declaration.
14288         (load_partial_dies): Caller update.
14289         (read_partial_die): Remove one argument abbrev_len.
14290
14291 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14292
14293         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14294         assignment operator.
14295         (load_partial_dies): Use ctor and copy ctor.
14296         (read_partial_die): Update.
14297         (dwarf2_cu::find_partial_die): Use ctor.
14298
14299 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14300
14301         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14302         (find_partial_die_in_comp_unit): Change it to
14303         dwarf2_cu::find_partial_die.
14304         (find_partial_die): Update.
14305
14306 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14307
14308         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14309         is NULL.
14310
14311 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14312
14313         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14314
14315 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14316
14317         * arch/amd64.h: Use common/tdesc.h.
14318         * arch/i386.c: Likewise.
14319         * arch/i386.h: Likewise.
14320         * arch/tic6x.c: Likewise.
14321         * arch/tdesc.h: Move file from here...
14322         * common/tdesc.h: ...to here.
14323         * features/aarch64-core.c: Regenerate.
14324         * features/aarch64-fpu.c: Regenerate.
14325         * features/i386/32bit-avx.c: Regenerate.
14326         * features/i386/32bit-avx512.c: Regenerate.
14327         * features/i386/32bit-core.c: Regenerate.
14328         * features/i386/32bit-linux.c: Regenerate.
14329         * features/i386/32bit-mpx.c: Regenerate.
14330         * features/i386/32bit-pkeys.c: Regenerate.
14331         * features/i386/32bit-sse.c: Regenerate.
14332         * features/i386/64bit-avx.c: Regenerate.
14333         * features/i386/64bit-avx512.c: Regenerate.
14334         * features/i386/64bit-core.c: Regenerate.
14335         * features/i386/64bit-linux.c: Regenerate.
14336         * features/i386/64bit-mpx.c: Regenerate.
14337         * features/i386/64bit-pkeys.c: Regenerate.
14338         * features/i386/64bit-segments.c: Regenerate.
14339         * features/i386/64bit-sse.c: Regenerate.
14340         * features/i386/x32-core.c: Regenerate.
14341         * features/tic6x-c6xp.c: Regenerate.
14342         * features/tic6x-core.c: Regenerate.
14343         * features/tic6x-gp.c: Regenerate.
14344         * target-descriptions.c: Use common/tdesc.h.
14345         * target-descriptions.h: Likewise.
14346
14347 2018-02-24  Tom Tromey  <tom@tromey.com>
14348
14349         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14350         (try_thread_db_load_from_dir, thread_db_load_search): Use
14351         std::string.
14352         (info_auto_load_libthread_db_compare): Return bool.  Change
14353         argument types.
14354         (info_auto_load_libthread_db): Use std::vector, std::string.
14355         Remove cleanups.
14356
14357 2018-02-24  Tom Tromey  <tom@tromey.com>
14358
14359         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14360         std::string.
14361         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14362         std::string*.
14363         * gdbarch.c: Rebuild.
14364         * gdbarch.h: Rebuild.
14365         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14366         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14367         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14368         std::string*.
14369
14370 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14371
14372         * gdbtypes.h (sect_offset): Change type to uint64_t.
14373         (sect_offset_str): New function.
14374         * dwarf2read.c (create_addrmap_from_aranges): Use
14375         sect_offset_str.
14376         (error_check_comp_unit_head): Likewise.
14377         (create_debug_type_hash_table): Likewise.
14378         (read_cutu_die_from_dwo): Likewise.
14379         (init_cutu_and_read_dies): Likewise.
14380         (init_cutu_and_read_dies_no_follow): Likewise.
14381         (process_psymtab_comp_unit_reader): Likewise.
14382         (partial_die_parent_scope): Likewise.
14383         (peek_die_abbrev): Likewise.
14384         (process_queue): Likewise.
14385         (dwarf2_physname): Likewise.
14386         (read_namespace_alias): Likewise.
14387         (read_import_statement): Likewise.
14388         (create_dwo_cu_reader): Likewise.
14389         (create_cus_hash_table): Likewise.
14390         (lookup_dwo_cutu): Likewise.
14391         (inherit_abstract_dies): Likewise.
14392         (read_func_scope): Likewise.
14393         (read_call_site_scope): Likewise.
14394         (dwarf2_add_member_fn): Likewise.
14395         (read_common_block): Likewise.
14396         (read_module_type): Likewise.
14397         (read_typedef): Likewise.
14398         (read_subrange_type): Likewise.
14399         (load_partial_dies): Likewise.
14400         (read_partial_die): Likewise.
14401         (find_partial_die): Likewise.
14402         (read_str_index): Likewise.
14403         (dwarf2_string_attr): Likewise.
14404         (build_error_marker_type): Likewise.
14405         (lookup_die_type): Likewise.
14406         (dump_die_shallow): Likewise.
14407         (follow_die_ref): Likewise.
14408         (dwarf2_fetch_die_loc_sect_off): Likewise.
14409         (dwarf2_fetch_constant_bytes): Likewise.
14410         (follow_die_sig): Likewise.
14411         (get_signatured_type): Likewise.
14412         (get_DW_AT_signature_type): Likewise.
14413         (dwarf2_find_containing_comp_unit): Likewise.
14414         (set_die_type): Likewise.
14415
14416 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14417
14418         * arch/aarch64.c: Include "common-defs.h".
14419         * arch/amd64.c: Likewise.
14420         * arch/i386.c: Likewise.
14421
14422 2018-02-21  Tom Tromey  <tom@tromey.com>
14423
14424         * value.h: (extract_field_op): Update.
14425         * eval.c (extract_field_op): Return a const char *.
14426         * expression.h (parse_expression_for_completion): Update.
14427         * completer.c (complete_expression): Update.
14428         (add_struct_fields): Make fieldname const.
14429         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14430         (mark_completion_tag, parse_exp_in_context_1): Update.
14431         (parse_expression_for_completion): Change "name" to
14432         unique_xmalloc_ptr*.
14433
14434 2018-02-21  Tom Tromey  <tom@tromey.com>
14435
14436         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14437
14438 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14439
14440         * avr-tdep.c (avr_read_pc): Change parameter type to
14441         readable_regcache.
14442         * gdbarch.sh (read_pc): Likewise.
14443         * gdbarch.c: Re-generated.
14444         * gdbarch.h: Re-generated.
14445         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14446         readable_regcache.
14447         * ia64-tdep.c (ia64_read_pc): Likewise.
14448         * mips-tdep.c (mips_read_pc): Likewise.
14449         * spu-tdep.c (spu_read_pc): Likewise.
14450
14451 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14452
14453         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14454         * regcache-dump.c: New file.
14455         * regcache.c: Move register_dump to regcache-dump.c.
14456         (maintenance_print_registers): Likewise.
14457         (maintenance_print_raw_registers): Likewise.
14458         (maintenance_print_cooked_registers): Likewise.
14459         (maintenance_print_register_groups): Likewise.
14460         (maintenance_print_remote_registers): Likewise.
14461         (_initialize_regcache): Likewise.
14462         * regcache.h (register_dump): Moved from regcache.c.
14463
14464 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14465
14466         * regcache.c (regcache::regcache): Update.
14467         (regcache::invalidate): Move it to detached_regcache::invalidate.
14468         (get_thread_arch_aspace_regcache): Update.
14469         (regcache::raw_update): Update.
14470         (regcache::cooked_read): Remove some code.
14471         (regcache::cooked_read_value): Likewise.
14472         (regcache::raw_write): Remove assert on m_readonly_p.
14473         (regcache::raw_supply_integer): Move it to
14474         detached_regcache::raw_supply_integer.
14475         (regcache::raw_supply_zeroed): Likewise.
14476         * regcache.h (detached_regcache) <raw_supply_integer>: New
14477         declaration.
14478         <raw_supply_zeroed, invalidate>: Likewise.
14479         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14480         <invalidate>: Likewise.
14481         <m_readonly_p>: Removed.
14482
14483 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14484
14485         * infcmd.c (get_return_value): Let stop_regs point to
14486         get_current_regcache.
14487         * regcache.c (regcache::regcache): Remove.
14488         (register_dump_reg_buffer): New class.
14489         (regcache_print): Adjust.
14490         * regcache.h (regcache): Remove constructors.
14491
14492 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14493
14494         * regcache.c (class register_dump): New class.
14495         (register_dump_regcache, register_dump_none): New class.
14496         (register_dump_remote, register_dump_groups): New class.
14497         (regcache_print): Update.
14498         * regcache.h (regcache_dump_what): Move it to regcache.c.
14499         (regcache) <dump>: Remove.
14500
14501 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14502
14503         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14504          reg_buffer_rw *.
14505         (jit_unwind_reg_set_impl): Call raw_supply.
14506         (jit_frame_sniffer): Use reg_buffer_rw.
14507         * record-full.c (record_full_core_regbuf): Change its type.
14508         (record_full_core_open_1): Use reg_buffer_rw.
14509         (record_full_close): Likewise.
14510         (record_full_core_fetch_registers): Use regcache->raw_supply.
14511         (record_full_core_store_registers): Likewise.
14512         * regcache.c (regcache::get_register_status): Move it to
14513         reg_buffer.
14514         (regcache_raw_set_cached_value): Remove.
14515         (regcache::raw_set_cached_value): Remove.
14516         (regcache::raw_write): Call raw_supply.
14517         (regcache::raw_supply): Move it to reg_buffer_rw.
14518         * regcache.h (regcache_raw_set_cached_value): Remove.
14519         (reg_buffer_rw): New class.
14520
14521 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14522
14523         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14524         readonly_detached_regcache.
14525         (dummy_frame_prev_register): Use regcache->cooked_read.
14526         * frame.c (frame_save_as_regcache): Change return type.
14527         (frame_pop): Update.
14528         * frame.h (frame_save_as_regcache): Update declaration.
14529         * inferior.h (get_infcall_suspend_state_regcache): Update
14530         declaration.
14531         * infrun.c (infcall_suspend_state) <registers>: use
14532         readonly_detached_regcache.
14533         (save_infcall_suspend_state): Don't use regcache_dup.
14534         (get_infcall_suspend_state_regcache): Change return type.
14535         * linux-fork.c (struct fork_info) <savedregs>: Change to
14536         readonly_detached_regcache.
14537         <pc>: New field.
14538         (fork_save_infrun_state): Don't use regcache_dup.
14539         (info_checkpoints_command): Adjust.
14540         * mi/mi-main.c (register_changed_p): Update declaration.
14541         (mi_cmd_data_list_changed_registers): Use
14542         readonly_detached_regcache.
14543         (register_changed_p): Change parameter type to
14544         readonly_detached_regcache.
14545         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14546         readonly_detached_regcache.
14547         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14548         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14549         New.
14550         (regcache::save): Move it to reg_buffer.
14551         (regcache::restore): Change parameter type.
14552         (regcache_dup): Remove.
14553         * regcache.h (reg_buffer) <save>: New method.
14554         (readonly_detached_regcache): New class.
14555         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14556         readonly_detached_regcache.
14557         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14558
14559 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14560
14561         * frame.c (frame_save_as_regcache): Use regcache method save.
14562         (frame_pop): Use regcache method restore.
14563         * infrun.c (restore_infcall_suspend_state): Likewise.
14564         * linux-fork.c (fork_load_infrun_state): Likewise.
14565         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14566         save.
14567         * regcache.c (regcache_save): Remove.
14568         (regcache::restore): More asserts.
14569         (regcache_cpy): Remove.
14570         * regcache.h (regcache_save): Remove the declaration.
14571         (regcache::restore): Move from private to public.
14572         Remove the friend declaration of regcache_cpy.
14573         (regcache_cpy): Remove declaration.
14574
14575 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14576
14577         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14578         parameter type to 'readable_regcache *'.
14579         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14580         * arm-tdep.c (arm_neon_quad_read): Likewise.
14581         (arm_pseudo_read): Likewise.
14582         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14583         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14584         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14585         * gdbarch.c: Re-generated.
14586         * gdbarch.h: Re-generated.
14587         * gdbarch.sh (pseudo_register_read): Change parameter type to
14588         'readable_regcache *'.
14589         (pseudo_register_read_value): Likewise.
14590         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14591         (h8300_pseudo_register_read): Likewise.
14592         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14593         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14594         (i386_pseudo_register_read_into_value): Likewise.
14595         (i386_pseudo_register_read_value): Likewise.
14596         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14597         declaration.
14598         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14599         * m32c-tdep.c (m32c_raw_read): Likewise.
14600         (m32c_read_flg): Likewise.
14601         (m32c_banked_register): Likewise.
14602         (m32c_banked_read): Likewise.
14603         (m32c_sb_read): Likewise.
14604         (m32c_part_read): Likewise.
14605         (m32c_cat_read): Likewise.
14606         (m32c_r3r2r1r0_read): Likewise.
14607         (m32c_pseudo_register_read): Likewise.
14608         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14609         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14610         (mep_pseudo_cr64_read): Likewise.
14611         (mep_pseudo_register_read): Likewise.
14612         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14613         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14614         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14615         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14616         (regcache::cooked_read): Likewise.
14617         (regcache::cooked_read_value): Likewise.
14618         (regcache_cooked_read_signed):
14619         (regcache::cooked_read): Likewise.
14620         * regcache.h (readable_regcache): New class.
14621         (regcache): Inherit readable_regcache.  Move some methods to
14622         readable_regcache.
14623         * rl78-tdep.c (rl78_pseudo_register_read): Change
14624         parameter type to 'readable_regcache *'.
14625         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14626         (e500_pseudo_register_read): Change parameter type to
14627         'readable_regcache *'.
14628         (dfp_pseudo_register_read): Likewise.
14629         (vsx_pseudo_register_read): Likewise.
14630         (efpr_pseudo_register_read): Likewise.
14631         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14632         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14633         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14634         (sh64_pseudo_register_read): Likewise.
14635         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14636         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14637         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14638         (spu_pseudo_register_read): Likewise.
14639         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14640         (xtensa_pseudo_register_read): Likewise.
14641
14642 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14643
14644         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14645         (regcache::arch): Move it to reg_buffer::arch.
14646         (regcache::register_buffer): Likewise.
14647         (regcache::assert_regnum): Likewise.
14648         (regcache::num_raw_registers): Likewise.
14649         * regcache.h (reg_buffer): New class.
14650         (regcache): Inherit reg_buffer.
14651
14652 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14653
14654         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14655         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14656
14657 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14658
14659         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14660
14661 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14662
14663         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14664         (SFILES): Remove common/*.c files.
14665         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14666         * common/common.host: Add common reference.
14667         * configure.ac: Likewise.
14668         * configure: Regenerate.
14669
14670 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14671
14672         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14673         (block_initialize_namespace): Use new.
14674         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14675         (dwarf2_free_objfile): Use delete.
14676         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14677         (copy_type_recursive): Use new.
14678         * gdb_obstack.h (allocate_on_obstack): New.
14679
14680 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14681
14682         PR gdb/22849
14683         * inferior.c (exit_inferior_1): Reset inf->control.
14684
14685 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14686
14687         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14688         declaration.
14689
14690 2018-02-14  Pedro Alves  <palves@redhat.com>
14691
14692         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14693         frame_cleanup_after_sniffer on exception.
14694
14695 2018-02-14  Tom Tromey  <tom@tromey.com>
14696
14697         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14698         const.
14699         (solib_bfd_open): Make pathname const.
14700         * solib.c (solib_bfd_open): Make pathname const.
14701         * solib-spu.c (spu_bfd_fopen): Make name const.
14702         (spu_bfd_open): Make pathname const.
14703         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14704         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14705
14706 2018-02-14  Tom Tromey  <tom@tromey.com>
14707
14708         * symfile.c (symfile_bfd_open): Update.
14709         * source.h (openp, source_full_path_of, find_and_open_source):
14710         Change argument type to unique_xmalloc_ptr.
14711         * source.c (openp): Take a unique_xmalloc_ptr.
14712         (source_full_path_of, find_and_open_source): Likewise.
14713         (open_source_file, symtab_to_fullname): Update.
14714         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14715         unique_xmalloc_ptr.
14716         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14717         (exec_file_find): Update.
14718         * psymtab.c (psymtab_to_fullname): Update.
14719         * nto-tdep.h (nto_find_and_open_solib): Update.
14720         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14721         unique_xmalloc_ptr.
14722         * exec.c (exec_file_attach): Update.
14723         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14724         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14725
14726 2018-02-14  Tom Tromey  <tom@tromey.com>
14727
14728         * solib.c: Include source.h.
14729         * nto-tdep.c: Include source.h.
14730         * mi/mi-cmd-env.c: Include source.h.
14731         * infcmd.c: Include source.h.
14732         * exec.c: Include source.h.
14733         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14734         (add_path, directory_switch, source_path, init_source_path): Move
14735         declarations...
14736         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14737         (add_path, directory_switch, source_path, init_source_path):
14738         ...here.
14739
14740 2018-02-14  Tom Tromey  <tom@tromey.com>
14741
14742         * solist.h (exec_file_find, solib_find): Return
14743         unique_xmalloc_ptr.
14744         (solib_bfd_fopen): Take a const char *.
14745         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14746         (exec_file_find, solib_find): Likewise.
14747         (solib_bfd_fopen): Do not take ownership of "pathname".
14748         (solib_bfd_open): Use unique_xmalloc_ptr.
14749         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14750         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14751         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14752         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14753
14754 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14755
14756         * ada-lang.c (name_match_type_from_name): Remove reference to
14757         ada_name_for_lookup in function's documentation.
14758         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14759
14760 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14761
14762         * defs.h (enum openp_flags): New enum.
14763         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14764         Move to enum openp_flags.
14765         (openp_flags): New enum flags.
14766         (openp): Change parameter type to openp_flags.
14767         * source.c (openp): Change parameter type to openp_flags.
14768         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14769         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14770
14771 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14772
14773         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14774         per-command.
14775
14776 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14777
14778         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14779         into...
14780         (class dwarf2_queue_guard): ...the destructor of this new class.
14781         (dw2_do_instantiate_symtab): Create instance of the new class
14782         dwarf2_queue_guard, remove cleanup.
14783
14784 2018-02-09  Tom Tromey  <tom@tromey.com>
14785
14786         * source.c (find_source_lines): Don't reference past the end of
14787         the vector.
14788
14789 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14790
14791         * remote.c (remote_btrace_maybe_reopen): Change error message.
14792         * btrace.c (btrace_enable): Likewise.
14793         (parse_xml_btrace): Likewise.
14794         (parse_xml_btrace_conf): Likewise.
14795
14796 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14797
14798         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14799         (linux_enable_pt, linux_enable_bts): Call
14800         diagnose_perf_event_open_fail.
14801
14802 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14803
14804         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14805         Remove parameter and change return type.  Update callers.  Move it.
14806         (linux_enable_bts, linux_enable_pt): Improve error message.
14807         (linux_enable_pt): Remove zero buffer size check.
14808         (linux_enable_btrace): Improve error messages.  Remove NULL return
14809         check.
14810
14811 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14812
14813         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14814         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14815         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14816         (linux_supports_pt, linux_supports_btrace): Remove.
14817         (linux_enable_bts): Call cpu_supports_bts.
14818         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14819         * remote.c (remote_supports_btrace): Remove.
14820         (init_remote_ops): Remove remote_supports_btrace.
14821         * target-delegates.c: Regenerated.
14822         * target.c (target_supports_btrace): Remove.
14823         * target.h (target_ops) <to_supports_btrace>: Remove
14824         (target_supports_btrace): Remove.
14825         * x86-linux-nat.c (x86_linux_create_target): Remove
14826         linux_supports_btrace.
14827
14828 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14829
14830         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14831         btrace failed.
14832         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14833         exception and use message in own exception.
14834
14835 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14836
14837         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14838         (perf_event_pt_event_type): Use gdb_file_up.
14839         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14840         scoped_fd, and scoped_mmap.
14841
14842 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14843
14844         * common/scoped_mmap.h: New.
14845         * unittests/scoped_mmap-selftest.c: New.
14846         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14847         unittests/scoped_mmap-selftest.c.
14848
14849 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14850
14851         * common/scoped_fd.h: New.
14852         * unittests/scoped_fd-selftest.c: New.
14853         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14854         unittests/scoped_fd-selftest.c.
14855
14856 2018-02-09  Tom Tromey  <tom@tromey.com>
14857
14858         * auto-load.c (auto_load_section_scripts): Use
14859         gdb::unique_xmalloc_ptr.
14860
14861 2018-02-09  Tom Tromey  <tom@tromey.com>
14862
14863         * auto-load.c (execute_script_contents): Use std::string.
14864
14865 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14866
14867         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14868         Python function, rather than a new command.
14869
14870 2018-02-08  Tom Tromey  <tom@tromey.com>
14871
14872         * solib.c (solib_find_1): Use std::string.
14873         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14874
14875 2018-02-08  Tom Tromey  <tom@tromey.com>
14876
14877         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14878
14879 2018-02-08  Tom Tromey  <tom@tromey.com>
14880
14881         * source.c (find_source_lines): Use gdb::def_vector.
14882
14883 2018-02-08  Tom Tromey  <tom@tromey.com>
14884
14885         * macrocmd.c (struct temporary_macro_definition): New.
14886         (macro_define_command): Use temporary_macro_definition.  Remove
14887         cleanups.
14888         (free_macro_definition_ptr): Remove.
14889
14890 2018-02-08  Tom Tromey  <tom@tromey.com>
14891
14892         * macroexp.c (maybe_expand): Use std::string.
14893
14894 2018-02-08  Tom Tromey  <tom@tromey.com>
14895
14896         * macroexp.c (struct macro_buffer): Add initializers for some
14897         members.
14898         (init_buffer, init_shared_buffer, free_buffer)
14899         (free_buffer_return_text): Remove.
14900         (macro_buffer): New constructors.
14901         (~macro_buffer): New destructor.
14902         (macro_buffer::set_shared): New method.
14903         (macro_buffer::resize_buffer, macro_buffer::appendc)
14904         (macro_buffer::appendmem): Now methods, not free functions.
14905         (set_token, append_tokens_without_splicing, stringify)
14906         (macro_stringify): Update.
14907         (gather_arguments): Change return type.  Remove argc_p argument,
14908         add args_ptr argument.  Use std::vector.
14909         (substitute_args): Remove argc argument.  Accept std::vector.
14910         (expand): Update.  Use std::vector.
14911         (scan, macro_expand, macro_expand_next): Update.
14912
14913 2018-02-08  Tom Tromey  <tom@tromey.com>
14914
14915         * symtab.c (default_collect_symbol_completion_matches_break_on):
14916         Use unique_xmalloc_ptr.
14917         * macroscope.h: (sal_macro_scope, user_macro_scope)
14918         (default_macro_scope): Return unique_xmalloc_ptr.
14919         * macroscope.c (sal_macro_scope, user_macro_scope)
14920         (default_macro_scope): Return unique_xmalloc_ptr.
14921         * macroexp.h (macro_expand, macro_expand_once): Return
14922         unique_xmalloc_ptr.
14923         * macroexp.c (macro_expand, macro_expand_once): Return
14924         unique_xmalloc_ptr.
14925         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14926         (info_macro_command, info_macros_command): Use
14927         unique_xmalloc_ptr.
14928         * compile/compile-c-support.c (write_macro_definitions): Use
14929         unique_xmalloc_ptr.
14930         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14931
14932 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14933
14934         * value.c (value_static_field): Assign field type instead of
14935         containing type when returning an optimized out value.
14936
14937 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14938
14939         * ft32-tdep.c (ft32_read_pc): Remove.
14940         (ft32_write_pc): Remove.
14941         (ft32_gdbarch_init): Update.
14942         * m32r-tdep.c (m32r_read_pc): Remove.
14943         (m32r_gdbarch_init): Update.
14944         * mep-tdep.c (mep_read_pc): Remove.
14945         (mep_gdbarch_init): Update.
14946         * microblaze-tdep.c (microblaze_write_pc): Remove.
14947         (microblaze_gdbarch_init): Update.
14948         * mn10300-tdep.c (mn10300_read_pc): Remove.
14949         (mn10300_write_pc): Remove.
14950         (mn10300_gdbarch_init): Update.
14951         * moxie-tdep.c (moxie_read_pc): Remove.
14952         (moxie_write_pc): Remove.
14953         (moxie_gdbarch_init): Update.
14954
14955 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14956
14957         * expprint.c (print_subexp_standard): Handle
14958         OP_F77_UNDETERMINED_ARGLIST.
14959         (dump_subexp_body_standard): Likewise.
14960
14961 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14962
14963         * target-descriptions.c (tdesc_element_visitor) Add empty
14964         implementations.
14965         (tdesc_type): Move make_gdb_type from here.
14966         (tdesc_type_builtin): Likewise.
14967         (tdesc_type_vector): Likewise.
14968         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14969         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14970         (make_gdb_type_union): Likewise.
14971         (make_gdb_type_flags): Likewise.
14972         (make_gdb_type_enum): Likewise.
14973         (make_gdb_type): New function.
14974         (tdesc_register_type): Use static make_gdb_type.
14975
14976 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14977
14978         * infcmd.c (default_print_one_register_info): Align natural-format
14979         column values consistently one under another.
14980         (pad_to_column): New function.
14981
14982 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14983
14984         * dwarf2read.c (dwarf2_physname): Move commment.
14985
14986 2018-02-01  Leszek Swirski  <leszeks@google.com>
14987
14988         * varobj.c (varobj_formatted_print_options): Allow recursive
14989         pretty printing if pretty printing is enabled.
14990
14991 2018-02-01  Leszek Swirski  <leszeks@google.com>
14992
14993         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14994         names after a structop as a filename.
14995
14996 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14997
14998         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14999         (arm_record_coproc_data_proc): Likewise.
15000
15001 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15002
15003         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15004
15005 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15006
15007         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15008         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15009
15010 2018-01-31  Pedro Alves  <palves@redhat.com>
15011
15012         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15013         * inflow.c (child_terminal_save_inferior): Wrap reference to
15014         tcgetpgrp in HAVE_TERMIOS_H.
15015         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15016         _WIN32.
15017         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15018         always iterate over all inferiors.
15019         (gdbsim_cntrl_c): Adjust.
15020         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15021
15022 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15023
15024         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15025         index type is objfile-owned if the element type is as well.
15026
15027 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15028
15029         GDB 8.1 released.
15030
15031 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15032
15033         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15034         "features/s390x-linux64.c".
15035         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15036         s390_linux32 and s390x_linux64.
15037         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15038         default tdesc.
15039         * s390-tdep.c: Include "features/s390-linux32.c" and
15040         "features/s390x-linux64.c".
15041         (s390_tdesc_valid): Add check for tdesc_has_registers.
15042         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15043         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15044         tdesc_s390x_linux64.
15045         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15046         tdesc_s390x_linux64 to...
15047         * s390-tdep.h: ...here.
15048
15049 2018-01-30  Pedro Alves  <palves@redhat.com>
15050
15051         PR gdb/13211
15052         * config.in, configure: Regenerate.
15053         * configure.ac: Check for getpgid.
15054         * go32-nat.c (go32_pass_ctrlc): New.
15055         (go32_target): Install it.
15056         * inf-child.c (inf_child_target): Install
15057         child_terminal_save_inferior, child_pass_ctrlc and
15058         child_interrupt.
15059         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15060         (inf_ptrace_target): No longer install it.
15061         * infcmd.c (interrupt_target_1): Adjust.
15062         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15063         (child_interrupt): Declare.
15064         (inferior::terminal_state): New.
15065         * inflow.c (struct terminal_info): Update comments.
15066         (inferior_process_group): Delete.
15067         (terminal_is_ours): Delete.
15068         (gdb_tty_state): New.
15069         (child_terminal_init): Adjust.
15070         (is_gdb_terminal, sharing_input_terminal_1)
15071         (sharing_input_terminal): New functions.
15072         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15073         Set the process's actual process group in the foreground if
15074         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15075         mark terminal as the inferior's if not sharing GDB's terminal.
15076         Don't check attach_flag.
15077         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15078         pass down a target_terminal_state.
15079         (child_terminal_save_inferior): New, factored out from ...
15080         (child_terminal_ours_1): ... this.  Handle
15081         target_terminal_state::is_ours_for_output.
15082         (child_interrupt, child_pass_ctrlc): New.
15083         (inflow_inferior_exit): Clear the inferior's terminal_state.
15084         (copy_terminal_info): Copy the inferior's terminal state.
15085         (_initialize_inflow): Remove reference to terminal_is_ours.
15086         * inflow.h (inferior_process_group): Delete.
15087         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15088         * procfs.c (procfs_target): Don't install procfs_interrupt.
15089         (procfs_interrupt): Delete.
15090         * remote.c (remote_serial_quit_handler): Adjust.
15091         (remote_interrupt): Remove ptid parameter.  Adjust.
15092         * target-delegates.c: Regenerate.
15093         * target.c: Include "terminal.h".
15094         (target_terminal::terminal_state): Rename to ...
15095         (target_terminal::m_terminal_state): ... this.
15096         (target_terminal::init): Adjust.
15097         (target_terminal::inferior): Adjust to per-inferior
15098         terminal_state.
15099         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15100         (target_terminal::ours, target_terminal::ours_for_output): Use
15101         target_terminal_is_ours_kind.
15102         (target_interrupt): Remove ptid parameter.  Adjust.
15103         (default_target_pass_ctrlc): Adjust.
15104         * target.h (target_ops::to_terminal_save_inferior): New field.
15105         (target_ops::to_interrupt): Remove ptid_t parameter.
15106         (target_interrupt): Remove ptid_t parameter.  Update comment.
15107         (target_pass_ctrlc): Update comment.
15108         * target/target.h (target_terminal_state): New scoped enum,
15109         factored out of ...
15110         (target_terminal::terminal_state): ... here.
15111         (target_terminal::inferior): Update comments.
15112         (target_terminal::restore_inferior): New.
15113         (target_terminal::is_inferior, target_terminal::is_ours)
15114         (target_terminal::is_ours_for_output): Adjust.
15115         (target_terminal::scoped_restore_terminal_state): Adjust to
15116         rename, and call restore_inferior() instead of inferior().
15117         (target_terminal::scoped_restore_terminal_state::m_state): Change
15118         type.
15119         (target_terminal::terminal_state): Rename to ...
15120         (target_terminal::m_terminal_state): ... this and change type.
15121
15122 2018-01-30  Pedro Alves  <palves@redhat.com>
15123
15124         * linux-nat.c (wait_for_signal): New function.
15125         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15126         directly.
15127         (async_terminal_is_ours)
15128         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15129         (linux_nat_add_target): Don't override
15130         to_terminal_inferior/to_terminal_ours.
15131
15132 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15133
15134         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15135
15136 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15137
15138         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15139         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15140         dwarf2_per_objfile_free here.
15141         (dwarf2_per_objfile_free): Remove.
15142         (_initialize_dwarf2_read): Don't register
15143         dwarf2_per_objfile_free as a registry cleanup.
15144
15145 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15146
15147         Avoid compilation errors in MinGW native builds
15148
15149         The error is triggered by including python-internal.h, and the
15150         error message is:
15151
15152              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15153                       from build-gnulib/import/math.h:27,
15154                       from d:/usr/Python26/include/pyport.h:235,
15155                       from d:/usr/Python26/include/Python.h:58,
15156                       from python/python-internal.h:94,
15157                       from python/py-arch.c:24:
15158              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15159         using ::hypot;
15160                 ^~~~~
15161
15162         This happens because Python headers define 'hypot' to expand t
15163         '_hypot' in the Windows builds.
15164         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15165         'hypoth'.  This avoids a compilation error.
15166
15167 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15168
15169         * MAINTAINERS (Write After Approval): Fix ordering.
15170
15171 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15172
15173         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15174
15175 2018-01-26  Alan Modra  <amodra@gmail.com>
15176
15177         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15178         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15179         Remove nop.  Make const.  Comment.
15180         (powerpc32_plt_stub_so_2): New.
15181         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15182         Correct count.  Update uses.
15183         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15184         Move common code reading PLT entry word.  Correct
15185         powerpc32_plt_stub PLT address calculation.
15186         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15187         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15188         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15189         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15190         (ppc64_standard_linkage8): Likewise.
15191         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15192         Correct insns description.
15193         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15194
15195 2018-01-24  Pedro Alves  <palves@redhat.com>
15196
15197         GCC PR libstdc++/83906
15198         * gdbtypes.c (operator==(const dynamic_prop &,
15199         const dynamic_prop &)): New.
15200         (operator==(const range_bounds &, const range_bounds &)): New.
15201         (check_types_equal): Use them instead of memcmp.
15202         * gdbtypes.h (operator==(const dynamic_prop &,
15203         const dynamic_prop &)): Declare.
15204         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15205         (operator==(const range_bounds &, const range_bounds &)): Declare.
15206         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15207
15208 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15209
15210         * s390-linux-tdep.c (s390_record_address_mask)
15211         (s390_record_calc_disp_common, s390_record_calc_disp)
15212         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15213         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15214         (s390_process_record): Move to s390-tdep.c.
15215         (s390_linux_init_abi_any): Adjust.
15216         * s390-tdep.c (s390_record_address_mask)
15217         (s390_record_calc_disp_common, s390_record_calc_disp)
15218         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15219         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15220         (s390_process_record): Moved from s390-linux-tdep.c
15221         (s390_gdbarch_init): Adjust.
15222
15223 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15224
15225         * s390-linux-nat.c (s390-tdep.h): New include.
15226         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15227         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15228         (ALLDEPFILES): Add s390-tdep.c.
15229         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15230         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15231         * s390-tdep.h: ...this.  New file.
15232         * s390-linux-tdep.c (s390-tdep.h): New include.
15233         (_initialize_s390_tdep): Rename to...
15234         (_initialize_s390_linux_tdep): ...this and adjust.
15235         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15236         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15237         s390-tdep.h.
15238         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15239         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15240         (s390_is_partial_instruction, s390_software_single_step)
15241         (is_non_branch_ril, s390_displaced_step_copy_insn)
15242         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15243         (s390_prologue_data, s390_addr, s390_store, s390_load)
15244         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15245         (s390_register_call_saved, s390_guess_tracepoint_registers)
15246         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15247         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15248         (s390_pseudo_register_name, s390_pseudo_register_type)
15249         (s390_pseudo_register_read, s390_pseudo_register_write)
15250         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15251         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15252         (s390_addr_bits_remove, s390_address_class_type_flags)
15253         (s390_address_class_type_flags_to_name)
15254         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15255         (s390_function_arg_float, s390_function_arg_vector)
15256         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15257         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15258         (s390_frame_align, s390_register_return_value, s390_return_value)
15259         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15260         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15261         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15262         (s390_trad_frame_prev_register, s390_unwind_cache)
15263         (s390_prologue_frame_unwind_cache)
15264         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15265         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15266         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15267         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15268         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15269         (s390_frame_base_address, s390_local_base_address)
15270         (s390_frame_base, s390_gcc_target_options)
15271         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15272         (s390_validate_reg_range, s390_tdesc_valid)
15273         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15274         * s390-tdep.c: ...this.  New file.
15275
15276 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15277
15278         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15279         (s390_process_record, s390_gdbarch_tdep_alloc)
15280         (s390_linux_init_abi_any): Use/set new hook.
15281
15282 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15283
15284         * s390-linux-tdep.c (osabi.h): New include.
15285         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15286         (s390_linux_init_abi_any): New functions.
15287         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15288
15289 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15290
15291         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15292         tdesc_has_registers check
15293
15294 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15295
15296         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15297         (s390_validate_reg_range): New macro.
15298         (s390_gdbarch_init): Adjust.
15299
15300 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15301
15302         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15303         (s390_gdbarch_tdep_alloc): Adjust.
15304         (s390_gdbarch_init): Adjust.
15305
15306 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15307
15308         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15309         <have_tdb>: Change type to bool.
15310         (s390_gdbarch_tdep_alloc): Adjust.
15311         (s390_gdbarch_init): Adjust.
15312
15313 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15314
15315         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15316         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15317         (s390_gdbarch_tdep_alloc): New function.
15318         (s390_gdbarch_init): Allocate tdep at start and use its fields
15319         instead of separate variables.
15320
15321 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15322
15323         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15324         when looking for cached gdbarch and add comment for remaining.
15325
15326 2018-01-22  Pedro Alves  <palves@redhat.com>
15327             Sergio Durigan Junior  <sergiodj@redhat.com>
15328
15329         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15330         case.
15331
15332 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15333
15334         * MAINTAINERS: Update my company e-mail address.
15335
15336 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15337
15338         * regcache.c (cooked_write_test): New function.
15339         (_initialize_regcache): Register the test.
15340
15341 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15342
15343         * ia64-tdep.c (ia64_pseudo_register_read): Call
15344         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15345         * m32c-tdep.c (m32c_cat_read): Likewise.
15346         (m32c_r3r2r1r0_read): Likewise.
15347         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15348         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15349
15350 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15351
15352         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15353         method raw_read instead of regcache_raw_read.
15354         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15355         * arm-tdep.c (arm_neon_quad_read): Likewise.
15356         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15357         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15358         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15359         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15360         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15361         (i386_pseudo_register_read_into_value): Likewise.
15362         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15363         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15364         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15365         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15366         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15367         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15368         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15369         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15370         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15371
15372 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15373
15374         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15375         * configure.tgt: Remove target mt.
15376         * mt-tdep.c: Remove.
15377         * regcache.c (cooked_read_test): Remove the check for mt.
15378
15379 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15380
15381         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15382         instead of gdbarch_pseudo_register_read_value.
15383
15384 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15385
15386         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15387         language is Ada.
15388
15389 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15390
15391         * linespec.c (create_sals_line_offset): Remove code that preserved
15392         the symtab_and_line's line number.
15393
15394 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15395
15396         * varobj.c (varobj_create): Don't set valid_block when creating a
15397         floating varobj.
15398
15399 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15400
15401         * varobj.c (varobj_create): Remove out of date comment.
15402
15403 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15404
15405         PR mi/20395
15406         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15407         updating innermost block.
15408         * parse.c (innermost_block_tracker::update): Take extra type
15409         parameter, and check types match before updating innermost block.
15410         (write_dollar_variable): Update innermost block for registers.
15411         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15412         (innermost_block_tracker::innermost_block_tracker): Initialise
15413         m_types member.
15414         (innermost_block_tracker::reset): Take type parameter.
15415         (innermost_block_tracker::update): Take type parameter, and pass
15416         type through as needed.
15417         (innermost_block_tracker::m_types): New member.
15418         * varobj.c (varobj_create): Pass type when reseting innermost
15419         block.
15420
15421 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15422
15423         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15424         * ada-lang.c (resolve_subexp): Likewise.
15425         * breakpoint.c (set_breakpoint_condition) Likewise.
15426         (watch_command_1) Likewise.
15427         * c-exp.y (variable): Likewise.
15428         * d-exp.y (PrimaryExpression): Likewise.
15429         * f-exp.y (variable): Likewise.
15430         * go-exp.y (variable): Likewise.
15431         * m2-exp.y (variable): Likewise.
15432         * objfiles.c (objfile::~objfile): Likewise.
15433         * p-exp.y (variable): Likewise.
15434         * parse.c (innermost_block): Change type.
15435         * parser-defs.h (class innermost_block_tracker): New.
15436         (innermost_block): Change to innermost_block_tracker.
15437         * printcmd.c (display_command): Switch to innermost_block API.
15438         (do_one_display): Likewise.
15439         * rust-exp.y (do_one_display): Likewise.
15440         * symfile.c (clear_symtab_users): Likewise.
15441         * varobj.c (varobj_create): Switch to innermost_block API, replace
15442         use of innermost_block with block stored on varobj object.
15443
15444 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15445
15446         * expression.h (innermost_block): Remove declaration.
15447         * varobj.c: Add 'parser-defs.h' include.
15448
15449 2018-01-19  Tom Tromey  <tom@tromey.com>
15450
15451         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15452         symbols in the static and global blocks.
15453
15454 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15455
15456         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15457         gdb_ptrace.h, and move including gdb_wait.h ...
15458         * nat/linux-ptrace.h: ... to here.
15459
15460 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15461
15462         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15463         inf_ptrace_detach_success.
15464         (inf_ptrace_detach_success): Add inferior parameter, use it
15465         instead of inferior_ptid, pass it to detach_inferior.
15466         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15467         parameter.
15468         * inferior.c (detach_inferior): Add overload that takes an
15469         inferior object.
15470         * inferior.h (detach_inferior): Likewise.
15471         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15472         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15473         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15474
15475 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15476
15477         * target.h (struct target_ops) <to_detach>: Add inferior
15478         parameter.
15479         (target_detach): Likewise.
15480         * target.c (dispose_inferior): Pass inferior down.
15481         (target_detach): Pass inferior down.  Assert that it is equal to
15482         the current inferior.
15483         * aix-thread.c (aix_thread_detach): Pass inferior down.
15484         * corefile.c (core_file_command): Pass current_inferior() down.
15485         * corelow.c (core_detach): Add inferior parameter.
15486         * darwin-nat.c (darwin_detach): Likewise.
15487         * gnu-nat.c (gnu_detach): Likewise.
15488         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15489         * infcmd.c (detach_command): Pass current_inferior() down to
15490         target_detach.
15491         * infrun.c (follow_fork_inferior): Pass parent_inf to
15492         target_detach.
15493         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15494         target_detach.
15495         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15496         * linux-thread-db.c (thread_db_detach): Likewise.
15497         * nto-procfs.c (procfs_detach): Likewise.
15498         * procfs.c (procfs_detach): Likewise.
15499         * record.c (record_detach): Likewise.
15500         * record.h (struct inferior): Forward-declare.
15501         (record_detach): Add inferior parameter.
15502         * remote-sim.c (gdbsim_detach): Likewise.
15503         * remote.c (remote_detach_1): Likewise.
15504         (remote_detach): Likewise.
15505         (extended_remote_detach): Likewise.
15506         * sol-thread.c (sol_thread_detach): Likewise.
15507         * target-debug.h (target_debug_print_inferior_p): New macro.
15508         * target-delegates.c: Re-generate.
15509         * top.c (kill_or_detach): Pass inferior down to target_detach.
15510         * windows-nat.c (windows_detach): Add inferior parameter.
15511
15512 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15513
15514         * target.h (struct target_ops) <to_detach>: Remove args
15515         parameter.
15516         (target_detach): Likewise.
15517         * target.c (dispose_inferior): Adjust.
15518         (target_detach): Remove args parameter, adjust.
15519         * aix-thread.c (aix_thread_detach): Adjust.
15520         * corefile.c (core_file_command): Adjust.
15521         * corelow.c (core_detach): Adjust.
15522         * darwin-nat.c (darwin_detach): Adjust.
15523         * gnu-nat.c (gnu_detach): Adjust.
15524         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15525         * infcmd.c (detach_command): Adjust
15526         * infrun.c (follow_fork_inferior): Adjust.
15527         (handle_vfork_child_exec_or_exit): Adjust.
15528         * linux-fork.c (linux_fork_detach): Remove args parameter.
15529         * linux-fork.h (linux_fork_detach): Likewise.
15530         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15531         * linux-thread-db.c (thread_db_detach): Likewise.
15532         * nto-procfs.c (procfs_detach): Likewise.
15533         * procfs.c (procfs_detach): Likewise.
15534         (do_detach): Remove signo parameter.
15535         * record.c (record_detach): Remove args parameter.
15536         * record.h (record_detach): Likewise.
15537         * remote-sim.c (gdbsim_detach): Likewise.
15538         * remote.c (remote_detach_1): Likewise.
15539         (remote_detach): Likewise.
15540         (extended_remote_detach): Likewise.
15541         * sol-thread.c (sol_thread_detach): Likewise.
15542         * target-delegates.c: Re-generate.
15543         * top.c (struct qt_args) <args>: Remove field.
15544         (kill_or_detach): Don't pass args.
15545         (quit_force): Don't set args.
15546         * windows-nat.c (windows_detach): Remove args parameter.
15547
15548 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15549
15550         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15551         (arm_linux_init_abi): Install it.
15552
15553 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15554
15555         * osabi.c (gdb_osabi_names): Extend the regexp for
15556         arm-linux-gnueabihf.
15557
15558 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15559
15560         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15561         m_abbrevs.
15562         (abbrev_table::add_abbrev): Update.
15563         (abbrev_table::lookup_abbrev): Update.
15564
15565 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15566
15567         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15568
15569 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15570
15571         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15572         to "std::string".
15573
15574 2018-01-17  Tom Tromey  <tom@tromey.com>
15575
15576         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15577
15578 2018-01-17  Tom Tromey  <tom@tromey.com>
15579
15580         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15581         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15582         (create_array_type_with_stride): Update.
15583         * dwarf2read.c (set_die_type): Update.
15584
15585 2018-01-17  Tom Tromey  <tom@tromey.com>
15586
15587         * dwarf2read.c (delayed_method_info): Remove typedef.
15588         (dwarf2_cu::method_info): Now a std::vector.
15589         (add_to_method_list): Update.
15590         (free_delayed_list): Remove.
15591         (compute_delayed_physnames): Update.
15592         (process_full_comp_unit, process_full_type_unit): Clear the method
15593         list.  Remove cleanups.
15594         (psymtab_include_file_name): Add name_holder parameter.  Use
15595         unique_xmalloc_ptr.
15596         (dwarf_decode_lines): Update.
15597
15598 2018-01-17  Tom Tromey  <tom@tromey.com>
15599             Simon Marchi  <simon.marchi@ericsson.com>
15600
15601         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15602         (dwarf2_per_objfile::free_cached_comp_units)
15603         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15604         (init_cutu_and_read_dies_no_follow): Update.
15605         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15606         (dwarf2_cu::~dwarf2_cu): New.
15607         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15608         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15609
15610 2018-01-17  Tom Tromey  <tom@tromey.com>
15611             Simon Marchi  <simon.marchi@ericsson.com>
15612
15613         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15614         (struct die_reader_specs) <abbrev_table>: New member.
15615         (struct abbrev_table): Add constructor.
15616         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15617         <abbrev_obstack>: Now an auto_obstack.
15618         (abbrev_table_up): New typedef.
15619         (init_cu_die_reader): Add abbrev_table parameter.
15620         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15621         Add result_dwo_abbrev_table.
15622         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15623         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15624         Update.
15625         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15626         parameter.
15627         (skip_children): Update.
15628         (abbrev_table::alloc_abbrev): Rename from
15629         abbrev_table_alloc_abbrev.
15630         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15631         (abbrev_table::lookup_abbrev): Rename from
15632         abbrev_table_lookup_abbrev.
15633         (abbrev_table_read_table): Return abbrev_table_up.
15634         (abbrev_table_free, abbrev_table_free_cleanup)
15635         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15636         (load_partial_dies): Update.
15637
15638 2018-01-17  Tom Tromey  <tom@tromey.com>
15639
15640         * dwarf2read.c (dwarf2_compute_name): Update comment.
15641         (read_func_scope, read_variable): Update.
15642         (new_symbol): Remove.
15643         (new_symbol_full): Rename to new_symbol.
15644
15645 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15646
15647         PR gdb/16577
15648         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15649         a warning instead of throwing an error, set section size to 0 and return
15650         NULL.
15651         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15652
15653 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15654
15655         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15656         std::string.
15657         (linux_ptrace_attach_fail_reason_string): Likewise.
15658         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15659         Likewise.
15660         (linux_ptrace_attach_fail_reason_string): Likewise.
15661         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15662
15663 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15664
15665         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15666
15667 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15668
15669         PR gdb/21559
15670         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15671         checking for fs_base/gs_base fields in struct user_regs_struct.
15672         * configure: Regenerate.
15673
15674 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15675
15676         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15677         function.
15678         (aarch64_linux_init_abi): Install it to gdbarch hook
15679         gcc_target_options.
15680
15681 2018-01-15  Pedro Alves  <palves@redhat.com>
15682
15683         * common/signals-state-save-restore.c
15684         (save_original_signals_state): Fix typos.
15685
15686 2017-01-12  Tom Tromey  <tom@tromey.com>
15687             Sergio Durigan Junior  <sergiodj@redhat.com>
15688
15689         * Makefile.in (install-only): Install gdb-add-index.
15690
15691 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15692
15693         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15694
15695 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15696
15697         * infrun.c (keep_going_pass_signal): Clear step-over info when
15698         insert_breakpoints fails.
15699
15700 2018-01-11  Pedro Alves  <palves@redhat.com>
15701
15702         PR gdb/22583
15703         * infrun.c (resume): Rename to ...
15704         (resume_1): ... this.
15705         (resume): Reimplement as wrapper around resume_1.
15706
15707 2018-01-11  Pedro Alves  <palves@redhat.com>
15708
15709         PR remote/22597
15710         * remote.c (remote_parse_stop_reply): Default to the last-set
15711         general thread instead of to 'magic_null_ptid'.
15712
15713 2018-01-10  Pedro Alves  <palves@redhat.com>
15714
15715         * language.h (language_get_symbol_name_matcher): Rename ...
15716         (get_symbol_name_matcher): ... this.
15717         * language.c (language_get_symbol_name_matcher): Ditto.
15718         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15719         callers adjusted.
15720
15721 2018-01-10  Pedro Alves  <palves@redhat.com>
15722
15723         PR gdb/22670
15724         * dwarf2read.c
15725         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15726         Adjust to use language_get_symbol_name_matcher instead of
15727         language_defn::la_get_symbol_name_matcher.
15728         * language.c (language_get_symbol_name_matcher): If in Ada mode
15729         and the lookup name is a verbatim match, return Ada's matcher.
15730         * language.h (language_get_symbol_name_matcher): Adjust comment.
15731         (ada_lookup_name_info::verbatim_p):: New method.
15732
15733 2018-01-10  Pedro Alves  <palves@redhat.com>
15734
15735         PR gdb/22670
15736         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15737         minsym's language is language_auto or language_cplus, pass down
15738         language_ada instead.
15739         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15740
15741 2018-01-10  Pedro Alves  <palves@redhat.com>
15742
15743         PR gdb/22670
15744         * minsyms.c (linkage_name_str): New function.
15745         (iterate_over_minimal_symbols): Use it.
15746
15747 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15748
15749         * NEWS: Document that 'info proc' now works on FreeBSD.
15750
15751 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15752
15753         * configure.ac: Check for kinfo_getfile in libutil.
15754         * configure: Regenerate.
15755         * config.in: Regenerate.
15756         * fbsd-nat.c: Include "fbsd-tdep.h".
15757         (fbsd_fetch_cmdline): New.
15758         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15759         rather than calling error.
15760         (fbsd_info_proc): New.
15761         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15762         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15763         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15764
15765 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15766
15767         * fbsd-nat.c (struct free_deleter): Remove.
15768         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15769
15770 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15771
15772         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15773         NULL for an empty pathname.
15774
15775 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15776
15777         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15778         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15779         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15780         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15781         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15782         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15783         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15784         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15785         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15786         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15787         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15788         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15789         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15790         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15791         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15792
15793 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15794
15795         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15796         (gnu_xfer_auxv): New function.
15797         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15798         TARGET_OBJECT_AUXV.
15799
15800 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15801             Simon Marchi  <simon.marchi@ericsson.com>
15802
15803         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15804         common/selftest.c.
15805         (COMMON_OBS): Remove selftest.o.
15806         * configure.ac: Append selftest-arch.c and common/selftest.c to
15807         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15808         * configure: Re-generated.
15809         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15810         GDB_SELF_TEST.
15811         (maintenance_info_selftests): Likewise.
15812
15813 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15814
15815         * ada-valprint.c (val_print_packed_array_elements): Use
15816         proper number of elements when printing an array indexed
15817         by an enumeration type.
15818
15819 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15820
15821         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15822         (dw2_get_file_names_reader): Adjust.
15823         (lookup_dwo_signatured_type): Adjust.
15824         (lookup_dwp_signatured_type): Adjust.
15825         (lookup_signatured_type): Adjust.
15826         (create_type_unit_group): Adjust.
15827         (get_type_unit_group): Adjust.
15828         (process_psymtab_comp_unit_reader): Adjust.
15829         (build_type_psymtabs_reader): Adjust.
15830         (scan_partial_symbols): Adjust.
15831         (add_partial_symbol): Adjust.
15832         (add_partial_subprogram): Adjust.
15833         (peek_die_abbrev): Adjust.
15834         (fixup_go_packaging): Adjust.
15835         (process_imported_unit_die): Adjust.
15836         (dwarf2_compute_name): Adjust.
15837         (dwarf2_physname): Adjust.
15838         (read_import_statement): Adjust.
15839         (handle_DW_AT_stmt_list): Adjust.
15840         (read_file_scope): Adjust.
15841         (read_func_scope): Adjust.
15842         (read_lexical_block_scope): Adjust.
15843         (read_call_site_scope): Adjust.
15844         (read_variable): Adjust.
15845         (dwarf2_rnglists_process): Adjust.
15846         (dwarf2_ranges_process): Adjust.
15847         (dwarf2_ranges_read): Adjust.
15848         (dwarf2_get_pc_bounds): Adjust.
15849         (dwarf2_record_block_ranges): Adjust.
15850         (dwarf2_add_field): Adjust.
15851         (dwarf2_add_member_fn): Adjust.
15852         (read_structure_type): Adjust.
15853         (process_structure_scope): Adjust.
15854         (read_enumeration_type): Adjust.
15855         (read_array_type): Adjust.
15856         (mark_common_block_symbol_computed): Adjust.
15857         (read_common_block): Adjust.
15858         (read_namespace_type): Adjust.
15859         (read_namespace): Adjust.
15860         (read_module_type): Adjust.
15861         (read_tag_pointer_type): Adjust.
15862         (read_tag_ptr_to_member_type): Adjust.
15863         (read_tag_string_type): Adjust.
15864         (read_subroutine_type): Adjust.
15865         (read_typedef): Adjust.
15866         (read_base_type): Adjust.
15867         (attr_to_dynamic_prop): Adjust.
15868         (read_subrange_type): Adjust.
15869         (read_unspecified_type): Adjust.
15870         (dwarf2_read_abbrevs): Adjust.
15871         (load_partial_dies): Adjust.
15872         (read_partial_die): Adjust.
15873         (find_partial_die): Adjust.
15874         (guess_partial_die_structure_name): Adjust.
15875         (fixup_partial_die): Adjust.
15876         (read_attribute_value): Adjust.
15877         (read_addr_index): Adjust.
15878         (read_addr_index_from_leb128): Adjust.
15879         (read_str_index): Adjust.
15880         (dwarf2_string_attr): Adjust.
15881         (get_debug_line_section): Adjust.
15882         (dwarf_decode_line_header): Adjust.
15883         (lnp_state_machine::check_line_address): Adjust.
15884         (dwarf_decode_lines_1): Adjust.
15885         (dwarf_decode_lines): Adjust.
15886         (dwarf2_start_symtab): Adjust.
15887         (var_decode_location): Adjust.
15888         (new_symbol_full): Adjust.
15889         (dwarf2_const_value_data): Adjust.
15890         (dwarf2_const_value_attr): Adjust.
15891         (dwarf2_const_value): Adjust.
15892         (die_type): Adjust.
15893         (die_containing_type): Adjust.
15894         (build_error_marker_type): Adjust.
15895         (lookup_die_type): Adjust.
15896         (guess_full_die_structure_name): Adjust.
15897         (anonymous_struct_prefix): Adjust.
15898         (determine_prefix): Adjust.
15899         (dwarf2_name): Adjust.
15900         (follow_die_ref_or_sig): Adjust.
15901         (follow_die_offset): Adjust.
15902         (follow_die_ref): Adjust.
15903         (follow_die_sig_1): Adjust.
15904         (follow_die_sig): Adjust.
15905         (get_signatured_type): Adjust.
15906         (get_DW_AT_signature_type): Adjust.
15907         (decode_locdesc): Adjust.
15908         (dwarf_decode_macros): Adjust.
15909         (cu_debug_loc_section): Adjust.
15910         (fill_in_loclist_baton): Adjust.
15911         (dwarf2_symbol_mark_computed): Adjust.
15912         (init_one_comp_unit): Don't assign
15913         dwarf2_cu::dwarf2_per_objfile.
15914         (set_die_type): Adjust.
15915
15916 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15917
15918         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15919         <dwarf2_per_objfile>: New field.
15920         (dwarf2_per_objfile): Remove global.
15921         (get_dwarf2_per_objfile): New function.
15922         (set_dwarf2_per_objfile): New function.
15923         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15924         dwarf2_per_objfile.
15925         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15926         (read_abbrev_offset): Likewise.
15927         (read_indirect_string): Likewise.
15928         (read_indirect_line_string): Likewise.
15929         (read_indirect_string_at_offset): Likewise.
15930         (read_indirect_string_from_dwz): Likewise.
15931         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15932         dwarf2_per_objfile.
15933         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15934         (create_all_comp_units): Change objfile parameter to
15935         dwarf2_per_objfile.
15936         (create_all_type_units): Likewise.
15937         (process_queue): Add dwarf2_per_objfile parameter.
15938         (read_and_check_comp_unit_head): Likewise.
15939         (lookup_dwo_unit_in_dwp): Likewise.
15940         (get_dwp_file): Likewise.
15941         (process_cu_includes): Likewise.
15942         (struct free_dwo_file_cleanup_data): New struct.
15943         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15944         set_dwarf2_per_objfile.
15945         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15946         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15947         context, adjust calls.
15948         (dw2_instantiate_symtab): Likewise.
15949         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15950         (dw2_get_cu): Likewise.
15951         (create_cu_from_index_list): Change objfile parameter to
15952         dwarf2_per_objfile.
15953         (create_cus_from_index_list): Get dwarf2_per_objfile from
15954         context, adjust calls.
15955         (create_cus_from_index): Likewise.
15956         (create_signatured_type_table_from_index): Change objfile
15957         parameter to dwarf2_per_objfile.
15958         (create_signatured_type_table_from_debug_names): Change objfile
15959         parameter to dwarf2_per_objfile.
15960         (create_addrmap_from_index): Likewise.
15961         (create_addrmap_from_aranges): Likewise.
15962         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15963         (dw2_setup): Remove.
15964         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15965         context.
15966         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15967         get_dwarf2_per_objfile.
15968         (dw2_forget_cached_source_info): Likewise.
15969         (dw2_map_symtabs_matching_filename): Likewise.
15970         (struct dw2_symtab_iterator) <index>: Remove.
15971         <dwarf2_per_objfile>: New field.
15972         (dw2_symtab_iter_init): Replace index parameter with
15973         dwarf2_per_objfile.
15974         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15975         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15976         (dw2_print_stats): Likewise.
15977         (dw2_dump): Likewise.
15978         (dw2_expand_symtabs_for_function): Likewise.
15979         (dw2_expand_all_symtabs): Likewise.
15980         (dw2_expand_symtabs_with_fullname): Likewise.
15981         (dw2_expand_marked_cus): Replace index and objfile parameters
15982         with dwarf2_per_objfile.
15983         (dw_expand_symtabs_matching_file_matcher): Add
15984         dwarf2_per_objfile parameter and adjust calls.
15985         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15986         adjust calls.
15987         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15988         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15989         adjust calls.
15990         (create_cus_from_debug_names_list): Replace objfile parameter
15991         with dwarf2_per_objfile and adjust calls.
15992         (create_cus_from_debug_names): Likewise.
15993         (dwarf2_read_debug_names): Likewise.
15994         (mapped_debug_names::namei_to_name): Adjust call.
15995         (dw2_debug_names_iterator::next): Likewise.
15996         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15997         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15998         (dw2_debug_names_dump): Likewise.
15999         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16000         (dw2_debug_names_expand_symtabs_matching): Likewise.
16001         (dwarf2_initialize_objfile): Likewise.
16002         (dwarf2_build_psymtabs): Likewise.
16003         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16004         this_cu.
16005         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16006         (read_and_check_comp_unit_head): Likewise.
16007         (read_abbrev_offset): Likewise.
16008         (create_debug_type_hash_table): Likewise.
16009         (create_debug_types_hash_table): Likewise.
16010         (create_all_type_units): Replace objfile parameter with
16011         dwarf2_per_objfile.
16012         (add_type_unit): Add dwarf2_per_objfile parameter.
16013         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16014         with dwarf2_per_objfile.
16015         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16016         (lookup_dwp_signatured_type): Likewise.
16017         (lookup_signatured_type): Likewise.
16018         (read_cutu_die_from_dwo): Likewise.
16019         (init_tu_and_read_dwo_dies): Likewise.
16020         (init_cutu_and_read_dies): Likewise.
16021         (init_cutu_and_read_dies_no_follow): Likewise.
16022         (allocate_type_unit_groups_table): Add objfile parameter.
16023         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16024         (get_type_unit_group): Likewise.
16025         (process_psymtab_comp_unit): Update call.
16026         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16027         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16028         (print_tu_stats): Likewise.
16029         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16030         in void* parameter.
16031         (build_type_psymtabs): Change objfile parameter to
16032         dwarf2_per_objfile.
16033         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16034         passed in void* parameter.
16035         (process_skeletonless_type_units): Change objfile parameter to
16036         dwarf2_per_objfile.
16037         (set_partial_user): Likewise.
16038         (dwarf2_build_psymtabs_hard): Likewise.
16039         (read_comp_units_from_section): Likewise.
16040         (create_all_comp_units): Likewise.
16041         (scan_partial_symbols): Update calls.
16042         (add_partial_symbol): Likewise.
16043         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16044         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16045         (process_queue): Add dwarf2_per_objfile parameter.
16046         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16047         (compute_compunit_symtab_includes): Likewise.
16048         (process_cu_includes): Add dwarf2_per_objfile parameter.
16049         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16050         (process_full_type_unit): Likewise.
16051         (process_imported_unit_die): Update call.
16052         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16053         (read_file_scope): Likewise.
16054         (allocate_dwo_file_hash_table): Add objfile parameter.
16055         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16056         (create_cus_hash_table): Likewise.
16057         (create_dwp_hash_table): Likewise.
16058         (create_dwo_unit_in_dwp_v1): Likewise.
16059         (create_dwp_v2_section): Likewise.
16060         (create_dwo_unit_in_dwp_v2): Likewise.
16061         (lookup_dwo_unit_in_dwp): Likewise.
16062         (try_open_dwop_file): Likewise.
16063         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16064         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16065         cleanup to include a reference to dwarf2_per_objfile.
16066         (open_dwp_file): Add dwarf2_per_objfile parameter.
16067         (open_and_init_dwp_file): Likewise.
16068         (get_dwp_file): Likewise.
16069         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16070         (queue_and_load_all_dwo_tus): Update call.
16071         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16072         data.
16073         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16074         (dwarf2_ranges_process): Likewise.
16075         (dwarf2_get_pc_bounds): Likewise.
16076         (mark_common_block_symbol_computed): Likewise.
16077         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16078         (dwarf2_read_abbrevs): Update call.
16079         (read_partial_die): Use dwarf2_per_objfile from cu.
16080         (find_partial_die): Likewise.
16081         (fixup_partial_die): Likewise.
16082         (read_attribute_value): Likewise.
16083         (read_indirect_string_at_offset_from): Add objfile parameter.
16084         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16085         parameter.
16086         (read_indirect_string_from_dwz): Add objfile parameter.
16087         (read_indirect_string): Add objfile parameter.
16088         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16089         (read_addr_index): Use dwarf2_per_objfile from cu.
16090         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16091         call dw2_setup.
16092         (read_str_index): Use dwarf2_per_objfile from cu.
16093         (get_debug_line_section): Likewise.
16094         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16095         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16096         (new_symbol_full): Use dwarf2_per_objfile from cu.
16097         (build_error_marker_type): Likewise.
16098         (lookup_die_type): Likewise.
16099         (determine_prefix): Likewise.
16100         (follow_die_offset): Likewise.
16101         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16102         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16103         (dwarf2_fetch_die_type_sect_off): Likewise.
16104         (dwarf2_get_die_type): Likewise.
16105         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16106         (get_signatured_type): Likewise.
16107         (get_DW_AT_signature_type): Likewise.
16108         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16109         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16110         (cu_debug_loc_section): Likewise.
16111         (fill_in_loclist_baton): Likewise.
16112         (dwarf2_symbol_mark_computed): Likewise.
16113         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16114         dwarf2_per_objfile.
16115         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16116         parameter.
16117         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16118         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16119         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16120         (set_die_type): Use dwarf2_free_objfile from cu.
16121         (get_die_type_at_offset): Likewise.
16122         (dwarf2_per_objfile_free): Don't assign global variable.
16123         (debug_names) <constructor>: Add dwarf2_per_objfile
16124         parameter, update m_debugstrlookup construction.
16125         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16126         parameter.
16127         <m_dwarf2_per_objfile>: New field.
16128         <lookup>: Use m_dwarf2_per_objfile.
16129         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16130         (psyms_seen_size): Likewise.
16131         (write_gdbindex): Replace objfile parameter with
16132         dwarf2_per_objfile.
16133         (write_debug_names): Likewise.
16134         (write_psymtabs_to_index): Likewise.
16135         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16136         calls.
16137
16138 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16139
16140         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16141         <dwarf2_per_objfile>: New field.
16142         (struct dwarf2_per_cu_data) <objfile>: Remove.
16143         <dwarf2_per_objfile>: New field.
16144         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16145         of objfile.
16146         (create_signatured_type_table_from_index): Likewise.
16147         (create_debug_type_hash_table): Likewise.
16148         (fill_in_sig_entry_from_dwo_entry): Likewise.
16149         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16150         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16151         objfile.
16152         (create_partial_symtab): Access objfile through
16153         dwarf2_per_objfile.
16154         (process_psymtab_comp_unit_reader): Likewise.
16155         (read_comp_units_from_section): Likewise.
16156         (scan_partial_symbols): Likewise.
16157         (add_partial_symbol): Likewise.
16158         (add_partial_subprogram): Likewise.
16159         (peek_die_abbrev): Likewise.
16160         (fixup_go_packaging): Likewise.
16161         (process_full_comp_unit): Likewise.
16162         (process_full_type_unit): Likewise.
16163         (process_imported_unit_die): Likewise.
16164         (dwarf2_compute_name): Likewise.
16165         (dwarf2_physname): Likewise.
16166         (read_import_statement): Likewise.
16167         (create_cus_hash_table): Assign dwarf2_physname instead of
16168         objfile.
16169         (read_func_scope): Access objfile through dwarf2_per_objfile.
16170         (read_lexical_block_scope): Likewise.
16171         (read_call_site_scope): Likewise.
16172         (read_variable): Likewise.
16173         (dwarf2_rnglists_process): Likewise.
16174         (dwarf2_ranges_process): Likewise.
16175         (dwarf2_ranges_read): Likewise.
16176         (dwarf2_record_block_ranges): Likewise.
16177         (dwarf2_add_field): Likewise.
16178         (dwarf2_add_member_fn): Likewise.
16179         (read_structure_type): Likewise.
16180         (process_structure_scope): Likewise.
16181         (read_enumeration_type): Likewise.
16182         (read_array_type): Likewise.
16183         (read_common_block): Likewise.
16184         (read_namespace_type): Likewise.
16185         (read_namespace): Likewise.
16186         (read_module_type): Likewise.
16187         (read_tag_pointer_type): Likewise.
16188         (read_tag_ptr_to_member_type): Likewise.
16189         (read_tag_string_type): Likewise.
16190         (read_subroutine_type): Likewise.
16191         (read_typedef): Likewise.
16192         (read_base_type): Likewise.
16193         (attr_to_dynamic_prop): Likewise.
16194         (read_subrange_type): Likewise.
16195         (read_unspecified_type): Likewise.
16196         (load_partial_dies): Likewise.
16197         (read_partial_die): Likewise.
16198         (find_partial_die): Likewise.
16199         (guess_partial_die_structure_name): Likewise.
16200         (fixup_partial_die): Likewise.
16201         (read_attribute_value): Likewise.
16202         (read_addr_index_from_leb128): Likewise.
16203         (dwarf2_read_addr_index): Likewise.
16204         (dwarf2_string_attr): Likewise.
16205         (lnp_state_machine::check_line_address): Likewise.
16206         (dwarf_decode_lines_1): Likewise.
16207         (dwarf_decode_lines): Likewise.
16208         (dwarf2_start_symtab): Likewise.
16209         (var_decode_location): Likewise.
16210         (new_symbol_full): Likewise.
16211         (dwarf2_const_value_data): Likewise.
16212         (dwarf2_const_value_attr): Likewise.
16213         (dwarf2_const_value): Likewise.
16214         (die_type): Likewise.
16215         (die_containing_type): Likewise.
16216         (lookup_die_type): Likewise.
16217         (guess_full_die_structure_name): Likewise.
16218         (anonymous_struct_prefix): Likewise.
16219         (dwarf2_name): Likewise.
16220         (follow_die_ref_or_sig): Likewise.
16221         (follow_die_offset): Likewise.
16222         (follow_die_ref): Likewise.
16223         (dwarf2_fetch_die_loc_sect_off): Likewise.
16224         (dwarf2_fetch_constant_bytes): Likewise.
16225         (dwarf2_fetch_die_type_sect_off): Likewise.
16226         (dwarf2_get_die_type): Likewise.
16227         (follow_die_sig): Likewise.
16228         (decode_locdesc): Likewise.
16229         (dwarf2_per_cu_objfile): Likewise.
16230         (dwarf2_per_cu_text_offset): Likewise.
16231         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16232         objfile.
16233         (set_die_type): Access objfile through
16234         dwarf2_per_objfile.
16235
16236 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16237
16238         * valprint.c (converted_character_d): Remove typedef.
16239         (DEF_VEC_O (converted_character_d)): Remove.
16240         (count_next_character): Use std::vector.
16241         (print_converted_chars_to_obstack): Likewise.
16242         (generic_printstr): Likewise.
16243
16244 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16245
16246         * xml-support.h (struct gdb_xml_value): Add constructor.
16247         <value>: Change type to unique_xmalloc_ptr.
16248         (gdb_xml_value_s): Remove typedef.
16249         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16250         (gdb_xml_element_start_handler): Change parameter type to
16251         std::vector.
16252         (xml_find_attribute): Likewise.
16253         * xml-support.c (xml_find_attribute): Change parameter type to
16254         std::vector and adjust.
16255         (gdb_xml_values_cleanup): Remove.
16256         (gdb_xml_parser::start_element): Adjust to std::vector.
16257         (xinclude_start_include): Change paraeter type to std::vector
16258         and adjust.
16259         * btrace.c (check_xml_btrace_version): Likewise.
16260         (parse_xml_btrace_block): Likewise.
16261         (parse_xml_btrace_pt_config_cpu): Likewise.
16262         (parse_xml_btrace_pt): Likewise.
16263         (parse_xml_btrace_conf_bts): Likewise.
16264         (parse_xml_btrace_conf_pt): Likewise.
16265         * memory-map.c (memory_map_start_memory): Likewise.
16266         (memory_map_start_property): Likewise.
16267         * osdata.c (osdata_start_osdata): Likewise.
16268         (osdata_start_item): Likewise.
16269         (osdata_start_column): Likewise.
16270         * remote.c (start_thread): Likewise.
16271         * solib-aix.c (library_list_start_library): Likewise.
16272         (library_list_start_list): Likewise.
16273         * solib-svr4.c (library_list_start_library): Likewise.
16274         (svr4_library_list_start_list): Likewise.
16275         * solib-target.c (library_list_start_segment): Likewise.
16276         (library_list_start_section): Likewise.
16277         (library_list_start_library): Likewise.
16278         (library_list_start_list): Likewise.
16279         * tracepoint.c (traceframe_info_start_memory): Likewise.
16280         (traceframe_info_start_tvar): Likewise.
16281         * xml-syscall.c (syscall_start_syscall): Likewise.
16282         * xml-tdesc.c (tdesc_start_target): Likewise.
16283         (tdesc_start_feature): Likewise.
16284         (tdesc_start_reg): Likewise.
16285         (tdesc_start_union): Likewise.
16286         (tdesc_start_struct): Likewise.
16287         (tdesc_start_flags): Likewise.
16288         (tdesc_start_enum): Likewise.
16289         (tdesc_start_field): Likewise.
16290         (tdesc_start_enum_value): Likewise.
16291         (tdesc_start_vector): Likewise.
16292
16293 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16294
16295         * extension.h (struct xmethod_worker) <clone>: Remove.
16296         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16297         Remove.
16298         (python_xmethod_worker::clone): Remove.
16299         * valops.c (find_overload_match): Use std::move instead of
16300         clone.
16301
16302 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16303
16304         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16305         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16306         <free_xmethod_worker_data>: Remove.
16307         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16308         <get_xmethod_arg_types>: Remove.
16309         <get_xmethod_result_type>: Remove.
16310         <invoke_xmethod>: Remove.
16311         * extension.c (new_xmethod_worker): Remove.
16312         (clone_xmethod_worker): Remove.
16313         (get_matching_xmethod_workers): Return void, pass std::vector by
16314         pointer.
16315         (get_xmethod_arg_types): Rename to...
16316         (xmethod_worker::get_arg_types): ... this, and adjust.
16317         (get_xmethod_result_type): Rename to...
16318         (xmethod_worker::get_result_type): ... this, and adjust.
16319         (invoke_xmethod): Remove.
16320         (free_xmethod_worker): Remove.
16321         (free_xmethod_worker_vec): Remove.
16322         * extension.h (enum ext_lang_rc): Move here from
16323         extension-priv.h.
16324         (struct xmethod_worker): Add constructor and destructor.
16325         <data>: Remove.
16326         <value>: Remove.
16327         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16328         virtual pure methods.
16329         <get_arg_types, get_result_type>: New methods.
16330         (xmethod_worker_ptr): Remove typedef.
16331         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16332         (xmethod_worker_vec): Remove typedef.
16333         (xmethod_worker_up): New typedef.
16334         (invoke_xmethod): Remove.
16335         (clone_xmethod_worker): Remove.
16336         (free_xmethod_worker): Remove.
16337         (free_xmethod_worker_vec): Remove.
16338         (get_xmethod_arg_types): Remove.
16339         (get_xmethod_result_type): Remove.
16340         * valops.c (find_method_list): Use std::vector, don't use
16341         intermediate vector.
16342         (value_find_oload_method_list): Use std::vector.
16343         (find_overload_match): Use std::vector.
16344         (find_oload_champ): Use std::vector.
16345         * value.c (value_free): Use operator delete.
16346         (value_of_xmethod): Rename to...
16347         (value_from_xmethod): ... this.  Don't assign
16348         xmethod_worker::value, take rvalue-reference.
16349         (result_type_of_xmethod): Adjust.
16350         (call_xmethod): Adjust.
16351         * value.h: Include extension.h.
16352         (struct xmethod_worker): Don't forward-declare.
16353         (value_of_xmethod): Rename to...
16354         (value_from_xmethod): ... this, take rvalue-reference.
16355         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16356         (struct python_xmethod_worker): ... this, add constructor and
16357         destructor.
16358         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16359         (gdbpy_free_xmethod_worker_data): Rename to...
16360         (python_xmethod_worker::~python_xmethod_worker): ... this and
16361         adjust.
16362         (gdbpy_clone_xmethod_worker_data): Rename to...
16363         (python_xmethod_worker::clone): ... this and adjust.
16364         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16365         temporary vector.
16366         (gdbpy_get_xmethod_arg_types): Rename to...
16367         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16368         (gdbpy_get_xmethod_result_type): Rename to...
16369         (python_xmethod_worker::do_get_result_type): ... this and
16370         adjust.
16371         (gdbpy_invoke_xmethod): Rename to...
16372         (python_xmethod_worker::invoke): ... this and adjust.
16373         (new_python_xmethod_worker): Rename to...
16374         (python_xmethod_worker::python_xmethod_worker): ... this and
16375         adjust.
16376         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16377         Remove.
16378         (gdbpy_free_xmethod_worker_data): Remove.
16379         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16380         (gdbpy_get_xmethod_arg_types): Remove.
16381         (gdbpy_get_xmethod_result_type): Remove.
16382         (gdbpy_invoke_xmethod): Remove.
16383         * python/python.c (python_extension_ops): Remove obsolete
16384         callbacks.
16385
16386 2018-01-05  Pedro Alves  <palves@redhat.com>
16387
16388         PR gdb/18653
16389         * common/signals-state-save-restore.c
16390         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16391         find a custom handler preinstalled, instead of internal erroring.
16392         But only warn if !quiet.
16393         * common/signals-state-save-restore.h
16394         (save_original_signals_state): New parameter 'quiet'.
16395         * main.c (captured_main_1): Move save_original_signals_state call
16396         after option handling, and pass QUIET.
16397
16398 2018-01-05  Pedro Alves  <palves@redhat.com>
16399
16400         * spu-tdep.c (spu_catch_start): Pass
16401         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16402
16403 2018-01-05  Pedro Alves  <palves@redhat.com>
16404
16405         PR gdb/22670
16406         * ada-lang.c (literal_symbol_name_matcher): New function.
16407         (ada_get_symbol_name_matcher): Use it for
16408         symbol_name_match_type::SEARCH_NAME.
16409         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16410         it down instead of assuming symbol_name_match_type::FULL.
16411         * block.h (block_lookup_symbol): New parameter 'match_type'.
16412         * c-valprint.c (print_unpacked_pointer): Use
16413         lookup_symbol_search_name instead of lookup_symbol.
16414         * compile/compile-object-load.c (get_out_value_type): Pass down
16415         symbol_name_match_type::SEARCH_NAME.
16416         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16417         symbol_name_match_type::FULL.
16418         * cp-support.c (cp_get_symbol_name_matcher): Handle
16419         symbol_name_match_type::SEARCH_NAME.
16420         * infrun.c (insert_exception_resume_breakpoint): Use
16421         lookup_symbol_search_name.
16422         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16423         * psymtab.c (maintenance_check_psymtabs): Use
16424         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16425         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16426         SYMBOL_SEARCH_NAME.
16427         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16428         if symbol_name_match_type::SEARCH_NAME.
16429         (lookup_symbol_in_language): Pass down
16430         symbol_name_match_type::FULL.
16431         (lookup_symbol_search_name): New.
16432         (lookup_language_this): Pass down
16433         symbol_name_match_type::SEARCH_NAME.
16434         (lookup_symbol_aux, lookup_local_symbol): New parameter
16435         'match_type'.  Pass it down.
16436         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16437         (lookup_symbol_search_name): New declaration.
16438         (lookup_symbol_in_block): New 'match_type' parameter.
16439
16440 2018-01-05  Pedro Alves  <palves@redhat.com>
16441
16442         PR gdb/22670
16443         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16444         ada_lookup_symbol.
16445         (ada_lookup_symbol): Reimplement in terms of
16446         ada_lookup_symbol_list, bits factored out from
16447         ada_lookup_encoded_symbol.
16448
16449 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16450
16451         * ada-exp.y (write_object_renaming): When subscripting an array
16452         using a symbol as the index, pass the block in call to
16453         ada_lookup_encoded_symbol when looking that symbol up.
16454
16455 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16456
16457         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16458         TYPE_INDEX_TYPE.
16459
16460 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16461
16462         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16463         the case where VALUE_LVAL (val0) is not lval_memory.
16464
16465 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16466
16467         * ada-valprint.c (print_optional_low_bound): Handle
16468         character-indexed array printing like boolean-indexed array
16469         printing.
16470
16471 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16472
16473         * NEWS: Create a new section for the next release branch.
16474         Rename the section of the current branch, now that it has
16475         been cut.
16476
16477 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16478
16479         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16480         * version.in: Bump version to 8.1.50.DATE-git.
16481
16482 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16483
16484         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16485         Add field.
16486         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16487         Add field.
16488         (default_exception_support_info) <catch_handlers_sym>: Add field.
16489         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16490         (ada_exception_name_addr_1): Add "catch handlers" handling.
16491         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16492         Update all callers.
16493         (create_excep_cond_exprs) <ex>: Add parameter.
16494         (re_set_exception): Update create_excep_cond_exprs call.
16495         (print_it_exception, print_one_exception, print_mention_exception)
16496         (print_recreate_exception): Add "catch handler" handling.
16497         (allocate_location_catch_handlers, re_set_catch_handlers)
16498         (check_status_catch_handlers, print_it_catch_handlers)
16499         (print_one_catch_handlers, print_mention_catch_handlers)
16500         (print_recreate_catch_handlers): New function.
16501         (catch_handlers_breakpoint_ops): New variable.
16502         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16503         Add parameter.  Add "catch handler" handling.
16504         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16505         Add "catch handler" handling.
16506         (ada_exception_catchpoint_cond_string): Add "catch handler"
16507         handling.
16508         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16509         call.
16510         (catch_ada_handlers_command): New function.
16511         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16512         operations structure.
16513         (_initialize_ada_language): Add "catch handlers" command entry.
16514         * NEWS: Document "catch handlers" feature.
16515
16516 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16517
16518         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16519         account when creating the array type of the slice.
16520         (ada_value_slice): Likewise.
16521
16522 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16523
16524         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16525         New enum value.
16526         (create_array_type_with_stride): Add byte_stride_prop parameter.
16527         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16528         New parameter.  Update all callers in this file.
16529         (array_type_has_dynamic_stride): New function.
16530         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16531         of arrays with dynamic byte strides.
16532         * dwarf2read.c (read_array_type): Add support for dynamic
16533         DW_AT_byte_stride attributes.
16534
16535 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16536
16537         * dwarf2read.c (read_unspecified_type): Treat
16538         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16539
16540 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16541
16542         Update copyright year range in all GDB files.
16543
16544 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16545
16546         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16547         and gdb/testsuite/gdb.base/step-line.c.
16548
16549 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16550
16551         * copyright.py (main): Dump the contents of
16552         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16553         even if BY_HAND is empty.
16554
16555 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16556
16557         * top.c (print_gdb_version): Update Copyright year in version
16558         message.
16559
16560 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16561
16562         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16563
16564 For older changes see ChangeLog-2017.
16565 \f
16566 Local Variables:
16567 mode: change-log
16568 left-margin: 8
16569 fill-column: 74
16570 version-control: never
16571 coding: utf-8
16572 End: