Update the conditionals in fbsd-nat.h so they are always honored.
[external/binutils.git] / gdb / ChangeLog
1 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
2
3         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
4         defined.
5         (union sigval32, struct siginfo32, fbsd_siginfo_size)
6         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
7         of KERN_PROC_AUXV and PT_LWPINFO.
8         (fbsd_nat_target::xfer_partial): Define method unconditionally.
9         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
10         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
11         Make TARGET_OBJECT_FREEBSD_VMMAP and
12         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
13         and KERN_PROC_PS_STRINGS.
14         * fbsd-nat.h: Include <sys/proc.h>.
15         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
16
17 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
18
19         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
20         header files.
21         (riscv_linux_nat_target::read_description): New method.
22
23 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
24
25         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
26         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
27         (riscv_tdesc_cache): New global.
28         (riscv_create_target_description): Look in the cache before
29         creating a new target description.
30
31 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
32
33         * arch/riscv.h (riscv_gdb_features::operator==): New.
34         (riscv_gdb_features::operator!=): New.
35         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
36         operator.
37
38 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
39
40         * arch/riscv.h (riscv_create_target_description): Make return type
41         const.
42         * arch/riscv.c (riscv_create_target_description): Likewise.
43         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
44
45 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
46             Keith Seitz  <keiths@redhat.com>
47             Tom Tromey  <tom@tromey.com>
48             Sergio Durigan Junior  <sergiodj@redhat.com>
49
50         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
51         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
52         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
53         inside the CU.
54
55 2018-11-30  Pedro Alves  <palves@redhat.com>
56
57         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
58         <stratum>: New override.
59         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
60         <stratum>: New override.
61         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
62         <stratum>: New override.
63         * exec.c (exec_target) <exec_target>: Delete.
64         <stratum>: New override.
65         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
66         stratum method instead of the to_stratum field.
67         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
68         <stratum>: New override.
69         (thread_db_target::thread_db_target): Delete.
70         * make-target-delegates (print_class): Don't print a ctor
71         declaration.  Print a stratum method override declaration.
72         * process-stratum-target.h (process_stratum_target)
73         <process_stratum_target>: Delete.
74         <stratum>: New override.
75         * ravenscar-thread.c (ravenscar_thread_target)
76         <ravenscar_thread_target>: Delete.
77         <stratum>: New override.
78         * record-btrace.c (record_btrace_target)
79         <record_btrace_target>: Delete.
80         <stratum>: New override.
81         * record-full.c (record_full_base_target)
82         <record_full_base_target>: Delete.
83         <stratum>: New override.
84         * record.c (record_disconnect, record_detach)
85         (record_mourn_inferior, record_kill): Adjust to use the stratum
86         method instead of the to_stratum field.
87         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
88         * sol-thread.c (sol_thread_target)
89         <sol_thread_target>: Delete.
90         <stratum>: New override.
91         * spu-multiarch.c (spu_multiarch_target)
92         <spu_multiarch_target>: Delete.
93         <stratum>: New override.
94         * target-delegates.c: Regenerate.
95         * target.c (target_stack::push, target_stack::unpush)
96         (pop_all_targets_above, pop_all_targets_at_and_above)
97         (info_target_command, target_require_runnable)
98         (target_stack::find_beneath): Adjust to use the stratum method
99         instead of the to_stratum field.
100         (dummy_target::dummy_target): Delete.
101         (dummy_target::stratum): New.
102         (debug_target::debug_target): Delete.
103         (debug_target::stratum): New.
104         (maintenance_print_target_stack): Adjust to use the stratum method
105         instead of the to_stratum field.
106         * target.h (struct target_ops) <stratum>: New method.
107         <to_stratum>: Delete.
108         <is_pushed>: Adjust to use the stratum method
109         instead of the to_stratum field.
110
111 2018-11-30  Pedro Alves  <palves@redhat.com>
112
113         * corelow.c (core_target) <has_all_memory, has_execution>: New
114         overrides.
115         * inf-child.c (inf_child_target::has_all_memory)
116         (inf_child_target::has_memory, inf_child_target::has_stack)
117         (inf_child_target::has_registers)
118         (inf_child_target::has_execution): Delete.
119         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
120         has_stack, has_registers, has_execution>: Delete.
121         * process-stratum-target.c
122         (process_stratum_target::has_all_memory)
123         (process_stratum_target::has_memory)
124         (process_stratum_target::has_stack)
125         (process_stratum_target::has_registers)
126         (process_stratum_target::has_execution): New.
127         * process-stratum-target.h (process_stratum_target)
128         <has_all_memory, has_memory, has_stack, has_registers,
129         has_execution>: New method overrides.
130         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
131         has_memory, has_stack, has_registers, has_execution>: Delete.
132         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
133         has_execution>: Delete.
134         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
135         has_registers, has_execution>: Delete.
136         * target.c (default_child_has_all_memory)
137         (default_child_has_memory, default_child_has_stack)
138         (default_child_has_registers, default_child_has_execution):
139         Delete.
140         * target.h (default_child_has_all_memory)
141         (default_child_has_memory, default_child_has_stack)
142         (default_child_has_registers, default_child_has_execution):
143         Delete.
144         * tracefile.h (tracefile_target) <has_execution>: New override.
145
146 2018-11-30  Pedro Alves  <palves@redhat.com>
147
148         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
149         * bsd-kvm.c: Include "process-stratum-target.h".
150         (bsd_kvm_target): Now inherits from process_stratum_target.
151         (bsd_kvm_target::bsd_kvm_target): Default it.
152         * corelow.c: Include "process-stratum-target.h".
153         (core_target): Now inherits from process_stratum_target.
154         (core_target::core_target): Don't set to_stratum here.
155         * inf-child.c (inf_child_target::inf_child_target): Delete.
156         * inf-child.h: Include "process-stratum-target.h".
157         (inf_child_target): Inherit from process_stratum_target.
158         (inf_child_target) <inf_child_target>: Default it.
159         <can_async_p, supports_non_stop, supports_disable_randomization>:
160         Delete overrides.
161         * process-stratum-target.c: New file.
162         * process-stratum-target.h: New file.
163         * remote-sim.c: Include "process-stratum-target.h".
164         (gdbsim_target): Inherit from process_stratum_target.
165         <gdbsim_target>: Default it.
166         * remote.c: Include "process-stratum-target.h".
167         (remote_target): Inherit from process_stratum_target.
168         <remote_target>: Default it.
169         * target.c (default_thread_address_space)
170         (default_thread_architecture): Delete.
171         * target.h (target_ops) <thread_architecture>: Now returns NULL by
172         default.
173         <thread_address_space>: Ditto.
174         * test-target.h: Include "process-stratum-target.h" instead of
175         "target.h".
176         (test_target_ops): Inherit from process_stratum_target.
177         <test_target_ops>: Default it.
178         * tracefile.c (tracefile_target::tracefile_target): Delete.
179         * tracefile.h: Include "process-stratum-target.h".
180         (tracefile_target): Inherit from process_stratum_target.
181         <tracefile_target>: Default it.
182         * target-delegates.c: Regenerate.
183
184 2018-11-30  Pedro Alves  <palves@redhat.com>
185
186         * Makefile.in (COMMON_SFILES): Add test-target.c.
187         * gdbarch-selftests.c: Include "test-target.h".
188         * regcache.c: Include "test-target.h".
189         * target.c (test_target_info, test_target_ops::info): Move to ...
190         * test-target.c: ... this new file.
191         * target.h (test_target_ops): Move to ...
192         * test-target.h: ... this new file.
193
194 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
195
196         * source.c (forward_search_command): Fix leak by using
197         xrealloc even for the first allocation in the loop, as buf
198         is static.
199
200 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
201
202         PR gdb/23093
203         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
204         (fbsd_gdb_signal_to_target): New.
205         (fbsd_init_abi): Install gdbarch "signal_from_target" and
206         "signal_to_target" methods.
207
208 2018-11-29  Tom Tromey  <tom@tromey.com>
209
210         * valarith.c (value_x_unop): Don't set argvec[3].
211
212 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
213
214         PR gdb/23917
215         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
216         semicolon.
217
218 2018-11-26  Pedro Alves  <palves@redhat.com>
219
220         * procfs.c (procfs_notice_thread): Replace uses of
221         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
222         * sol-thread.c (sol_thread_target::wait)
223         (sol_update_thread_list_callback): Likewise.
224
225 2018-11-25  Tom Tromey  <tom@tromey.com>
226
227         * ui-out.c (ui_out::field_fmt): Remove comment.
228         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
229         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
230
231 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
232
233         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
234         leak in open_source_file' has been partially undone by '2179fbc36d23
235         Return scoped_fd from open_source_file'. Re-add the transfer of
236         current s->fullname to the unique_xmalloc_ptr fullname given
237         to find_and_open_source.
238
239 2018-11-23  Pedro Alves  <palves@redhat.com>
240
241         * gdbthread.h (enum thread_state): Move comments here.
242         (is_running, is_stopped, is_exited): Remove declarations.
243
244 2018-11-22  Pedro Alves  <palves@redhat.com>
245
246         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
247         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
248         ALL_NON_EXITED_THREADS with all_non_exited_threads.
249         (print_one_breakpoint_location): Replace ALL_INFERIORS with
250         all_inferiors.
251         * bsd-kvm.c: Include inferior.h.
252         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
253         with all_non_exited_threads.
254         * common/filtered-iterator.h: New.
255         * common/safe-iterator.h: New.
256         * corelow.c (core_target_open): Don't call init_thread_list here.
257         * darwin-nat.c (thread_info_from_private_thread_info): Replace
258         ALL_THREADS with all_threads.
259         * fbsd-nat.c (fbsd_nat_target::resume): Replace
260         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
261         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
262         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
263         * fork-child.c (postfork_hook): Don't call init_thread_list here.
264         * gdbarch-selftests.c (register_to_value_test): Adjust.
265         * gdbthread.h: Don't include "inferior.h" here.
266         (struct inferior): Forward declare.
267         (enum step_over_calls_kind): Moved here from inferior.h.
268         (thread_info::deletable): Definition moved to thread.c.
269         (find_thread_ptid (inferior *, ptid_t)): Declare.
270         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
271         Include "thread-iter.h".
272         (all_threads, all_non_exited_threads, all_threads_safe): New.
273         (any_thread_p): Declare.
274         (thread_list): Delete.
275         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
276         all_non_exited_threads.
277         (proceed_after_attach_callback): Delete.
278         (proceed_after_attach): Take an inferior pointer instead of an
279         integer PID.  Adjust to use range-for.
280         (attach_post_wait): Pass down inferior pointer instead of pid.
281         Use range-for instead of ALL_NON_EXITED_THREADS.
282         (detach_command): Remove init_thread_list call.
283         * inferior-iter.h: New.
284         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
285         (delete_thread_of_inferior): Delete.
286         (delete_inferior, exit_inferior_1): Use range-for with
287         inf->threads_safe() instead of iterate_over_threads.
288         (inferior_appeared): Call init_thread_list here.
289         (discard_all_inferiors): Use all_non_exited_inferiors.
290         (find_inferior_id, find_inferior_pid): Use all_inferiors.
291         (iterate_over_inferiors): Use all_inferiors_safe.
292         (have_inferiors, number_of_live_inferiors): Use
293         all_non_exited_inferiors.
294         (number_of_inferiors): Use all_inferiors and std::distance.
295         (print_inferior): Use all_inferiors.
296         * inferior.h: Include gdbthread.h.
297         (enum step_over_calls_kind): Moved to gdbthread.h.
298         (struct inferior) <thread_list>: New field.
299         <threads, non_exited_threads, threads_safe>: New methods.
300         (ALL_INFERIORS): Delete.
301         Include "inferior-iter.h".
302         (ALL_NON_EXITED_INFERIORS): Delete.
303         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
304         functions.
305         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
306         ALL_NON_EXITED_THREADS with all_non_exited_threads.
307         * infrun.c (follow_exec): Use all_threads_safe.
308         (clear_proceed_status, proceed): Use all_non_exited_threads.
309         (init_wait_for_inferior): Don't clear inline frame state here.
310         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
311         all_threads instead of ALL_NON_EXITED_THREADS.
312         (random_pending_event_thread): Use all_non_exited_threads instead
313         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
314         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
315         instead of ALL_NON_EXITED_THREADS.
316         (handle_no_resumed): Use all_non_exited_threads instead of
317         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
318         ALL_INFERIORS.
319         (restart_threads, switch_back_to_stepped_thread): Use
320         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
321         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
322         all_inferiors.
323         (kill_unfollowed_fork_children): Use inf->non_exited_threads
324         instead of ALL_NON_EXITED_THREADS.
325         * linux-tdep.c (linux_make_corefile_notes): Use
326         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
327         * linux-thread-db.c (thread_db_target::update_thread_list):
328         Replace ALL_INFERIORS with all_inferiors.
329         (thread_db_target::thread_handle_to_thread_info): Use
330         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
331         * mi/mi-interp.c (multiple_inferiors_p): New.
332         (mi_on_resume_1): Simplify using all_non_exited_threads and
333         multiple_inferiors_p.
334         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
335         instead of ALL_NON_EXITED_THREADS.
336         * nto-procfs.c (nto_procfs_target::open): Don't call
337         init_thread_list here.
338         * record-btrace.c (record_btrace_target_open)
339         (record_btrace_target::stop_recording)
340         (record_btrace_target::close)
341         (record_btrace_target::record_is_replaying)
342         (record_btrace_target::resume, record_btrace_target::wait)
343         (record_btrace_target::record_stop_replaying): Use
344         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
345         * record-full.c (record_full_wait_1): Use all_non_exited_threads
346         instead of ALL_NON_EXITED_THREADS.
347         * regcache.c (cooked_read_test): Remove reference to global
348         thread_list.
349         * remote-sim.c (gdbsim_target::create_inferior): Don't call
350         init_thread_list here.
351         * remote.c (remote_target::update_thread_list): Use
352         all_threads_safe instead of ALL_NON_EXITED_THREADS.
353         (remote_target::process_initial_stop_replies): Replace
354         ALL_INFERIORS with all_non_exited_inferiors and use
355         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
356         (remote_target::open_1): Don't call init_thread_list here.
357         (remote_target::append_pending_thread_resumptions)
358         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
359         instead of ALL_NON_EXITED_THREADS.
360         (remote_target::commit_resume)
361         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
362         with all_non_exited_inferiors and use all_non_exited_threads
363         instead of ALL_NON_EXITED_THREADS.
364         (remote_target::kill_new_fork_children): Use
365         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
366         init_thread_list and init_wait_for_inferior calls.
367         (remote_target::remote_btrace_maybe_reopen)
368         (remote_target::thread_handle_to_thread_info): Use
369         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
370         * target.c (target_terminal::restore_inferior)
371         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
372         all_non_exited_inferiors.
373         * thread-iter.c: New file.
374         * thread-iter.h: New file.
375         * thread.c: Include "inline-frame.h".
376         (thread_list): Delete.
377         (clear_thread_inferior_resources): Call clear_inline_frame_state.
378         (init_thread_list): Use all_threads_safe instead of
379         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
380         (new_thread): Adjust to per-inferior thread lists.
381         (add_thread_silent): Pass inferior to find_thread_ptid.
382         (thread_info::deletable): New, moved from the header.
383         (delete_thread_1): Adjust to per-inferior thread lists.
384         (find_thread_global_id): Use inf->threads().
385         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
386         find_thread_ptid.
387         (find_thread_ptid(inferior*, ptid_t)): New overload.
388         (iterate_over_threads): Use all_threads_safe.
389         (any_thread_p): New.
390         (thread_count): Use all_threads and std::distance.
391         (live_threads_count): Use all_non_exited_threads and
392         std::distance.
393         (valid_global_thread_id): Use all_threads.
394         (in_thread_list): Use find_thread_ptid.
395         (first_thread_of_inferior): Adjust to per-inferior thread lists.
396         (any_thread_of_inferior, any_live_thread_of_inferior): Use
397         inf->non_exited_threads().
398         (prune_threads, delete_exited_threads): Use all_threads_safe.
399         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
400         (set_resumed, set_running): Use all_non_exited_threads.
401         (is_thread_state, is_stopped, is_exited, is_running)
402         (is_executing): Delete.
403         (set_executing, set_stop_requested, finish_thread_state): Use
404         all_non_exited_threads.
405         (print_thread_info_1): Use all_inferiors and all_threads.
406         (thread_apply_all_command): Use all_non_exited_threads.
407         (thread_find_command): Use all_threads.
408         (update_threads_executing): Use all_non_exited_threads.
409         * tid-parse.c (parse_thread_id): Use inf->threads.
410         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
411
412 2018-11-22  Pedro Alves  <palves@redhat.com>
413
414         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
415         switch to it before calling into try_open_exec_file.
416
417 2018-11-22  Pedro Alves  <palves@redhat.com>
418
419         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
420         inferior_thread instead of find_thread_ptid, and only when
421         inferior_ptid is not null_ptid.
422         * inferior.c (add_inferior): Don't include target_pid_to_str
423         output when the inferior is not started.
424         * python/py-inferior.c (python_on_normal_stop): Don't use
425         find_thread_ptid.
426         (tui_on_user_selected_context_changed): Use inferior_thread
427         instead of find_thread_ptid, and only when inferior_ptid is not
428         null_ptid.
429
430 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
431
432         PR python/23714
433         * gdb/python/python.c (execute_gdb_command): Call
434         prevent_dont_repeat earlier to avoid affecting dont_repeat.
435
436 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
437
438         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
439         (HFILES_NO_SRCDIR): Add arch/riscv.h.
440         * arch/riscv.c: New file.
441         * arch/riscv.h: New file.
442         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
443         this list, and add arch/riscv.o.
444         * features/Makefile: Add riscv features.
445         * features/riscv/32bit-cpu.c: New file.
446         * features/riscv/32bit-cpu.xml: New file.
447         * features/riscv/32bit-csr.c: New file.
448         * features/riscv/32bit-csr.xml: New file.
449         * features/riscv/32bit-fpu.c: New file.
450         * features/riscv/32bit-fpu.xml: New file.
451         * features/riscv/64bit-cpu.c: New file.
452         * features/riscv/64bit-cpu.xml: New file.
453         * features/riscv/64bit-csr.c: New file.
454         * features/riscv/64bit-csr.xml: New file.
455         * features/riscv/64bit-fpu.c: New file.
456         * features/riscv/64bit-fpu.xml: New file.
457         * features/riscv/rebuild-csr-xml.sh: New file.
458         * riscv-tdep.c: Add 'arch/riscv.h' include.
459         (riscv_gdb_reg_names): Delete.
460         (csr_reggroup): New global.
461         (struct riscv_register_alias): Delete.
462         (struct riscv_register_feature): New structure.
463         (riscv_register_aliases): Delete.
464         (riscv_xreg_feature): New global.
465         (riscv_freg_feature): New global.
466         (riscv_virtual_feature): New global.
467         (riscv_csr_feature): New global.
468         (riscv_create_csr_aliases): New function.
469         (riscv_read_misa_reg): Delete.
470         (riscv_has_feature): Delete.
471         (riscv_isa_xlen): Simplify, just return cached xlen.
472         (riscv_isa_flen): Simplify, just return cached flen.
473         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
474         (riscv_register_name): Update to make use of tdesc_register_name.
475         Look up xreg and freg names in the new globals riscv_xreg_feature
476         and riscv_freg_feature.  Don't supply csr aliases here.
477         (riscv_fpreg_q_type): Delete.
478         (riscv_register_type): Use tdesc_register_type in almost all
479         cases, override the returned type in a few specific cases only.
480         (riscv_print_one_register_info): Handle errors reading registers.
481         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
482         registers that are otherwise unknown to GDB.  Also check the
483         csr_reggroup.
484         (riscv_print_registers_info): Remove assert about upper register
485         number, and use gdbarch_register_reggroup_p instead of
486         short-cutting.
487         (riscv_find_default_target_description): New function.
488         (riscv_check_tdesc_feature): New function.
489         (riscv_add_reggroups): New function.
490         (riscv_setup_register_aliases): New function.
491         (riscv_init_reggroups): New function.
492         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
493         setup register groups.  Register new riscv debug variable.
494         * riscv-tdep.h: Add 'arch/riscv.h' include.
495         (struct gdbarch_tdep): Remove abi union, and add
496         riscv_gdbarch_features field.  Remove cached quad floating point
497         type, and provide initialisation for double type field.
498         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
499         the list of targets using the feature based target descriptions.
500         * NEWS: Mention target description support.
501
502 2018-11-21  Pedro Alves  <palves@redhat.com>
503
504         * valops.c (find_method_list, value_find_oload_method_list)
505         (find_overload_match, find_oload_champ): Rename parameters and
506         locals.
507
508 2018-11-21  Pedro Alves  <palves@redhat.com>
509
510         * valops.c (find_method_list): Replace pointer and length
511         parameters with an gdb::array_view.  Adjust.
512         (value_find_oload_method_list): Likewise.
513         (find_overload_match): Use gdb::array_view for methods list.
514         Adjust to find_oload_champ interface change.
515         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
516         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
517
518 2018-11-21  Pedro Alves  <palves@redhat.com>
519
520         * gdbtypes.c (compare_badness): Change type of parameters to const
521         reference.  Adjust to badness_vector being a std::vector now.
522         (rank_function): Adjust to badness_vector being a std::vector now.
523         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
524         (LENGTH_MATCH): Delete.
525         (compare_badness): Change type of parameters to const reference.
526         (rank_function): Return a badness_vector by value now.
527         (find_overload_match): Adjust to badness_vector being a
528         std::vector now.  Remove cleanups.
529         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
530         badness_vector pointer.
531         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
532         a badness_vector pointer.  Adjust to badness_vector being a
533         std::vector now.  Remove cleanups.
534         (find_oload_champ): 'oload_champ_bv' parameter now
535         a badness_vector pointer.  Adjust to badness_vector being a
536         std::vector now.  Remove cleanups.
537
538 2018-11-21  Pedro Alves  <palves@redhat.com>
539
540         * cp-support.c (sym_return_val_size, sym_return_val_index)
541         (sym_return_val): Delete.
542         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
543         add to the vector.
544         (make_symbol_overload_list): Adjust to return a std::vector
545         instead of maintaining a global open coded vector.
546         (make_symbol_overload_list_block): Add std::vector parameter.
547         (make_symbol_overload_list_block): Rename to ...
548         (add_symbol_overload_list_block): ... this and add std::vector
549         parameter.
550         (make_symbol_overload_list_namespace): Rename to ...
551         (add_symbol_overload_list_namespace): ... this and add std::vector
552         parameter.
553         (make_symbol_overload_list_adl_namespace): Rename to ...
554         (add_symbol_overload_list_adl_namespace): ... this and add
555         std::vector parameter.
556         (make_symbol_overload_list_adl): Delete.
557         (add_symbol_overload_list_adl): New.
558         (make_symbol_overload_list_using): Rename to ...
559         (add_symbol_overload_list_using): ... this and add std::vector
560         parameter.
561         (make_symbol_overload_list_qualified): Rename to ...
562         (add_symbol_overload_list_qualified): ... this and add std::vector
563         parameter.
564         * cp-support.h: Include "common/array-view.h" and <vector>.
565         (make_symbol_overload_list): Change return type to std::vector.
566         (make_symbol_overload_list_adl): Delete declaration.
567         (add_symbol_overload_list_adl): New declaration.
568         * valops.c (find_overload_match): Local 'oload_syms' now a
569         std::vector.
570         (find_oload_champ_namespace): 'oload_syms' parameter now a
571         std::vector pointer.
572         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
573         std::vector pointer.  Adjust to new make_symbol_overload_list
574         interface.
575
576 2018-11-21  Pedro Alves  <palves@redhat.com>
577
578         * common/array-view.h (array_view::splice(size_type, size_t)): New.
579         (array_view::splice(size_type)): New.
580         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
581         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
582         std::vector.
583         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
584         * extension.h: Include "common/array-view.h".
585         (xmethod_worker::invoke): Adjust to use gdb::array_view.
586         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
587         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
588         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
589         (xmethod_worker::do_get_result_type): Adjust to use
590         gdb::array_view.
591         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
592         * gdbtypes.h: Include "common/array-view.h".
593         (rank_function): Adjust to use gdb::array_view.
594         * python/py-xmethods.c (python_xmethod_worker::invoke)
595         (python_xmethod_worker::do_get_arg_types)
596         (python_xmethod_worker::do_get_result_type)
597         (python_xmethod_worker::invoke): Adjust to new interfaces.
598         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
599         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
600         * valops.c (find_overload_match, find_oload_champ_namespace)
601         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
602         gdb:array_view and the new xmethod_worker interfaces.
603         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
604         gdb::array_view.
605         * value.h (find_overload_match, result_type_of_xmethod)
606         (call_xmethod): Adjust to use gdb::array_view.
607         * unittests/array-view-selftests.c: Add slicing tests.
608
609 2018-11-21  Pedro Alves  <palves@redhat.com>
610
611         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
612         * common/array-view.h (make_array_view): New.
613         * compile/compile-object-run.c (compile_object_run): Adjust to
614         pass an array_view.
615         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
616         * eval.c (eval_call): Adjust to pass an array_view.
617         (evaluate_subexp_standard): Adjust to pass an array_view.
618         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
619         * guile/scm-value.c (gdbscm_value_call): Likewise.
620         * infcall.c (push_dummy_code): Replace pointer + size parameters
621         with an array_view parameter.
622         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
623         adjust.
624         * infcall.h: Include "common/array-view.h".
625         (call_function_by_hand, call_function_by_hand_dummy): Replace
626         pointer + size parameters with an array_view parameter.
627         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
628         * linux-tdep.c (linux_infcall_mmap): Likewise.
629         * objc-lang.c (lookup_objc_class, lookup_child_selector)
630         (value_nsstring, print_object_command): Likewise.
631         * python/py-value.c (valpy_call): Likewise.
632         * rust-lang.c (rust_evaluate_funcall): Likewise.
633         * spu-tdep.c (flush_ea_cache): Likewise.
634         * valarith.c (value_x_binop, value_x_unop): Likewise.
635         * valops.c (value_allocate_space_in_inferior): Likewise.
636         * unittests/array-view-selftests.c (run_tests): Add
637         gdb::make_array_view test.
638
639 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
640
641         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
642         than a fixed size buffer.
643
644 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
645
646         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
647         and remove insertion of extra spaces in GDB's output.
648         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
649         Layout field into a temporary buffer, and then output it as a
650         string field.
651
652 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
653
654         * NEWS: Document the language choice done by
655         'info [types|functions|variables]|rbreak'.
656
657 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
658
659         * symtab.c (treg_matches_sym_type_name): Use
660         scoped_switch_to_sym_language_if_auto instead of local logic.
661         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
662         to switch to SYM language when language mode is auto.
663
664 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
665
666         * language.h (scoped_switch_to_sym_language_if_auto): New class.
667
668 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
669
670         * symtab.c (search_symbols): Properly check absence of type regexp
671         before entering the loop scanning the minimal symbols.
672
673 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
674
675         * s12z-tdep.c (s12z_extract_return_value): New function.
676         (inv_reg_perm) New array.
677         (s12z_return_value): Populate readbuf if non-null.
678
679 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
680
681         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
682         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
683         to MinGW fixed by Gnulib.
684         (O_NOINHERIT): Define if not defined.
685
686 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
687
688         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
689
690 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
691
692         * infrun.c (displaced_step_inferior_state) <next>: Remove.
693
694 2018-11-19  Tom Tromey  <tom@tromey.com>
695
696         * source.c (get_filename_and_charpos): Return void.
697
698 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
699
700         * skip.c (_initialize_step_skip): Fix "info skip" help.
701
702 2018-11-16  Tom Tromey  <tom@tromey.com>
703
704         PR rust/23625:
705         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
706
707 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
708
709         * infrun.c (displaced_step_inferior_states): Change type to
710         std::forward_list.
711         (get_displaced_stepping_state): Adjust.
712         (displaced_step_in_progress_any_inferior): Adjust.
713         (add_displaced_stepping_state): Adjust.
714         (remove_displaced_stepping_state): Adjust.
715
716 2018-11-18  Tom Tromey  <tom@tromey.com>
717
718         PR build/23814:
719         * target-delegates.c: Rebuild.
720         * ia64-linux-nat.c (class ia64_linux_nat_target)
721         <have_steppable_watchpoint>: Use override.  Return true, not 1.
722         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
723         "self" argument.
724         (ia64_linux_nat_target::low_new_thread): Rename.
725         (class ia64_linux_nat_target) <read_description>: Don't declare.
726         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
727         bool.
728
729 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
730
731         PR gdb/22736:
732         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
733         lang_struct_return code.
734
735 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
736
737         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
738         return_method.
739         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
740         * amd64-tdep.c (amd64_push_arguments): Likewise.
741         (amd64_push_dummy_call): Likewise.
742         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
743         * arc-tdep.c (arc_push_dummy_call): Likewise.
744         * arm-tdep.c (arm_push_dummy_call): Likewise.
745         * avr-tdep.c (avr_push_dummy_call): Likewise.
746         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
747         * cris-tdep.c (cris_push_dummy_call): Likewise.
748         * csky-tdep.c (csky_push_dummy_call): Likewise.
749         * frv-tdep.c (frv_push_dummy_call): Likewise.
750         * gdbarch.c: Regenerate.
751         * gdbarch.h: Regenerate.
752         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
753         return_method.
754         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
755         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
756         (hppa64_push_dummy_call): Likewise.
757         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
758         * i386-tdep.c (i386_push_dummy_call): Likewise.
759         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
760         * infcall.c (call_function_by_hand_dummy): Likewise.
761         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
762         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
763         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
764         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
765         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
766         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
767         * mep-tdep.c (mep_push_dummy_call): Likewise.
768         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
769         (mips_n32n64_push_dummy_call): Likewise.
770         (mips_o32_push_dummy_call): Likewise.
771         (mips_o64_push_dummy_call): Likewise.
772         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
773         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
774         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
775         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
776         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
777         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
778         (ppc64_sysv_abi_push_dummy_call): Likewise.
779         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
780         (ppc64_sysv_abi_push_dummy_call): Likewise.
781         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
782         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
783         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
784         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
785         * rx-tdep.c (rx_push_dummy_call): Likewise.
786         * s390-tdep.c (s390_push_dummy_call): Likewise.
787         * score-tdep.c (score_push_dummy_call): Likewise.
788         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
789         (sh_push_dummy_call_nofpu): Likewise.
790         * sparc-tdep.c (sparc32_store_arguments): Likewise.
791         (sparc32_push_dummy_call): Likewise.
792         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
793         (sparc64_push_dummy_call): Likewise.
794         * spu-tdep.c (spu_push_dummy_call): Likewise.
795         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
796         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
797         * v850-tdep.c (v850_push_dummy_call): Likewise.
798         * vax-tdep.c (vax_push_dummy_call): Likewise.
799         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
800         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
801
802 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
803
804         * gdbarch.sh (enum function_call_return_method): Add enum.
805         * gdbarch.h: Regenerate.
806         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
807
808 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
809
810         * unittests/copy_bitwise-selftests.c: New file.
811         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
812         (selftests::copy_bitwise_tests): Delete, moving this code to
813         unittests/copy_bitwise-selftests.c instead.
814         (_initialize_utils): Do not register copy_bitwise tests.
815         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
816         unittests/copy_bitwise-selftests.c.
817
818 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
819
820         * ada-lang.c (move_bits): Delete. Update all callers to use
821         copy_bitwise instead.
822         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
823         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
824         Move from here to utils.c.
825         (_initialize_dwarf2loc): Remove call to register copy_bitwise
826         selftests.
827         * utils.h (copy_bitwise): Add declaration.
828         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
829         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
830         Moved here from dwarf2loc.c.
831         (_initialize_utils): Register copy_bitwise selftests.
832
833 2018-11-14  Jim Wilson  <jimw@sifive.com>
834
835         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
836         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
837         then increment next_regnum if odd.
838         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
839         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
840         function type.  Pass new arg to riscv_arg_location based on function
841         type.
842         (riscv_return_value): Pass new arg to riscv_arg_location.
843
844         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
845         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
846         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
847
848         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
849         setting len.  New local align, set to max of arg align and xlen,
850         and pass to first riscv_assign_stack_location call.
851
852 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
853
854         * skip.c (complete_skip_number): New function.
855         (_initialize_step_skip): Add completers to some skip commands.
856
857 2018-11-09  Tom Tromey  <tom@tromey.com>
858
859         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
860         (struct remote_g_packet_data): Derive from allocate_on_obstack.
861         <guesses>: Now a std::vector.
862         (remote_g_packet_data_init, register_remote_g_packet_guess):
863         Update.
864         (remote_read_description_p): Update.  Return bool.
865         (remote_target::read_description): Update.
866         (struct remote_g_packet_guess): Add constructor.
867
868 2018-11-09  Tom Tromey  <tom@tromey.com>
869
870         * common/scoped_fd.h (class scoped_fd): Add move constructor and
871         move assignment operator.
872         * psymtab.c (psymtab_to_fullname): Update.
873         * source.h (open_source_file): Return scoped_fd.
874         (find_and_open_source): Likewise.
875         * source.c (open_source_file): Return scoped_fd.
876         (get_filename_and_charpos): Update.
877         (print_source_lines_base): Update.  Use scoped_fd::to_file.
878         (forward_search_command): Likewise.
879         (reverse_search_command): Likewise.
880         (find_and_open_source): Return scoped_fd.
881         * tui/tui-source.c (tui_set_source_content): Update.  Use
882         gdb_file_up.
883
884 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
885
886         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
887         overflow.
888
889 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
890
891         * configure: Regenerate.
892
893 2018-11-09  Tom de Vries  <tdevries@suse.de>
894
895         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
896         unconditionally, to set the language of the symbol.  Manage freeing
897         returned pointer using gdb::unique_xmalloc_ptr.
898
899 2018-11-08  Tom Tromey  <tom@tromey.com>
900
901         * record.c (require_record_target): Upper-case "<TAB>".
902
903 2018-11-08  Tom Tromey  <tom@tromey.com>
904
905         * python/lib/gdb/command/pretty_printers.py
906         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
907
908 2018-11-08  Tom Tromey  <tom@tromey.com>
909
910         PR gdb/23555:
911         PR gdb/23838:
912         * target.h (target_supports_terminal_ours): Return bool.
913         * target.c (target_supports_terminal_ours): Handle case where
914         current_top_target returns nullptr.  Return bool.
915
916 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
917
918         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
919         return the correct count for potential HFAs.
920
921 2018-11-08  Jan Beulich  <jbeulich@suse.com>
922
923         * i387-tdep.c (i387_supply_xsave): Split handling of
924         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
925         (i387_collect_xsave): Likewise.
926
927 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
928
929         * riscv-tdep.c (riscv_insn::decode): Update header comment.
930         (riscv_frame_this_id): Catch errors thrown while building the
931         frame cache, leave the frame id as the default, which is the outer
932         frame id.
933
934 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
935
936         * ada-lang.c (read_atcb): Only set task_info->called_task if
937         task_info->state == Entry_Caller_Sleep.
938         (print_ada_task_info): Do not check task_info->state before
939         checking task_info->called_task.
940         (info_task): Likewise.
941
942 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
943
944         * ada-tasks.c (read_atcb): Clear task_info before computing
945         the value of each of its fields.
946
947 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
948
949         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
950         NULL before dereferencing it.
951
952 2018-11-06  Tom de Vries  <tdevries@suse.de>
953
954         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
955         program headers.
956
957 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
958
959         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
960         so that it applies to uclinux as well.
961
962 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
963
964         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
965         when on AAPCS.
966
967 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
968
969         * riscv-fbsd-nat.c (getregs_supplies): Return true for
970         RISCV_CSR_SSTATUS_REGNUM.
971
972 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
973
974         * source.c (open_source_file): Fix leak by transferring the
975         current s->fullname to the unique_xmalloc_ptr fullname given
976         to find_and_open_source.
977
978 2018-11-04  Tom Tromey  <tom@tromey.com>
979
980         * varobj.c (install_default_visualizer): Update.
981         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
982         Return gdbpy_ref.
983         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
984         (find_pretty_printer_from_progspace)
985         (find_pretty_printer_from_gdb, find_pretty_printer)
986         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
987         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
988         Update.
989
990 2018-11-04  Tom Tromey  <tom@tromey.com>
991
992         * python/python.c (gdbpy_parameter_value): Update.
993         * python/python-internal.h (python_string_to_unicode)
994         (python_string_to_target_python_string)
995         (host_string_to_python_string): Return gdbpy_ref.
996         * python/py-utils.c (python_string_to_unicode)
997         (unicode_to_encoded_python_string)
998         (unicode_to_target_python_string)
999         (python_string_to_target_string)
1000         (python_string_to_target_python_string): Return gdbpy_ref.
1001         (python_string_to_host_string): Update.
1002         (host_string_to_python_string): Return gdbpy_ref.
1003         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1004         (stpy_fullname): Update.
1005         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1006         Update.
1007         * python/py-prettyprint.c (print_string_repr): Update.
1008         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1009         (objfpy_get_build_id): Update.
1010         * python/py-breakpoint.c (bppy_get_location)
1011         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1012         Update.
1013
1014 2018-11-04  Tom Tromey  <tom@tromey.com>
1015
1016         * python/python-internal.h (gdb_py_object_from_longest)
1017         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1018         * python/py-value.c (valpy_int): Update.
1019         * python/py-utils.c (gdb_py_object_from_longest): Return
1020         gdbpy_ref.
1021         (gdb_py_object_from_ulongest): Likewise.
1022         * python/py-type.c (typy_get_alignof): Update.
1023         * python/py-linetable.c (ltpy_get_all_source_lines)
1024         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1025         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1026
1027 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1028
1029         * ada-lang.c (_initialize_ada_language): Fix typo.
1030
1031 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1032
1033         * language.c (type): Remove.
1034         (_initialize_language): Remove assignment to type.
1035
1036 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1037
1038         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1039         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1040         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1041         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1042         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1043         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1044         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1045         and aarch64-ravenscar-thread.o.
1046         * NEWS: Add entry documenting Ravenscar tasking support
1047         on AArch64 ELF.
1048
1049 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1050
1051         * symtab.c (info_functions_command): Initialize quiet flag.
1052         * stack.c (info_args_command): Likewise.
1053
1054 2018-11-01  Jim Wilson  <jimw@sifive.com>
1055
1056         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1057         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1058         debugging messages.
1059
1060 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1061
1062         * ada-lang.c (ada_watch_location_expression): New function.
1063         (ada_language_defn): Set la_watch_location_expression to
1064         ada_watch_location_expression.
1065
1066 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1067
1068         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1069
1070 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1071
1072         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1073         shifting.
1074
1075 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1076             Joel Brobecker  <brobecker@adacore.com>
1077
1078         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1079         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1080         * arm-pikeos-tdep.c: New file.
1081         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1082         embedded system.
1083         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1084
1085 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1086
1087         * common/pathstuff.c (get_standard_temp_dir): New.
1088         * common/pathstuff.h (get_standard_temp_dir): New.
1089         * config.in: Re-generate.
1090         * configure: Re-generate.
1091         * configure.ac: Don't check for mkdtemp.
1092         * gnulib/aclocal-m4-deps.mk: Re-generate.
1093         * gnulib/aclocal.m4: Re-generate.
1094         * gnulib/config.in: Re-generate.
1095         * gnulib/configure: Re-generate.
1096         * gnulib/import/Makefile.am: Re-generate.
1097         * gnulib/import/Makefile.in: Re-generate.
1098         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1099         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1100         * gnulib/import/m4/mkdtemp.m4: New file.
1101         * gnulib/import/mkdtemp.c: New file.
1102         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1103         Add mkdtemp module.
1104         * unittests/mkdir-recursive-selftests.c (test): Use
1105         get_standard_temp_dir.
1106         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1107         ifdef.
1108         * compile/compile.c (get_compile_file_tempdir): Likewise.
1109
1110 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1111
1112         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1113         (SIG_FRAME_LR_OFFSET64): New define.
1114         (SIG_FRAME_FP_OFFSET64): New define.
1115         (aix_sighandle_frame_cache): New Function.
1116         (aix_sighandle_frame_this_id): New Function.
1117         (aix_sighandle_frame_prev_register): New Function.
1118         (aix_sighandle_frame_sniffer): New Function.
1119         (aix_sighandle_frame_unwind): New global variable.
1120         (rs6000_aix_init_osabi): Install new frame unwinder.
1121
1122 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1123
1124         PR gdb/23835
1125         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1126         already defined.
1127
1128 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1129
1130         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1131
1132 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1133
1134         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1135         (producer_is_icc): New function.
1136         (check_producer): Set producer_is_icc field on dwarf2_cu.
1137         (dwarf2_init_integer_type): New function.
1138         (read_base_type): Call dwarf2_init_integer_type instead of
1139         init_integer_type in all cases.
1140         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1141         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1142         LEN is greater than 0.
1143
1144 2018-10-30  Tom Tromey  <tom@tromey.com>
1145
1146         * main.c (captured_main_1): Check return value of bfd_init.
1147
1148 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1149
1150         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1151         Adjust comments.
1152
1153 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1154
1155         * procfs.c: Include common/pathstuff.h.
1156
1157 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1158
1159         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1160         Add missing braces.  No functional change.
1161
1162 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1163
1164         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1165         to report a bad option and fix indentation.
1166         * demangle.c (demangle_command): Use report_unrecognized_option_error
1167         to report a bad option and correctly report the bad option.
1168
1169 2018-10-27  Tom Tromey  <tom@tromey.com>
1170
1171         PR cli/23364:
1172         * darwin-nat.c (copied_shell): New global.
1173         (may_have_sip): Rename from should_disable_startup_with_shell.
1174         (copy_shell_to_cache, maybe_cache_shell): New functions.
1175         (darwin_nat_target::create_inferior): Update.  Use
1176         copied_shell.
1177
1178 2018-10-27  Tom Tromey  <tom@tromey.com>
1179
1180         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1181         (run_tests): Call test_to_file.
1182         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1183         temporary files.
1184         * common/scoped_fd.h (scoped_fd::to_file): New method.
1185
1186 2018-10-27  Tom Tromey  <tom@tromey.com>
1187
1188         * unittests/scoped_mmap-selftests.c (test_normal): Use
1189         gdb_mkostemp_cloexec.
1190         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1191         Use gdb_mkostemp_cloexec.
1192         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1193         gnulib/config.in, gnulib/configure,
1194         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1195         gnulib/import/m4/gnulib-cache.m4,
1196         gnulib/import/m4/gnulib-comp.m4: Update.
1197         * gnulib/import/m4/mkostemp.m4: New file.
1198         * gnulib/import/m4/mkstemp.m4: Remove.
1199         * gnulib/import/mkostemp.c: New file.
1200         * gnulib/import/mkstemp.m4: Remove.
1201         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1202         mkstemp, add mkostemp.  Apply new patch.
1203         * gnulib/import/stdlib.in.h: Apply patch.
1204         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1205         New file.
1206         * dwarf-index-write.c (write_psymtabs_to_index): Use
1207         gdb_mkostemp_cloexec.
1208         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1209
1210 2018-10-27  Tom Tromey  <tom@tromey.com>
1211
1212         * unittests/mkdir-recursive-selftests.c: New file.
1213         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1214         unittests/mkdir-recursive-selftests.c.
1215         * dwarf-index-cache.c (mkdir_recursive): Move to
1216         common/filestuff.c.
1217         (index_cache::store): Check return value of mkdir_recursive.
1218         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1219         (_initialize_index_cache): Don't register test.
1220         * common/filestuff.h (mkdir_recursive): Declare.
1221         * common/filestuff.c (mkdir_recursive): Move from
1222         dwarf-index-cache.c.  Return bool.
1223
1224 2018-10-27  Tom Tromey  <tom@tromey.com>
1225
1226         * dwarf-index-write.c (write_psymtabs_to_index): Move
1227         make_temp_filename to common/pathstuff.c.
1228         * common/pathstuff.h (make_temp_filename): Declare.
1229         * common/pathstuff.c (make_temp_filename): New function, moved
1230         from dwarf-index-write.c.
1231
1232 2018-10-27  Tom Tromey  <tom@tromey.com>
1233
1234         * procfs.c (procfs_target::create_inferior): Use get_shell.
1235         * cli/cli-cmds.c (shell_escape): Use get_shell.
1236         * windows-nat.c (windows_nat_target::create_inferior): Use
1237         get_shell.
1238         * common/pathstuff.c (get_shell): New function.
1239         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1240         (fork_inferior): Use get_shell.
1241         * common/pathstuff.h (get_shell): Declare.
1242
1243 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1244
1245         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1246
1247 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1248
1249         * stack.c (print_variable_and_value_data): Add preg and treg.
1250         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1251         and update callers.
1252         (print_frame_arg_vars): Likewise.
1253         (prepare_reg): New function.
1254         (info_locals_command): Extract info print args and use them.
1255         (info_args_command): Likewise.
1256         (_initialize_stack): Modify on-line help.
1257         * symtab.c (treg_matches_sym_type_name): New function.
1258         (search_symbols): New arg t_regexp.
1259         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1260         (info_variables_command): Extract info print args and use them.
1261         (info_functions_command): Likewise.
1262         (info_types_command): Update call to symtab_symbol_info.
1263         (_initialize_symtab): Modify on-line help.
1264         * symtab.h (treg_matches_sym_type_name): New function.
1265         (search_symbols): New t_regexp arg.
1266
1267 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1268
1269         * cli-utils.c (extract_arg_maybe_quoted): New function.
1270         (extract_info_print_args): New function.
1271         (info_print_args_help): New function.
1272         (report_unrecognized_option_error): New function.
1273         * cli-utils.h (extract_arg_maybe_quoted): New function.
1274         (extract_info_print_args): New function.
1275         (info_print_args_help): New function.
1276         (report_unrecognized_option_error): New function.
1277
1278 2018-10-26  Tom Tromey  <tom@tromey.com>
1279
1280         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1281         (compute_compunit_symtab_includes): Update.
1282         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1283         (compunit_symtab_ptr): Likewise.
1284
1285 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1286
1287         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1288         default_print_auxv_entry for specific tag values.
1289
1290 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1291
1292         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1293
1294 2018-10-26  Jim Wilson  <jimw@sifive.com>
1295
1296         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1297         (riscv_linux_sigframe_init): Declare.
1298         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1299         (riscv_linux_sigframe): New.
1300         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1301         (riscv_linux_sigframe_init): Define.
1302         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1303
1304         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1305         (riscv_isa_flen): Likewise.  Drop static.
1306         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1307         (riscv_isa_flen): Likewise.  Declare.
1308
1309 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1310             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1311
1312         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1313         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1314         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1315         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1316         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1317         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1318         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1319         Define.
1320         (struct ppc_linux_features) <htm>: New field.
1321         (ppc_linux_no_features): Add initializer for htm field.
1322         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1323         new tdescs.
1324         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1325         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1326         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1327         Define if not already defined.
1328         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1329         and rs6000/powerpc-isa207-htm-vsx64l.
1330         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1331         rs6000/powerpc-isa207-htm-vsx64l.xml.
1332         * features/rs6000/power-htm-spr.xml: New file.
1333         * features/rs6000/power-htm-core.xml: New file.
1334         * features/rs6000/power64-htm-core.xml: New file.
1335         * features/rs6000/power-htm-fpu.xml: New file.
1336         * features/rs6000/power-htm-altivec.xml: New file.
1337         * features/rs6000/power-htm-vsx.xml: New file.
1338         * features/rs6000/power-htm-ppr.xml: New file.
1339         * features/rs6000/power-htm-dscr.xml: New file.
1340         * features/rs6000/power-htm-tar.xml: New file.
1341         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1342         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1343         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1344         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1345         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1346         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1347         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1348         fetch_regset with HTM regsets.
1349         (store_register, store_ppc_registers): Call store_regset with HTM
1350         regsets.
1351         (ppc_linux_nat_target::read_description): Set htm field in the
1352         features struct if needed.
1353         * ppc-linux-tdep.c: Include
1354         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1355         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1356         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1357         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1358         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1359         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1360         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1361         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1362         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1363         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1364         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1365         (ppc32_linux_ctarregset): New globals.
1366         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1367         (ppc_linux_collect_core_cpgrregset): New function.
1368         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1369         regsets.
1370         (ppc_linux_core_read_description): Check if the tm spr section is
1371         present and set htm in the features struct.
1372         (_initialize_ppc_linux_tdep): Call
1373         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1374         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1375         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1376         Declare.
1377         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1378         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1379         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1380         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1381         New fields.
1382         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1383         Likewise.
1384         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1385         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1386         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1387         New enum fields.
1388         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1389         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1390         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1391         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1392         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1393         <PPC_CTAR_REGNUM>: Likewise.
1394         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1395         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1396         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1397         (IS_CEFP_PSEUDOREG): Define.
1398         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1399         registers.  Return names for the checkpointed DFP, VSX, and EFP
1400         pseudo registers.
1401         (rs6000_pseudo_register_type): Remove initial assert and raise an
1402         internal error in the else clause instead.  Return types for the
1403         checkpointed DFP, VSX, and EFP pseudo registers.
1404         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1405         checkpointed DFP pseudo registers.
1406         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1407         checkpointed VSX pseudo registers.
1408         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1409         from efpr_pseudo_register_read and
1410         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1411         registers.
1412         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1413         Handle checkpointed DFP, VSX, and EFP registers.
1414         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1415         (efp_ax_pseudo_register_collect): New functions.
1416         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1417         register logic to new functions.  Handle checkpointed DFP, VSX,
1418         and EFP pseudo registers.
1419         (rs6000_gdbarch_init): Look for and validate the htm features.
1420         Include checkpointed DFP, VSX and EFP pseudo-registers.
1421         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1422         HTM registers.
1423
1424 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1425
1426         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1427         without altivec or fpu.
1428
1429 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1430             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1431
1432         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1433         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1434         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1435         Define if not already defined.
1436         * features/rs6000/power-ebb.xml: New file.
1437         * features/rs6000/power-linux-pmu.xml: New file.
1438         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1439         features.
1440         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1441         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1442         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1443         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1444         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1445         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1446         fetch_regset with ebb and pmu regsets.
1447         (store_register, store_ppc_registers): Call store_regset with ebb
1448         and pmu regsets.
1449         (ppc_linux_nat_target::read_description): Set isa207 field in the
1450         features struct if ebb and pmu are avaiable.
1451         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1452         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1453         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1454         and pmu regsets.
1455         (ppc_linux_core_read_description): Check if the pmu section is
1456         present and set isa207 in the features struct.
1457         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1458         (ppc32_linux_pmuregset): Declare.
1459         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1460         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1461         <ppc_sier_regnum>: New field.
1462         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1463         New enum values.
1464         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1465         values.
1466         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1467         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1468         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1469         ebb and pmu features.
1470
1471 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1472             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1473
1474         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1475         (tdesc_powerpc_isa207_vsx64l): Declare.
1476         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1477         (struct ppc_linux_features) <isa207>: New field.
1478         (ppc_linux_no_features): Add initializer for isa207 field.
1479         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1480         new tdescs.
1481         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1482         (NT_PPC_TAR): Define if not already defined.
1483         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1484         rs6000/powerpc-isa207-vsx64l.
1485         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1486         rs6000/powerpc-isa207-vsx64l.xml.
1487         * features/rs6000/power-tar.xml: New file.
1488         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1489         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1490         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1491         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1492         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1493         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1494         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1495         fetch_regset with the TAR regset.
1496         (store_register, store_ppc_registers): Call store_regset with the
1497         TAR regset.
1498         (ppc_linux_nat_target::read_description): Set isa207 field in the
1499         features struct if needed.
1500         * ppc-linux-tdep.c: Include
1501         features/rs6000/powerpc-isa207-vsx32l.c and
1502         features/rs6000/powerpc-isa207-vsx64l.c.
1503         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1504         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1505         regset.
1506         (ppc_linux_core_read_description): Check if the tar section is
1507         present and set isa207 in the features struct.
1508         (_initialize_ppc_linux_tdep): Call
1509         initialize_tdesc_powerpc_isa207_vsx32l and
1510         initialize_tdesc_powerpc_isa207_vsx64l.
1511         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1512         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1513         (enum) <PPC_TAR_REGNUM>: New enum value.
1514         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1515         feature.
1516         (ppc_process_record_op31): Record changes to TAR.
1517
1518 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1519             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1520
1521         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1522         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1523         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1524         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1525         (struct ppc_linux_features) <ppr_dscr>: New field.
1526         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1527         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1528         new tdescs.
1529         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1530         Define if not already defined.
1531         * features/Makefile (WHICH): Add
1532         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1533         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1534         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1535         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1536         * features/rs6000/power-dscr.xml: New file.
1537         * features/rs6000/power-ppr.xml: New file.
1538         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1539         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1540         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1541         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1542         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1543         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1544         * ppc-linux-nat.c: Include <sys/uio.h>.
1545         (fetch_regset, store_regset, check_regset): New functions.
1546         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1547         DSCR and PPR regsets.
1548         (store_register, store_ppc_registers): Call store_regset with
1549         DSCR and PPR regsets.
1550         (ppc_linux_get_hwcap2): New function.
1551         (ppc_linux_nat_target::read_description): Call
1552         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1553         features struct if needed.
1554         * ppc-linux-tdep.c: Include
1555         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1556         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1557         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1558         (ppc32_linux_dscrregset): New globals.
1559         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1560         and dscr regsets.
1561         (ppc_linux_core_read_description): Check if the ppr and dscr
1562         sections are present and set ppr_dscr in the features struct.
1563         (_initialize_ppc_linux_tdep): Call
1564         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1565         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1566         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1567         (ppc32_linux_dscrregset): Declare.
1568         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1569         <ppc_dscr_regnum>: New field.
1570         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1571         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1572         and dscr features.
1573         (ppc_process_record_op31): Record changes to PPR and DSCR.
1574
1575 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1576
1577         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1578         second initializer line for the have_* variables.  Initialize
1579         have_fpu to 0 instead of 1.
1580
1581 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1582
1583         * arch/ppc-linux-common.c (ppc_linux_match_description):
1584         Parenthesize tdesc assignements and indent them properly.
1585
1586 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1587
1588         * ppc-linux-nat.c (fetch_register): Change if statement to else
1589         if.
1590         (store_register): Likewise.
1591
1592 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1593
1594         * rs6000-tdep.c: Remove reggroups.h include.
1595         (rs6000_pseudo_register_reggroup_p): Remove.
1596         (rs6000_gdbarch_init): Remove call to
1597         set_tdesc_pseudo_register_reggroup_p.
1598
1599 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1600
1601         * reggroups.c (default_register_reggroup_p): Return true for
1602         decfloat registers and float_reggroup.
1603
1604 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1605
1606         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1607         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1608         ppc_linux_collect_vrregset by regcache_collect_regset.
1609
1610 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1611
1612         * linux-tdep.c (linux_collect_regset_section_cb): Use
1613         std::vector<gdb_byte> instead of char * and malloc for buf.
1614         Remove xfree.
1615
1616 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1617
1618         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1619         symtab_start instead of always using language_unknown.
1620
1621 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1622
1623         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1624         READ_P parameter, catch and ignore register access errors from
1625         either the old or new MISA location.
1626         (riscv_has_feature): Update call to riscv_read_misa_reg.
1627
1628 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1629
1630         * python/py-function.c (convert_values_to_python): Return
1631         gdbpy_ref<>.  Add header comment.
1632         (fnpy_call): Adjust.
1633
1634 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1635
1636         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1637         (cmdpy_completer_handle_brkchars): Adjust.
1638         (cmdpy_completer): Adjust.
1639
1640 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1641
1642         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1643         Pass correct regnum to raw_supply_zeroed.
1644
1645 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1646
1647         * regcache.c (cooked_read_test): Add CSKY to the list of
1648         architectures with a save_reggroup
1649
1650 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1651
1652         PR gdb/23368
1653         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1654         transfer terminal state from old new new inferior.
1655         * terminal.h (swap_terminal_info): New function.
1656         * inflow.c (swap_terminal_info): New function.
1657
1658 2018-10-23  Tom Tromey  <tom@tromey.com>
1659
1660         * record-btrace.c (get_thread_current_frame_id): Rename from
1661         get_thread_current_frame.  Return a frame_id.
1662         (record_btrace_start_replaying): Update.
1663
1664 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1665
1666         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1667         for CSRs.
1668
1669 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1670
1671         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1672         have_nonsteppable_watchpoint attribute to 1.
1673
1674 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1675
1676         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1677         register names.
1678         (struct register_alias): Rename to...
1679         (struct riscv_register_alias): ...this, and update comment.
1680         (riscv_register_aliases): Update type, and alias names.  Remove
1681         CSR names from this list.
1682         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1683         register names.  Add an extra assertion.
1684         (riscv_is_regnum_a_named_csr): New function.
1685         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1686
1687 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1688
1689         * configure.tgt: Add configuration for s12z.
1690         * s12z-tdep.c:  New file.
1691         * NEWS: Mention new target.
1692
1693 2018-10-22  Jim Wilson  <jimw@sifive.com>
1694
1695         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1696         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1697
1698         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1699         (riscv_register_type): Use them.
1700         (riscv_print_one_register_info): Handle union of floats same as float.
1701         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1702         riscv_fpreg_q_type fields.
1703
1704 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1705
1706         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1707         * gdbarch.h: Re-generate.
1708         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1709         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1710         * eval.c (evaluate_subexp_standard): Likewise.
1711         * findvar.c (value_of_register): Likewise.
1712         (value_of_register_lazy): Likewise.
1713         (address_from_register): Likewise.
1714         * frame.c (get_frame_register_bytes): Likewise.
1715         * gdbarch-selftests.c (register_to_value_test): Likewise.
1716         * h8300-tdep.c (h8300_register_type): Likewise.
1717         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1718         (i386_svr4_reg_to_regnum): Likewise.
1719         * infcmd.c (default_print_registers_info): Likewise.
1720         (registers_info): Likewise.
1721         (print_vector_info): Likewise.
1722         (default_print_float_info): Likewise.
1723         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1724         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1725         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1726         (mi_cmd_data_list_changed_registers): Likewise.
1727         (mi_cmd_data_list_register_values): Likewise.
1728         (mi_cmd_data_write_register_values): Likewise.
1729         (mi_cmd_trace_frame_collected): Likewise.
1730         * mips-tdep.c (print_gp_register_row): Likewise.
1731         (mips_print_registers_info): Likewise.
1732         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1733         * regcache.c (init_regcache_descr): Likewise.
1734         (register_size): Likewise.
1735         (register_dump::dump): Likewise.
1736         (cooked_read_test): Likewise.
1737         (cooked_write_test): Likewise.
1738         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1739         (rs6000_gdbarch_init): Likewise.
1740         * stabsread.c (stab_reg_to_regnum): Likewise.
1741         * stack.c (info_frame_command): Likewise.
1742         * target-descriptions.c (tdesc_register_name): Likewise.
1743         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1744         * tui/tui-regs.c (tui_show_register_group): Likewise.
1745         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1746         (user_reg_map_regnum_to_name): Likewise.
1747         (value_of_user_reg): Likewise.
1748         (maintenance_print_user_registers): Likewise.
1749         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1750         (xtensa_register_name): Likewise.
1751         (xtensa_register_type): Likewise.
1752         (xtensa_reg_to_regnum): Likewise.
1753         (xtensa_pseudo_register_read): Likewise.
1754         (xtensa_pseudo_register_write): Likewise.
1755
1756 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1757
1758         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1759         correctly-sized buffer with raw_read.
1760         (amd64_pseudo_register_write): Use correctly-sized buffer for
1761         raw_read/raw_write.
1762
1763 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1764
1765         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1766         in add_prefix_cmd of set print type.
1767
1768 2018-10-19  Tom Tromey  <tom@tromey.com>
1769
1770         PR tui/18388:
1771         * NEWS: Mention tabset deprecation.
1772         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1773         (update_tab_width): New function.
1774         (tui_set_tab_width, tui_show_tab_width): New functions.
1775         (tui_set_tab_width_command): Use update_tab_width.
1776         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1777         Add new "set tui tab-width" command.
1778         * tui/tui-source.c (tui_set_source_content): Update.
1779         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1780         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1781         Don't declare.
1782         (tui_tab_width): Declare.
1783         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1784         (tui_set_default_tab_len): Remove.
1785
1786 2018-10-19  Tom Tromey  <tom@tromey.com>
1787
1788         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1789         (key_is_backspace, tui_getc): Don't declare.
1790         * tui/tui-io.c (key_is_start_sequence): Now static.
1791         (key_is_end_sequence, key_is_backspace): Remove.
1792         (tui_getc): Now static.
1793
1794 2018-10-19  Tom Tromey  <tom@tromey.com>
1795
1796         * symfile.c (reread_symbols): Clear "static_links".
1797
1798 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1799
1800         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1801         define.
1802         (aarch64_linux_sigframe_init): Extra boundary checks.
1803
1804 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1805
1806         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1807         the possibly non-existent tdesc type 'vec128', but the type of raw
1808         register v16 instead.
1809
1810 2018-10-19  Gary Benson <gbenson@redhat.com>
1811
1812         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1813
1814 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1815
1816         PR cli/23785
1817         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1818         NULL.
1819
1820 2018-10-17  Paul Koning  <paul_koning@dell.com>
1821
1822         * charset.c (convert_between_encodings): Fix unsigned overflow.
1823
1824 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1825
1826         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1827         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1828         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1829         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1830         New functions.
1831         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1832         and fbsd_info_proc_mappings_header.
1833         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1834         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1835         New.
1836
1837 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1838
1839         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1840         Solaris Maintainer.
1841
1842 2018-10-15  Tom Tromey  <tom@tromey.com>
1843
1844         * tui/tui.c (strcat_to_buf): Remove casts.
1845         * tui/tui-winsource.c (tui_show_source_line)
1846         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1847         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1848         * tui/tui-windata.c (tui_first_data_item_displayed)
1849         (tui_delete_data_content_windows, tui_erase_data_content)
1850         (tui_display_all_data, tui_display_data_from)
1851         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1852         * tui/tui-win.c (tui_set_win_height)
1853         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1854         casts.
1855         * tui/tui-win.c (tui_resize_all): Remove casts.
1856         (tui_scroll_backward_command, tui_set_focus)
1857         (tui_set_tab_width_command): Likewise.
1858         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1859         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1860         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1861         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1862         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1863         Remove casts.
1864
1865 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1866
1867         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1868         AArch64/ARM maintainer.
1869
1870 2018-10-11  Gary Benson <gbenson@redhat.com>
1871
1872         * interps.h (interp::m_name): Make private and mutable.
1873         * interps.c (interp::~interp): Free m_name.
1874
1875 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1876             Simon Marchi <simark@simark.ca>
1877
1878         * README (`configure' options): Add documentation for new
1879         "--enable-unit-tests" option.
1880         * acinclude.m4: Include "selftest.m4".
1881         * configure: Regenerate.
1882         * configure.ac: Use "GDB_AC_SELFTEST".
1883         * maint.c (maintenance_selftest): Update message informing
1884         that selftests have been disabled.
1885         (maintenance_info_selftests): Likewise.
1886         * selftest.m4: New file.
1887
1888 2018-10-10  Gary Benson <gbenson@redhat.com>
1889
1890         * remote.c (remote_target::remote_send_printf): Add
1891         missing va_end found by Coverity.
1892
1893 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1894
1895         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1896
1897 2018-10-09  Tom Tromey  <tom@tromey.com>
1898
1899         * configure: Rebuild.
1900         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1901         * NEWS: Update --enable-ubsan documentation.
1902
1903 2018-10-09  Gary Benson <gbenson@redhat.com>
1904
1905         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1906         found by Coverity.
1907
1908 2018-10-08  Tom Tromey  <tom@tromey.com>
1909
1910         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1911         variable.
1912         (riscv_fbsd_init_abi): Likewise.
1913
1914 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1915         * valops.c (value_struct_elt_for_reference): Rename local variable
1916         to work around the shadowing a previous local warning.
1917
1918 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1919
1920         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1921         * NEWS: Mention new FreeBSD/riscv native configuration.
1922         * configure.host: Add riscv*-*-freebsd*.
1923         * configure.nat: Likewise.
1924         * riscv-fbsd-nat.c: New file.
1925
1926 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1927
1928         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1929         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1930         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1931         * NEWS: Mention new FreeBSD/riscv target.
1932         * configure.tgt: Add riscv*-*-freebsd*.
1933         * riscv-fbsd-tdep.c: New file.
1934         * riscv-fbsd-tdep.h: New file.
1935
1936 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1937
1938         * regcache.h (struct regcache_map_entry): Note that this type can
1939         be used with traditional frame caches.
1940         * trad-frame.c (trad_frame_set_reg_regmap): New.
1941         * trad-frame.h (trad_frame_set_reg_regmap): New.
1942
1943 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1944
1945         PR c++/16841
1946         * valops.c (get_virtual_base_offset): New function.
1947         (value_struct_elt_for_reference): Use it to get virtual base offset
1948         and add it in calculating class member address.
1949
1950 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1951
1952         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1953         (check_producer): Check if the producer is codewarrior.
1954         (producer_is_codewarrior): New function.
1955         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1956         produced by codewarrior.
1957         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1958
1959 2018-10-06  Tom Tromey  <tom@tromey.com>
1960
1961         PR python/19399:
1962         * python/py-inferior.c: Add "architecture" entry.
1963         (infpy_architecture): New function.
1964
1965 2018-10-06  Tom Tromey  <tom@tromey.com>
1966
1967         PR python/21765:
1968         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1969         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1970         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1971         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1972
1973 2018-10-06  Tom Tromey  <tom@tromey.com>
1974
1975         PR build/17077:
1976         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1977         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1978         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1979         #include.
1980
1981 2018-10-06  Tom Tromey  <tom@tromey.com>
1982
1983         * python/py-breakpoint.c (bppy_get_location): Handle a
1984         bp_breakpoint without a location.
1985
1986 2018-10-06  Tom Tromey  <tom@tromey.com>
1987
1988         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1989         (_RegEx): Reformat help text.
1990         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1991         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1992         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1993         text.
1994         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1995         (EnableXMethod, DisableXMethod): Remove help indentation.
1996         Capitalize meta-syntactic variables.
1997         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1998         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1999         Capitalize meta-syntactic variables.
2000         * python/lib/gdb/command/explore.py (ExploreCommand)
2001         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2002         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2003         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2004         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2005         Remove help indentation.
2006         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2007         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2008         (DisableFrameFilter, SetFrameFilterPriority)
2009         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2010
2011 2018-10-06  Tom Tromey  <tom@tromey.com>
2012
2013         PR tui/28819:
2014         * tui/tui-io.c (gdb_wgetch): New function.
2015         (tui_mld_getc, tui_getc): Use it.
2016
2017 2018-10-05  Tom Tromey  <tom@tromey.com>
2018
2019         * sol-thread.c (sol_thread_target::wait): Rename inner
2020         "save_ptid".
2021
2022 2018-10-04  Tom Tromey  <tom@tromey.com>
2023
2024         * configure: Rebuild.
2025         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2026
2027 2018-10-04  Tom Tromey  <tom@tromey.com>
2028
2029         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2030         declaration of "block".
2031
2032 2018-10-04  Tom Tromey  <tom@tromey.com>
2033
2034         * common/filestuff.c (fdwalk): Remove inner declaration of
2035         "result".
2036
2037 2018-10-04  Tom Tromey  <tom@tromey.com>
2038
2039         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2040         "structs_addr" and hoist declaration.
2041
2042 2018-10-04  Tom Tromey  <tom@tromey.com>
2043
2044         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2045         variable "size".
2046
2047 2018-10-04  Tom Tromey  <tom@tromey.com>
2048
2049         * mdebugread.c (parse_partial_symbols): Use std::string.
2050
2051 2018-10-04  Tom Tromey  <tom@tromey.com>
2052
2053         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2054         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2055         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2056         header.
2057         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2058         more inner scope.
2059         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2060         * varobj.c (varobj_update): Rename inner "newobj",
2061         "type_changed".
2062         * valprint.c (generic_emit_char): Rename inner "buf".
2063         * valops.c (find_overload_match): Rename inner "temp".
2064         (value_struct_elt_for_reference): Declare "v" in more inner
2065         scope.
2066         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2067         * unittests/array-view-selftests.c (run_tests): Rename inner
2068         "vec".
2069         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2070         header.
2071         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2072         "tsv" in more inner scope.
2073         (print_one_static_tracepoint_marker): Rename inner
2074         "tuple_emitter".
2075         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2076         (tic6x_push_dummy_call): Don't redeclare "addr".
2077         * target-float.c: Declare "dto" lower.
2078         * symtab.c (lookup_local_symbol): Rename inner "sym".
2079         (find_pc_sect_line): Rename inner "pc".
2080         * stack.c (print_frame): Don't redeclare "gdbarch".
2081         (return_command): Rename inner "gdbarch".
2082         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2083         "sp".
2084         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2085         header.
2086         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2087         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2088         scope.
2089         * remote.c (remote_target::update_thread_list): Don't redeclare
2090         "tp".
2091         (remote_target::process_initial_stop_replies): Rename inner
2092         "thread".
2093         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2094         (remote_target::wait_as): Don't redeclare "stop_reply".
2095         (remote_target::get_thread_local_address): Rename inner
2096         "result".
2097         (remote_target::get_tib_address): Likewise.
2098
2099         * regcache.c (cooked_read_test): Rename "regnum".
2100         * record-btrace.c (cmd_record_btrace_start): Rename inner
2101         "exception".
2102         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2103         loop header.
2104         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2105         header.
2106         (ppu2spu_sniffer): Rename inner "buf".
2107         * parse.c (operator_check_standard): Rename inner "type",
2108         "objfile".
2109         * p-valprint.c (pascal_val_print): Introduce new scope for
2110         "low_bound", "high_bound".
2111         * p-exp.y (yylex): Declare "i" in loop header.
2112         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2113         Lower declaration of "s".
2114         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2115         header.
2116         (nios2_push_dummy_call): Rename "len".
2117         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2118         "buf".
2119         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2120         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2121         (linux_xfer_osdata_modules): Likewise.
2122         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2123         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2124         (mips_o64_push_dummy_call): Likewise.
2125         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2126         "op".
2127         * mi/mi-main.c (list_available_thread_groups): Rename inner
2128         "tuple_emitter".
2129         (mi_cmd_data_read_memory): Rename inner "opts".
2130         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2131         "tuple_emitter".
2132         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2133         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2134         more inner scope.
2135         (parse_partial_symbols): Rename inner "pst", "p", "name"
2136         * main.c (captured_main_1): Rename inner "i"s.
2137         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2138         "oso2".
2139         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2140         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2141         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2142         (handle_signal_stop): Rename inner "gdbarch".
2143         (handle_command): Declare "signum" in loop header.
2144         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2145         "status".
2146         (examine_prologue): Rename inner "sol" and "sof".
2147         (ia64_extract_return_value): Rename inner "val".  Declare another
2148         "val" in a more inner scope.
2149         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2150         inner scope.
2151         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2152         "except".
2153         * findvar.c (default_read_var_value): Don't redeclare "addr".
2154         * f-exp.y (yylex): Declare "i" in loop header.
2155         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2156         Rename inner "type", "expect_type".
2157         (evaluate_subexp_for_sizeof): Rename inner "pc".
2158         * elfread.c (elf_symfile_read): Rename inner "abfd".
2159         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2160         "bytes_read".
2161         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2162         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2163         (dwarf_decode_line_header): Rename inner "lh".
2164         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2165         "offset".  Declare "i" in loop header.
2166         (disassemble_dwarf_expression): Rename inner "addr_size".
2167         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2168         inner "result".
2169         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2170         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2171         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2172         "inner_list_emitter".
2173         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2174         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2175         declaration in a block.
2176         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2177         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2178         "obstack_final_size".
2179         * cp-support.c (inspect_type): Declare "i" in loop header.
2180         * compile/compile.c (compile_instance::insert_symbol_error):
2181         Rename inner "e".
2182         * common/agent.c (agent_run_command): Remove inner "ret"
2183         declaration.
2184         * coffread.c (coff_symfile_read): Rename inner "name".
2185         (coff_symfile_read): Rename inner "abfd".
2186         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2187         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2188         "high".
2189         * c-exp.y (lex_one_token): Move "len" declaration lower.
2190         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2191         "gdbarch".
2192         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2193         "b".
2194         (watch_command_1): Declare "mark" later.
2195         (clear_command): Don't shadow "a" or "b".
2196         (delete_command): Rename inner "b".
2197         (delete_trace_command): Likewise.
2198         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2199         "op".
2200         (arm_gdbarch_init): Remove inner "e_flags".
2201         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2202         "offset" in inner blocks.
2203
2204 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2205
2206         * dwarf-index-write.c (file_write): Don't write if the vector is
2207         empty.
2208
2209 2018-10-05  Tom de Vries  <tdevries@suse.de>
2210
2211         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2212         PyArg_ParseTuple call.
2213
2214 2018-10-05  Tom de Vries  <tdevries@suse.de>
2215
2216         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2217         PyArg_ParseTuple call.
2218
2219 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2220
2221         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2222         to avoid exceeding 80 characters per line limit.
2223
2224 2018-10-04  Tom Tromey  <tom@tromey.com>
2225
2226         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2227         (reread_symbols): Update.
2228         * complaints.h (clear_complaints): Remove argument.
2229         * complaints.c (enum complaint_series): Remove.
2230         (series): Remove global.
2231         (complaint_internal): Update.
2232         (clear_complaints): Remove argument.
2233
2234 2018-10-04  Tom Tromey  <tom@tromey.com>
2235
2236         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2237         debugging symbols" message if there is a separate debug objfile.
2238
2239 2018-10-04  Tom Tromey  <tom@tromey.com>
2240
2241         PR cli/19551:
2242         * symfile.c (symbol_file_add_with_addrs): Update output.
2243         * psymtab.c (require_partial_symbols): Update output.
2244
2245 2018-10-04  Tom Tromey  <tom@tromey.com>
2246
2247         PR cli/22234:
2248         * complaints.c: Emit \n.
2249
2250 2018-10-04  Tom Tromey  <tom@tromey.com>
2251
2252         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2253         (separate_debug_file_exists, find_separate_debug_file)
2254         (add_symbol_file_command, reread_symbols, allocate_symtab)
2255         (allocate_compunit_symtab): Use filtered printing, not
2256         unfiltered.
2257         * psymtab.c (require_partial_symbols, dump_psymtab)
2258         (allocate_psymtab): Use filtered printing, not unfiltered.
2259
2260 2018-10-04  Tom Tromey  <tom@tromey.com>
2261
2262         * complaints.c (complaint_internal): Correctly check complaint
2263         count.
2264
2265 2018-10-04  Tom Tromey  <tom@tromey.com>
2266
2267         * complaints.h (struct complaints): Remove declaration.
2268         * complaints.c (clear_complaints): Remove an unused variable.
2269
2270 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2271
2272         * MAINTAINERS (Write After Approval): Add self.
2273
2274 2018-10-03  Tom Tromey  <tom@tromey.com>
2275
2276         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2277         "buffer_contents".
2278         * coffread.c (coff_symtab_read): Initialize "newobj".
2279
2280 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2281
2282         * dwarf2read.c (read_func_scope): Remove struct keyword in
2283         range-based for.
2284
2285 2018-10-03  Tom Tromey  <tom@tromey.com>
2286
2287         * README: Mention --enable-ubsan.
2288         * NEWS: Mention --enable-ubsan.
2289         * acinclude.m4: Include sanitize.m4.
2290         * configure: Rebuild.
2291         * configure.ac: Call AM_GDB_UBSAN.
2292         * sanitize.m4: New file.
2293
2294 2018-10-03  Tom Tromey  <tom@tromey.com>
2295
2296         * expression.h (enum exp_opcode): Use uint8_t as base type.
2297         * expprint.c (op_name): Handle invalid opcodes.
2298
2299 2018-10-03  Tom Tromey  <tom@tromey.com>
2300
2301         * parse.c (prefixify_expression): Add assert.
2302         (parse_exp_in_context_1): Throw exception if the expression is
2303         empty.
2304
2305 2018-10-03  Tom Tromey  <tom@tromey.com>
2306
2307         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2308
2309 2018-10-03  Tom Tromey  <tom@tromey.com>
2310
2311         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2312
2313 2018-10-03  Tom Tromey  <tom@tromey.com>
2314
2315         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2316         unsigned.
2317
2318 2018-10-03  Tom Tromey  <tom@tromey.com>
2319
2320         * findvar.c (extract_integer): Do work in an unsigned type.
2321
2322 2018-10-03  Tom Tromey  <tom@tromey.com>
2323
2324         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2325         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2326         base type.
2327         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2328         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2329         type.
2330         * c-lang.h (enum c_string_type_values): Use unsigned as base
2331         type.
2332         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2333
2334 2018-10-03  Tom Tromey  <tom@tromey.com>
2335
2336         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2337         <~dwarf2_frame_state_reg_info>: Update.
2338         <dwarf2_frame_state_reg_info>: Update.
2339         <alloc_regs>: Add assertion.  Update.
2340         <reg>: Now a std::vector.
2341         <num_regs>: Remove.
2342         <swap>: Update.
2343         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2344         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2345
2346 2018-10-03  Tom Tromey  <tom@tromey.com>
2347
2348         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2349
2350 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2351
2352         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2353
2354 2018-10-02  Tom Tromey  <tom@tromey.com>
2355
2356         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2357
2358 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2359
2360         * NEWS: Mention changed commands.
2361         * ser-uds.c: New file.
2362         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2363         * configure: Regenerate.
2364         * Makefile.in: Add new file.
2365         * serial.c (serial_open): Check if filename is a socket
2366         and lookup the appropriate interface accordingly.
2367
2368 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2369
2370         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2371         define.
2372         (AARCH64_EXTRA_MAGIC): Likewise.
2373         (AARCH64_FPSIMD_MAGIC): Likewise.
2374         (AARCH64_SVE_MAGIC): Likewise.
2375         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2376         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2377         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2378         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2379         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2380         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2381         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2382         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2383         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2384         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2385         (read_aarch64_ctx): Add function.
2386         (aarch64_linux_sigframe_init): Detect FP registers.
2387
2388 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2389
2390         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2391         (AARCH64_D0_REGNUM): Likewise.
2392         (AARCH64_S0_REGNUM): Likewise.
2393         (AARCH64_H0_REGNUM): Likewise.
2394         (AARCH64_B0_REGNUM): Likewise.
2395         (AARCH64_SVE_V0_REGNUM): Likewise.
2396         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2397         (AARCH64_D0_REGNUM): Likewise.
2398         (AARCH64_S0_REGNUM): Likewise.
2399         (AARCH64_H0_REGNUM): Likewise.
2400         (AARCH64_B0_REGNUM): Likewise.
2401         (AARCH64_SVE_V0_REGNUM): Likewise.
2402
2403 2018-10-01  Gary Benson <gbenson@redhat.com>
2404
2405         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2406         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2407         prfpregset_t instead of gdb_prfpregset_t.
2408         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2409         * configure, config.in: Rebuild.
2410
2411 2018-10-01  Gary Benson <gbenson@redhat.com>
2412
2413         * common/gdb_proc_service.h: New file, factored out from...
2414         * gdb_proc_service.h: Moved common code to the above file.
2415         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2416
2417 2018-10-01  Gary Benson <gbenson@redhat.com>
2418
2419         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2420         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2421
2422 2018-10-01  Gary Benson <gbenson@redhat.com>
2423
2424         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2425         (AC_CHECK_HEADERS): Check for linux/elf.h.
2426         * configure, config.in: Rebuild.
2427         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2428         doesn't define elf_fpregset_t.
2429
2430 2018-10-01  Gary Benson <gbenson@redhat.com>
2431
2432         * gdb_proc_service.h: Whitespace change.
2433
2434 2018-10-01  Tom Tromey  <tom@tromey.com>
2435
2436         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2437         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2438         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2439
2440 2018-10-01  Tom Tromey  <tom@tromey.com>
2441
2442         * README: Minor change.
2443
2444 2018-09-30  Pedro Alves  <palves@redhat.com>
2445
2446         * darwin-nat-info.c (darwin_debug_regions_recurse)
2447         (info_mach_exceptions_command): Remove unused local variables.
2448         * darwin-nat.c (darwin_decode_notify_message)
2449         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2450         (darwin_stop_inferior, darwin_setup_exceptions)
2451         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2452         (darwin_nat_target::attach, darwin_nat_target::detach)
2453         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2454         local variables.
2455         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2456         variables.
2457
2458 2018-09-29  Tom Tromey  <tom@tromey.com>
2459
2460         * README: Remove some leftover text.
2461
2462 2018-09-29  Tom Tromey  <tom@tromey.com>
2463
2464         * PROBLEMS: Rewrite.
2465         * README: Update.
2466
2467 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2468
2469         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2470         case with explicit breakpoint kind.
2471         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2472         'additional_info' and related logic.
2473         (riscv_debug_breakpoints): New variable.
2474         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2475         instruction to determine the breakpoint kind.
2476         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2477         flag.  Update description of 'set/show riscv
2478         use-compressed-breakpoints' flag.
2479
2480 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2481
2482         (NEWS): Mention changes to frame related commands.
2483         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2484         (add_prefix_cmd_suppress_notification): New function.
2485         (add_com_suppress_notification): Call
2486         add_cmd_suppress_notification.
2487         * command.h (add_cmd_suppress_notification): Declare.
2488         (add_prefix_cmd_suppress_notification): Declare.
2489         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2490         (parse_frame_specification): Moved from stack.c, with
2491         simplification to handle a single argument.
2492         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2493         switch to the selected frame.  Add a header comment.
2494         * stack.c: Remove 'safe-ctype.h' include.
2495         (find_frame_for_function): Add declaration.
2496         (find_frame_for_address): New function.
2497         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2498         (frame_selection_by_function_completer): New function.
2499         (info_frame_command): Rename to...
2500         (info_frame_command_core): ...this, and update parameter types.
2501         (select_frame_command): Rename to...
2502         (select_frame_command_core): ...this, and update parameter types.
2503         (frame_command): Rename to...
2504         (frame_command_core): ...this, and update parameter types.
2505         (class frame_command_helper): New class to wrap implementations of
2506         frame related sub-commands.
2507         (frame_apply_cmd_list): New static global.
2508         (frame_cmd_list): Make static.
2509         (select_frame_cmd_list): New global for sub-commands.
2510         (info_frame_cmd_list): New global for sub-commands.
2511         (_initialize_stack): Register sub-commands for 'frame',
2512         'select-frame', and 'info frame'.  Update 'frame apply' commands
2513         to use frame_apply_cmd_list.  Move function local static
2514         frame_apply_list to file static frame_apply_cmd_list for
2515         consistency.
2516         * stack.h (select_frame_command): Delete declarationn.
2517         (select_frame_for_mi): Declare new function.
2518
2519 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2520
2521         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2522         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2523         and NOP.
2524
2525 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2526
2527         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2528
2529 2018-09-26  Tom Tromey  <tom@tromey.com>
2530
2531         * valops.c (auto_abandon): Remove dead code.
2532
2533 2018-09-26  Tom Tromey  <tom@tromey.com>
2534
2535         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2536
2537 2018-09-24  Tom Tromey  <tom@tromey.com>
2538
2539         * common/pathstuff.c (get_standard_cache_dir): Make
2540         "xdg_cache_home" and "home" const.
2541         * top.c (init_history): Make "tmpenv" const.
2542         * main.c (get_init_files): Make "homedir" const.
2543
2544 2018-09-23  Tom Tromey  <tom@tromey.com>
2545
2546         PR python/18852:
2547         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2548
2549 2018-09-23  Tom Tromey  <tom@tromey.com>
2550
2551         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2552         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2553         * python/python-internal.h (gdbpy_handle_exception): Declare.
2554         * python/py-utils.c (gdbpy_handle_exception): New function.
2555
2556 2018-09-23  Tom Tromey  <tom@tromey.com>
2557
2558         PR python/17284:
2559         * python/py-type.c (typy_template_argument): Check for negative
2560         argument number.
2561
2562 2018-09-23  Tom Tromey  <tom@tromey.com>
2563
2564         PR python/14062:
2565         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2566
2567 2018-09-23  Tom Tromey  <tom@tromey.com>
2568
2569         PR python/18170:
2570         * python/py-value.c (valpy_int): Allow conversion from pointer
2571         type.
2572
2573 2018-09-23  Tom Tromey  <tom@tromey.com>
2574
2575         PR python/20126:
2576         * python/py-value.c (valpy_int): Respect type sign.
2577
2578 2018-09-23  Tom Tromey  <tom@tromey.com>
2579
2580         PR python/18352;
2581         * python/py-value.c (valpy_float): Allow conversions from int or
2582         char.
2583         (valpy_int, valpy_long): Allow conversions from float.
2584
2585 2018-09-23  Tom Tromey  <tom@tromey.com>
2586
2587         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2588         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2589
2590 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2591
2592         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2593         __sighndlr.
2594         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2595
2596 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2597
2598         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2599         target_terminal::ours().
2600
2601 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2602
2603         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2604         of vl to ULONGEST.
2605
2606 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2607
2608         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2609         redundant condition.
2610
2611 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2612
2613         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2614
2615         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2616         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2617         * sol-thread.c (ps_pdmodel): Don't guard definition.
2618
2619         * procfs.c: Fix formatting.
2620
2621         * procfs.c (sysset_t_alloc): Remove.
2622         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2623         (procfs_debug_inferior): Likewise.
2624         (procfs_set_exec_trap): Likewise.
2625         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2626         (proc_set_traced_sysexit): Likewise.
2627
2628         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2629         (dead_procinfo): Likewise.
2630         (proc_warn): Likewise.
2631         (proc_error): Likewise.
2632         (proc_get_LDT_entry): Likewise.
2633         (do_attach): Likewise.
2634         (procfs_target::pid_to_str): Likewise.
2635         (iterate_over_mappings): Likewise.
2636
2637         * procfs.c (create_procinfo): Fix ARI warning.
2638         (proc_get_status): Likewise.
2639         (proc_stop_process): Likewise.
2640         (proc_run_process): Likewise.
2641         (proc_kill): Likewise.
2642         (proc_get_LDT_entry): Likewise.
2643         (procfs_find_LDT_entry): Likewise.
2644         (proc_update_threads): Likewise.
2645         (proc_iterate_over_threads): Likewise.
2646         (do_attach): Likewise.
2647         (procfs_xfer_memory): Likewise.
2648         (invalidate_cache): Likewise.
2649         (procfs_target::resume): Likewise.
2650         (procfs_init_inferior): Likewise.
2651         (procfs_set_exec_trap): Likewise.
2652         (procfs_target::thread_alive): Likewise.
2653         (procfs_target::pid_to_exec_file): Likewise.
2654         (iterate_over_mappings): Likewise.
2655         (procfs_target::make_corefile_notes): Likewise.
2656         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2657
2658         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2659         (procfs_find_LDT_entry): Likewise.
2660         * sol-thread.c (ps_lgetLDT): Likewise.
2661
2662 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2663
2664         PR tdep/17903
2665         * procfs.c (procfs_target): Declare pid_to_exec_file.
2666         (procfs_target::pid_to_exec_file): New.
2667
2668 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2669
2670         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2671         renaming.
2672         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2673         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2674
2675 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2676
2677         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2678         (supply_fpregset, fill_fpregset): Move ...
2679         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2680         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2681         Remove references to ioctl-based procfs.
2682         Include <sys/reg.h>.
2683         Remove PR_MODEL_NATIVE guards.
2684         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2685         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2686
2687 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2688
2689         PR gdb/20981:
2690         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2691         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2692         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2693
2694 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2695
2696         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2697         (fbsd_print_sockaddr_in6): Likewise.
2698
2699 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2700             Chris January  <chris.january@arm.com>
2701
2702         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2703         (evaluate_subexp_standard): Return a dummy type when
2704         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2705         OP_F77_UNDETERMINED_ARGLIST case.
2706         * expression.h (enum noside): Update comment.
2707
2708 2018-09-19  George Vasick <george.vasick@oracle.com>
2709
2710         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2711
2712 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2713             April Chin <april.chin@oracle.com>
2714             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2715
2716         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2717         uint_t lwpid_t.
2718         (create_procinfo): Print pids in /proc without leading zeros.
2719
2720 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2721
2722         * nios2-tdep.c (nios2_gcc_target_options): New.
2723         (nios2_gdb_arch_init): Install new hook.
2724
2725 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2726
2727         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2728         New file.
2729         * update-gnulib.sh: Apply patch.
2730         * configure: Re-generate.
2731
2732 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2733
2734         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2735         description.  Make "info proc" command descriptions more
2736         consistent.
2737
2738 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2739
2740         * NEWS: Mention 'info proc files' command.
2741
2742 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2743
2744         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2745         descriptors for IP_FILES and IP_ALL.
2746
2747 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2748
2749         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2750         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2751         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2752         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2753         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2754         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2755         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2756         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2757         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2758         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2759         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2760         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2761         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2762         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2763         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2764         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2765         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2766         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2767         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2768         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2769         (struct fbsd_sockaddr_un): New types.
2770         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2771         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2772         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2773         (fbsd_core_info_proc_files): New functions.
2774         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2775         IP_ALL.
2776         * fbsd-tdep.h (fbsd_info_proc_files_header)
2777         (fbsd_info_proc_files_entry): New.
2778
2779 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2780
2781         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2782         * infcmd.c (info_proc_cmd_files): New function.
2783         (_initialize_infcmd): Register 'info proc files' command.
2784
2785 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2786
2787         * gnulib/aclocal-m4-deps.mk: Re-generate.
2788         * gnulib/aclocal.m4: Re-generate.
2789         * gnulib/config.in: Re-generate.
2790         * gnulib/configure: Re-generate.
2791         * gnulib/import/Makefile.am: Re-generate.
2792         * gnulib/import/Makefile.in: Re-generate.
2793         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2794         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2795         * gnulib/import/arpa_inet.in.h: New file.
2796         * gnulib/import/inet_ntop.c: New file.
2797         * gnulib/import/m4/arpa_inet_h.m4: New file.
2798         * gnulib/import/m4/inet_ntop.m4: New file.
2799         * gnulib/import/m4/netinet_in_h.m4: New file.
2800         * gnulib/import/m4/socklen.m4: New file.
2801         * gnulib/import/m4/sockpfaf.m4: New file.
2802         * gnulib/import/m4/stdalign.m4: New file.
2803         * gnulib/import/m4/sys_uio_h.m4: New file.
2804         * gnulib/import/netinet_in.in.h: New file.
2805         * gnulib/import/stdalign.in.h: New file.
2806         * gnulib/import/sys_socket.c: New file.
2807         * gnulib/import/sys_socket.in.h: New file.
2808         * gnulib/import/sys_uio.in.h: New file.
2809         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2810         module.
2811
2812 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2813
2814         * gnulib/aclocal-m4-deps.mk: New file.
2815         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2816         deterministically.
2817
2818 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2819
2820         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2821         KVE_PATH.
2822
2823 2018-09-18  Tom Tromey  <tom@tromey.com>
2824
2825         * compile/compile-object-load.c (struct
2826         link_hash_table_cleanup_data): Add constructor and destructor.
2827         Use DISABLE_COPY_AND_ASSIGN.
2828         (~link_hash_table_cleanup_data): Rename from
2829         link_hash_table_free.  Now a destructor.
2830         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2831
2832 2018-09-18  Tom Tromey  <tom@tromey.com>
2833
2834         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2835         * compile/compile-object-load.c (struct munmap_list): Move to
2836         header file.
2837         (munmap_list::add): Rename from munmap_list_add; rewrite.
2838         (munmap_list::~munmap_list): Rename from munmap_list_free.
2839         (munmap_listp_free_cleanup): Remove.
2840         (compile_object_load): Update.
2841         * compile/compile-object-load.h (struct munmap_list): Move from
2842         compile-object-load.c.  Rewrite.
2843
2844 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2845
2846         * aarch64-tdep.c (pass_in_v): Use register size.
2847         (aarch64_extract_return_value): Likewise.
2848         (aarch64_store_return_value): Likewise.
2849
2850 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2851
2852         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2853         rlim_t.
2854
2855 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2856
2857         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2858         Fix short help line.
2859
2860 2018-09-17  Tom Tromey  <tom@tromey.com>
2861
2862         PR python/20445:
2863         * configure: Rebuild.
2864         * configure.ac: Conditionally use -DNDEBUG for Python.
2865
2866 2018-09-17  Tom Tromey  <tom@tromey.com>
2867
2868         * configure: Rebuild.
2869         * configure.ac: Use gmp as a library dependency when checking for
2870         mpfr.
2871
2872 2018-09-17  Pedro Alves  <palves@redhat.com>
2873
2874         * python/py-inferior.c (find_inferior_object): Delete.
2875
2876 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2877
2878         * compile/compile-cplus-types.c
2879         (compile_cplus_instance::enter_scope): Don't use new_scope after
2880         std::move.
2881
2882 2018-09-17  Tom Tromey  <tom@tromey.com>
2883
2884         * common/pathstuff.c (get_standard_cache_dir): Use
2885         ~/Library/Caches on macOS.
2886         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2887
2888 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2889
2890         PR python/23669
2891         * breakpoint.c (commands_cmd_element): New.
2892         (_initialize_breakpoint): Assign commands_cmd_element.
2893         * breakpoint.h (commands_cmd_element): New.
2894         * cli/cli-script.c (while_cmd_element, if_command,
2895         define_cmd_element): New.
2896         (command_name_equals): Remove.
2897         (process_next_line): Compare commands by pointer, not by name.
2898         (_initialize_cli_script): Assign the various cmd_list_element
2899         variables.
2900         * compile/compile.c (compile_cmd_element): New.
2901         (_initialize_compile): Assign compile_cmd_element.
2902         * compile/compile.h (compile_cmd_element): New.
2903         * guile/guile.c (guile_cmd_element): New.
2904         (install_gdb_commands): Assign guile_cmd_element.
2905         * guile/guile.h (guile_cmd_element): New.
2906         * python/python.c (python_cmd_element): New.
2907         (_initialize_python): Assign python_cmd_element.
2908         * python/python.h (python_cmd_element): New.
2909         * tracepoint.c (while_stepping_cmd_element): New.
2910         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2911         * tracepoint.h (while_stepping_cmd_element): New.
2912
2913 2018-09-17  Tom Tromey  <tom@tromey.com>
2914
2915         * infrun.c (save_infcall_suspend_state): Return
2916         infcall_suspend_state_up.
2917         (save_infcall_control_state): Return infcall_control_state_up.
2918         * inferior.h (save_infcall_suspend_state)
2919         (save_infcall_control_state): Declare later.  Return unique
2920         pointers.
2921
2922 2018-09-17  Tom Tromey  <tom@tromey.com>
2923
2924         * infrun.c (struct stop_context): Declare constructor,
2925         destructor, "changed" method.
2926         (stop_context::stop_context): Rename from save_stop_context.
2927         (stop_context::~stop_context): Rename from
2928         release_stop_context_cleanup.
2929         (normal_stop): Update.
2930         (stop_context::changed): Rename from stop_context_changed.  Return
2931         bool.
2932
2933 2018-09-17  Tom Tromey  <tom@tromey.com>
2934
2935         * inferior.h (struct infcall_suspend_state_deleter): New.
2936         (infcall_suspend_state_up): New typedef.
2937         (struct infcall_control_state_deleter): New.
2938         (infcall_control_state_up): New typedef.
2939         (make_cleanup_restore_infcall_suspend_state)
2940         (make_cleanup_restore_infcall_control_state): Don't declare.
2941         * infcall.c (call_function_by_hand_dummy): Update.
2942         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2943         (make_cleanup_restore_infcall_suspend_state): Remove.
2944         (do_restore_infcall_control_state_cleanup)
2945         (make_cleanup_restore_infcall_control_state): Remove.
2946
2947 2018-09-17  Tom Tromey  <tom@tromey.com>
2948
2949         * gdbthread.h (struct thread_control_state): Add initializer.
2950         (class thread_info) <control>: Remove initializer.
2951         * inferior.h (struct inferior_control_state): Add initializer.
2952         (class inferior) <control>: Remove initializer.
2953         (exit_inferior_1): Update.
2954         * infrun.c (struct infcall_control_state): Add constructors.
2955         (save_infcall_control_state): Use new.
2956         (restore_infcall_control_state, discard_infcall_control_state):
2957         Use delete.
2958
2959 2018-09-17  Tom Tromey  <tom@tromey.com>
2960
2961         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2962         unique_ptr.
2963         <siginfo_data>: Now a unique_xmalloc_ptr.
2964         (save_infcall_suspend_state, restore_infcall_suspend_state)
2965         (discard_infcall_suspend_state)
2966         (get_infcall_suspend_state_regcache): Update.
2967
2968 2018-09-17  Tom Tromey  <tom@tromey.com>
2969
2970         * gdbthread.h (struct thread_suspend_state): Add initializers.
2971         (class thread_info) <suspend>: Remove initializer.
2972         * infrun.c (struct infcall_suspend_state): Add initializers.
2973         (save_infcall_suspend_state): Use new.
2974         (discard_infcall_suspend_state): Use delete.
2975
2976 2018-09-16  Tom Tromey  <tom@tromey.com>
2977
2978         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2979         Remove.
2980         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2981         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2982         (py_varobj_iter_new): Likewise.
2983         (py_varobj_get_iterator): Use gdbpy_ref.
2984
2985 2018-09-16  Tom Tromey  <tom@tromey.com>
2986
2987         * python/py-threadevent.c (py_get_event_thread): Simplify.
2988         * python/py-inferior.c (infpy_thread_from_thread_handle):
2989         Return immediately after calling thread_to_thread_object.  Use
2990         Py_RETURN_NONE.
2991         (thread_to_thread_object): Set the exception on a NULL return.
2992
2993 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2994
2995         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2996
2997 2018-09-16  Tom Tromey  <tom@tromey.com>
2998
2999         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3000         Remove.
3001
3002 2018-09-16  Tom Tromey  <tom@tromey.com>
3003
3004         * python/python-internal.h (thread_to_thread_object): Change
3005         return type.
3006         * python/py-inferior.c (thread_to_thread_object): Return a new
3007         reference.
3008         (infpy_thread_from_thread_handle): Update.
3009         * python/py-infthread.c (gdbpy_selected_thread): Update.
3010         * python/py-stopevent.c (create_stop_event_object): Update.
3011         * python/py-threadevent.c (py_get_event_thread): Return a new
3012         reference.
3013         (py_get_event_thread): Update.
3014         * python/py-event.h (py_get_event_thread): Change return type.
3015         * python/py-continueevent.c (create_continue_event_object):
3016         Update.
3017
3018 2018-09-16  Tom Tromey  <tom@tromey.com>
3019
3020         * python/py-progspace.c (pspy_get_objfiles): Update.
3021         * python/python-internal.h (objfile_to_objfile_object): Change
3022         return type.
3023         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3024         Update.
3025         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3026         Update.
3027         * python/python.c (gdbpy_get_current_objfile): Update.
3028         (gdbpy_objfiles): Update.
3029         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3030         Update.
3031         (objfile_to_objfile_object): Return a new reference.
3032         * python/py-symtab.c (stpy_get_objfile): Update.
3033         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3034         Update.
3035
3036 2018-09-16  Tom Tromey  <tom@tromey.com>
3037
3038         * python/py-inferior.c (infpy_get_progspace): Update.
3039         * python/python-internal.h (pspace_to_pspace_object): Change
3040         return type.
3041         * python/py-newobjfileevent.c
3042         (create_clear_objfiles_event_object): Update.
3043         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3044         Update.
3045         * python/python.c (gdbpy_get_current_progspace): Update.
3046         (gdbpy_progspaces): Update.
3047         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3048         reference.
3049         * python/py-objfile.c (objfpy_get_progspace): Update.
3050         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3051         Update.
3052
3053 2018-09-16  Tom Tromey  <tom@tromey.com>
3054
3055         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3056         (solib_name, block_for_pc, find_pc_line): New functions.
3057         (execute_unwinders): Update.
3058         * python/py-block.c (gdbpy_block_for_pc): Remove.
3059         * python/py-inferior.c (infpy_get_progspace): New function.
3060         (inferior_object_getset) <progspace>: Add.
3061         * python/py-progspace.c (pspy_objfiles): Rewrite.
3062         (pspy_solib_name, pspy_block_for_pc)
3063         (pspy_find_pc_line, pspy_is_valid): New functions.
3064         (progspace_object_methods): Add entries for solib_name,
3065         block_for_pc, find_pc_line, is_valid.
3066         * python/python-internal.h (gdbpy_block_for_pc)
3067         (build_objfiles_list): Don't declare.
3068         * python/python.c: Don't include solib.h.
3069         (gdbpy_solib_name, gdbpy_find_pc_line)
3070         (gdbpy_get_current_progspace, build_objfiles_list)
3071         (gdbpy_objfiles): Remove.
3072         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3073         solib_name, find_pc_line>: Remove entries.
3074
3075 2018-09-16  Tom Tromey  <tom@tromey.com>
3076
3077         * top.c (new_ui_command): Use GNU style for metasyntactic
3078         variables.
3079         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3080         variables.
3081         * maint.c (maintenance_translate_address): Remove "<>" around
3082         text.
3083         * interps.c (interpreter_exec_cmd): Use GNU style for
3084         metasyntactic variables.
3085         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3086         metasyntactic variables.
3087         * tracepoint.c (tfind_range_command): Use GNU style for
3088         metasyntactic variables.
3089         (tfind_outside_command): Likewise.
3090         (_initialize_tracepoint): Likewise.
3091         * remote.c (extended_remote_target::create_inferior): Use GNU
3092         style for metasyntactic variables.
3093         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3094         metasyntactic variables.
3095         (adi_assign_command): Likewise.
3096
3097 2018-09-16  Tom Tromey  <tom@tromey.com>
3098
3099         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3100         metasyntactic variables.  Print message if no disassembler options
3101         are available.
3102
3103 2018-09-15  Tom Tromey  <tom@tromey.com>
3104
3105         * infcmd.c (get_inferior_args): Return const char *.
3106         * inferior.h (get_inferior_args): Return type now const.
3107         * linux-tdep.c (linux_fill_prpsinfo): Update.
3108         * procfs.c (procfs_target::make_corefile_notes): Update.
3109
3110 2018-09-07  Tom Tromey  <tom@tromey.com>
3111
3112         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3113         inside the TRY.
3114
3115 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3116
3117         * nios2-tdep.c (nios2_type_align): New.
3118         (nios2_gdb_arch_init): Install type_align hook.
3119
3120 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3121
3122         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3123         type that is neither object file owned, nor gdbarch owned.
3124         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3125         gdbarch is non-NULL.
3126         (alloc_type_instance): Allocate non-objfile owned types on the
3127         gdbarch obstack.
3128         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3129         using TYPE_ALLOC to ensure memory is allocated on the correct
3130         obstack.
3131         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3132         obstack, or the gdbarch obstack.
3133         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3134
3135 2018-09-14  Tom Tromey  <tom@tromey.com>
3136
3137         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3138         block.
3139
3140 2018-09-14  Tom Tromey  <tom@tromey.com>
3141
3142         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3143
3144 2018-09-13  Tom Tromey  <tom@tromey.com>
3145
3146         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3147         static.
3148
3149 2018-09-13  Tom Tromey  <tom@tromey.com>
3150
3151         * exec.c (try_open_exec_file): Use std::string.
3152
3153 2018-09-13  Tom Tromey  <tom@tromey.com>
3154
3155         * utils.h (gdb_bfd_errmsg): Return std::string.
3156         * exec.c (exec_file_attach): Update.
3157         * compile/compile-object-load.c (compile_object_load): Update.
3158         * utils.c (gdb_bfd_errmsg): Return std::string.
3159
3160 2018-09-13  Tom Tromey  <tom@tromey.com>
3161
3162         * procfs.c (struct procinfo_deleter): New.
3163         (procinfo_up): New typedef.
3164         (do_destroy_procinfo_cleanup): Remove.
3165         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3166
3167 2018-09-13  Tom Tromey  <tom@tromey.com>
3168
3169         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3170
3171 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3172 2018-09-13  Tom Tromey  <tom@tromey.com>
3173
3174         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3175         (pspy_get_objfiles): New function.
3176         (progspace_object_methods): New.
3177         (pspace_object_type): Add tp_methods callback.
3178         * python/python-internal.h (build_objfiles_list): New
3179         declaration.
3180         * python/python.c (build_objfiles_list): New function.
3181         (gdbpy_objfiles): Implement using build_objfiles_list.
3182         * NEWS: Mention the Progspace.objfiles method.
3183
3184 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3185
3186         * python/py-inferior.c (infpy_get_progspace): New function.
3187         (inferior_object_getset): Add progspace property.
3188         * NEWS: Mention the new property.
3189
3190 2018-09-13  Tom Tromey  <tom@tromey.com>
3191
3192         PR rust/23650:
3193         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3194
3195 2018-09-13  Tom Tromey  <tom@tromey.com>
3196
3197         PR rust/23626:
3198         * rust-lang.c (rust_enum_variant): Now static.
3199         (rust_empty_enum_p): New function.
3200         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3201         Handle empty enum.
3202
3203 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3204
3205         * python/py-inferior.c (infpy_repr): New.
3206         (inferior_object_type): Register infpy_repr.
3207         * python/py-objfile.c (objfpy_repr): New.
3208         (objfile_object_type): Register objfpy_repr.
3209
3210 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3211
3212         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3213
3214 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3215
3216         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3217         typo.
3218
3219 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3220
3221         * common/common-utils.c: Don't include '<sys/stat.h>'.
3222         (is_regular_file): Move to...
3223         * common/filestuff.c (is_regular_file): ... here.
3224         * common/common-utils.h (is_regular_file): Move to...
3225         * common/filestuff.h (is_regular_file): ... here.
3226
3227 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3228
3229         * skip.c (debug_skip): New variable.
3230         (skiplist_entry::do_skip_file_p): Add debug output.
3231         (skiplist_entry::do_skip_gfile_p): Likewise.
3232         (skiplist_entry::skip_function_p): Likewise.
3233         (_initialize_step_skip): Create debug command.
3234         * NEWS: Mention set/show debug skip.
3235
3236 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3237
3238         * darwin-nat.c (should_disable_startup_with_shell):
3239         New function.
3240         (darwin_nat_target::create_inferior): Add call.
3241
3242 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3243
3244         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3245         inf_port, msg_state>: Initialize.
3246         (struct darwin_thread_info) <signaled, single_step>: Change
3247         type and initialize.
3248         (struct darwin_thread_info) <event>: Initialize.
3249
3250 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3251
3252         PR gdb/23555
3253         PR gdb/23558
3254         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3255         guesses.
3256
3257 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3258
3259         Revert:
3260         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3261
3262         PR gdb/23555
3263         PR gdb/23558
3264         * gnulib/aclocal.m4: Regenerate.
3265         * gnulib/config.in: Regenerate.
3266         * gnulib/configure: Regenerate.
3267         * gnulib/import/Makefile.am: Update.
3268         * gnulib/import/Makefile.in: Update.
3269         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3270         * gnulib/import/_Noreturn.h: ... this.
3271         * gnulib/import/alloca.in.h: Update.
3272         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3273         * gnulib/import/arg-nonnull.h: ... this.
3274         * gnulib/import/assure.h: Update.
3275         * gnulib/import/at-func.c: Update.
3276         * gnulib/import/basename-lgpl.c: Update.
3277         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3278         * gnulib/import/c++defs.h: ... this.
3279         * gnulib/import/canonicalize-lgpl.c: Update.
3280         * gnulib/import/cdefs.h: Update.
3281         * gnulib/import/chdir-long.c: Update.
3282         * gnulib/import/chdir-long.h: Update.
3283         * gnulib/import/cloexec.c: Update.
3284         * gnulib/import/cloexec.h: Update.
3285         * gnulib/import/close.c: Update.
3286         * gnulib/import/closedir.c: Update.
3287         * gnulib/import/config.charset: Update.
3288         * gnulib/import/dirent-private.h: Update.
3289         * gnulib/import/dirent.in.h: Update.
3290         * gnulib/import/dirfd.c: Update.
3291         * gnulib/import/dirname-lgpl.c: Update.
3292         * gnulib/import/dirname.h: Update.
3293         * gnulib/import/dosname.h: Update.
3294         * gnulib/import/dup-safer-flag.c: Update.
3295         * gnulib/import/dup-safer.c: Update.
3296         * gnulib/import/dup.c: Update.
3297         * gnulib/import/dup2.c: Update.
3298         * gnulib/import/errno.in.h: Update.
3299         * gnulib/import/error.c: Update.
3300         * gnulib/import/error.h: Update.
3301         * gnulib/import/exitfail.c: Update.
3302         * gnulib/import/exitfail.h: Update.
3303         * gnulib/import/extra/update-copyright: Update.
3304         * gnulib/import/fchdir.c: Update.
3305         * gnulib/import/fcntl.c: Update.
3306         * gnulib/import/fcntl.in.h: Update.
3307         * gnulib/import/fd-hook.c: Update.
3308         * gnulib/import/fd-hook.h: Update.
3309         * gnulib/import/fd-safer-flag.c: Update.
3310         * gnulib/import/fd-safer.c: Update.
3311         * gnulib/import/fdopendir.c: Update.
3312         * gnulib/import/filename.h: Update.
3313         * gnulib/import/filenamecat-lgpl.c: Update.
3314         * gnulib/import/filenamecat.h: Update.
3315         * gnulib/import/flexmember.h: Update.
3316         * gnulib/import/float+.h: Update.
3317         * gnulib/import/float.c: Update.
3318         * gnulib/import/float.in.h: Update.
3319         * gnulib/import/fnmatch.c: Update.
3320         * gnulib/import/fnmatch.in.h: Update.
3321         * gnulib/import/fnmatch_loop.c: Update.
3322         * gnulib/import/fpucw.h: Update.
3323         * gnulib/import/frexp.c: Update.
3324         * gnulib/import/frexpl.c: Update.
3325         * gnulib/import/fstat.c: Update.
3326         * gnulib/import/fstatat.c: Update.
3327         * gnulib/import/getcwd-lgpl.c: Update.
3328         * gnulib/import/getcwd.c: Update.
3329         * gnulib/import/getdtablesize.c: Update.
3330         * gnulib/import/getlogin_r.c: Update.
3331         * gnulib/import/getprogname.c: Update.
3332         * gnulib/import/getprogname.h: Update.
3333         * gnulib/import/gettext.h: Update.
3334         * gnulib/import/gettimeofday.c: Update.
3335         * gnulib/import/glob-libc.h: Update.
3336         * gnulib/import/glob.c: Update.
3337         * gnulib/import/glob.in.h: Update.
3338         * gnulib/import/glob_internal.h: Update.
3339         * gnulib/import/glob_pattern_p.c: Update.
3340         * gnulib/import/globfree.c: Update.
3341         * gnulib/import/hard-locale.c: Update.
3342         * gnulib/import/hard-locale.h: Update.
3343         * gnulib/import/intprops.h: Update.
3344         * gnulib/import/inttypes.in.h: Update.
3345         * gnulib/import/isnan.c: Update.
3346         * gnulib/import/isnand-nolibm.h: Update.
3347         * gnulib/import/isnand.c: Update.
3348         * gnulib/import/isnanl-nolibm.h: Update.
3349         * gnulib/import/isnanl.c: Update.
3350         * gnulib/import/itold.c: Update.
3351         * gnulib/import/libc-config.h: Update.
3352         * gnulib/import/limits.in.h: Update.
3353         * gnulib/import/localcharset.c: Update.
3354         * gnulib/import/localcharset.h: Update.
3355         * gnulib/import/localtime-buffer.c: Update.
3356         * gnulib/import/localtime-buffer.h: Update.
3357         * gnulib/import/lstat.c: Update.
3358         * gnulib/import/m4/00gnulib.m4: Update.
3359         * gnulib/import/m4/__inline.m4: Update.
3360         * gnulib/import/m4/absolute-header.m4: Update.
3361         * gnulib/import/m4/alloca.m4: Update.
3362         * gnulib/import/m4/builtin-expect.m4: Update.
3363         * gnulib/import/m4/canonicalize.m4: Update.
3364         * gnulib/import/m4/chdir-long.m4: Update.
3365         * gnulib/import/m4/close.m4: Update.
3366         * gnulib/import/m4/closedir.m4: Update.
3367         * gnulib/import/m4/configmake.m4: Update.
3368         * gnulib/import/m4/d-ino.m4: Update.
3369         * gnulib/import/m4/d-type.m4: Update.
3370         * gnulib/import/m4/dirent_h.m4: Update.
3371         * gnulib/import/m4/dirfd.m4: Update.
3372         * gnulib/import/m4/dirname.m4: Update.
3373         * gnulib/import/m4/double-slash-root.m4: Update.
3374         * gnulib/import/m4/dup.m4: Update.
3375         * gnulib/import/m4/dup2.m4: Update.
3376         * gnulib/import/m4/eealloc.m4: Update.
3377         * gnulib/import/m4/environ.m4: Update.
3378         * gnulib/import/m4/errno_h.m4: Update.
3379         * gnulib/import/m4/error.m4: Update.
3380         * gnulib/import/m4/exponentd.m4: Update.
3381         * gnulib/import/m4/exponentl.m4: Update.
3382         * gnulib/import/m4/extensions.m4: Update.
3383         * gnulib/import/m4/extern-inline.m4: Update.
3384         * gnulib/import/m4/fchdir.m4: Update.
3385         * gnulib/import/m4/fcntl-o.m4: Update.
3386         * gnulib/import/m4/fcntl.m4: Update.
3387         * gnulib/import/m4/fcntl_h.m4: Update.
3388         * gnulib/import/m4/fdopendir.m4: Update.
3389         * gnulib/import/m4/filenamecat.m4: Update.
3390         * gnulib/import/m4/flexmember.m4: Update.
3391         * gnulib/import/m4/float_h.m4: Update.
3392         * gnulib/import/m4/fnmatch.m4: Update.
3393         * gnulib/import/m4/fnmatch_h.m4: Update.
3394         * gnulib/import/m4/fpieee.m4: Update.
3395         * gnulib/import/m4/frexp.m4: Update.
3396         * gnulib/import/m4/frexpl.m4: Update.
3397         * gnulib/import/m4/fstat.m4: Update.
3398         * gnulib/import/m4/fstatat.m4: Update.
3399         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3400         * gnulib/import/m4/getcwd-path-max.m4: Update.
3401         * gnulib/import/m4/getcwd.m4: Update.
3402         * gnulib/import/m4/getdtablesize.m4: Update.
3403         * gnulib/import/m4/getlogin.m4: Update.
3404         * gnulib/import/m4/getlogin_r.m4: Update.
3405         * gnulib/import/m4/getpagesize.m4: Update.
3406         * gnulib/import/m4/getprogname.m4: Update.
3407         * gnulib/import/m4/gettimeofday.m4: Update.
3408         * gnulib/import/m4/glibc21.m4: Update.
3409         * gnulib/import/m4/glob.m4: Update.
3410         * gnulib/import/m4/glob_h.m4: Update.
3411         * gnulib/import/m4/gnulib-cache.m4: Update.
3412         * gnulib/import/m4/gnulib-common.m4: Update.
3413         * gnulib/import/m4/gnulib-comp.m4: Update.
3414         * gnulib/import/m4/gnulib-tool.m4: Update.
3415         * gnulib/import/m4/hard-locale.m4: Update.
3416         * gnulib/import/m4/include_next.m4: Update.
3417         * gnulib/import/m4/inttypes-pri.m4: Update.
3418         * gnulib/import/m4/inttypes.m4: Update.
3419         * gnulib/import/m4/isnand.m4: Update.
3420         * gnulib/import/m4/isnanl.m4: Update.
3421         * gnulib/import/m4/largefile.m4: Update.
3422         * gnulib/import/m4/limits-h.m4: Update.
3423         * gnulib/import/m4/localcharset.m4: Update.
3424         * gnulib/import/m4/locale-fr.m4: Update.
3425         * gnulib/import/m4/locale-ja.m4: Update.
3426         * gnulib/import/m4/locale-zh.m4: Update.
3427         * gnulib/import/m4/localtime-buffer.m4: Update.
3428         * gnulib/import/m4/longlong.m4: Update.
3429         * gnulib/import/m4/lstat.m4: Update.
3430         * gnulib/import/m4/malloc.m4: Update.
3431         * gnulib/import/m4/malloca.m4: Update.
3432         * gnulib/import/m4/math_h.m4: Update.
3433         * gnulib/import/m4/mbrtowc.m4: Update.
3434         * gnulib/import/m4/mbsinit.m4: Update.
3435         * gnulib/import/m4/mbsrtowcs.m4: Update.
3436         * gnulib/import/m4/mbstate_t.m4: Update.
3437         * gnulib/import/m4/memchr.m4: Update.
3438         * gnulib/import/m4/memmem.m4: Update.
3439         * gnulib/import/m4/mempcpy.m4: Update.
3440         * gnulib/import/m4/memrchr.m4: Update.
3441         * gnulib/import/m4/mkdir.m4: Update.
3442         * gnulib/import/m4/mkstemp.m4: Update.
3443         * gnulib/import/m4/mmap-anon.m4: Update.
3444         * gnulib/import/m4/mode_t.m4: Update.
3445         * gnulib/import/m4/msvc-inval.m4: Update.
3446         * gnulib/import/m4/msvc-nothrow.m4: Update.
3447         * gnulib/import/m4/multiarch.m4: Update.
3448         * gnulib/import/m4/nocrash.m4: Update.
3449         * gnulib/import/m4/off_t.m4: Update.
3450         * gnulib/import/m4/onceonly.m4: Update.
3451         * gnulib/import/m4/open-cloexec.m4: Update.
3452         * gnulib/import/m4/open.m4: Update.
3453         * gnulib/import/m4/openat.m4: Update.
3454         * gnulib/import/m4/opendir.m4: Update.
3455         * gnulib/import/m4/pathmax.m4: Update.
3456         * gnulib/import/m4/rawmemchr.m4: Update.
3457         * gnulib/import/m4/readdir.m4: Update.
3458         * gnulib/import/m4/readlink.m4: Update.
3459         * gnulib/import/m4/realloc.m4: Update.
3460         * gnulib/import/m4/rename.m4: Update.
3461         * gnulib/import/m4/rewinddir.m4: Update.
3462         * gnulib/import/m4/rmdir.m4: Update.
3463         * gnulib/import/m4/save-cwd.m4: Update.
3464         * gnulib/import/m4/secure_getenv.m4: Update.
3465         * gnulib/import/m4/setenv.m4: Update.
3466         * gnulib/import/m4/signal_h.m4: Update.
3467         * gnulib/import/m4/ssize_t.m4: Update.
3468         * gnulib/import/m4/stat-time.m4: Update.
3469         * gnulib/import/m4/stat.m4: Update.
3470         * gnulib/import/m4/std-gnu11.m4: Update.
3471         * gnulib/import/m4/stdbool.m4: Update.
3472         * gnulib/import/m4/stddef_h.m4: Update.
3473         * gnulib/import/m4/stdint.m4: Update.
3474         * gnulib/import/m4/stdio_h.m4: Update.
3475         * gnulib/import/m4/stdlib_h.m4: Update.
3476         * gnulib/import/m4/strchrnul.m4: Update.
3477         * gnulib/import/m4/strdup.m4: Update.
3478         * gnulib/import/m4/strerror.m4: Update.
3479         * gnulib/import/m4/string_h.m4: Update.
3480         * gnulib/import/m4/strstr.m4: Update.
3481         * gnulib/import/m4/strtok_r.m4: Update.
3482         * gnulib/import/m4/sys_socket_h.m4: Update.
3483         * gnulib/import/m4/sys_stat_h.m4: Update.
3484         * gnulib/import/m4/sys_time_h.m4: Update.
3485         * gnulib/import/m4/sys_types_h.m4: Update.
3486         * gnulib/import/m4/tempname.m4: Update.
3487         * gnulib/import/m4/time_h.m4: Update.
3488         * gnulib/import/m4/unistd-safer.m4: Update.
3489         * gnulib/import/m4/unistd_h.m4: Update.
3490         * gnulib/import/m4/warn-on-use.m4: Update.
3491         * gnulib/import/m4/wchar_h.m4: Update.
3492         * gnulib/import/m4/wchar_t.m4: Update.
3493         * gnulib/import/m4/wctype_h.m4: Update.
3494         * gnulib/import/m4/wint_t.m4: Update.
3495         * gnulib/import/malloc.c: Update.
3496         * gnulib/import/malloc/scratch_buffer.h: Update.
3497         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3498         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3499         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3500         * gnulib/import/malloca.c: Update.
3501         * gnulib/import/malloca.h: Update.
3502         * gnulib/import/malloca.valgrind: Update.
3503         * gnulib/import/math.in.h: Update.
3504         * gnulib/import/mbrtowc.c: Update.
3505         * gnulib/import/mbsinit.c: Update.
3506         * gnulib/import/mbsrtowcs-impl.h: Update.
3507         * gnulib/import/mbsrtowcs-state.c: Update.
3508         * gnulib/import/mbsrtowcs.c: Update.
3509         * gnulib/import/memchr.c: Update.
3510         * gnulib/import/memmem.c: Update.
3511         * gnulib/import/mempcpy.c: Update.
3512         * gnulib/import/memrchr.c: Update.
3513         * gnulib/import/mkdir.c: Update.
3514         * gnulib/import/mkstemp.c: Update.
3515         * gnulib/import/msvc-inval.c: Update.
3516         * gnulib/import/msvc-inval.h: Update.
3517         * gnulib/import/msvc-nothrow.c: Update.
3518         * gnulib/import/msvc-nothrow.h: Update.
3519         * gnulib/import/open.c: Update.
3520         * gnulib/import/openat-die.c: Update.
3521         * gnulib/import/openat-priv.h: Update.
3522         * gnulib/import/openat-proc.c: Update.
3523         * gnulib/import/openat.c: Update.
3524         * gnulib/import/openat.h: Update.
3525         * gnulib/import/opendir.c: Update.
3526         * gnulib/import/pathmax.h: Update.
3527         * gnulib/import/pipe-safer.c: Update.
3528         * gnulib/import/rawmemchr.c: Update.
3529         * gnulib/import/readdir.c: Update.
3530         * gnulib/import/readlink.c: Update.
3531         * gnulib/import/realloc.c: Update.
3532         * gnulib/import/ref-add.sin: Update.
3533         * gnulib/import/ref-del.sin: Update.
3534         * gnulib/import/rename.c: Update.
3535         * gnulib/import/rewinddir.c: Update.
3536         * gnulib/import/rmdir.c: Update.
3537         * gnulib/import/same-inode.h: Update.
3538         * gnulib/import/save-cwd.c: Update.
3539         * gnulib/import/save-cwd.h: Update.
3540         * gnulib/import/scratch_buffer.h: Update.
3541         * gnulib/import/secure_getenv.c: Update.
3542         * gnulib/import/setenv.c: Update.
3543         * gnulib/import/signal.in.h: Update.
3544         * gnulib/import/stat-time.c: Update.
3545         * gnulib/import/stat-time.h: Update.
3546         * gnulib/import/stat-w32.c: Update.
3547         * gnulib/import/stat-w32.h: Update.
3548         * gnulib/import/stat.c: Update.
3549         * gnulib/import/stdbool.in.h: Update.
3550         * gnulib/import/stddef.in.h: Update.
3551         * gnulib/import/stdint.in.h: Update.
3552         * gnulib/import/stdio.in.h: Update.
3553         * gnulib/import/stdlib.in.h: Update.
3554         * gnulib/import/str-two-way.h: Update.
3555         * gnulib/import/strchrnul.c: Update.
3556         * gnulib/import/strdup.c: Update.
3557         * gnulib/import/streq.h: Update.
3558         * gnulib/import/strerror-override.c: Update.
3559         * gnulib/import/strerror-override.h: Update.
3560         * gnulib/import/strerror.c: Update.
3561         * gnulib/import/string.in.h: Update.
3562         * gnulib/import/stripslash.c: Update.
3563         * gnulib/import/strnlen1.c: Update.
3564         * gnulib/import/strnlen1.h: Update.
3565         * gnulib/import/strstr.c: Update.
3566         * gnulib/import/strtok_r.c: Update.
3567         * gnulib/import/sys_stat.in.h: Update.
3568         * gnulib/import/sys_time.in.h: Update.
3569         * gnulib/import/sys_types.in.h: Update.
3570         * gnulib/import/tempname.c: Update.
3571         * gnulib/import/tempname.h: Update.
3572         * gnulib/import/time.in.h: Update.
3573         * gnulib/import/unistd--.h: Update.
3574         * gnulib/import/unistd-safer.h: Update.
3575         * gnulib/import/unistd.in.h: Update.
3576         * gnulib/import/unsetenv.c: Update.
3577         * gnulib/import/verify.h: Update.
3578         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3579         * gnulib/import/wchar.in.h: Update.
3580         * gnulib/import/wctype.in.h: Update.
3581         * gnulib/import/xalloc-oversized.h: Update.
3582         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3583         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3584
3585 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3586
3587         * record-btrace.c (get_thread_current_frame): Remove
3588         old_inferior_ptid.
3589
3590 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3591
3592         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3593         with check_tag to 1 if and only if the type is tagged and the
3594         component being searched cannot been found in the current
3595         view. Otherwise, always call ada_to_fixed_type with
3596         check_tag to 0.
3597
3598 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3599
3600         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3601         declaration.
3602         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3603         * ada-varobj.c (ada_varobj_get_number_of_children,
3604         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3605
3606 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3607
3608         * ada-valprint.c (ada_value_print): Use type instead of
3609         enclosing type.
3610
3611 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3612
3613         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3614         an array of access to unconstrained array.
3615
3616 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3617
3618         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3619         (ada_check_typedef): Use it.
3620
3621 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3622
3623         * ada-varobj.c (ada_varobj_describe_struct_child)
3624         (ada_varobj_describe_child): Handle union case like struct one.
3625
3626 2018-09-10  Tom Tromey  <tom@tromey.com>
3627
3628         PR python/18380:
3629         * python/python.c (_initialize_python): Make example in "python"
3630         help work in Python 3.
3631
3632 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3633
3634         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3635         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3636         $(EXEEXT) to the script, as it is not a program.
3637
3638 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3639
3640         * python/py-prettyprint.c (pretty_print_one_value): Return
3641         gdbpy_ref<>.
3642         (print_string_repr): Adjust.
3643         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3644         * python/python-internal.h (apply_varobj_pretty_printer): Return
3645         gdbpy_ref<>.
3646         * varobj.c (varobj_value_get_print_value): Adjust.
3647
3648 2018-09-08  Tom Tromey  <tom@tromey.com>
3649
3650         PR python/16047:
3651         * python/py-prettyprint.c (pretty_print_one_value): Check for
3652         to_string method.
3653
3654 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3655
3656         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3657         replace_operator_with_call.
3658
3659 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3660
3661         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3662
3663 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3664
3665         * ada-typeprint.c (print_range): Print the bounds using TYPE
3666         rather than its TYPE_TARGET_TYPE.
3667
3668 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3669
3670         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3671         call to ada_to_fixed_value_create.
3672
3673 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3674
3675         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3676
3677 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3678
3679         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3680         by calls to error.
3681
3682 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3683
3684         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3685         Move update of loop variable "fi".
3686
3687 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3688
3689         * ada-lang.c (value_assign_to_component): In the case of
3690         big-endian targets, extract the bits of the given VAL
3691         using an src_offset of zero if container is not a scalar.
3692
3693 2018-09-06  Simon Ser  <contact@emersion.fr>
3694
3695         PR gdb/23105
3696         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3697         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3698         * fbsd-tdep.c (fbsd_make_note_desc): New.
3699         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3700         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3701         * target.h (enum target_object) Add FreeBSD-specific
3702         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3703
3704 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3705
3706         * compile/compile-c.h (generate_c_for_variable_locations):
3707         Change reference to pointer.
3708         * compile/compile-c-support.c (compile_program) <compute>:
3709         Likewise.
3710         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3711         (generate_c_for_for_one_variable): Likewise
3712         (generate_c_for_variable_locations): Likewise
3713         * compile/compile-c-types.c (compile_c_instance::convert_type):
3714         Likewise
3715         * compile/compile-cplus-symbols.c (convert_one_symbol):
3716         std::move the scope passed to enter_scope.
3717         * compile/compile-cplus-types.c
3718         (compile_cplus_instance::enter_scope): Make parameter
3719         rvalue-reference.
3720         (compile_cplus_instance::new_scope): Change reference to
3721         pointer.
3722         (compile_cplus_instance::convert_type): Likewise
3723         (compile_cplus_convert_typedef): std::move the scope passed to
3724         enter_scope.
3725         (compile_cplus_convert_struct_or_union): Likewise.
3726         (compile_cplus_convert_enum): Likewise.
3727         (compile_cplus_convert_namespace): Likewise.
3728         * compile/compile-cplus.h (compile_cplus_instance)
3729         <enter_scope>: Make parameter rvalue-reference.
3730         * compile/compile-internal.h (compile_instance)
3731         <get_cached_type>: Likewise
3732         * compile/compile-loc2c.c (push): Likewise
3733         (pushf): Likewise
3734         (unary): Likewise
3735         (binary): Likewise
3736         (print_label): Likewise
3737         (pushf_register_address): Likewise
3738         (pushf_register): Likewise
3739         (do_compile_dwarf_expr_to_c): Likewise
3740         (compile_dwarf_expr_to_c): Likewise
3741         (compile_dwarf_bounds_to_c): Likewise
3742         * compile/compile.c (compile_instance::get_cached_type):
3743         Likewise
3744         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3745         (compile_dwarf_bounds_to_c): Likewise
3746         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3747         (dwarf2_compile_property_to_c): Likewise
3748         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3749         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3750         Likewise
3751
3752 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3753
3754         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3755         * tui/tui-data.c (init_content_element): Don't initialize it.
3756
3757 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3758
3759         * tui/tui-data.h (struct tui_win_info)
3760         <detail::opaque>: Remove.
3761         * tui/tui-data.c (init_win_info): Remove assignment.
3762
3763 2018-09-05  Tom Tromey  <tom@tromey.com>
3764
3765         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3766         -Wformat-nonliteral.
3767         * target-float.c (host_float_ops<T>::to_string)
3768         (host_float_ops<T>::from_string): Use
3769         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3770         * configure: Rebuild.
3771
3772 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3773
3774         * printcmd.c (printf_c_string): Use
3775         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3776         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3777
3778 2018-09-05  Tom Tromey  <tom@tromey.com>
3779
3780         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3781
3782 2018-09-05  Tom de Vries  <tdevries@suse.de>
3783
3784         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3785         with resolve_abstract_p == true.
3786         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3787         defaulting to false. Propagate resolve_abstract_p to
3788         dwarf2_fetch_die_loc_sect_off.
3789         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3790         parameter, defaulting to false.
3791         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3792         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3793         parameter.
3794         * dwarf2read.h (struct die_info): Forward-declare.
3795         (die_info_ptr): New typedef.
3796         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3797
3798 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3799
3800         GDB 8.2 released.
3801
3802 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3803             Pedro Alves  <palves@redhat.com>
3804
3805         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3806         "aclocal-m4-deps.mk".  Include file here.
3807         $(srcdir)/aclocal.m4: Add "configure.ac".
3808         * gnulib/aclocal-m4-deps.mk: New file.
3809         * gnulib/update-gnulib.sh: Automatically update
3810         "aclocal-m4-deps.mk".
3811
3812 2018-09-04  Tom Tromey  <tom@tromey.com>
3813
3814         * configure: Rebuild.
3815         * configure.ac: Remove multi-ice code.
3816
3817 2018-09-04  Tom Tromey  <tom@tromey.com>
3818
3819         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3820         (ada-exp.o): Update.
3821
3822 2018-09-04  Tom Tromey  <tom@tromey.com>
3823
3824         * Makefile.in (printcmd.o, target-float.o): Remove.
3825         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3826
3827 2018-09-04  Tom Tromey  <tom@tromey.com>
3828
3829         * gnulib/Makefile.in: Remove obsolete comment.
3830         * Makefile.in: Remove obsolete comment.
3831
3832 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3833
3834         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3835         line with '+'.
3836
3837 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3838
3839         * riscv-tdep.c: Add 'prologue-value.h' include.
3840         (struct riscv_unwind_cache): New struct.
3841         (riscv_debug_unwinder): New global.
3842         (riscv_scan_prologue): Update arguments, capture register details
3843         from prologue scan.
3844         (riscv_skip_prologue): Reformat arguments line, move end of
3845         prologue calculation into riscv_scan_prologue.
3846         (riscv_frame_cache): Update return type, create
3847         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3848         details.
3849         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3850         (riscv_frame_prev_register): Use the trad_frame within the
3851         riscv_unwind_cache.
3852         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3853         flag.
3854
3855 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3856
3857         * trad-frame.h (trad_frame_set_realreg): Declare.
3858         (trad_frame_set_addr): Declare.
3859         * trad-frame.c (trad_frame_set_realreg): Define new function.
3860         (trad_frame_set_addr): Define new function.
3861         (trad_frame_set_reg_realreg): Use new function.
3862         (trad_frame_set_reg_addr): Use new function.
3863
3864 2018-09-01  Keith Seitz  <keiths@redhat.com>
3865
3866         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3867         pulongest instead of "%lld".
3868         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3869         ATTRIBUTE_UNUSED.
3870
3871 2018-08-31  Tom Tromey  <tom@tromey.com>
3872
3873         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3874         variant part type.
3875
3876 2018-08-31  Pedro Alves  <palves@redhat.com>
3877
3878         * gdbarch.h: Regenerate.
3879
3880 2018-08-31  Pedro Alves  <palves@redhat.com>
3881
3882         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3883         * target.h (Hardware watchpoint interfaces): Describe
3884         continuable/steppable/non-steppable watchpoints.
3885         * gdbarch.h, gdbarch.c: Regenerate.
3886
3887 2018-08-31  Pedro Alves  <palves@redhat.com>
3888
3889         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3890         Delete.
3891         * s390-linux-nat.c
3892         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3893         * target.h (target_ops::have_continuable_watchpoint): Delete.
3894         (target_have_continuable_watchpoint): Delete.
3895         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3896         * target-delegates.c: Regenerate.
3897
3898 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3899
3900         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3901         the files present in "gnulib/import/m4/".
3902
3903 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3904
3905         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3906         c.sw, c.swsp, and c.sdsp.
3907
3908 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3909
3910         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3911         (riscv_read_misa_reg): Don't cache value read into inferior data.
3912         (riscv_new_inferior_data): Delete.
3913         (riscv_inferior_data_cleanup): Delete.
3914         (riscv_inferior_data): Delete.
3915         (riscv_invalidate_inferior_data): Delete.
3916         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3917
3918 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3919
3920         * compile/compile-cplus-types.c
3921         (compile_cplus_instance::leave_scope): Take the address of scope
3922         object.
3923         (compile_cplus_instance::convert_qualified_base): Compare quals
3924         to 0.
3925
3926 2018-08-30  Keith Seitz  <keiths@redhat.com>
3927
3928         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3929         Use "%s" and host_address_to_string instead of "%p" in printf.
3930
3931 2018-08-29  Keith Seitz  <keiths@redhat.com>
3932
3933         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3934         and compile-cplus-types.c.
3935         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3936         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3937         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3938         Declare.
3939         * compile/compile-c-support.c: Include compile-cplus.h.
3940         (load_libcompile): Templatize.
3941         (get_compile_context): "New" function.
3942         (c_get_compile_context): Use get_compile_context.
3943         (cplus_get_compile_context): New function.
3944         (cplus_push_user_expression, cplus_pop_user_expression)
3945         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3946         (cplus_compute_program): Define new structs/functions.
3947         * compile/compile-cplus-symmbols.c: New file.
3948         * compile/compile-cplus-types.c: New file.
3949         * compile/compile-cplus.h: New file.
3950         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3951         Declare.
3952         * compile/compile-object-load.c (get_out_value_type): Use
3953         strncmp_iw when comparing symbol names.
3954         (compile_object_load): Add mst_bss and mst_data.
3955         * compile/compile.c (_initialize_compile): Remove
3956         -Wno-implicit-function-declaration from `compile_args'.
3957         * compile/gcc-cp-plugin.h: New file.
3958         * NEWS: Mention C++ compile support and new debug options.
3959
3960 2018-08-29  Keith Seitz  <keiths@redhat.com>
3961
3962         * linespec.c (collect_info::add_symbol): Make virtual.
3963         (struct symbol_searcher_collect_info): New struct.
3964         (symbol_searcher::find_all_symbols): New method.
3965         * symtab.h (class symbol_searcher): New class.
3966
3967 2018-08-29  Keith Seitz  <keiths@redhat.com>
3968
3969         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3970         Change to vector of block_symbol.  Update all users.
3971         (struct collect_info) <symbols>: Likewise.
3972         (collect_info::add_symbol): Take block_symbol as argument.
3973         Update all callers.
3974         (decode_compound_collector) <m_symbols>: Change type to vector
3975         of block_symbol.  Update all users.
3976         (decode_compound_collector::operator ()): Change parameter type
3977         to block_symbol.
3978         (find_method, find_function_symbols, find_linespec_symbols)
3979         (find_label_symbols_in_block, find_label_symbols): Change symbol
3980         vectors to block_symbol vectors.
3981         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3982         block_symbol.
3983
3984 2018-08-29  Keith Seitz  <keiths@redhat.com>
3985
3986         * linespec.c (symbolp): Remove typedef and VEC definitions.
3987         (bound_minimal_symbol_d): Likewise.
3988
3989 2018-08-29  Keith Seitz  <keiths@redhat.com>
3990
3991         * linespec.c (decode_compound_collector::decode_compound_collector):
3992         Remove initialization for `m_symtabs'.
3993         (decode_compound_collector::release_symbols): Change return type
3994         to std::vector.  Update all callers.
3995         (class decode_compound_collector) <m_symbols>: Change type to
3996         std::vector.
3997         (lookup_prefix_sym): Change return type to std::vector.  Update all
3998         callers.
3999         (compare_symbols): Remove.
4000         (std_compare_symbols): Rename to `compare_symbols'.
4001         (find_method): Change `sym_classes' parameter to std::vector.
4002         Update all callers.  Use std::sort to sort sym_classes.
4003         (find_linespec_symbols): Remove cleanup.
4004
4005 2018-08-29  Keith Seitz  <keiths@redhat.com>
4006
4007         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4008         std::vector.  Update all users.
4009         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4010         (struct collect_info) <minimal_symbols>: Likewise.
4011         (compare_msymbols): Return bool.  Change parameters to const
4012         bound_minimal_symbol references.
4013         (find_method, find_function_symbols, find_linespec_symbols): Change
4014         `minsyms' parameter to std::vector.  Update all callers.
4015
4016 2018-08-29  Keith Seitz  <keiths@redhat.com>
4017
4018         * linespec.c (struct linespec) <label_symbols>: Change type to
4019         std::vector.  Update all users.
4020         (find_label_symbols_in_block): Change `result' parameter to
4021         std::vector.  Update all callers.
4022         (find_label_symbols): Return std::vector.  Update all callers.
4023
4024 2018-08-29  Keith Seitz  <keiths@redhat.com>
4025
4026         * linespec.c (struct linespec) <function_symbols>: Change type to
4027         std::vector.  Update all users.
4028         (struct collect_info) <function_symbols>: Likewise.
4029         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4030         (std_compare_symbols): New function.
4031         (find_method, find_function_symbols, find_linespec_symbols)
4032         (find_label_symbols_in_block): Change `symbols' parameter to
4033         std::vector.  Update all callers.
4034         (find_label_symbols): Likewise for `function_symbols' and
4035         `label_funcs_ret'.
4036
4037 2018-08-29  Keith Seitz  <keiths@redhat.com>
4038
4039         * linespec.c (symtab_vector_up): Define.
4040         (struct linespec) <file_symtabs>: Change type to std::vector *.
4041         Update all uses.
4042         (struct collect_info) <file_symtabs>: Likewise.
4043         (collect_symtabs_from_filename): Return symtab_vector_up.
4044         Update all callers.
4045         (decode_objc): Remove cleanup.
4046         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4047         (symtab_collector::release_symtabs): Return symtab_vector_up.
4048         Update all callers.
4049         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4050         Update all users.
4051         (collect_symtabs_from_filename, symtabs_from_filename): Return
4052         symtab_vector_up.  Update all callers.
4053
4054 2018-08-29  Tom Tromey  <tom@tromey.com>
4055
4056         * csky-tdep.c (csky_analyze_prologue): Use
4057         core_addr_to_string_nz.
4058
4059 2018-08-29  Tom Tromey  <tom@tromey.com>
4060
4061         * windows-nat.c (struct xlate_exception) <them>: Change type to
4062         DWORD.
4063         (xlate): Fix formatting.  Remove last entry.
4064         (struct xlate_exception, xlate): Comment out.
4065         (windows_nat_target::resume): Use ranged for.
4066
4067 2018-08-29  Jim Wilson  <jimw@sifive.com>
4068
4069         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4070         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4071         of NT_PRFPREG.
4072         (riscv_linux_nat_target::store_registers): Likewise.
4073
4074 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4075
4076         PR gdb/23555
4077         PR gdb/23558
4078         * gnulib/aclocal.m4: Regenerate.
4079         * gnulib/config.in: Regenerate.
4080         * gnulib/configure: Regenerate.
4081         * gnulib/import/Makefile.am: Update.
4082         * gnulib/import/Makefile.in: Update.
4083         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4084         * gnulib/import/_Noreturn.h: ... this.
4085         * gnulib/import/alloca.in.h: Update.
4086         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4087         * gnulib/import/arg-nonnull.h: ... this.
4088         * gnulib/import/assure.h: Update.
4089         * gnulib/import/at-func.c: Update.
4090         * gnulib/import/basename-lgpl.c: Update.
4091         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4092         * gnulib/import/c++defs.h: ... this.
4093         * gnulib/import/canonicalize-lgpl.c: Update.
4094         * gnulib/import/cdefs.h: Update.
4095         * gnulib/import/chdir-long.c: Update.
4096         * gnulib/import/chdir-long.h: Update.
4097         * gnulib/import/cloexec.c: Update.
4098         * gnulib/import/cloexec.h: Update.
4099         * gnulib/import/close.c: Update.
4100         * gnulib/import/closedir.c: Update.
4101         * gnulib/import/config.charset: Update.
4102         * gnulib/import/dirent-private.h: Update.
4103         * gnulib/import/dirent.in.h: Update.
4104         * gnulib/import/dirfd.c: Update.
4105         * gnulib/import/dirname-lgpl.c: Update.
4106         * gnulib/import/dirname.h: Update.
4107         * gnulib/import/dosname.h: Update.
4108         * gnulib/import/dup-safer-flag.c: Update.
4109         * gnulib/import/dup-safer.c: Update.
4110         * gnulib/import/dup.c: Update.
4111         * gnulib/import/dup2.c: Update.
4112         * gnulib/import/errno.in.h: Update.
4113         * gnulib/import/error.c: Update.
4114         * gnulib/import/error.h: Update.
4115         * gnulib/import/exitfail.c: Update.
4116         * gnulib/import/exitfail.h: Update.
4117         * gnulib/import/extra/update-copyright: Update.
4118         * gnulib/import/fchdir.c: Update.
4119         * gnulib/import/fcntl.c: Update.
4120         * gnulib/import/fcntl.in.h: Update.
4121         * gnulib/import/fd-hook.c: Update.
4122         * gnulib/import/fd-hook.h: Update.
4123         * gnulib/import/fd-safer-flag.c: Update.
4124         * gnulib/import/fd-safer.c: Update.
4125         * gnulib/import/fdopendir.c: Update.
4126         * gnulib/import/filename.h: Update.
4127         * gnulib/import/filenamecat-lgpl.c: Update.
4128         * gnulib/import/filenamecat.h: Update.
4129         * gnulib/import/flexmember.h: Update.
4130         * gnulib/import/float+.h: Update.
4131         * gnulib/import/float.c: Update.
4132         * gnulib/import/float.in.h: Update.
4133         * gnulib/import/fnmatch.c: Update.
4134         * gnulib/import/fnmatch.in.h: Update.
4135         * gnulib/import/fnmatch_loop.c: Update.
4136         * gnulib/import/fpucw.h: Update.
4137         * gnulib/import/frexp.c: Update.
4138         * gnulib/import/frexpl.c: Update.
4139         * gnulib/import/fstat.c: Update.
4140         * gnulib/import/fstatat.c: Update.
4141         * gnulib/import/getcwd-lgpl.c: Update.
4142         * gnulib/import/getcwd.c: Update.
4143         * gnulib/import/getdtablesize.c: Update.
4144         * gnulib/import/getlogin_r.c: Update.
4145         * gnulib/import/getprogname.c: Update.
4146         * gnulib/import/getprogname.h: Update.
4147         * gnulib/import/gettext.h: Update.
4148         * gnulib/import/gettimeofday.c: Update.
4149         * gnulib/import/glob-libc.h: Update.
4150         * gnulib/import/glob.c: Update.
4151         * gnulib/import/glob.in.h: Update.
4152         * gnulib/import/glob_internal.h: Update.
4153         * gnulib/import/glob_pattern_p.c: Update.
4154         * gnulib/import/globfree.c: Update.
4155         * gnulib/import/hard-locale.c: Update.
4156         * gnulib/import/hard-locale.h: Update.
4157         * gnulib/import/intprops.h: Update.
4158         * gnulib/import/inttypes.in.h: Update.
4159         * gnulib/import/isnan.c: Update.
4160         * gnulib/import/isnand-nolibm.h: Update.
4161         * gnulib/import/isnand.c: Update.
4162         * gnulib/import/isnanl-nolibm.h: Update.
4163         * gnulib/import/isnanl.c: Update.
4164         * gnulib/import/itold.c: Update.
4165         * gnulib/import/libc-config.h: Update.
4166         * gnulib/import/limits.in.h: Update.
4167         * gnulib/import/localcharset.c: Update.
4168         * gnulib/import/localcharset.h: Update.
4169         * gnulib/import/localtime-buffer.c: Update.
4170         * gnulib/import/localtime-buffer.h: Update.
4171         * gnulib/import/lstat.c: Update.
4172         * gnulib/import/m4/00gnulib.m4: Update.
4173         * gnulib/import/m4/__inline.m4: Update.
4174         * gnulib/import/m4/absolute-header.m4: Update.
4175         * gnulib/import/m4/alloca.m4: Update.
4176         * gnulib/import/m4/builtin-expect.m4: Update.
4177         * gnulib/import/m4/canonicalize.m4: Update.
4178         * gnulib/import/m4/chdir-long.m4: Update.
4179         * gnulib/import/m4/close.m4: Update.
4180         * gnulib/import/m4/closedir.m4: Update.
4181         * gnulib/import/m4/configmake.m4: Update.
4182         * gnulib/import/m4/d-ino.m4: Update.
4183         * gnulib/import/m4/d-type.m4: Update.
4184         * gnulib/import/m4/dirent_h.m4: Update.
4185         * gnulib/import/m4/dirfd.m4: Update.
4186         * gnulib/import/m4/dirname.m4: Update.
4187         * gnulib/import/m4/double-slash-root.m4: Update.
4188         * gnulib/import/m4/dup.m4: Update.
4189         * gnulib/import/m4/dup2.m4: Update.
4190         * gnulib/import/m4/eealloc.m4: Update.
4191         * gnulib/import/m4/environ.m4: Update.
4192         * gnulib/import/m4/errno_h.m4: Update.
4193         * gnulib/import/m4/error.m4: Update.
4194         * gnulib/import/m4/exponentd.m4: Update.
4195         * gnulib/import/m4/exponentl.m4: Update.
4196         * gnulib/import/m4/extensions.m4: Update.
4197         * gnulib/import/m4/extern-inline.m4: Update.
4198         * gnulib/import/m4/fchdir.m4: Update.
4199         * gnulib/import/m4/fcntl-o.m4: Update.
4200         * gnulib/import/m4/fcntl.m4: Update.
4201         * gnulib/import/m4/fcntl_h.m4: Update.
4202         * gnulib/import/m4/fdopendir.m4: Update.
4203         * gnulib/import/m4/filenamecat.m4: Update.
4204         * gnulib/import/m4/flexmember.m4: Update.
4205         * gnulib/import/m4/float_h.m4: Update.
4206         * gnulib/import/m4/fnmatch.m4: Update.
4207         * gnulib/import/m4/fnmatch_h.m4: Update.
4208         * gnulib/import/m4/fpieee.m4: Update.
4209         * gnulib/import/m4/frexp.m4: Update.
4210         * gnulib/import/m4/frexpl.m4: Update.
4211         * gnulib/import/m4/fstat.m4: Update.
4212         * gnulib/import/m4/fstatat.m4: Update.
4213         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4214         * gnulib/import/m4/getcwd-path-max.m4: Update.
4215         * gnulib/import/m4/getcwd.m4: Update.
4216         * gnulib/import/m4/getdtablesize.m4: Update.
4217         * gnulib/import/m4/getlogin.m4: Update.
4218         * gnulib/import/m4/getlogin_r.m4: Update.
4219         * gnulib/import/m4/getpagesize.m4: Update.
4220         * gnulib/import/m4/getprogname.m4: Update.
4221         * gnulib/import/m4/gettimeofday.m4: Update.
4222         * gnulib/import/m4/glibc21.m4: Update.
4223         * gnulib/import/m4/glob.m4: Update.
4224         * gnulib/import/m4/glob_h.m4: Update.
4225         * gnulib/import/m4/gnulib-cache.m4: Update.
4226         * gnulib/import/m4/gnulib-common.m4: Update.
4227         * gnulib/import/m4/gnulib-comp.m4: Update.
4228         * gnulib/import/m4/gnulib-tool.m4: Update.
4229         * gnulib/import/m4/hard-locale.m4: Update.
4230         * gnulib/import/m4/include_next.m4: Update.
4231         * gnulib/import/m4/inttypes-pri.m4: Update.
4232         * gnulib/import/m4/inttypes.m4: Update.
4233         * gnulib/import/m4/isnand.m4: Update.
4234         * gnulib/import/m4/isnanl.m4: Update.
4235         * gnulib/import/m4/largefile.m4: Update.
4236         * gnulib/import/m4/limits-h.m4: Update.
4237         * gnulib/import/m4/localcharset.m4: Update.
4238         * gnulib/import/m4/locale-fr.m4: Update.
4239         * gnulib/import/m4/locale-ja.m4: Update.
4240         * gnulib/import/m4/locale-zh.m4: Update.
4241         * gnulib/import/m4/localtime-buffer.m4: Update.
4242         * gnulib/import/m4/longlong.m4: Update.
4243         * gnulib/import/m4/lstat.m4: Update.
4244         * gnulib/import/m4/malloc.m4: Update.
4245         * gnulib/import/m4/malloca.m4: Update.
4246         * gnulib/import/m4/math_h.m4: Update.
4247         * gnulib/import/m4/mbrtowc.m4: Update.
4248         * gnulib/import/m4/mbsinit.m4: Update.
4249         * gnulib/import/m4/mbsrtowcs.m4: Update.
4250         * gnulib/import/m4/mbstate_t.m4: Update.
4251         * gnulib/import/m4/memchr.m4: Update.
4252         * gnulib/import/m4/memmem.m4: Update.
4253         * gnulib/import/m4/mempcpy.m4: Update.
4254         * gnulib/import/m4/memrchr.m4: Update.
4255         * gnulib/import/m4/mkdir.m4: Update.
4256         * gnulib/import/m4/mkstemp.m4: Update.
4257         * gnulib/import/m4/mmap-anon.m4: Update.
4258         * gnulib/import/m4/mode_t.m4: Update.
4259         * gnulib/import/m4/msvc-inval.m4: Update.
4260         * gnulib/import/m4/msvc-nothrow.m4: Update.
4261         * gnulib/import/m4/multiarch.m4: Update.
4262         * gnulib/import/m4/nocrash.m4: Update.
4263         * gnulib/import/m4/off_t.m4: Update.
4264         * gnulib/import/m4/onceonly.m4: Update.
4265         * gnulib/import/m4/open-cloexec.m4: Update.
4266         * gnulib/import/m4/open.m4: Update.
4267         * gnulib/import/m4/openat.m4: Update.
4268         * gnulib/import/m4/opendir.m4: Update.
4269         * gnulib/import/m4/pathmax.m4: Update.
4270         * gnulib/import/m4/rawmemchr.m4: Update.
4271         * gnulib/import/m4/readdir.m4: Update.
4272         * gnulib/import/m4/readlink.m4: Update.
4273         * gnulib/import/m4/realloc.m4: Update.
4274         * gnulib/import/m4/rename.m4: Update.
4275         * gnulib/import/m4/rewinddir.m4: Update.
4276         * gnulib/import/m4/rmdir.m4: Update.
4277         * gnulib/import/m4/save-cwd.m4: Update.
4278         * gnulib/import/m4/secure_getenv.m4: Update.
4279         * gnulib/import/m4/setenv.m4: Update.
4280         * gnulib/import/m4/signal_h.m4: Update.
4281         * gnulib/import/m4/ssize_t.m4: Update.
4282         * gnulib/import/m4/stat-time.m4: Update.
4283         * gnulib/import/m4/stat.m4: Update.
4284         * gnulib/import/m4/std-gnu11.m4: Update.
4285         * gnulib/import/m4/stdbool.m4: Update.
4286         * gnulib/import/m4/stddef_h.m4: Update.
4287         * gnulib/import/m4/stdint.m4: Update.
4288         * gnulib/import/m4/stdio_h.m4: Update.
4289         * gnulib/import/m4/stdlib_h.m4: Update.
4290         * gnulib/import/m4/strchrnul.m4: Update.
4291         * gnulib/import/m4/strdup.m4: Update.
4292         * gnulib/import/m4/strerror.m4: Update.
4293         * gnulib/import/m4/string_h.m4: Update.
4294         * gnulib/import/m4/strstr.m4: Update.
4295         * gnulib/import/m4/strtok_r.m4: Update.
4296         * gnulib/import/m4/sys_socket_h.m4: Update.
4297         * gnulib/import/m4/sys_stat_h.m4: Update.
4298         * gnulib/import/m4/sys_time_h.m4: Update.
4299         * gnulib/import/m4/sys_types_h.m4: Update.
4300         * gnulib/import/m4/tempname.m4: Update.
4301         * gnulib/import/m4/time_h.m4: Update.
4302         * gnulib/import/m4/unistd-safer.m4: Update.
4303         * gnulib/import/m4/unistd_h.m4: Update.
4304         * gnulib/import/m4/warn-on-use.m4: Update.
4305         * gnulib/import/m4/wchar_h.m4: Update.
4306         * gnulib/import/m4/wchar_t.m4: Update.
4307         * gnulib/import/m4/wctype_h.m4: Update.
4308         * gnulib/import/m4/wint_t.m4: Update.
4309         * gnulib/import/malloc.c: Update.
4310         * gnulib/import/malloc/scratch_buffer.h: Update.
4311         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4312         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4313         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4314         * gnulib/import/malloca.c: Update.
4315         * gnulib/import/malloca.h: Update.
4316         * gnulib/import/malloca.valgrind: Update.
4317         * gnulib/import/math.in.h: Update.
4318         * gnulib/import/mbrtowc.c: Update.
4319         * gnulib/import/mbsinit.c: Update.
4320         * gnulib/import/mbsrtowcs-impl.h: Update.
4321         * gnulib/import/mbsrtowcs-state.c: Update.
4322         * gnulib/import/mbsrtowcs.c: Update.
4323         * gnulib/import/memchr.c: Update.
4324         * gnulib/import/memmem.c: Update.
4325         * gnulib/import/mempcpy.c: Update.
4326         * gnulib/import/memrchr.c: Update.
4327         * gnulib/import/mkdir.c: Update.
4328         * gnulib/import/mkstemp.c: Update.
4329         * gnulib/import/msvc-inval.c: Update.
4330         * gnulib/import/msvc-inval.h: Update.
4331         * gnulib/import/msvc-nothrow.c: Update.
4332         * gnulib/import/msvc-nothrow.h: Update.
4333         * gnulib/import/open.c: Update.
4334         * gnulib/import/openat-die.c: Update.
4335         * gnulib/import/openat-priv.h: Update.
4336         * gnulib/import/openat-proc.c: Update.
4337         * gnulib/import/openat.c: Update.
4338         * gnulib/import/openat.h: Update.
4339         * gnulib/import/opendir.c: Update.
4340         * gnulib/import/pathmax.h: Update.
4341         * gnulib/import/pipe-safer.c: Update.
4342         * gnulib/import/rawmemchr.c: Update.
4343         * gnulib/import/readdir.c: Update.
4344         * gnulib/import/readlink.c: Update.
4345         * gnulib/import/realloc.c: Update.
4346         * gnulib/import/ref-add.sin: Update.
4347         * gnulib/import/ref-del.sin: Update.
4348         * gnulib/import/rename.c: Update.
4349         * gnulib/import/rewinddir.c: Update.
4350         * gnulib/import/rmdir.c: Update.
4351         * gnulib/import/same-inode.h: Update.
4352         * gnulib/import/save-cwd.c: Update.
4353         * gnulib/import/save-cwd.h: Update.
4354         * gnulib/import/scratch_buffer.h: Update.
4355         * gnulib/import/secure_getenv.c: Update.
4356         * gnulib/import/setenv.c: Update.
4357         * gnulib/import/signal.in.h: Update.
4358         * gnulib/import/stat-time.c: Update.
4359         * gnulib/import/stat-time.h: Update.
4360         * gnulib/import/stat-w32.c: Update.
4361         * gnulib/import/stat-w32.h: Update.
4362         * gnulib/import/stat.c: Update.
4363         * gnulib/import/stdbool.in.h: Update.
4364         * gnulib/import/stddef.in.h: Update.
4365         * gnulib/import/stdint.in.h: Update.
4366         * gnulib/import/stdio.in.h: Update.
4367         * gnulib/import/stdlib.in.h: Update.
4368         * gnulib/import/str-two-way.h: Update.
4369         * gnulib/import/strchrnul.c: Update.
4370         * gnulib/import/strdup.c: Update.
4371         * gnulib/import/streq.h: Update.
4372         * gnulib/import/strerror-override.c: Update.
4373         * gnulib/import/strerror-override.h: Update.
4374         * gnulib/import/strerror.c: Update.
4375         * gnulib/import/string.in.h: Update.
4376         * gnulib/import/stripslash.c: Update.
4377         * gnulib/import/strnlen1.c: Update.
4378         * gnulib/import/strnlen1.h: Update.
4379         * gnulib/import/strstr.c: Update.
4380         * gnulib/import/strtok_r.c: Update.
4381         * gnulib/import/sys_stat.in.h: Update.
4382         * gnulib/import/sys_time.in.h: Update.
4383         * gnulib/import/sys_types.in.h: Update.
4384         * gnulib/import/tempname.c: Update.
4385         * gnulib/import/tempname.h: Update.
4386         * gnulib/import/time.in.h: Update.
4387         * gnulib/import/unistd--.h: Update.
4388         * gnulib/import/unistd-safer.h: Update.
4389         * gnulib/import/unistd.in.h: Update.
4390         * gnulib/import/unsetenv.c: Update.
4391         * gnulib/import/verify.h: Update.
4392         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4393         * gnulib/import/wchar.in.h: Update.
4394         * gnulib/import/wctype.in.h: Update.
4395         * gnulib/import/xalloc-oversized.h: Update.
4396         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4397         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4398
4399 2018-08-16  Gary Benson <gbenson@redhat.com>
4400
4401         PR gdb/13000:
4402         * gdb/main.c (captured_main_1): Exit with nonzero status
4403         in batch mode if the last command to be executed failed.
4404         * NEWS: Mention the above.
4405
4406 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4407
4408         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4409         end of warning message.
4410
4411 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4412
4413         PR gdb/22943:
4414         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4415         (aarch64_extract_return_value): Use
4416         aapcs_is_vfp_call_or_return_candidate.
4417         (aarch64_return_in_memory): Likewise.
4418         (aarch64_store_return_value): Likewise.
4419
4420 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4421
4422         * aarch64-tdep.c
4423         (aapcs_is_vfp_call_or_return_candidate): Make static
4424         (pass_in_v_or_stack): Remove function.
4425         (pass_in_v_vfp_candidate): New function.
4426         (aarch64_push_dummy_call): Check for float register candidates.
4427
4428 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4429
4430         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4431         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4432         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4433
4434 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4435
4436         PR build/23399
4437         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4438         (struct ipa_sym_addresses): Rename to...
4439         (struct ipa_sym_addresses_common): ... this.
4440         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4441
4442 2018-08-28  Tom Tromey  <tom@tromey.com>
4443
4444         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4445         (token_fifo): Now a std::vector.
4446         (yylex, c_parse): Update.
4447         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4448         (token_fifo): Now a std::vector.
4449         (yylex, d_parse): Update.
4450         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4451         (token_fifo): Now a std::vector.
4452         (yylex, go_parse): Update.
4453
4454 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4455
4456         * parser-defs.h (struct type_stack) <elements>: Change type to
4457         std::vector<union type_stack_elt>.
4458         <depth, size>: Remove.
4459         * parse.c (parse_exp_in_context_1): Adjust.
4460         (type_stack_reserve): Remove.
4461         (check_type_stack_depth): Remove.
4462         (insert_into_type_stack): Adjust to std::vector.
4463         (insert_type): Likewise.
4464         (push_type): Likewise.
4465         (push_type_int): Likewise.
4466         (insert_type_address_space): Likewise.
4467         (pop_type): Likewise.
4468         (pop_type_int): Likewise.
4469         (pop_typelist): Likewise.
4470         (pop_type_stack): Likewise.
4471         (append_type_stack): Likewise.
4472         (push_type_stack): Likewise.
4473         (get_type_stack): Likewise.
4474         (type_stack_cleanup): Likewise.
4475         (push_typelist): Likewise.
4476         (follow_types): Likewise.
4477         (_initialize_parse): Likewise.
4478
4479 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4480
4481         * NEWS: Mention csky target.
4482
4483 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4484             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4485             Don Breazeal  <donb@codesourcery.com>
4486
4487         * csky-linux-tdep.c: New file.
4488         * csky-tdep.c: Likewise.
4489         * csky-tdep.h: Likewise.
4490         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4491         csky-tdep.o.
4492         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4493         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4494         * configure.tgt: Add csky support.
4495
4496 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4497
4498         * python/py-framefilter.c (py_print_frame): Print frame architecture
4499         when printing on an MI output.
4500
4501 2018-08-27  Tom Tromey  <tom@tromey.com>
4502
4503         PR build/23087:
4504         * configure: Rebuild.
4505         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4506
4507 2018-08-27  Tom Tromey  <tom@tromey.com>
4508
4509         * aarch64-linux-tdep.c
4510         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4511         casts to int.
4512
4513 2018-08-27  Tom Tromey  <tom@tromey.com>
4514
4515         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4516         unsigned.
4517         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4518         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4519         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4520         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4521         unsigned.
4522
4523 2018-08-27  Tom Tromey  <tom@tromey.com>
4524
4525         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4526         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4527
4528 2018-08-27  Tom Tromey  <tom@tromey.com>
4529
4530         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4531         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4532         ULONGEST_MAX.
4533         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4534         ULONGEST_MAX.
4535         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4536         ULONGEST_MAX.
4537         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4538         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4539         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4540         ULONGEST_MAX.
4541         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4542         (ppc64_linux_sigaction_tramp_frame)
4543         (ppc32_linux_sighandler_tramp_frame)
4544         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4545         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4546         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4547         * mn10300-linux-tdep.c (am33_linux_sigframe)
4548         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4549         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4550         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4551         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4552         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4553         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4554         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4555         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4556         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4557         * microblaze-linux-tdep.c
4558         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4559         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4560         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4561         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4562         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4563         * common/common-types.h (ULONGEST_MAX): New define.
4564         (CORE_ADDR_MAX): Fix formatting.
4565         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4566         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4567         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4568         (arm_linux_rt_sigreturn_tramp_frame)
4569         (arm_eabi_linux_sigreturn_tramp_frame)
4570         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4571         (thumb2_eabi_linux_sigreturn_tramp_frame)
4572         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4573         (arm_linux_restart_syscall_tramp_frame)
4574         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4575         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4576         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4577         ULONGEST_MAX.
4578         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4579
4580 2018-08-27  Tom Tromey  <tom@tromey.com>
4581
4582         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4583         CORE_ADDR_MAX.
4584         * mips-tdep.c (mips_deal_with_atomic_sequence)
4585         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4586         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4587         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4588         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4589         CORE_ADDR_MAX.
4590         * aarch64-tdep.c (aarch64_software_single_step): Use
4591         CORE_ADDR_MAX.
4592
4593 2018-08-27  Tom Tromey  <tom@tromey.com>
4594
4595         * linespec.c (complete_linespec_component): Add cast to "char".
4596         * completer.c (completion_tracker::build_completion_result): Add
4597         cast to "char".
4598
4599 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4600
4601         * solist.h (struct solist, struct target_so_ops): Fix
4602         indentation.
4603
4604 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4605
4606         * ada-tasks.c (ada_task_info_s): Remove typedef.
4607         (DEF_VEC_O(ada_task_info_s)): Remove.
4608         (struct ada_tasks_inferior_data): Initialize fields.
4609         <task_list>: Make an std::vector.
4610         (get_ada_tasks_inferior_data): Allocate with new.
4611         (ada_get_task_number): Adjust.
4612         (get_task_number_from_id): Likewise.
4613         (valid_task_id): Likewise.
4614         (ada_get_task_info_from_ptid): Likewise.
4615         (iterate_over_live_ada_tasks): Likewise.
4616         (add_ada_task): Likewise.
4617         (read_known_tasks): Likewise.
4618         (ada_build_task_list): Likewise.
4619         (print_ada_task_info): Likewise.
4620         (info_task): Likewise.
4621         (task_command_1): Likewise.
4622
4623 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4624
4625         * ada-lang.c (add_angle_brackets): Return std::string.
4626
4627 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4628
4629         * python/py-threadevent.c (py_get_event_thread): Initialize
4630         pythread.
4631
4632 2018-08-24  Pedro Alves  <palves@redhat.com>
4633
4634         * python/py-bpevent.c (create_breakpoint_event_object): Use
4635         copy-initialization.
4636         * python/py-continueevent.c (emit_continue_event): Use
4637         copy-initialization.
4638         * python/py-exitedevent.c (create_exited_event_object): Return a
4639         gdbpy_ref<>.
4640         (emit_exited_event): Use copy-initialization.
4641         * python/py-inferior.c (python_new_inferior)
4642         (python_inferior_deleted, add_thread_object): Use
4643         copy-initialization.
4644         * python/py-infevents.c (create_inferior_call_event_object)
4645         (create_register_changed_event_object)
4646         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4647         (emit_inferior_call_event, emit_memory_changed_event)
4648         (emit_register_changed_event): Use copy-initialization.
4649         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4650         Return a gdbpy_ref<>.
4651         (emit_new_objfile_event): Use copy-initialization.
4652         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4653         (emit_clear_objfiles_event): Use copy-initialization.
4654         * python/py-signalevent.c (create_signal_event_object): Use
4655         copy-initialization.
4656         * python/py-threadevent.c (create_thread_event_object): Use
4657         copy-initialization.
4658
4659 2018-08-24  Pedro Alves  <palves@redhat.com>
4660             Simon Marchi  <simon.marchi@ericsson.com>
4661
4662         PR gdb/23379
4663         * python/py-continueevent.c: Include "gdbthread.h".
4664         (create_continue_event_object): Add intro comment.  Add 'ptid'
4665         parameter.  Use it to find thread to pass to
4666         create_thread_event_object.
4667         (emit_continue_event): Pass PTID down to
4668         create_continue_event_object.
4669         * python/py-event.h (py_get_event_thread): Declare.
4670         (create_thread_event_object): Remove default from 'thread'
4671         parameter.
4672         * python/py-stopevent.c (create_stop_event_object): Use
4673         py_get_event_thread.
4674         * python/py-threadevent.c (get_event_thread): Rename to ...
4675         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4676         and use it to find the thread.
4677         (create_thread_event_object): Assert that THREAD isn't null.
4678         Don't find the event thread here.
4679
4680 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4681
4682         * block.h (blockrange, blockranges): New struct declarations.
4683         (struct block): Add new field named `ranges'.
4684         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4685         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4686         macros for accessing ranges in struct block.
4687         (make_blockranges): New declaration.
4688         block.c (make_blockranges): New function.
4689         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4690         for block.
4691         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4692         * blockframe.c (cache_pc_function_block): New static global.
4693         (clear_pc_function_cache): Clear cache_pc_function_block.
4694         (find_pc_partial_function): Move comment to symtab.h.  Add
4695         support for non-contiguous blocks.
4696         * cli/cli-cmds.c (block.h): Include.
4697         (print_disassembly): Handle printing of non-contiguous blocks.
4698         (disassemble_current_function): Likewise.
4699         (disassemble_command): Likewise.
4700
4701         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4702         BLOCK_START.
4703         * blockframe.c (get_pc_function_start): Likewise.
4704         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4705         (gcc_symbol_address): Likewise.
4706         * compile/compile-object-run.c (compile_object_run): Likewise.
4707         * compile/compile.c (get_expr_block_and_pc): Likewise.
4708         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4709         (func_addr_to_tail_call_list): Likewise.
4710         * findvar.c (default_read_var_value): Likewise.
4711         * inline-frame.c (inline_frame_this_id): Likewise.
4712         (skip-inline_frames): Likewise.
4713         * infcmd.c (until_next_command): Likewise.
4714         * linespec.c (convert_linespec_to_sals): Likewise.
4715         * parse.c (parse_exp_in_context_1): Likewise.
4716         * printcmd.c (build_address_symbolic): likewise.
4717         (info_address_command): Likewise.
4718         symtab.c (find_function_start_sal): Likewise.
4719         (skip_prologue_sal): Likewise.
4720         (find_function_alias_target): Likewise.
4721         (find_gnu_ifunc): Likewise.
4722         * stack.c (find_frame_funname): Likewise.
4723         * symtab.c (fixup_symbol_section): Likewise.
4724         (find_function_start_sal): Likewise.
4725         (skip_prologue_sal): Likewsie.
4726         (find_function_alias_target): Likewise.
4727         (find_gnu_ifunc): Likewise.
4728         * tracepoint.c (info_scope_command): Likewise.
4729         * value.c (value_fn_field): Likewise.
4730
4731         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4732         in place of find_pc_partial_function.
4733         * blockframe.c (find_function_entry_range_from_pc): New function.
4734         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4735         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4736         for each range in a block.
4737
4738
4739 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4740
4741         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4742         incrementation.
4743
4744 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4745
4746         * solib-svr4.c (read_program_headers_from_bfd): Return
4747         gdb::optional<gdb::byte_vector>.
4748         (svr4_exec_displacement): Adjust.
4749
4750 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4751
4752         * solib-svr4.c (read_program_header): Return
4753         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4754         (find_program_interpreter): Return
4755         gdb::optional<gdb::byte_vector>.
4756         (scan_dyntag_auxv): Adjust.
4757         (enable_break): Adjust.
4758         (svr4_exec_displacement): Adjust.
4759
4760 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4761
4762         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4763         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4764
4765 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4766
4767         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4768         string_vprintf.
4769         * guile/scm-utils.c (gdbscm_printf): Likewise.
4770         * serial.c (serial_printf): Likewise.
4771         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4772
4773 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4774
4775         * stack.c (print_frame): Print frame architecture when printing on
4776         an MI output.
4777         * NEWS: Mention new "arch" attribute in frame output.
4778
4779 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4780
4781         * arch/aarch64.h (aarch64_regnum): Update comment.
4782
4783 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4784
4785         * NEWS: Add SVE to 8.2 section.
4786
4787 2018-08-21  Pedro Alves  <palves@redhat.com>
4788
4789         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4790         out from gdbscm_parse_function_args.
4791         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4792         gdbscm_parse_function_args_1.
4793
4794 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4795
4796         PR gdb/17816
4797         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4798         operator.
4799
4800 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4801
4802         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4803
4804 2018-08-19  Michael Spang  <spang@google.com>
4805
4806         PR gdb/11786
4807         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4808         for PT_TLS segments.
4809
4810 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4811
4812         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4813         dwarf_variable_value.
4814         * dwarf2-frame.c (class dwarf_expr_executor):
4815         Add override for dwarf_variable_value.
4816         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4817         (class symbol_needs_eval_context): Likewise.
4818         (indirect_synthetic_pointer): Add forward declaration.
4819         (sect_variable_value): New function.
4820         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4821         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4822         for DW_OP_GNU_variable_value.
4823
4824 2018-08-16  Tom Tromey  <tom@tromey.com>
4825
4826         * top.c (read_command_file): Update.
4827         (command_line_input): Remove "repeat" argument.
4828         * ada-lang.c (get_selections): Update.
4829         * linespec.c (decode_line_2): Update.
4830         * defs.h (command_line_input): Remove argument.
4831         * cli/cli-script.c (read_next_line): Update.
4832         * python/py-gdb-readline.c: Update.
4833
4834 2018-08-17  Tom Tromey  <tom@tromey.com>
4835
4836         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4837         command_line_input.
4838
4839 2018-08-15  Tom Tromey  <tom@tromey.com>
4840
4841         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4842
4843 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4844
4845         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4846         If used, use find_pc_partial_function to find address range
4847         to disassemble.
4848         * mi/mi-main.c (mi_cmd_list_features): Report
4849         "data-disassemble-a-option" feature.
4850         * NEWS: Mention new -data-disassemble option -a.
4851
4852 2018-08-13  Tom Tromey  <tom@tromey.com>
4853
4854         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4855
4856 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4857
4858         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4859         (aarch64_linux_collect_sve_regset): Likewise.
4860         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4861         * regcache.h (regcache_map_entry_size): New function.
4862
4863 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4864
4865         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4866         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4867         (SVE_HEADER_VL_LENGTH): Likewise.
4868         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4869         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4870         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4871         (SVE_HEADER_SIZE_OFFSET): Likewise.
4872         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4873         (SVE_HEADER_VL_OFFSET): Likewise.
4874         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4875         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4876         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4877         (SVE_HEADER_SIZE): Likewise.
4878         (aarch64_linux_core_read_vq): Add function.
4879         (aarch64_linux_core_read_description): Check for SVE section.
4880
4881 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4882
4883         * aarch64-fbsd-tdep.c
4884         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4885         collect_size.
4886         * aarch64-linux-tdep.c
4887         (aarch64_linux_iterate_over_regset_sections): Likewise.
4888         * alpha-linux-tdep.c
4889         (alpha_linux_iterate_over_regset_sections):
4890         * alpha-nbsd-tdep.c
4891         (alphanbsd_iterate_over_regset_sections): Likewise.
4892         * amd64-fbsd-tdep.c
4893         (amd64fbsd_iterate_over_regset_sections): Likewise.
4894         * amd64-linux-tdep.c
4895         (amd64_linux_iterate_over_regset_sections): Likewise.
4896         * arm-bsd-tdep.c
4897         (armbsd_iterate_over_regset_sections): Likewise.
4898         * arm-fbsd-tdep.c
4899         (arm_fbsd_iterate_over_regset_sections): Likewise.
4900         * arm-linux-tdep.c
4901         (arm_linux_iterate_over_regset_sections): Likewise.
4902         * corelow.c (get_core_registers_cb): Likewise.
4903         (core_target::fetch_registers): Likewise.
4904         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4905         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4906         * gdbarch.h (void): Regenerate.
4907         * gdbarch.sh: Add supply_size and collect_size.
4908         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4909         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4910         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4911         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4912         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4913         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4914         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4915         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4916         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4917         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4918         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4919         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4920         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4921         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4922         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4923         Likewise.
4924         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4925         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4926         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4927         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4928         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4929         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4930         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4931         Likewise.
4932         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4933         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4934         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4935         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4936         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4937         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4938         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4939         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4940
4941 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4942
4943         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4944         with string_printf.
4945
4946 2018-08-10  Keith Seitz  <keiths@redhat.com>
4947
4948         * compile/compile-c-support.c (add_code_header, add_code_footer):
4949         Move into policy class.
4950         (c_push_user_expression, pop_user_expression_nop)
4951         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4952         (compile_program): New host class.
4953         (c_compile_program): New typedef.
4954         (c_compute_porgram): Use c_compile_program.
4955
4956 2018-08-10  Keith Seitz  <keiths@redhat.com>
4957
4958         * compile/compile-internal.h (compile_instance::~compile_instance):
4959         Remove calls to htab_delete.
4960         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4961         * compile.c (compile_instance::compile_instance): Initialize
4962         htab unique pointers.
4963         (compile_instance::get_cached_type, compile_instance::insert_type)
4964         (compile_instance::error_symbol_once): Update for unique_ptr.
4965
4966 2018-08-10  Keith Seitz  <keiths@redhat.com>
4967
4968         * compile/compile-c-symbols.c (struct symbol_error)
4969         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4970         (compile_instance::insert_symbol_error)
4971         (compile_instance::error_symbol_once): Move to ...
4972         * compile/compile.c: ... here.
4973
4974 2018-08-10  Keith Seitz  <keiths@redhat.com>
4975
4976         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4977         instead of `new_compile_instance'.
4978         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4979         Update description.
4980         If the symbol error map is not initialized, create it.
4981         (generate_c_for_for_one_symbol): Do not check/initialize
4982         the symbol error map.
4983         * compile/compile-c-types.c (compile_c_instance): Make a class.
4984         Update all callers.
4985         (compile_instance::compile_instance): Initialize the type cache.
4986         (get_cached_type): New function.
4987         (insert_type): Update description.
4988         (compile_c_instance::m_default_cflags): Define.
4989         (convert_type): Update description.  Use get_cached_type.
4990         (delete_instance): Moved to destructor.
4991         (new_compile_instance): Moved to constructor.
4992         * compile/compile-c.h (compile_c_instance): Make class inheriting
4993         from compile_instance.
4994         <base>: Remove field.
4995         <type_map, symbol_err_map>: Move to base class.
4996         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4997         * compile/compile-internal.h (compile_instance): Make class.
4998         <type_map_t, symbol_err_map_t>: Define.
4999         <fe>: Rename to `m_gcc_fe'.
5000         <scope, block, gcc_target_options>: Add `m_' prefix.
5001         <m_type_map, m_symbol_err_map>: New fields, moved from
5002         compile_c_instance.
5003         <destroy>: Remove.
5004         (convert_type, new_compile_instance): Remove.
5005         * compile/compile.c (cleanup_compile_instance): Remove.
5006         (compile_to_object): Use unique_ptr to eliminate cleanups.
5007         (compile_instance::set_print_callback, compile_instance::version)
5008         (compile_instance::set_verbose)
5009         (compile_instance::set_driver_filename)
5010         (compile_instance::set_triplet_regexp)
5011         (compile_instance::set_arguments)
5012         (compile_instance::set_source_file)
5013         (compile_instance::compile): Define.
5014
5015 2018-08-10  Keith Seitz  <keiths@redhat.com>
5016
5017         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5018         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5019         gcc-c-fe.def to define C plugin.
5020         (delete_instance): Delete `c_plugin'.
5021         (new_compile_instance): Initialize `c_plugin'.
5022         * compile/compile-c.h: Include gcc_c_plugin.h.
5023         (struct compile_c_instance) <c_plugin>: New member.
5024         * gcc-c-plugin.h: New file.
5025         Update all callers with API change.
5026
5027 2018-08-10  Keith Seitz  <keiths@redhat.com>
5028
5029         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5030         (HFILES_NO_SRCDIR): ... to here.
5031         Add compile-internal.h and compile-c.h.
5032         * compile/compile-c-support.c: Include compile-c.h.
5033         * compile/compile-c-symbols.c: Include compile-c.h.
5034         (generate_c_for_variable_locations): Update comment.
5035         * compile/compile-c-types.c: Include compile-c.h.
5036         * compile/compile-c.h: New file -- moved C language declarations
5037         from other files here.
5038         * compile/compile-internal.h: Do not include hashtab.h or
5039         common/enum-flags.h.
5040         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5041         (gcc_convert_symbol, gcc_symbol_address)
5042         (generate_c_for_variable_locations, c_get_mode_for_size)
5043         (c_get_range_decl_name): Definitions moved to compile-c.h.
5044         * compile/compile-loc2c.c: Include compile-c.h.
5045
5046 2018-08-10  Keith Seitz  <keiths@redhat.com>
5047
5048         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5049         (c_symbol_substitution_name): ... this.
5050         Update all callers.
5051
5052 2018-08-10  Keith Seitz  <keiths@redhat.com>
5053
5054         * compile/compile-c-support.c (c_compute_program): Use
5055         unique_xmalloc_ptr to eliminate cleanup.
5056         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5057         Return a unique_xmalloc_ptr and eliminate cleanup.
5058         * compile/compile-internal.h (generate_c_for_variable_locations):
5059         Return unique_xmalloc_ptr and update description.
5060
5061 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5062
5063         * corelow.c (core_target::get_core_register_section): Rename
5064         min_size to section_min_size.
5065
5066 2018-08-09  Jim Wilson  <jimw@sifive.com>
5067
5068         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5069         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5070         * NEWS: Mention new GNU/Linux RISC-V target.
5071         * configure.host: Add riscv*-*-linux*.
5072         * configure.nat: Add riscv*.
5073         * configure.tgt: Add riscv*-*-linux*.
5074         * riscv-linux-nat.c: New file.
5075         * riscv-linux-tdep.c: New file.
5076
5077 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5078
5079         * infrun.c (resume): Make static, add forward declaration.
5080         (proceed): Update header comment.
5081         * infrun.h (resume): Delete declaration.
5082
5083 2018-08-09  Tom Tromey  <tom@tromey.com>
5084
5085         * riscv-tdep.h: Minor formatting fixes.
5086
5087 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5088
5089         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5090         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5091         (test_mkdir_recursive): Likewise.
5092         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5093
5094 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5095
5096         * valarith.c (value_subscripted_rvalue): If an array is not in
5097         memory, and we don't know the upper bound, then we can't know that
5098         the requested element exists or not.
5099
5100 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5101
5102         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5103         (target_options_to_string): Add comment.
5104
5105 2018-08-08  Tom Tromey  <tom@tromey.com>
5106
5107         * unittests/scoped_mmap-selftests.c: Check result of "write".
5108
5109 2018-08-08  Jim Wilson  <jimw@sifive.com>
5110
5111         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5112         (decode_register_index_short): New.
5113         (decode_j_type_insn, decode_cj_type_insn): New.
5114         (decode_b_type_insn, decode_cb_type_insn): New.
5115         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5116         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5117         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5118         is_c_sw_insn instead of is_sw_insn.
5119         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5120         (riscv_software_single_step): New.
5121         * riscv-tdep.h (riscv_software_single_step): Declare.
5122
5123         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5124         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5125
5126 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5127
5128         PR gdb/18050:
5129         * target.c (dispose_inferior): Don't dispose of inferiors that are
5130         already killed.
5131
5132 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5133
5134         * remote.c (remote_target::download_tracepoint): Change char* to
5135         const char*.
5136
5137 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5138
5139         * target.h (target_options_to_string): Return an std::string.
5140         * target.c (str_comma_list_concat_elem): Return void, use
5141         std::string.
5142         (do_option): Likewise.
5143         (target_options_to_string): Return an std::string.
5144         * linux-nat.c (linux_nat_target::wait): Adjust.
5145         * target-debug.h (target_debug_print_options): Adjust.
5146
5147 2018-08-07  Tom Tromey  <tom@tromey.com>
5148
5149         * Makefile.in (CPPFLAGS): New variable.
5150         (INTERNAL_CPPFLAGS): Use it.
5151
5152 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5153
5154         * NEWS: Mention the index cache.
5155
5156 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5157
5158         * common/pathstuff.h (get_standard_cache_dir): New.
5159         * common/pathstuff.c (get_standard_cache_dir): New.
5160         * build-id.h (build_id_to_string): New.
5161         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5162         DEBUG_STR_SUFFIX): Move to here.
5163         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5164         DEBUG_STR_SUFFIX): Move from there.
5165         (write_psymtabs_to_index): Make non-static, add basename
5166         parameter.  Write to temporary files, rename when done.
5167         (save_gdb_index_command): Adjust call to
5168         write_psymtabs_to_index.
5169         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5170         field.
5171         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5172         (get_gdb_index_contents_from_cache): New.
5173         (get_gdb_index_contents_from_cache_dwz): New.
5174         (dwarf2_initialize_objfile): Read index from cache.
5175         (dwarf2_build_psymtabs): Save to index.
5176         * dwarf-index-cache.h: New file.
5177         * dwarf-index-cache.c: New file.
5178         * dwarf-index-write.h: New file.
5179
5180 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5181
5182         * gnulib/aclocal.m4: Re-generate.
5183         * gnulib/config.in: Re-generate.
5184         * gnulib/configure: Re-generate.
5185         * gnulib/import/Makefile.am: Re-generate.
5186         * gnulib/import/Makefile.in: Re-generate.
5187         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5188         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5189         * gnulib/import/m4/mkdir.m4: New file.
5190         * gnulib/import/mkdir.c: New file.
5191         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5192         module.
5193
5194 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5195
5196         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5197         * common/scoped_mmap.c: New file.
5198         * common/scoped_mmap.h (destroy): New method.
5199         (~scoped_mmap, reset): Use destroy.
5200         (scoped_mmap): New move constructor.
5201         (mmap_file): New declaration.
5202         * unittests/scoped_mmap-selftests.c (test_normal,
5203         test_invalid_filename, run_tests): New functions.
5204         (_initialize_scoped_mmap_selftests): Register selftest.
5205
5206 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5207
5208         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5209         (read_gdb_index_from_buffer): ... this.  Remove section
5210         parameter, add buffer parameter.
5211         (get_gdb_index_contents_ftype,
5212         get_gdb_index_contents_dwz_ftype): New typedefs.
5213         (dwarf2_read_gdb_index): Add callback parameters to get the
5214         index contents.
5215         (get_gdb_index_contents_from_section): New.
5216         (dwarf2_initialize_objfile): Update call to
5217         dwarf2_read_gdb_index.
5218
5219 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5220
5221         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5222         (gdb_open_cloexec): Likewise.
5223         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5224         (commandline_from_pid): Likewise.
5225         (linux_xfer_osdata_threads): Likewise.
5226         (linux_xfer_osdata_fds): Likewise.
5227         * ada-lang.c (is_package_name): Likewise.
5228         * auxv.c (procfs_xfer_auxv): Likewise.
5229         * breakpoint.c (print_one_breakpoint_location): Use
5230         uiout::field_fmt.
5231         (print_one_catch_solib): Use string_printf.
5232         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5233         (add_pe_forwarded_sym): Likewise.
5234         * dwarf2read.c (create_type_unit_group): Likewise.
5235         (build_error_marker_type): Likewise.
5236         * infcall.c (get_function_name): Likewise.
5237         * valprint.c (print_converted_chars_to_obstack): Likewise.
5238         * xtensa-tdep.c (xtensa_register_type): Likewise.
5239
5240 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5241
5242         * remote.c (remote_target::download_tracepoint): Fix format
5243         string errors.
5244
5245 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5246
5247         * tracefile.c: Include common/byte-vector.h.
5248         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5249         with trace_regblock_size if needed.  Update uses of buf.
5250
5251 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5252
5253         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5254         std::vector<unsigned char>.
5255         * tracepoint.c (collection_list::collection_list): Remove
5256         m_regs_mask initializer from initializer list.  Resize
5257         m_regs_mask using the largest remote register number.
5258         (collection_list::add_remote_register): Remove size check on
5259         m_regs_mask.  Use at to access element.
5260         (collection_list::stringify): Change type of temp_buf to
5261         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5262         stringify the register mask.  Use pack_hex_byte for the register
5263         mask.
5264
5265 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5266
5267         * tracepoint.h (class collection_list) <add_register>: Remove.
5268         <add_remote_register, add_ax_registers, add_local_register>:
5269         Declare.
5270         <add_memrange>: Add scope parameter.
5271         * tracepoint.c (encode_actions_1): Likewise.
5272         (collection_list::add_register): Rename to ...
5273         (collection_list::add_remote_register): ... this.  Update
5274         comment.
5275         (collection_list::add_ax_registers, add_local_register): New
5276         methods.
5277         (collection_list::add_memrange): Add scope parameter.  Call
5278         add_local_register instead of add_register.
5279         (finalize_tracepoint_aexpr): New function.
5280         (collection_list::collect_symbol): Update calls to add_memrange.
5281         Call add_local_register instead of add_register.  Call
5282         add_ax_registers.  Call finalize_tracepoint_aexpr.
5283         (encode_actions_1): Get remote regnos for $reg action.  Call
5284         add_remote_register, add_ax_registers, and add_local_register.
5285         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5286         (validate_actionline): Call finalize_tracepoint_aexpr.
5287
5288 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5289
5290         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5291         Replace array buf with gdb::char_vector buf, of size
5292         get_remote_packet_size ().  Replace references to buf and
5293         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5294         and xsnprintf with snprintf.  Raise errors if the buffer is too
5295         small.
5296
5297 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5298
5299         * remote.c (remote_target::download_tracepoint): Fix the has_more
5300         predicate in the QTDP action list iteration.
5301
5302 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5303
5304         * remote.c (remote_target::download_tracepoint): Fix indentation
5305         in for block.
5306
5307 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5308
5309         * proc-api.c (_initialize_proc_api): Remove c, unused.
5310         * procfs.c (procfs_init_inferior): Remove signals, unused.
5311         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5312         unused.
5313
5314 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5315             Andrew Burgess  <andrew.burgess@embecosm.com>
5316
5317         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5318         'W_STOPCODE (0)' as this could be ambiguous.
5319
5320 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5321
5322         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5323         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5324         "ai_socktype").
5325
5326 2018-08-02  Tom Tromey  <tom@tromey.com>
5327
5328         PR symtab/16842.
5329         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5330         symbols.
5331         (process_structure_scope): Likewise.
5332
5333 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5334
5335         PR gdb/22629:
5336         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5337         kill inferior.
5338
5339 2018-08-02  Tom Tromey  <tom@tromey.com>
5340
5341         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5342         (darwin_suspend_inferior, darwin_resume_inferior)
5343         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5344         (darwin_check_new_threads): Check result of get_darwin_inferior.
5345
5346 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5347
5348         GDB 8.1.1 released.
5349
5350 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5351
5352         * varobj.c (varobj_get_path_expr_parent): Report an error if
5353         parent is a dynamic varobj.
5354
5355 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5356
5357         * gnulib/aclocal.m4: Re-generate.
5358         * gnulib/config.in: Re-generate.
5359         * gnulib/configure: Re-generate.
5360         * gnulib/import/Makefile.in: Re-generate.
5361         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5362         * gnulib/import/m4/onceonly.m4: Re-generate.
5363
5364 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5365
5366         * target-descriptions.c (struct xml_test_tdesc): New.
5367         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5368         (record_xml_tdesc): Update.
5369         (maintenance_check_xml_descriptions): Update.
5370         * target-descriptions.h (record_xml_tdesc): Update comment.
5371
5372 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5373
5374         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5375         checking array bounds are defined.
5376
5377 2018-07-30  Tom Tromey  <tom@tromey.com>
5378
5379         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5380         irreflexivity violation.
5381
5382 2018-07-30  Tom Tromey  <tom@tromey.com>
5383
5384         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5385         * value.c (unpack_long): Remove lint code.
5386         * valops.c (value_ind): Remove lint code.
5387         * valarith.c (value_x_binop, value_x_unop, value_equal)
5388         (value_pos): Remove lint code.
5389
5390 2018-07-28  Tom de Vries  <tdevries@suse.de>
5391
5392         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5393         with undefined upper bound as <optimized out>.
5394
5395 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5396
5397         * gcore.in: Rename variable "name" to "prefix".  Expand
5398         "usage" text.
5399
5400 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5401
5402         * windows-nat.c (windows_nat_target::create_inferior): Update to
5403         call close() in global namespace.
5404
5405 2018-07-26  Tom Tromey  <tom@tromey.com>
5406
5407         * dwarf-index-write.c (add_address_entry): Don't add objfile
5408         offsets.
5409         * dbxread.c (find_stab_function): Rename from
5410         find_stab_function_addr.  Return a bound_minimal_symbol.
5411         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5412         Don't add objfile offsets.
5413         (end_psymtab): Use raw_text_low, raw_text_high,
5414         MSYMBOL_VALUE_RAW_ADDRESS.
5415         (read_ofile_symtab): Update.
5416         (process_one_symbol): Update.
5417         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5418         offsets.
5419         (dw2_relocate): Remove.
5420         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5421         searching addrmap.
5422         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5423         Update.
5424         (process_psymtab_comp_unit_reader, add_partial_symbol)
5425         (add_partial_subprogram, dwarf2_ranges_read): Update.
5426         (load_partial_dies): Update.
5427         (add_address_entry): Don't add objfile offsets.
5428         (dwarf2_build_include_psymtabs): Update.
5429         (create_addrmap_from_aranges): Don't add objfile offsets.
5430         (dw2_find_pc_sect_compunit_symtab): Update.
5431         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5432         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5433         Update.
5434         (parse_partial_symbols): Don't add objfile offsets.  Use
5435         raw_text_low, raw_text_high.  Update.
5436         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5437         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5438         or call 'relocate' quick function.  Clear psymbol_map.
5439         * psympriv.h (struct partial_symbol) <address>: Add section
5440         offset.
5441         <set_unrelocated_address>: Rename from set_address.
5442         <raw_text_low, raw_text_high>: New methods.
5443         <text_low, text_high>: Add objfile parameter.
5444         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5445         set_unrelocated_address.
5446         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5447         (find_pc_psymbol): Update.
5448         (fixup_psymbol_section, relocate_psymtabs): Remove.
5449         (dump_psymtab, psym_functions): Update.
5450         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5451         parameter.
5452         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5453         (start_psymtab_common): Update.
5454         * symfile-debug.c (debug_qf_relocate): Remove.
5455         (debug_sym_quick_functions): Update.
5456         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5457         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5458         Update.
5459
5460 2018-07-26  Tom Tromey  <tromey@redhat.com>
5461
5462         * dbxread.c (end_psymtab): Use text_high_valid and
5463         text_low_valid.
5464         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5465         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5466         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5467         Update comment.
5468         <text_low_valid, text_high_valid>: New fields.
5469         <set_text_low, set_text_high>: Update.
5470         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5471
5472 2018-07-26  Tom Tromey  <tom@tromey.com>
5473
5474         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5475         Update.
5476         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5477         textlow and texthigh fields.
5478         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5479         Update.
5480         * mdebugread.c (parse_lines, parse_partial_symbols)
5481         (psymtab_to_symtab_1): Update.
5482         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5483         Rename fields.  Update comment.  Now private.
5484         <text_low, text_high, set_text_low, set_text_high>: New methods.
5485         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5486         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5487         (start_psymtab_common, maintenance_info_psymtabs)
5488         (maintenance_check_psymtabs): Update.
5489         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5490         texthigh fields.
5491         (scan_xcoff_symtab): Update.
5492
5493 2018-07-26  Tom Tromey  <tromey@redhat.com>
5494
5495         * psympriv.h (struct partial_symbol) <unrelocated_address,
5496         address, set_address>: New methods.
5497         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5498         (fixup_psymbol_section, relocate_psymtabs): Update.
5499         (print_partial_symbols): Add 'objfile' parameter.  Update.
5500         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5501         Update.
5502
5503 2018-07-26  Tom Tromey  <tom@tromey.com>
5504
5505         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5506         (debug_names::write_psymbols): Update.
5507         * psympriv.h (struct partial_symbol): Derive from
5508         general_symbol_info.
5509         <obj_section>: New method.
5510         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5511         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5512         (find_pc_sect_psymbol, fixup_psymbol_section)
5513         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5514         (print_partial_symbols, recursively_search_psymtabs)
5515         (compare_psymbols, psymbol_hash, psymbol_compare)
5516         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5517         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5518
5519 2018-07-26  Tom Tromey  <tromey@redhat.com>
5520
5521         * dbxread.c (end_psymtab): Remove dead code.
5522
5523 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5524
5525         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5526         DWARF unwinders are disabled.
5527         * dwarf2-frame.c: Add dwarf2read.h include.
5528         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5529         disabled.
5530         (dwarf2_frame_unwinders_enabled_p): Define.
5531         (show_dwarf_unwinders_enabled_p): New function.
5532         (_initialize_dwarf2_frame): Register switch to control DWARF
5533         unwinder use.
5534         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5535         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5536         (show_dwarf_cmdlist): Remove static keyword.
5537         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5538         (show_dwarf_cmdlist): Declare.
5539         * NEWS: Document new feature.
5540
5541 2018-07-26  Tom de Vries  <tdevries@suse.de>
5542
5543         PR breakpoints/23366
5544         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5545
5546 2018-07-26  Tom de Vries  <tdevries@suse.de>
5547
5548         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5549         DW_AT_count can't be translated to a dynamic prop.
5550
5551 2018-07-25  Tom de Vries  <tdevries@suse.de>
5552
5553         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5554         try/catch.
5555
5556 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5557
5558         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5559
5560 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5561
5562         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5563
5564 2018-07-24  Keith Seitz  <keiths@redhat.comt
5565
5566         PR symtab/23010
5567         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5568         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5569         instead of add_symbol_to_list.
5570         (read_file_scope): Call prepare_one_comp_unit before reading
5571         any other DIEs.
5572
5573 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5574
5575         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5576
5577 2018-07-24  Tom Tromey  <tom@tromey.com>
5578
5579         * utils.c (malloc, realloc, free): Don't declare.
5580         * configure, config.in: Rebuild.
5581         * configure.ac: Don't check for declarations of free, malloc, or
5582         realloc.
5583
5584 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5585
5586         * aarch64-linux-nat.c
5587         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5588         variable.
5589         * arm-linux-nat.c (fetch_regs): Likewise.
5590         (store_regs): Likewise.
5591         (fetch_vfp_regs): Likewise.
5592         (store_vfp_regs): Likewise.
5593         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5594         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5595         (arm_linux_nat_target::insert_watchpoint): Likewise.
5596         (arm_linux_nat_target::remove_watchpoint): Likewise.
5597         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5598         Likewise.
5599         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5600         Likewise.
5601         * ppc-linux-nat.c (fetch_register): Likewise.
5602         (fetch_all_gp_regs): Likewise.
5603         (fetch_ppc_registers): Likewise.
5604         (store_all_gp_regs): Likewise.
5605         (store_ppc_registers): Likewise.
5606         (hwdebug_insert_point): Likewise.
5607         (can_use_watchpoint_cond_accel): Likewise.
5608         * remote-sim.c (gdb_os_write_stdout): Likewise.
5609
5610 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5611             Tom Tromey  <tom@tromey.com>
5612
5613         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5614         test for it.
5615         * configure: Rebuild.
5616
5617 2018-07-22  Tom Tromey  <tom@tromey.com>
5618
5619         * regformats/regdat.sh: Define xmltarget_${name} inside
5620         #ifndef IN_PROCESS_AGENT.
5621
5622 2018-07-22  Tom Tromey  <tom@tromey.com>
5623
5624         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5625
5626 2018-07-22  Tom Tromey  <tom@tromey.com>
5627
5628         * symfile.c (reread_symbols): Notify iter, not objfile.
5629
5630 2018-07-22  Tom Tromey  <tom@tromey.com>
5631
5632         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5633         Use arch_ops.
5634         (ravenscar_thread_target::prepare_to_store): Likewise.
5635
5636 2018-07-22  Tom Tromey  <tom@tromey.com>
5637
5638         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5639         unused variable.  Call value_fetch_lazy when needed.
5640         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5641         Remove unused variable.  Call value_fetch_lazy when needed.
5642
5643 2018-07-22  Tom Tromey  <tom@tromey.com>
5644
5645         * m32c-tdep.c (mark_dma): Return void.
5646         (make_regs): Remove unused declarations.
5647
5648 2018-07-22  Tom Tromey  <tom@tromey.com>
5649
5650         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5651         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5652         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5653         bkscm_get_valid_block_smob_arg_unsafe for effect.
5654
5655 2018-07-22  Tom Tromey  <tom@tromey.com>
5656
5657         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5658         value_type.
5659
5660 2018-07-22  Tom Tromey  <tom@tromey.com>
5661
5662         * windows-nat.c (saved_context): Conditionally define.
5663         * remote.c (remote_target::remote_btrace_maybe_reopen):
5664         Conditionally declare "warned".
5665         * inflow.c (sigquit_ours): Conditionally define.
5666         (new_tty): Move "tty" declaration inside #if.
5667         * guile/guile.c (guile_datadir): Conditionally define.
5668         * charset.c (set_be_le_names): Move some declarations inside #if.
5669         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5670         #if.
5671         (parse_xml_btrace_conf): Likewise.
5672
5673 2018-07-22  Tom Tromey  <tom@tromey.com>
5674
5675         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5676
5677 2018-07-22  Tom Tromey  <tom@tromey.com>
5678
5679         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5680         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5681         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5682         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5683         * stack.c (frame_apply_level_command): Remove unused variable.
5684         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5685         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5686         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5687         unused variable.
5688         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5689         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5690         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5691         variable.
5692         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5693         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5694         variable.
5695         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5696         Remove unused variable.
5697         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5698         variable.
5699         * common/tdesc.c (print_xml_feature::visit): Remove unused
5700         variable.
5701         * compile/compile-object-load.c (store_regs): Remove unused
5702         variables.
5703         * complaints.c (clear_complaints): Remove unused variable.
5704         * corelow.c (core_target_open): Remove unused variable.
5705         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5706         variable.
5707         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5708         variable.
5709         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5710         variable.
5711         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5712         variable.
5713         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5714         variable.
5715         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5716         variable.
5717         * ia64-tdep.c (examine_prologue): Remove unused variable.
5718         * infcall.c (run_inferior_call): Remove unused variable.
5719         * inferior.c (exit_inferior): Remove unused variable.
5720         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5721         * linespec.c (decode_line_2): Remove unused variable.
5722         * linux-nat.c (super_close): Remove.
5723         * linux-tdep.c (linux_info_proc): Remove unused variable.
5724         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5725         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5726         Remove unused variable.
5727         * parse.c (find_minsym_type_and_address): Remove unused variable.
5728         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5729         variable.
5730         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5731         variable.
5732         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5733         variables.
5734         * record-btrace.c (record_btrace_target::store_registers): Remove
5735         unused variable.
5736         (cmd_show_record_btrace_cpu): Remove unused variable.
5737         * riscv-tdep.c (riscv_register_reggroup_p)
5738         (riscv_push_dummy_call, riscv_return_value): Remove unused
5739         variable.
5740         * rust-exp.y (literal): Remove unused variable.
5741         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5742         unused variable.
5743         <STRUCTOP_ANONYMOUS>: Likewise.
5744         * s390-linux-tdep.c (s390_linux_init_abi_31)
5745         (s390_linux_init_abi_64): Remove unused variable.
5746         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5747         (file_select_thread, net_windows_open, _initialize_ser_windows):
5748         Remove unused variables.
5749         * symtab.c (find_pc_sect_line): Remove unused variable.
5750         * target-memory.c (compute_garbled_blocks): Remove unused
5751         variable.
5752         (target_write_memory_blocks): Remove unused variable.
5753         * target.c (target_stack::unpush): Remove unused variables.
5754         * tracepoint.c (start_tracing, all_tracepoint_actions)
5755         (merge_uploaded_trace_state_variables)
5756         (print_one_static_tracepoint_marker): Remove unused variable.
5757         * unittests/basic_string_view/element_access/char/1.cc (test01):
5758         Remove unused variable.
5759         * windows-nat.c (windows_continue, windows_add_all_dlls)
5760         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5761         Remove unused variables.
5762
5763 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5764
5765         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5766         attr_profile in HAVE_ELF.
5767         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5768         HAVE_ELF.
5769
5770 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5771
5772         * frame.c (frame_register_unwind): Change parameter name.
5773         (frame_unwind_register): Likewise.
5774         (frame_unwind_register_value): Likewise.
5775         (frame_unwind_register_signed): Likewise.
5776         (frame_unwind_register_unsigned): Likewise.
5777         * frame.h (frame_register_unwind): Likewise.
5778         (frame_unwind_register): Likewise.
5779         (frame_unwind_register_value): Likewise.
5780         (frame_unwind_register_signed): Likewise.
5781         (frame_unwind_register_unsigned): Likewise.
5782         (frame_unwind_arch): Likewise.
5783
5784 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5785
5786         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5787         ISA maintenance.
5788
5789 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5790
5791         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5792         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5793         hand.
5794
5795 2018-07-20  Keith Seitz  <keiths@redhat.com>
5796
5797         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5798         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5799         m_compunit_symtab, m_language>: Add "m_" prefix.
5800         Update all uses.
5801         * buildsym.c: Update all uses.
5802
5803 2018-07-20  Tom Tromey  <tom@tromey.com>
5804
5805         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5806         * buildsym.h (record_line_ftype): Remove typedef.
5807
5808 2018-07-20  Tom Tromey  <tom@tromey.com>
5809
5810         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5811         (end_expandable_symtab): Likewise.
5812         (end_symtab_get_static_block): Likewise.
5813         (end_symtab_from_static_block): Likewise.
5814         * buildsym-legacy.c (augment_type_symtab): Remove.
5815         (end_expandable_symtab): Remove.
5816         (end_symtab_get_static_block): Remove.
5817         (end_symtab_from_static_block): Remove.
5818
5819 2018-07-20  Tom Tromey  <tom@tromey.com>
5820
5821         * dwarf2read.c: Include buildsym.h.
5822         (struct dwarf2_cu) <builder>: New method.
5823         (fixup_go_packaging): Update.
5824         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5825         use scoped_free_pendings.
5826         (using_directives): Add "cu" parameter, remove "language".
5827         (read_import_statement, setup_type_unit_groups, )
5828         (read_func_scope, read_lexical_block_scope)
5829         (dwarf2_record_block_ranges, read_namespace): Update.
5830         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5831         (lnp_state_machine::handle_end_sequence): Update.
5832         (class lnp_state_machine) <m_cu>: New member.
5833         <m_record_line_callback>: Remove.
5834         <m_currently_recording_lines>: New member.
5835         (lnp_state_machine::handle_set_file): Update.
5836         (noop_record_line): Remove.
5837         (dwarf_record_line_p): Add cu parameter.
5838         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5839         (lnp_state_machine::record_line)
5840         (lnp_state_machine::lnp_state_machine)
5841         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5842         (dwarf_decode_lines): Update.
5843         (dwarf2_start_subfile): Add cu parameter.
5844         (dwarf2_start_symtab, new_symbol): Update.
5845         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5846         Remove dwarf2_per_objfile parameter.
5847         (dwarf_decode_macros): Update.
5848
5849 2018-07-20  Tom Tromey  <tom@tromey.com>
5850
5851         * stabsread.c (define_symbol): Update.
5852         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5853         * dwarf2read.c (new_symbol): Update.
5854         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5855         * cp-namespace.c: Include buildsym.h.
5856         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5857         * buildsym-legacy.c (get_buildsym_compunit): New function.
5858
5859 2018-07-20  Tom Tromey  <tom@tromey.com>
5860
5861         * xcoffread.c: Include buildsym-legacy.h.
5862         * windows-nat.c: Include buildsym-legacy.h.
5863         * stabsread.c: Include buildsym-legacy.h.
5864         * mdebugread.c: Include buildsym-legacy.h.
5865         * buildsym-legacy.h: New file.
5866         * buildsym-legacy.c: New file, from buildsym.c.
5867         * go32-nat.c: Include buildsym-legacy.h.
5868         * dwarf2read.c: Include buildsym-legacy.h.
5869         * dbxread.c: Include buildsym-legacy.h.
5870         * cp-namespace.c: Include buildsym-legacy.h.
5871         * coffread.c: Include buildsym-legacy.h.
5872         * buildsym.h: Move some contents to buildsym-legacy.h.
5873         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5874         buildsym-legacy.c.
5875         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5876
5877 2018-07-20  Tom Tromey  <tom@tromey.com>
5878
5879         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5880         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5881         (buildsym_compunit::buildsym_compunit)
5882         (buildsym_compunit::~buildsym_compunit)
5883         (buildsym_compunit::get_macro_table): Define.
5884
5885 2018-07-20  Tom Tromey  <tom@tromey.com>
5886
5887         * buildsym.c (reset_symtab_globals): Remove.
5888         (buildsym_compunit::end_symtab_from_static_block): Update.
5889         (buildsym_compunit::augment_type_symtab): Update.
5890         (end_symtab_from_static_block): Call free_buildsym_compunit.
5891         (augment_type_symtab, end_symtab, end_expandable_symtab):
5892         Likewise.
5893
5894 2018-07-20  Tom Tromey  <tom@tromey.com>
5895
5896         * arch-utils.c: Do not include buildsym.h.
5897         * mipsread.c: Do not include buildsym.h.
5898         * machoread.c: Do not include buildsym.h.
5899         * elfread.c: Do not include buildsym.h.
5900
5901 2018-07-20  Tom Tromey  <tom@tromey.com>
5902
5903         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5904         initialization.
5905         (buildsym_compunit): Add new constructor.
5906         (struct buildsym_compunit) <get_last_source_file, finish_block,
5907         record_block_range, start_subfile, patch_subfile_names,
5908         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5909         set_last_source_start_addr, get_last_source_start_addr,
5910         get_local_using_directives, set_local_using_directives,
5911         get_global_using_directives, outermost_context_p,
5912         get_current_context_stack, get_context_stack_depth,
5913         get_current_subfile, get_local_symbols, get_file_symbols,
5914         get_global_symbols, record_debugformat, record_producer,
5915         push_context, pop_context, end_symtab_get_static_block,
5916         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5917         New public methods.
5918         <record_pending_block, finish_block_internal, make_blockvector,
5919         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5920         private methods.
5921         Update all users.
5922
5923 2018-05-22  Tom Tromey  <tom@tromey.com>
5924
5925         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5926         parameter.
5927         (finish_block_internal): Update.
5928
5929 2018-07-20  Tom Tromey  <tom@tromey.com>
5930
5931         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5932         parameter.
5933         (finish_block_internal): Update.
5934
5935 2018-07-20  Tom Tromey  <tom@tromey.com>
5936
5937         * buildsym.h (EXTERN): Don't define or undef.
5938         * buildsym.c (EXTERN): Don't define.
5939
5940 2018-07-20  Tom Tromey  <tom@tromey.com>
5941
5942         * buildsym.c: Remove TODO comment.
5943
5944 2018-07-20  Tom Tromey  <tom@tromey.com>
5945
5946         * coffread.c (coff_symtab_read): Update.
5947         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5948         (xcoff_new_init): Update.
5949         * mipsread.c (mipscoff_new_init): Update.
5950         * mdebugread.c (mdebug_build_psymtabs): Update.
5951         * elfread.c (elf_new_init): Update.
5952         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5953         Update.
5954         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5955         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5956         (stabsect_build_psymtabs): Update.
5957         * buildsym.h (buildsym_init): Don't declare.
5958         * buildsym.c: Update comment.
5959         (prepare_for_building): Remove.
5960         (start_symtab, restart_symtab): Update.
5961         (reset_symtab_globals): Update comment.
5962         (buildsym_init): Remove.
5963
5964 2018-07-20  Tom Tromey  <tom@tromey.com>
5965
5966         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5967         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5968         (read_enum_type, common_block_start, common_block_end)
5969         (cleanup_undefined_types_1, finish_global_stabs): Update.
5970         * mdebugread.c (psymtab_to_symtab_1): Update.
5971         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5972         (read_lexical_block_scope, new_symbol): Update.
5973         * dbxread.c (process_one_symbol): Update.
5974         * coffread.c (coff_symtab_read, process_coff_symbol)
5975         (coff_read_enum_type): Update.
5976         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5977         declare.
5978         (get_local_symbols, get_file_symbols, get_global_symbols): New
5979         functions.
5980         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5981         m_global_symbols.
5982         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5983         (~scoped_free_pendings): Update.
5984         (finish_block, prepare_for_building, reset_symtab_globals)
5985         (end_symtab_get_static_block, end_symtab_with_blockvector)
5986         (augment_type_symtab, push_context): Update.
5987         (get_local_symbols, get_file_symbols, get_global_symbols): New
5988         functions.
5989         (buildsym_init): Update.
5990
5991 2018-07-20  Tom Tromey  <tom@tromey.com>
5992
5993         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5994         (process_full_type_unit): Likewise.
5995         (dwarf2_start_symtab): Set list_in_scope.
5996
5997 2018-07-20  Tom Tromey  <tom@tromey.com>
5998
5999         * dwarf2read.c (process_psymtab_comp_unit_reader)
6000         (build_type_psymtabs_reader): Do not set list_in_scope.
6001
6002 2018-07-20  Tom Tromey  <tom@tromey.com>
6003
6004         * buildsym.c (free_pendings): Remove.
6005         (add_symbol_to_list, scoped_free_pendings)
6006         (finish_block_internal, buildsym_init): Update.
6007
6008 2018-07-20  Tom Tromey  <tom@tromey.com>
6009
6010         * xcoffread.c (read_xcoff_symtab): Update.
6011         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6012         Update.
6013         * dbxread.c (process_one_symbol): Update.
6014         * coffread.c (coff_symtab_read): Update.
6015         * buildsym.h (finish_block): Update.
6016         * buildsym.c (finish_block): Remove "listhead" argument.
6017         (end_symtab_get_static_block): Update.
6018
6019 2018-07-20  Tom Tromey  <tom@tromey.com>
6020
6021         * buildsym.h (class scoped_free_pendings): Remove constructor.
6022         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6023         method.
6024         <m_pending_block_obstack, m_pending_blocks>: New members.
6025         (pending_block_obstack, pending_blocks): Remove.
6026         (scoped_free_pendings::scoped_free_pendings): Default.
6027         (~scoped_free_pendings): Update.
6028         (free_pending_blocks): Remove.
6029         (finish_block_internal, record_pending_block, make_blockvector)
6030         (end_symtab_get_static_block, augment_type_symtab, push_context)
6031         (buildsym_init): Update.
6032
6033 2018-07-20  Tom Tromey  <tom@tromey.com>
6034
6035         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6036         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6037         members.
6038         (pending_addrmap, pending_addrmap_obstack)
6039         (pending_addrmap_interesting): Remove.
6040         (scoped_free_pendings, record_block_range, make_blockvector)
6041         (prepare_for_building, reset_symtab_globals, buildsym_init):
6042         Update.
6043
6044 2018-07-20  Tom Tromey  <tom@tromey.com>
6045
6046         * xcoffread.c (process_linenos): Update.
6047         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6048         * mdebugread.c (psymtab_to_symtab_1): Update.
6049         * dwarf2read.c (setup_type_unit_groups)
6050         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6051         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6052         * dbxread.c (process_one_symbol): Update.
6053         * coffread.c (coff_symtab_read, enter_linenos)
6054         (process_coff_symbol): Update.
6055         * buildsym.h (current_subfile): Don't declare.
6056         (get_current_subfile): Declare.
6057         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6058         member.
6059         (start_subfile, free_buildsym_compunit, push_subfile)
6060         (prepare_for_building, start_symtab): Update.
6061         (get_current_subfile): New function.
6062
6063 2018-07-20  Tom Tromey  <tom@tromey.com>
6064
6065         * coffread.c (coff_symtab_read): Update.
6066         * xcoffread.c (read_xcoff_symtab): Update.
6067         * dwarf2read.c (new_symbol): Update.
6068         (read_func_scope, read_lexical_block_scope): Update.
6069         * dbxread.c (process_one_symbol): Update.
6070         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6071         (outermost_context_p): Remove macro.
6072         (outermost_context_p, get_current_context_stack)
6073         (get_context_stack_depth): Declare.
6074         (pop_context): Return struct context_stack.
6075         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6076         member.
6077         (context_stack_size): Remove.
6078         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6079         (prepare_for_building, end_symtab_get_static_block)
6080         (augment_type_symtab, push_context): Update.
6081         (pop_context): Return struct context_stack.
6082         (outermost_context_p, get_current_context_stack)
6083         (get_context_stack_depth): New functions.
6084         (buildsym_init): Update.
6085
6086 2018-07-20  Tom Tromey  <tom@tromey.com>
6087
6088         * rust-exp.y: Now a pure parser.  Update all rules.
6089         (%union): Move earlier.
6090         (current_parser, work_obstack): Remove globals.
6091         (rust_parser, ~rust_parser): Update.
6092         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6093         lex_character, lex_number, lex_string, lex_identifier,
6094         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6095         convert_name, convert_params_to_expression,
6096         convert_ast_to_expression, ast_basic_type, ast_operation,
6097         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6098         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6099         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6100         ast_array_type, ast_slice_type, ast_reference_type,
6101         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6102         (rust_parse): Update.
6103         (rustyyerror, rustyylex): Add parser parameter.
6104         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6105         (rust_lex_stringish_test, rust_lex_test_sequence)
6106         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6107         (rust_lex_test_push_back, rust_lex_tests): Update.
6108
6109 2018-07-19  Pedro Alves  <palves@redhat.com>
6110
6111         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6112         gdb::unique_xmalloc_ptr.
6113         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6114         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6115         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6116         copy-initialization.
6117         * guile/scm-pretty-print.c (ppscm_print_children): Use
6118         gdb::unique_xmalloc_ptr instead of cleanups.
6119         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6120         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6121         gdb::unique_xmalloc_ptr.
6122         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6123         Adjust to use gdb::unique_xmalloc_ptr.
6124         * guile/scm-utils.c (extract_arg): Adjust.
6125         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6126         gdb::unique_xmalloc_ptr instead of a cleanup.
6127
6128 2018-07-19  Tom Tromey  <tom@tromey.com>
6129
6130         * utils.c (do_value_free_to_mark)
6131         (make_cleanup_value_free_to_mark): Remove.
6132         * utils.h (make_cleanup_value_free_to_mark): Remove.
6133
6134 2018-07-19  Pedro Alves  <palves@redhat.com>
6135
6136         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6137         forwarding reference.
6138
6139 2018-07-18  Pedro Alves  <palves@redhat.com>
6140
6141         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6142         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6143         cleanup.
6144
6145 2018-07-18  Pedro Alves  <palves@redhat.com>
6146
6147         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6148         exceptions.
6149         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6150         (gdbscm_wrap): New.
6151         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6152         directly instead of a cleanup.
6153         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6154         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6155         (vlscm_binop_gdbthrow): New, factored out from ...
6156         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6157         (vlscm_rich_compare): Use gdbscm_wrap.
6158         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6159         instead of a cleanup.
6160         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6161         cleanup.
6162         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6163         Use xfree directly instead of a cleanup.
6164         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6165         Adjust to use gdbscm_wrap and scoped_value_mark.
6166         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6167         (gdbscm_value_address, gdbscm_value_dereference)
6168         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6169         scoped_value_mark.
6170         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6171         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6172         scoped_value_mark.
6173         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6174         gdbscm_wrap and scoped_value_mark.
6175         (gdbscm_value_to_string): Use xfree directly instead of a
6176         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6177         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6178         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6179         scoped_value_mark.
6180         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6181         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6182         scoped_value_mark.
6183         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6184         gdbscm_wrap.
6185
6186 2018-07-18  Tom de Vries  <tdevries@suse.de>
6187
6188         * findvar.c (default_read_var_value): Also resolve dynamic type for
6189         LOC_OPTIMIZED_OUT vars.
6190
6191 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6192
6193         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6194         decoding.
6195
6196 2018-07-17  Tom Tromey  <tom@tromey.com>
6197
6198         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6199         (compute_enum_list, pascm_set_param_value_x)
6200         (gdbscm_parameter_value): Update.
6201         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6202         (gdbscm_scm_to_host_string): Update.
6203         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6204         Update.
6205         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6206         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6207         * guile/scm-string.c (gdbscm_scm_to_string): Return
6208         unique_xmalloc_ptr.
6209         (gdbscm_scm_to_host_string): Likewise.
6210
6211 2018-07-17  Tom Tromey  <tom@tromey.com>
6212
6213         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6214         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6215         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6216         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6217         unique_xmalloc_ptr.
6218
6219 2018-07-17  Tom Tromey  <tom@tromey.com>
6220
6221         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6222         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6223         Update.
6224         * guile/scm-cmd.c (cmdscm_function): Update.
6225         * guile/scm-pretty-print.c
6226         (ppscm_print_exception_unless_memory_error): Update.
6227         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6228         Return unique_xmalloc_ptr.
6229
6230 2018-07-17  Tom Tromey  <tom@tromey.com>
6231
6232         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6233         Use string_printf.
6234
6235 2018-07-17  Jim Wilson  <jimw@sifive.com>
6236
6237         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6238         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6239         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6240         unecessary braces after EF_RISCV_RVC test.  Delete call to
6241         set_gdbarch_decr_pc_after_break.
6242
6243         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6244         RISCV_LAST_FP_REGNUM + 1.
6245         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6246
6247 2018-07-17  Tom Tromey  <tom@tromey.com>
6248
6249         * configure.ac: Remove --disable-gdbcli.
6250         * configure: Rebuild.
6251         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6252         (SUBDIR_CLI_CFLAGS): Remove.
6253         (SFILES): Use SUBDIR_CLI_SRCS.
6254         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6255
6256 2018-07-17  Tom Tromey  <tom@tromey.com>
6257
6258         PR gdb/18624:
6259         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6260
6261 2018-07-16  Jim Wilson  <jimw@sifive.com>
6262
6263         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6264
6265 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6266
6267         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6268         variable.
6269         (libunwind_frame_sniffer): Likewise.
6270         (libunwind_frame_prev_register): Likewise.
6271         (libunwind_sigtramp_frame_sniffer): Likewise.
6272         * ia64-tdep.c (ia64_access_reg): Likewise.
6273         (ia64_access_rse_reg): Likewise.
6274         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6275         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6276
6277 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6278
6279         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6280
6281 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6282
6283         * remote-sim.c (gdbsim_target::close,
6284         gdbsim_target::mourn_inferior): Remove unused variables.
6285
6286 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6287
6288         * ia64-tdep.c (ktab_buf): New global.
6289         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6290         (get_kernel_table): Adjust.
6291
6292 2018-07-16  Tom Tromey  <tom@tromey.com>
6293
6294         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6295         * dwarf2read.c (using_directives, new_symbol): Use
6296         outermost_context_p.
6297         * dbxread.c (process_one_symbol): Use outermost_context_p.
6298         * coffread.c (coff_symtab_read): Use outermost_context_p.
6299
6300 2018-07-16  Tom Tromey  <tom@tromey.com>
6301
6302         * dwarf2read.c (using_directives, read_func_scope)
6303         (read_lexical_block_scope): Update.
6304         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6305         * buildsym.h (local_using_directives, global_using_directives):
6306         Don't declare.
6307         (get_local_using_directives, set_local_using_directives)
6308         (get_global_using_directives): Declare.
6309         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6310         m_global_using_directives>: New members.
6311         (finish_block_internal, prepare_for_building)
6312         (reset_symtab_globals, end_symtab_get_static_block)
6313         (push_context): Update.
6314         (get_local_using_directives, set_local_using_directives)
6315         (get_global_using_directives): New functions.
6316         (buildsym_init): Update.
6317
6318 2018-07-16  Tom Tromey  <tom@tromey.com>
6319
6320         * xcoffread.c (xcoff_initial_scan): Don't call
6321         free_pending_blocks.
6322         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6323         * buildsym.h (class scoped_free_pendings): Add constructor.
6324         (free_pending_blocks): Don't declare.
6325         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6326         (free_pending_blocks): Now static.
6327
6328 2018-07-16  Tom Tromey  <tom@tromey.com>
6329
6330         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6331         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6332         member.
6333         (struct subfile_stack): Remove.
6334         (subfile_stack): Remove.
6335         (push_subfile, pop_subfile, buildsym_init): Update.
6336
6337 2018-07-16  Tom Tromey  <tom@tromey.com>
6338
6339         * buildsym.c (push_subfile): Use gdb_assert.
6340         (pop_subfile): Use gdb_assert.
6341
6342 2018-07-16  Tom Tromey  <tom@tromey.com>
6343
6344         * buildsym.h (merge_symbol_lists): Remove.
6345         * buildsym.c (merge_symbol_lists): Remove.
6346
6347 2018-07-16  Tom Tromey  <tom@tromey.com>
6348
6349         * stabsread.c (scan_file_globals): Update comment.
6350         * stabsread.h (scan_file_globals): Move from buildsym.h.
6351         * buildsym.h (scan_file_globals): Move to stabsread.h.
6352
6353 2018-07-16  Tom Tromey  <tom@tromey.com>
6354
6355         * xcoffread.c (xcoff_new_init): Update.
6356         * mipsread.c (mipscoff_new_init): Update.
6357         * mdebugread.c (mdebug_build_psymtabs): Update.
6358         * elfread.c (elf_new_init): Update.
6359         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6360         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6361         * buildsym.h (buildsym_new_init): Don't declare.
6362         * buildsym.c (buildsym_new_init): Remove.
6363
6364 2018-07-16  Tom Tromey  <tom@tromey.com>
6365
6366         * stabsread.h (within_function): Move from buildsym.h.
6367         * stabsread.c (start_stabs): Clear within_function.
6368         * coffread.c (coff_start_symtab): Clear within_function.
6369         * buildsym.h (within_function): Move to stabsread.h.
6370         * buildsym.c (prepare_for_building): Update.
6371
6372 2018-07-16  Tom Tromey  <tom@tromey.com>
6373
6374         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6375         * dwarf2read.c (dwarf2_start_symtab): Don't set
6376         processing_gcc_compilation.
6377         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6378
6379 2018-07-16  Tom Tromey  <tom@tromey.com>
6380
6381         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6382         (next_symbol_text_func): Move from buildsym.h.
6383         * stabsread.c (hashname): Move from buildsym.c.
6384         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6385         (next_symbol_text_func, hashname): Move to stabsread.h.
6386         * buildsym.c: Don't include bcache.h
6387         (hashname): Move to stasbread.c.
6388
6389 2018-07-16  Tom Tromey  <tom@tromey.com>
6390
6391         * buildsym.h (context_stack_size): Don't declare.
6392         * buildsym.c (context_stack_size): New global.
6393
6394 2018-07-16  Tom Tromey  <tom@tromey.com>
6395
6396         * dbxread.c (processing_acc_compilation): New global.
6397         * buildsym.h (processing_acc_compilation): Don't declare.
6398
6399 2018-07-16  Tom Tromey  <tom@tromey.com>
6400
6401         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6402         * dbxread.c (read_ofile_symtab): Update.
6403         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6404         * buildsym.h (last_source_start_addr): Remove.
6405         (set_last_source_start_addr, get_last_source_start_addr):
6406         Declare.
6407         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6408         parameter.
6409         (struct buildsym_compunit) <m_last_source_start_addr>: New
6410         member.
6411         (prepare_for_building): Remove start_addr parameter.
6412         (start_symtab, restart_symtab, end_symtab_get_static_block)
6413         (end_symtab_with_blockvector): Update.
6414         (set_last_source_start_addr, get_last_source_start_addr): New
6415         functions.
6416
6417 2018-07-16  Tom Tromey  <tom@tromey.com>
6418
6419         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6420         member.
6421         (have_line_numbers): Remove.
6422         (record_line, prepare_for_building, end_symtab_get_static_block)
6423         (augment_type_symtab): Update.
6424
6425 2018-07-16  Tom Tromey  <tom@tromey.com>
6426
6427         * buildsym.c (~buildsym_compunit): Free the macro table.
6428         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6429         methods.
6430         <m_pending_macros>: New member.
6431         (pending_macros): Remove.
6432         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6433         (reset_symtab_globals, end_symtab_get_static_block)
6434         (end_symtab_with_blockvector, augment_type_symtab)
6435         (buildsym_init): Update.
6436
6437 2018-07-16  Tom Tromey  <tom@tromey.com>
6438
6439         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6440         parameter.
6441         (buildsym_compunit::set_last_source_file): New method.
6442         <m_last_source_file>: New member.
6443         (prepare_for_building): Remove "name" parameter.
6444         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6445         (last_source_file): Remove.
6446         (set_last_source_file, get_last_source_file): Update.
6447
6448 2018-07-16  Tom Tromey  <tom@tromey.com>
6449
6450         * buildsym.c (prepare_for_building): Add assert.
6451
6452 2018-07-16  Tom Tromey  <tom@tromey.com>
6453
6454         * buildsym.c (~buildsym_compunit): Update.
6455         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6456         (start_subfile, patch_subfile_names)
6457         (end_symtab_with_blockvector): Update.
6458
6459 2018-07-16  Tom Tromey  <tom@tromey.com>
6460
6461         * buildsym.c (struct buildsym_compunit): Add constructor,
6462         destructor, initializers.
6463         (start_buildsym_compunit): Remove.
6464         (free_buildsym_compunit): Use "delete".
6465         (start_symtab, restart_symtab): Use "new".
6466
6467 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6468
6469         * symfile.c (set_objfile_default_section_offset): Remove struct
6470         keyword.
6471
6472 2018-07-14  Stafford Horne  <shorne@gmail.com>
6473
6474         * (Responsible Maintainers): Add myself as or1k maintainer.
6475
6476 2018-07-13  Tom Tromey  <tom@tromey.com>
6477
6478         * symfile.c (set_objfile_default_section_offset): Use extra braces
6479         around initializer.
6480
6481 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6482
6483         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6484         non-branching basr.
6485
6486 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6487
6488         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6489         unittests/cli-utils-selftests.c
6490         * unittests/cli-utils-selftests.c: New file.
6491
6492 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6493
6494         * NEWS: Mention new commands. Mention change to 'thread apply'.
6495
6496 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6497
6498         * thread.c (thr_try_catch_cmd): New function.
6499         (thread_apply_all_command): Handle qcs flags.
6500         (thread_apply_command): Handle qcs flags.
6501         (taas_command): New function.
6502         (tfaas_command): New function.
6503         (_initialize_thread): Update to setup the new commands 'taas
6504         and 'tfaas'. Change doc string for 'thread apply'.
6505
6506 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6507
6508         * stack.c: (trailing_outermost_frame): New function, mostly
6509         extracted from backtrace_command_1.
6510         (leading_innermost_frame): New function.
6511         (backtrace_command_1): Update to call trailing_outermost_frame.
6512         (frame_apply_command_count): New function.
6513         (frame_apply_level_command): New function.
6514         (frame_apply_all_command): New function.
6515         (frame_apply_command): New function.
6516         (faas_command): New function.
6517         (frame_cmd_list): New variable.
6518         (_initialize_stack): Update to setup the new commands 'frame apply'
6519         and 'faas'.
6520
6521 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6522
6523         * cli-utils.c (number_or_range_parser::get_number): Only handle
6524         numbers or convenience var as numbers.
6525         (parse_flags): New function.
6526         (parse_flags_qcs): New function.
6527         (number_or_range_parser::finished): Ensure parsing end is detected
6528         before end of string.
6529         * cli-utils.h (parse_flags): New function.
6530         (parse_flags_qcs): New function.
6531         (number_or_range_parser): Remove m_finished bool.
6532         (number_or_range_parser::skip_range): Set m_in_range to false.
6533
6534 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6535
6536         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6537         on Windows.
6538
6539 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6540             Jan Kratochvil  <jan.kratochvil@redhat.com>
6541             Paul Fertser  <fercerpav@gmail.com>
6542             Tsutomu Seki  <sekiriki@gmail.com>
6543             Pedro Alves  <palves@redhat.com>
6544
6545         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6546         'unittests/parse-connection-spec-selftests.c'.
6547         (COMMON_SFILES): Add 'common/netstuff.c'.
6548         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6549         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6550         * common/netstuff.c: New file.
6551         * common/netstuff.h: New file.
6552         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6553         (wait_for_connect): Update comment.  New parameter
6554         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6555         Use 'sock' directly instead of 'scb->fd'.
6556         (try_connect): New function, with code from 'net_open'.
6557         (net_open): Rewrite main loop to deal with multiple
6558         sockets/addresses.  Handle IPv6-style hostnames; implement
6559         support for IPv6 connections.
6560         * unittests/parse-connection-spec-selftests.c: New file.
6561
6562 2018-07-11  Pedro Alves  <palves@redhat.com>
6563
6564         PR gdb/23377
6565         * remote.c (remote_target::remote_detach_pid): Call
6566         set_current_process.
6567
6568 2018-07-11  Pedro Alves  <palves@redhat.com>
6569
6570         * h8300-tdep.c (h8300_gdbarch_init): Remove
6571         set_gdbarch_ecoff_reg_to_regnum calls.
6572
6573 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6574
6575         PR c++/23373
6576         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6577         offsets/sizes for static members of a class/struct.
6578
6579 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6580
6581         * target-descriptions.c (tdesc_register_bitsize): Rename.
6582         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6583         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6584         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6585
6586 2018-07-10  Tom Tromey  <tom@tromey.com>
6587
6588         * breakpoint.c (moribund_locations): Now static and a
6589         std::vector.
6590         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6591         (build_bpstat_chain, update_global_location_list)
6592         (breakpoint_retire_moribund): Update.
6593         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6594         VEC.
6595
6596 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6597
6598         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6599         (riscv_register_reggroup_p): Use new function, remove unneeded
6600         parenthesis.
6601         (riscv_push_dummy_call): Extend assert to compare against xlen or
6602         flen based on register type.
6603
6604 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6605
6606         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6607
6608 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6609
6610         * remote.c (show_hardware_watchpoint_limit): New function.
6611         (show_hardware_watchpoint_length_limit): New function.
6612         (show_hardware_breakpoint_limit): New function.
6613         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6614         where appropriate, update help text.
6615
6616 2018-07-09  Tom Tromey  <tom@tromey.com>
6617
6618         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6619         (CLIBS): Don't mention NAT_CLIBS.
6620
6621 2018-07-09  Tom Tromey  <tom@tromey.com>
6622
6623         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6624         (LIBGDB_OBS, clean mostlyclean): Update.
6625         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6626
6627 2018-07-09  Tom Tromey  <tom@tromey.com>
6628
6629         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6630         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6631         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6632
6633 2018-07-09  Tom Tromey  <tom@tromey.com>
6634
6635         * Makefile.in (ALLDEPFILES): Remove exec.c.
6636         (COMMON_OBS): Remove exec.o.
6637         (COMMON_SFILES): Add exec.c.
6638
6639 2018-07-09  Tom Tromey  <tom@tromey.com>
6640
6641         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6642
6643 2018-07-09  Tom Tromey  <tom@tromey.com>
6644
6645         * Makefile.in (clean mostlyclean): Remove stamp-version.
6646         (version.c): Depend on stamp-version.
6647         (stamp-version): New rule, from version.c rule.
6648
6649 2018-07-09  Tom Tromey  <tom@tromey.com>
6650
6651         * Makefile.in (init.c): Depend on stamp-init.
6652         (stamp-init): New rule, from init.c rule.
6653         (clean mostlyclean): Remove stamp-init.
6654
6655 2018-07-09  Tom Tromey  <tom@tromey.com>
6656
6657         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6658         SUBDIR_GCC_COMPILE_SRCS.
6659
6660 2018-07-09  Tom Tromey  <tom@tromey.com>
6661
6662         * Makefile.in (init.c): Remove some unused sed rules.
6663
6664 2018-07-09  Tom Tromey  <tom@tromey.com>
6665
6666         * Makefile.in (TSOBS): Remove.
6667         (INIT_FILES): Update.
6668         (LIBGDB_OBS): Update.
6669         (COMMON_SFILES): Add inflow.c.
6670         (SFILES): Remove inflow.c.
6671
6672 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6673
6674         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6675
6676 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6677
6678         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6679         get_saveloc_name, is_signal_frame_name, step_name,
6680         init_remote_name, create_addr_space_name,
6681         destroy_addr_space_name, search_unwind_table_name,
6682         find_dyn_list_name): Constify.
6683
6684 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6685
6686         * darwin-nat.c (darwin_pthread_kill): New function.
6687         (darwin_resume_thread): Use darwin_pthread_kill.
6688
6689 2018-07-05  Tom de Vries  <tdevries@suse.de>
6690
6691         * macroexp.c (macro_buffer) <operator=>: New member function.
6692
6693 2018-07-04  Tom Tromey  <tom@tromey.com>
6694
6695         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6696
6697 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6698
6699         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6700         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6701         * maint.c: Likewise.
6702         * top.c: Likewise.
6703
6704 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6705
6706         * NEWS: Create a new section for the next release branch.
6707         Rename the section of the current branch, now that it has
6708         been cut.
6709
6710 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6711
6712         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6713         * version.in: Bump version to 8.2.50.DATE-git.
6714
6715 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6716             Pedro Alves  <palves@redhat.com>
6717
6718         * linux-nat.c (linux_init_ptrace): Rename to ...
6719         (linux_init_ptrace_procfs): ... this.  Call
6720         linux_proc_init_warnings.
6721         (linux_nat_target::post_attach)
6722         (linux_nat_target::post_startup_inferior): Adjust.
6723         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6724         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6725
6726 2018-07-04  Tom de Vries  <tdevries@suse.de>
6727
6728         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6729         check ...
6730         (read_comp_unit_head): ... here.
6731
6732 2018-07-03  Tom Tromey  <tom@tromey.com>
6733
6734         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6735         (stop_tracing, tstatus_command)
6736         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6737         (print_one_static_tracepoint_marker): Update.
6738         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6739         std::vector.
6740         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6741         VEC.
6742         (all_tracepoints, static_tracepoints_here): Return std::vector.
6743
6744 2018-07-03  Tom Tromey  <tom@tromey.com>
6745
6746         * common/ptid.c (ptid_equal): Remove.
6747         * common/ptid.h (ptid_equal): Don't declare.
6748         * ada-tasks.c: Update.
6749         * breakpoint.c: Update.
6750         * common/agent.c: Update.
6751         * corelow.c: Update.
6752         * darwin-nat-info.c: Update.
6753         * darwin-nat.c: Update.
6754         * dcache.c: Update.
6755         * dtrace-probe.c: Update.
6756         * dummy-frame.c: Update.
6757         * fbsd-nat.c: Update.
6758         * frame.c: Update.
6759         * gdbthread.h: Update.
6760         * gnu-nat.c: Update.
6761         * go32-nat.c: Update.
6762         * inf-loop.c: Update.
6763         * inf-ptrace.c: Update.
6764         * infcall.c: Update.
6765         * infcmd.c: Update.
6766         * inflow.c: Update.
6767         * infrun.c: Update.
6768         * linux-fork.c: Update.
6769         * linux-nat.c: Update.
6770         * linux-thread-db.c: Update.
6771         * mi/mi-cmd-var.c: Update.
6772         * mi/mi-interp.c: Update.
6773         * mi/mi-main.c: Update.
6774         * nto-procfs.c: Update.
6775         * ppc-linux-tdep.c: Update.
6776         * procfs.c: Update.
6777         * python/py-inferior.c: Update.
6778         * python/py-record-btrace.c: Update.
6779         * python/py-record.c: Update.
6780         * ravenscar-thread.c: Update.
6781         * regcache.c: Update.
6782         * remote-sim.c: Update.
6783         * remote.c: Update.
6784         * sol-thread.c: Update.
6785         * solib.c: Update.
6786         * target.c: Update.
6787         * tui/tui-stack.c: Update.
6788         * varobj.c: Update.
6789         * windows-nat.c: Update.
6790         * windows-tdep.c: Update.
6791
6792 2018-07-03  Tom Tromey  <tom@tromey.com>
6793
6794         * common/ptid.c (ptid_match): Remove.
6795         * common/ptid.h (ptid_match): Don't declare.
6796         * fbsd-nat.c: Update.
6797         * infcmd.c: Update.
6798         * infrun.c: Update.
6799         * linux-nat.c: Update.
6800         * record-btrace.c: Update.
6801         * regcache.c: Update.
6802         * remote.c: Update.
6803
6804 2018-07-03  Tom Tromey  <tom@tromey.com>
6805
6806         * common/ptid.c (ptid_tid_p): Remove.
6807         * common/ptid.h (ptid_tid_p): Don't declare.
6808         * sol-thread.c: Update.
6809
6810 2018-07-03  Tom Tromey  <tom@tromey.com>
6811
6812         * common/ptid.c (ptid_lwp_p): Remove.
6813         * common/ptid.h (ptid_lwp_p): Don't declare.
6814         * fbsd-nat.c: Update.
6815         * linux-nat.c: Update.
6816         * nat/linux-procfs.c: Update.
6817         * nat/x86-linux-dregs.c: Update.
6818         * sol-thread.c: Update.
6819
6820 2018-07-03  Tom Tromey  <tom@tromey.com>
6821
6822         * common/ptid.c (ptid_is_pid): Remove.
6823         * common/ptid.h (ptid_is_pid): Don't declare.
6824         * infrun.c: Update.
6825         * linux-nat.c: Update.
6826         * mi/mi-interp.c: Update.
6827         * remote.c: Update.
6828         * thread.c: Update.
6829
6830 2018-07-03  Tom Tromey  <tom@tromey.com>
6831
6832         * common/ptid.c (ptid_get_tid): Remove.
6833         * common/ptid.h (ptid_get_tid): Don't declare.
6834         * ada-tasks.c: Update.
6835         * aix-thread.c: Update.
6836         * bsd-uthread.c: Update.
6837         * darwin-nat.c: Update.
6838         * fbsd-nat.c: Update.
6839         * i386-darwin-nat.c: Update.
6840         * infrun.c: Update.
6841         * linux-tdep.c: Update.
6842         * nto-procfs.c: Update.
6843         * ppc-ravenscar-thread.c: Update.
6844         * python/py-infthread.c: Update.
6845         * ravenscar-thread.c: Update.
6846         * sol-thread.c: Update.
6847         * sparc-ravenscar-thread.c: Update.
6848         * windows-nat.c: Update.
6849
6850 2018-07-03  Tom Tromey  <tom@tromey.com>
6851
6852         * common/ptid.c (ptid_get_lwp): Remove.
6853         * common/ptid.h (ptid_get_lwp): Don't declare.
6854         * aarch64-linux-nat.c: Update.
6855         * ada-tasks.c: Update.
6856         * aix-thread.c: Update.
6857         * amd64-linux-nat.c: Update.
6858         * arm-linux-nat.c: Update.
6859         * corelow.c: Update.
6860         * fbsd-nat.c: Update.
6861         * fbsd-tdep.c: Update.
6862         * gnu-nat.c: Update.
6863         * i386-cygwin-tdep.c: Update.
6864         * i386-gnu-nat.c: Update.
6865         * i386-linux-nat.c: Update.
6866         * ia64-linux-nat.c: Update.
6867         * inf-ptrace.c: Update.
6868         * infrun.c: Update.
6869         * linux-fork.c: Update.
6870         * linux-nat.c: Update.
6871         * linux-tdep.c: Update.
6872         * linux-thread-db.c: Update.
6873         * mips-linux-nat.c: Update.
6874         * nat/aarch64-linux-hw-point.c: Update.
6875         * nat/aarch64-linux.c: Update.
6876         * nat/linux-btrace.c: Update.
6877         * nat/linux-osdata.c: Update.
6878         * nat/linux-procfs.c: Update.
6879         * nat/x86-linux-dregs.c: Update.
6880         * obsd-nat.c: Update.
6881         * ppc-fbsd-nat.c: Update.
6882         * ppc-linux-nat.c: Update.
6883         * procfs.c: Update.
6884         * python/py-infthread.c: Update.
6885         * ravenscar-thread.c: Update.
6886         * remote.c: Update.
6887         * s390-linux-nat.c: Update.
6888         * sol-thread.c: Update.
6889         * sol2-tdep.c: Update.
6890         * spu-linux-nat.c: Update.
6891         * x86-linux-nat.c: Update.
6892         * xtensa-linux-nat.c: Update.
6893
6894 2018-07-03  Tom Tromey  <tom@tromey.com>
6895
6896         * common/ptid.c (ptid_get_pid): Remove.
6897         * common/ptid.h (ptid_get_pid): Don't declare.
6898         * aarch64-linux-nat.c: Update.
6899         * ada-lang.c: Update.
6900         * aix-thread.c: Update.
6901         * alpha-bsd-nat.c: Update.
6902         * amd64-fbsd-nat.c: Update.
6903         * amd64-linux-nat.c: Update.
6904         * arm-linux-nat.c: Update.
6905         * arm-nbsd-nat.c: Update.
6906         * auxv.c: Update.
6907         * break-catch-syscall.c: Update.
6908         * breakpoint.c: Update.
6909         * bsd-uthread.c: Update.
6910         * corelow.c: Update.
6911         * ctf.c: Update.
6912         * darwin-nat.c: Update.
6913         * fbsd-nat.c: Update.
6914         * fbsd-tdep.c: Update.
6915         * gcore.c: Update.
6916         * gnu-nat.c: Update.
6917         * hppa-nbsd-nat.c: Update.
6918         * hppa-obsd-nat.c: Update.
6919         * i386-fbsd-nat.c: Update.
6920         * ia64-linux-nat.c: Update.
6921         * inf-ptrace.c: Update.
6922         * infcmd.c: Update.
6923         * inferior.c: Update.
6924         * inferior.h: Update.
6925         * inflow.c: Update.
6926         * infrun.c: Update.
6927         * linux-fork.c: Update.
6928         * linux-nat.c: Update.
6929         * linux-tdep.c: Update.
6930         * linux-thread-db.c: Update.
6931         * m68k-bsd-nat.c: Update.
6932         * mi/mi-interp.c: Update.
6933         * mi/mi-main.c: Update.
6934         * mips-linux-nat.c: Update.
6935         * mips-nbsd-nat.c: Update.
6936         * mips64-obsd-nat.c: Update.
6937         * nat/aarch64-linux-hw-point.c: Update.
6938         * nat/aarch64-linux.c: Update.
6939         * nat/linux-btrace.c: Update.
6940         * nat/linux-osdata.c: Update.
6941         * nat/linux-procfs.c: Update.
6942         * nat/x86-linux-dregs.c: Update.
6943         * nto-procfs.c: Update.
6944         * obsd-nat.c: Update.
6945         * ppc-linux-nat.c: Update.
6946         * ppc-nbsd-nat.c: Update.
6947         * ppc-obsd-nat.c: Update.
6948         * proc-service.c: Update.
6949         * procfs.c: Update.
6950         * python/py-inferior.c: Update.
6951         * python/py-infthread.c: Update.
6952         * ravenscar-thread.c: Update.
6953         * record.c: Update.
6954         * remote-sim.c: Update.
6955         * remote.c: Update.
6956         * rs6000-nat.c: Update.
6957         * s390-linux-nat.c: Update.
6958         * sh-nbsd-nat.c: Update.
6959         * sol-thread.c: Update.
6960         * sparc-nat.c: Update.
6961         * sparc64-tdep.c: Update.
6962         * spu-linux-nat.c: Update.
6963         * spu-tdep.c: Update.
6964         * target-debug.h: Update.
6965         * target.c: Update.
6966         * thread.c: Update.
6967         * tid-parse.c: Update.
6968         * tracefile-tfile.c: Update.
6969         * vax-bsd-nat.c: Update.
6970         * windows-nat.c: Update.
6971         * x86-linux-nat.c: Update.
6972         * x86-nat.c: Update.
6973
6974 2018-07-03  Tom Tromey  <tom@tromey.com>
6975
6976         * common/ptid.c (pid_to_ptid): Remove.
6977         * common/ptid.h (pid_to_ptid): Don't declare.
6978         * aix-thread.c: Update.
6979         * arm-linux-nat.c: Update.
6980         * common/ptid.c: Update.
6981         * common/ptid.h: Update.
6982         * corelow.c: Update.
6983         * ctf.c: Update.
6984         * darwin-nat.c: Update.
6985         * fbsd-nat.c: Update.
6986         * fork-child.c: Update.
6987         * gnu-nat.c: Update.
6988         * go32-nat.c: Update.
6989         * inf-ptrace.c: Update.
6990         * infcmd.c: Update.
6991         * inferior.c: Update.
6992         * infrun.c: Update.
6993         * linux-fork.c: Update.
6994         * linux-nat.c: Update.
6995         * nat/aarch64-linux-hw-point.c: Update.
6996         * nat/fork-inferior.c: Update.
6997         * nat/x86-linux-dregs.c: Update.
6998         * nto-procfs.c: Update.
6999         * obsd-nat.c: Update.
7000         * procfs.c: Update.
7001         * progspace.c: Update.
7002         * remote.c: Update.
7003         * rs6000-nat.c: Update.
7004         * s390-linux-nat.c: Update.
7005         * sol-thread.c: Update.
7006         * spu-linux-nat.c: Update.
7007         * target.c: Update.
7008         * top.c: Update.
7009         * tracefile-tfile.c: Update.
7010         * windows-nat.c: Update.
7011
7012 2018-07-03  Tom Tromey  <tom@tromey.com>
7013
7014         * common/ptid.h (ptid_build): Don't declare.
7015         * common/ptid.c (ptid_build): Remove.
7016         * aix-thread.c: Update.
7017         * bsd-kvm.c: Update.
7018         * bsd-uthread.c: Update.
7019         * common/agent.c: Update.
7020         * common/ptid.c: Update.
7021         * common/ptid.h: Update.
7022         * corelow.c: Update.
7023         * darwin-nat.c: Update.
7024         * fbsd-nat.c: Update.
7025         * gnu-nat.c: Update.
7026         * linux-fork.c: Update.
7027         * linux-nat.c: Update.
7028         * linux-thread-db.c: Update.
7029         * nat/linux-osdata.c: Update.
7030         * nat/linux-procfs.c: Update.
7031         * nto-procfs.c: Update.
7032         * obsd-nat.c: Update.
7033         * proc-service.c: Update.
7034         * procfs.c: Update.
7035         * ravenscar-thread.c: Update.
7036         * remote-sim.c: Update.
7037         * remote.c: Update.
7038         * sol-thread.c: Update.
7039         * target.c: Update.
7040         * windows-nat.c: Update.
7041
7042 2018-07-03  Tom Tromey  <tom@tromey.com>
7043
7044         * infrun.c (follow_exec): Use exit_inferior_silent.
7045         * inferior.c (exit_inferior_num_silent): Remove.
7046         * inferior.h (exit_inferior_num_silent): Don't declare.
7047
7048 2018-07-03  Tom Tromey  <tom@tromey.com>
7049
7050         PR cli/23340:
7051         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7052         inferior_ptid on error.
7053
7054 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7055             Simon Marchi  <simon.marchi@polymtl.ca>
7056
7057         PR tdep/8282
7058         * disasm.h (gdb_disassembler): Add
7059         `m_disassembler_options_holder'. member
7060         * disasm.c (get_all_disassembler_options): New function.
7061         (gdb_disassembler::gdb_disassembler): Use it.
7062         (gdb_buffered_insn_length_init_dis): Likewise.
7063         (gdb_buffered_insn_length): Adjust accordingly.
7064         (set_disassembler_options): Handle options with arguments.
7065         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7066         line if showing options with descriptions.
7067         (disassembler_options_completer): Adapt to using the
7068         `disasm_options_and_args_t' structure.
7069         * mips-tdep.c (mips_disassembler_options): New variable.
7070         (mips_disassembler_options_o32): Likewise.
7071         (mips_disassembler_options_n32): Likewise.
7072         (mips_disassembler_options_n64): Likewise.
7073         (gdb_print_insn_mips): Don't set `disassembler_options'.
7074         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7075         functions.
7076         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7077         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7078         `gdbarch_disassembler_options_implicit' and
7079         `gdbarch_valid_disassembler_options'.
7080         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7081         `disasm_options_and_args_t' structure.
7082         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7083         method.
7084         (valid_disassembler_options): Switch from `disasm_options_t' to
7085         the `disasm_options_and_args_t' structure.
7086         * NEWS: Document `set disassembler-options' support for the MIPS
7087         target.
7088         * gdbarch.h: Regenerate.
7089         * gdbarch.c: Regenerate.
7090
7091 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7092
7093         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7094
7095 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7096
7097         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7098         parameter in call to amd64_target_description.
7099         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7100         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7101         (amd64fbsd_init_abi): Likewise.
7102         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7103         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7104         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7105         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7106
7107 2018-06-29  Pedro Alves  <palves@redhat.com>
7108
7109         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7110         "segments" parameter.
7111         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7112         (_initialize_amd64_tdep): Update call to
7113         amd64_create_target_description.
7114         (amd64_target_description): Add "segments" parameter.  Adjust
7115         the implementation to use it.
7116         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7117         call to amd64_create_target_description.
7118         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7119         * gdb/arch/amd64.h (amd64_create_target_description): Add
7120         "segments" register.
7121         * gdb/arch/amd64.c (amd64_create_target_description): Add
7122         "segments" parameter.  Call create_feature_i386_64bit_segments
7123         only if SEGMENTS is true.
7124         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7125         call to amd64_create_target_description.
7126
7127 2018-06-29  Pedro Alves  <palves@redhat.com>
7128
7129         * thread.c (thread_target_id_str): New, factored out from ...
7130         (print_thread_info_1): ... here.  Use it to compute the max
7131         "Target Id" column width.
7132
7133 2018-06-29  Pedro Alves  <palves@redhat.com>
7134
7135         * remote.c (remote_target::extra_thread_info): Delete
7136         'display_buf' and 'n' locals.  from the cache, regardless of
7137         packet mechanims is in use.  Use cache for qThreadExtra and qP
7138         methods too.
7139
7140 2018-06-29  Pedro Alves  <palves@redhat.com>
7141
7142         * blockframe.c (find_pc_sect_containing_function): New function.
7143         * breakpoint.c (print_breakpoint_location): Don't call
7144         find_pc_sect_function.
7145         * linespec.c (create_sals_line_offset): Record the location's
7146         symbol in the sal.
7147         * linespec.c (convert_address_location_to_sals): Fill in sal's
7148         symbol with find_pc_sect_containing_function.
7149         * symtab.c (find_function_start_sal): Rename to ...
7150         (find_function_start_sal_1): ... this.
7151         (find_function_start_sal): Reimplement as wrapper around
7152         find_function_start_sal_1, and use
7153         find_pc_sect_containing_function to fill in the sal's symbol.
7154         (find_function_start_sal(symbol*, bool)): Adjust.
7155         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7156         comments.
7157         (find_pc_sect_containing_function): Declare.
7158
7159 2018-06-29  Pedro Alves  <palves@redhat.com>
7160
7161         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7162         true if the the location has no symbol.
7163
7164 2018-06-28  Tom Tromey  <tom@tromey.com>
7165
7166         * NEWS: Mention --enable-codesign.
7167         * silent-rules.mk (ECHO_SIGN): New variable.
7168         * configure.ac: Add --enable-codesign.
7169         * configure: Rebuild.
7170         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7171         (gdb$(EXEEXT)): Optionally invoke codesign.
7172
7173 2018-06-28  Pedro Alves  <palves@redhat.com>
7174
7175         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7176         comments.
7177         (switch_to_thread_no_regs): Adjust comment.
7178         * infcmd.c (stop_pc): Delete.
7179         (post_create_inferior, info_program_command): Replace references
7180         to stop_pc with references to thread_info->suspend.stop_pc.
7181         * inferior.h (stop_pc): Delete declaration.
7182         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7183         (handle_inferior_event_1, handle_signal_stop)
7184         (process_event_stop_test, keep_going_stepped_thread)
7185         (handle_step_into_function, handle_step_into_function_backward)
7186         (print_stop_location): Replace references to stop_pc with
7187         references to thread_info->suspend.stop_pc.
7188         (struct infcall_suspend_state) <stop_pc>: Delete field.
7189         (save_infcall_suspend_state, restore_infcall_suspend_state):
7190         Remove references to inf_stat->stop_pc.
7191         * linux-fork.c (fork_load_infrun_state): Likewise.
7192         * record-btrace.c (record_btrace_set_replay): Likewise.
7193         * record-full.c (record_full_goto_entry): Likewise.
7194         * remote.c (print_one_stopped_thread): Likewise.
7195         * target.c (target_resume): Extend comment.
7196         * thread.c (set_executing_thread): New.
7197         (set_executing): Use it.
7198         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7199         Remove references to stop_pc.
7200
7201 2018-06-28  Pedro Alves  <palves@redhat.com>
7202
7203         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7204         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7205
7206 2018-06-28  Tom Tromey  <tom@tromey.com>
7207
7208         * coffread.c (coff_symfile_finish): Update.
7209         * xcoffread.c (xcoff_symfile_finish): Update.
7210         * elfread.c (elf_symfile_finish): Update.
7211         * symfile.h (dwarf2_free_objfile): Don't declare.
7212         * dwarf2read.c (_initialize_dwarf2_read): Use
7213         register_objfile_data_with_cleanup.
7214         (dwarf2_free_objfile): Now static.  Change signature.
7215
7216 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7217
7218         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7219         option "-o" to add-symbol-file-load to add an offset to each
7220         section's load address.
7221         * symfile.c (set_objfile_default_section_offset): New function.
7222
7223 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7224
7225         * symfile.c (add_symbol_file_command): Make sure that sections
7226         with the same name are sorted in the same order.
7227
7228 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7229
7230         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7231         require the second argument.  If omitted, load sections at the
7232         addresses specified in the file.
7233
7234 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7235
7236         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7237         (_initialize_symfile): Add option "-o" to symbol-file to add an
7238         offset to each section of the symbol file.
7239
7240 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7241
7242         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7243
7244 2018-06-27  Tom Tromey  <tom@tromey.com>
7245
7246         * stack.c (_initialize_stack): Update "func" help text.
7247
7248 2018-06-27  Tom Tromey  <tom@tromey.com>
7249
7250         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7251         std::vector.
7252         (unwind_infopy_str, pyuw_create_unwind_info)
7253         (unwind_infopy_add_saved_register, pyuw_sniffer)
7254         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7255         Update.
7256         (struct saved_reg): Add constructor.
7257         <value>: Now a gdbpy_ref<>.
7258
7259 2018-06-27  Tom Tromey  <tom@tromey.com>
7260
7261         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7262
7263 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7264
7265         * gdb-gdb.py.in: Format using autopep8.
7266
7267 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7268
7269         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7270         (type_lookup_function): Recognize CORE_ADDR values.
7271
7272 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7273
7274         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7275         print tag_name.
7276
7277 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7278
7279         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7280         <__lt__>: Add.
7281
7282 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7283
7284         * gdb-gdb.py: Move to...
7285         * gdb-gdb.py.in: ... here.
7286         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7287         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7288         dependencies.
7289         (distclean): Remove gdb-gdb.py when cleaning.
7290         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7291         * configure: Re-generate.
7292
7293 2018-06-27  Pedro Alves  <palves@redhat.com>
7294
7295         * proc-service.c (get_ps_regcache): New.
7296         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7297         (ps_lsetfpregs): Use it.
7298
7299 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7300
7301         PR gdb/21695
7302         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7303         declaration.
7304         (dwarf_decode_lines_1): Adjust.
7305
7306 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7307
7308         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7309         override.
7310         <info_proc>: Likewise.
7311
7312 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7313
7314         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7315         to windows_fetch_one_register, and only handle the case of
7316         fetching one register.  Move the code that reloads the context
7317         and iterates over all registers if R is negative to...
7318         (windows_nat_target::fetch_registers): ... here.
7319         (do_windows_store_inferior_registers): Rename to
7320         windows_store_one_register, and only handle the case of storing
7321         one register.  Move the code that handles the case where r is
7322         negative to...
7323         (windows_nat_target::store_registers) ... here.
7324
7325 2018-06-26  Tom Tromey  <tom@tromey.com>
7326
7327         PR rust/22574:
7328         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7329         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7330         Update.
7331         (rust_internal_print_type): Add podata parameter.
7332         (rust_print_type): Update.
7333
7334 2018-06-26  Tom Tromey  <tom@tromey.com>
7335
7336         * typeprint.h (struct print_offset_data) <update, finish,
7337         maybe_print_hole>: New methods.
7338         <indentation>: New constant.
7339         * typeprint.c (print_offset_data::indentation): Define.
7340         (print_offset_data::maybe_print_hole, print_offset_data::update)
7341         (print_offset_data::finish): Move from c-typeprint.c and rename.
7342         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7343         (print_spaces_filtered_with_print_options): Update.
7344         (c_print_type_union_field_offset, maybe_print_hole)
7345         (c_print_type_struct_field_offset): Move to typeprint.c and
7346         rename.
7347         (c_type_print_base_struct_union): Update.
7348
7349 2018-06-25  Pedro Alves  <palves@redhat.com>
7350
7351         * gdbthread.h (thread_info_ref, delete_thread)
7352         (delete_thread_silent, first_thread_of_inferior)
7353         (any_thread_of_inferior, switch_to_thread)
7354         (enable_thread_stack_temporaries)
7355         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7356         (get_last_thread_stack_temporary)
7357         (value_in_thread_stack_temporaries, can_access_registers_thread):
7358         Spell out "struct thread_info" instead of just "thread_info".
7359         * inferior.h (notice_new_inferior): Likewise.
7360
7361 2018-06-25  Pedro Alves  <palves@redhat.com>
7362
7363         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7364         pass thread_info pointer to delete_thread.
7365         (windows_nat_target::detach): Pass inferior pointer to
7366         detach_inferior.
7367         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7368         delete_thread.
7369         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7370         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7371         and pass a thread_info pointer to delete_thread.
7372         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7373         pass thread_info pointer to delete_thread.
7374         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7375         delete_thread_silent call.
7376         * procfs.c (procfs_target::detach): Pass inferior pointer to
7377         detach_inferior.
7378         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7379         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7380         delete_thread_silent call.
7381         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7382         pass thread_info pointer to delete_thread.
7383         (windows_nat_target::detach): Pass inferior pointer to
7384         delete_inferior.
7385
7386 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7387
7388         * regcache.c (readable_regcache::read_part): Fix asserts.
7389         (reg_buffer::raw_collect_part): New function.
7390         (regcache::write_part): Fix asserts.
7391         (reg_buffer::raw_supply_part): New function.
7392         (regcache::transfer_regset_register): New helper function.
7393         (regcache::transfer_regset): Call new functions.
7394         (regcache_supply_regset): Use gdb_byte*.
7395         (regcache::supply_regset): Likewise.
7396         (regcache_collect_regset): Likewise.
7397         (regcache::collect_regset): Likewise.
7398         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7399         (reg_buffer::raw_supply_part): Likewise.
7400         (regcache::transfer_regset_register): Likewise.
7401         (regcache::transfer_regset): Use gdb_byte*.
7402
7403 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7404
7405         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7406
7407 2018-06-21  Pedro Alves  <palves@redhat.com>
7408
7409         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7410         instead of a ptid_t.  All callers adjusted.
7411         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7412         adjusted.
7413         (print_ada_task_info, display_current_task_id, task_command_1):
7414         Adjust.
7415         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7416         inferior_thread.
7417         (breakpoint_kind): Adjust.
7418         (remove_breakpoints_pid): Rename to ...
7419         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7420         pointer.  All callers adjusted.
7421         (bpstat_clear_actions): Use inferior_thread.
7422         (get_bpstat_thread): New.
7423         (bpstat_do_actions): Use it.
7424         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7425         to take a thread_info pointer.  All callers adjusted.
7426         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7427         (breakpoint_re_set_thread): Use inferior_thread.
7428         * breakpoint.h (struct inferior): Forward declare.
7429         (bpstat_stop_status): Update.
7430         (remove_breakpoints_pid): Delete.
7431         (remove_breakpoints_inf): New.
7432         * bsd-uthread.c (bsd_uthread_target::wait)
7433         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7434         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7435         (maint_btrace_packet_history_cmd)
7436         (maint_btrace_clear_packet_history_cmd): Adjust.
7437         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7438         inferior_thread.
7439         * cli/cli-interp.c: Include "inferior.h".
7440         * common/refcounted-object.h (struct
7441         refcounted_object_ref_policy): New.
7442         * compile/compile-object-load.c: Include gdbthread.h.
7443         (store_regs): Use inferior_thread.
7444         * corelow.c (core_target::close): Use current_inferior.
7445         (core_target_open): Adjust to use first_thread_of_inferior and use
7446         the current inferior.
7447         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7448         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7449         <thread>: ... this new field.  All references adjusted.
7450         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7451         Take a thread_info pointer instead of a ptid_t.
7452         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7453         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7454         thread_info pointer instead of a ptid_t.
7455         * elfread.c: Include "inferior.h".
7456         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7457         Use inferior_thread.
7458         * eval.c (evaluate_subexp): Likewise.
7459         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7460         inferior_thread.
7461         * gdb_proc_service.h (struct thread_info): Forward declare.
7462         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7463         <thread>: ... this new field.  All references adjusted.
7464         * gdbarch.h, gdbarch.c: Regenerate.
7465         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7466         'thread' parameter.  All implementations and callers adjusted.
7467         * gdbthread.h (thread_info) <set_running>: New method.
7468         (delete_thread, delete_thread_silent): Take a thread_info pointer
7469         instead of a ptid.
7470         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7471         (first_thread_of_process): Delete, replaced by ...
7472         (first_thread_of_inferior): ... this new function.  All callers
7473         adjusted.
7474         (any_live_thread_of_process): Delete, replaced by ...
7475         (any_live_thread_of_inferior): ... this new function.  All callers
7476         adjusted.
7477         (switch_to_thread, switch_to_no_thread): Declare.
7478         (is_executing): Delete.
7479         (enable_thread_stack_temporaries): Update comment.
7480         <enable_thread_stack_temporaries>: Take a thread_info pointer
7481         instead of a ptid_t.  Incref the thread.
7482         <~enable_thread_stack_temporaries>: Decref the thread.
7483         <m_ptid>: Delete
7484         <m_thr>: New.
7485         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7486         (get_last_thread_stack_temporary)
7487         (value_in_thread_stack_temporaries, can_access_registers_thread):
7488         Take a thread_info pointer instead of a ptid_t.  All callers
7489         adjusted.
7490         * infcall.c (get_call_return_value): Use inferior_thread.
7491         (run_inferior_call): Work with thread pointers instead of ptid_t.
7492         (call_function_by_hand_dummy): Work with thread pointers instead
7493         of ptid_t.  Use thread_info_ref.
7494         * infcmd.c (proceed_thread_callback): Access thread's state
7495         directly.
7496         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7497         access thread's state directly.
7498         (continue_command): Use inferior_thread.
7499         (info_program_command): Use find_thread_ptid and access thread
7500         state directly.
7501         (proceed_after_attach_callback): Use thread state directly.
7502         (notice_new_inferior): Take a thread_info pointer instead of a
7503         ptid_t.  All callers adjusted.
7504         (exit_inferior): Take an inferior pointer instead of a pid.  All
7505         callers adjusted.
7506         (exit_inferior_silent): New.
7507         (detach_inferior): Delete.
7508         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7509         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7510         (detach_inferior_command, kill_inferior_command): Use
7511         find_inferior_id instead of valid_gdb_inferior_id and
7512         gdb_inferior_id_to_pid.
7513         (inferior_command): Use inferior and thread pointers.
7514         * inferior.h (struct thread_info): Forward declare.
7515         (notice_new_inferior): Take a thread_info pointer instead of a
7516         ptid_t.  All callers adjusted.
7517         (detach_inferior): Delete declaration.
7518         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7519         instead of a pid.  All callers adjusted.
7520         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7521         (valid_gdb_inferior_id): Delete.
7522         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7523         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7524         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7525         ...
7526         <inf>: ... this new field.
7527         <step_ptid>: Delete, replaced by ...
7528         <step_thread>: ... this new field.
7529         (get_displaced_stepping_state): Take an inferior pointer instead
7530         of a pid.  All callers adjusted.
7531         (displaced_step_in_progress_any_inferior): Adjust.
7532         (displaced_step_in_progress_thread): Take a thread pointer instead
7533         of a ptid_t.  All callers adjusted.
7534         (displaced_step_in_progress, add_displaced_stepping_state): Take
7535         an inferior pointer instead of a pid.  All callers adjusted.
7536         (get_displaced_step_closure_by_addr): Adjust.
7537         (remove_displaced_stepping_state): Take an inferior pointer
7538         instead of a pid.  All callers adjusted.
7539         (displaced_step_prepare_throw, displaced_step_prepare)
7540         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7541         All callers adjusted.
7542         (start_step_over): Adjust.
7543         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7544         displaced step queue.
7545         (do_target_resume): Adjust.
7546         (fetch_inferior_event): Use inferior_thread.
7547         (context_switch, get_inferior_stop_soon): Take an
7548         execution_control_state pointer instead of a ptid_t.  All callers
7549         adjusted.
7550         (switch_to_thread_cleanup): Delete.
7551         (stop_all_threads): Use scoped_restore_current_thread.
7552         * inline-frame.c: Include "gdbthread.h".
7553         (inline_state) <inline_state>: Take a thread pointer instead of a
7554         ptid_t.  All callers adjusted.
7555         <ptid>: Delete, replaced by ...
7556         <thread>: ... this new field.
7557         (find_inline_frame_state): Take a thread pointer instead of a
7558         ptid_t.  All callers adjusted.
7559         (skip_inline_frames, step_into_inline_frame)
7560         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7561         pointer instead of a ptid_t.  All callers adjusted.
7562         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7563         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7564         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7565         pointers directly.
7566         * linux-nat.c (get_detach_signal): Likewise.
7567         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7568         (thread_db_notice_clone): Adjust.
7569         (thread_db_find_new_threads_silently)
7570         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7571         a thread pointer instead of a ptid_t.  All callers adjusted.
7572         * mi/mi-cmd-var.c: Include "inferior.h".
7573         (mi_cmd_var_update_iter): Update to use thread pointers.
7574         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7575         inferior directly.
7576         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7577         out to ...
7578         (mi_output_running): ... this new function.
7579         (mi_on_resume_1): Adjust to use it.
7580         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7581         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7582         directly.
7583         (interrupt_thread_callback): : Adjust to use thread and inferior
7584         pointers.
7585         * proc-service.c: Include "gdbthread.h".
7586         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7587         * progspace-and-thread.c: Include "inferior.h".
7588         * progspace.c: Include "inferior.h".
7589         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7590         hold a reference to an inferior_object.
7591         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7592         inferior_thread.
7593         * python/py-inferior.c (struct inferior_object): Give the type a
7594         tag name instead of a typedef.
7595         (python_on_normal_stop): No need to check if the current thread is
7596         listed.
7597         (inferior_to_inferior_object): Change return type to
7598         inferior_object.  All callers adjusted.
7599         (find_thread_object): Delete, bits factored out to ...
7600         (thread_to_thread_object): ... this new function.
7601         * python/py-infthread.c (create_thread_object): Use
7602         inferior_to_inferior_object.
7603         (thpy_is_stopped): Use thread pointer directly.
7604         (gdbpy_selected_thread): Use inferior_thread.
7605         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7606         field, replaced with ...
7607         <thread>: ... this new field.  All users adjusted.
7608         (btpy_insn_or_gap_new): Drop const.
7609         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7610         callers adjusted.
7611         * python/py-record.c: Include "gdbthread.h".
7612         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7613         a ptid_t.  All callers adjusted.
7614         (gdbpy_current_recording): Use inferior_thread.
7615         * python/py-record.h (recpy_record_object) <ptid>: Delete
7616         field, replaced with ...
7617         <thread>: ... this new field.  All users adjusted.
7618         (recpy_element_object) <ptid>: Delete
7619         field, replaced with ...
7620         <thread>: ... this new field.  All users adjusted.
7621         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7622         a ptid_t.  All callers adjusted.
7623         * python/py-threadevent.c: Include "gdbthread.h".
7624         (get_event_thread): Use thread_to_thread_object.
7625         * python/python-internal.h (struct inferior_object): Forward
7626         declare.
7627         (find_thread_object, find_inferior_object): Delete declarations.
7628         (thread_to_thread_object, inferior_to_inferior_object): New
7629         declarations.
7630         * record-btrace.c: Include "inferior.h".
7631         (require_btrace_thread): Use inferior_thread.
7632         (record_btrace_frame_sniffer)
7633         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7634         (get_thread_current_frame): Use scoped_restore_current_thread and
7635         switch_to_thread.
7636         (get_thread_current_frame): Use thread pointer directly.
7637         (record_btrace_replay_at_breakpoint): Use thread's inferior
7638         pointer directly.
7639         * record-full.c: Include "inferior.h".
7640         * regcache.c: Include "gdbthread.h".
7641         (get_thread_arch_regcache): Use the inferior's address space
7642         directly.
7643         (get_thread_regcache, registers_changed_thread): New.
7644         * regcache.h (get_thread_regcache(thread_info *thread)): New
7645         overload.
7646         (registers_changed_thread): New.
7647         (remote_target) <remote_detach_1>: Swap order of parameters.
7648         (remote_add_thread): <remote_add_thread>: Return the new thread.
7649         (get_remote_thread_info(ptid_t)): New overload.
7650         (remote_target::remote_notice_new_inferior): Use thread pointers
7651         directly.
7652         (remote_target::process_initial_stop_replies): Use
7653         thread_info::set_running.
7654         (remote_target::remote_detach_1, remote_target::detach)
7655         (extended_remote_target::detach): Adjust.
7656         * stack.c (frame_show_address): Use inferior_thread.
7657         * target-debug.h (target_debug_print_thread_info_pp): New.
7658         * target-delegates.c: Regenerate.
7659         * target.c (default_thread_address_space): Delete.
7660         (memory_xfer_partial_1): Use current_inferior.
7661         (target_detach): Use current_inferior.
7662         (target_thread_address_space): Delete.
7663         (generic_mourn_inferior): Use current_inferior.
7664         * target.h (struct target_ops) <thread_address_space>: Delete.
7665         (target_thread_address_space): Delete.
7666         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7667         pointers directly.
7668         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7669         thread pointer instead of a ptid_t.  Adjust all callers.
7670         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7671         (first_thread_of_process): Delete, replaced by ...
7672         (first_thread_of_inferior): ... this new function.  All callers
7673         adjusted.
7674         (any_thread_of_process): Rename to ...
7675         (any_thread_of_inferior): ... this, and take an inferior pointer.
7676         (any_live_thread_of_process): Rename to ...
7677         (any_live_thread_of_inferior): ... this, and take an inferior
7678         pointer.
7679         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7680         (value_in_thread_stack_temporaries)
7681         (get_last_thread_stack_temporary): Take a thread pointer instead
7682         of a ptid_t.  Adjust all callers.
7683         (thread_info::set_running): New.
7684         (validate_registers_access): Use inferior_thread.
7685         (can_access_registers_ptid): Rename to ...
7686         (can_access_registers_thread): ... this, and take a thread
7687         pointer.
7688         (print_thread_info_1): Adjust to compare thread pointers instead
7689         of ptids.
7690         (switch_to_no_thread, switch_to_thread): Make extern.
7691         (scoped_restore_current_thread::~scoped_restore_current_thread):
7692         Use m_thread pointer directly.
7693         (scoped_restore_current_thread::scoped_restore_current_thread):
7694         Use inferior_thread.
7695         (thread_command): Use thread pointer directly.
7696         (thread_num_make_value_helper): Use inferior_thread.
7697         * top.c (execute_command): Use inferior_thread.
7698         * tui/tui-interp.c: Include "inferior.h".
7699         * varobj.c (varobj_create): Use inferior_thread.
7700         (value_of_root_1): Use find_thread_global_id instead of
7701         global_thread_id_to_ptid.
7702
7703 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7704
7705         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7706         possible.
7707         (regcache::write_part): Likewise.
7708         (readable_regcache::cooked_read_part): Update comment.
7709         (readable_regcache::cooked_write_part): Likewise.
7710         * regcache.h: (readable_regcache::read_part): Likewise.
7711         (regcache::write_part): Likewise.
7712
7713 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7714             Dirk Schubert  <dirk.schubert@arm.com>
7715
7716         * aarch64-linux-nat.c (post_attach): New.
7717         (aarch64_linux_nat_target::post_attach): Override post_attach to
7718         record the number of hardware debug registers.
7719
7720 2018-06-20  Tom Tromey  <tom@tromey.com>
7721
7722         * python/py-param.c (add_setshow_generic): Make parameters const.
7723         (parmpy_init): Update.
7724
7725 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7726
7727         * regcache.h (regcache_cooked_read_ftype): Rename to...
7728         (register_read_ftype): ...this, change type to function_view.
7729         (class reg_buffer) <save>: Remove src parameter.
7730         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7731         parameter non-const in first overload.  Remove src parameter in
7732         second overload.
7733         * regcache.c (do_cooked_read): Remove.
7734         (readonly_detached_regcache::readonly_detached_regcache): Make
7735         parameter non-const, adjust call to other constructor.
7736         (reg_buffer::save): Remove src parameter.
7737         * frame.c (do_frame_register_read): Remove.
7738         (frame_save_as_regcache): Use lambda function.
7739         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7740         parameter to ppu2spu_data *.
7741         (ppu2spu_sniffer): Use lambda function.
7742
7743 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7744
7745         * record-full.c (record_full_target::insert_breakpoint): Remove
7746         "struct" keyword, add const.
7747
7748 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7749
7750         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7751         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7752         * configure.ac: Remove AC_PREREQ, add missing quoting.
7753         * gnulib/configure.ac: Modernize usage of
7754         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7755         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7756         (AUTOMAKE_VERSION): Bump to 1.15.1.
7757         * configure: Re-generate.
7758         * config.in: Re-generate.
7759         * aclocal.m4: Re-generate.
7760         * gnulib/aclocal.m4: Re-generate.
7761         * gnulib/config.in: Re-generate.
7762         * gnulib/configure: Re-generate.
7763         * gnulib/import/Makefile.in: Re-generate.
7764
7765 2018-06-19  Pedro Alves  <palves@redhat.com>
7766
7767         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7768         (lookup_minimal_symbol_by_pc_section): ... here with
7769         gdb_assert_not_reached added.
7770
7771 2018-06-19  Pedro Alves  <palves@redhat.com>
7772
7773         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7774         parameter with a block parameter.  Compare location's block symbol
7775         with the frame's block instead of addresses.
7776         (skip_inline_frames): Pass the current block instead of the
7777         frame's address.  Break out as soon as we determine the frame
7778         should not be skipped.
7779
7780 2018-06-18  Tom Tromey  <tom@tromey.com>
7781
7782         * solib-aix.c (solib_aix_get_section_offsets): Return
7783         unique_xmalloc_ptr.
7784         (solib_aix_solib_create_inferior_hook): Update.
7785
7786 2018-06-18  Tom Tromey  <tom@tromey.com>
7787
7788         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7789
7790 2018-06-18  Tom Tromey  <tom@tromey.com>
7791
7792         * solib-frv.c (frv_relocate_main_executable): Use
7793         unique_xmalloc_ptr.
7794         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7795         unique_xmalloc_ptr.
7796
7797 2018-06-18  Tom Tromey  <tom@tromey.com>
7798
7799         * objfiles.h (inhibit_section_map_updates): Update.
7800         (resume_section_map_updates, resume_section_map_updates_cleanup):
7801         Remove.
7802         * solib-svr4.c (svr4_handle_solib_event): Update.
7803         * objfiles.c (inhibit_section_map_updates): Return
7804         scoped_restore_tmpl<int>.
7805         (resume_section_map_updates, resume_section_map_updates_cleanup):
7806         Remove.
7807
7808 2018-06-18  Tom Tromey  <tom@tromey.com>
7809
7810         * valprint.h (read_string): Update.
7811         * valprint.c (read_string): Change type of "buffer".
7812         (val_print_string): Update.
7813         * python/py-value.c (valpy_string): Update.
7814         * language.h (struct language_defn) <la_get_string>: Change
7815         type of "buffer".
7816         (default_get_string, c_get_string): Update.
7817         * language.c (default_get_string): Change type of "buffer".
7818         * guile/scm-value.c (gdbscm_value_to_string): Update.
7819         * c-lang.c (c_get_string): Change type of "buffer".
7820
7821 2018-06-18  Tom Tromey  <tom@tromey.com>
7822
7823         * ser-mingw.c (struct pipe_state_destroyer): New.
7824         (pipe_state_up): New typedef.
7825         (cleanup_pipe_state): Remove.
7826         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7827
7828 2018-06-18  Tom Tromey  <tom@tromey.com>
7829
7830         * rust-lang.h (rust_yyerror): Don't declare.
7831         * rust-lang.c (rust_language_defn): Update.
7832         * rust-exp.y (yyerror): Now static.
7833         * parse.c (parse_exp_in_context_1): Update.
7834         * p-lang.h (p_yyerror): Don't declare.
7835         * p-lang.c (p_language_defn): Update.
7836         * p-exp.y (yyerror): Now static.
7837         * opencl-lang.c (opencl_language_defn): Update.
7838         * objc-lang.c (objc_language_defn): Update.
7839         * m2-lang.h (m2_yyerror): Don't declare.
7840         * m2-lang.c (m2_language_defn): Update.
7841         * m2-exp.y (yyerror): Now static.
7842         * language.h (struct language_defn) <la_error>: Remove.
7843         * language.c (unk_lang_error): Remove.
7844         (unknown_language_defn, auto_language_defn): Remove.
7845         * go-lang.h (go_yyerror): Don't declare.
7846         * go-lang.c (go_language_defn): Update.
7847         * go-exp.y (yyerror): Now static.
7848         * f-lang.h (f_yyerror): Don't declare.
7849         * f-lang.c (f_language_defn): Update.
7850         * f-exp.y (yyerror): Now static.
7851         * d-lang.h (d_yyerror): Don't declare.
7852         * d-lang.c (d_language_defn): Update.
7853         * d-exp.y (yyerror): Now static.
7854         * c-lang.h (c_yyerror): Don't declare.
7855         * c-lang.c (c_language_defn, cplus_language_defn)
7856         (asm_language_defn, minimal_language_defn): Update.
7857         * c-exp.y (yyerror): Now static.
7858         * ada-lang.h (ada_yyerror): Don't declare.
7859         * ada-lang.c (ada_language_defn): Update.
7860         * ada-exp.y (yyerror): Now static.
7861
7862 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7863
7864         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7865         (store_sveregs_to_thread): Likewise.
7866         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7867         (aarch64_linux_store_inferior_registers): Likewise.
7868         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7869         function.
7870         (aarch64_sve_regs_copy_to_regcache): Likewise.
7871         (aarch64_sve_regs_copy_from_regcache): Likewise.
7872         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7873         declaration.
7874         (aarch64_sve_regs_copy_to_regcache): Likewise.
7875         (aarch64_sve_regs_copy_from_regcache): Likewise.
7876         (sve_context): Structure from Linux headers.
7877         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7878         (SVE_SIG_ZREG_SIZE): Likewise.
7879         (SVE_SIG_PREG_SIZE): Likewise.
7880         (SVE_SIG_FFR_SIZE): Likewise.
7881         (SVE_SIG_REGS_OFFSET): Likewise.
7882         (SVE_SIG_ZREGS_OFFSET): Likewise.
7883         (SVE_SIG_ZREG_OFFSET): Likewise.
7884         (SVE_SIG_ZREGS_SIZE): Likewise.
7885         (SVE_SIG_PREGS_OFFSET): Likewise.
7886         (SVE_SIG_PREG_OFFSET): Likewise.
7887         (SVE_SIG_PREGS_SIZE): Likewise.
7888         (SVE_SIG_FFR_OFFSET): Likewise.
7889         (SVE_SIG_REGS_SIZE): Likewise.
7890         (SVE_SIG_CONTEXT_SIZE): Likewise.
7891         (SVE_PT_REGS_MASK): Likewise.
7892         (SVE_PT_REGS_FPSIMD): Likewise.
7893         (SVE_PT_REGS_SVE): Likewise.
7894         (SVE_PT_VL_INHERIT): Likewise.
7895         (SVE_PT_VL_ONEXEC): Likewise.
7896         (SVE_PT_REGS_OFFSET): Likewise.
7897         (SVE_PT_FPSIMD_OFFSET): Likewise.
7898         (SVE_PT_FPSIMD_SIZE): Likewise.
7899         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7900         (SVE_PT_SVE_PREG_SIZE): Likewise.
7901         (SVE_PT_SVE_FFR_SIZE): Likewise.
7902         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7903         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7904         (__SVE_SIG_TO_PT): Likewise.
7905         (SVE_PT_SVE_OFFSET): Likewise.
7906         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7907         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7908         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7909         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7910         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7911         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7912         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7913         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7914         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7915         (SVE_PT_SVE_SIZE): Likewise.
7916         (SVE_PT_SIZE): Likewise.
7917         (HAS_SVE_STATE): New define.
7918
7919 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7920
7921         * nat/aarch64-sve-linux-sigcontext.h: New file.
7922         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7923         new files.
7924         (SVE_VQ_MIN): Likewise.
7925         (SVE_VQ_MAX): Likewise.
7926         (SVE_VL_MIN): Likewise.
7927         (SVE_VL_MAX): Likewise.
7928         (SVE_NUM_ZREGS): Likewise.
7929         (SVE_NUM_PREGS): Likewise.
7930         (sve_vl_valid): Likewise.
7931         (struct user_sve_header): Likewise.
7932
7933 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7934             Richard Bunt <Richard.Bunt@arm.com>
7935
7936         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7937         was requested by GDB.
7938
7939 2018-06-15  Tom de Vries  <tdevries@suse.de>
7940
7941         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7942
7943 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7944
7945         * gnulib/update-gnulib.sh: Print expected versions of
7946         autoconf/aclocal.
7947
7948 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7949
7950         * arch-utils.c (default_type_align): Use type_length_units.
7951         * gdbtypes.c (type_align): Use type_length_units.
7952
7953 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7954
7955         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7956         of 'define' command.
7957
7958 2018-06-14  Tom de Vries  <tdevries@suse.de>
7959
7960         PR cli/22573
7961         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7962         get_no_prettyformat_print_options.
7963
7964 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7965
7966         * sparc-nat.h: Include target.h.
7967         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7968         <fetch_registers>: Remove this argument in function call.
7969         <store_registers>: Remove this argument in function call, remove
7970         extra semicolon.
7971         <low_forget_process>: Call sparc64_forget_process instead of
7972         sparc_forget_process.
7973
7974 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7975
7976         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7977         (procfs_target::make_corefile_notes): Adjust to new
7978         target_read_alloc return type.
7979
7980 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7981             Stephen Roberts  <stephen.roberts@arm.com>
7982
7983         PR gdb/22882
7984         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7985         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7986         Move should_notify_stop local into more inner scope.
7987
7988 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7989             Stephen Roberts  <stephen.roberts@arm.com>
7990
7991         PR gdb/22882
7992         * infrun.c (resume_1): Add call to mark_async_event_handler.
7993
7994 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7995
7996         * infrun.c (do_target_wait): Change old version of $pc printed.
7997
7998 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7999
8000         * dwarf2read.c (read_index_from_section): Rename to...
8001         (read_gdb_index_from_section): ... this, update all callers.
8002         (dwarf2_read_index): Rename to...
8003         (dwarf2_read_gdb_index): ... this, update all callers.
8004
8005 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8006
8007         * hppa-linux-nat.c
8008         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8009         hppa_linux_nat_target::fetch_registers.
8010
8011 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8012
8013         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8014         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8015         (AARCH64_DWARF_SVE_FFR): Likewise.
8016         (AARCH64_DWARF_SVE_P0): Likewise.
8017         (AARCH64_DWARF_SVE_Z0): Likewise.
8018
8019 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8020
8021         * common/common-regcache.h (raw_compare): New function.
8022         * regcache.c (regcache::raw_compare): Likewise.
8023         * regcache.h (regcache::raw_compare): New declaration.
8024
8025 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8026
8027         * common/common-regcache.h (reg_buffer_common): New structure.
8028         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8029         (reg_buffer::raw_supply): Likewise.
8030         (reg_buffer::raw_supply_integer): Likewise.
8031         (reg_buffer::raw_supply_zeroed): Likewise.
8032         (reg_buffer::raw_collect): Likewise.
8033         (reg_buffer::raw_collect_integer): Likewise.
8034         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8035         (reg_buffer::raw_supply): Likewise.
8036         (reg_buffer::raw_supply_integer): Likewise.
8037         (reg_buffer::raw_supply_zeroed): Likewise.
8038         (reg_buffer::raw_collect): Likewise.
8039         (reg_buffer::raw_collect_integer): Likewise.
8040
8041 2018-06-10  Tom Tromey  <tom@tromey.com>
8042
8043         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8044         (class remote_state) <stop_reply_queue>: Now std::vector.
8045         (remote_state::~remote_state)
8046         (remote_target::stop_reply_queue_length): Update.
8047         (struct queue_iter_param, remove_child_of_pending_fork)
8048         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8049         (check_pending_event_prevents_wildcard_vcont_callback)
8050         (remove_stop_reply_for_inferior)
8051         (remove_stop_reply_of_remote_state)
8052         (remote_notif_remove_once_on_match)
8053         (stop_reply_match_ptid_and_ws)
8054         (remote_kill_child_of_pending_fork): Remove.
8055         (remote_target::remove_new_fork_children)
8056         (remote_target::check_pending_events_prevent_wildcard_vcont)
8057         (remote_target::discard_pending_stop_replies)
8058         (remote_target::discard_pending_stop_replies_in_queue)
8059         (remote_target::remote_notif_remove_queued_reply)
8060         (remote_target::queued_stop_reply)
8061         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8062         (remote_target::wait, remote_target::kill_new_fork_children)
8063         (remote_target::async): Update.
8064
8065 2018-06-10  Tom Tromey  <tom@tromey.com>
8066
8067         * record-full.c (record_full_arch_list_cleanups): Remove.
8068         (record_full_message): Use try/catch.
8069         (record_full_wait_cleanups): Remove.
8070         (record_full_wait_1): Use try/catch.
8071         (record_full_restore): Likewise.
8072
8073 2018-06-10  Tom Tromey  <tom@tromey.com>
8074
8075         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8076         declare VEC.  Add constructor.
8077         <in_target_beneath>: Now bool.
8078         (record_full_breakpoints): Now a std::vector, static.
8079         (record_full_sync_record_breakpoints)
8080         (record_full_init_record_breakpoints)
8081         (record_full_target::insert_breakpoint)
8082         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8083
8084 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8085
8086         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8087         * serial.c (serial_interface_lookup): Remove struct keyword.
8088
8089 2018-06-10  Tom Tromey  <tom@tromey.com>
8090
8091         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8092         method.
8093         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8094         a method.
8095         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8096         method.
8097         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8098         "beneath" as a method.
8099         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8100         Use "beneath" as a method.
8101
8102 2018-06-10  Tom Tromey  <tom@tromey.com>
8103
8104         * tracefile.c (struct trace_file_writer_deleter): New.
8105         <operator()>: Rename from trace_file_writer_xfree.
8106         (trace_file_writer_up): New typedef.
8107         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8108
8109 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8110
8111         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8112         <m_registers, m_register_status>: Change type to
8113         std::unique_ptr.
8114         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8115         XCNEWVEC.
8116
8117 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8118
8119         * common/common-regcache.h (enum register_status): Add
8120         underlying type "signed char".
8121         * regcache.h (reg_buffer) <m_register_status>: Change type to
8122         register_status *.
8123         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8124         register_status instead of signed char.
8125         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8126         (reg_buffer::get_register_status): Remove cast.
8127         (readable_regcache::raw_read): Remove cast.
8128         (readable_regcache::cooked_read): Remove cast.
8129
8130 2018-06-09  Tom Tromey  <tom@tromey.com>
8131
8132         * source.c (reverse_search_command, forward_search_command): Use
8133         scoped_fd.
8134
8135 2018-06-09  Tom Tromey  <tom@tromey.com>
8136
8137         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8138         (serial_ops_list): Now static, std::vector.
8139         (serial_interface_lookup, serial_add_interface): Update.
8140
8141 2018-06-09  Tom Tromey  <tom@tromey.com>
8142
8143         * dwarf2read.c (process_cu_includes): Update.
8144         (process_full_comp_unit): Update.
8145         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8146         std::vector.
8147
8148 2018-06-08  Paul Koning  <paul_koning@dell.com>
8149
8150         PR gdb/23252
8151
8152         * python/python.c (do_start_initialization):
8153         Avoid call to internal Python API.
8154         (init__gdb_module): New function.
8155
8156 2018-06-08  Gary Benson <gbenson@redhat.com>
8157
8158         * linux-thread-db.c (valprint.h): New include.
8159         (struct check_thread_db_info): New structure.
8160         (check_thread_db_on_load, tdb_testinfo): New static globals.
8161         (check_thread_db, check_thread_db_callback): New functions.
8162         (try_thread_db_load_1): Run integrity checks if requested.
8163         (maintenance_check_libthread_db): New function.
8164         (_initialize_thread_db): Register "maint check libthread-db"
8165         and "maint set/show check-libthread-db".
8166         * NEWS: Mention the above new commands.
8167
8168 2018-06-08  Tom Tromey  <tom@tromey.com>
8169
8170         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8171         now a method.
8172
8173 2018-06-08  Tom Tromey  <tom@tromey.com>
8174
8175         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8176
8177 2018-06-08  Tom Tromey  <tom@tromey.com>
8178
8179         * common/btrace-common.h (struct btrace_data): Add constructor,
8180         destructor, move assignment operator.
8181         <empty, clear, fini>: New methods.
8182         <format>: Initialize.
8183         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8184         (btrace_data_empty): Don't declare.
8185         * common/btrace-common.c (btrace_data_init): Remove.
8186         (btrace_data::fini): Rename from btrace_data_fini.
8187         (btrace_data::empty): Rename from btrace_data_empty.
8188         (btrace_data::clear): Rename from btrace_data_clear.  Return
8189         bool.
8190         * btrace.h (make_cleanup_btrace_data): Don't declare.
8191         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8192         (parse_xml_btrace): Update.
8193         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8194         (maint_btrace_clear_packet_history_cmd): Update.
8195
8196 2018-06-07  Pedro Alves  <palves@redhat.com>
8197
8198         * target.h (target_ops) <beneath>: Now a method.  All references
8199         updated.
8200         (class target_stack): New.
8201         * target.c (g_target_stack): New.
8202         (g_current_top_target): Delete.
8203         (current_top_target): Get the top target out of g_target_stack.
8204         (target_stack::push, target_stack::unpush): New.
8205         (push_target, unpush_target): Reimplement.
8206         (target_is_pushed): Reimplement in terms of g_target_stack.
8207         (target_ops::beneath, target_stack::find_beneath): New.
8208
8209 2018-06-07  Pedro Alves  <palves@redhat.com>
8210
8211         * target.h (find_target_beneath): Delete declaration.
8212         * target.c (find_target_beneath): Delete definition.
8213         * aix-thread.c: All callers of find_target_beneath adjusted to
8214         call target_ops::beneath instead.
8215         * bsd-uthread.c: Likewise.
8216         * linux-thread-db.c: Likewise.
8217         * ravenscar-thread.c: Likewise.
8218         * sol-thread.c: Likewise.
8219         * spu-multiarch.c: Likewise.
8220
8221 2018-06-07  Pedro Alves  <palves@redhat.com>
8222
8223         * target.h (target_ops) <beneath>: Now a method.  All references
8224         updated.
8225         (target_ops) <m_beneath>: New.
8226         * target.c (target_ops::beneath): New.
8227         * corelow.c: Adjust all references to target_ops::beneath.
8228         * linux-thread-db.c: Likewise.
8229         * make-target-delegates: Likewise.
8230         * record-btrace.c: Likewise.
8231         * record-full.c: Likewise.
8232         * remote.c: Likewise.
8233         * target.c: Likewise.
8234         * target-delegates.c: Regenerate.
8235
8236 2018-06-07  Pedro Alves  <palves@redhat.com>
8237
8238         * target.h (target_stack): Delete.
8239         (current_top_target): Declare function.
8240         * target.c (target_stack): Delete.
8241         (g_current_top_target): New.
8242         (current_top_target): New function.
8243         * auxv.c: Use current_top_target instead of target_stack
8244         throughout.
8245         * avr-tdep.c: Likewise.
8246         * breakpoint.c: Likewise.
8247         * corefile.c: Likewise.
8248         * elfread.c: Likewise.
8249         * eval.c: Likewise.
8250         * exceptions.c: Likewise.
8251         * frame.c: Likewise.
8252         * gdbarch-selftests.c: Likewise.
8253         * gnu-v3-abi.c: Likewise.
8254         * ia64-tdep.c: Likewise.
8255         * ia64-vms-tdep.c: Likewise.
8256         * infcall.c: Likewise.
8257         * infcmd.c: Likewise.
8258         * infrun.c: Likewise.
8259         * linespec.c: Likewise.
8260         * linux-tdep.c: Likewise.
8261         * minsyms.c: Likewise.
8262         * ppc-linux-nat.c: Likewise.
8263         * ppc-linux-tdep.c: Likewise.
8264         * procfs.c: Likewise.
8265         * regcache.c: Likewise.
8266         * remote.c: Likewise.
8267         * rs6000-tdep.c: Likewise.
8268         * s390-linux-nat.c: Likewise.
8269         * s390-tdep.c: Likewise.
8270         * solib-aix.c: Likewise.
8271         * solib-darwin.c: Likewise.
8272         * solib-dsbt.c: Likewise.
8273         * solib-spu.c: Likewise.
8274         * solib-svr4.c: Likewise.
8275         * solib-target.c: Likewise.
8276         * sparc-tdep.c: Likewise.
8277         * sparc64-tdep.c: Likewise.
8278         * spu-tdep.c: Likewise.
8279         * symfile.c: Likewise.
8280         * symtab.c: Likewise.
8281         * target-descriptions.c: Likewise.
8282         * target-memory.c: Likewise.
8283         * target.c: Likewise.
8284         * target.h: Likewise.
8285         * tracefile-tfile.c: Likewise.
8286         * tracepoint.c: Likewise.
8287         * valops.c: Likewise.
8288         * valprint.c: Likewise.
8289         * value.c: Likewise.
8290         * windows-tdep.c: Likewise.
8291         * mi/mi-main.c: Likewise.
8292
8293 2018-06-07  Tom Tromey  <tom@tromey.com>
8294
8295         * valprint.h (build_address_symbolic): Declare.
8296         * printcmd.c (print_address_symbolic): Update.
8297         (build_address_symbolic): Change "name" and "filename" to
8298         std::string.
8299         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8300         Update.
8301         * defs.h (build_address_symbolic): Remove declaration.
8302
8303 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8304
8305         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8306         (aarch64_vnv_type): Add function.
8307         (aarch64_pseudo_register_name): Add V regs for SVE.
8308         (aarch64_pseudo_register_type): Likewise.
8309         (aarch64_pseudo_register_reggroup_p): Likewise.
8310         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8311         (aarch64_pseudo_read_value): Add V regs for SVE.
8312         (aarch64_pseudo_write_2): Use V0 offset for SVE
8313         (aarch64_pseudo_write): Add V regs for SVE.
8314         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8315
8316 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8317
8318         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8319         (sve_vl_from_vq): Likewise.
8320
8321 2018-06-05  Tom Tromey  <tom@tromey.com>
8322
8323         * cli/cli-cmds.c (show_version): Update.
8324         * top.c (print_gdb_version): Add "interactive" parameter.
8325         Update.
8326         * main.c (captured_main_1): Update.
8327         * top.h (print_gdb_version): Add "interactive" parameter and a
8328         comment.
8329
8330 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8331
8332         * common/enum-flags.h: Add trailing semicolon to example in
8333         comment.
8334
8335 2018-06-05  Tom Tromey  <tom@tromey.com>
8336
8337         PR cli/12326:
8338         * NEWS: Add entry about pager.
8339         * utils.c (pagination_disabled_for_command): New global.
8340         (prompt_for_continue): Allow "c" response to prompt.
8341         (reinitialize_more_filter): Clear
8342         pagination_disabled_for_command.
8343         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8344
8345 2018-06-04  Tom Tromey  <tom@tromey.com>
8346
8347         * ada-lang.h (ada_lookup_symbol_list): Update.
8348         * ada-lang.c (resolve_subexp): Update.
8349         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8350         parameter.
8351         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8352         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8353         results parameter to std::vector.
8354         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8355         Update.
8356         * ada-exp.y (block_lookup): Update.
8357         (select_possible_type_sym): Change type of syms.  Remove nsyms
8358         parameter.
8359         (write_var_or_type, write_name_assoc): Update.
8360
8361 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8362
8363         * windows-nat.c (windows_nat_target::xfer_partial): Return
8364         TARGET_XFER_E_IO if we need to delegate to the target beneath
8365         but BENEATH is NULL.
8366
8367 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8368
8369         * Makefile.in (config.status): Add configure.nat as a
8370         dependency.
8371
8372 2018-06-04  Tom Tromey  <tom@tromey.com>
8373
8374         * cp-name-parser.y (cpname_state): Add method declarations.
8375         (HANDLE_QUAL): Update.
8376         (cpname_state::d_grab, cpname_state::fill_comp)
8377         (cpname_state::make_operator, cpname_state::make_dtor)
8378         (cpname_state::make_builtin_type, cpname_state::make_name)
8379         (cpname_state::d_qualify, cpname_state::d_int_type)
8380         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8381         (%union): Move earlier.
8382
8383 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8384
8385         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8386
8387 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8388
8389         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8390         (aarch64_pseudo_write_1): Likewise.
8391         (aarch64_pseudo_read_value): Use helper.
8392         (aarch64_pseudo_write): Likewise.
8393
8394 2018-06-04  Pedro Alves  <palves@redhat.com>
8395
8396         * darwin-nat.c (darwin_ops): Delete.
8397         (darwin_attach_pid): Use get_native_target.
8398
8399 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8400
8401         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8402         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8403
8404 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8405
8406         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8407         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8408         (aarch64_gdbarch_init): Check for SVE.
8409         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8410
8411 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8412
8413         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8414         * aarch64-tdep.h (aarch64_read_description): Likewise.
8415         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8416         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8417         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8418         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8419         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8420
8421 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8422
8423         * value.c (value_fetch_lazy_bitfield): New.
8424         (value_fetch_lazy_memory): New.
8425         (value_fetch_lazy_register): New.
8426         (value_fetch_lazy): Factor out to smaller functions.
8427
8428 2018-06-01  Tom Tromey  <tom@tromey.com>
8429
8430         * cp-name-parser.y (backslashable, represented): Now const.
8431
8432 2018-06-01  Tom Tromey  <tom@tromey.com>
8433
8434         * cp-name-parser.y: Include parser-defs.h.
8435         (parser_fprintf): Remove declaration.
8436
8437 2018-06-01  Tom Tromey  <tom@tromey.com>
8438
8439         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8440         %parse-param.
8441         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8442         (global_result): Remove globals.
8443         (struct cpname_state): New.
8444         (yyparse): Don't declare.
8445         (yylex, yyerror): Move declarations after %union.
8446         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8447         (make_name): Add state parameter.
8448         Update all callers.
8449         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8450         parameter.
8451         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8452         Update.
8453         (yylex): Add lvalp, state parameters.
8454         (yyerror): Add state parameter.
8455         (cp_demangled_name_to_comp): Update.
8456
8457 2018-06-01  Tom Tromey  <tom@tromey.com>
8458
8459         * cp-name-parser.y (parser_fprintf): Declare.
8460         (GDB_YY_REMAP_PREFIX): Define.
8461         Include yy-remap.h.  Don't redefine yy* identifiers.
8462
8463 2018-06-01  Tom Tromey  <tom@tromey.com>
8464
8465         * python/py-type.c (typy_legacy_template_argument): Update.
8466         * cp-support.h (cp_demangled_name_to_comp): Update.
8467         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8468         parameter to be a "std::string *".
8469         (main): Update.
8470
8471 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8472
8473         * ada-lex.l: Include "diagnostics.h" instead of
8474         "common/diagnostics.h".
8475         * unittests/environ-selftests.c: Likewise.
8476         * common/diagnostics.h: Moved to ../include.
8477
8478 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8479
8480         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8481         to language_mode_manual while calling breakpoint_re_set_one.
8482
8483 2018-06-01  Tom Tromey  <tom@tromey.com>
8484
8485         * valops.c (value_cast_structs, destructor_name_p): Update.
8486         * symtab.c (gdb_mangle_name): Update.
8487         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8488         Update.
8489         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8490         (pascal_object_print_value_fields, pascal_object_print_value):
8491         Update.
8492         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8493         * linespec.c (find_methods): Update.
8494         * gdbtypes.h (type_name_no_tag): Remove.
8495         (type_name_or_error): Rename from type_name_no_tag_or_error.
8496         * gdbtypes.c (type_name_no_tag): Remove.
8497         (type_name_or_error): Rename from type_name_no_tag_or_error.
8498         (lookup_struct_elt_type, check_typedef): Update.
8499         * expprint.c (print_subexp_standard): Update.
8500         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8501         * d-namespace.c (d_lookup_nested_symbol): Update.
8502         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8503         (cp_print_class_member): Update.
8504         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8505         * completer.c (add_struct_fields): Update.
8506         * c-typeprint.c (cp_type_print_derivation_info)
8507         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8508         Update.
8509         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8510         (ada_prefer_type, ada_is_exception_sym): Update.
8511
8512 2018-06-01  Tom Tromey  <tom@tromey.com>
8513
8514         * valops.c (enum_constant_from_type, value_namespace_elt)
8515         (value_maybe_namespace_elt): Update.
8516         * valarith.c (find_size_for_pointer_math): Update.
8517         * target-descriptions.c (make_gdb_type): Update.
8518         * symmisc.c (print_symbol): Update.
8519         * stabsread.c (define_symbol, read_type)
8520         (complain_about_struct_wipeout, add_undefined_type)
8521         (cleanup_undefined_types_1): Update.
8522         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8523         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8524         (rust_internal_print_type, rust_composite_type)
8525         (rust_evaluate_funcall, rust_evaluate_subexp)
8526         (rust_inclusive_range_type_p): Update.
8527         * python/py-type.c (typy_get_tag): Update.
8528         * p-typeprint.c (pascal_type_print_base): Update.
8529         * mdebugread.c (parse_symbol, parse_type): Update.
8530         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8531         Update.
8532         * guile/scm-type.c (gdbscm_type_tag): Update.
8533         * go-lang.c (sixg_string_p): Update.
8534         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8535         Update.
8536         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8537         (TYPE_TAG_NAME): Remove.
8538         * gdbtypes.c (type_name_no_tag): Simplify.
8539         (check_typedef, check_types_equal, recursive_dump_type)
8540         (copy_type_recursive, arch_composite_type): Update.
8541         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8542         in summary mode when needed.
8543         * eval.c (evaluate_funcall): Update.
8544         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8545         (process_structure_scope, read_enumeration_type)
8546         (read_namespace_type, read_module_type, determine_prefix): Update.
8547         * cp-support.c (inspect_type): Update.
8548         * coffread.c (process_coff_symbol, decode_base_type): Update.
8549         * c-varobj.c (c_is_path_expr_parent): Update.
8550         * c-typeprint.c (c_type_print_base_struct_union): Update.
8551         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8552         summary when using C language.
8553         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8554         (gen_maybe_namespace_elt): Update.
8555         * ada-lang.c (ada_type_name): Simplify.
8556         (empty_record, ada_template_to_fixed_record_type_1)
8557         (template_to_static_fixed_type)
8558         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8559
8560 2018-06-01  Tom Tromey  <tom@tromey.com>
8561
8562         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8563         c_print_type.
8564         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8565         (c_print_type): Update.
8566         (c_print_type): New overload.
8567         (c_type_print_varspec_prefix, c_type_print_args)
8568         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8569         (c_type_print_base_struct_union, c_type_print_base_1)
8570         (cp_type_print_method_args): Add "language" parameter.
8571         (c_type_print_base): Update.
8572         * c-lang.h (c_print_type): Add new overload.
8573
8574 2018-06-01  Tom Tromey  <tom@tromey.com>
8575
8576         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8577         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8578
8579 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8580
8581         * aarch64-tdep.c (aarch64_sve_register_names): New const
8582         var.
8583         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8584         (AARCH64_SVE_Z_REGS_NUM): New define.
8585         (AARCH64_SVE_P_REGS_NUM): Likewise.
8586         (AARCH64_SVE_NUM_REGS): Likewise.
8587
8588 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8589
8590         * nat/linux-ptrace.h [__alpha__]
8591         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8592         definitions.
8593
8594 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8595
8596         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8597         the endianness selected.
8598         * NEWS: Document `set endian auto' mode operation update.
8599
8600 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8601
8602         * Makefile.in: Add new header.
8603         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8604         (sve_vl_from_vg): Likewise.
8605         (sve_vq_from_vl): Likewise.
8606         (sve_vl_from_vq): Likewise.
8607         (sve_vq_from_vg): Likewise.
8608         (sve_vg_from_vq): Likewise.
8609         * configure.nat: Add new c file.
8610         * nat/aarch64-sve-linux-ptrace.c: New file.
8611         * nat/aarch64-sve-linux-ptrace.h: New file.
8612
8613 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8614
8615         * aarch64-linux-nat.c (aarch64_linux_read_description):
8616         Add parmeter zero.
8617         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8618         Likewise.
8619         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8620         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8621         (aarch64_gdbarch_init): Add parmeter zero.
8622         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8623         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8624         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8625         parmeter.
8626         * doc/gdb.texinfo: Describe SVE feature
8627         * features/aarch64-sve.c: New file.
8628
8629 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8630
8631         PR gdb/23210
8632         * gdbarch.sh (significant_addr_bit): Default to zero when
8633         not set by target architecture.
8634         * gdbarch.c: Re-generated.
8635         * utils.c (address_significant): Update.
8636
8637 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8638
8639         * stack.c (func_command): Remove trailing newline in call to error.
8640
8641 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8642
8643         * regcache.h (regcache_raw_collect): Remove, update callers to
8644         use regcache::raw_collect.
8645         * regcache.c (regcache_raw_collect): Remove.
8646
8647 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8648
8649         * regcache.h (regcache_raw_supply): Remove, update callers to
8650         use detached_regcache::raw_supply.
8651         * regcache.c (regcache_raw_supply): Remove.
8652
8653 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8654
8655         * regcache.h (regcache_cooked_write_part): Remove, update
8656         callers to use regcache::cooked_write_part.
8657         * regcache.c (regcache_cooked_write_part): Remove.
8658
8659 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8660
8661         * regcache.h (regcache_cooked_read_part): Remove, update callers
8662         to use readable_regcache::cooked_read_part.
8663         * regcache.c (regcache_cooked_read_part): Remove.
8664
8665 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8666
8667         * regcache.h (regcache_cooked_read_value): Remove, update
8668         callers to use readable_regcache::cooked_read_value.
8669         * regcache.c (regcache_cooked_read_value): Remove.
8670
8671 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8672
8673         * regcache.h (regcache_cooked_write): Remove, update callers to
8674         use regcache::cooked_write.
8675         * regcache.c (regcache_cooked_write): Remove.
8676
8677 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8678
8679         * regcache.h (regcache_invalidate): Remove, update callers to
8680         use detached_regcache::invalidate instead.
8681         * regcache.c (regcache_invalidate): Remove.
8682
8683 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8684
8685         * regcache.h (regcache_raw_write_part): Remove, update callers
8686         to use regcache::raw_write_part instead.
8687         * regcache.c (regcache_raw_write_part): Remove.
8688
8689 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8690
8691         * regcache.h (regcache_raw_read_part): Remove, update callers to
8692         use readable_regcache::raw_read_part instead.
8693         * regcache.c (regcache_raw_read_part): Remove.
8694
8695 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8696
8697         * regcache.h (regcache_cooked_read): Remove, update callers to
8698         use readable_regcache::cooked_read instead.
8699         * regcache.c (regcache_cooked_read): Remove.
8700
8701 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8702
8703         * regcache.h (regcache_raw_write): Remove, update callers to use
8704         regcache::raw_write instead.
8705         * regcache.c (regcache_raw_write): Remove.
8706
8707 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8708
8709         * regcache.h (regcache_raw_read): Remove, update callers to use
8710         readable_regcache::raw_read instead.
8711         * regcache.c (regcache_raw_read): Remove.
8712
8713 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8714
8715         * regcache.h (regcache_raw_update): Remove, update callers to
8716         use readable_regcache::raw_update instead.
8717         * regcache.c (regcache_raw_update): Remove.
8718
8719 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8720
8721         * regcache.h (regcache_register_status): Remove, update callers
8722         to use reg_buffer::get_register_status directly instead.
8723         * regcache.c (regcache_register_status): Remove.
8724
8725 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8726
8727         * regcache.h (regcache_get_ptid): Remove, update all callers to
8728         call regcache::ptid instead.
8729         * regcache.c (regcache_get_ptid): Remove.
8730
8731 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8732
8733         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8734
8735 2018-05-30  Pedro Alves  <palves@redhat.com>
8736
8737         * common/common-exceptions.h (exception_rethrow): Use
8738         ATTRIBUTE_NORETURN.
8739
8740 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8741
8742         * breakpoint.c (print_solib_event, check_status_catch_solib):
8743         Remove struct keyword in range-based for loops.
8744         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8745         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8746         Likewise.
8747         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8748         Likewise.
8749         * symfile.c (addr_info_make_relative): Likewise.
8750         * thread.c (value_in_thread_stack_temporaries): Likewise.
8751
8752 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8753
8754         PR gdb/16841
8755         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8756         aggregate type to get its real type before accessing it.
8757
8758 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8759
8760         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8761         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8762         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8763         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8764         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8765         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8766         * printcmd.c (info_address_command): Likewise.
8767
8768 2018-05-29  Tom Tromey  <tom@tromey.com>
8769
8770         * windows-nat.c (handle_exception): Update fall-through comment.
8771
8772 2018-05-29  Tom Tromey  <tom@tromey.com>
8773
8774         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8775         (struct program_space) <added_solibs>: Now a std::vector.
8776         * breakpoint.c (print_solib_event): Update.
8777         (check_status_catch_solib): Update.
8778         * progspace.c (clear_program_space_solib_cache): Update.
8779         * solib.c (update_solib_list): Update.
8780
8781 2018-05-29  Tom Tromey  <tom@tromey.com>
8782
8783         * python/py-type.c (typy_richcompare): Update.
8784         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8785         * gdbtypes.h (types_deeply_equal): Return bool.
8786         (types_equal): Likewise.
8787         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8788         declare VEC.
8789         (check_types_equal): Change worklist to std::vector.  Return
8790         bool.
8791         (struct type_equality_entry): Add constructor.
8792         (compare_maybe_null_strings): Return bool.
8793         (check_types_worklist): Return bool.  Change worklist to
8794         std::vector.
8795         (types_deeply_equal): Use std::vector.
8796         (types_equal): Return bool.
8797         (compare_maybe_null_strings): Simplify.
8798
8799 2018-05-29  Tom Tromey  <tom@tromey.com>
8800
8801         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8802
8803 2018-05-29  Tom Tromey  <tom@tromey.com>
8804
8805         * objc-lang.h: Don't include cp-support.h.
8806         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8807         declare VEC.
8808
8809 2018-05-27  Tom Tromey  <tom@tromey.com>
8810
8811         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8812
8813 2018-05-25  Tom Tromey  <tom@tromey.com>
8814
8815         * value.c (value::location): Initialize.
8816
8817 2018-05-25  Tom Tromey  <tom@tromey.com>
8818
8819         * dbxread.c (init_bincl_list): Remove.
8820         (bincl_list): Now a std::vector.
8821         (bincls_allocated, next_bincl): Remove.
8822         (free_bincl_list, do_free_bincl_list_cleanup)
8823         (make_cleanup_free_bincl_list): Remove.
8824         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8825         unique_xmalloc_ptr.
8826         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8827         (struct header_file_location): Add constructor.
8828         (add_bincl_to_list): Remove.
8829
8830 2018-05-25  Tom Tromey  <tom@tromey.com>
8831
8832         * tui/tui.c (tui_enable): Update.
8833         * mi/mi-interp.c (mi_interp::init): Update.
8834         * interps.h (class interp) <name>: New method.
8835         <m_name>: Rename from name.
8836         (~scoped_restore_interp): Update.
8837         * interps.c (interp::interp): Update.
8838         (interp_add, interp_set, interp_lookup_existing)
8839         (current_interp_named_p): Update.
8840
8841 2018-05-25  Tom Tromey  <tom@tromey.com>
8842
8843         * interps.c (interp_name): Remove.
8844         * mi/mi-interp.c (mi_interp::init): Update.
8845         * interps.h (interp_name): Remove.
8846         (~scoped_restore_interp): Update.
8847         * tui/tui.c (tui_enable): Update.
8848
8849 2018-05-25  Tom Tromey  <tom@tromey.com>
8850
8851         * utils.c (fputs_maybe_filtered): Update.
8852         * linespec.c (decode_line_full): Update.
8853         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8854         (mi_print_breakpoint_for_event, mi_solib_loaded)
8855         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8856         (mi_user_selected_context_changed): Update.
8857         * mi/mi-main.c (mi_execute_command): Update.
8858         * cli/cli-script.c (execute_control_command): Update.
8859         * python/python.c (execute_gdb_command): Update.
8860         * solib.c (info_sharedlibrary_command): Update.
8861         * interps.c (interp_ui_out): Remove.
8862         * interps.h (interp_ui_out): Remove.
8863
8864 2018-05-25  Tom Tromey  <tom@tromey.com>
8865
8866         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8867         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8868         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8869
8870 2018-05-25  Tom Tromey  <tom@tromey.com>
8871
8872         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8873         * interps.c (interp_exec): Use scoped_restore.
8874
8875 2018-05-25  Tom Tromey  <tom@tromey.com>
8876
8877         * remote.c (remote_target::remote_file_get): Use
8878         gdb::byte_vector.
8879         (remote_target::remote_file_put): Likewise.
8880
8881 2018-05-25  Tom Tromey  <tom@tromey.com>
8882
8883         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8884         a std::string.
8885         (get_pe_section_index, add_pe_exported_sym): Update.
8886         (read_pe_exported_syms): Use gdb::def_vector.
8887
8888 2018-05-25  Tom Tromey  <tom@tromey.com>
8889
8890         * frame.c (remove_prev_frame): Remove.
8891         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8892
8893 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8894
8895         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8896         Remove prototypes.
8897         * mips-linux-nat.c (supply_fpregset): Always call
8898         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8899         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8900         `mips_fill_fpregset'.
8901         * mips-linux-tdep.c (mips_supply_fpregset)
8902         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8903         (mips_fill_fpregset_wrapper): Remove functions.
8904         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8905         (mips_linux_fpregset): Remove variable.
8906         (mips_linux_iterate_over_regset_sections): Use
8907         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8908         (mips_linux_o32_sigframe_init): Remove comment.
8909
8910 2018-05-25  Pedro Alves  <palves@redhat.com>
8911
8912         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8913         (struct readahead_cache, struct packet_reg, struct
8914         remote_arch_state, class remote_state): Move higher up in the
8915         file.
8916         (remote_target::m_remote_state): Now an object instead of a pointer.
8917         (remote_target::get_remote_state): Adjust.
8918
8919 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8920
8921         * stack.c (select_and_print_frame): Delete.
8922         (struct function_bounds): Move struct within function.
8923         (func_command): Most content moved into new function
8924         find_frame_for_function, use new function, print result, add
8925         function comment.
8926         (find_frame_for_function): New function, now returns a result.
8927
8928 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8929
8930         * stack.c (iterate_over_block_arg_vars): Fix comment.
8931         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8932
8933 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8934
8935         PR gdb/23203
8936         * frame.c
8937         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8938         Define.
8939         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8940         Define.
8941         * frame.h (class scoped_restore_selected_frame): New class.
8942         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8943         of any exception, use scoped_restore_selected_frame to restore the
8944         frame instead.
8945
8946 2018-05-24  Pedro Alves  <palves@redhat.com>
8947
8948         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8949         override.
8950
8951 2018-05-23  Tom Tromey  <tom@tromey.com>
8952
8953         * complaints.c (struct complaints): Remove.
8954         (symfile_complaint_book): Remove.
8955         (series): New global.
8956         (complaint_internal): Update.
8957         (clear_complaints): Update.
8958
8959 2018-05-23  Tom Tromey  <tom@tromey.com>
8960
8961         * complaints.c (counters): New global.
8962         (struct complain): Remove.
8963         (struct complaints) <root>: Remove.
8964         (complaint_sentinel): Remove.
8965         (symfile_complaint_book): Update.
8966         (find_complaint) Remove.
8967         (complaint_internal, clear_complaints): Update.
8968
8969 2018-05-23  Tom Tromey  <tom@tromey.com>
8970
8971         * complaints.c (struct complain) <file, line>: Remove.
8972         (find_complaint): Remove file, line parameters.
8973         (complaint_internal): Update.
8974
8975 2018-05-23  Tom Tromey  <tom@tromey.com>
8976
8977         * complaints.c (vcomplaint): Remove.
8978         (complaint_internal) Merge in contents of vcomplaint.
8979
8980 2018-05-23  Tom Tromey  <tom@tromey.com>
8981
8982         * complaints.c (struct complaints) <explanation>: Remove.
8983         (symfile_explanations): Remove.
8984         (symfile_complaint_book): Update.
8985         (vcomplaint): Update.
8986         (struct explanation): Remove.
8987
8988 2018-05-23  Tom Tromey  <tom@tromey.com>
8989
8990         * complaints.c (symfile_complaints): Remove.
8991         (complaint_internal): Remove "complaints" parameter.
8992         (clear_complaints, vcomplaint): Remove "c" parameter.
8993         (get_complaints): Remove.
8994         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8995         (dwarf2_debug_line_missing_file_complaint)
8996         (dwarf2_debug_line_missing_end_sequence_complaint)
8997         (dwarf2_complex_location_expr_complaint)
8998         (dwarf2_const_value_length_mismatch_complaint)
8999         (dwarf2_section_buffer_overflow_complaint)
9000         (dwarf2_macro_malformed_definition_complaint)
9001         (dwarf2_invalid_attrib_class_complaint)
9002         (create_addrmap_from_index, dw2_symtab_iter_next)
9003         (dw2_expand_marked_cus)
9004         (dw2_debug_names_iterator::find_vec_in_debug_names)
9005         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9006         (create_debug_type_hash_table, init_cutu_and_read_dies)
9007         (partial_die_parent_scope, add_partial_enumeration)
9008         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9009         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9010         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9011         (create_cus_hash_table, create_dwp_hash_table)
9012         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9013         (dwarf2_rnglists_process, dwarf2_ranges_process)
9014         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9015         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9016         (handle_struct_member_die, process_structure_scope)
9017         (read_array_type, read_common_block, read_module_type)
9018         (read_tag_pointer_type, read_typedef, read_base_type)
9019         (read_subrange_type, load_partial_dies, partial_die_info::read)
9020         (partial_die_info::read, partial_die_info::read)
9021         (partial_die_info::read, read_checked_initial_length_and_offset)
9022         (dwarf2_string_attr, read_formatted_entries)
9023         (dwarf_decode_line_header)
9024         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9025         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9026         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9027         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9028         (get_signatured_type, get_DW_AT_signature_type)
9029         (decode_locdesc, file_file_name, consume_improper_spaces)
9030         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9031         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9032         (dwarf2_symbol_mark_computed, set_die_type)
9033         (read_attribute_value): Update.
9034         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9035         Update.
9036         * dbxread.c (unknown_symtype_complaint)
9037         (lbrac_mismatch_complaint, repeated_header_complaint)
9038         (set_namestring, function_outside_compilation_unit_complaint)
9039         (read_dbx_symtab, process_one_symbol): Update.
9040         * gdbtypes.c (stub_noname_complaint): Update.
9041         * windows-nat.c (handle_unload_dll): Update.
9042         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9043         (decode_base_type): Update.
9044         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9045         (eb_complaint, record_include_begin, record_include_end)
9046         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9047         (process_xcoff_symbol, read_symbol)
9048         (function_outside_compilation_unit_complaint)
9049         (scan_xcoff_symtab): Update.
9050         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9051         * buildsym.c (finish_block_internal, make_blockvector)
9052         (end_symtab_get_static_block, augment_type_symtab): Update.
9053         * dtrace-probe.c (dtrace_process_dof)
9054         (dtrace_static_probe_ops::get_probes): Update.
9055         * complaints.h (struct complaint): Don't declare.
9056         (symfile_complaints): Remove.
9057         (complaint_internal): Remove "complaints" parameter.
9058         (complaint): Likewise.
9059         (clear_complaints): Likewise.
9060         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9061         (reread_symbols): Update.
9062         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9063         (dwarf2_frame_cache, decode_frame_entry): Update.
9064         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9065         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9066         (info_selectors_command): Update.
9067         * macrotab.c (macro_include, check_for_redefinition)
9068         (macro_undef): Update.
9069         * objfiles.c (filter_overlapping_sections): Update.
9070         * stabsread.c (invalid_cpp_abbrev_complaint)
9071         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9072         (define_symbol, error_type, read_type, rs6000_builtin_type)
9073         (stabs_method_name_from_physname, read_member_functions)
9074         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9075         (attach_fields_to_type, complain_about_struct_wipeout)
9076         (read_range_type, read_args, common_block_start)
9077         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9078         Update.
9079         * mdebugread.c (index_complaint, unknown_ext_complaint)
9080         (basic_type_complaint, bad_tag_guess_complaint)
9081         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9082         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9083         (parse_procedure, parse_lines)
9084         (function_outside_compilation_unit_complaint)
9085         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9086         (bad_tag_guess_complaint, reg_value_complaint): Update.
9087         * cp-support.c (demangled_name_complaint): Update.
9088         * macroscope.c (sal_macro_scope): Update.
9089         * dwarf-index-write.c (class debug_names): Update.
9090
9091 2018-05-23  Tom Tromey  <tom@tromey.com>
9092
9093         * complaints.c (clear_complaints): Remove "noisy" parameter.
9094         * complaints.h (clear_complaints): Update.
9095         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9096         (reread_symbols): Update.
9097
9098 2018-05-23  Tom Tromey  <tom@tromey.com>
9099
9100         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9101         SUBSEQUENT_MESSAGE.
9102         (vcomplaint, clear_complaints): Update.
9103         (symfile_explanations): Remove some messages.
9104
9105 2018-05-23  Tom Tromey  <tom@tromey.com>
9106
9107         * complaints.c (internal_complaint): Remove.
9108         * complaints.h (internal_complaint): Remove.
9109
9110 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9111
9112         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9113
9114 2018-05-22  Pedro Alves  <palves@redhat.com>
9115
9116         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9117         (remote_fileio_badfd, remote_fileio_return_errno)
9118         (remote_fileio_return_success, remote_fileio_func_open)
9119         (remote_fileio_func_open, remote_fileio_func_close)
9120         (remote_fileio_func_read, remote_fileio_func_write)
9121         (remote_fileio_func_lseek, remote_fileio_func_rename)
9122         (remote_fileio_func_unlink, remote_fileio_func_stat)
9123         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9124         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9125         remote_target parameter.
9126         (remote_fio_func_map) <func>: Add remote_target parameter.
9127         (do_remote_fileio_request, remote_fileio_request):
9128         * remote-fileio.h (remote_fileio_request):
9129         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9130         remote_target parameter.
9131         (remote_notif_process, handle_notification): Adjust to pass down
9132         the remote.
9133         (remote_notif_state_allocate): Add remote_target parameter.  Save
9134         it.
9135         * remote-notif.h (struct remote_target): Forward declare.
9136         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9137         remote_target parameter.
9138         (struct remote_notif_state) <remote>: New field.
9139         (remote_notif_ack, remote_notif_parse): Add remote_target
9140         parameter.
9141         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9142         remote_target parameter.
9143         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9144         (threads_listing_context, rmt_thread_action, protocol_feature)
9145         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9146         (packet_result, struct threads_listing_context, remote_state):
9147         Move definitions and declarations higher up.
9148         (remote_target) <~remote_target>: Declare.
9149         (remote_download_command_source, remote_file_put, remote_file_get)
9150         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9151         (remote_hostio_pread_vFile, remote_hostio_send_command)
9152         (remote_hostio_set_filesystem, remote_hostio_open)
9153         (remote_hostio_close, remote_hostio_unlink, remote_state)
9154         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9155         (get_memory_write_packet_size, get_memory_read_packet_size)
9156         (append_pending_thread_resumptions, remote_detach_1)
9157         (append_resumption, remote_resume_with_vcont)
9158         (add_current_inferior_and_thread, wait_ns, wait_as)
9159         (process_stop_reply, remote_notice_new_inferior)
9160         (process_initial_stop_replies, remote_add_thread)
9161         (btrace_sync_conf, remote_btrace_maybe_reopen)
9162         (remove_new_fork_children, kill_new_fork_children)
9163         (discard_pending_stop_replies, stop_reply_queue_length)
9164         (check_pending_events_prevent_wildcard_vcont)
9165         (discard_pending_stop_replies_in_queue, stop_reply)
9166         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9167         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9168         (remote_interrupt_as, remote_interrupt_ns)
9169         (remote_get_noisy_reply, remote_query_attached)
9170         (remote_add_inferior, remote_current_thread, get_current_thread)
9171         (set_thread, set_general_thread, set_continue_thread)
9172         (set_general_process, write_ptid)
9173         (remote_unpack_thread_info_response, remote_get_threadinfo)
9174         (parse_threadlist_response, remote_get_threadlist)
9175         (remote_threadlist_iterator, remote_get_threads_with_ql)
9176         (remote_get_threads_with_qxfer)
9177         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9178         (get_offsets, remote_check_symbols, remote_supported_packet)
9179         (remote_query_supported, remote_packet_size)
9180         (remote_serial_quit_handler, remote_detach_pid)
9181         (remote_vcont_probe, remote_resume_with_hc)
9182         (send_interrupt_sequence, interrupt_query)
9183         (remote_notif_get_pending_events, fetch_register_using_p)
9184         (send_g_packet, process_g_packet, fetch_registers_using_g)
9185         (store_register_using_P, store_registers_using_G)
9186         (set_remote_traceframe, check_binary_download)
9187         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9188         (remote_xfer_live_readonly_partial, remote_read_bytes)
9189         (remote_send_printf, remote_flash_write, readchar)
9190         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9191         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9192         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9193         (extended_remote_disable_randomization, extended_remote_run)
9194         (send_environment_packet, extended_remote_environment_support)
9195         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9196         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9197         (packet_command): Now methods of ...
9198         (remote_target): ... this class.
9199         (m_remote_state) <remote_target>: New field.
9200         (struct remote_state) <stop_reply_queue,
9201         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9202         fields.
9203         (remote_state::remote_state): Allocate stop_reply_queue.
9204         (remote_state): Delete global.
9205         (get_remote_state_raw): Delete.
9206         (remote_target::get_remote_state): Allocate m_remote_state on
9207         demand.
9208         (get_current_remote_target): New.
9209         (remote_ops, extended_remote_ops): Delete.
9210         (wait_forever_enabled_p, remote_async_inferior_event_token):
9211         Delete, moved to struct remote_state.
9212         (remote_target::close): Delete self.  Destruction bits split to
9213         ...
9214         (remote_target::~remote_target): ... this.
9215         (show_memory_packet_size): Adjust to use
9216         get_current_remote_target.
9217         (struct protocol_feature) <func>: Add remote_target parameter.
9218         All callers adjusted.
9219         (curr_quit_handler_target): New.
9220         (remote_serial_quit_handler): Reimplement.
9221         (remote_target::open_1): Adjust to use get_current_remote_target.
9222         Heap-allocate remote_target/extended_remote_target instances.
9223         (vcont_builder::vcont_builder): Add remote_target parameter, and
9224         save it in m_remote.  All callers adjusted.
9225         (vcont_builder::m_remote): New field.
9226         (vcont_builder::restart, vcont_builder::flush)
9227         (vcont_builder::push_action): Use it.
9228         (remote_target::commit_resume): Use it.
9229         (struct queue_iter_param) <remote>: New field.
9230         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9231         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9232         (check_pending_event_prevents_wildcard_vcont_callback)
9233         (remote_target::check_pending_events_prevent_wildcard_vcont)
9234         (remote_target::discard_pending_stop_replies)
9235         (remote_target::discard_pending_stop_replies_in_queue)
9236         (remote_target::remote_notif_remove_queued_reply): Fill in
9237         'remote' field.
9238         (remote_notif_get_pending_events): New.
9239         (remote_target::readchar, remote_target::remote_serial_write):
9240         Save/restore curr_quit_handler_target.
9241         (putpkt): New.
9242         (kill_new_fork_children): Fill in 'remote' field.
9243         (packet_command): Use get_current_remote_target, defer to
9244         remote_target method of same name.
9245         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9246         parameter, and save it in m_remote.  All callers adjusted.
9247         (scoped_remote_fd::release): Use m_remote.
9248         (scoped_remote_fd::m_remote): New field.
9249         (remote_file_put, remote_file_get, remote_file_delete): Use
9250         get_current_remote_target, defer to remote_target method of same
9251         name.
9252         (remote_btrace_reset): Add remote_state paremeter.  Update all
9253         callers.
9254         (remote_async_inferior_event_handler). Pass down 'data'.
9255         (remote_new_objfile): Use get_current_remote_target.
9256         (remote_target::vcont_r_supported): New.
9257         (set_range_stepping): Use get_current_remote_target and
9258         remote_target::vcont_r_supported.
9259         (_initialize_remote): Don't allocate 'remote_state' and
9260         'stop_reply_queue' globals.
9261         * remote.h (struct remote_target): Forward declare.
9262         (getpkt, putpkt, remote_notif_get_pending_events): Add
9263         'remote_target' parameter.
9264
9265 2018-05-22  Pedro Alves  <palves@redhat.com>
9266
9267         * remote.c (vcont_builder): Now a class.  Make all data members
9268         private.
9269         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9270         Declare methods.
9271         (vcont_builder_restart): Rename to ...
9272         (vcont_builder::restart): ... this.
9273         (vcont_builder_flush): Rename to ...
9274         (vcont_builder::flush): ... this.
9275         (vcont_builder_push_action): Rename to ...
9276         (vcont_builder::push_action): ... this.
9277         (remote_target::commit_resume): Adjust.
9278
9279 2018-05-22  Pedro Alves  <palves@redhat.com>
9280
9281         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9282         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9283         (get_fixed_memory_packet_size): New.
9284         (get_memory_packet_size): Use it.
9285         (set_memory_packet_size): Don't override the config size with
9286         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9287         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9288         Don't refer to get_memory_packet_size if not connected to a remote
9289         target.  Show "(default)" if configured size is 0.
9290
9291 2018-05-22  Pedro Alves  <palves@redhat.com>
9292
9293         * remote.c (remote_target::mourn_inferior): Move
9294         discard_pending_stop_replies call here from ...
9295         (_initialize_remote): ... here.
9296
9297 2018-05-22  Pedro Alves  <palves@redhat.com>
9298
9299         * remote.c (compare_section_command): Remove set_general_process
9300         call.
9301
9302 2018-05-22  Pedro Alves  <palves@redhat.com>
9303
9304         * remote.c (struct packet_reg, struct remote_arch_state):
9305         Move higher up in the file.
9306         (remote_state) <m_arch_states>: Store remote_arch_state values
9307         instead of remote_arch_state pointers.
9308         (remote_state::get_remote_arch_state): Adjust.
9309
9310 2018-05-22  Pedro Alves  <palves@redhat.com>
9311
9312         * remote.c: Include <unordered_map>.
9313         (remote_state): Now a class.
9314         (remote_state) <get_remote_arch_state>: Declare method.
9315         <get_remote_arch_state>: New field.
9316         (remote_arch_state) <remote_arch_state>: Declare ctor.
9317         <regs>: Now a unique_ptr.
9318         (remote_gdbarch_data_handle): Delete.
9319         (get_remote_arch_state): Delete.
9320         (remote_state::get_remote_arch_state): New.
9321         (get_remote_state): Adjust to call remote_state's
9322         get_remote_arch_state method.
9323         (init_remote_state): Delete, bits factored out to ...
9324         (remote_arch_state::remote_arch_state): ... this new method.
9325         (get_remote_packet_size, get_memory_packet_size)
9326         (process_g_packet, remote_target::fetch_registers)
9327         (remote_target::prepare_to_store, store_registers_using_G)
9328         (remote_target::store_registers, remote_target::get_trace_status):
9329         Adjust to call remote_state's method.
9330         (_initialize_remote): Remove reference to
9331         remote_gdbarch_data_handle.
9332
9333 2018-05-22  Pedro Alves  <palves@redhat.com>
9334
9335         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9336         pread>: New method declarations.
9337         (remote_target::open_1): Adjust.
9338         (readahead_cache_invalidate): Rename to ...
9339         (readahead_cache::invalidate): ... this, and adjust to be a class
9340         method.
9341         (readahead_cache_invalidate_fd): Rename to ...
9342         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9343         class method.
9344         (remote_hostio_pwrite): Adjust.
9345         (remote_hostio_pread_from_cache): Rename to ...
9346         (readahead_cache::pread): ... this, and adjust to be a class
9347         method.
9348         (remote_hostio_close): Adjust.
9349
9350 2018-05-22  Pedro Alves  <palves@redhat.com>
9351
9352         * remote.c (remote_hostio_close_cleanup): Delete.
9353         (class scoped_remote_fd): New.
9354         (remote_file_put, remote_file_get): Use it.
9355
9356 2018-05-22  Pedro Alves  <palves@redhat.com>
9357
9358         (struct vCont_action_support): Use bool and initialize all fields.
9359         (struct readahead_cache): Initialize all fields.
9360         (remote_state): Use bool and initialize all fields.
9361         (remote_state::remote_state, remote_state::~remote_state): New.
9362         (new_remote_state): Delete.
9363         (_initialize_remote): Use new to allocate remote_state.
9364
9365 2018-05-22  Pedro Alves  <palves@redhat.com>
9366             張俊芝  <zjz@zjz.name>
9367
9368         PR gdb/22973
9369         * c-exp.y: Include "c-support.h".
9370         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9371         of tolower.  Use c_ident_is_alpha to scan names.
9372         * c-lang.c: Include "c-support.h".
9373         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9374         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9375         * c-support.h: New file, with bits factored out from ...
9376         * cp-name-parser.y: ... this file.
9377         Include "c-support.h".
9378         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9379         c-support.h and renamed.
9380         (symbol_end, yylex): Adjust.
9381
9382 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9383
9384         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9385         parameter type to CORE_ADDR.
9386         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9387         parameter type in declaration to CORE_ADDR.
9388         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9389         target_auxv_search to get AT_HWCAP and use the result to get the
9390         target description.
9391         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9392         to CORE_ADDR. Remove the cast of the return value to unsigned
9393         long. Fix error predicate of target_auxv_search.
9394         (ppc_linux_nat_target::read_description): Change the type of the
9395         hwcap variable to CORE_ADDR.
9396
9397 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9398
9399         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9400         if the size of fpscr is larger than 32 bits.
9401
9402 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9403
9404         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9405         (ppc32_linux_vsxregmap): New global.
9406         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9407         regcache_supply_regset, and regcache_collect_regset.
9408         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9409         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9410         (fetch_vsx_register, store_vsx_register): Remove.
9411         (fetch_vsx_registers): Add regno parameter. Get regset using
9412         ppc_linux_vsxregset. Use regset to supply registers.
9413         (store_vsx_registers): Add regno parameter. Get regset using
9414         ppc_linux_vsxregset. Use regset to collect registers.
9415         (fetch_register): Call fetch_vsx_registers instead of
9416         fetch_vsx_register.
9417         (store_register): Call store_vsx_registers instead of
9418         store_vsx_register.
9419         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9420         new regno parameter.
9421         (store_ppc_registers): Call store_vsx_registers with -1 for the
9422         new regno parameter.
9423         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9424         (ppc_collect_vsxregset): Remove.
9425
9426 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9427
9428         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9429         offset fields.
9430         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9431         for vector register offset fields.
9432         (ppc64_fbsd_reg_offsets): Likewise.
9433         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9434         to vector register offset fields.
9435         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9436         to vector register offset fields.
9437         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9438         vector register offset fields.
9439         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9440         initializers for vector register offset fields.
9441         (rs6000_aix64_reg_offsets): Likewise.
9442         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9443         (ppc_supply_vrregset): Remove.
9444         (ppc_collect_vrregset): Remove.
9445         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9446         (ppc_linux_vrregset) : New function.
9447         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9448         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9449         (ppc32_linux_vrregset): Remove.
9450         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9451         and use result instead of ppc32_linux_vrregset.
9452         (ppc32_linux_reg_offsets): Remove initializers for vector register
9453         offset fields.
9454         (ppc64_linux_reg_offsets): Likewise.
9455         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9456         * ppc-linux-nat.c: Include regset.h.
9457         (gdb_vrregset_t): Adjust comment to account for little-endian
9458         mode.
9459         (supply_vrregset, fill_vrregset): Remove.
9460         (fetch_altivec_register, store_altivec_register): Remove.
9461         (fetch_altivec_registers): Add regno parameter. Get regset using
9462         ppc_linux_vrregset. Use regset to supply registers.
9463         (store_altivec_registers): Add regno parameter. Get regset using
9464         ppc_linux_vrregset. Use regset to collect registers.
9465         (fetch_register): Call fetch_altivec_registers instead of
9466         fetch_altivec_register.
9467         (store_register): Call store_altivec_registers instead of
9468         store_altivec_register.
9469         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9470         the new regno parameter.
9471         (store_ppc_registers): Call store_altivec_registers with -1 for
9472         the new regno parameter.
9473
9474 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9475
9476         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9477         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9478         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9479         (gdb_vrregset_t): Change array type size to
9480         PPC_LINUX_SIZEOF_VRREGSET.
9481         (gdb_vsxregset_t): Change array type size to
9482         PPC_LINUX_SIZEOF_VSXREGSET.
9483         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9484         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9485         PPC_LINUX_SIZEOF_VSXREGSET.
9486
9487 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9488
9489         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9490         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9491         nat/ppc-linux.c.
9492         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9493         ppc_linux_target_wordsize with tid.
9494         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9495         wordsize with tid.
9496         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9497         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9498         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9499         tid parameter. Remove static specifier.
9500         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9501         (ppc_linux_target_wordsize): New declaration.
9502
9503 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9504
9505         * arch/ppc-linux-common.c: New file.
9506         * arch/ppc-linux-common.h: New file.
9507         * arch/ppc-linux-tdesc.h: New file.
9508         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9509         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9510         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9511         arch/ppc-linux-tdesc.h.
9512         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9513         arch/ppc-linux-tdesc.h.
9514         (ppc_linux_nat_target::read_description): Remove target
9515         description matching code. Fill a ppc_linux_features struct and
9516         call ppc_linux_match_description with it. Move comment about ISA
9517         2.05 to ppc-linux-common.c.
9518         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9519         arch/ppc-linux-tdesc.h.
9520         (ppc_linux_core_read_description): Remove target description
9521         matching code. Fill a ppc_linux_features struct and call
9522         ppc_linux_match_description with it.
9523         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9524         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9525         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9526         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9527         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9528         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9529         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9530         (tdesc_powerpc_e500l): Remove.
9531
9532 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9533
9534         * ada-lang.c (catch_assert_command): Pass empty string instead
9535         of NULL for excep_string argument.
9536
9537 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9538
9539         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9540         the width of the requested register exceeds the width of the
9541         `ptrace' data type.
9542
9543 2018-05-21  Tom Tromey  <tom@tromey.com>
9544
9545         * printcmd.c (output_command): Remove.
9546         (output_command_const): Rename to output_command.
9547         * valprint.h (output_command): Rename from output_command_const.
9548         * tracepoint.c (trace_dump_actions): Call output_command.
9549
9550 2018-05-21  Tom Tromey  <tom@tromey.com>
9551
9552         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9553         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9554         * ada-lang.h (create_ada_exception_catchpoint): Update.
9555         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9556         std::string.
9557         (create_excep_cond_exprs, ~ada_catchpoint)
9558         (should_stop_exception, print_one_exception)
9559         (print_mention_exception, print_recreate_exception): Update.
9560         (ada_get_next_arg): Remove.
9561         (catch_ada_exception_command_split): Use std::string.  Change type
9562         of "excep_string", "cond_string".
9563         (catch_ada_exception_command): Update.
9564         (create_ada_exception_catchpoint): Change type of excep_string.
9565         (ada_exception_sal): Remove excep_string parameter.
9566         (~ada_catchpoint): Remove.
9567
9568 2018-05-21  Tom Tromey  <tom@tromey.com>
9569
9570         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9571         cleanup.
9572
9573 2018-05-21  Tom Tromey  <tom@tromey.com>
9574
9575         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9576         Return unique_xmalloc_ptr.
9577         (print_it_exception): Update.
9578
9579 2018-05-21  Tom Tromey  <tom@tromey.com>
9580
9581         * tracepoint.c (trace_dump_actions): Use std::string.
9582
9583 2018-05-21  Tom Tromey  <tom@tromey.com>
9584
9585         * symfile.c (reread_symbols): Use std::string for original_name.
9586
9587 2018-05-21  Tom Tromey  <tom@tromey.com>
9588
9589         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9590         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9591         constructor.
9592
9593 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9594
9595         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9596         instance to...
9597         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9598         * objfiles.c (get_objfile_bfd_data): Allocate
9599         objfile_per_bfd_storage with obstack_new when allocating on
9600         obstack.
9601
9602 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9603
9604         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9605         OBSTACK_ZALLOC.
9606         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9607         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9608         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9609         (add_pending): Likewise.
9610         (parse_symbol): Likewise.
9611         (parse_partial_symbols): Likewise.
9612         (psymtab_to_symtab_1): Likewise.
9613         (new_psymtab): Likewise.
9614         (elfmdebug_build_psymtabs): Likewise.
9615         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9616         * objfiles.c (get_objfile_bfd_data): Likewise.
9617         (objfile_register_static_link): Likewise.
9618         * psymtab.c (allocate_psymtab): Likewise.
9619         * stabsread.c (read_member_functions): Likewise.
9620         * xcoffread.c (xcoff_end_psymtab): Likewise.
9621
9622 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9623
9624         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9625         compiler supports std::is_trivially_constructible.
9626         * common/poison.h: Include obstack.h.
9627         (IsMallocable): Define to is_trivially_constructible if the
9628         compiler supports it, define to true_type otherwise.
9629         (xobnew): New.
9630         (XOBNEW): Redefine.
9631         (xobnewvec): New.
9632         (XOBNEWVEC): Redefine.
9633         * gdb_obstack.h (obstack_zalloc): New.
9634         (OBSTACK_ZALLOC): Redefine.
9635         (obstack_calloc): New.
9636         (OBSTACK_CALLOC): Redefine.
9637         (obstack_new): New.
9638         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9639         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9640         gdbarch.c.
9641         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9642         obstack_calloc/obstack_zalloc.
9643         (gdbarch_obstack_zalloc): Remove.
9644         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9645
9646 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9647
9648         * stack.c (backtrace_command_1): Remove useless variable int i.
9649
9650 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9651
9652         * stack.c (print_frame_info): Fix comment.
9653
9654 2018-05-18  Tom Tromey  <tom@tromey.com>
9655
9656         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9657         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9658         (~dwarf2_per_objfile): Update
9659         (dwarf2_get_dwz_file): Use new.
9660         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9661         unique_ptr.
9662
9663 2018-05-18  Tom Tromey  <tom@tromey.com>
9664
9665         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9666         unique_ptr.
9667         * dwarf2read.c (struct dwp_file): Add constructor and
9668         initializers.
9669         (open_and_init_dwp_file): Return a unique_ptr.
9670         (dwarf2_per_objfile, create_dwp_hash_table)
9671         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9672         (lookup_dwo_unit_in_dwp): Update.
9673         (open_and_init_dwp_file, get_dwp_file): Update.
9674
9675 2018-05-18  Tom Tromey  <tom@tromey.com>
9676
9677         * dwarf2read.c (dwarf2_per_objfile): Update.
9678         (struct mapped_index): Add initializers.
9679         (dwarf2_read_index): Use new.
9680         (dw2_symtab_iter_init): Update.
9681         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9682         unique_ptr.
9683
9684 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9685
9686         * dwarf2read.c (mapped_index) <total_size>: Remove.
9687
9688 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9689
9690         * unittests/format_pieces-selftests.c (test_format_specifier):
9691         Add ARI comments.
9692
9693 2018-05-18  Tom Tromey  <tom@tromey.com>
9694
9695         * c-typeprint.c (maybe_print_hole): New function.
9696         (c_print_type_struct_field_offset): Update.
9697         (c_type_print_base_struct_union): Call maybe_print_hole.
9698
9699 2018-05-17  Keith Seitz  <keiths@redhat.com>
9700
9701         * breakpoint.c (build_bpstat_chain): New function, moved from
9702         bpstat_stop_status.
9703         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9704         If no stop chain is passed, call build_bpstat_chain to build it.
9705         * breakpoint.h (build_bpstat_chain): Declare.
9706         (bpstat_stop_status): Move documentation here from breakpoint.c.
9707         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9708         build the stop chain and pass it to skip_inline_frames.
9709         Pass this stop chain to bpstat_stop_status.
9710         * inline-frame.c: Include breakpoint.h.
9711         (stopped_by_user_bp_inline_frame): New function.
9712         (skip_inline_frames): Add parameter `stop_chain'.
9713         Move documention to inline-frame.h.
9714         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9715         whether the frame should be elided.
9716         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9717         Add moved documentation and update for new parameter.
9718
9719 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9720
9721         PR cli/14975
9722         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9723         unittests/format_pieces-selftests.c.
9724         * common/format.h (format_piece) <operator==>: New.
9725         (format_pieces) <operator[]>: Remove.
9726         * common/format.c (format_pieces::format_pieces): Handle \e.
9727         * unittests/format_pieces-selftests.c: New.
9728
9729 2018-05-17  Tom Tromey  <tom@tromey.com>
9730
9731         PR symtab/23010:
9732         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9733         (dw2_instantiate_symtab): Add skip_partial parameter.
9734         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9735         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9736         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9737         (dw2_expand_symtabs_matching_one)
9738         (dw2_find_pc_sect_compunit_symtab)
9739         (dw2_debug_names_lookup_symbol)
9740         (dw2_debug_names_expand_symtabs_for_function): Update.
9741         (init_cutu_and_read_dies): Add skip_partial parameter.
9742         (process_psymtab_comp_unit, build_type_psymtabs_1)
9743         (process_skeletonless_type_unit, load_partial_comp_unit)
9744         (psymtab_to_symtab_1): Update.
9745         (load_full_comp_unit): Add skip_partial parameter.
9746         (process_imported_unit_die, dwarf2_read_addr_index)
9747         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9748         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9749         (read_signatured_type): Update.
9750
9751 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9752
9753         * value.c (release_value): Remove unused variable.
9754         (record_latest_value): Likewise.
9755         (access_value_history): Likewise.
9756         (preserve_values): Likewise.
9757
9758 2018-05-17  Tom Tromey  <tom@tromey.com>
9759
9760         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9761         Initialize.
9762
9763 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9764
9765         PR gdb/22286
9766         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9767         Also handle registers whose width is not a multiple of
9768         PTRACE_TYPE_RET.
9769         (linux_nat_trad_target::store_register): Likewise.
9770
9771 2018-05-16  Tom Tromey  <tom@tromey.com>
9772
9773         * gdbcore.h (core_bfd): Redefine.
9774         * corelow.c (core_target::close): Update.
9775         (core_target_open): Update.
9776         * progspace.h (struct program_space) <cbfd>: Now a
9777         gdb_bfd_ref_ptr.
9778
9779 2018-05-16  Tom Tromey  <tom@tromey.com>
9780
9781         PR cli/19551:
9782         * symfile-add-flags.h (enum symfile_add_flags)
9783         <SYMFILE_NOT_FILENAME>: New constant.
9784         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9785         objfile name from BFD.
9786         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9787         * minidebug.c (find_separate_debug_file_in_section): Put
9788         ".gnu_debugdata" into BFD's file name.
9789
9790 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9791
9792         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9793         Remove.
9794
9795 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9796
9797         PR binutils/21446
9798         * aarch64-tdep.c (aarch64_analyze_prologue,
9799         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9800         Indicate not interested in errors.
9801
9802 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9803
9804         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9805         Supply the MIPS_ZERO_REGNUM register.
9806
9807 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9808
9809         * mips-tdep.c (mask_address_var): Make variable static.
9810
9811 2018-05-14  Tom Tromey  <tom@tromey.com>
9812
9813         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9814
9815 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9816
9817         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9818         FXSAVE_ADDR for the mxcsr register.
9819
9820 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9821
9822         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9823
9824 2018-05-11  Pedro Alves  <palves@redhat.com>
9825
9826         * corelow.c (core_target) <core_target>: No longer inline.
9827         Initialize m_core_gdbarch, m_core_vec and build the section table
9828         here.
9829         <~core_target>: New.
9830         <core_gdbarch, get_core_register_section>: New methods.
9831         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9832         factored out from ...
9833         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9834         (core_ops): Delete.
9835         (sniff_core_bfd): Add gdbarch parameter.
9836         (core_close): Delete, merged into ...
9837         (core_target::close): ... here.  Delete self.
9838         (core_close_cleanup): Delete.
9839         (core_target_open): Allocate a core_target on the heap.  Use a
9840         unique_ptr instead of a cleanup.  Bits moved into the core_target
9841         ctor.  Adjust to use core_target methods instead of globals.
9842         (get_core_register_section): Rename to ...
9843         (core_target::get_core_register_section): ... this and adjust.
9844         (struct get_core_registers_cb_data): New.
9845         (get_core_registers_cb): Use it.  Use bool.
9846         (core_target::fetch_registers, core_target::files_info)
9847         (core_target::xfer_partial, core_target::read_description)
9848         (core_target::pid_to, core_target::thread_name): Adjust to
9849         reference class fields instead of globals.
9850         * target.h (struct target_ops_deleter, target_ops_up): New.
9851
9852 2018-05-11  Pedro Alves  <palves@redhat.com>
9853
9854         * corefile.c (core_file_command): Move to corelow.c.
9855         * corelow.c (the_core_target): Delete.
9856         (core_file_command): Moved from corefile.c.  Check exec_bfd
9857         instead of the_core_target.  Use target_detach instead of calling
9858         into the_core_target directly.
9859         (maybe_say_no_core_file_now): New.
9860         (core_target::detach): Use it.
9861         (_initialize_corelow): Remove references to the_core_target.
9862         * gdbcore.h (the_core_target): Delete.
9863
9864 2018-05-11  Tom Tromey  <tromey@redhat.com>
9865             Pedro Alves  <palves@redhat.com>
9866
9867         * corefile.c (core_bfd): Remove.
9868         * gdbcore.h (core_bfd): Now a macro.
9869         * progspace.h (struct program_space) <cbfd>: New field.
9870
9871 2018-05-11  Tom Tromey  <tom@tromey.com>
9872
9873         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9874         gdb::def_vector.
9875
9876 2018-05-10  Tom Tromey  <tom@tromey.com>
9877
9878         * configure: Rebuild.
9879         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9880
9881 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9882
9883         PR server/23158:
9884         * regformats/regdat.sh: Adjust script, following the addition
9885         of the new expedite_regs parameter to init_target_desc.
9886
9887 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9888     
9889         PR gdb/23127
9890         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9891         set_gdbarch_significant_addr_bit.
9892         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9893         set_gdbarch_significant_addr_bit.
9894         * utils.c (address_significant): Update to sign extend addr.
9895
9896 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9897
9898         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9899         (xtensa_linux_init_abi): Limit tdep->num_regs by
9900         tdep->num_nopriv_regs.
9901         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9902         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9903         not initialized.
9904
9905 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9906
9907         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9908
9909 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9910
9911         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9912         (I387_MXCSR_INIT_VAL): New constant.
9913         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9914         buffer if it was supplied by the inferior.
9915         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9916         (i387_xsave_get_clear_bv): New function.
9917         (i387_supply_xsave): Only read x87 control registers from the
9918         xsave buffer if the feature is enabled, and the state will have
9919         been written, otherwise, provide a suitable default.
9920         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9921         including x87 control registers.  Update control registers if they
9922         have changed from the default value, and mark features as enabled
9923         as required.
9924         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9925
9926 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9927
9928         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9929
9930 2018-05-07  Tom Tromey  <tom@tromey.com>
9931
9932         * configure: Rebuild.
9933         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9934
9935 2018-05-07  Tom Tromey  <tom@tromey.com>
9936
9937         PR tdep/20362:
9938         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9939         bit.  Use correct value for VDIV.
9940
9941 2018-05-04  Tom Tromey  <tom@tromey.com>
9942
9943         * configure: Rebuild.
9944         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9945
9946 2018-05-04  Tom Tromey  <tom@tromey.com>
9947
9948         * linux-record.c (record_linux_system_call) <case
9949         RECORD_SYS_RECVFROM>: Add "break".
9950
9951 2018-05-04  Tom Tromey  <tom@tromey.com>
9952
9953         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9954         Add missing "break".
9955         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9956         Add missing "break".
9957
9958 2018-05-04  Tom Tromey  <tom@tromey.com>
9959
9960         * rs6000-tdep.c (ppc_process_record_op4)
9961         (ppc_process_record_op63): Add fall-through comment.
9962
9963 2018-05-04  Tom Tromey  <tom@tromey.com>
9964
9965         * i386-tdep.c (i386_process_record): Add fall-through comment.
9966
9967 2018-05-04  Tom Tromey  <tom@tromey.com>
9968
9969         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9970         comment.
9971
9972 2018-05-04  Tom Tromey  <tom@tromey.com>
9973
9974         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9975         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9976         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9977         comment.
9978         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9979         comment.
9980         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9981         comment.
9982
9983 2018-05-04  Tom Tromey  <tom@tromey.com>
9984
9985         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9986
9987 2018-05-04  Tom Tromey  <tom@tromey.com>
9988
9989         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9990         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9991         * symfile.c (section_is_mapped): Fix fall-through comment.
9992         * stabsread.c (define_symbol, read_member_functions): Fix
9993         fall-through comment.
9994         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9995         comment.
9996         * remote.c (remote_wait_as): Fix fall-through comment.
9997         * p-exp.y (yylex): Fix fall-through comment.
9998         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9999         comment.
10000         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10001         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10002         * jv-exp.y (yylex): Fix fall-through comment.
10003         * go-exp.y (lex_one_token): Fix fall-through comment.
10004         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10005         fall-through comment.
10006         * f-exp.y (yylex): Fix fall-through comment.
10007         * dwarf2read.c (process_die): Fix fall-through comments.
10008         * dbxread.c (process_one_symbol): Fix fall-through comment.
10009         * d-exp.y (lex_one_token): Fix fall-through comment.
10010         * cp-name-parser.y (yylex): Fix fall-through comment.
10011         * coffread.c (coff_symtab_read): Fix fall-through comment.
10012         * c-exp.y (lex_one_token): Fix fall-through comment.
10013         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10014         comment.
10015         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10016         comment.
10017
10018 2018-05-04  Tom Tromey  <tom@tromey.com>
10019
10020         PR python/22730:
10021         * NEWS: Mention gdb.execute change.
10022         * gdbcmd.h (execute_control_command): Don't declare.
10023         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10024         execute_control_commands, execute_control_commands_to_string.
10025         * cli/cli-script.h (execute_control_commands)
10026         (execute_control_commands_to_string): Declare.
10027         (execute_control_command): Add from_tty parameter.
10028         * cli/cli-script.c (execute_control_commands)
10029         (execute_control_commands_to_string): New functions.
10030         (execute_user_command): Use execute_control_commands.
10031         (execute_control_command_1): Add "from_tty" parameter.  Update.
10032         (execute_control_command): Likewise.
10033
10034 2018-05-04  Tom Tromey  <tom@tromey.com>
10035
10036         PR python/22731:
10037         * NEWS: Mention that breakpoint commands are writable.
10038         * python/py-breakpoint.c (bppy_set_commands): New function.
10039         (breakpoint_object_getset) <"commands">: Use it.
10040
10041 2018-05-04  Tom Tromey  <tom@tromey.com>
10042
10043         * tracepoint.c (actions_command): Update.
10044         * mi/mi-cmd-break.c (mi_command_line_array)
10045         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10046         (mi_read_next_line): Remove.
10047         (mi_cmd_break_commands): Update.
10048         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10049         function_view.
10050         * cli/cli-script.c (get_command_line): Update.
10051         (process_next_line): Use function_view.  Constify.
10052         (recurse_read_control_structure, read_command_lines)
10053         (read_command_lines_1): Change argument types to function_view.
10054         (do_define_command, document_command): Update.
10055         * breakpoint.h (check_tracepoint_command): Don't declare.
10056         * breakpoint.c (check_tracepoint_command): Remove.
10057         (commands_command_1, create_tracepoint_from_upload): Update.
10058
10059 2018-05-04  Tom Tromey  <tom@tromey.com>
10060
10061         PR gdb/11750:
10062         * cli/cli-script.h (enum command_control_type) <define_control>:
10063         New constant.
10064         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10065         (build_command_line, execute_control_command_1)
10066         (process_next_line): Likewise.
10067         (do_define_command): New function, extracted from define_command.
10068         (define_command): Use it.
10069
10070 2018-05-04  Tom Tromey  <tom@tromey.com>
10071
10072         * tracepoint.c (actions_command): Update.
10073         * cli/cli-script.h (read_command_lines): Update.
10074         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10075         (MAX_TMPBUF): Remove define.
10076         (define_command): Use string_printf.
10077         (document_command): Likewise.
10078         * breakpoint.c (commands_command_1): Update.
10079
10080 2018-05-04  Tom Tromey  <tom@tromey.com>
10081
10082         * top.c (execute_command): Update.
10083         * cli/cli-script.h (print_command_lines): Now varargs.
10084         * cli/cli-script.c (print_command_lines): Now varargs.
10085         (execute_control_command_1) <case while_control, case if_control>:
10086         Update.
10087
10088 2018-05-04  Tom Tromey  <tom@tromey.com>
10089
10090         * tracepoint.c (all_tracepoint_actions): Rename from
10091         all_tracepoint_actions_and_cleanup.  Change return type.
10092         (actions_command, encode_actions_1, encode_actions)
10093         (trace_dump_actions, tdump_command): Update.
10094         * remote.c (remote_download_command_source): Update.
10095         * python/python.c (gdbpy_eval_from_control_command)
10096         (python_command, python_interactive_command): Update.
10097         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10098         * guile/guile.c (guile_command)
10099         (gdbscm_eval_from_control_command, guile_command): Update.
10100         * compile/compile.c (compile_code_command)
10101         (compile_print_command, compile_to_object): Update.
10102         * cli/cli-script.h (struct command_lines_deleter): New.
10103         (counted_command_line): New typedef.
10104         (struct command_line): Add constructor, destructor.
10105         <body_list>: Remove.
10106         <body_list_0, body_list_1>: New members.
10107         (command_line_up): Remove typedef.
10108         (read_command_lines, read_command_lines_1, get_command_line):
10109         Update.
10110         (copy_command_lines): Don't declare.
10111         * cli/cli-script.c (build_command_line): Use "new".
10112         (get_command_line): Return counted_command_line.
10113         (print_command_lines, execute_user_command)
10114         (execute_control_command_1, while_command, if_command): Update.
10115         (realloc_body_list): Remove.
10116         (process_next_line, recurse_read_control_structure): Update.
10117         (read_command_lines, read_command_lines_1): Return counted_command_line.
10118         (free_command_lines): Use "delete".
10119         (copy_command_lines): Remove.
10120         (define_command, document_command, show_user_1): Update.
10121         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10122         a counted_command_line.
10123         * breakpoint.h (counted_command_line): Remove typedef.
10124         (breakpoint_set_commands): Update.
10125         * breakpoint.c (check_no_tracepoint_commands)
10126         (validate_commands_for_breakpoint): Update.
10127         (breakpoint_set_commands): Change commands to be a
10128         counted_command_line.
10129         (commands_command_1, update_dprintf_command_list)
10130         (create_tracepoint_from_upload): Update.
10131
10132 2018-05-04  Tom Tromey  <tom@tromey.com>
10133
10134         * cli/cli-decode.h (cmd_list_element): New constructor.
10135         (~cmd_list_element): New destructor.
10136         (struct cmd_list_element): Add initializers.
10137         * cli/cli-decode.c (do_add_cmd): Use "new".
10138         (delete_cmd): Use "delete".
10139
10140 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10141             Pedro Alves <palves@redhat.com>
10142
10143         PR breakpoints/19806 and support for PR external/20207.
10144         * NEWS: Mention Aarch64 watchpoint improvements.
10145         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10146         watchpoints and PR external/20207 watchpoints.
10147         * nat/aarch64-linux-hw-point.c
10148         (kernel_supports_any_contiguous_range): New.
10149         (aarch64_watchpoint_offset): New.
10150         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10151         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10152         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10153         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10154         next_addr_orig_p.  Support PR external/20207 watchpoints.
10155         (aarch64_downgrade_regs): New.
10156         (aarch64_dr_state_insert_one_point): New parameters offset and
10157         addr_orig.
10158         (aarch64_dr_state_remove_one_point): Likewise.
10159         (aarch64_handle_breakpoint): Update caller.
10160         (aarch64_handle_aligned_watchpoint): Likewise.
10161         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10162         aligned_offset.
10163         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10164         aarch64_downgrade_regs.
10165         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10166         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10167         (DR_CONTROL_MASK): ... this.
10168         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10169         (unsigned int aarch64_watchpoint_offset): New prototype.
10170         (aarch64_linux_set_debug_regs): Remove const from state.
10171         * utils.c (align_up, align_down): Move to ...
10172         * common/common-utils.c (align_up, align_down): ... here.
10173         * utils.h (align_up, align_down): Move to ...
10174         * common/common-utils.h (align_up, align_down): ... here.
10175
10176 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10177
10178         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10179         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10180         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10181         Re-implement to match the ABI as summarized in GCC's
10182         gcc/config/sparc/sparc.c.  All callers updated.
10183         (sparc32_store_arguments): Remove assertion.
10184
10185 2018-05-04  Tom Tromey  <tom@tromey.com>
10186
10187         * printcmd.c: Don't include tui.h.
10188         (decode_format): Use skip_spaces.
10189
10190 2018-05-04  Tom Tromey  <tom@tromey.com>
10191
10192         PR gdb/22619:
10193         * printcmd.c (last_count): New global.
10194         (x_command): Use saved count when repeating.
10195
10196 2018-05-04  Tom Tromey  <tom@tromey.com>
10197
10198         * nto-procfs.c (do_closedir_cleanup): Remove.
10199         (procfs_pidlist): Use gdb_dir_up.
10200         * procfs.c (do_closedir_cleanup): Remove.
10201         (proc_update_threads): Use gdb_dir_up.
10202         * common/filestuff.h (struct gdb_dir_deleter): New.
10203         (gdb_dir_up): New typedef.
10204
10205 2018-05-04  Tom Tromey  <tom@tromey.com>
10206
10207         * ada-lang.c (print_mention_exception): Use std::string.
10208
10209 2018-05-04  Tom Tromey  <tom@tromey.com>
10210
10211         * ada-lang.c (create_excep_cond_exprs): Update.
10212         (ada_exception_catchpoint_cond_string): Use std::string.
10213
10214 2018-05-04  Tom Tromey  <tom@tromey.com>
10215
10216         * ada-lang.c (xget_renaming_scope): Return std::string.
10217         (old_renaming_is_invisible): Update.
10218
10219 2018-05-04  Tom Tromey  <tom@tromey.com>
10220
10221         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10222         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10223
10224 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10225
10226         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10227
10228 2018-05-04  Tom Tromey  <tom@tromey.com>
10229
10230         * remote.c (remote_query_supported_append): Change type.
10231         (remote_check_symbols): Update.
10232
10233 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10234
10235         PR gdb/11420
10236         * configure.ac: Prepend libpython.
10237         * python/python-config.py: Likewise.
10238         * configure: Regenerate.
10239
10240 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10241
10242         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10243
10244 2018-05-03  Pedro Alves  <palves@redhat.com>
10245
10246         * s390-linux-nat.c
10247         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10248         override.  Write 'true' instead of '1'.
10249         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10250         declaration.
10251
10252 2018-05-02  Pedro Alves  <palves@redhat.com>
10253
10254         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10255         add_inf_child_target.
10256         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10257         add_inf_child_target.
10258         * aix-thread.c (aix_thread_target_info): New.
10259         (aix_thread_target) <shortname, longname, doc>: Delete.
10260         <info>: New.
10261         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10262         add_inf_child_target.
10263         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10264         add_inf_child_target.
10265         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10266         add_inf_child_target.
10267         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10268         add_inf_child_target.
10269         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10270         add_inf_child_target.
10271         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10272         add_inf_child_target.
10273         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10274         add_inf_child_target.
10275         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10276         add_inf_child_target.
10277         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10278         add_inf_child_target.
10279         * bfd-target.c (target_bfd_target_info): New.
10280         (target_bfd) <shortname, longname, doc>: Delete.
10281         <info>: New.
10282         * bsd-kvm.c (bsd_kvm_target_info): New.
10283         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10284         <info>: New.
10285         (bsd_kvm_target::open): Rename to ...
10286         (bsd_kvm_target_open): ... this.  Adjust.
10287         * bsd-uthread.c (bsd_uthread_target_info): New.
10288         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10289         <info>: New.
10290         * corefile.c (core_file_command): Adjust.
10291         * corelow.c (core_target_info): New.
10292         (core_target) <shortname, longname, doc>: Delete.
10293         <info>: New.
10294         (core_target::open): Rename to ...
10295         (core_target_open): ... this.  Adjust.
10296         * ctf.c (ctf_target_info): New.
10297         (ctf_target) <shortname, longname, doc>: Delete.
10298         <info>: New.
10299         (ctf_target::open): Rename to ...
10300         (ctf_target_open): ... this.
10301         (_initialize_ctf): Adjust.
10302         * exec.c (exec_target_info): New.
10303         (exec_target) <shortname, longname, doc>: Delete.
10304         <info>: New.
10305         (exec_target::open): Rename to ...
10306         (exec_target_open): ... this.
10307         * gdbcore.h (core_target_open): Declare.
10308         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10309         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10310         add_inf_child_target.
10311         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10312         add_inf_child_target.
10313         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10314         add_inf_child_target.
10315         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10316         add_inf_child_target.
10317         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10318         add_inf_child_target.
10319         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10320         add_inf_child_target.
10321         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10322         add_inf_child_target.
10323         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10324         add_inf_child_target.
10325         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10326         add_inf_child_target.
10327         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10328         add_inf_child_target.
10329         * inf-child.c (inf_child_target_info): New.
10330         (inf_child_target::info): New.
10331         (inf_child_open_target): Remove 'target' parameter.  Use
10332         get_native_target instead.
10333         (inf_child_target::open): Delete.
10334         (add_inf_child_target): New.
10335         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10336         Delete.
10337         <info>: New.
10338         (add_inf_child_target): Declare.
10339         (inf_child_open_target): Declare.
10340         * linux-thread-db.c (thread_db_target_info): New.
10341         (thread_db_target) <shortname, longname, doc>: Delete.
10342         <info>: New.
10343         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10344         add_inf_child_target.
10345         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10346         add_inf_child_target.
10347         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10348         add_inf_child_target.
10349         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10350         add_inf_child_target.
10351         * make-target-delegates (print_class): Adjust.
10352         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10353         add_inf_child_target.
10354         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10355         add_inf_child_target.
10356         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10357         add_inf_child_target.
10358         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10359         add_inf_child_target.
10360         * nto-procfs.c (nto_native_target_info): New.
10361         (nto_procfs_target_native) <shortname, longname, doc>:
10362         Delete.
10363         <info>: New.
10364         (nto_procfs_target_info): New.
10365         (nto_procfs_target_procfs) <shortname, longname, doc>:
10366         Delete.
10367         <info>: New.
10368         (init_procfs_targets): Adjust.
10369         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10370         add_inf_child_target.
10371         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10372         add_inf_child_target.
10373         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10374         add_inf_child_target.
10375         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10376         add_inf_child_target.
10377         * ravenscar-thread.c (ravenscar_target_info): New.
10378         (ravenscar_thread_target) <shortname, longname, doc>:
10379         Delete.
10380         <info>: New.
10381         * record-btrace.c (record_btrace_target_info):
10382         (record_btrace_target) <shortname, longname, doc>: Delete.
10383         <info>: New.
10384         (record_btrace_target::open): Rename to ...
10385         (record_btrace_target_open): ... this.  Adjust.
10386         * record-full.c (record_longname, record_doc): New.
10387         (record_full_base_target) <shortname, longname, doc>: Delete.
10388         <info>: New.
10389         (record_full_target_info): New.
10390         (record_full_target): <shortname>: Delete.
10391         <info>: New.
10392         (record_full_core_open_1, record_full_open_1): Update comments.
10393         (record_full_base_target::open): Rename to ...
10394         (record_full_open): ... this.
10395         (cmd_record_full_restore): Update.
10396         (_initialize_record_full): Update.
10397         * remote-sim.c (remote_sim_target_info): New.
10398         (gdbsim_target) <shortname, longname, doc>: Delete.
10399         <info>: New.
10400         (gdbsim_target::open): Rename to ...
10401         (gdbsim_target_open): ... this.
10402         (_initialize_remote_sim): Adjust.
10403         * remote.c (remote_doc): New.
10404         (remote_target_info): New.
10405         (remote_target) <shortname, longname, doc>: Delete.
10406         <info>: New.
10407         (extended_remote_target_info): New.
10408         (extended_remote_target) <shortname, longname, doc>: Delete.
10409         <info>: New.
10410         (remote_target::open_1): Make static.  Adjust.
10411         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10412         * s390-linux-nat.c (_initialize_s390_nat): Use
10413         add_inf_child_target.
10414         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10415         add_inf_child_target.
10416         * sol-thread.c (thread_db_target_info): New.
10417         (sol_thread_target) <shortname, longname, doc>: Delete.
10418         <info>: New.
10419         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10420         add_inf_child_target.
10421         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10422         add_inf_child_target.
10423         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10424         add_inf_child_target.
10425         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10426         add_inf_child_target.
10427         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10428         add_inf_child_target.
10429         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10430         add_inf_child_target.
10431         * spu-linux-nat.c (_initialize_spu_nat): Use
10432         add_inf_child_target.
10433         * spu-multiarch.c (spu_multiarch_target_info): New.
10434         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10435         <info>: New.
10436         * target-delegates.c: Regenerate.
10437         * target.c: Include <unordered_map>.
10438         (target_ops_p): Delete.
10439         (DEF_VEC_P(target_ops_p)): Delete.
10440         (target_factories): New.
10441         (test_target_info): New.
10442         (test_target_ops::info): New.
10443         (open_target): Adjust to use target_factories.
10444         (add_target_with_completer): Rename to ...
10445         (add_target): ... this.  Change prototype.  Register target_info
10446         and open callback in target_factories.  Register target_info in
10447         command context instead of target_ops.
10448         (add_target): Delete old implementation.
10449         (add_deprecated_target_alias): Change prototype.  Adjust.
10450         (the_native_target): New.
10451         (set_native_target, get_native_target): New.
10452         (find_default_run_target): Use the_native_target.
10453         (find_attach_target, find_run_target): Simplify.
10454         (target_ops::open): Delete.
10455         (dummy_target_info): New.
10456         (dummy_target::shortname, dummy_target::longname)
10457         (dummy_target::doc): Delete.
10458         (dummy_target::info): New.
10459         (debug_target::shortname, debug_target::longname)
10460         (debug_target::doc): Delete.
10461         (debug_target::info): New.
10462         * target.h (struct target_info): New.
10463         (target_ops::~target_ops): Add comment.
10464         (target_ops::info): New.
10465         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10466         longer virtual.  Implement in terms of target_info.
10467         (set_native_target, get_native_target): Declare.
10468         (target_open_ftype): New.
10469         (add_target, add_target_with_completer)
10470         (add_deprecated_target_alias): Change prototype.
10471         (test_target) <shortname, longname, doc>: Delete.
10472         <info>: New.
10473         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10474         add_inf_child_target.
10475         * tracefile-tfile.c (tfile_target_info): New.
10476         (tfile_target) <shortname, longname, doc>: Delete.
10477         <info>: New.
10478         (tfile_target::open): Rename to ...
10479         (tfile_target_open): ... this.
10480         (_initialize_tracefile_tfile): Adjust.
10481         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10482         add_inf_child_target.
10483         * windows-nat.c (_initialize_windows_nat): Use
10484         add_inf_child_target.
10485         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10486         add_inf_child_target.
10487
10488 2018-05-02  Pedro Alves  <palves@redhat.com>
10489
10490         * linux-nat.h (linux_nat_target) <low_new_thread,
10491         low_delete_thread, low_new_fork, low_forget_process,
10492         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10493         New virtual methods.
10494         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10495         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10496         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10497         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10498         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10499         Delete.
10500         * linux-fork.c (delete_fork): Adjust to call low method.
10501         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10502         (linux_nat_new_fork, linux_nat_forget_process_hook)
10503         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10504         (linux_nat_status_is_event):
10505         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10506         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10507         to call low method.
10508         (sigtrap_is_event): Rename to ...
10509         (linux_nat_target::low_status_is_event): ... this.
10510         (linux_nat_set_status_is_event): Delete.
10511         (save_stop_reason, linux_nat_wait_1)
10512         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10513         low methods.
10514         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10515         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10516         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10517         (linux_nat_set_prepare_to_resume): Delete.
10518         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10519         low virtual methods.
10520         * amd64-linux-nat.c: Likewise.
10521         * arm-linux-nat.c: Likewise.
10522         * i386-linux-nat.c: Likewise.
10523         * ia64-linux-nat.c: Likewise.
10524         * mips-linux-nat.c: Likewise.
10525         * ppc-linux-nat.c: Likewise.
10526         * s390-linux-nat.c: Likewise.
10527         * sparc64-linux-nat.c: Likewise.
10528         * x86-linux-nat.c: Likewise.
10529         * x86-linux-nat.h: Include "nat/x86-linux.h".
10530         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10531         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10532         Override methods.
10533
10534 2018-05-02  Pedro Alves  <palves@redhat.com>
10535
10536         * target.h (target_ops)
10537         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10538         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10539         stopped_by_watchpoint, have_continuable_watchpoint,
10540         stopped_data_address, watchpoint_addr_within_range,
10541         can_accel_watchpoint_condition, can_run, thread_alive,
10542         has_all_memory, has_memory, has_stack, has_registers,
10543         has_execution, can_async_p, is_async_p, supports_non_stop,
10544         always_non_stop_p, can_execute_reverse, supports_multi_process,
10545         supports_enable_disable_tracepoint,
10546         supports_disable_randomization, supports_string_tracing,
10547         supports_evaluation_of_breakpoint_conditions,
10548         can_run_breakpoint_commands, filesystem_is_local,
10549         can_download_tracepoint, get_trace_state_variable_value,
10550         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10551         record_is_replaying, record_will_replay,
10552         augmented_libraries_svr4_read>: Adjust to return bool.
10553         * aarch64-linux-nat.c: All implementations adjusted.
10554         * aix-thread.c: All implementations adjusted.
10555         * arm-linux-nat.c: All implementations adjusted.
10556         * breakpoint.c: All implementations adjusted.
10557         * bsd-kvm.c: All implementations adjusted.
10558         * bsd-uthread.c: All implementations adjusted.
10559         * corelow.c: All implementations adjusted.
10560         * ctf.c: All implementations adjusted.
10561         * darwin-nat.c: All implementations adjusted.
10562         * darwin-nat.h: All implementations adjusted.
10563         * exec.c: All implementations adjusted.
10564         * fbsd-nat.c: All implementations adjusted.
10565         * fbsd-nat.h: All implementations adjusted.
10566         * gnu-nat.c: All implementations adjusted.
10567         * gnu-nat.h: All implementations adjusted.
10568         * go32-nat.c: All implementations adjusted.
10569         * ia64-linux-nat.c: All implementations adjusted.
10570         * inf-child.c: All implementations adjusted.
10571         * inf-child.h: All implementations adjusted.
10572         * inf-ptrace.c: All implementations adjusted.
10573         * inf-ptrace.h: All implementations adjusted.
10574         * linux-nat.c: All implementations adjusted.
10575         * linux-nat.h: All implementations adjusted.
10576         * mips-linux-nat.c: All implementations adjusted.
10577         * nto-procfs.c: All implementations adjusted.
10578         * ppc-linux-nat.c: All implementations adjusted.
10579         * procfs.c: All implementations adjusted.
10580         * ravenscar-thread.c: All implementations adjusted.
10581         * record-btrace.c: All implementations adjusted.
10582         * record-full.c: All implementations adjusted.
10583         * remote-sim.c: All implementations adjusted.
10584         * remote.c: All implementations adjusted.
10585         * s390-linux-nat.c: All implementations adjusted.
10586         * sol-thread.c: All implementations adjusted.
10587         * spu-multiarch.c: All implementations adjusted.
10588         * target-delegates.c: All implementations adjusted.
10589         * target.c: All implementations adjusted.
10590         * target.h: All implementations adjusted.
10591         * tracefile-tfile.c: All implementations adjusted.
10592         * tracefile.c: All implementations adjusted.
10593         * tracefile.h: All implementations adjusted.
10594         * windows-nat.c: All implementations adjusted.
10595         * x86-linux-nat.h: All implementations adjusted.
10596         * x86-nat.h: All implementations adjusted.
10597
10598 2018-05-02  Pedro Alves  <palves@redhat.com>
10599
10600         * make-target-delegates (scan_target_h): Don't trim lines here.
10601         Replace sequences of tabs and/or whitespace with a single
10602         whitespace.
10603         (top level, parsing methods): Trim each line before processing it
10604         here.
10605
10606 2018-05-02  Pedro Alves  <palves@redhat.com>
10607             John Baldwin  <jhb@freebsd.org>
10608
10609         * target.h (enum strata) <debug_stratum>: New.
10610         (struct target_ops) <all delegation methods>: Replace by C++
10611         virtual methods, and drop "to_" prefix.  All references updated
10612         throughout.
10613         <to_shortname, to_longname, to_doc, to_data,
10614         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10615         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10616         virtual methods.  All references updated throughout.
10617         <can_attach, supports_terminal_ours, can_create_inferior,
10618         get_thread_control_capabilities, attach_no_wait>: New
10619         virtual methods.
10620         <insert_breakpoint, remove_breakpoint>: Now
10621         TARGET_DEFAULT_NORETURN methods.
10622         <info_proc>: Now returns bool.
10623         <to_magic>: Delete.
10624         (OPS_MAGIC): Delete.
10625         (current_target): Delete.  All references replaced by references
10626         to ...
10627         (target_stack): ... this.  New.
10628         (target_shortname, target_longname): Adjust.
10629         (target_can_run): Now a function declaration.
10630         (default_child_has_all_memory, default_child_has_memory)
10631         (default_child_has_stack, default_child_has_registers)
10632         (default_child_has_execution): Remove target_ops parameter.
10633         (complete_target_initialization): Delete.
10634         (memory_breakpoint_target): New template class.
10635         (test_target_ops): Refactor as a C++ class with virtual methods.
10636         * make-target-delegates (NAME_PART): Tighten.
10637         (POINTER_PART, CP_SYMBOL): New.
10638         (SIMPLE_RETURN_PART): Reimplement.
10639         (VEC_RETURN_PART): Expect less.
10640         (RETURN_PART, VIRTUAL_PART): New.
10641         (METHOD): Adjust to C++ virtual methods.
10642         (scan_target_h): Remove reference to C99.
10643         (dname): Output "target_ops::" prefix.
10644         (write_function_header): Adjust to output a C++ class method.
10645         (write_declaration): New.
10646         (write_delegator): Adjust to output a C++ class method.
10647         (tdname): Output "dummy_target::" prefix.
10648         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10649         method.
10650         (tdefault_names, debug_names): Delete.
10651         (return_types, tdefaults, styles, argtypes_array): New.
10652         (top level): All methods are delegators.
10653         (print_class): New.
10654         (top level): Print dummy_target and debug_target classes.
10655         * target-delegates.c: Regenerate.
10656         * target-debug.h (target_debug_print_enum_info_proc_what)
10657         (target_debug_print_thread_control_capabilities)
10658         (target_debug_print_thread_info_p): New.
10659         * target.c (dummy_target): Delete.
10660         (the_dummy_target, the_debug_target): New.
10661         (target_stack): Now extern.
10662         (set_targetdebug): Push/unpush debug target.
10663         (default_child_has_all_memory, default_child_has_memory)
10664         (default_child_has_stack, default_child_has_registers)
10665         (default_child_has_execution): Remove target_ops parameter.
10666         (complete_target_initialization): Delete.
10667         (add_target_with_completer): No longer call
10668         complete_target_initialization.
10669         (target_supports_terminal_ours): Use regular delegation.
10670         (update_current_target): Delete.
10671         (push_target): No longer check magic number.  Don't call
10672         update_current_target.
10673         (unpush_target): Don't call update_current_target.
10674         (target_is_pushed): No longer check magic number.
10675         (target_require_runnable): Skip for all stratums over
10676         process_stratum.
10677         (target_ops::info_proc): New.
10678         (target_info_proc): Use find_target_at and
10679         find_default_run_target.
10680         (target_supports_disable_randomization): Use regular delegation.
10681         (target_get_osdata): Use find_target_at.
10682         (target_ops::open, target_ops::close, target_ops::can_attach)
10683         (target_ops::attach, target_ops::can_create_inferior)
10684         (target_ops::create_inferior, target_ops::can_run)
10685         (target_can_run): New.
10686         (default_fileio_target): Use regular delegation.
10687         (target_ops::fileio_open, target_ops::fileio_pwrite)
10688         (target_ops::fileio_pread, target_ops::fileio_fstat)
10689         (target_ops::fileio_close, target_ops::fileio_unlink)
10690         (target_ops::fileio_readlink): New.
10691         (target_fileio_open_1, target_fileio_unlink)
10692         (target_fileio_readlink): Always call the target method.  Handle
10693         FILEIO_ENOSYS.
10694         (return_zero, return_zero_has_execution): Delete.
10695         (init_dummy_target): Delete.
10696         (dummy_target::dummy_target, dummy_target::shortname)
10697         (dummy_target::longname, dummy_target::doc)
10698         (debug_target::debug_target, debug_target::shortname)
10699         (debug_target::longname, debug_target::doc): New.
10700         (target_supports_delete_record): Use regular delegation.
10701         (setup_target_debug): Delete.
10702         (maintenance_print_target_stack): Skip debug_stratum.
10703         (initialize_targets): Instantiate the_dummy_target and
10704         the_debug_target.
10705         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10706         use target_stack.
10707         (target_auxv_search, fprint_target_auxv): Adjust.
10708         (info_auxv_command): Adjust to use target_stack.
10709         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10710         * exceptions.c (print_flush): Handle a NULL target_stack.
10711         * regcache.c (target_ops_no_register): Refactor as class with
10712         virtual methods.
10713
10714         * exec.c (exec_target): New class.
10715         (exec_ops): Now an exec_target.
10716         (exec_open, exec_close_1, exec_get_section_table)
10717         (exec_xfer_partial, exec_files_info, exec_has_memory)
10718         (exec_make_note_section): Refactor as exec_target methods.
10719         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10720         Delete.
10721         (exec_target::find_memory_regions): New.
10722         (_initialize_exec): Don't call init_exec_ops.
10723         * gdbcore.h (exec_file_clear): Delete.
10724
10725         * corefile.c (core_target): Delete.
10726         (core_file_command): Adjust.
10727         * corelow.c (core_target): New class.
10728         (the_core_target): New.
10729         (core_close): Remove target_ops parameter.
10730         (core_close_cleanup): Adjust.
10731         (core_target::close): New.
10732         (core_open, core_detach, get_core_registers, core_files_info)
10733         (core_xfer_partial, core_thread_alive, core_read_description)
10734         (core_pid_to_str, core_thread_name, core_has_memory)
10735         (core_has_stack, core_has_registers, core_info_proc): Rework as
10736         core_target methods.
10737         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10738         (_initialize_corelow): Initialize the_core_target.
10739         * gdbcore.h (core_target): Delete.
10740         (the_core_target): New.
10741
10742         * ctf.c: (ctf_target): New class.
10743         (ctf_ops): Now a ctf_target.
10744         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10745         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10746         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10747         methods.
10748         (init_ctf_ops): Delete.
10749         (_initialize_ctf): Don't call it.
10750         * tracefile-tfile.c (tfile_target): New class.
10751         (tfile_ops): Now a tfile_target.
10752         (tfile_open, tfile_close, tfile_files_info)
10753         (tfile_get_tracepoint_status, tfile_trace_find)
10754         (tfile_fetch_registers, tfile_xfer_partial)
10755         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10756         Refactor as tfile_target methods.
10757         (tfile_xfer_partial_features): Remove target_ops parameter.
10758         (init_tfile_ops): Delete.
10759         (_initialize_tracefile_tfile): Don't call it.
10760         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10761         (tracefile_has_stack, tracefile_has_registers)
10762         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10763         tracefile_target methods.
10764         (init_tracefile_ops): Delete.
10765         (tracefile_target::tracefile_target): New.
10766         * tracefile.h: Include "target.h".
10767         (tracefile_target): New class.
10768         (init_tracefile_ops): Delete.
10769
10770         * spu-multiarch.c (spu_multiarch_target): New class.
10771         (spu_ops): Now a spu_multiarch_target.
10772         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10773         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10774         (spu_search_memory, spu_mourn_inferior): Refactor as
10775         spu_multiarch_target methods.
10776         (init_spu_ops): Delete.
10777         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10778         complete_target_initialization.
10779
10780         * ravenscar-thread.c (ravenscar_thread_target): New class.
10781         (ravenscar_ops): Now a ravenscar_thread_target.
10782         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10783         (ravenscar_thread_alive, ravenscar_pid_to_str)
10784         (ravenscar_fetch_registers, ravenscar_store_registers)
10785         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10786         (ravenscar_stopped_by_hw_breakpoint)
10787         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10788         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10789         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10790         methods.
10791         (init_ravenscar_thread_ops): Delete.
10792         (_initialize_ravenscar): Remove references to
10793         init_ravenscar_thread_ops and complete_target_initialization.
10794
10795         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10796         (bsd_uthread_target): New class.
10797         (bsd_uthread_ops): Now a bsd_uthread_target.
10798         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10799         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10800         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10801         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10802         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10803         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10804         (bsd_uthread_target): Delete function.
10805         (_initialize_bsd_uthread): Remove reference to
10806         complete_target_initialization.
10807
10808         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10809         (target_bfd): ... this new class.
10810         (target_bfd_xfer_partial, target_bfd_get_section_table)
10811         (target_bfd_close): Refactor as target_bfd methods.
10812         (target_bfd::~target_bfd): New.
10813         (target_bfd_reopen): Adjust.
10814         (target_bfd::close): New.
10815
10816         * record-btrace.c (record_btrace_target): New class.
10817         (record_btrace_ops): Now a record_btrace_target.
10818         (record_btrace_open, record_btrace_stop_recording)
10819         (record_btrace_disconnect, record_btrace_close)
10820         (record_btrace_async, record_btrace_info)
10821         (record_btrace_insn_history, record_btrace_insn_history_range)
10822         (record_btrace_insn_history_from, record_btrace_call_history)
10823         (record_btrace_call_history_range)
10824         (record_btrace_call_history_from, record_btrace_record_method)
10825         (record_btrace_is_replaying, record_btrace_will_replay)
10826         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10827         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10828         (record_btrace_store_registers, record_btrace_prepare_to_store)
10829         (record_btrace_to_get_unwinder)
10830         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10831         (record_btrace_commit_resume, record_btrace_wait)
10832         (record_btrace_stop, record_btrace_can_execute_reverse)
10833         (record_btrace_stopped_by_sw_breakpoint)
10834         (record_btrace_supports_stopped_by_sw_breakpoint)
10835         (record_btrace_stopped_by_hw_breakpoint)
10836         (record_btrace_supports_stopped_by_hw_breakpoint)
10837         (record_btrace_update_thread_list, record_btrace_thread_alive)
10838         (record_btrace_goto_begin, record_btrace_goto_end)
10839         (record_btrace_goto, record_btrace_stop_replaying_all)
10840         (record_btrace_execution_direction)
10841         (record_btrace_prepare_to_generate_core)
10842         (record_btrace_done_generating_core): Refactor as
10843         record_btrace_target methods.
10844         (init_record_btrace_ops): Delete.
10845         (_initialize_record_btrace): Remove reference to
10846         init_record_btrace_ops.
10847         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10848         the execution_direction global.
10849         (record_full_base_target, record_full_target)
10850         (record_full_core_target): New classes.
10851         (record_full_ops): Now a record_full_target.
10852         (record_full_core_ops): Now a record_full_core_target.
10853         (record_full_target::detach, record_full_target::disconnect)
10854         (record_full_core_target::disconnect)
10855         (record_full_target::mourn_inferior, record_full_target::kill):
10856         New.
10857         (record_full_open, record_full_close, record_full_async): Refactor
10858         as methods of the record_full_base_target class.
10859         (record_full_resume, record_full_commit_resume): Refactor
10860         as methods of the record_full_target class.
10861         (record_full_wait, record_full_stopped_by_watchpoint)
10862         (record_full_stopped_data_address)
10863         (record_full_stopped_by_sw_breakpoint)
10864         (record_full_supports_stopped_by_sw_breakpoint)
10865         (record_full_stopped_by_hw_breakpoint)
10866         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10867         methods of the record_full_base_target class.
10868         (record_full_store_registers, record_full_xfer_partial)
10869         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10870         Refactor as methods of the record_full_target class.
10871         (record_full_can_execute_reverse, record_full_get_bookmark)
10872         (record_full_goto_bookmark, record_full_execution_direction)
10873         (record_full_record_method, record_full_info, record_full_delete)
10874         (record_full_is_replaying, record_full_will_replay)
10875         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10876         (record_full_stop_replaying): Refactor as methods of the
10877         record_full_base_target class.
10878         (record_full_core_resume, record_full_core_kill)
10879         (record_full_core_fetch_registers)
10880         (record_full_core_prepare_to_store)
10881         (record_full_core_store_registers, record_full_core_xfer_partial)
10882         (record_full_core_insert_breakpoint)
10883         (record_full_core_remove_breakpoint)
10884         (record_full_core_has_execution): Refactor
10885         as methods of the record_full_core_target class.
10886         (record_full_base_target::supports_delete_record): New.
10887         (init_record_full_ops): Delete.
10888         (init_record_full_core_ops): Delete.
10889         (record_full_save): Refactor as method of the
10890         record_full_base_target class.
10891         (_initialize_record_full): Remove references to
10892         init_record_full_ops and init_record_full_core_ops.
10893
10894         * remote.c (remote_target, extended_remote_target): New classes.
10895         (remote_ops): Now a remote_target.
10896         (extended_remote_ops): Now an extended_remote_target.
10897         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10898         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10899         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10900         (remote_pass_signals, remote_set_syscall_catchpoint)
10901         (remote_program_signals, )
10902         (remote_thread_always_alive): Remove target_ops parameter.
10903         (remote_thread_alive, remote_thread_name)
10904         (remote_update_thread_list, remote_threads_extra_info)
10905         (remote_static_tracepoint_marker_at)
10906         (remote_static_tracepoint_markers_by_strid)
10907         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10908         (remote_open): Refactor as methods of remote_target.
10909         (extended_remote_open, extended_remote_detach)
10910         (extended_remote_attach, extended_remote_post_attach):
10911         (extended_remote_supports_disable_randomization)
10912         (extended_remote_create_inferior): : Refactor as method of
10913         extended_remote_target.
10914         (remote_set_permissions, remote_open_1, remote_detach)
10915         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10916         (remote_resume, remote_commit_resume, remote_stop)
10917         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10918         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10919         (remote_prepare_to_store, remote_store_registers)
10920         (remote_flash_erase, remote_flash_done, remote_files_info)
10921         (remote_kill, remote_mourn, remote_insert_breakpoint)
10922         (remote_remove_breakpoint, remote_insert_watchpoint)
10923         (remote_watchpoint_addr_within_range)
10924         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10925         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10926         (remote_supports_stopped_by_sw_breakpoint)
10927         (remote_stopped_by_hw_breakpoint)
10928         (remote_supports_stopped_by_hw_breakpoint)
10929         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10930         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10931         (remote_verify_memory): Refactor as methods of remote_target.
10932         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10933         parameter.
10934         (remote_xfer_partial, remote_get_memory_xfer_limit)
10935         (remote_search_memory, remote_rcmd, remote_memory_map)
10936         (remote_pid_to_str, remote_get_thread_local_address)
10937         (remote_get_tib_address, remote_read_description): Refactor as
10938         methods of remote_target.
10939         (remote_target::fileio_open, remote_target::fileio_pwrite)
10940         (remote_target::fileio_pread, remote_target::fileio_close): New.
10941         (remote_hostio_readlink, remote_hostio_fstat)
10942         (remote_filesystem_is_local, remote_can_execute_reverse)
10943         (remote_supports_non_stop, remote_supports_disable_randomization)
10944         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10945         (remote_supports_enable_disable_tracepoint)
10946         (remote_supports_string_tracing)
10947         (remote_can_run_breakpoint_commands, remote_trace_init)
10948         (remote_download_tracepoint, remote_can_download_tracepoint)
10949         (remote_download_trace_state_variable, remote_enable_tracepoint)
10950         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10951         (remote_trace_start, remote_get_trace_status)
10952         (remote_get_tracepoint_status, remote_trace_stop)
10953         (remote_trace_find, remote_get_trace_state_variable_value)
10954         (remote_save_trace_data, remote_get_raw_trace_data)
10955         (remote_set_disconnected_tracing, remote_core_of_thread)
10956         (remote_set_circular_trace_buffer, remote_traceframe_info)
10957         (remote_get_min_fast_tracepoint_insn_len)
10958         (remote_set_trace_buffer_size, remote_set_trace_notes)
10959         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10960         (remote_disable_btrace, remote_teardown_btrace)
10961         (remote_read_btrace, remote_btrace_conf)
10962         (remote_augmented_libraries_svr4_read, remote_load)
10963         (remote_pid_to_exec_file, remote_can_do_single_step)
10964         (remote_execution_direction, remote_thread_handle_to_thread_info):
10965         Refactor as methods of remote_target.
10966         (init_remote_ops, init_extended_remote_ops): Delete.
10967         (remote_can_async_p, remote_is_async_p, remote_async)
10968         (remote_thread_events, remote_upload_tracepoints)
10969         (remote_upload_trace_state_variables): Refactor as methods of
10970         remote_target.
10971         (_initialize_remote): Remove references to init_remote_ops and
10972         init_extended_remote_ops.
10973
10974         * remote-sim.c (gdbsim_target): New class.
10975         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10976         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10977         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10978         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10979         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10980         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10981         Refactor as methods of gdbsim_target.
10982         (gdbsim_ops): Now a gdbsim_target.
10983         (init_gdbsim_ops): Delete.
10984         (gdbsim_cntrl_c): Adjust.
10985         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10986
10987         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10988         (the_amd64_linux_nat_target): New.
10989         (amd64_linux_fetch_inferior_registers)
10990         (amd64_linux_store_inferior_registers): Refactor as methods of
10991         amd64_linux_nat_target.
10992         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10993         * i386-linux-nat.c: Don't include "linux-nat.h".
10994         (i386_linux_nat_target): New class.
10995         (the_i386_linux_nat_target): New.
10996         (i386_linux_fetch_inferior_registers)
10997         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10998         as methods of i386_linux_nat_target.
10999         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11000         * inf-child.c (inf_child_ops): Delete.
11001         (inf_child_fetch_inferior_registers)
11002         (inf_child_store_inferior_registers): Delete.
11003         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11004         methods of inf_child_target.
11005         (inf_child_target::supports_terminal_ours)
11006         (inf_child_target::terminal_init)
11007         (inf_child_target::terminal_inferior)
11008         (inf_child_target::terminal_ours_for_output)
11009         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11010         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11011         New.
11012         (inf_child_open, inf_child_disconnect, inf_child_close)
11013         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11014         (inf_child_post_startup_inferior, inf_child_can_run)
11015         (inf_child_pid_to_exec_file): Refactor as methods of
11016         inf_child_target.
11017         (inf_child_follow_fork): Delete.
11018         (inf_child_target::can_create_inferior)
11019         (inf_child_target::can_attach): New.
11020         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11021         (inf_child_target::has_stack, inf_child_target::has_registers)
11022         (inf_child_target::has_execution): New.
11023         (inf_child_fileio_open, inf_child_fileio_pwrite)
11024         (inf_child_fileio_pread, inf_child_fileio_fstat)
11025         (inf_child_fileio_close, inf_child_fileio_unlink)
11026         (inf_child_fileio_readlink, inf_child_use_agent)
11027         (inf_child_can_use_agent): Refactor as methods of
11028         inf_child_target.
11029         (return_zero, inf_child_target): Delete.
11030         (inf_child_target::inf_child_target): New.
11031         * inf-child.h: Include "target.h".
11032         (inf_child_target): Delete function prototype.
11033         (inf_child_target): New class.
11034         (inf_child_open_target, inf_child_mourn_inferior)
11035         (inf_child_maybe_unpush_target): Delete.
11036         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11037         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11038         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11039         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11040         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11041         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11042         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11043         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11044         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11045         methods of inf_ptrace_target.
11046         (inf_ptrace_target): Delete function.
11047         * inf-ptrace.h: Include "inf-child.h".
11048         (inf_ptrace_target): Delete function declaration.
11049         (inf_ptrace_target): New class.
11050         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11051         * linux-nat.c (linux_target): New.
11052         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11053         (linux_nat_target::~linux_nat_target): New.
11054         (linux_child_post_attach, linux_child_post_startup_inferior)
11055         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11056         (linux_child_remove_fork_catchpoint)
11057         (linux_child_insert_vfork_catchpoint)
11058         (linux_child_remove_vfork_catchpoint)
11059         (linux_child_insert_exec_catchpoint)
11060         (linux_child_remove_exec_catchpoint)
11061         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11062         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11063         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11064         (linux_nat_stopped_data_address)
11065         (linux_nat_stopped_by_sw_breakpoint)
11066         (linux_nat_supports_stopped_by_sw_breakpoint)
11067         (linux_nat_stopped_by_hw_breakpoint)
11068         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11069         (linux_nat_kill, linux_nat_mourn_inferior)
11070         (linux_nat_xfer_partial, linux_nat_thread_alive)
11071         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11072         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11073         (linux_child_static_tracepoint_markers_by_strid)
11074         (linux_nat_is_async_p, linux_nat_can_async_p)
11075         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11076         (linux_nat_supports_multi_process)
11077         (linux_nat_supports_disable_randomization, linux_nat_async)
11078         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11079         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11080         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11081         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11082         methods of linux_nat_target.
11083         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11084         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11085         parameter.
11086         (check_stopped_by_watchpoint): Adjust.
11087         (linux_xfer_partial): Delete.
11088         (linux_target_install_ops, linux_target, linux_nat_add_target):
11089         Delete.
11090         (linux_nat_target::linux_nat_target): New.
11091         * linux-nat.h: Include "inf-ptrace.h".
11092         (linux_nat_target): New.
11093         (linux_target, linux_target_install_ops, linux_nat_add_target):
11094         Delete function declarations.
11095         (linux_target): Declare global.
11096         * linux-thread-db.c (thread_db_target): New.
11097         (thread_db_target::thread_db_target): New.
11098         (thread_db_ops): Delete.
11099         (the_thread_db_target): New.
11100         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11101         (thread_db_update_thread_list, thread_db_pid_to_str)
11102         (thread_db_extra_thread_info)
11103         (thread_db_thread_handle_to_thread_info)
11104         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11105         (thread_db_resume): Refactor as methods of thread_db_target.
11106         (init_thread_db_ops): Delete.
11107         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11108         * x86-linux-nat.c: Don't include "linux-nat.h".
11109         (super_post_startup_inferior): Delete.
11110         (x86_linux_nat_target::~x86_linux_nat_target): New.
11111         (x86_linux_child_post_startup_inferior)
11112         (x86_linux_read_description, x86_linux_enable_btrace)
11113         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11114         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11115         methods of x86_linux_nat_target.
11116         (x86_linux_create_target): Delete.  Bits folded ...
11117         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11118         pointer.
11119         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11120         (x86_linux_nat_target): New class.
11121         (x86_linux_create_target): Delete.
11122         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11123         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11124         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11125         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11126         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11127         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11128         make extern.
11129         (x86_use_watchpoints): Delete.
11130         * x86-nat.h: Include "breakpoint.h" and "target.h".
11131         (x86_use_watchpoints): Delete.
11132         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11133         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11134         (x86_insert_watchpoint, x86_remove_watchpoint)
11135         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11136         (x86_stopped_by_hw_breakpoint): New declarations.
11137         (x86_nat_target): New template class.
11138
11139         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11140         (the_ppc_linux_nat_target): New.
11141         (ppc_linux_fetch_inferior_registers)
11142         (ppc_linux_can_use_hw_breakpoint)
11143         (ppc_linux_region_ok_for_hw_watchpoint)
11144         (ppc_linux_ranged_break_num_registers)
11145         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11146         (ppc_linux_insert_mask_watchpoint)
11147         (ppc_linux_remove_mask_watchpoint)
11148         (ppc_linux_can_accel_watchpoint_condition)
11149         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11150         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11151         (ppc_linux_watchpoint_addr_within_range)
11152         (ppc_linux_masked_watch_num_registers)
11153         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11154         (ppc_linux_read_description): Refactor as methods of
11155         ppc_linux_nat_target.
11156         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11157
11158         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11159         (procfs_target): New class.
11160         (the_procfs_target): New.
11161         (procfs_target): Delete function.
11162         (procfs_auxv_parse, procfs_attach, procfs_detach)
11163         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11164         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11165         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11166         (procfs_create_inferior, procfs_update_thread_list)
11167         (procfs_thread_alive, procfs_pid_to_str)
11168         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11169         (procfs_stopped_data_address, procfs_insert_watchpoint)
11170         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11171         (proc_find_memory_regions, procfs_info_proc)
11172         (procfs_make_note_section): Refactor as methods of procfs_target.
11173         (_initialize_procfs): Adjust.
11174         * sol-thread.c (sol_thread_target): New class.
11175         (sol_thread_ops): Now a sol_thread_target.
11176         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11177         (sol_thread_fetch_registers, sol_thread_store_registers)
11178         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11179         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11180         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11181         (init_sol_thread_ops): Delete.
11182         (_initialize_sol_thread): Adjust.  Remove references to
11183         init_sol_thread_ops and complete_target_initialization.
11184
11185         * windows-nat.c (windows_nat_target): New class.
11186         (windows_fetch_inferior_registers)
11187         (windows_store_inferior_registers, windows_resume, windows_wait)
11188         (windows_attach, windows_detach, windows_pid_to_exec_file)
11189         (windows_files_info, windows_create_inferior)
11190         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11191         (windows_close, windows_pid_to_str, windows_xfer_partial)
11192         (windows_get_tib_address, windows_get_ada_task_ptid)
11193         (windows_thread_name, windows_thread_alive): Refactor as
11194         windows_nat_target methods.
11195         (do_initial_windows_stuff): Adjust.
11196         (windows_target): Delete function.
11197         (_initialize_windows_nat): Adjust.
11198
11199         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11200         (darwin_mourn_inferior, darwin_kill_inferior)
11201         (darwin_create_inferior, darwin_attach, darwin_detach)
11202         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11203         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11204         (darwin_supports_multi_process): Refactor as darwin_nat_target
11205         methods.
11206         (darwin_resume_to, darwin_files_info): Delete.
11207         (_initialize_darwin_inferior): Rename to ...
11208         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11209         * darwin-nat.h: Include "inf-child.h".
11210         (darwin_nat_target): New class.
11211         (darwin_complete_target): Delete.
11212         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11213         (darwin_target): New.
11214         (i386_darwin_fetch_inferior_registers)
11215         (i386_darwin_store_inferior_registers): Refactor as methods of
11216         darwin_nat_target.
11217         (darwin_complete_target): Delete, with ...
11218         (_initialize_i386_darwin_nat): ... bits factored out here.
11219
11220         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11221         (the_alpha_linux_nat_target): New.
11222         (alpha_linux_register_u_offset): Refactor as
11223         alpha_linux_nat_target method.
11224         (_initialize_alpha_linux_nat): Adjust.
11225         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11226         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11227         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11228         methods of linux_nat_trad_target.
11229         (linux_trad_target): Delete.
11230         * linux-nat-trad.h (linux_trad_target): Delete function.
11231         (linux_nat_trad_target): New class.
11232         * mips-linux-nat.c (mips_linux_nat_target): New class.
11233         (super_fetch_registers, super_store_registers, super_close):
11234         Delete.
11235         (the_mips_linux_nat_target): New.
11236         (mips64_linux_regsets_fetch_registers)
11237         (mips64_linux_regsets_store_registers)
11238         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11239         (mips_linux_register_u_offset, mips_linux_read_description)
11240         (mips_linux_can_use_hw_breakpoint)
11241         (mips_linux_stopped_by_watchpoint)
11242         (mips_linux_stopped_data_address)
11243         (mips_linux_region_ok_for_hw_watchpoint)
11244         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11245         (mips_linux_close): Refactor as methods of mips_linux_nat.
11246         (_initialize_mips_linux_nat): Adjust to C++ification.
11247
11248         * aix-thread.c (aix_thread_target): New class.
11249         (aix_thread_ops): Now an aix_thread_target.
11250         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11251         (aix_thread_fetch_registers, aix_thread_store_registers)
11252         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11253         (aix_thread_thread_alive, aix_thread_pid_to_str)
11254         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11255         Refactor as methods of aix_thread_target.
11256         (init_aix_thread_ops): Delete.
11257         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11258         and complete_target_initialization.
11259         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11260         (rs6000_nat_target): New class.
11261         (the_rs6000_nat_target): New.
11262         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11263         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11264         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11265         (super_create_inferior): Delete.
11266         (_initialize_rs6000_nat): Adjust to C++ification.
11267
11268         * arm-linux-nat.c (arm_linux_nat_target): New class.
11269         (the_arm_linux_nat_target): New.
11270         (arm_linux_fetch_inferior_registers)
11271         (arm_linux_store_inferior_registers, arm_linux_read_description)
11272         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11273         (arm_linux_remove_hw_breakpoint)
11274         (arm_linux_region_ok_for_hw_watchpoint)
11275         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11276         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11277         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11278         arm_linux_nat_target.
11279         (_initialize_arm_linux_nat): Adjust to C++ification.
11280
11281         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11282         (the_aarch64_linux_nat_target): New.
11283         (aarch64_linux_fetch_inferior_registers)
11284         (aarch64_linux_store_inferior_registers)
11285         (aarch64_linux_child_post_startup_inferior)
11286         (aarch64_linux_read_description)
11287         (aarch64_linux_can_use_hw_breakpoint)
11288         (aarch64_linux_insert_hw_breakpoint)
11289         (aarch64_linux_remove_hw_breakpoint)
11290         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11291         (aarch64_linux_region_ok_for_hw_watchpoint)
11292         (aarch64_linux_stopped_data_address)
11293         (aarch64_linux_stopped_by_watchpoint)
11294         (aarch64_linux_watchpoint_addr_within_range)
11295         (aarch64_linux_can_do_single_step): Refactor as methods of
11296         aarch64_linux_nat_target.
11297         (super_post_startup_inferior): Delete.
11298         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11299
11300         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11301         (the_hppa_linux_nat_target): New.
11302         (hppa_linux_fetch_inferior_registers)
11303         (hppa_linux_store_inferior_registers): Refactor as methods of
11304         hppa_linux_nat_target.
11305         (_initialize_hppa_linux_nat): Adjust to C++ification.
11306
11307         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11308         (the_ia64_linux_nat_target): New.
11309         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11310         (ia64_linux_stopped_data_address)
11311         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11312         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11313         ia64_linux_nat_target methods.
11314         (super_xfer_partial): Delete.
11315         (_initialize_ia64_linux_nat): Adjust to C++ification.
11316
11317         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11318         (the_m32r_linux_nat_target): New.
11319         (m32r_linux_fetch_inferior_registers)
11320         (m32r_linux_store_inferior_registers): Refactor as
11321         m32r_linux_nat_target methods.
11322         (_initialize_m32r_linux_nat): Adjust to C++ification.
11323
11324         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11325         (the_m68k_linux_nat_target): New.
11326         (m68k_linux_fetch_inferior_registers)
11327         (m68k_linux_store_inferior_registers): Refactor as
11328         m68k_linux_nat_target methods.
11329         (_initialize_m68k_linux_nat): Adjust to C++ification.
11330
11331         * s390-linux-nat.c (s390_linux_nat_target): New class.
11332         (the_s390_linux_nat_target): New.
11333         (s390_linux_fetch_inferior_registers)
11334         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11335         (s390_insert_watchpoint, s390_remove_watchpoint)
11336         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11337         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11338         (s390_auxv_parse, s390_read_description): Refactor as methods of
11339         s390_linux_nat_target.
11340         (_initialize_s390_nat): Adjust to C++ification.
11341
11342         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11343         (the_sparc_linux_nat_target): New.
11344         (_initialize_sparc_linux_nat): Adjust to C++ification.
11345         * sparc-nat.c (sparc_fetch_inferior_registers)
11346         (sparc_store_inferior_registers): Remove target_ops parameter.
11347         * sparc-nat.h (sparc_fetch_inferior_registers)
11348         (sparc_store_inferior_registers): Remove target_ops parameter.
11349         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11350         (the_sparc64_linux_nat_target): New.
11351         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11352
11353         * spu-linux-nat.c (spu_linux_nat_target): New class.
11354         (the_spu_linux_nat_target): New.
11355         (spu_child_post_startup_inferior, spu_child_post_attach)
11356         (spu_child_wait, spu_fetch_inferior_registers)
11357         (spu_store_inferior_registers, spu_xfer_partial)
11358         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11359         methods.
11360         (_initialize_spu_nat): Adjust to C++ification.
11361
11362         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11363         (the_tilegx_linux_nat_target): New.
11364         (fetch_inferior_registers, store_inferior_registers):
11365         Refactor as methods.
11366         (_initialize_tile_linux_nat): Adjust to C++ification.
11367
11368         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11369         (the_xtensa_linux_nat_target): New.
11370         (xtensa_linux_fetch_inferior_registers)
11371         (xtensa_linux_store_inferior_registers): Refactor as
11372         xtensa_linux_nat_target methods.
11373         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11374
11375         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11376         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11377         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11378         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11379         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11380         (fbsd_stopped_by_sw_breakpoint)
11381         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11382         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11383         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11384         (fbsd_post_startup_inferior, fbsd_post_attach)
11385         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11386         (fbsd_set_syscall_catchpoint)
11387         (super_xfer_partial, super_resume, super_wait)
11388         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11389         (fbsd_handle_debug_trap): Remove target_ops parameter.
11390         (fbsd_nat_add_target): Delete.
11391         * fbsd-nat.h: Include "inf-ptrace.h".
11392         (fbsd_nat_add_target): Delete.
11393         (USE_SIGTRAP_SIGINFO): Define.
11394         (fbsd_nat_target): New class.
11395
11396         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11397         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11398         (amd64bsd_target): Delete.
11399         * amd64-bsd-nat.h: New file.
11400         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11401         "x86-bsd-nat.h".
11402         (amd64_fbsd_nat_target): New class.
11403         (the_amd64_fbsd_nat_target): New.
11404         (amd64fbsd_read_description): Refactor as method of
11405         amd64_fbsd_nat_target.
11406         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11407         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11408         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11409         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11410         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11411         (i386bsd_target): Delete.
11412         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11413         (i386bsd_fetch_inferior_registers)
11414         (i386bsd_store_inferior_registers): Declare.
11415         (i386_bsd_nat_target): New class.
11416         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11417         (the_i386_fbsd_nat_target): New.
11418         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11419         i386_fbsd_nat_target methods.
11420         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11421         (_initialize_i386fbsd_nat): Adjust to C++ification.
11422         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11423         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11424         (_initialize_x86_bsd_nat): Adjust to C++ification.
11425         * x86-bsd-nat.h: Include "x86-nat.h".
11426         (x86bsd_target): Delete declaration.
11427         (x86bsd_nat_target): New class.
11428
11429         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11430         (the_aarch64_fbsd_nat_target): New.
11431         (aarch64_fbsd_fetch_inferior_registers)
11432         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11433         aarch64_fbsd_nat_target.
11434         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11435         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11436         (the_alpha_bsd_nat_target): New.
11437         (alphabsd_fetch_inferior_registers)
11438         (alphabsd_store_inferior_registers): Refactor as
11439         alpha_bsd_nat_target methods.
11440         (_initialize_alphabsd_nat): Refactor as methods of
11441         alpha_bsd_nat_target.
11442         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11443         (the_amd64_nbsd_nat_target): New.
11444         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11445         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11446         (the_amd64_obsd_nat_target): New.
11447         (_initialize_amd64obsd_nat): Adjust to C++ification.
11448         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11449         (the_arm_fbsd_nat_target): New.
11450         (arm_fbsd_fetch_inferior_registers)
11451         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11452         (_initialize_arm_fbsd_nat): Refactor as methods of
11453         arm_fbsd_nat_target.
11454         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11455         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11456         (the_arm_netbsd_nat_target): New.
11457         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11458         arm_netbsd_nat_target.
11459         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11460         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11461         (the_hppa_nbsd_nat_target): New.
11462         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11463         hppa_nbsd_nat_target methods.
11464         (_initialize_hppanbsd_nat): Adjust to C++ification.
11465         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11466         (the_hppa_obsd_nat_target): New.
11467         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11468         methods of hppa_obsd_nat_target.
11469         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11470         add_target.
11471         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11472         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11473         add_target.
11474         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11475         (_initialize_i386obsd_nat): Use add_target.
11476         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11477         (the_m68k_bsd_nat_target): New.
11478         (m68kbsd_fetch_inferior_registers)
11479         (m68kbsd_store_inferior_registers): Refactor as methods of
11480         m68k_bsd_nat_target.
11481         (_initialize_m68kbsd_nat): Adjust to C++ification.
11482         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11483         (the_mips_fbsd_nat_target): New.
11484         (mips_fbsd_fetch_inferior_registers)
11485         (mips_fbsd_store_inferior_registers): Refactor as methods of
11486         mips_fbsd_nat_target.
11487         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11488         add_target.
11489         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11490         (the_mips_nbsd_nat_target): New.
11491         (mipsnbsd_fetch_inferior_registers)
11492         (mipsnbsd_store_inferior_registers): Refactor as methods of
11493         mips_nbsd_nat_target.
11494         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11495         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11496         (the_mips64_obsd_nat_target): New.
11497         (mips64obsd_fetch_inferior_registers)
11498         (mips64obsd_store_inferior_registers): Refactor as methods of
11499         mips64_obsd_nat_target.
11500         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11501         add_target.
11502         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11503         nbsd_nat_target.
11504         * nbsd-nat.h: Include "inf-ptrace.h".
11505         (nbsd_nat_target): New class.
11506         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11507         (obsd_wait): Refactor as methods of obsd_nat_target.
11508         (obsd_add_target): Delete.
11509         * obsd-nat.h: Include "inf-ptrace.h".
11510         (obsd_nat_target): New class.
11511         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11512         (the_ppc_fbsd_nat_target): New.
11513         (ppcfbsd_fetch_inferior_registers)
11514         (ppcfbsd_store_inferior_registers): Refactor as methods of
11515         ppc_fbsd_nat_target.
11516         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11517         add_target.
11518         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11519         (the_ppc_nbsd_nat_target): New.
11520         (ppcnbsd_fetch_inferior_registers)
11521         (ppcnbsd_store_inferior_registers): Refactor as methods of
11522         ppc_nbsd_nat_target.
11523         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11524         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11525         (the_ppc_obsd_nat_target): New.
11526         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11527         methods of ppc_obsd_nat_target.
11528         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11529         add_target.
11530         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11531         (the_sh_nbsd_nat_target): New.
11532         (shnbsd_fetch_inferior_registers)
11533         (shnbsd_store_inferior_registers): Refactor as methods of
11534         sh_nbsd_nat_target.
11535         (_initialize_shnbsd_nat): Adjust to C++ification.
11536         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11537         (inf_ptrace_xfer_partial): Delete.
11538         (sparc_xfer_partial, sparc_target): Delete.
11539         * sparc-nat.h (sparc_fetch_inferior_registers)
11540         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11541         (sparc_target): Delete function declaration.
11542         (sparc_target): New template class.
11543         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11544         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11545         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11546         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11547         add_target.
11548         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11549         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11550         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11551         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11552         add_target.
11553         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11554         (the_vax_bsd_nat_target): New.
11555         (vaxbsd_fetch_inferior_registers)
11556         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11557         methods.
11558         (_initialize_vaxbsd_nat): Adjust to C++ification.
11559
11560         * bsd-kvm.c (bsd_kvm_target): New class.
11561         (bsd_kvm_ops): Now a bsd_kvm_target.
11562         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11563         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11564         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11565         bsd_kvm_target.
11566         (bsd_kvm_return_one): Delete.
11567         (bsd_kvm_add_target): Adjust to C++ification.
11568
11569         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11570         (nto_procfs_target_procfs): New classes.
11571         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11572         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11573         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11574         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11575         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11576         (procfs_remove_hw_breakpoint, procfs_resume)
11577         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11578         (procfs_kill_inferior, procfs_store_registers)
11579         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11580         as methods of nto_procfs_target.
11581         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11582         (nto_native_ops): Delete.
11583         (procfs_open, procfs_native_open): Delete.
11584         (nto_native_ops): Now an nto_procfs_target_native.
11585         (init_procfs_targets): Adjust to C++ification.
11586         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11587         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11588         Refactor as methods of nto_procfs_target.
11589
11590         * go32-nat.c (go32_nat_target): New class.
11591         (the_go32_nat_target): New.
11592         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11593         (go32_store_registers, go32_xfer_partial, go32_files_info)
11594         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11595         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11596         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11597         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11598         (go32_target): Delete.
11599         (_initialize_go32_nat): Adjust to C++ification.
11600
11601         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11602         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11603         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11604         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11605         gnu_nat_target.
11606         (gnu_target): Delete.
11607         * gnu-nat.h (gnu_target): Delete.
11608         (gnu_nat_target): New class.
11609         * i386-gnu-nat.c (gnu_base_target): New.
11610         (i386_gnu_nat_target): New class.
11611         (the_i386_gnu_nat_target): New.
11612         (_initialize_i386gnu_nat): Adjust to C++ification.
11613
11614 2018-05-02  Pedro Alves  <palves@redhat.com>
11615
11616         * bfd-target.c (target_bfd_xclose): Rename to ...
11617         (target_bfd_close): ... this.
11618         (target_bfd_reopen): Adjust.
11619         * target.c (target_close): Remove references to to_xclose.
11620         * target.h (target_ops::to_xclose): Delete.
11621         (target_ops::to_close): Update comments.
11622
11623 2018-05-02  Pedro Alves  <palves@redhat.com>
11624
11625         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11626         "linux-nat.h".
11627         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11628         * inf-ptrace.c (inf_ptrace_register_u_offset)
11629         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11630         (inf_ptrace_store_register, inf_ptrace_store_registers)
11631         (inf_ptrace_trad_target): Move to ...
11632         * linux-nat-trad.c: ... this new file.
11633         * linux-nat-trad.h: New file.
11634         * linux-nat.c (linux_target_install_ops): Make extern.
11635         (linux_trad_target): Delete.
11636         * linux-nat.h (linux_trad_target): Delete declaration.
11637         (linux_target_install_ops): Declare.
11638         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11639         "linux-nat.h".
11640
11641 2018-05-02  Pedro Alves  <palves@redhat.com>
11642
11643         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11644         procfs_target/add_target here.
11645         * procfs.c (procfs_target): Make static.
11646         (_initialize_procfs): Call add_target here.
11647         * procfs.h (struct target_ops): Remove forward declaration.
11648         (procfs_target): Remove declaration.
11649         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11650
11651 2018-05-02  Pedro Alves  <palves@redhat.com>
11652
11653         * procfs.c (procfs_stopped_by_watchpoint)
11654         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11655         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11656         Forward declare.
11657         (procfs_use_watchpoints): Delete, move contents...
11658         (procfs_target): ... here.
11659         * procfs.h (procfs_use_watchpoints): Delete declaration.
11660         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11661         procfs_use_watchpoints.
11662         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11663         procfs_use_watchpoints.
11664
11665 2018-05-02  Tom Tromey  <tom@tromey.com>
11666
11667         PR python/20084:
11668         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11669         and var_zuinteger_unlimited.
11670         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11671         and PARAM_ZUINTEGER_UNLIMITED.
11672         (set_parameter_value): Handle var_zuinteger and
11673         var_zuinteger_unlimited.
11674         (add_setshow_generic): Likewise.
11675         (parmpy_init): Likewise.
11676
11677 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11678
11679         PR rust/23124
11680         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11681         pointer is not null before dereferencing it.
11682
11683 2018-04-30  Tom Tromey  <tom@tromey.com>
11684
11685         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11686         is_mi_like_p.
11687
11688 2018-04-30  Tom Tromey  <tom@tromey.com>
11689
11690         * breakpoint.c (mention): Remove use of is_mi_like_p.
11691         (print_mention_ranged_breakpoint): Likewise.
11692         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11693         of is_mi_like_p.
11694
11695 2018-04-30  Tom Tromey  <tom@tromey.com>
11696
11697         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11698
11699 2018-04-30  Tom Tromey  <tom@tromey.com>
11700
11701         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11702         (info_spu_event_command): Remove some uses of is_mi_like_p.
11703
11704 2018-04-30  Tom Tromey  <tom@tromey.com>
11705
11706         * python/py-framefilter.c (py_print_single_arg)
11707         (enumerate_locals, py_print_args, py_print_frame): Remove some
11708         uses of is_mi_like_p.
11709
11710 2018-04-30  Tom Tromey  <tom@tromey.com>
11711
11712         * ui-out.c: Update.
11713         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11714         * ui-out.h (ui_out::is_mi_like_p): Now const.
11715         (ui_out::do_is_mi_like_p): Now const.
11716         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11717
11718 2018-04-30  Tom Tromey  <tom@tromey.com>
11719
11720         * varobj.c (varobj_set_visualizer): Use new_reference.
11721         * python/python.c (gdbpy_decode_line): Use new_reference.
11722         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11723         new_reference.
11724
11725 2018-04-30  Tom Tromey  <tom@tromey.com>
11726
11727         * varobj.c (install_new_value): Use new_reference.
11728         * value.h (value_incref): Return void.  Swap intro comment with
11729         value_decref.
11730         * value.c (set_value_parent): Use new_reference.
11731         (value_incref): Return void.  Update intro comment.
11732         (release_value): Use new_reference.
11733         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11734
11735 2018-04-30  Tom Tromey  <tom@tromey.com>
11736
11737         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11738         * gdb_bfd.h (new_bfd_ref): Remove.
11739         (gdb_bfd_open): Update comment.
11740         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11741         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11742         (gdb_bfd_fdopenr): Use new_reference.
11743         * exec.c (exec_file_attach): Use new_reference.
11744
11745 2018-04-30  Tom Tromey  <tom@tromey.com>
11746
11747         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11748         method.
11749
11750 2018-04-30  Tom Tromey  <tom@tromey.com>
11751
11752         * jit.c (jit_read_code_entry): Use type_align.
11753         * i386-tdep.c (i386_gdbarch_init): Don't call
11754         set_gdbarch_long_long_align_bit.
11755         * gdbarch.sh: Remove long_long_align_bit.
11756         * gdbarch.c, gdbarch.h: Rebuild.
11757         * arc-tdep.c (arc_type_align): New function.
11758         (arc_gdbarch_init): Use arc_type_align.  Don't call
11759         set_gdbarch_long_long_align_bit.
11760
11761 2018-04-30  Tom Tromey  <tom@tromey.com>
11762
11763         * rust-lang.c (rust_type_alignment): Remove.
11764         (rust_composite_type): Use type_align.
11765
11766 2018-04-30  Tom Tromey  <tom@tromey.com>
11767
11768         * NEWS: Mention Type.align.
11769         * python/py-type.c (typy_get_alignof): New function.
11770         (type_object_getset): Add "alignof".
11771
11772 2018-04-30  Tom Tromey  <tom@tromey.com>
11773
11774         PR exp/17095:
11775         * NEWS: Update.
11776         * std-operator.def (UNOP_ALIGNOF): New operator.
11777         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11778         New.
11779         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11780         * c-lang.c (c_op_print_tab): Add alignof.
11781         * c-exp.y (ALIGNOF): New token.
11782         (exp): Add "ALIGNOF" production.
11783         (ident_tokens): Add _Alignof and alignof.
11784
11785 2018-04-30  Tom Tromey  <tom@tromey.com>
11786
11787         * i386-tdep.c (i386_type_align): New function.
11788         (i386_gdbarch_init): Update.
11789         * gdbarch.sh (type_align): New method.
11790         * gdbarch.c, gdbarch.h: Rebuild.
11791         * arch-utils.h (default_type_align): Declare.
11792         * arch-utils.c (default_type_align): New function.
11793         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11794         (struct type) <align_log2>: New field.
11795         <instance_flags>: Now a bitfield.
11796         (TYPE_RAW_ALIGN): New macro.
11797         (type_align, type_raw_align, set_type_align): Declare.
11798         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11799         functions.
11800         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11801         (get_alignment, maybe_set_alignment): New functions.
11802         (read_structure_type, read_enumeration_type, read_array_type)
11803         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11804         (read_subrange_type, read_base_type): Set type alignment.
11805
11806 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11807
11808         * dwarf2read.c (read_index_from_section): Use bool.
11809
11810 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11811
11812         PR gdb/22950
11813         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11814         with #ifdef.
11815
11816 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11817
11818         PR build/22873
11819         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11820         last step, and do it atomically.
11821
11822 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11823
11824         * compile/compile-c-types.c (convert_int, convert_float):
11825         Update for C FE v1.
11826
11827 2018-04-27  Tom Tromey  <tom@tromey.com>
11828
11829         PR rust/22545:
11830         * rust-lang.c (rust_inclusive_range_type_p): New function.
11831         (rust_range): Handle inclusive ranges.
11832         (rust_compute_range): Likewise.
11833         * rust-exp.y (struct rust_op) <inclusive>: New field.
11834         (DOTDOTEQ): New constant.
11835         (range_expr): Add "..=" productions.
11836         (operator_tokens): Add "..=" token.
11837         (ast_range): Add "inclusive" parameter.
11838         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11839         ranges.
11840         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11841         bounds values.
11842         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11843         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11844         Update comments.
11845         * expprint.c (print_subexp_standard): Handle new bounds values.
11846         (dump_subexp_body_standard): Likewise.
11847
11848 2018-04-27  Tom Tromey  <tom@tromey.com>
11849
11850         * configure: Rebuild.
11851         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11852         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11853         "OVERRIDE".
11854         (class symbol_needs_eval_context): Likewise.
11855         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11856         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11857         "virtual".
11858         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11859         "override".
11860         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11861         * aarch64-tdep.c (instruction_reader::read): Use "override".
11862         (instruction_reader_test::read): Likewise.
11863         * arm-tdep.c (instruction_reader::read): Use "override".
11864         (instruction_reader_thumb::read): Likewise.
11865
11866 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11867
11868         PR remote/9665
11869         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11870         instead of remote_send.
11871         (remote_send): Remove.
11872
11873 2018-04-26  Pedro Alves  <palves@redhat.com>
11874
11875         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11876         find_function_start_sal instead of find_pc_line.
11877
11878 2018-04-26  Pedro Alves  <palves@redhat.com>
11879
11880         * breakpoint.c (set_breakpoint_location_function): Handle
11881         mst_data_gnu_ifunc.
11882         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11883         * elfread.c (elf_symtab_read): Give data symbols with
11884         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11885         (elf_rel_plt_read): Update comment.
11886         * linespec.c (convert_linespec_to_sals): Handle
11887         mst_data_gnu_ifunc.
11888         (minsym_found): Handle mst_data_gnu_ifunc.
11889         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11890         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11891         * parse.c (find_minsym_type_and_address): Handle
11892         mst_data_gnu_ifunc.
11893         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11894         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11895         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11896         comment.
11897         <mst_data_gnu_ifunc>: New enumerator.
11898
11899 2018-04-26  Pedro Alves  <palves@redhat.com>
11900
11901         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11902         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11903         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11904         Handle it.
11905         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11906         (lookup_minimal_symbol_by_pc): Adjust.
11907         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11908         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11909         * minsyms.h (lookup_msym_prefer): New enum.
11910         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11911         parameter by a lookup_msym_prefer parameter.
11912
11913 2018-04-26  Pedro Alves  <palves@redhat.com>
11914
11915         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11916         ends in "@plt" instead of looking at the symbol's section.
11917
11918 2018-04-26  Pedro Alves  <palves@redhat.com>
11919
11920         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11921         all references.
11922         (find_pc_partial_function_gnu_ifunc): Rename to ...
11923         (find_pc_partial_function): ... this, and remove references to
11924         'is_gnu_ifunc_p'.
11925         (find_pc_partial_function): Delete old implementation.
11926         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11927
11928 2018-04-26  Pedro Alves  <palves@redhat.com>
11929
11930         * linespec.c (struct bound_minimal_symbol_search_key): New.
11931         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11932         skip first line if we found a GNU ifunc minimal symbol by name.
11933         (compare_msymbols): Change parameters to work with a destructured
11934         lhs minsym.
11935         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11936         functions.
11937
11938 2018-04-26  Pedro Alves  <palves@redhat.com>
11939
11940         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11941         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11942         address/name.
11943         (add_location_to_breakpoint): Store the minsym and the objfile in
11944         the breakpoint location.
11945         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11946         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11947         Record the minsym in the sal.
11948         * symtab.h (symtab_and_line) <msymbol>: New field.
11949
11950 2018-04-26  Pedro Alves  <palves@redhat.com>
11951
11952         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11953         unless we actually resolved the ifunc.
11954
11955 2018-04-26  Pedro Alves  <palves@redhat.com>
11956
11957         * c-exp.y (variable production): Prefer ifunc minsyms over
11958         regular function symbols.
11959         * symtab.c (find_gnu_ifunc): New function.
11960         * minsyms.h (lookup_msym_prefer): New enum.
11961         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11962         parameter by a lookup_msym_prefer parameter.
11963         * symtab.h (find_gnu_ifunc): New declaration.
11964
11965 2018-04-26  Pedro Alves  <palves@redhat.com>
11966
11967         * blockframe.c (find_gnu_ifunc_target_type): New function.
11968         (find_function_type): New.
11969         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11970         return a value with a memory address.
11971         (eval_call): For calls to GNU ifunc functions, try to find the
11972         type of the target function from the type that the resolver
11973         returns.
11974         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11975         symbols.
11976         * infcall.c (find_function_return_type): Delete.
11977         (find_function_addr): Add 'function_type' parameter.  For calls to
11978         GNU ifunc functions, try to find the type of the target function
11979         from the type that the resolver returns, and return it via
11980         FUNCTION_TYPE.
11981         (call_function_by_hand_dummy): Adjust to use the function type
11982         returned by find_function_addr.
11983         (find_function_addr): Add 'function_type' parameter and move
11984         description here.
11985         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11986         declarations.
11987
11988 2018-04-26  Pedro Alves  <palves@redhat.com>
11989
11990         * c-exp.y (variable production): Skip finding an alias for ifunc
11991         symbols.
11992
11993 2018-04-26  Pedro Alves  <palves@redhat.com>
11994
11995         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11996
11997 2018-04-25  Pedro Alves  <palves@redhat.com>
11998
11999         * infcmd.c (kill_command): Print the pid as string, not the whole
12000         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12001         message.
12002         * remote.c (remote_detach_1): Print the pid as string, not the
12003         whole thread's ptid.
12004
12005 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12006             Sergio Durigan Junior  <sergiodj@redhat.com>
12007             Pedro Alves  <palves@redhat.com>
12008
12009         * infcmd.c (kill_command): Print message when inferior has
12010         been killed.
12011         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12012         '1'.
12013         (add_inferior): Improve message printed when
12014         'print_inferior_events' is on.
12015         (exit_inferior): Remove message printed when
12016         'print_inferior_events' is on.
12017         (detach_inferior): Improve message printed when
12018         'print_inferior_events' is on.
12019         (initialize_inferiors): Use 'add_inferior_silent' to set
12020         'current_inferior_'.
12021         * inferior.h (print_inferior_events): Declare here as
12022         'extern'.
12023         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12024         '[Detaching...]' messages when 'print_inferior_events' is on.
12025         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12026         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12027         'Detaching after fork from child...', replace it by '... from
12028         parent...'.
12029         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12030         prefix/suffix when printing 'Detaching...' messages.  Print
12031         them when 'print_inferior_events' is on.
12032         * remote.c (remote_detach_1): Print message when detaching
12033         from inferior and '!is_fork_parent'.
12034
12035 2018-04-24  Tom Tromey  <tom@tromey.com>
12036
12037         * cli-out.h: Reindent.
12038
12039 2018-04-24  Tom Tromey  <tom@tromey.com>
12040
12041         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12042         (cli_ui_out::do_field_string): Use fputs_filtered.
12043         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12044
12045 2018-04-23  Tom Tromey  <tom@tromey.com>
12046
12047         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12048         gdb::unique_xmalloc_ptr.
12049
12050 2018-04-23  Tom Tromey  <tom@tromey.com>
12051
12052         * configure: Rebuild.
12053
12054 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12055
12056         PR gdb/23095
12057         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12058         prepare_for_testing.  Set normal_bp to r_debug_state if target
12059         is bsd.
12060
12061 2018-04-21  Pedro Alves  <palves@redhat.com>
12062             Rajendra SY  <rajendra.sy@gmail.com>
12063
12064         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12065         * remote.c (extended_remote_attach): In all-stop mode, mark the
12066         thread as executing.
12067
12068 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12069
12070         * thread.c (thread_apply_all_command): Fix comment.
12071         (thread_command): Fix comment.
12072
12073 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12074
12075         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12076         parameter.
12077         * features/aarch64-core.c (create_feature_aarch64_core):
12078         Regenerate.
12079         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12080         Likewise.
12081         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12082         Likewise.
12083         * features/i386/32bit-avx512.c
12084         (create_feature_i386_32bit_avx512): Likewise.
12085         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12086         Likewise.
12087         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12088         Likewise.
12089         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12090         Likewise.
12091         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12092         Likewise.
12093         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12094         Likewise.
12095         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12096         Likewise.
12097         * features/i386/64bit-avx512.c
12098         (create_feature_i386_64bit_avx512): Likewise.
12099         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12100         Likewise.
12101         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12102         Likewise.
12103         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12104         Likewise.
12105         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12106         Likewise.
12107         * features/i386/64bit-segments.c
12108         (create_feature_i386_64bit_segments): Likewise.
12109         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12110         Likewise.
12111         * features/i386/x32-core.c
12112         (create_feature_i386_x32_core): Likewise.
12113         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12114         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12115         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12116         * target-descriptions.c: In generated code, don't pass xml
12117         filename.
12118
12119 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12120
12121         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12122         (print_xml_feature::visit_post): Likewise.
12123         (print_xml_feature::visit): Likewise.
12124         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12125         (print_xml_feature): Add new class.
12126         * regformats/regdat.sh: Null xmltarget on feature targets.
12127         * target-descriptions.c (struct target_desc): Add xmltarget.
12128         (maintenance_check_tdesc_xml_convert): Add unittest function.
12129         (tdesc_get_features_xml): Add function to get xml.
12130         (maintenance_check_xml_descriptions): Test xml generation.
12131         * xml-tdesc.c (string_read_description_xml): Add function.
12132         * xml-tdesc.h (string_read_description_xml): Add declaration.
12133
12134 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12135
12136         * features/Makefile: Add feature marker to targets with new style
12137         target descriptions.
12138         * regformats/aarch64.dat: Regenerate.
12139         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12140         * regformats/i386/amd64-avx-linux.dat: Likewise.
12141         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12142         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12143         * regformats/i386/amd64-linux.dat: Likewise.
12144         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12145         * regformats/i386/amd64.dat: Likewise.
12146         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12147         * regformats/i386/i386-avx-linux.dat: Likewise.
12148         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12149         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12150         * regformats/i386/i386-linux.dat: Likewise.
12151         * regformats/i386/i386-mmx-linux.dat: Likewise.
12152         * regformats/i386/i386-mpx-linux.dat: Likewise.
12153         * regformats/i386/i386.dat: Likewise.
12154         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12155         * regformats/i386/x32-avx-linux.dat: Likewise.
12156         * regformats/i386/x32-linux.dat: Likewise.
12157         * regformats/tic6x-c62x-linux.dat: Likewise.
12158         * regformats/tic6x-c64x-linux.dat: Likewise.
12159         * regformats/tic6x-c64xp-linux.dat: Likewise.
12160         * regformats/regdat.sh: Parse feature marker.
12161
12162 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12163
12164         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12165         (tdesc_osabi_name): Likewise.
12166         * target-descriptions.c (tdesc_architecture_name): Add new
12167         function.
12168         (tdesc_osabi_name): Likewise.
12169
12170 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12171
12172         * common/tdesc.c (tdesc_predefined_type): Move to here.
12173         (tdesc_named_type): Likewise.
12174         (tdesc_create_vector): Likewise.
12175         (tdesc_create_struct): Likewise.
12176         (tdesc_set_struct_size): Likewise.
12177         (tdesc_create_union): Likewise.
12178         (tdesc_create_flags): Likewise.
12179         (tdesc_create_enum): Likewise.
12180         (tdesc_add_field): Likewise.
12181         (tdesc_add_typed_bitfield): Likewise.
12182         (tdesc_add_bitfield): Likewise.
12183         (tdesc_add_flag): Likewise.
12184         (tdesc_add_enum_value): Likewise.
12185         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12186         (struct tdesc_type_vector): Likewise.
12187         (struct tdesc_type_field): Likewise.
12188         (struct tdesc_type_with_fields): Likewise.
12189         (tdesc_create_enum): Add declaration.
12190         (tdesc_add_typed_bitfield): Likewise.
12191         (tdesc_add_enum_value): Likewise.
12192         * target-descriptions.c (tdesc_type_field): Move from here.
12193         (tdesc_type_builtin): Likewise.
12194         (tdesc_type_vector): Likewise.
12195         (tdesc_type_with_fields): Likewise.
12196         (tdesc_predefined_types): Likewise.
12197         (tdesc_named_type): Likewise.
12198         (tdesc_create_vector): Likewise.
12199         (tdesc_create_struct): Likewise.
12200         (tdesc_set_struct_size): Likewise.
12201         (tdesc_create_union): Likewise.
12202         (tdesc_create_flags): Likewise.
12203         (tdesc_create_enum): Likewise.
12204         (tdesc_add_field): Likewise.
12205         (tdesc_add_typed_bitfield): Likewise.
12206         (tdesc_add_bitfield): Likewise.
12207         (tdesc_add_flag): Likewise.
12208         (tdesc_add_enum_value): Likewise.
12209         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12210         (tdesc_add_typed_bitfield): Likewise.
12211         (tdesc_add_enum_value): Likewise.
12212
12213 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12214
12215         * common/tdesc.c (tdesc_feature::accept): Move to here.
12216         (tdesc_feature::operator==): Likewise.
12217         (tdesc_create_reg): Likewise.
12218         * common/tdesc.h (tdesc_type_kind): Likewise.
12219         (struct tdesc_type): Likewise.
12220         (struct tdesc_feature): Likewise.
12221         * regformats/regdat.sh: Create a feature.
12222         * target-descriptions.c (tdesc_type_kind): Move from here.
12223         (tdesc_type): Likewise.
12224         (tdesc_type_up): Likewise.
12225         (tdesc_feature): Likewise.
12226         (tdesc_create_reg): Likewise.
12227
12228 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12229
12230         * Makefile.in: Add arch/tdesc.c
12231         * common/tdesc.c: New file.
12232         * common/tdesc.h (tdesc_element_visitor): Move to here.
12233         (tdesc_element): Likewise.
12234         (tdesc_reg): Likewise.
12235         (tdesc_reg_up): Likewise.
12236         * regformats/regdef.h (reg): Add offset to constructors.
12237         * target-descriptions.c (tdesc_element_visitor): Move from here.
12238         (tdesc_element): Likewise.
12239         (tdesc_reg): Likewise.
12240         (tdesc_reg_up): Likewise.
12241
12242 2018-04-17  Tom Tromey  <tom@tromey.com>
12243
12244         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12245         discriminant field.
12246
12247 2018-04-17  Tom Tromey  <tom@tromey.com>
12248
12249         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12250
12251 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12252
12253         * symtab.c (print_symbol_info): Skip printing filename and line
12254         number when `last' is NULL.
12255         (symtab_symbol_info): Use empty string instead of NULL for first
12256         invocation of print_symbol_info.
12257         (rbreak_command): Pass NULL to `last' parameter of
12258         print_symbol_info.
12259
12260 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12261
12262         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12263         instead of nullptr.
12264
12265 2018-04-16  Pedro Alves  <palves@redhat.com>
12266
12267         * MAINTAINERS (sh): Remove.
12268         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12269         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12270         (ALLDEPFILES): Remove sh64-tdep.c.
12271         * NEWS: Mentions that support for SH-5/SH64 is removed.
12272         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12273         (sh*-*-openbsd*): Ditto.
12274         (sh64-*-elf*): Remove.
12275         (sh*): Remove.
12276         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12277         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12278         * sh-tdep.c: No longer include "sh64-tdep.h".
12279         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12280         * sh64-tdep.c, sh64-tdep.h: Remove files.
12281
12282 2018-04-16  Pedro Alves  <palves@redhat.com>
12283
12284         * MAINTAINERS: Remove m88k.
12285         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12286         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12287         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12288         * NEWS: Mention that support for m88k was removed.
12289         * configure.host (m88*-*-*): Remove support.
12290         * configure.nat (m88k-*-*): Remove support.
12291         * configure.tgt (m88*-*-openbsd*): Remove.
12292         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12293
12294 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12295
12296         * configure.tgt (x86_tobjs): New variable.
12297         (amd64_tobjs, i386_tobjs): Use it.
12298
12299 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12300
12301         * symtab.c (print_symbol_info): Precede the symbol definition by
12302         the line number when available.
12303         * NEWS: Advertise this enhancement.
12304
12305 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12306
12307         * NEWS (New options): announce set/show record btrace cpu.
12308         * btrace.c: Include record-btrace.h.
12309         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12310         the vendor is unknown.
12311         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12312         Maybe overwrite the btrace configuration's cpu.
12313         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12314         (btrace_fetch): Add cpu parameter.  Update callers.
12315         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12316         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12317         errata workarounds if the vendor is unknown.
12318         * python/py-record-btrace.c: Include record-btrace.h.
12319         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12320         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12321         * record-btrace.c (record_btrace_cpu_state_kind): New.
12322         (record_btrace_cpu): New.
12323         (set_record_btrace_cpu_cmdlist): New.
12324         (record_btrace_get_cpu): New.
12325         (require_btrace_thread, record_btrace_info)
12326         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12327         (cmd_set_record_btrace_cpu_none): New.
12328         (cmd_set_record_btrace_cpu_auto): New.
12329         (cmd_set_record_btrace_cpu): New.
12330         (cmd_show_record_btrace_cpu): New.
12331         (_initialize_record_btrace): Initialize set/show record btrace cpu
12332         commands.
12333         * record-btrace.h (record_btrace_get_cpu): New.
12334
12335 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12336
12337         * record.c (set_record_command): Fix typo in message.
12338
12339 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12340
12341         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12342
12343 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12344
12345         * infrun.c (process_event_stop_test): Call
12346         gdbarch_in_indirect_branch_thunk.
12347         * gdbarch.sh (in_indirect_branch_thunk): New.
12348         * gdbarch.c: Regenerated.
12349         * gdbarch.h: Regenerated.
12350         * x86-tdep.h: New.
12351         * x86-tdep.c: New.
12352         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12353         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12354         (ALLDEPFILES): Add x86-tdep.c.
12355         * arch-utils.h (default_in_indirect_branch_thunk): New.
12356         * arch-utils.c (default_in_indirect_branch_thunk): New.
12357         * i386-tdep: Include x86-tdep.h.
12358         (i386_in_indirect_branch_thunk): New.
12359         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12360         function.
12361         * amd64-tdep: Include x86-tdep.h.
12362         (amd64_in_indirect_branch_thunk): New.
12363         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12364
12365 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12366
12367         PR gdb/23053
12368         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12369         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12370         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12371         regression.
12372
12373 2018-04-12  Tom Tromey  <tom@tromey.com>
12374
12375         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12376         (rust_evaluate_subexp): Likewise.
12377
12378 2018-04-12  Pedro Alves  <palves@redhat.com>
12379
12380         * procfs.c (procfs_detach): Make forward declaration's prototype
12381         match definition's protototype.
12382         (proc_get_LDT_entry): Remove stale do_cleanups call.
12383
12384 2018-04-12  Pedro Alves  <palves@redhat.com>
12385
12386         * target.h (target_ops::to_has_exited): Delete.
12387         (target_has_exited): Delete.
12388         * target-delegates.c: Regenerate.
12389
12390 2018-04-11  Pedro Alves  <palves@redhat.com>
12391
12392         * target.c (fileio_fh_t::t): Add comment.
12393         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12394         (target_fileio_close): Handle a NULL target.
12395         (invalidate_fileio_fh): New.
12396         (target_close): Call it.
12397         * remote.c (remote_hostio_send_command): No longer check whether
12398         remote_desc is open.
12399
12400 2018-04-11  Pedro Alves  <palves@redhat.com>
12401
12402         * target.c (fileio_fh_t): Make it a named struct instead of a
12403         typedef.
12404         (fileio_fh_t::is_closed): New method.
12405         (DEF_VEC_O (fileio_fh_t)): Remove.
12406         (fileio_fhandles): Now a std::vector.
12407         (is_closed_fileio_fh): Delete.
12408         (acquire_fileio_fd): Adjust.  Rename parameters.
12409         (release_fileio_fd): Adjust.
12410         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12411         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12412         (target_fileio_close): Adjust.
12413
12414 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12415
12416         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12417         index.
12418
12419 2018-04-10  Pedro Alves  <palves@redhat.com>
12420
12421         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12422         (scoped_finish_thread_state): New class.
12423         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12424         cleanup.
12425         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12426         (fetch_inferior_event, normal_stop): Likewise.
12427         * thread.c (finish_thread_state_cleanup): Delete.
12428
12429 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12430             Pedro Alves  <palves@redhat.com>
12431
12432         * value.c: Include "selftest.h" and "common/array-view.h".
12433         (struct range) <operator ==>: New.
12434         (test_ranges_contain): New.
12435         (check_ranges_vector): New.
12436         (test_insert_into_bit_range_vector): New.
12437         (_initialize_values): Register selftests.
12438         * common/array-view.h (operator==, operator!=): New.
12439
12440 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12441
12442         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12443         an iterator.
12444         * inline-frame.c: Include <algorithm>.
12445         (struct inline_state): Add constructor.
12446         (inline_state_s): Remove.
12447         (DEF_VEC_O(inline_state_s)): Remove.
12448         (inline_states): Change type to std::vector.
12449         (find_inline_frame_state): Adjust to std::vector.
12450         (allocate_inline_frame_state): Remove.
12451         (clear_inline_frame_state): Adjust to std::vector.
12452         (skip_inline_frames): Adjust to std::vector.
12453
12454 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12455
12456         * tracepoint.h (struct trace_state_variable): Add constructor.
12457         <name>: Change type to std::string.
12458         * tracepoint.c (tsv_s): Remove.
12459         (DEF_VEC_O(tsv_s)): Remove.
12460         (tvariables): Change to std::vector.
12461         (create_trace_state_variable): Adjust to std::vector.
12462         (find_trace_state_variable): Likewise.
12463         (find_trace_state_variable_by_number): Likewise.
12464         (delete_trace_state_variable): Likewise.
12465         (trace_variable_command): Adjust to std::string.
12466         (delete_trace_variable_command): Likewise.
12467         (tvariables_info_1): Adjust to std::vector.
12468         (save_trace_state_variables): Likewise.
12469         (start_tracing): Likewise.
12470         (merge_uploaded_trace_state_variables): Adjust to std::vector
12471         and std::string.
12472         * target.h (struct target_ops)
12473         <to_download_trace_state_variable>: Pass reference to
12474         trace_state_variable.
12475         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12476         * target-delegates.c: Re-generate.
12477         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12478         (mi_tsv_deleted): Likewise.
12479         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12480         * remote.c (remote_download_trace_state_variable): Change
12481         pointer to reference and adjust.
12482         * make-target-delegates (parse_argtypes): Handle references.
12483         (write_function_header): Likewise.
12484         (munge_type): Likewise.
12485
12486 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12487
12488         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12489         string_view-selftests.c.
12490         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12491         testsuite.
12492         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12493         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12494         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12495         * unittests/basic_string_view/element_access/char/1.cc:
12496         Likewise.
12497         * unittests/basic_string_view/element_access/char/empty.cc:
12498         Likewise.
12499         * unittests/basic_string_view/element_access/char/front_back.cc:
12500         Likewise.
12501         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12502         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12503         Likewise.
12504         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12505         Likewise.
12506         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12507         Likewise.
12508         * unittests/basic_string_view/operations/compare/char/1.cc:
12509         Likewise.
12510         * unittests/basic_string_view/operations/compare/char/13650.cc:
12511         Likewise.
12512         * unittests/basic_string_view/operations/copy/char/1.cc:
12513         Likewise.
12514         * unittests/basic_string_view/operations/data/char/1.cc:
12515         Likewise.
12516         * unittests/basic_string_view/operations/find/char/1.cc:
12517         Likewise.
12518         * unittests/basic_string_view/operations/find/char/2.cc:
12519         Likewise.
12520         * unittests/basic_string_view/operations/find/char/3.cc:
12521         Likewise.
12522         * unittests/basic_string_view/operations/find/char/4.cc:
12523         Likewise.
12524         * unittests/basic_string_view/operations/rfind/char/1.cc:
12525         Likewise.
12526         * unittests/basic_string_view/operations/rfind/char/2.cc:
12527         Likewise.
12528         * unittests/basic_string_view/operations/rfind/char/3.cc:
12529         Likewise.
12530         * unittests/basic_string_view/operations/substr/char/1.cc:
12531         Likewise.
12532         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12533         * unittests/string_view-selftests.c: New file.
12534
12535 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12536
12537         * unittests/basic_string_view/capacity/1.cc: New file.
12538         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12539         * unittests/basic_string_view/cons/char/1.cc: New file.
12540         * unittests/basic_string_view/cons/char/2.cc: New file.
12541         * unittests/basic_string_view/cons/char/3.cc: New file.
12542         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12543         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12544         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12545         * unittests/basic_string_view/element_access/char/1.cc: New file.
12546         * unittests/basic_string_view/element_access/char/2.cc: New file.
12547         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12548         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12549         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12550         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12551         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12552         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12553         * unittests/basic_string_view/include.cc: New file.
12554         * unittests/basic_string_view/inserters/char/1.cc: New file.
12555         * unittests/basic_string_view/inserters/char/2.cc: New file.
12556         * unittests/basic_string_view/inserters/char/3.cc: New file.
12557         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12558         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12559         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12560         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12561         * unittests/basic_string_view/literals/types.cc: New file.
12562         * unittests/basic_string_view/literals/values.cc: New file.
12563         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12564         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12565         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12566         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12567         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12568         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12569         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12570         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12571         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12572         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12573         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12574         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12575         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12576         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12577         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12578         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12579         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12580         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12581         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12582         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12583         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12584         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12585         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12586         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12587         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12588         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12589         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12590         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12591         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12592         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12593         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12594         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12595         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12596         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12597         * unittests/basic_string_view/operators/char/2.cc: New file.
12598         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12599         * unittests/basic_string_view/range_access/char/1.cc: New file.
12600         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12601         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12602         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12603         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12604         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12605         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12606         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12607         * unittests/basic_string_view/typedefs.cc: New file.
12608         * unittests/basic_string_view/types/1.cc: New file.
12609
12610 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12611
12612         * common/gdb_string_view.h: Remove libstdc++ implementation
12613         details, adjust to gdb reality.
12614         * common/gdb_string_view.tcc: Likewise.
12615         * cli/cli-script.c (struct string_view): Remove.
12616         (user_args) <m_args>: Change element type to gdb::string_view.
12617         (user_args::insert_args): Adjust.
12618
12619 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12620
12621         * common/gdb_string_view.h: New file.
12622         * common/gdb_string_view.tcc: New file.
12623
12624 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12625
12626         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12627         * configure: Re-generate.
12628
12629 2018-04-09  Pedro Alves  <palves@redhat.com>
12630
12631         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12632         (set_target_gdbarch): Call
12633         gdb::observers::architecture_changed.notify instead of
12634         observer_notify_architecture_changed.
12635
12636 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12637
12638         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12639         (do_restore_current_traceframe_cleanup): Remove.
12640         (restore_current_traceframe_cleanup_dtor): Remove.
12641         (make_cleanup_restore_current_traceframe): Remove.
12642         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12643         New.
12644         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12645         * infrun.c (fetch_inferior_event): Use
12646         scoped_restore_current_traceframe.
12647
12648 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12649
12650         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12651         Remove.
12652         <n_allocated_type_units>: Remove.
12653         <all_type_units>: Change to std::vector.
12654         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12655         to std::vector change.
12656         (dwarf2_per_objfile::get_cutu): Likewise.
12657         (dwarf2_per_objfile::get_tu): Likewise.
12658         (create_signatured_type_table_from_index): Likewise.
12659         (create_signatured_type_table_from_debug_names): Likewise.
12660         (dw2_symtab_iter_next): Likewise.
12661         (dw2_print_stats): Likewise.
12662         (dw2_expand_all_symtabs): Likewise.
12663         (dw2_expand_marked_cus): Likewise.
12664         (dw2_debug_names_iterator::next): Likewise.
12665         (dwarf2_initialize_objfile): Likewise.
12666         (add_signatured_type_cu_to_table): Likewise.
12667         (create_all_type_units): Likewise.
12668         (add_type_unit): Likewise.
12669         (struct tu_abbrev_offset): Add constructor.
12670         (build_type_psymtabs_1): Adjust to std::vector change.
12671         (print_tu_stats): Likewise.
12672         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12673         (write_debug_names): Likewise.
12674
12675 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12676
12677         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12678         Make an std::vector.
12679         <n_comp_units>: Remove.
12680         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12681         to std::vector change.
12682         (dwarf2_per_objfile::get_cutu): Likewise.
12683         (dwarf2_per_objfile::get_cu): Likewise.
12684         (create_cus_from_index): Likewise.
12685         (create_addrmap_from_index): Likewise.
12686         (create_addrmap_from_aranges): Likewise.
12687         (dwarf2_read_index): Likewise.
12688         (dw2_find_last_source_symtab): Likewise.
12689         (dw2_map_symtabs_matching_filename): Likewise.
12690         (dw2_symtab_iter_next): Likewise.
12691         (dw2_print_stats): Likewise.
12692         (dw2_expand_all_symtabs): Likewise.
12693         (dw2_expand_symtabs_with_fullname): Likewise.
12694         (dw2_expand_marked_cus): Likewise.
12695         (dw2_map_symbol_filenames): Likewise.
12696         (create_cus_from_debug_names): Likewise.
12697         (dwarf2_read_debug_names): Likewise.
12698         (dw2_debug_names_iterator::next): Likewise.
12699         (dwarf2_initialize_objfile): Likewise.
12700         (set_partial_user): Likewise.
12701         (dwarf2_build_psymtabs_hard): Likewise.
12702         (read_comp_units_from_section): Remove arguments, adjust to
12703         std::vector change.
12704         (create_all_comp_units): Adjust to std::vector and
12705         read_comp_units_from_section changes.
12706         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12707         change.
12708         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12709         (psyms_seen_size): Likewise.
12710         (write_gdbindex): Likewise.
12711         (write_debug_names): Likewise.
12712
12713 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12714
12715         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12716         with dwarf2_per_objfile.
12717         (create_cus_from_index): Likewise.
12718         (create_signatured_type_table_from_index): Likewise.
12719         (dwarf2_read_index): Likewise.
12720         (dwarf2_initialize_objfile): Likewise.
12721         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12722         per_cu rather than get_dwarf2_per_objfile.
12723
12724 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12725
12726         * dwarf2read.h (struct signatured_type): Forward declare.
12727         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12728         New methods.
12729         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12730         (dw2_get_cutu): ...this.
12731         (dwarf2_per_objfile::get_cu): Rename from...
12732         (dw2_get_cu): ...this.
12733         (dwarf2_per_objfile::get_tu): New.
12734         (create_addrmap_from_index): Adjust.
12735         (create_addrmap_from_aranges): Adjust.
12736         (dw2_find_last_source_symtab): Adjust.
12737         (dw2_map_symtabs_matching_filename): Adjust.
12738         (dw2_symtab_iter_next): Adjust.
12739         (dw2_print_stats): Adjust.
12740         (dw2_expand_all_symtabs): Adjust.
12741         (dw2_expand_symtabs_with_fullname): Adjust.
12742         (dw2_expand_marked_cus): Adjust.
12743         (dw_expand_symtabs_matching_file_matcher): Adjust.
12744         (dw2_map_symbol_filenames): Adjust.
12745         (dw2_debug_names_iterator::next): Adjust.
12746         (dwarf2_initialize_objfile): Adjust.
12747         (set_partial_user): Adjust.
12748         (dwarf2_build_psymtabs_hard): Adjust.
12749
12750 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12751
12752         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12753         Remove unused variables.
12754         (dw2_map_symtabs_matching_filename): Likewise.
12755         (dwarf2_record_block_ranges): Likewise.
12756         (dwarf2_read_addr_index): Likewise.
12757         (follow_die_offset): Likewise.
12758
12759 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12760
12761         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12762         to symbol_file_add_main.
12763
12764 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12765
12766         PR mi/22299
12767         * mi/mi-console.c (do_fputc_async_safe): New.
12768         (mi_console_file::write_async_safe): New.
12769         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12770         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12771         New.
12772         * ui-file.c (ui_file::putstrn): Adjust call to
12773         fputstrn_unfiltered.
12774         * utils.c (printchar): Replace do_fputs and do_fprintf
12775         parameters by do_fputc.
12776         (fputstr_filtered): Adjust call to printchar.
12777         (fputstr_unfiltered): Likewise.
12778         (fputstrn_filtered): Likewise.
12779         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12780         printchar.
12781         * utils.h (do_fputc_ftype): New typedef.
12782         (fputstrn_unfiltered): Add do_fputc parameter.
12783
12784 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12785
12786         * regformats/i386/i386-avx.dat: Remove.
12787
12788 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12789
12790         PR gdb/22979
12791         * amd64-tdep.c (amd64_none_init_abi): New function.
12792         (amd64_x32_none_init_abi): New function.
12793         (_initialize_amd64_tdep): Register handlers for x86-64 and
12794         x64_32 with GDB_OSABI_NONE.
12795         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12796         GDB_OSABI_NONE osabi.
12797
12798 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12799
12800         PR gdb/22980
12801         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12802         GDB_OSABI_NONE.
12803         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12804         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12805
12806 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12807
12808         * common/byte-vector.h (char_vector): New type.
12809         * target.h (target_read_alloc): Return
12810         gdb::optional<byte_vector>.
12811         (target_read_stralloc): Return gdb::optional<char_vector>.
12812         (target_get_osdata): Return gdb::optional<char_vector>.
12813         * target.c (target_read_alloc_1): Templatize.  Replacement
12814         manual memory management with vector.
12815         (target_read_alloc): Change return type, adjust.
12816         (target_read_stralloc): Change return type, adjust.
12817         (target_get_osdata): Change return type, adjust.
12818         * auxv.c (struct auxv_info) <length>: Remove.
12819         <data>: Change type to gdb::optional<byte_vector>.
12820         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12821         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12822         (target_auxv_search): Adjust.
12823         (fprint_target_auxv): Adjust.
12824         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12825         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12826         (linux_make_corefile_notes): Adjust.
12827         * osdata.c (get_osdata): Adjust.
12828         * remote.c (remote_get_threads_with_qxfer): Adjust.
12829         (remote_memory_map): Adjust.
12830         (remote_traceframe_info): Adjust.
12831         (btrace_read_config): Adjust.
12832         (remote_read_btrace): Adjust.
12833         (remote_pid_to_exec_file): Adjust.
12834         * solib-aix.c (solib_aix_get_library_list): Adjust.
12835         * solib-dsbt.c (decode_loadmap): Don't free buf.
12836         (dsbt_get_initial_loadmaps): Adjust.
12837         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12838         * solib-target.c (solib_target_current_sos): Adjust.
12839         * tracepoint.c (sdata_make_value): Adjust.
12840         * xml-support.c (xinclude_start_include): Adjust.
12841         (xml_fetch_content_from_file): Adjust.
12842         * xml-support.h (xml_fetch_another): Change return type.
12843         (xml_fetch_content_from_file): Change return type.
12844         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12845         * xml-tdesc.c (file_read_description_xml): Adjust.
12846         (fetch_available_features_from_target): Change return type.
12847         (target_fetch_description_xml): Adjust.
12848         (target_read_description_xml): Adjust.
12849
12850 2018-04-06  Tom Tromey  <tom@tromey.com>
12851
12852         * value.c (~value): Update.
12853         (struct value) <contents>: Now unique_xmalloc_ptr.
12854         (value_contents_bits_eq, allocate_value_contents)
12855         (value_contents_raw, value_contents_all_raw)
12856         (value_contents_for_printing, value_contents_for_printing_const)
12857         (set_value_enclosing_type): Update.
12858
12859 2018-04-06  Tom Tromey  <tom@tromey.com>
12860
12861         * value.c (range_s): Remove typedef, VEC.
12862         (struct range): Add operator<.
12863         (range_lessthan): Remove.
12864         (ranges_contain): Change type.
12865         (~value): Update.
12866         (struct value) <unavailable, optimized_out>: Now std::vector.
12867         (value_entirely_available)
12868         (value_entirely_covered_by_range_vector)
12869         (value_entirely_unavailable, value_entirely_optimized_out):
12870         Update.
12871         (insert_into_bit_range_vector): Change argument type.
12872         (find_first_range_overlap): Likewise.
12873         (struct ranges_and_idx, value_contents_bits_eq)
12874         (require_not_optimized_out, require_available): Update.
12875         (ranges_copy_adjusted): Change argument types.
12876         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12877
12878 2018-04-06  Tom Tromey  <tom@tromey.com>
12879
12880         * value.c (~value): Update.
12881         (struct value) <parent>: Now a value_ref_ptr.
12882         (value_parent, set_value_parent, value_address, value_copy):
12883         Update.
12884
12885 2018-04-06  Tom Tromey  <tom@tromey.com>
12886
12887         * value.c (struct value): Add constructor, destructor, and member
12888         initializers.
12889         (allocate_value_lazy, value_decref): Update.
12890
12891 2018-04-06  Tom Tromey  <tom@tromey.com>
12892
12893         * value.c (struct value) <released, next>: Remove.
12894         (all_values): Now a std::vector.
12895         (allocate_value_lazy): Update.
12896         (value_next): Remove.
12897         (value_mark, value_free_to_mark, release_value)
12898         (value_release_to_mark): Update.
12899
12900 2018-04-06  Tom Tromey  <tom@tromey.com>
12901
12902         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12903         (free_value_chain): Remove.
12904         * value.c (free_value_chain): Remove.
12905         (value_release_to_mark): Return a std::vector.
12906         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12907         std::vector.
12908         (check_condition): Update.
12909         * eval.c (fetch_subexp_value): Change "val_chain" to a
12910         std::vector.
12911         * breakpoint.c (update_watchpoint): Update.
12912         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12913
12914 2018-04-06  Tom Tromey  <tom@tromey.com>
12915
12916         * value.h (free_all_values): Remove.
12917         * value.c (free_all_values): Remove.
12918
12919 2018-04-06  Tom Tromey  <tom@tromey.com>
12920
12921         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12922         (value_history_chain, value_history_count): Remove.
12923         (value_history): New global.
12924         (record_latest_value, access_value_history, show_values)
12925         (preserve_values): Update.
12926
12927 2018-04-06  Tom Tromey  <tom@tromey.com>
12928
12929         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12930         * varobj.c (varobj_set_display_format, varobj_set_value)
12931         (install_default_visualizer, construct_visualizer)
12932         (install_new_value, ~varobj, varobj_get_value_type)
12933         (my_value_of_variable, varobj_editable_p): Update.
12934         * c-varobj.c (c_describe_child, c_value_of_variable)
12935         (cplus_number_of_children, cplus_describe_child): Update.
12936         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12937         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12938         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12939
12940 2018-04-06  Tom Tromey  <tom@tromey.com>
12941
12942         * printcmd.c (last_examine_address): Change type to
12943         value_ref_ptr.
12944         (do_examine, x_command): Update.
12945
12946 2018-04-06  Tom Tromey  <tom@tromey.com>
12947
12948         * value.c (release_value): Update.
12949         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12950         (struct bpstats) <val>: Now a value_ref_ptr.
12951         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12952         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12953         (~watchpoint, print_it_watchpoint, watch_command_1)
12954         (invalidate_bp_value_on_memory_change): Update.
12955
12956 2018-04-06  Tom Tromey  <tom@tromey.com>
12957
12958         * varobj.c (varobj_clear_saved_item)
12959         (update_dynamic_varobj_children, install_new_value, ~varobj):
12960         Update.
12961         * value.h (value_incref): Move declaration earlier.
12962         (value_decref): Rename from value_free.
12963         (struct value_ref_policy): New.
12964         (value_ref_ptr): New typedef.
12965         (struct value_deleter): Remove.
12966         (gdb_value_up): Remove typedef.
12967         (release_value): Change return type.
12968         (release_value_or_incref): Remove.
12969         * value.c (set_value_parent): Update.
12970         (value_incref): Change return type.
12971         (value_decref): Rename from value_free.
12972         (value_free_to_mark, free_all_values, free_value_chain): Update.
12973         (release_value): Return value_ref_ptr.
12974         (release_value_or_incref): Remove.
12975         (record_latest_value, set_internalvar, clear_internalvar):
12976         Update.
12977         * stack.c (info_frame_command): Don't call value_free.
12978         * python/py-value.c (valpy_dealloc, valpy_new)
12979         (value_to_value_object): Update.
12980         * printcmd.c (do_examine): Update.
12981         * opencl-lang.c (lval_func_free_closure): Update.
12982         * mi/mi-main.c (register_changed_p): Don't call value_free.
12983         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12984         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12985         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12986         value_free.
12987         * guile/scm-value.c (vlscm_free_value_smob)
12988         (vlscm_scm_from_value): Update.
12989         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12990         (frame_unwind_register_unsigned, get_frame_register_bytes)
12991         (put_frame_register_bytes): Don't call value_free.
12992         * findvar.c (address_from_register): Don't call value_free.
12993         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12994         * dwarf2loc.c (entry_data_value_free_closure)
12995         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12996         (dwarf2_evaluate_loc_desc_full): Update.
12997         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12998         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12999         (~watchpoint, watch_command_1)
13000         (invalidate_bp_value_on_memory_change): Update.
13001         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13002
13003 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13004
13005         PR gdb/23022
13006         * warning.m4: Add -Wno-error=deprecated-register.
13007         * configure: Re-generate.
13008
13009 2018-04-05  Tom Tromey  <tom@tromey.com>
13010
13011         * linespec.h: Remove include of "vec.h".
13012
13013 2018-04-05  Tom Tromey  <tom@tromey.com>
13014
13015         * linespec.c (typep): Remove typedef.
13016         (find_methods, find_superclass_methods): Take a std::vector.
13017         (find_method): Use std::vector.
13018
13019 2018-04-05  Tom Tromey  <tom@tromey.com>
13020
13021         * utils.c (compare_strings): Remove.
13022         * utils.h (compare_strings): Remove.
13023         * objc-lang.h (find_imps): Update.
13024         * objc-lang.c (find_methods): Take a std::vector.
13025         (uniquify_strings, find_imps): Likewise.
13026         * linespec.c (find_methods): Take a std::vector.
13027         (decode_objc): Use std::vector.
13028         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13029         a std::vector.
13030         (find_method, find_function_symbols): Use std::vector.
13031
13032 2018-04-05  Tom Tromey  <tom@tromey.com>
13033
13034         * completer.c (completion_tracker::completion_tracker): Remove
13035         cast.
13036         (completion_tracker::discard_completions): Likewise.
13037         * breakpoint.c (ambiguous_names_p): Remove cast.
13038         * ada-lang.c (_initialize_ada_language): Remove cast.
13039         * utils.h (streq): Update.
13040         (streq_hash): Add new declaration.
13041         * utils.c (streq): Return bool.
13042         (streq_hash): New function.
13043
13044 2018-04-05  Tom Tromey  <tom@tromey.com>
13045
13046         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13047         Remove a string copy.
13048
13049 2018-04-05  Tom Tromey  <tom@tromey.com>
13050
13051         * linespec.c (filter_results): Use std::vector.
13052         (decode_line_2, decode_line_full): Update.
13053
13054 2018-04-05  Tom Tromey  <tom@tromey.com>
13055
13056         * linespec.c (canonical_to_fullform): Return std::string.
13057         (filter_results): Update.
13058         (struct decode_line_2_item): Add constructor.
13059         <fullform, displayform>: Now std::string.
13060         (decode_line_2_compare_items): Now a std::sort comparator.
13061         (decode_line_2): Update.
13062
13063 2018-04-05  Tom Tromey  <tom@tromey.com>
13064
13065         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13066         (unexpected_linespec_error): Update.
13067         (linespec_parse_basic, parse_linespec): Update.
13068
13069 2018-04-05  Tom Tromey  <tom@tromey.com>
13070
13071         * linespec.c (linespec_parse_basic): Reindent.
13072
13073 2018-04-05  Tom Tromey  <tom@tromey.com>
13074
13075         * minsyms.h (iterate_over_minimal_symbols): Update.
13076         * minsyms.c (iterate_over_minimal_symbols): Take a
13077         gdb::function_view.
13078         * linespec.c (struct collect_minsyms): Remove.
13079         (compare_msyms): Now a std::sort comparator.
13080         (add_minsym): Add parameters.
13081         (search_minsyms_for_name): Update.  Use std::vector.
13082
13083 2018-04-03  Tom Tromey  <tom@tromey.com>
13084
13085         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13086         gdb::byte_vector.
13087
13088 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13089
13090         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13091
13092 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13093
13094         PR gdb/16959
13095         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13096         printing static type.
13097
13098 2018-04-01  Tom Tromey  <tom@tromey.com>
13099
13100         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13101         (rs6000_xfer_shared_libraries): Update.
13102
13103 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13104
13105         * common/gdb_vecs.h (char_ptr): Remove.
13106         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13107
13108 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13109
13110         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13111         with std::vector.
13112         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13113
13114 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13115
13116         * tracepoint.h (struct uploaded_tp): Initialize fields.
13117         <actions, step_actions, cmd_strings>: Change type to
13118         std::vector<char *>.
13119         * tracepoint.c (get_uploaded_tp): Allocate with new.
13120         (free_uploaded_tps): Free with delete.
13121         (parse_tracepoint_definition): Adjust to std::vector change.
13122         * breakpoint.c (read_uploaded_action): Likewise.
13123         (create_tracepoint_from_upload): Likewise.
13124         * ctf.c (ctf_write_uploaded_tp): Likewise.
13125         (SET_ARRAY_FIELD): Likewise.
13126         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13127
13128 2018-03-30  Tom Tromey  <tom@tromey.com>
13129
13130         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13131         std::unique_ptr.
13132         (svr4_keep_data_in_core): Update.
13133         (svr4_read_so_list): Update.
13134
13135 2018-03-30  Tom Tromey  <tom@tromey.com>
13136
13137         * windows-nat.c (handle_output_debug_string, handle_exception):
13138         Update.
13139         * target.h (target_read_string): Update.
13140         * target.c (target_read_string): Change "string" to
13141         unique_xmalloc_ptr.
13142         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13143         Update.
13144         * solib-frv.c (frv_current_sos): Update.
13145         * solib-dsbt.c (dsbt_current_sos): Update.
13146         * solib-darwin.c (darwin_current_sos): Update.
13147         * linux-thread-db.c (inferior_has_bug): Update.
13148         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13149         Update.  Remove alloca.
13150         * ada-lang.c (ada_main_name): Update.
13151
13152 2018-03-30  Tom Tromey  <tom@tromey.com>
13153
13154         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13155         (struct dwo_file_deleter): New.
13156         (dwo_file_up): New typedef.
13157         (open_and_init_dwo_file): Use dwo_file_up.
13158         (free_dwo_file_cleanup): Remove.
13159
13160 2018-03-30  Tom Tromey  <tom@tromey.com>
13161
13162         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13163         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13164
13165 2018-03-30  Tom Tromey  <tom@tromey.com>
13166
13167         * dwarf2read.c (class free_cached_comp_units): New class.
13168         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13169         (free_cached_comp_units): Remove function.
13170
13171 2018-03-30  Tom Tromey  <tom@tromey.com>
13172
13173         * utils.h (make_cleanup_unpush_target): Remove.
13174         * inf-ptrace.c (struct target_unpusher): New.
13175         (target_unpush_up) New typedef.
13176         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13177         target_unpush_up.
13178         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13179
13180 2018-03-27  Tom Tromey  <tom@tromey.com>
13181
13182         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13183
13184 2018-03-27  Pedro Alves  <palves@redhat.com>
13185             Tom Tromey  <tom@tromey.com>
13186
13187         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13188         destructor.  Now a class.
13189         (gdb_readline_wrapper_cleanup): Remove function.
13190         (gdb_readline_wrapper): Remove cleanups.
13191
13192 2018-03-27  Tom Tromey  <tom@tromey.com>
13193
13194         * typeprint.h (struct type_print_options) <local_typedefs,
13195         global_typedefs>: Remove "struct" keyword.
13196         (class typedef_hash_table): New class.
13197         (recursively_update_typedef_hash, add_template_parameters)
13198         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13199         (find_typedef_in_hash): Don't declare.
13200         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13201         (typedef_hash_table::recursively_update): Rename from
13202         recursively_update_typedef_hash.  Now a member.
13203         (typedef_hash_table::add_template_parameters): Rename from
13204         add_template_parameters.  Now a member.
13205         (typedef_hash_table::typedef_hash_table): Now a constructor;
13206         rename from create_typedef_hash.
13207         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13208         rename from free_typedef_hash.
13209         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13210         (do_free_global_table): Remove.
13211         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13212         from copy_type_recursive.
13213         (create_global_typedef_table): Remove.
13214         (typedef_hash_table::find_global_typedef): Now a member of
13215         typedef_hash_table.
13216         (typedef_hash_table::find_typedef): Rename from
13217         find_typedef_in_hash; now a member.
13218         (whatis_exp): Update.
13219         * extension.h (struct ext_lang_type_printers): Add constructor and
13220         destructor.
13221         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13222         declare.
13223         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13224         Now a constructor; rename from start_ext_lang_type_printers.
13225         (ext_lang_type_printers): Now a destructor; rename from
13226         free_ext_lang_type_printers.
13227         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13228         Update.
13229         (c_type_print_base_struct_union): Update.  Remove cleanups.
13230
13231 2018-03-27  Tom Tromey  <tom@tromey.com>
13232
13233         * dwarf-index-write.c: Include <cmath>.
13234
13235 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13236
13237         * NEWS: Add entry describing new "set|show varsize-limit" command.
13238         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13239         command.
13240         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13241         "set variable".
13242
13243 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13244
13245         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13246         dwarf-index-write.c
13247         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13248         * dwarf-index-common.c: New file.
13249         * dwarf-index-common.h: New file.
13250         * dwarf-index-write.c: New file.
13251         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13252         (struct dwarf2_section_info): Move from here.
13253         (dwarf2_section_info_def): Likewise.
13254         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13255         (offset_type): Likewise.
13256         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13257         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13258         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13259         (byte_swap): Likewise.
13260         (MAYBE_SWAP): Likewise.
13261         (dwarf2_per_cu_ptr): Likewise.
13262         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13263         (struct tu_stats): Likewise.
13264         (struct dwarf2_per_objfile): Likewise.
13265         (struct dwarf2_per_cu_data): Likewise.
13266         (struct signatured_type): Likewise.
13267         (sig_type_ptr): Likewise.
13268         (DEF_VEC_P (sig_type_ptr)): Likewise.
13269         (INDEX4_SUFFIX): Likewise.
13270         (INDEX5_SUFFIX): Likewise.
13271         (DEBUG_STR_SUFFIX): Likewise.
13272         (dwarf2_read_section): Make non-static.
13273         (mapped_index_string_hash): Move from here.
13274         (dwarf5_djb_hash): Likewise.
13275         (file_write): Likewise.
13276         (class data_buf): Likewise.
13277         (struct symtab_index_entry): Likewise.
13278         (struct mapped_symtab): Likewise.
13279         (find_slot): Likewise.
13280         (hash_expand): Likewise.
13281         (add_index_entry): Likewise.
13282         (uniquify_cu_indices): Likewise.
13283         (class c_str_view): Likewise.
13284         (class c_str_view_hasher): Likewise.
13285         (class vector_hasher): Likewise.
13286         (write_hash_table): Likewise.
13287         (psym_index_map): Likewise.
13288         (struct addrmap_index_data): Likewise.
13289         (add_address_entry): Likewise.
13290         (add_address_entry_worker): Likewise.
13291         (write_address_map): Likewise.
13292         (symbol_kind): Likewise.
13293         (write_psymbols): Likewise.
13294         (struct signatured_type_index_data): Likewise.
13295         (write_one_signatured_type): Likewise.
13296         (recursively_count_psymbols): Likewise.
13297         (recursively_write_psymbols): Likewise.
13298         (class debug_names): Likewise.
13299         (check_dwarf64_offsets): Likewise.
13300         (psyms_seen_size): Likewise.
13301         (write_gdbindex): Likewise.
13302         (write_debug_names): Likewise.
13303         (assert_file_size): Likewise.
13304         (write_psymtabs_to_index): Likewise.
13305         (save_gdb_index_command): Likewise.
13306         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13307         command.
13308         * dwarf2read.h: New file.
13309
13310 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13311
13312         PR gdb/22670
13313         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13314         symbol name if the CU's language stores symbol names in linkage
13315         format.
13316         * language.h (struct language_defn)
13317         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13318         all instances of this struct.
13319
13320 2018-03-26  Tom Tromey  <tom@tromey.com>
13321
13322         * stack.c (backtrace_command_1): Remove verbose code.
13323
13324 2018-03-26  Tom Tromey  <tom@tromey.com>
13325
13326         * python/py-framefilter.c (py_print_type): Don't catch
13327         exceptions.  Return void.
13328         (py_print_value): Likewise.
13329         (py_print_single_arg): Likewise.
13330         (enumerate_args): Don't catch exceptions.
13331         (py_print_args): Likewise.
13332         (py_print_frame): Likewise.
13333         (gdbpy_apply_frame_filter): Catch exceptions here.
13334
13335 2018-03-26  Tom Tromey  <tom@tromey.com>
13336
13337         * stack.c (_initialize_stack): Remove trailing newlines from help
13338         text.  Add "Usage" line to "backtrace" help.
13339
13340 2018-03-26  Tom Tromey  <tom@tromey.com>
13341
13342         PR python/16486:
13343         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13344
13345 2018-03-26  Tom Tromey  <tom@tromey.com>
13346
13347         * python/py-framefilter.c (py_print_single_arg): Return
13348         EXT_LANG_BT_ERROR from catch.
13349
13350 2018-03-26  Tom Tromey  <tom@tromey.com>
13351
13352         PR backtrace/15584:
13353         * stack.c (backtrace_command_1): Move some code into no-filters
13354         "if".
13355
13356 2018-03-26  Tom Tromey  <tom@tromey.com>
13357
13358         * python/py-framefilter.c (throw_quit_or_print_exception): New
13359         function.
13360         (gdbpy_apply_frame_filter): Use it.
13361
13362 2018-03-26  Tom Tromey  <tom@tromey.com>
13363
13364         PR cli/17716:
13365         * python/py-framefilter.c (py_print_type, py_print_value)
13366         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13367         RETURN_MASK_ERROR.
13368
13369 2018-03-26  Tom Tromey  <tom@tromey.com>
13370
13371         * python/py-framefilter.c (enumerate_args): Use
13372         gdb::unique_xmalloc_ptr.
13373
13374 2018-03-26  Tom Tromey  <tom@tromey.com>
13375
13376         * python/py-framefilter.c (py_print_frame): Return
13377         EXT_LANG_BT_OK.
13378         (gdbpy_apply_frame_filter): Update comment.
13379         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13380         Remove.
13381         <EXT_LANG_BT_NO_FILTERS>: Change value.
13382
13383 2018-03-26  Tom Tromey  <tom@tromey.com>
13384
13385         PR backtrace/15582:
13386         * stack.c (backtrace_command): Parse "hide" argument.
13387         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13388         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13389         constant.
13390
13391 2018-03-26  Tom Tromey  <tom@tromey.com>
13392
13393         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13394         add "flags".
13395         (backtrace_command): Remove "fulltrace", add "flags".
13396
13397 2018-03-26  Tom Tromey  <tom@tromey.com>
13398
13399         * stack.c (backtrace_command): Rewrite command line parsing.
13400
13401 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13402
13403         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13404
13405 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13406
13407         * filename-seen-cache.h: Add include guard.
13408
13409 2018-03-26  Keith Seitz  <keiths@redhat.com>
13410
13411         * symfile.c (place_section): Remove "struct" from section_addr_info
13412         in comment.
13413         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13414         "struct" keyword from section_addr_info.
13415
13416 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13417
13418         * regformats/regdef.h (reg): Add constructors.
13419
13420 2018-03-25  Pedro Alves  <palves@redhat.com>
13421
13422         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13423         if then/else bodies in var_func_name extraction.
13424
13425 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13426
13427         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13428         lookup_minimal_symbol() to find symbol entry.
13429         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13430
13431 2018-03-23  Keith Seitz  <keiths@redhat.com>
13432
13433         PR c++/22968
13434         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13435         nested type definitions for C++, too.
13436
13437 2018-03-23  Tom Tromey  <tom@tromey.com>
13438
13439         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13440         a typedef.
13441         (macho_register_oso): Remove.
13442         (macho_symtab_read): Take a std::vector.
13443         (oso_el_compare_name): Now a std::sort comparator.
13444         (macho_symfile_read_all_oso): Take a std::vector.
13445         (macho_symfile_read): Use std::vector.  Remove cleanups.
13446
13447 2018-03-22  Tom Tromey  <tom@tromey.com>
13448
13449         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13450         (record_full_goto_bookmark): Use std::string.
13451
13452 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13453
13454         PR tdep/18295
13455         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13456         a single mask.
13457
13458 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13459
13460         * rs6000-tdep.c (store_insn_p): New function.
13461         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13462         and cr_reg to their unshifted values. Use store_insn_p to
13463         match LR saves using either R1 or fdata->alloca_reg. Use
13464         store_insn_p to match CR saves. Set alloca_reg_offset
13465         when alloca_reg and framep are set. Remove lr_reg shift
13466         when assigning to fdata->lr_register.
13467
13468 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13469
13470         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13471         command line args instead of emitting a warning.
13472
13473 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13474
13475         * tracepoint.h (struct static_tracepoint_marker): Initialize
13476         fields, define default constructor, move constructor and move
13477         assignment, disable the rest.
13478         <str_id, extra>: Make std::string.
13479         (release_static_tracepoint_marker): Remove.
13480         (free_current_marker): Remove.
13481         * tracepoint.c (free_current_marker): Remove.
13482         (parse_static_tracepoint_marker_definition): Adjust to
13483         std::string, use new hex2str overload.
13484         (release_static_tracepoint_marker): Remove.
13485         (print_one_static_tracepoint_marker): Get marker by reference
13486         and adjust to std::string.
13487         (info_static_tracepoint_markers_command): Adjust to std::vector
13488         changes
13489         * target.h (static_tracepoint_marker_p): Remove typedef.
13490         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13491         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13492         bool.
13493         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13494         * target-debug.h
13495         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13496         (target_debug_print_std_vector_static_tracepoint_marker): New.
13497         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13498         to...
13499         (target_debug_print_static_tracepoint_marker_p): ... this.
13500         * target-delegates.c: Re-generate.
13501         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13502         Make std::string.
13503         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13504         (decode_static_tracepoint_spec): Adjust to std::vector.
13505         (tracepoint_print_one_detail): Adjust to std::string.
13506         (strace_marker_decode_location): Adjust to std::string.
13507         (update_static_tracepoint): Adjust to std::string, remove call
13508         to release_static_tracepoint_marker.
13509         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13510         Adjust to std::vector.
13511         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13512         (remote_static_tracepoint_markers_by_strid): Adjust to
13513         std::vector.
13514         * common/rsp-low.h (hex2str): New overload with explicit count
13515         of bytes.
13516         * common/rsp-low.c (hex2str): New overload with explicit count
13517         of bytes.
13518         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13519         (_initialize_rsp_low_selftests): Add test_hex2str test.
13520         * unittests/tracepoint-selftests.c
13521         (test_parse_static_tracepoint_marker_definition): Adjust to
13522         std::string.
13523
13524 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13525
13526         * tracepoint.c (parse_static_tracepoint_marker_definition):
13527         Consider case where the definition is followed by more
13528         definitions.
13529         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13530         tracepoint-selftests.c.
13531         * unittests/tracepoint-selftests.c: New.
13532
13533 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13534
13535         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13536         Carvalho.
13537
13538 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13539
13540         * symtab.c (find_pc_sect_line): fixed indentation.
13541
13542 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13543
13544         * symtab.c (find_pc_sect_line): now uses binary search.
13545
13546 2018-03-19  Tom Tromey  <tom@tromey.com>
13547
13548         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13549         "IDENT" production.
13550
13551 2018-03-19  Pedro Alves  <palves@redhat.com>
13552             Tom Tromey  <tom@tromey.com>
13553
13554         * unittests/observable-selftests.c: New file.
13555         * common/observable.h: New file.
13556         * observable.h: New file.
13557         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13558         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13559         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13560         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13561         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13562         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13563         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13564         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13565         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13566         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13567         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13568         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13569         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13570         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13571         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13572         tui/tui-interp.c, valops.c: Update all users.
13573         * tui/tui-hooks.c (tui_bp_created_observer)
13574         (tui_bp_deleted_observer, tui_bp_modified_observer)
13575         (tui_inferior_exit_observer, tui_before_prompt_observer)
13576         (tui_normal_stop_observer, tui_register_changed_observer):
13577         Remove.
13578         (tui_observers_token): New global.
13579         (attach_or_detach, tui_attach_detach_observers): New functions.
13580         (tui_install_hooks, tui_remove_hooks): Use
13581         tui_attach_detach_observers.
13582         * record-btrace.c (record_btrace_thread_observer): Remove.
13583         (record_btrace_thread_observer_token): New global.
13584         * observer.sh: Remove.
13585         * observer.c: Rename to observable.c.
13586         * observable.c (namespace gdb_observers): Define new objects.
13587         (observer_debug): Move into gdb_observers namespace.
13588         (struct observer, struct observer_list, xalloc_observer_list_node)
13589         (xfree_observer_list_node, generic_observer_attach)
13590         (generic_observer_detach, generic_observer_notify): Remove.
13591         (_initialize_observer): Update.
13592         Don't include observer.inc.
13593         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13594         (clean mostlyclean): Likewise.
13595         (observer.h, observer.inc): Remove targets.
13596         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13597         (COMMON_SFILES): Use observable.c, not observer.c.
13598         * .gitignore: Remove observer.h.
13599
13600 2018-03-18  Tom Tromey  <tom@tromey.com>
13601
13602         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13603         gdb::def_vector.
13604         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13605
13606 2018-03-17  Tom Tromey  <tom@tromey.com>
13607
13608         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13609
13610 2018-03-17  Tom Tromey  <tom@tromey.com>
13611
13612         * target.c (class scoped_target_fd): New.
13613         (target_fileio_close_cleanup): Remove.
13614         (target_fileio_read_alloc_1): Use scoped_target_fd.
13615
13616 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13617
13618         * silent-rules.mk: New.
13619         * Makefile.in: Include silent-rules.mk
13620         (srcdir, VPATH, top_srcdir): Move up.
13621         (COMPILE): Add ECHO_CXX.
13622         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13623         (init.c): Add ECHO_INIT_C.
13624         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13625         (version.c): Add ECHO_GEN.
13626         (printcmd.o): Add ECHO_CXX.
13627         (target-float.o): Add ECHO_CXX.
13628         (ada-exp.o): Add ECHO_CXX.
13629         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13630         (insight$(EXEEXT)): Add ECHO_CXXLD.
13631         * gnulib/configure.ac: Add AM_SILENT_RULES.
13632         * gnulib/aclocal.m4: Re-generate.
13633         * gnulib/configure: Re-generate.
13634         * gnulib/import/Makefile.in: Re-generate.
13635
13636 2018-03-16  Tom Tromey  <tom@tromey.com>
13637
13638         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13639         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13640         * utils.c (do_free_section_addr_info)
13641         (make_cleanup_free_section_addr_info): Remove.
13642         * symfile.h (struct other_sections): Add constructor.
13643         (struct section_addr_info): Remove.
13644         (section_addr_info): New typedef.
13645         (struct sym_fns) <sym_offsets>: Change type of parameter.
13646         (build_section_addr_info_from_objfile)
13647         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13648         (default_symfile_offsets, symbol_file_add)
13649         (symbol_file_add_from_bfd)
13650         (build_section_addr_info_from_section_table): Update.
13651         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13652         * symfile.c (alloc_section_addr_info): Remove.
13653         (build_section_addr_info_from_section_table): Change return type.
13654         Update.
13655         (build_section_addr_info_from_bfd)
13656         (build_section_addr_info_from_objfile): Likewise.
13657         (free_section_addr_info): Remove.
13658         (relative_addr_info_to_section_offsets): Change type of "addrs".
13659         (addrs_section_compar): Now a std::sort comparator.
13660         (addrs_section_sort): Change return type.
13661         (addr_info_make_relative): Change type of "addrs".  Update.
13662         (default_symfile_offsets, syms_from_objfile_1)
13663         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13664         (symbol_file_add_separate): Update.
13665         (symbol_file_add): Change type of "addrs".  Update.
13666         (add_symbol_file_command): Update.  Remove cleanups.
13667         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13668         cleanups.
13669         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13670         * solib.c (solib_read_symbols): Update.
13671         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13672         * machoread.c (macho_symfile_offsets): Update.
13673         * jit.c (jit_bfd_try_read_symtab): Update.
13674
13675 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13676
13677         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13678         unittests/utils-selftests.c.
13679         * unittests/utils-selftests.c: New file.
13680
13681 2018-03-14  Tom Tromey  <tom@tromey.com>
13682
13683         PR cli/14977:
13684         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13685         for NULL.
13686
13687 2018-03-14  Tom Tromey  <tom@tromey.com>
13688
13689         PR cli/19918:
13690         * printcmd.c (printf_pointer): Allow "-" in format.
13691
13692 2018-03-14  Tom Tromey  <tom@tromey.com>
13693
13694         * printcmd.c (_initialize_printcmd): Add usage to printf.
13695
13696 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13697
13698         * MAINTAINERS: Update my email address.
13699
13700 2018-03-13  Tom Tromey  <tom@tromey.com>
13701
13702         * machoread.c (macho_check_dsym): Change filenamep to a
13703         std::string*.
13704         (macho_symfile_read): Update.
13705         * symfile.c (load_command): Use std::string.
13706
13707 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13708
13709         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13710         to error message string.
13711         (riscv_register_name): Use xsnprintf instead of sprintf.
13712         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13713         internal_error.
13714         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13715         error.
13716         (riscv_push_dummy_call): Likewise.
13717
13718 2018-03-12  Tom Tromey  <tom@tromey.com>
13719
13720         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13721         Use gdb::byte_vector.
13722         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13723
13724 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13725
13726         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13727         parameter type to readable_regcache.
13728         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13729         the declaration.
13730
13731 2018-03-11  Tom Tromey  <tom@tromey.com>
13732
13733         * dwarf2read.c (struct nextfield): Add initializers.
13734         (struct nextfnfield): Remove.
13735         (struct fnfieldlist): Add initializers.  Remove "length" and
13736         "head", use std::vector.
13737         (struct decl_field_list): Remove.
13738         (struct field_info): Add initializers.
13739         <fields, baseclasses>: Now std::vector.
13740         <nbaseclasses, nfnfields, typedef_field_list_count,
13741         nested_types_list_count>: Remove.
13742         (dwarf2_add_field, dwarf2_add_type_defn)
13743         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13744         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13745         (process_structure_scope): Update.
13746
13747 2018-03-11  Tom Tromey  <tom@tromey.com>
13748
13749         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13750         for use by std::sort.
13751         (build_type_psymtabs_1): Use std::vector.
13752
13753 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13754
13755         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13756         and LIBMPFR in the printed configuration.
13757
13758 2018-03-08  Tom Tromey  <tom@tromey.com>
13759
13760         * source.c (get_filename_and_charpos): Use scoped_fd.
13761         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13762         (procfs_pidlist): Likewise.
13763         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13764         (iterate_over_mappings): Likewise.
13765
13766 2018-03-08  Tom Tromey  <tom@tromey.com>
13767
13768         * infcall.c (struct call_return_meta_info)
13769         <stack_temporaries_enabled>: Remove.
13770         (get_call_return_value, call_function_by_hand_dummy): Update.
13771         * thread.c (disable_thread_stack_temporaries): Remove.
13772         (enable_thread_stack_temporaries): Remove.
13773         (thread_stack_temporaries_enabled_p): Return bool.
13774         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13775         (get_last_thread_stack_temporary): Update.
13776         * eval.c (evaluate_subexp): Update.
13777         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13778         class, not a function.
13779         (value_ptr, value_vec): Remove typedefs.
13780         (class thread_info) <stack_temporaries_enabled>: Now bool.
13781         <stack_temporaries>: Now a std::vector.
13782         (thread_stack_temporaries_enabled_p)
13783         (value_in_thread_stack_temporaries): Return bool.
13784
13785 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13786
13787         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13788         (getpkt_or_notif_sane_1): Likewise.
13789
13790 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13791
13792         * build-id.c (build_id_to_debug_bfd): Use std::string.
13793
13794 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13795
13796         * build-id.c (find_separate_debug_file_by_buildid): Return
13797         std::string.
13798         * build-id.h (find_separate_debug_file_by_buildid): Return
13799         std::string.
13800         * coffread.c (coff_symfile_read): Adjust to std::string.
13801         * elfread.c (elf_symfile_read): Adjust to std::string.
13802         * symfile.c (separate_debug_file_exists): Change parameter to
13803         std::string.
13804         (find_separate_debug_file): Return std::string.
13805         (find_separate_debug_file_by_debuglink): Return std::string.
13806         * symfile.h (find_separate_debug_file_by_debuglink): Return
13807         std::string.
13808
13809 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13810
13811         * common/xml-utils.c (xml_escape_text): Move code to...
13812         (xml_escape_text_append): ... this new function.
13813         * common/xml-utils.h (xml_escape_text_append): New declaration.
13814         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13815         New function.
13816         (_initialize_xml_utils): register test_xml_escape_text_append as
13817         a selftest.
13818
13819 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13820
13821         * defs.h: Remove MAX_REGISTER_SIZE.
13822         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13823         asserts.
13824         * python/py-unwind.c (pyuw_sniffer): Likewise.
13825
13826 2018-03-07  Tom Tromey  <tom@tromey.com>
13827
13828         * linux-tdep.c (linux_info_proc): Update.
13829         * target.h (struct target_ops) <to_fileio_readlink>: Return
13830         optional<string>.
13831         (target_fileio_readlink): Return optional<string>.
13832         * remote.c (remote_hostio_readlink): Return optional<string>.
13833         * inf-child.c (inf_child_fileio_readlink): Return
13834         optional<string>.
13835         * target.c (target_fileio_readlink): Return optional<string>.
13836
13837 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13838
13839         * regcache.c (cooked_read_test): Add riscv to the list of
13840         architectures that have a save_reggroup.
13841
13842 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13843
13844         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13845         value is not a dynamic class object.
13846
13847 2018-03-06  Tom Tromey  <tom@tromey.com>
13848
13849         * rust-exp.y: Formatting fixes.
13850
13851 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13852
13853         * riscv-tdep.c (riscv_register_name): Remove target description
13854         support.
13855         (riscv_gdbarch_init): Remove target description check.
13856
13857 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13858
13859         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13860         comment.
13861         * riscv-tdep.h: Likewise.
13862
13863 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13864
13865         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13866         (riscv_pseudo_register_write): Delete.
13867         (riscv_gdbarch_init): Remove all use of pseudo registers.
13868
13869 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13870
13871         * record-btrace.c (btrace_print_lines): Replace cleanup
13872         parameter with RAII equivalents.
13873         (btrace_insn_history): Replace cleanup with RAII equivalents.
13874         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13875         make_cleanup_ui_out_tuple_begin_end): Remove.
13876         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13877         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13878         make_cleanup_ui_out_list_begin_end): Remove.
13879
13880 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13881
13882         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13883         parameter types to std::vector.  Use bool.
13884         (record_btrace_wait): Replace VEC(tp_t) with
13885         std::vector<thread_info *>.
13886         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13887
13888 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13889
13890         * record-btrace.c (record_btrace_disable_callback): Remove.
13891         (struct scoped_btrace_disable): New.
13892         (record_btrace_open): Use scoped_btrace_disable.
13893
13894 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13895
13896         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13897         reading values from registers.
13898
13899 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13900
13901         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13902         where appropriate.
13903
13904 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13905
13906         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13907         change parameter type.  Use GDB's print functions, and use
13908         core_addr_to_string where appropriate.
13909         (riscv_push_dummy_call): Use core_addr_to_string where
13910         appropriate, update call to riscv_print_arg_location, and reindent
13911         a few lines.
13912         (riscv_return_value): Update call to riscv_print_arg_location.
13913
13914 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13915             Tim Newsome <tim@sifive.com>
13916             Albert Ou <a0u@eecs.berkeley.edu>
13917             Darius Rad <darius@bluespec.com>
13918
13919         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13920         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13921         (ALLDEPFILES): Add riscv-tdep.c
13922         * configure.tgt: Add riscv support.
13923         * riscv-tdep.c: New file.
13924         * riscv-tdep.h: New file.
13925         * NEWS: Mention new target.
13926         * MAINTAINERS: Add entry for riscv.
13927
13928 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13929
13930         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13931         fields within aggregates.
13932
13933 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13934
13935         * record-btrace.c (btrace_print_lines): Change type of flags to
13936         gdb_disassembly_flags.
13937
13938 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13939
13940         * fbsd-nat.c: Include "inf-ptrace.h".
13941         (USE_SIGTRAP_SIGINFO): Conditionally define.
13942         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13943         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13944         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13945         function.
13946         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13947         Likewise.
13948         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13949         Likewise.
13950         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13951         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13952         "supports_stopped_by_hw_breakpoint" target methods.
13953
13954 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13955
13956         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13957         * fbsd-nat.c (debug_fbsd_nat): New variable.
13958         (show_fbsd_nat_debug): New function.
13959         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13960         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13961
13962 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13963
13964         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13965         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13966         prototype.
13967         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13968         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13969         method.
13970
13971 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13972
13973         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13974         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13975
13976 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13977
13978         * charset.c (struct charset_vector): New.
13979         (charsets): Change type to charset_vector.
13980         (find_charset_names): Adjust.
13981         (add_one): Adjust.
13982         (_initialize_charset): Adjust.
13983
13984 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13985
13986         * progspace.h (struct program_space) <deleted_solibs>: Change
13987         type to std::vector<std::string>.
13988         * progspace.c (clear_program_space_solib_cache): Adjust.
13989         * breakpoint.c (print_solib_event): Adjust.
13990         (check_status_catch_solib): Adjust.
13991         * solib.c (update_solib_list): Adjust.
13992         * ui-out.h (class ui_out) <field_string>: New overload.
13993         * ui-out.c (ui_out::field_string): New overload.
13994
13995 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13996
13997         * progspace.h (struct program_space): Add constructor and
13998         destructor, initialize fields.
13999         (add_program_space): Remove.
14000         * progspace.c (add_program_space): Rename to...
14001         (program_space::program_space): ... this.
14002         (release_program_space): Rename to...
14003         (program_space::~program_space): ... this.
14004         (delete_program_space): Use delete to delete program_space.
14005         (initialize_progspace): Use new to allocate program_space.
14006         * inferior.c (add_inferior_with_spaces): Likewise.
14007         (clone_inferior_command): Likewise.
14008         * infrun.c (follow_fork_inferior): Likewise.
14009         (handle_vfork_child_exec_or_exit): Likewise.
14010
14011 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14012
14013         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14014         (delim_string_to_char_ptr_vec): Return std::vector of
14015         gdb::unique_xmalloc_ptr.
14016         (dirnames_to_char_ptr_vec_append): Take std::vector of
14017         gdb::unique_xmalloc_ptr.
14018         (dirnames_to_char_ptr_vec): Return std::vector of
14019         gdb::unique_xmalloc_ptr.
14020         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14021         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14022         (delim_string_to_char_ptr_vec): Return an std::vector of
14023         gdb::unique_xmalloc_ptr, adjust the code.
14024         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14025         gdb::unique_xmalloc_ptr, adjust the code.
14026         (dirnames_to_char_ptr_vec): Return an std::vector of
14027         gdb::unique_xmalloc_ptr, adjust the code.
14028         * auto-load.c (auto_load_safe_path_vec): Change type to
14029         std::vector of gdb::unique_xmalloc_ptr.
14030         (auto_load_expand_dir_vars): Return an std::vector of
14031         gdb::unique_xmalloc_ptr, adjust the code.
14032         (auto_load_safe_path_vec_update): Adjust.
14033         (filename_is_in_auto_load_safe_path_vec): Adjust.
14034         (auto_load_objfile_script_1): Adjust.
14035         * build-id.c (build_id_to_debug_bfd): Adjust.
14036         * linux-thread-db.c (thread_db_load_search): Adjust.
14037         * source.c (add_path): Adjust.
14038         (openp): Adjust.
14039         * symfile.c (find_separate_debug_file): Adjust.
14040         * utils.c (do_free_char_ptr_vec): Remove.
14041         (make_cleanup_free_char_ptr_vec): Remove.
14042
14043 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14044
14045         PR gdb/22907
14046         * common/pathstuff.c: Conditionally include "<windows.h>".
14047
14048 2018-03-01  Georg Sauthoff  <mail@georg.so>
14049
14050         PR gdb/22888
14051         * gcore.in: Quote variables and switch interpreter to bash.
14052
14053 2018-03-01  Tom Tromey  <tom@tromey.com>
14054
14055         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14056         assertion.  Add assertion for discriminant_index.
14057         (quirk_rust_enum): Use correct base type name in univariant case.
14058
14059 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14060
14061         * record.c (get_call_history_modifiers): Return a
14062         record_print_flags.
14063         (cmd_record_call_history): Adjust.
14064         * record-btrace.c (record_btrace_call_history): Adjust.
14065         (record_btrace_call_history_range): Adjust.
14066         (record_btrace_call_history_from): Adjust.
14067         * target-debug.h (target_debug_print_record_print_flags): New.
14068         * target-delegates.c: Re-generate.
14069         * target.c (target_call_history): Change flags type.
14070         (target_call_history_from): Likewise.
14071         (target_call_history_range): Likewise.
14072         * target.h (struct target_ops) <target_call_history>: Likewise.
14073         (target_call_history_from): Likewise.
14074         (target_call_history_range): Likewise.
14075
14076 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14077             Simon Marchi  <simon.marchi@polymtl.ca>
14078
14079         * common/common-utils.c: Include "sys/stat.h".
14080         (is_regular_file): Move here from "source.c"; change return
14081         type to "bool".
14082         * common/common-utils.h (is_regular_file): New prototype.
14083         * common/pathstuff.c (contains_dir_separator): New function.
14084         * common/pathstuff.h (contains_dir_separator): New prototype.
14085         * source.c: Don't include "sys/stat.h".
14086         (is_regular_file): Move to "common/common-utils.c".
14087
14088 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14089
14090         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14091         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14092         * auto-load.c: Include "common/pathstuff.h".
14093         * common/common-def.h (current_directory): Move here.
14094         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14095         function.
14096         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14097         prototype.
14098         * common/pathstuff.c: New file.
14099         * common/pathstuff.h: New file.
14100         * compile/compile.c: Include "common/pathstuff.h".
14101         * defs.h (current_directory): Move to "common/common-defs.h".
14102         * dwarf2read.c: Include "common/pathstuff.h".
14103         * exec.c: Likewise.
14104         * guile/scm-safe-call.c: Likewise.
14105         * linux-thread-db.c: Likewise.
14106         * main.c: Likewise.
14107         * nto-tdep.c: Likewise.
14108         * objfiles.c: Likewise.
14109         * source.c: Likewise.
14110         * symtab.c: Likewise.
14111         * utils.c: Include "common/pathstuff.h".
14112         (gdb_realpath): Move to "common/pathstuff.c".
14113         (gdb_realpath_keepfile): Likewise.
14114         (gdb_abspath): Likewise.
14115         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14116         (gdb_realpath_keepfile): Likewise.
14117         (gdb_abspath): Likewise.
14118
14119 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14120
14121         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14122         wildcard process pid for super_resume for kernels with a
14123         specific bug.
14124
14125 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14126
14127         * compile/compile.c (get_args): Add additional comments
14128         explaining function.
14129
14130 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14131             Tom Tromey  <tom@tromey.com>
14132
14133         * target.h (memory_write_request_s): Remove typedef.  Don't define
14134         VEC.
14135         (target_write_memory_blocks): Change argument to std::vector.
14136         (struct memory_write_request): Add constructor.
14137         * target-memory.c (compare_block_starting_address): Return bool.
14138         Change argument types.
14139         (claim_memory): Change arguments to use std::vector.
14140         (split_regular_and_flash_blocks, blocks_to_erase)
14141         (compute_garbled_blocks): Likewise.
14142         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14143         (target_write_memory_blocks): Change argument to std::vector.
14144         * symfile.c (struct load_section_data): Add constructor and
14145         destructor.  Use std::vector for "requests".
14146         (struct load_progress_data): Add initializers.
14147         (load_section_callback): Update.  Use "new".
14148         (clear_memory_write_data): Remove.
14149         (generic_load): Update.
14150
14151 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14152
14153         * arch/aarch64.h: Use common/tdesc.h.
14154
14155 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14156
14157         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14158         architecture with a 64-bit ABI.
14159
14160 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14161
14162         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14163         ahead of target description loading.
14164
14165 2018-02-26  Tom Tromey  <tom@tromey.com>
14166
14167         * stack.c (backtrace_command_1): Update.
14168         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14169         of "flags".
14170         * python/py-framefilter.c (py_print_frame)
14171         (gdbpy_apply_frame_filter): Change type of "flags".
14172         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14173         of "flags".
14174         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14175         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14176         * extension.h (enum frame_filter_flag): Rename from
14177         frame_filter_flags.
14178         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14179         (apply_ext_lang_frame_filter): Change type of "flags".
14180         * extension.c (apply_ext_lang_frame_filter): Change type of
14181         "flags".
14182         * extension-priv.h (struct extension_language_ops)
14183         <apply_frame_filter>: Change type of "flags".
14184
14185 2018-02-26  Tom Tromey  <tom@tromey.com>
14186
14187         PR python/16497:
14188         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14189         off-by-one in py_end computation.
14190         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14191         PRINT_MORE_FRAMES.
14192         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14193         constant.
14194
14195 2018-02-26  Tom Tromey  <tom@tromey.com>
14196
14197         * dwarf2read.c (struct variant_field): New.
14198         (struct nextfield) <variant>: New field.
14199         (dwarf2_add_field): Handle DW_TAG_variant_part.
14200         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14201         discriminated union.
14202         (read_structure_type): Handle DW_TAG_variant_part.
14203         (handle_struct_member_die): New function, extracted from
14204         process_structure_scope.  Handle DW_TAG_variant.
14205         (process_structure_scope): Handle discriminated unions.  Call
14206         handle_struct_member_die.
14207
14208 2018-02-26  Tom Tromey  <tom@tromey.com>
14209
14210         * rust-lang.h (rust_last_path_segment): Declare.
14211         * rust-lang.c (rust_last_path_segment): Now public.  Change
14212         contract.
14213         (struct disr_info): Remove.
14214         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14215         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14216         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14217         (rust_enum_p, rust_enum_variant): New function.
14218         (rust_underscore_fields): Remove "offset" parameter.
14219         (rust_print_enum): New function.
14220         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14221         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14222         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14223         enums.
14224         (rust_internal_print_type): New function, from rust_print_type.
14225         Remove enum code.
14226         (rust_print_type): Call rust_internal_print_type.
14227         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14228         Update enum handling.
14229         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14230         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14231         (rust_union_quirks): New functions.
14232         (process_full_comp_unit, process_full_type_unit): Call
14233         rust_union_quirks.
14234         (process_structure_scope): Update rust_unions if necessary.
14235
14236 2018-02-26  Tom Tromey  <tom@tromey.com>
14237
14238         * value.h (value_union_variant): Declare.
14239         * valops.c (value_union_variant): New function.
14240         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14241         (struct discriminant_info): New.
14242         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14243         enumerator.
14244         (struct main_type) <flag_discriminated_union>: New field.
14245
14246 2018-02-26  Tom Tromey  <tom@tromey.com>
14247
14248         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14249         unittests/unpack-selftests.c.
14250         * unittests/unpack-selftests.c: New file.
14251         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14252
14253 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14254
14255         * dwarf2read.c (struct partial_die_info) <read>: New method.
14256         (read_partial_die): Remove the declaration.
14257         (load_partial_dies): Update.
14258         (partial_die_info::partial_die_info):
14259         (read_partial_die): Change it to partial_die_info::read.
14260
14261 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14262
14263         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14264         (fixup_partial_die): Remove declaration.
14265         (scan_partial_symbols): Update.
14266         (partial_die_parent_scope): Likewise.
14267         (partial_die_full_name): Likewise.
14268         (fixup_partial_die): Change it to partial_die_info::fixup.
14269
14270 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14271
14272         * dwarf2read.c (read_partial_die): Update the declaration.
14273         (load_partial_dies): Caller update.
14274         (read_partial_die): Remove one argument abbrev_len.
14275
14276 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14277
14278         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14279         assignment operator.
14280         (load_partial_dies): Use ctor and copy ctor.
14281         (read_partial_die): Update.
14282         (dwarf2_cu::find_partial_die): Use ctor.
14283
14284 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14285
14286         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14287         (find_partial_die_in_comp_unit): Change it to
14288         dwarf2_cu::find_partial_die.
14289         (find_partial_die): Update.
14290
14291 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14292
14293         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14294         is NULL.
14295
14296 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14297
14298         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14299
14300 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14301
14302         * arch/amd64.h: Use common/tdesc.h.
14303         * arch/i386.c: Likewise.
14304         * arch/i386.h: Likewise.
14305         * arch/tic6x.c: Likewise.
14306         * arch/tdesc.h: Move file from here...
14307         * common/tdesc.h: ...to here.
14308         * features/aarch64-core.c: Regenerate.
14309         * features/aarch64-fpu.c: Regenerate.
14310         * features/i386/32bit-avx.c: Regenerate.
14311         * features/i386/32bit-avx512.c: Regenerate.
14312         * features/i386/32bit-core.c: Regenerate.
14313         * features/i386/32bit-linux.c: Regenerate.
14314         * features/i386/32bit-mpx.c: Regenerate.
14315         * features/i386/32bit-pkeys.c: Regenerate.
14316         * features/i386/32bit-sse.c: Regenerate.
14317         * features/i386/64bit-avx.c: Regenerate.
14318         * features/i386/64bit-avx512.c: Regenerate.
14319         * features/i386/64bit-core.c: Regenerate.
14320         * features/i386/64bit-linux.c: Regenerate.
14321         * features/i386/64bit-mpx.c: Regenerate.
14322         * features/i386/64bit-pkeys.c: Regenerate.
14323         * features/i386/64bit-segments.c: Regenerate.
14324         * features/i386/64bit-sse.c: Regenerate.
14325         * features/i386/x32-core.c: Regenerate.
14326         * features/tic6x-c6xp.c: Regenerate.
14327         * features/tic6x-core.c: Regenerate.
14328         * features/tic6x-gp.c: Regenerate.
14329         * target-descriptions.c: Use common/tdesc.h.
14330         * target-descriptions.h: Likewise.
14331
14332 2018-02-24  Tom Tromey  <tom@tromey.com>
14333
14334         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14335         (try_thread_db_load_from_dir, thread_db_load_search): Use
14336         std::string.
14337         (info_auto_load_libthread_db_compare): Return bool.  Change
14338         argument types.
14339         (info_auto_load_libthread_db): Use std::vector, std::string.
14340         Remove cleanups.
14341
14342 2018-02-24  Tom Tromey  <tom@tromey.com>
14343
14344         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14345         std::string.
14346         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14347         std::string*.
14348         * gdbarch.c: Rebuild.
14349         * gdbarch.h: Rebuild.
14350         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14351         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14352         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14353         std::string*.
14354
14355 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14356
14357         * gdbtypes.h (sect_offset): Change type to uint64_t.
14358         (sect_offset_str): New function.
14359         * dwarf2read.c (create_addrmap_from_aranges): Use
14360         sect_offset_str.
14361         (error_check_comp_unit_head): Likewise.
14362         (create_debug_type_hash_table): Likewise.
14363         (read_cutu_die_from_dwo): Likewise.
14364         (init_cutu_and_read_dies): Likewise.
14365         (init_cutu_and_read_dies_no_follow): Likewise.
14366         (process_psymtab_comp_unit_reader): Likewise.
14367         (partial_die_parent_scope): Likewise.
14368         (peek_die_abbrev): Likewise.
14369         (process_queue): Likewise.
14370         (dwarf2_physname): Likewise.
14371         (read_namespace_alias): Likewise.
14372         (read_import_statement): Likewise.
14373         (create_dwo_cu_reader): Likewise.
14374         (create_cus_hash_table): Likewise.
14375         (lookup_dwo_cutu): Likewise.
14376         (inherit_abstract_dies): Likewise.
14377         (read_func_scope): Likewise.
14378         (read_call_site_scope): Likewise.
14379         (dwarf2_add_member_fn): Likewise.
14380         (read_common_block): Likewise.
14381         (read_module_type): Likewise.
14382         (read_typedef): Likewise.
14383         (read_subrange_type): Likewise.
14384         (load_partial_dies): Likewise.
14385         (read_partial_die): Likewise.
14386         (find_partial_die): Likewise.
14387         (read_str_index): Likewise.
14388         (dwarf2_string_attr): Likewise.
14389         (build_error_marker_type): Likewise.
14390         (lookup_die_type): Likewise.
14391         (dump_die_shallow): Likewise.
14392         (follow_die_ref): Likewise.
14393         (dwarf2_fetch_die_loc_sect_off): Likewise.
14394         (dwarf2_fetch_constant_bytes): Likewise.
14395         (follow_die_sig): Likewise.
14396         (get_signatured_type): Likewise.
14397         (get_DW_AT_signature_type): Likewise.
14398         (dwarf2_find_containing_comp_unit): Likewise.
14399         (set_die_type): Likewise.
14400
14401 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14402
14403         * arch/aarch64.c: Include "common-defs.h".
14404         * arch/amd64.c: Likewise.
14405         * arch/i386.c: Likewise.
14406
14407 2018-02-21  Tom Tromey  <tom@tromey.com>
14408
14409         * value.h: (extract_field_op): Update.
14410         * eval.c (extract_field_op): Return a const char *.
14411         * expression.h (parse_expression_for_completion): Update.
14412         * completer.c (complete_expression): Update.
14413         (add_struct_fields): Make fieldname const.
14414         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14415         (mark_completion_tag, parse_exp_in_context_1): Update.
14416         (parse_expression_for_completion): Change "name" to
14417         unique_xmalloc_ptr*.
14418
14419 2018-02-21  Tom Tromey  <tom@tromey.com>
14420
14421         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14422
14423 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14424
14425         * avr-tdep.c (avr_read_pc): Change parameter type to
14426         readable_regcache.
14427         * gdbarch.sh (read_pc): Likewise.
14428         * gdbarch.c: Re-generated.
14429         * gdbarch.h: Re-generated.
14430         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14431         readable_regcache.
14432         * ia64-tdep.c (ia64_read_pc): Likewise.
14433         * mips-tdep.c (mips_read_pc): Likewise.
14434         * spu-tdep.c (spu_read_pc): Likewise.
14435
14436 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14437
14438         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14439         * regcache-dump.c: New file.
14440         * regcache.c: Move register_dump to regcache-dump.c.
14441         (maintenance_print_registers): Likewise.
14442         (maintenance_print_raw_registers): Likewise.
14443         (maintenance_print_cooked_registers): Likewise.
14444         (maintenance_print_register_groups): Likewise.
14445         (maintenance_print_remote_registers): Likewise.
14446         (_initialize_regcache): Likewise.
14447         * regcache.h (register_dump): Moved from regcache.c.
14448
14449 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14450
14451         * regcache.c (regcache::regcache): Update.
14452         (regcache::invalidate): Move it to detached_regcache::invalidate.
14453         (get_thread_arch_aspace_regcache): Update.
14454         (regcache::raw_update): Update.
14455         (regcache::cooked_read): Remove some code.
14456         (regcache::cooked_read_value): Likewise.
14457         (regcache::raw_write): Remove assert on m_readonly_p.
14458         (regcache::raw_supply_integer): Move it to
14459         detached_regcache::raw_supply_integer.
14460         (regcache::raw_supply_zeroed): Likewise.
14461         * regcache.h (detached_regcache) <raw_supply_integer>: New
14462         declaration.
14463         <raw_supply_zeroed, invalidate>: Likewise.
14464         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14465         <invalidate>: Likewise.
14466         <m_readonly_p>: Removed.
14467
14468 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14469
14470         * infcmd.c (get_return_value): Let stop_regs point to
14471         get_current_regcache.
14472         * regcache.c (regcache::regcache): Remove.
14473         (register_dump_reg_buffer): New class.
14474         (regcache_print): Adjust.
14475         * regcache.h (regcache): Remove constructors.
14476
14477 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14478
14479         * regcache.c (class register_dump): New class.
14480         (register_dump_regcache, register_dump_none): New class.
14481         (register_dump_remote, register_dump_groups): New class.
14482         (regcache_print): Update.
14483         * regcache.h (regcache_dump_what): Move it to regcache.c.
14484         (regcache) <dump>: Remove.
14485
14486 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14487
14488         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14489          reg_buffer_rw *.
14490         (jit_unwind_reg_set_impl): Call raw_supply.
14491         (jit_frame_sniffer): Use reg_buffer_rw.
14492         * record-full.c (record_full_core_regbuf): Change its type.
14493         (record_full_core_open_1): Use reg_buffer_rw.
14494         (record_full_close): Likewise.
14495         (record_full_core_fetch_registers): Use regcache->raw_supply.
14496         (record_full_core_store_registers): Likewise.
14497         * regcache.c (regcache::get_register_status): Move it to
14498         reg_buffer.
14499         (regcache_raw_set_cached_value): Remove.
14500         (regcache::raw_set_cached_value): Remove.
14501         (regcache::raw_write): Call raw_supply.
14502         (regcache::raw_supply): Move it to reg_buffer_rw.
14503         * regcache.h (regcache_raw_set_cached_value): Remove.
14504         (reg_buffer_rw): New class.
14505
14506 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14507
14508         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14509         readonly_detached_regcache.
14510         (dummy_frame_prev_register): Use regcache->cooked_read.
14511         * frame.c (frame_save_as_regcache): Change return type.
14512         (frame_pop): Update.
14513         * frame.h (frame_save_as_regcache): Update declaration.
14514         * inferior.h (get_infcall_suspend_state_regcache): Update
14515         declaration.
14516         * infrun.c (infcall_suspend_state) <registers>: use
14517         readonly_detached_regcache.
14518         (save_infcall_suspend_state): Don't use regcache_dup.
14519         (get_infcall_suspend_state_regcache): Change return type.
14520         * linux-fork.c (struct fork_info) <savedregs>: Change to
14521         readonly_detached_regcache.
14522         <pc>: New field.
14523         (fork_save_infrun_state): Don't use regcache_dup.
14524         (info_checkpoints_command): Adjust.
14525         * mi/mi-main.c (register_changed_p): Update declaration.
14526         (mi_cmd_data_list_changed_registers): Use
14527         readonly_detached_regcache.
14528         (register_changed_p): Change parameter type to
14529         readonly_detached_regcache.
14530         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14531         readonly_detached_regcache.
14532         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14533         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14534         New.
14535         (regcache::save): Move it to reg_buffer.
14536         (regcache::restore): Change parameter type.
14537         (regcache_dup): Remove.
14538         * regcache.h (reg_buffer) <save>: New method.
14539         (readonly_detached_regcache): New class.
14540         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14541         readonly_detached_regcache.
14542         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14543
14544 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14545
14546         * frame.c (frame_save_as_regcache): Use regcache method save.
14547         (frame_pop): Use regcache method restore.
14548         * infrun.c (restore_infcall_suspend_state): Likewise.
14549         * linux-fork.c (fork_load_infrun_state): Likewise.
14550         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14551         save.
14552         * regcache.c (regcache_save): Remove.
14553         (regcache::restore): More asserts.
14554         (regcache_cpy): Remove.
14555         * regcache.h (regcache_save): Remove the declaration.
14556         (regcache::restore): Move from private to public.
14557         Remove the friend declaration of regcache_cpy.
14558         (regcache_cpy): Remove declaration.
14559
14560 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14561
14562         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14563         parameter type to 'readable_regcache *'.
14564         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14565         * arm-tdep.c (arm_neon_quad_read): Likewise.
14566         (arm_pseudo_read): Likewise.
14567         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14568         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14569         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14570         * gdbarch.c: Re-generated.
14571         * gdbarch.h: Re-generated.
14572         * gdbarch.sh (pseudo_register_read): Change parameter type to
14573         'readable_regcache *'.
14574         (pseudo_register_read_value): Likewise.
14575         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14576         (h8300_pseudo_register_read): Likewise.
14577         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14578         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14579         (i386_pseudo_register_read_into_value): Likewise.
14580         (i386_pseudo_register_read_value): Likewise.
14581         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14582         declaration.
14583         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14584         * m32c-tdep.c (m32c_raw_read): Likewise.
14585         (m32c_read_flg): Likewise.
14586         (m32c_banked_register): Likewise.
14587         (m32c_banked_read): Likewise.
14588         (m32c_sb_read): Likewise.
14589         (m32c_part_read): Likewise.
14590         (m32c_cat_read): Likewise.
14591         (m32c_r3r2r1r0_read): Likewise.
14592         (m32c_pseudo_register_read): Likewise.
14593         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14594         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14595         (mep_pseudo_cr64_read): Likewise.
14596         (mep_pseudo_register_read): Likewise.
14597         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14598         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14599         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14600         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14601         (regcache::cooked_read): Likewise.
14602         (regcache::cooked_read_value): Likewise.
14603         (regcache_cooked_read_signed):
14604         (regcache::cooked_read): Likewise.
14605         * regcache.h (readable_regcache): New class.
14606         (regcache): Inherit readable_regcache.  Move some methods to
14607         readable_regcache.
14608         * rl78-tdep.c (rl78_pseudo_register_read): Change
14609         parameter type to 'readable_regcache *'.
14610         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14611         (e500_pseudo_register_read): Change parameter type to
14612         'readable_regcache *'.
14613         (dfp_pseudo_register_read): Likewise.
14614         (vsx_pseudo_register_read): Likewise.
14615         (efpr_pseudo_register_read): Likewise.
14616         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14617         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14618         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14619         (sh64_pseudo_register_read): Likewise.
14620         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14621         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14622         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14623         (spu_pseudo_register_read): Likewise.
14624         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14625         (xtensa_pseudo_register_read): Likewise.
14626
14627 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14628
14629         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14630         (regcache::arch): Move it to reg_buffer::arch.
14631         (regcache::register_buffer): Likewise.
14632         (regcache::assert_regnum): Likewise.
14633         (regcache::num_raw_registers): Likewise.
14634         * regcache.h (reg_buffer): New class.
14635         (regcache): Inherit reg_buffer.
14636
14637 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14638
14639         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14640         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14641
14642 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14643
14644         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14645
14646 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14647
14648         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14649         (SFILES): Remove common/*.c files.
14650         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14651         * common/common.host: Add common reference.
14652         * configure.ac: Likewise.
14653         * configure: Regenerate.
14654
14655 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14656
14657         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14658         (block_initialize_namespace): Use new.
14659         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14660         (dwarf2_free_objfile): Use delete.
14661         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14662         (copy_type_recursive): Use new.
14663         * gdb_obstack.h (allocate_on_obstack): New.
14664
14665 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14666
14667         PR gdb/22849
14668         * inferior.c (exit_inferior_1): Reset inf->control.
14669
14670 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14671
14672         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14673         declaration.
14674
14675 2018-02-14  Pedro Alves  <palves@redhat.com>
14676
14677         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14678         frame_cleanup_after_sniffer on exception.
14679
14680 2018-02-14  Tom Tromey  <tom@tromey.com>
14681
14682         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14683         const.
14684         (solib_bfd_open): Make pathname const.
14685         * solib.c (solib_bfd_open): Make pathname const.
14686         * solib-spu.c (spu_bfd_fopen): Make name const.
14687         (spu_bfd_open): Make pathname const.
14688         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14689         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14690
14691 2018-02-14  Tom Tromey  <tom@tromey.com>
14692
14693         * symfile.c (symfile_bfd_open): Update.
14694         * source.h (openp, source_full_path_of, find_and_open_source):
14695         Change argument type to unique_xmalloc_ptr.
14696         * source.c (openp): Take a unique_xmalloc_ptr.
14697         (source_full_path_of, find_and_open_source): Likewise.
14698         (open_source_file, symtab_to_fullname): Update.
14699         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14700         unique_xmalloc_ptr.
14701         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14702         (exec_file_find): Update.
14703         * psymtab.c (psymtab_to_fullname): Update.
14704         * nto-tdep.h (nto_find_and_open_solib): Update.
14705         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14706         unique_xmalloc_ptr.
14707         * exec.c (exec_file_attach): Update.
14708         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14709         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14710
14711 2018-02-14  Tom Tromey  <tom@tromey.com>
14712
14713         * solib.c: Include source.h.
14714         * nto-tdep.c: Include source.h.
14715         * mi/mi-cmd-env.c: Include source.h.
14716         * infcmd.c: Include source.h.
14717         * exec.c: Include source.h.
14718         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14719         (add_path, directory_switch, source_path, init_source_path): Move
14720         declarations...
14721         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14722         (add_path, directory_switch, source_path, init_source_path):
14723         ...here.
14724
14725 2018-02-14  Tom Tromey  <tom@tromey.com>
14726
14727         * solist.h (exec_file_find, solib_find): Return
14728         unique_xmalloc_ptr.
14729         (solib_bfd_fopen): Take a const char *.
14730         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14731         (exec_file_find, solib_find): Likewise.
14732         (solib_bfd_fopen): Do not take ownership of "pathname".
14733         (solib_bfd_open): Use unique_xmalloc_ptr.
14734         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14735         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14736         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14737         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14738
14739 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14740
14741         * ada-lang.c (name_match_type_from_name): Remove reference to
14742         ada_name_for_lookup in function's documentation.
14743         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14744
14745 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14746
14747         * defs.h (enum openp_flags): New enum.
14748         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14749         Move to enum openp_flags.
14750         (openp_flags): New enum flags.
14751         (openp): Change parameter type to openp_flags.
14752         * source.c (openp): Change parameter type to openp_flags.
14753         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14754         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14755
14756 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14757
14758         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14759         per-command.
14760
14761 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14762
14763         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14764         into...
14765         (class dwarf2_queue_guard): ...the destructor of this new class.
14766         (dw2_do_instantiate_symtab): Create instance of the new class
14767         dwarf2_queue_guard, remove cleanup.
14768
14769 2018-02-09  Tom Tromey  <tom@tromey.com>
14770
14771         * source.c (find_source_lines): Don't reference past the end of
14772         the vector.
14773
14774 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14775
14776         * remote.c (remote_btrace_maybe_reopen): Change error message.
14777         * btrace.c (btrace_enable): Likewise.
14778         (parse_xml_btrace): Likewise.
14779         (parse_xml_btrace_conf): Likewise.
14780
14781 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14782
14783         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14784         (linux_enable_pt, linux_enable_bts): Call
14785         diagnose_perf_event_open_fail.
14786
14787 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14788
14789         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14790         Remove parameter and change return type.  Update callers.  Move it.
14791         (linux_enable_bts, linux_enable_pt): Improve error message.
14792         (linux_enable_pt): Remove zero buffer size check.
14793         (linux_enable_btrace): Improve error messages.  Remove NULL return
14794         check.
14795
14796 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14797
14798         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14799         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14800         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14801         (linux_supports_pt, linux_supports_btrace): Remove.
14802         (linux_enable_bts): Call cpu_supports_bts.
14803         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14804         * remote.c (remote_supports_btrace): Remove.
14805         (init_remote_ops): Remove remote_supports_btrace.
14806         * target-delegates.c: Regenerated.
14807         * target.c (target_supports_btrace): Remove.
14808         * target.h (target_ops) <to_supports_btrace>: Remove
14809         (target_supports_btrace): Remove.
14810         * x86-linux-nat.c (x86_linux_create_target): Remove
14811         linux_supports_btrace.
14812
14813 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14814
14815         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14816         btrace failed.
14817         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14818         exception and use message in own exception.
14819
14820 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14821
14822         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14823         (perf_event_pt_event_type): Use gdb_file_up.
14824         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14825         scoped_fd, and scoped_mmap.
14826
14827 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14828
14829         * common/scoped_mmap.h: New.
14830         * unittests/scoped_mmap-selftest.c: New.
14831         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14832         unittests/scoped_mmap-selftest.c.
14833
14834 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14835
14836         * common/scoped_fd.h: New.
14837         * unittests/scoped_fd-selftest.c: New.
14838         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14839         unittests/scoped_fd-selftest.c.
14840
14841 2018-02-09  Tom Tromey  <tom@tromey.com>
14842
14843         * auto-load.c (auto_load_section_scripts): Use
14844         gdb::unique_xmalloc_ptr.
14845
14846 2018-02-09  Tom Tromey  <tom@tromey.com>
14847
14848         * auto-load.c (execute_script_contents): Use std::string.
14849
14850 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14851
14852         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14853         Python function, rather than a new command.
14854
14855 2018-02-08  Tom Tromey  <tom@tromey.com>
14856
14857         * solib.c (solib_find_1): Use std::string.
14858         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14859
14860 2018-02-08  Tom Tromey  <tom@tromey.com>
14861
14862         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14863
14864 2018-02-08  Tom Tromey  <tom@tromey.com>
14865
14866         * source.c (find_source_lines): Use gdb::def_vector.
14867
14868 2018-02-08  Tom Tromey  <tom@tromey.com>
14869
14870         * macrocmd.c (struct temporary_macro_definition): New.
14871         (macro_define_command): Use temporary_macro_definition.  Remove
14872         cleanups.
14873         (free_macro_definition_ptr): Remove.
14874
14875 2018-02-08  Tom Tromey  <tom@tromey.com>
14876
14877         * macroexp.c (maybe_expand): Use std::string.
14878
14879 2018-02-08  Tom Tromey  <tom@tromey.com>
14880
14881         * macroexp.c (struct macro_buffer): Add initializers for some
14882         members.
14883         (init_buffer, init_shared_buffer, free_buffer)
14884         (free_buffer_return_text): Remove.
14885         (macro_buffer): New constructors.
14886         (~macro_buffer): New destructor.
14887         (macro_buffer::set_shared): New method.
14888         (macro_buffer::resize_buffer, macro_buffer::appendc)
14889         (macro_buffer::appendmem): Now methods, not free functions.
14890         (set_token, append_tokens_without_splicing, stringify)
14891         (macro_stringify): Update.
14892         (gather_arguments): Change return type.  Remove argc_p argument,
14893         add args_ptr argument.  Use std::vector.
14894         (substitute_args): Remove argc argument.  Accept std::vector.
14895         (expand): Update.  Use std::vector.
14896         (scan, macro_expand, macro_expand_next): Update.
14897
14898 2018-02-08  Tom Tromey  <tom@tromey.com>
14899
14900         * symtab.c (default_collect_symbol_completion_matches_break_on):
14901         Use unique_xmalloc_ptr.
14902         * macroscope.h: (sal_macro_scope, user_macro_scope)
14903         (default_macro_scope): Return unique_xmalloc_ptr.
14904         * macroscope.c (sal_macro_scope, user_macro_scope)
14905         (default_macro_scope): Return unique_xmalloc_ptr.
14906         * macroexp.h (macro_expand, macro_expand_once): Return
14907         unique_xmalloc_ptr.
14908         * macroexp.c (macro_expand, macro_expand_once): Return
14909         unique_xmalloc_ptr.
14910         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14911         (info_macro_command, info_macros_command): Use
14912         unique_xmalloc_ptr.
14913         * compile/compile-c-support.c (write_macro_definitions): Use
14914         unique_xmalloc_ptr.
14915         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14916
14917 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14918
14919         * value.c (value_static_field): Assign field type instead of
14920         containing type when returning an optimized out value.
14921
14922 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14923
14924         * ft32-tdep.c (ft32_read_pc): Remove.
14925         (ft32_write_pc): Remove.
14926         (ft32_gdbarch_init): Update.
14927         * m32r-tdep.c (m32r_read_pc): Remove.
14928         (m32r_gdbarch_init): Update.
14929         * mep-tdep.c (mep_read_pc): Remove.
14930         (mep_gdbarch_init): Update.
14931         * microblaze-tdep.c (microblaze_write_pc): Remove.
14932         (microblaze_gdbarch_init): Update.
14933         * mn10300-tdep.c (mn10300_read_pc): Remove.
14934         (mn10300_write_pc): Remove.
14935         (mn10300_gdbarch_init): Update.
14936         * moxie-tdep.c (moxie_read_pc): Remove.
14937         (moxie_write_pc): Remove.
14938         (moxie_gdbarch_init): Update.
14939
14940 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14941
14942         * expprint.c (print_subexp_standard): Handle
14943         OP_F77_UNDETERMINED_ARGLIST.
14944         (dump_subexp_body_standard): Likewise.
14945
14946 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14947
14948         * target-descriptions.c (tdesc_element_visitor) Add empty
14949         implementations.
14950         (tdesc_type): Move make_gdb_type from here.
14951         (tdesc_type_builtin): Likewise.
14952         (tdesc_type_vector): Likewise.
14953         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14954         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14955         (make_gdb_type_union): Likewise.
14956         (make_gdb_type_flags): Likewise.
14957         (make_gdb_type_enum): Likewise.
14958         (make_gdb_type): New function.
14959         (tdesc_register_type): Use static make_gdb_type.
14960
14961 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14962
14963         * infcmd.c (default_print_one_register_info): Align natural-format
14964         column values consistently one under another.
14965         (pad_to_column): New function.
14966
14967 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14968
14969         * dwarf2read.c (dwarf2_physname): Move commment.
14970
14971 2018-02-01  Leszek Swirski  <leszeks@google.com>
14972
14973         * varobj.c (varobj_formatted_print_options): Allow recursive
14974         pretty printing if pretty printing is enabled.
14975
14976 2018-02-01  Leszek Swirski  <leszeks@google.com>
14977
14978         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14979         names after a structop as a filename.
14980
14981 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14982
14983         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14984         (arm_record_coproc_data_proc): Likewise.
14985
14986 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14987
14988         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14989
14990 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14991
14992         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14993         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14994
14995 2018-01-31  Pedro Alves  <palves@redhat.com>
14996
14997         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14998         * inflow.c (child_terminal_save_inferior): Wrap reference to
14999         tcgetpgrp in HAVE_TERMIOS_H.
15000         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15001         _WIN32.
15002         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15003         always iterate over all inferiors.
15004         (gdbsim_cntrl_c): Adjust.
15005         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15006
15007 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15008
15009         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15010         index type is objfile-owned if the element type is as well.
15011
15012 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15013
15014         GDB 8.1 released.
15015
15016 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15017
15018         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15019         "features/s390x-linux64.c".
15020         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15021         s390_linux32 and s390x_linux64.
15022         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15023         default tdesc.
15024         * s390-tdep.c: Include "features/s390-linux32.c" and
15025         "features/s390x-linux64.c".
15026         (s390_tdesc_valid): Add check for tdesc_has_registers.
15027         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15028         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15029         tdesc_s390x_linux64.
15030         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15031         tdesc_s390x_linux64 to...
15032         * s390-tdep.h: ...here.
15033
15034 2018-01-30  Pedro Alves  <palves@redhat.com>
15035
15036         PR gdb/13211
15037         * config.in, configure: Regenerate.
15038         * configure.ac: Check for getpgid.
15039         * go32-nat.c (go32_pass_ctrlc): New.
15040         (go32_target): Install it.
15041         * inf-child.c (inf_child_target): Install
15042         child_terminal_save_inferior, child_pass_ctrlc and
15043         child_interrupt.
15044         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15045         (inf_ptrace_target): No longer install it.
15046         * infcmd.c (interrupt_target_1): Adjust.
15047         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15048         (child_interrupt): Declare.
15049         (inferior::terminal_state): New.
15050         * inflow.c (struct terminal_info): Update comments.
15051         (inferior_process_group): Delete.
15052         (terminal_is_ours): Delete.
15053         (gdb_tty_state): New.
15054         (child_terminal_init): Adjust.
15055         (is_gdb_terminal, sharing_input_terminal_1)
15056         (sharing_input_terminal): New functions.
15057         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15058         Set the process's actual process group in the foreground if
15059         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15060         mark terminal as the inferior's if not sharing GDB's terminal.
15061         Don't check attach_flag.
15062         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15063         pass down a target_terminal_state.
15064         (child_terminal_save_inferior): New, factored out from ...
15065         (child_terminal_ours_1): ... this.  Handle
15066         target_terminal_state::is_ours_for_output.
15067         (child_interrupt, child_pass_ctrlc): New.
15068         (inflow_inferior_exit): Clear the inferior's terminal_state.
15069         (copy_terminal_info): Copy the inferior's terminal state.
15070         (_initialize_inflow): Remove reference to terminal_is_ours.
15071         * inflow.h (inferior_process_group): Delete.
15072         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15073         * procfs.c (procfs_target): Don't install procfs_interrupt.
15074         (procfs_interrupt): Delete.
15075         * remote.c (remote_serial_quit_handler): Adjust.
15076         (remote_interrupt): Remove ptid parameter.  Adjust.
15077         * target-delegates.c: Regenerate.
15078         * target.c: Include "terminal.h".
15079         (target_terminal::terminal_state): Rename to ...
15080         (target_terminal::m_terminal_state): ... this.
15081         (target_terminal::init): Adjust.
15082         (target_terminal::inferior): Adjust to per-inferior
15083         terminal_state.
15084         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15085         (target_terminal::ours, target_terminal::ours_for_output): Use
15086         target_terminal_is_ours_kind.
15087         (target_interrupt): Remove ptid parameter.  Adjust.
15088         (default_target_pass_ctrlc): Adjust.
15089         * target.h (target_ops::to_terminal_save_inferior): New field.
15090         (target_ops::to_interrupt): Remove ptid_t parameter.
15091         (target_interrupt): Remove ptid_t parameter.  Update comment.
15092         (target_pass_ctrlc): Update comment.
15093         * target/target.h (target_terminal_state): New scoped enum,
15094         factored out of ...
15095         (target_terminal::terminal_state): ... here.
15096         (target_terminal::inferior): Update comments.
15097         (target_terminal::restore_inferior): New.
15098         (target_terminal::is_inferior, target_terminal::is_ours)
15099         (target_terminal::is_ours_for_output): Adjust.
15100         (target_terminal::scoped_restore_terminal_state): Adjust to
15101         rename, and call restore_inferior() instead of inferior().
15102         (target_terminal::scoped_restore_terminal_state::m_state): Change
15103         type.
15104         (target_terminal::terminal_state): Rename to ...
15105         (target_terminal::m_terminal_state): ... this and change type.
15106
15107 2018-01-30  Pedro Alves  <palves@redhat.com>
15108
15109         * linux-nat.c (wait_for_signal): New function.
15110         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15111         directly.
15112         (async_terminal_is_ours)
15113         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15114         (linux_nat_add_target): Don't override
15115         to_terminal_inferior/to_terminal_ours.
15116
15117 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15118
15119         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15120
15121 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15122
15123         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15124         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15125         dwarf2_per_objfile_free here.
15126         (dwarf2_per_objfile_free): Remove.
15127         (_initialize_dwarf2_read): Don't register
15128         dwarf2_per_objfile_free as a registry cleanup.
15129
15130 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15131
15132         Avoid compilation errors in MinGW native builds
15133
15134         The error is triggered by including python-internal.h, and the
15135         error message is:
15136
15137              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15138                       from build-gnulib/import/math.h:27,
15139                       from d:/usr/Python26/include/pyport.h:235,
15140                       from d:/usr/Python26/include/Python.h:58,
15141                       from python/python-internal.h:94,
15142                       from python/py-arch.c:24:
15143              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15144         using ::hypot;
15145                 ^~~~~
15146
15147         This happens because Python headers define 'hypot' to expand t
15148         '_hypot' in the Windows builds.
15149         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15150         'hypoth'.  This avoids a compilation error.
15151
15152 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15153
15154         * MAINTAINERS (Write After Approval): Fix ordering.
15155
15156 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15157
15158         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15159
15160 2018-01-26  Alan Modra  <amodra@gmail.com>
15161
15162         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15163         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15164         Remove nop.  Make const.  Comment.
15165         (powerpc32_plt_stub_so_2): New.
15166         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15167         Correct count.  Update uses.
15168         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15169         Move common code reading PLT entry word.  Correct
15170         powerpc32_plt_stub PLT address calculation.
15171         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15172         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15173         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15174         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15175         (ppc64_standard_linkage8): Likewise.
15176         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15177         Correct insns description.
15178         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15179
15180 2018-01-24  Pedro Alves  <palves@redhat.com>
15181
15182         GCC PR libstdc++/83906
15183         * gdbtypes.c (operator==(const dynamic_prop &,
15184         const dynamic_prop &)): New.
15185         (operator==(const range_bounds &, const range_bounds &)): New.
15186         (check_types_equal): Use them instead of memcmp.
15187         * gdbtypes.h (operator==(const dynamic_prop &,
15188         const dynamic_prop &)): Declare.
15189         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15190         (operator==(const range_bounds &, const range_bounds &)): Declare.
15191         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15192
15193 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15194
15195         * s390-linux-tdep.c (s390_record_address_mask)
15196         (s390_record_calc_disp_common, s390_record_calc_disp)
15197         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15198         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15199         (s390_process_record): Move to s390-tdep.c.
15200         (s390_linux_init_abi_any): Adjust.
15201         * s390-tdep.c (s390_record_address_mask)
15202         (s390_record_calc_disp_common, s390_record_calc_disp)
15203         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15204         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15205         (s390_process_record): Moved from s390-linux-tdep.c
15206         (s390_gdbarch_init): Adjust.
15207
15208 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15209
15210         * s390-linux-nat.c (s390-tdep.h): New include.
15211         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15212         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15213         (ALLDEPFILES): Add s390-tdep.c.
15214         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15215         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15216         * s390-tdep.h: ...this.  New file.
15217         * s390-linux-tdep.c (s390-tdep.h): New include.
15218         (_initialize_s390_tdep): Rename to...
15219         (_initialize_s390_linux_tdep): ...this and adjust.
15220         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15221         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15222         s390-tdep.h.
15223         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15224         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15225         (s390_is_partial_instruction, s390_software_single_step)
15226         (is_non_branch_ril, s390_displaced_step_copy_insn)
15227         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15228         (s390_prologue_data, s390_addr, s390_store, s390_load)
15229         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15230         (s390_register_call_saved, s390_guess_tracepoint_registers)
15231         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15232         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15233         (s390_pseudo_register_name, s390_pseudo_register_type)
15234         (s390_pseudo_register_read, s390_pseudo_register_write)
15235         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15236         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15237         (s390_addr_bits_remove, s390_address_class_type_flags)
15238         (s390_address_class_type_flags_to_name)
15239         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15240         (s390_function_arg_float, s390_function_arg_vector)
15241         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15242         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15243         (s390_frame_align, s390_register_return_value, s390_return_value)
15244         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15245         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15246         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15247         (s390_trad_frame_prev_register, s390_unwind_cache)
15248         (s390_prologue_frame_unwind_cache)
15249         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15250         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15251         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15252         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15253         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15254         (s390_frame_base_address, s390_local_base_address)
15255         (s390_frame_base, s390_gcc_target_options)
15256         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15257         (s390_validate_reg_range, s390_tdesc_valid)
15258         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15259         * s390-tdep.c: ...this.  New file.
15260
15261 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15262
15263         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15264         (s390_process_record, s390_gdbarch_tdep_alloc)
15265         (s390_linux_init_abi_any): Use/set new hook.
15266
15267 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15268
15269         * s390-linux-tdep.c (osabi.h): New include.
15270         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15271         (s390_linux_init_abi_any): New functions.
15272         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15273
15274 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15275
15276         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15277         tdesc_has_registers check
15278
15279 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15280
15281         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15282         (s390_validate_reg_range): New macro.
15283         (s390_gdbarch_init): Adjust.
15284
15285 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15286
15287         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15288         (s390_gdbarch_tdep_alloc): Adjust.
15289         (s390_gdbarch_init): Adjust.
15290
15291 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15292
15293         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15294         <have_tdb>: Change type to bool.
15295         (s390_gdbarch_tdep_alloc): Adjust.
15296         (s390_gdbarch_init): Adjust.
15297
15298 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15299
15300         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15301         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15302         (s390_gdbarch_tdep_alloc): New function.
15303         (s390_gdbarch_init): Allocate tdep at start and use its fields
15304         instead of separate variables.
15305
15306 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15307
15308         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15309         when looking for cached gdbarch and add comment for remaining.
15310
15311 2018-01-22  Pedro Alves  <palves@redhat.com>
15312             Sergio Durigan Junior  <sergiodj@redhat.com>
15313
15314         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15315         case.
15316
15317 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15318
15319         * MAINTAINERS: Update my company e-mail address.
15320
15321 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15322
15323         * regcache.c (cooked_write_test): New function.
15324         (_initialize_regcache): Register the test.
15325
15326 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15327
15328         * ia64-tdep.c (ia64_pseudo_register_read): Call
15329         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15330         * m32c-tdep.c (m32c_cat_read): Likewise.
15331         (m32c_r3r2r1r0_read): Likewise.
15332         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15333         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15334
15335 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15336
15337         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15338         method raw_read instead of regcache_raw_read.
15339         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15340         * arm-tdep.c (arm_neon_quad_read): Likewise.
15341         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15342         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15343         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15344         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15345         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15346         (i386_pseudo_register_read_into_value): Likewise.
15347         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15348         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15349         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15350         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15351         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15352         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15353         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15354         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15355         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15356
15357 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15358
15359         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15360         * configure.tgt: Remove target mt.
15361         * mt-tdep.c: Remove.
15362         * regcache.c (cooked_read_test): Remove the check for mt.
15363
15364 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15365
15366         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15367         instead of gdbarch_pseudo_register_read_value.
15368
15369 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15370
15371         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15372         language is Ada.
15373
15374 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15375
15376         * linespec.c (create_sals_line_offset): Remove code that preserved
15377         the symtab_and_line's line number.
15378
15379 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15380
15381         * varobj.c (varobj_create): Don't set valid_block when creating a
15382         floating varobj.
15383
15384 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15385
15386         * varobj.c (varobj_create): Remove out of date comment.
15387
15388 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15389
15390         PR mi/20395
15391         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15392         updating innermost block.
15393         * parse.c (innermost_block_tracker::update): Take extra type
15394         parameter, and check types match before updating innermost block.
15395         (write_dollar_variable): Update innermost block for registers.
15396         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15397         (innermost_block_tracker::innermost_block_tracker): Initialise
15398         m_types member.
15399         (innermost_block_tracker::reset): Take type parameter.
15400         (innermost_block_tracker::update): Take type parameter, and pass
15401         type through as needed.
15402         (innermost_block_tracker::m_types): New member.
15403         * varobj.c (varobj_create): Pass type when reseting innermost
15404         block.
15405
15406 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15407
15408         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15409         * ada-lang.c (resolve_subexp): Likewise.
15410         * breakpoint.c (set_breakpoint_condition) Likewise.
15411         (watch_command_1) Likewise.
15412         * c-exp.y (variable): Likewise.
15413         * d-exp.y (PrimaryExpression): Likewise.
15414         * f-exp.y (variable): Likewise.
15415         * go-exp.y (variable): Likewise.
15416         * m2-exp.y (variable): Likewise.
15417         * objfiles.c (objfile::~objfile): Likewise.
15418         * p-exp.y (variable): Likewise.
15419         * parse.c (innermost_block): Change type.
15420         * parser-defs.h (class innermost_block_tracker): New.
15421         (innermost_block): Change to innermost_block_tracker.
15422         * printcmd.c (display_command): Switch to innermost_block API.
15423         (do_one_display): Likewise.
15424         * rust-exp.y (do_one_display): Likewise.
15425         * symfile.c (clear_symtab_users): Likewise.
15426         * varobj.c (varobj_create): Switch to innermost_block API, replace
15427         use of innermost_block with block stored on varobj object.
15428
15429 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15430
15431         * expression.h (innermost_block): Remove declaration.
15432         * varobj.c: Add 'parser-defs.h' include.
15433
15434 2018-01-19  Tom Tromey  <tom@tromey.com>
15435
15436         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15437         symbols in the static and global blocks.
15438
15439 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15440
15441         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15442         gdb_ptrace.h, and move including gdb_wait.h ...
15443         * nat/linux-ptrace.h: ... to here.
15444
15445 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15446
15447         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15448         inf_ptrace_detach_success.
15449         (inf_ptrace_detach_success): Add inferior parameter, use it
15450         instead of inferior_ptid, pass it to detach_inferior.
15451         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15452         parameter.
15453         * inferior.c (detach_inferior): Add overload that takes an
15454         inferior object.
15455         * inferior.h (detach_inferior): Likewise.
15456         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15457         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15458         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15459
15460 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15461
15462         * target.h (struct target_ops) <to_detach>: Add inferior
15463         parameter.
15464         (target_detach): Likewise.
15465         * target.c (dispose_inferior): Pass inferior down.
15466         (target_detach): Pass inferior down.  Assert that it is equal to
15467         the current inferior.
15468         * aix-thread.c (aix_thread_detach): Pass inferior down.
15469         * corefile.c (core_file_command): Pass current_inferior() down.
15470         * corelow.c (core_detach): Add inferior parameter.
15471         * darwin-nat.c (darwin_detach): Likewise.
15472         * gnu-nat.c (gnu_detach): Likewise.
15473         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15474         * infcmd.c (detach_command): Pass current_inferior() down to
15475         target_detach.
15476         * infrun.c (follow_fork_inferior): Pass parent_inf to
15477         target_detach.
15478         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15479         target_detach.
15480         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15481         * linux-thread-db.c (thread_db_detach): Likewise.
15482         * nto-procfs.c (procfs_detach): Likewise.
15483         * procfs.c (procfs_detach): Likewise.
15484         * record.c (record_detach): Likewise.
15485         * record.h (struct inferior): Forward-declare.
15486         (record_detach): Add inferior parameter.
15487         * remote-sim.c (gdbsim_detach): Likewise.
15488         * remote.c (remote_detach_1): Likewise.
15489         (remote_detach): Likewise.
15490         (extended_remote_detach): Likewise.
15491         * sol-thread.c (sol_thread_detach): Likewise.
15492         * target-debug.h (target_debug_print_inferior_p): New macro.
15493         * target-delegates.c: Re-generate.
15494         * top.c (kill_or_detach): Pass inferior down to target_detach.
15495         * windows-nat.c (windows_detach): Add inferior parameter.
15496
15497 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15498
15499         * target.h (struct target_ops) <to_detach>: Remove args
15500         parameter.
15501         (target_detach): Likewise.
15502         * target.c (dispose_inferior): Adjust.
15503         (target_detach): Remove args parameter, adjust.
15504         * aix-thread.c (aix_thread_detach): Adjust.
15505         * corefile.c (core_file_command): Adjust.
15506         * corelow.c (core_detach): Adjust.
15507         * darwin-nat.c (darwin_detach): Adjust.
15508         * gnu-nat.c (gnu_detach): Adjust.
15509         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15510         * infcmd.c (detach_command): Adjust
15511         * infrun.c (follow_fork_inferior): Adjust.
15512         (handle_vfork_child_exec_or_exit): Adjust.
15513         * linux-fork.c (linux_fork_detach): Remove args parameter.
15514         * linux-fork.h (linux_fork_detach): Likewise.
15515         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15516         * linux-thread-db.c (thread_db_detach): Likewise.
15517         * nto-procfs.c (procfs_detach): Likewise.
15518         * procfs.c (procfs_detach): Likewise.
15519         (do_detach): Remove signo parameter.
15520         * record.c (record_detach): Remove args parameter.
15521         * record.h (record_detach): Likewise.
15522         * remote-sim.c (gdbsim_detach): Likewise.
15523         * remote.c (remote_detach_1): Likewise.
15524         (remote_detach): Likewise.
15525         (extended_remote_detach): Likewise.
15526         * sol-thread.c (sol_thread_detach): Likewise.
15527         * target-delegates.c: Re-generate.
15528         * top.c (struct qt_args) <args>: Remove field.
15529         (kill_or_detach): Don't pass args.
15530         (quit_force): Don't set args.
15531         * windows-nat.c (windows_detach): Remove args parameter.
15532
15533 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15534
15535         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15536         (arm_linux_init_abi): Install it.
15537
15538 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15539
15540         * osabi.c (gdb_osabi_names): Extend the regexp for
15541         arm-linux-gnueabihf.
15542
15543 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15544
15545         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15546         m_abbrevs.
15547         (abbrev_table::add_abbrev): Update.
15548         (abbrev_table::lookup_abbrev): Update.
15549
15550 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15551
15552         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15553
15554 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15555
15556         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15557         to "std::string".
15558
15559 2018-01-17  Tom Tromey  <tom@tromey.com>
15560
15561         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15562
15563 2018-01-17  Tom Tromey  <tom@tromey.com>
15564
15565         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15566         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15567         (create_array_type_with_stride): Update.
15568         * dwarf2read.c (set_die_type): Update.
15569
15570 2018-01-17  Tom Tromey  <tom@tromey.com>
15571
15572         * dwarf2read.c (delayed_method_info): Remove typedef.
15573         (dwarf2_cu::method_info): Now a std::vector.
15574         (add_to_method_list): Update.
15575         (free_delayed_list): Remove.
15576         (compute_delayed_physnames): Update.
15577         (process_full_comp_unit, process_full_type_unit): Clear the method
15578         list.  Remove cleanups.
15579         (psymtab_include_file_name): Add name_holder parameter.  Use
15580         unique_xmalloc_ptr.
15581         (dwarf_decode_lines): Update.
15582
15583 2018-01-17  Tom Tromey  <tom@tromey.com>
15584             Simon Marchi  <simon.marchi@ericsson.com>
15585
15586         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15587         (dwarf2_per_objfile::free_cached_comp_units)
15588         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15589         (init_cutu_and_read_dies_no_follow): Update.
15590         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15591         (dwarf2_cu::~dwarf2_cu): New.
15592         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15593         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15594
15595 2018-01-17  Tom Tromey  <tom@tromey.com>
15596             Simon Marchi  <simon.marchi@ericsson.com>
15597
15598         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15599         (struct die_reader_specs) <abbrev_table>: New member.
15600         (struct abbrev_table): Add constructor.
15601         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15602         <abbrev_obstack>: Now an auto_obstack.
15603         (abbrev_table_up): New typedef.
15604         (init_cu_die_reader): Add abbrev_table parameter.
15605         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15606         Add result_dwo_abbrev_table.
15607         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15608         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15609         Update.
15610         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15611         parameter.
15612         (skip_children): Update.
15613         (abbrev_table::alloc_abbrev): Rename from
15614         abbrev_table_alloc_abbrev.
15615         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15616         (abbrev_table::lookup_abbrev): Rename from
15617         abbrev_table_lookup_abbrev.
15618         (abbrev_table_read_table): Return abbrev_table_up.
15619         (abbrev_table_free, abbrev_table_free_cleanup)
15620         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15621         (load_partial_dies): Update.
15622
15623 2018-01-17  Tom Tromey  <tom@tromey.com>
15624
15625         * dwarf2read.c (dwarf2_compute_name): Update comment.
15626         (read_func_scope, read_variable): Update.
15627         (new_symbol): Remove.
15628         (new_symbol_full): Rename to new_symbol.
15629
15630 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15631
15632         PR gdb/16577
15633         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15634         a warning instead of throwing an error, set section size to 0 and return
15635         NULL.
15636         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15637
15638 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15639
15640         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15641         std::string.
15642         (linux_ptrace_attach_fail_reason_string): Likewise.
15643         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15644         Likewise.
15645         (linux_ptrace_attach_fail_reason_string): Likewise.
15646         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15647
15648 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15649
15650         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15651
15652 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15653
15654         PR gdb/21559
15655         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15656         checking for fs_base/gs_base fields in struct user_regs_struct.
15657         * configure: Regenerate.
15658
15659 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15660
15661         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15662         function.
15663         (aarch64_linux_init_abi): Install it to gdbarch hook
15664         gcc_target_options.
15665
15666 2018-01-15  Pedro Alves  <palves@redhat.com>
15667
15668         * common/signals-state-save-restore.c
15669         (save_original_signals_state): Fix typos.
15670
15671 2017-01-12  Tom Tromey  <tom@tromey.com>
15672             Sergio Durigan Junior  <sergiodj@redhat.com>
15673
15674         * Makefile.in (install-only): Install gdb-add-index.
15675
15676 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15677
15678         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15679
15680 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15681
15682         * infrun.c (keep_going_pass_signal): Clear step-over info when
15683         insert_breakpoints fails.
15684
15685 2018-01-11  Pedro Alves  <palves@redhat.com>
15686
15687         PR gdb/22583
15688         * infrun.c (resume): Rename to ...
15689         (resume_1): ... this.
15690         (resume): Reimplement as wrapper around resume_1.
15691
15692 2018-01-11  Pedro Alves  <palves@redhat.com>
15693
15694         PR remote/22597
15695         * remote.c (remote_parse_stop_reply): Default to the last-set
15696         general thread instead of to 'magic_null_ptid'.
15697
15698 2018-01-10  Pedro Alves  <palves@redhat.com>
15699
15700         * language.h (language_get_symbol_name_matcher): Rename ...
15701         (get_symbol_name_matcher): ... this.
15702         * language.c (language_get_symbol_name_matcher): Ditto.
15703         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15704         callers adjusted.
15705
15706 2018-01-10  Pedro Alves  <palves@redhat.com>
15707
15708         PR gdb/22670
15709         * dwarf2read.c
15710         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15711         Adjust to use language_get_symbol_name_matcher instead of
15712         language_defn::la_get_symbol_name_matcher.
15713         * language.c (language_get_symbol_name_matcher): If in Ada mode
15714         and the lookup name is a verbatim match, return Ada's matcher.
15715         * language.h (language_get_symbol_name_matcher): Adjust comment.
15716         (ada_lookup_name_info::verbatim_p):: New method.
15717
15718 2018-01-10  Pedro Alves  <palves@redhat.com>
15719
15720         PR gdb/22670
15721         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15722         minsym's language is language_auto or language_cplus, pass down
15723         language_ada instead.
15724         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15725
15726 2018-01-10  Pedro Alves  <palves@redhat.com>
15727
15728         PR gdb/22670
15729         * minsyms.c (linkage_name_str): New function.
15730         (iterate_over_minimal_symbols): Use it.
15731
15732 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15733
15734         * NEWS: Document that 'info proc' now works on FreeBSD.
15735
15736 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15737
15738         * configure.ac: Check for kinfo_getfile in libutil.
15739         * configure: Regenerate.
15740         * config.in: Regenerate.
15741         * fbsd-nat.c: Include "fbsd-tdep.h".
15742         (fbsd_fetch_cmdline): New.
15743         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15744         rather than calling error.
15745         (fbsd_info_proc): New.
15746         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15747         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15748         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15749
15750 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15751
15752         * fbsd-nat.c (struct free_deleter): Remove.
15753         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15754
15755 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15756
15757         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15758         NULL for an empty pathname.
15759
15760 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15761
15762         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15763         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15764         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15765         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15766         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15767         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15768         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15769         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15770         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15771         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15772         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15773         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15774         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15775         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15776         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15777
15778 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15779
15780         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15781         (gnu_xfer_auxv): New function.
15782         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15783         TARGET_OBJECT_AUXV.
15784
15785 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15786             Simon Marchi  <simon.marchi@ericsson.com>
15787
15788         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15789         common/selftest.c.
15790         (COMMON_OBS): Remove selftest.o.
15791         * configure.ac: Append selftest-arch.c and common/selftest.c to
15792         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15793         * configure: Re-generated.
15794         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15795         GDB_SELF_TEST.
15796         (maintenance_info_selftests): Likewise.
15797
15798 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15799
15800         * ada-valprint.c (val_print_packed_array_elements): Use
15801         proper number of elements when printing an array indexed
15802         by an enumeration type.
15803
15804 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15805
15806         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15807         (dw2_get_file_names_reader): Adjust.
15808         (lookup_dwo_signatured_type): Adjust.
15809         (lookup_dwp_signatured_type): Adjust.
15810         (lookup_signatured_type): Adjust.
15811         (create_type_unit_group): Adjust.
15812         (get_type_unit_group): Adjust.
15813         (process_psymtab_comp_unit_reader): Adjust.
15814         (build_type_psymtabs_reader): Adjust.
15815         (scan_partial_symbols): Adjust.
15816         (add_partial_symbol): Adjust.
15817         (add_partial_subprogram): Adjust.
15818         (peek_die_abbrev): Adjust.
15819         (fixup_go_packaging): Adjust.
15820         (process_imported_unit_die): Adjust.
15821         (dwarf2_compute_name): Adjust.
15822         (dwarf2_physname): Adjust.
15823         (read_import_statement): Adjust.
15824         (handle_DW_AT_stmt_list): Adjust.
15825         (read_file_scope): Adjust.
15826         (read_func_scope): Adjust.
15827         (read_lexical_block_scope): Adjust.
15828         (read_call_site_scope): Adjust.
15829         (read_variable): Adjust.
15830         (dwarf2_rnglists_process): Adjust.
15831         (dwarf2_ranges_process): Adjust.
15832         (dwarf2_ranges_read): Adjust.
15833         (dwarf2_get_pc_bounds): Adjust.
15834         (dwarf2_record_block_ranges): Adjust.
15835         (dwarf2_add_field): Adjust.
15836         (dwarf2_add_member_fn): Adjust.
15837         (read_structure_type): Adjust.
15838         (process_structure_scope): Adjust.
15839         (read_enumeration_type): Adjust.
15840         (read_array_type): Adjust.
15841         (mark_common_block_symbol_computed): Adjust.
15842         (read_common_block): Adjust.
15843         (read_namespace_type): Adjust.
15844         (read_namespace): Adjust.
15845         (read_module_type): Adjust.
15846         (read_tag_pointer_type): Adjust.
15847         (read_tag_ptr_to_member_type): Adjust.
15848         (read_tag_string_type): Adjust.
15849         (read_subroutine_type): Adjust.
15850         (read_typedef): Adjust.
15851         (read_base_type): Adjust.
15852         (attr_to_dynamic_prop): Adjust.
15853         (read_subrange_type): Adjust.
15854         (read_unspecified_type): Adjust.
15855         (dwarf2_read_abbrevs): Adjust.
15856         (load_partial_dies): Adjust.
15857         (read_partial_die): Adjust.
15858         (find_partial_die): Adjust.
15859         (guess_partial_die_structure_name): Adjust.
15860         (fixup_partial_die): Adjust.
15861         (read_attribute_value): Adjust.
15862         (read_addr_index): Adjust.
15863         (read_addr_index_from_leb128): Adjust.
15864         (read_str_index): Adjust.
15865         (dwarf2_string_attr): Adjust.
15866         (get_debug_line_section): Adjust.
15867         (dwarf_decode_line_header): Adjust.
15868         (lnp_state_machine::check_line_address): Adjust.
15869         (dwarf_decode_lines_1): Adjust.
15870         (dwarf_decode_lines): Adjust.
15871         (dwarf2_start_symtab): Adjust.
15872         (var_decode_location): Adjust.
15873         (new_symbol_full): Adjust.
15874         (dwarf2_const_value_data): Adjust.
15875         (dwarf2_const_value_attr): Adjust.
15876         (dwarf2_const_value): Adjust.
15877         (die_type): Adjust.
15878         (die_containing_type): Adjust.
15879         (build_error_marker_type): Adjust.
15880         (lookup_die_type): Adjust.
15881         (guess_full_die_structure_name): Adjust.
15882         (anonymous_struct_prefix): Adjust.
15883         (determine_prefix): Adjust.
15884         (dwarf2_name): Adjust.
15885         (follow_die_ref_or_sig): Adjust.
15886         (follow_die_offset): Adjust.
15887         (follow_die_ref): Adjust.
15888         (follow_die_sig_1): Adjust.
15889         (follow_die_sig): Adjust.
15890         (get_signatured_type): Adjust.
15891         (get_DW_AT_signature_type): Adjust.
15892         (decode_locdesc): Adjust.
15893         (dwarf_decode_macros): Adjust.
15894         (cu_debug_loc_section): Adjust.
15895         (fill_in_loclist_baton): Adjust.
15896         (dwarf2_symbol_mark_computed): Adjust.
15897         (init_one_comp_unit): Don't assign
15898         dwarf2_cu::dwarf2_per_objfile.
15899         (set_die_type): Adjust.
15900
15901 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15902
15903         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15904         <dwarf2_per_objfile>: New field.
15905         (dwarf2_per_objfile): Remove global.
15906         (get_dwarf2_per_objfile): New function.
15907         (set_dwarf2_per_objfile): New function.
15908         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15909         dwarf2_per_objfile.
15910         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15911         (read_abbrev_offset): Likewise.
15912         (read_indirect_string): Likewise.
15913         (read_indirect_line_string): Likewise.
15914         (read_indirect_string_at_offset): Likewise.
15915         (read_indirect_string_from_dwz): Likewise.
15916         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15917         dwarf2_per_objfile.
15918         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15919         (create_all_comp_units): Change objfile parameter to
15920         dwarf2_per_objfile.
15921         (create_all_type_units): Likewise.
15922         (process_queue): Add dwarf2_per_objfile parameter.
15923         (read_and_check_comp_unit_head): Likewise.
15924         (lookup_dwo_unit_in_dwp): Likewise.
15925         (get_dwp_file): Likewise.
15926         (process_cu_includes): Likewise.
15927         (struct free_dwo_file_cleanup_data): New struct.
15928         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15929         set_dwarf2_per_objfile.
15930         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15931         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15932         context, adjust calls.
15933         (dw2_instantiate_symtab): Likewise.
15934         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15935         (dw2_get_cu): Likewise.
15936         (create_cu_from_index_list): Change objfile parameter to
15937         dwarf2_per_objfile.
15938         (create_cus_from_index_list): Get dwarf2_per_objfile from
15939         context, adjust calls.
15940         (create_cus_from_index): Likewise.
15941         (create_signatured_type_table_from_index): Change objfile
15942         parameter to dwarf2_per_objfile.
15943         (create_signatured_type_table_from_debug_names): Change objfile
15944         parameter to dwarf2_per_objfile.
15945         (create_addrmap_from_index): Likewise.
15946         (create_addrmap_from_aranges): Likewise.
15947         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15948         (dw2_setup): Remove.
15949         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15950         context.
15951         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15952         get_dwarf2_per_objfile.
15953         (dw2_forget_cached_source_info): Likewise.
15954         (dw2_map_symtabs_matching_filename): Likewise.
15955         (struct dw2_symtab_iterator) <index>: Remove.
15956         <dwarf2_per_objfile>: New field.
15957         (dw2_symtab_iter_init): Replace index parameter with
15958         dwarf2_per_objfile.
15959         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15960         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15961         (dw2_print_stats): Likewise.
15962         (dw2_dump): Likewise.
15963         (dw2_expand_symtabs_for_function): Likewise.
15964         (dw2_expand_all_symtabs): Likewise.
15965         (dw2_expand_symtabs_with_fullname): Likewise.
15966         (dw2_expand_marked_cus): Replace index and objfile parameters
15967         with dwarf2_per_objfile.
15968         (dw_expand_symtabs_matching_file_matcher): Add
15969         dwarf2_per_objfile parameter and adjust calls.
15970         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15971         adjust calls.
15972         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15973         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15974         adjust calls.
15975         (create_cus_from_debug_names_list): Replace objfile parameter
15976         with dwarf2_per_objfile and adjust calls.
15977         (create_cus_from_debug_names): Likewise.
15978         (dwarf2_read_debug_names): Likewise.
15979         (mapped_debug_names::namei_to_name): Adjust call.
15980         (dw2_debug_names_iterator::next): Likewise.
15981         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15982         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15983         (dw2_debug_names_dump): Likewise.
15984         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15985         (dw2_debug_names_expand_symtabs_matching): Likewise.
15986         (dwarf2_initialize_objfile): Likewise.
15987         (dwarf2_build_psymtabs): Likewise.
15988         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15989         this_cu.
15990         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15991         (read_and_check_comp_unit_head): Likewise.
15992         (read_abbrev_offset): Likewise.
15993         (create_debug_type_hash_table): Likewise.
15994         (create_debug_types_hash_table): Likewise.
15995         (create_all_type_units): Replace objfile parameter with
15996         dwarf2_per_objfile.
15997         (add_type_unit): Add dwarf2_per_objfile parameter.
15998         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15999         with dwarf2_per_objfile.
16000         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16001         (lookup_dwp_signatured_type): Likewise.
16002         (lookup_signatured_type): Likewise.
16003         (read_cutu_die_from_dwo): Likewise.
16004         (init_tu_and_read_dwo_dies): Likewise.
16005         (init_cutu_and_read_dies): Likewise.
16006         (init_cutu_and_read_dies_no_follow): Likewise.
16007         (allocate_type_unit_groups_table): Add objfile parameter.
16008         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16009         (get_type_unit_group): Likewise.
16010         (process_psymtab_comp_unit): Update call.
16011         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16012         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16013         (print_tu_stats): Likewise.
16014         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16015         in void* parameter.
16016         (build_type_psymtabs): Change objfile parameter to
16017         dwarf2_per_objfile.
16018         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16019         passed in void* parameter.
16020         (process_skeletonless_type_units): Change objfile parameter to
16021         dwarf2_per_objfile.
16022         (set_partial_user): Likewise.
16023         (dwarf2_build_psymtabs_hard): Likewise.
16024         (read_comp_units_from_section): Likewise.
16025         (create_all_comp_units): Likewise.
16026         (scan_partial_symbols): Update calls.
16027         (add_partial_symbol): Likewise.
16028         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16029         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16030         (process_queue): Add dwarf2_per_objfile parameter.
16031         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16032         (compute_compunit_symtab_includes): Likewise.
16033         (process_cu_includes): Add dwarf2_per_objfile parameter.
16034         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16035         (process_full_type_unit): Likewise.
16036         (process_imported_unit_die): Update call.
16037         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16038         (read_file_scope): Likewise.
16039         (allocate_dwo_file_hash_table): Add objfile parameter.
16040         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16041         (create_cus_hash_table): Likewise.
16042         (create_dwp_hash_table): Likewise.
16043         (create_dwo_unit_in_dwp_v1): Likewise.
16044         (create_dwp_v2_section): Likewise.
16045         (create_dwo_unit_in_dwp_v2): Likewise.
16046         (lookup_dwo_unit_in_dwp): Likewise.
16047         (try_open_dwop_file): Likewise.
16048         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16049         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16050         cleanup to include a reference to dwarf2_per_objfile.
16051         (open_dwp_file): Add dwarf2_per_objfile parameter.
16052         (open_and_init_dwp_file): Likewise.
16053         (get_dwp_file): Likewise.
16054         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16055         (queue_and_load_all_dwo_tus): Update call.
16056         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16057         data.
16058         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16059         (dwarf2_ranges_process): Likewise.
16060         (dwarf2_get_pc_bounds): Likewise.
16061         (mark_common_block_symbol_computed): Likewise.
16062         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16063         (dwarf2_read_abbrevs): Update call.
16064         (read_partial_die): Use dwarf2_per_objfile from cu.
16065         (find_partial_die): Likewise.
16066         (fixup_partial_die): Likewise.
16067         (read_attribute_value): Likewise.
16068         (read_indirect_string_at_offset_from): Add objfile parameter.
16069         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16070         parameter.
16071         (read_indirect_string_from_dwz): Add objfile parameter.
16072         (read_indirect_string): Add objfile parameter.
16073         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16074         (read_addr_index): Use dwarf2_per_objfile from cu.
16075         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16076         call dw2_setup.
16077         (read_str_index): Use dwarf2_per_objfile from cu.
16078         (get_debug_line_section): Likewise.
16079         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16080         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16081         (new_symbol_full): Use dwarf2_per_objfile from cu.
16082         (build_error_marker_type): Likewise.
16083         (lookup_die_type): Likewise.
16084         (determine_prefix): Likewise.
16085         (follow_die_offset): Likewise.
16086         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16087         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16088         (dwarf2_fetch_die_type_sect_off): Likewise.
16089         (dwarf2_get_die_type): Likewise.
16090         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16091         (get_signatured_type): Likewise.
16092         (get_DW_AT_signature_type): Likewise.
16093         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16094         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16095         (cu_debug_loc_section): Likewise.
16096         (fill_in_loclist_baton): Likewise.
16097         (dwarf2_symbol_mark_computed): Likewise.
16098         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16099         dwarf2_per_objfile.
16100         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16101         parameter.
16102         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16103         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16104         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16105         (set_die_type): Use dwarf2_free_objfile from cu.
16106         (get_die_type_at_offset): Likewise.
16107         (dwarf2_per_objfile_free): Don't assign global variable.
16108         (debug_names) <constructor>: Add dwarf2_per_objfile
16109         parameter, update m_debugstrlookup construction.
16110         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16111         parameter.
16112         <m_dwarf2_per_objfile>: New field.
16113         <lookup>: Use m_dwarf2_per_objfile.
16114         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16115         (psyms_seen_size): Likewise.
16116         (write_gdbindex): Replace objfile parameter with
16117         dwarf2_per_objfile.
16118         (write_debug_names): Likewise.
16119         (write_psymtabs_to_index): Likewise.
16120         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16121         calls.
16122
16123 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16124
16125         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16126         <dwarf2_per_objfile>: New field.
16127         (struct dwarf2_per_cu_data) <objfile>: Remove.
16128         <dwarf2_per_objfile>: New field.
16129         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16130         of objfile.
16131         (create_signatured_type_table_from_index): Likewise.
16132         (create_debug_type_hash_table): Likewise.
16133         (fill_in_sig_entry_from_dwo_entry): Likewise.
16134         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16135         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16136         objfile.
16137         (create_partial_symtab): Access objfile through
16138         dwarf2_per_objfile.
16139         (process_psymtab_comp_unit_reader): Likewise.
16140         (read_comp_units_from_section): Likewise.
16141         (scan_partial_symbols): Likewise.
16142         (add_partial_symbol): Likewise.
16143         (add_partial_subprogram): Likewise.
16144         (peek_die_abbrev): Likewise.
16145         (fixup_go_packaging): Likewise.
16146         (process_full_comp_unit): Likewise.
16147         (process_full_type_unit): Likewise.
16148         (process_imported_unit_die): Likewise.
16149         (dwarf2_compute_name): Likewise.
16150         (dwarf2_physname): Likewise.
16151         (read_import_statement): Likewise.
16152         (create_cus_hash_table): Assign dwarf2_physname instead of
16153         objfile.
16154         (read_func_scope): Access objfile through dwarf2_per_objfile.
16155         (read_lexical_block_scope): Likewise.
16156         (read_call_site_scope): Likewise.
16157         (read_variable): Likewise.
16158         (dwarf2_rnglists_process): Likewise.
16159         (dwarf2_ranges_process): Likewise.
16160         (dwarf2_ranges_read): Likewise.
16161         (dwarf2_record_block_ranges): Likewise.
16162         (dwarf2_add_field): Likewise.
16163         (dwarf2_add_member_fn): Likewise.
16164         (read_structure_type): Likewise.
16165         (process_structure_scope): Likewise.
16166         (read_enumeration_type): Likewise.
16167         (read_array_type): Likewise.
16168         (read_common_block): Likewise.
16169         (read_namespace_type): Likewise.
16170         (read_namespace): Likewise.
16171         (read_module_type): Likewise.
16172         (read_tag_pointer_type): Likewise.
16173         (read_tag_ptr_to_member_type): Likewise.
16174         (read_tag_string_type): Likewise.
16175         (read_subroutine_type): Likewise.
16176         (read_typedef): Likewise.
16177         (read_base_type): Likewise.
16178         (attr_to_dynamic_prop): Likewise.
16179         (read_subrange_type): Likewise.
16180         (read_unspecified_type): Likewise.
16181         (load_partial_dies): Likewise.
16182         (read_partial_die): Likewise.
16183         (find_partial_die): Likewise.
16184         (guess_partial_die_structure_name): Likewise.
16185         (fixup_partial_die): Likewise.
16186         (read_attribute_value): Likewise.
16187         (read_addr_index_from_leb128): Likewise.
16188         (dwarf2_read_addr_index): Likewise.
16189         (dwarf2_string_attr): Likewise.
16190         (lnp_state_machine::check_line_address): Likewise.
16191         (dwarf_decode_lines_1): Likewise.
16192         (dwarf_decode_lines): Likewise.
16193         (dwarf2_start_symtab): Likewise.
16194         (var_decode_location): Likewise.
16195         (new_symbol_full): Likewise.
16196         (dwarf2_const_value_data): Likewise.
16197         (dwarf2_const_value_attr): Likewise.
16198         (dwarf2_const_value): Likewise.
16199         (die_type): Likewise.
16200         (die_containing_type): Likewise.
16201         (lookup_die_type): Likewise.
16202         (guess_full_die_structure_name): Likewise.
16203         (anonymous_struct_prefix): Likewise.
16204         (dwarf2_name): Likewise.
16205         (follow_die_ref_or_sig): Likewise.
16206         (follow_die_offset): Likewise.
16207         (follow_die_ref): Likewise.
16208         (dwarf2_fetch_die_loc_sect_off): Likewise.
16209         (dwarf2_fetch_constant_bytes): Likewise.
16210         (dwarf2_fetch_die_type_sect_off): Likewise.
16211         (dwarf2_get_die_type): Likewise.
16212         (follow_die_sig): Likewise.
16213         (decode_locdesc): Likewise.
16214         (dwarf2_per_cu_objfile): Likewise.
16215         (dwarf2_per_cu_text_offset): Likewise.
16216         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16217         objfile.
16218         (set_die_type): Access objfile through
16219         dwarf2_per_objfile.
16220
16221 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16222
16223         * valprint.c (converted_character_d): Remove typedef.
16224         (DEF_VEC_O (converted_character_d)): Remove.
16225         (count_next_character): Use std::vector.
16226         (print_converted_chars_to_obstack): Likewise.
16227         (generic_printstr): Likewise.
16228
16229 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16230
16231         * xml-support.h (struct gdb_xml_value): Add constructor.
16232         <value>: Change type to unique_xmalloc_ptr.
16233         (gdb_xml_value_s): Remove typedef.
16234         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16235         (gdb_xml_element_start_handler): Change parameter type to
16236         std::vector.
16237         (xml_find_attribute): Likewise.
16238         * xml-support.c (xml_find_attribute): Change parameter type to
16239         std::vector and adjust.
16240         (gdb_xml_values_cleanup): Remove.
16241         (gdb_xml_parser::start_element): Adjust to std::vector.
16242         (xinclude_start_include): Change paraeter type to std::vector
16243         and adjust.
16244         * btrace.c (check_xml_btrace_version): Likewise.
16245         (parse_xml_btrace_block): Likewise.
16246         (parse_xml_btrace_pt_config_cpu): Likewise.
16247         (parse_xml_btrace_pt): Likewise.
16248         (parse_xml_btrace_conf_bts): Likewise.
16249         (parse_xml_btrace_conf_pt): Likewise.
16250         * memory-map.c (memory_map_start_memory): Likewise.
16251         (memory_map_start_property): Likewise.
16252         * osdata.c (osdata_start_osdata): Likewise.
16253         (osdata_start_item): Likewise.
16254         (osdata_start_column): Likewise.
16255         * remote.c (start_thread): Likewise.
16256         * solib-aix.c (library_list_start_library): Likewise.
16257         (library_list_start_list): Likewise.
16258         * solib-svr4.c (library_list_start_library): Likewise.
16259         (svr4_library_list_start_list): Likewise.
16260         * solib-target.c (library_list_start_segment): Likewise.
16261         (library_list_start_section): Likewise.
16262         (library_list_start_library): Likewise.
16263         (library_list_start_list): Likewise.
16264         * tracepoint.c (traceframe_info_start_memory): Likewise.
16265         (traceframe_info_start_tvar): Likewise.
16266         * xml-syscall.c (syscall_start_syscall): Likewise.
16267         * xml-tdesc.c (tdesc_start_target): Likewise.
16268         (tdesc_start_feature): Likewise.
16269         (tdesc_start_reg): Likewise.
16270         (tdesc_start_union): Likewise.
16271         (tdesc_start_struct): Likewise.
16272         (tdesc_start_flags): Likewise.
16273         (tdesc_start_enum): Likewise.
16274         (tdesc_start_field): Likewise.
16275         (tdesc_start_enum_value): Likewise.
16276         (tdesc_start_vector): Likewise.
16277
16278 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16279
16280         * extension.h (struct xmethod_worker) <clone>: Remove.
16281         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16282         Remove.
16283         (python_xmethod_worker::clone): Remove.
16284         * valops.c (find_overload_match): Use std::move instead of
16285         clone.
16286
16287 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16288
16289         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16290         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16291         <free_xmethod_worker_data>: Remove.
16292         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16293         <get_xmethod_arg_types>: Remove.
16294         <get_xmethod_result_type>: Remove.
16295         <invoke_xmethod>: Remove.
16296         * extension.c (new_xmethod_worker): Remove.
16297         (clone_xmethod_worker): Remove.
16298         (get_matching_xmethod_workers): Return void, pass std::vector by
16299         pointer.
16300         (get_xmethod_arg_types): Rename to...
16301         (xmethod_worker::get_arg_types): ... this, and adjust.
16302         (get_xmethod_result_type): Rename to...
16303         (xmethod_worker::get_result_type): ... this, and adjust.
16304         (invoke_xmethod): Remove.
16305         (free_xmethod_worker): Remove.
16306         (free_xmethod_worker_vec): Remove.
16307         * extension.h (enum ext_lang_rc): Move here from
16308         extension-priv.h.
16309         (struct xmethod_worker): Add constructor and destructor.
16310         <data>: Remove.
16311         <value>: Remove.
16312         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16313         virtual pure methods.
16314         <get_arg_types, get_result_type>: New methods.
16315         (xmethod_worker_ptr): Remove typedef.
16316         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16317         (xmethod_worker_vec): Remove typedef.
16318         (xmethod_worker_up): New typedef.
16319         (invoke_xmethod): Remove.
16320         (clone_xmethod_worker): Remove.
16321         (free_xmethod_worker): Remove.
16322         (free_xmethod_worker_vec): Remove.
16323         (get_xmethod_arg_types): Remove.
16324         (get_xmethod_result_type): Remove.
16325         * valops.c (find_method_list): Use std::vector, don't use
16326         intermediate vector.
16327         (value_find_oload_method_list): Use std::vector.
16328         (find_overload_match): Use std::vector.
16329         (find_oload_champ): Use std::vector.
16330         * value.c (value_free): Use operator delete.
16331         (value_of_xmethod): Rename to...
16332         (value_from_xmethod): ... this.  Don't assign
16333         xmethod_worker::value, take rvalue-reference.
16334         (result_type_of_xmethod): Adjust.
16335         (call_xmethod): Adjust.
16336         * value.h: Include extension.h.
16337         (struct xmethod_worker): Don't forward-declare.
16338         (value_of_xmethod): Rename to...
16339         (value_from_xmethod): ... this, take rvalue-reference.
16340         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16341         (struct python_xmethod_worker): ... this, add constructor and
16342         destructor.
16343         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16344         (gdbpy_free_xmethod_worker_data): Rename to...
16345         (python_xmethod_worker::~python_xmethod_worker): ... this and
16346         adjust.
16347         (gdbpy_clone_xmethod_worker_data): Rename to...
16348         (python_xmethod_worker::clone): ... this and adjust.
16349         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16350         temporary vector.
16351         (gdbpy_get_xmethod_arg_types): Rename to...
16352         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16353         (gdbpy_get_xmethod_result_type): Rename to...
16354         (python_xmethod_worker::do_get_result_type): ... this and
16355         adjust.
16356         (gdbpy_invoke_xmethod): Rename to...
16357         (python_xmethod_worker::invoke): ... this and adjust.
16358         (new_python_xmethod_worker): Rename to...
16359         (python_xmethod_worker::python_xmethod_worker): ... this and
16360         adjust.
16361         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16362         Remove.
16363         (gdbpy_free_xmethod_worker_data): Remove.
16364         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16365         (gdbpy_get_xmethod_arg_types): Remove.
16366         (gdbpy_get_xmethod_result_type): Remove.
16367         (gdbpy_invoke_xmethod): Remove.
16368         * python/python.c (python_extension_ops): Remove obsolete
16369         callbacks.
16370
16371 2018-01-05  Pedro Alves  <palves@redhat.com>
16372
16373         PR gdb/18653
16374         * common/signals-state-save-restore.c
16375         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16376         find a custom handler preinstalled, instead of internal erroring.
16377         But only warn if !quiet.
16378         * common/signals-state-save-restore.h
16379         (save_original_signals_state): New parameter 'quiet'.
16380         * main.c (captured_main_1): Move save_original_signals_state call
16381         after option handling, and pass QUIET.
16382
16383 2018-01-05  Pedro Alves  <palves@redhat.com>
16384
16385         * spu-tdep.c (spu_catch_start): Pass
16386         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16387
16388 2018-01-05  Pedro Alves  <palves@redhat.com>
16389
16390         PR gdb/22670
16391         * ada-lang.c (literal_symbol_name_matcher): New function.
16392         (ada_get_symbol_name_matcher): Use it for
16393         symbol_name_match_type::SEARCH_NAME.
16394         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16395         it down instead of assuming symbol_name_match_type::FULL.
16396         * block.h (block_lookup_symbol): New parameter 'match_type'.
16397         * c-valprint.c (print_unpacked_pointer): Use
16398         lookup_symbol_search_name instead of lookup_symbol.
16399         * compile/compile-object-load.c (get_out_value_type): Pass down
16400         symbol_name_match_type::SEARCH_NAME.
16401         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16402         symbol_name_match_type::FULL.
16403         * cp-support.c (cp_get_symbol_name_matcher): Handle
16404         symbol_name_match_type::SEARCH_NAME.
16405         * infrun.c (insert_exception_resume_breakpoint): Use
16406         lookup_symbol_search_name.
16407         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16408         * psymtab.c (maintenance_check_psymtabs): Use
16409         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16410         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16411         SYMBOL_SEARCH_NAME.
16412         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16413         if symbol_name_match_type::SEARCH_NAME.
16414         (lookup_symbol_in_language): Pass down
16415         symbol_name_match_type::FULL.
16416         (lookup_symbol_search_name): New.
16417         (lookup_language_this): Pass down
16418         symbol_name_match_type::SEARCH_NAME.
16419         (lookup_symbol_aux, lookup_local_symbol): New parameter
16420         'match_type'.  Pass it down.
16421         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16422         (lookup_symbol_search_name): New declaration.
16423         (lookup_symbol_in_block): New 'match_type' parameter.
16424
16425 2018-01-05  Pedro Alves  <palves@redhat.com>
16426
16427         PR gdb/22670
16428         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16429         ada_lookup_symbol.
16430         (ada_lookup_symbol): Reimplement in terms of
16431         ada_lookup_symbol_list, bits factored out from
16432         ada_lookup_encoded_symbol.
16433
16434 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16435
16436         * ada-exp.y (write_object_renaming): When subscripting an array
16437         using a symbol as the index, pass the block in call to
16438         ada_lookup_encoded_symbol when looking that symbol up.
16439
16440 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16441
16442         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16443         TYPE_INDEX_TYPE.
16444
16445 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16446
16447         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16448         the case where VALUE_LVAL (val0) is not lval_memory.
16449
16450 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16451
16452         * ada-valprint.c (print_optional_low_bound): Handle
16453         character-indexed array printing like boolean-indexed array
16454         printing.
16455
16456 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16457
16458         * NEWS: Create a new section for the next release branch.
16459         Rename the section of the current branch, now that it has
16460         been cut.
16461
16462 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16463
16464         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16465         * version.in: Bump version to 8.1.50.DATE-git.
16466
16467 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16468
16469         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16470         Add field.
16471         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16472         Add field.
16473         (default_exception_support_info) <catch_handlers_sym>: Add field.
16474         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16475         (ada_exception_name_addr_1): Add "catch handlers" handling.
16476         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16477         Update all callers.
16478         (create_excep_cond_exprs) <ex>: Add parameter.
16479         (re_set_exception): Update create_excep_cond_exprs call.
16480         (print_it_exception, print_one_exception, print_mention_exception)
16481         (print_recreate_exception): Add "catch handler" handling.
16482         (allocate_location_catch_handlers, re_set_catch_handlers)
16483         (check_status_catch_handlers, print_it_catch_handlers)
16484         (print_one_catch_handlers, print_mention_catch_handlers)
16485         (print_recreate_catch_handlers): New function.
16486         (catch_handlers_breakpoint_ops): New variable.
16487         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16488         Add parameter.  Add "catch handler" handling.
16489         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16490         Add "catch handler" handling.
16491         (ada_exception_catchpoint_cond_string): Add "catch handler"
16492         handling.
16493         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16494         call.
16495         (catch_ada_handlers_command): New function.
16496         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16497         operations structure.
16498         (_initialize_ada_language): Add "catch handlers" command entry.
16499         * NEWS: Document "catch handlers" feature.
16500
16501 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16502
16503         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16504         account when creating the array type of the slice.
16505         (ada_value_slice): Likewise.
16506
16507 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16508
16509         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16510         New enum value.
16511         (create_array_type_with_stride): Add byte_stride_prop parameter.
16512         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16513         New parameter.  Update all callers in this file.
16514         (array_type_has_dynamic_stride): New function.
16515         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16516         of arrays with dynamic byte strides.
16517         * dwarf2read.c (read_array_type): Add support for dynamic
16518         DW_AT_byte_stride attributes.
16519
16520 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16521
16522         * dwarf2read.c (read_unspecified_type): Treat
16523         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16524
16525 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16526
16527         Update copyright year range in all GDB files.
16528
16529 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16530
16531         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16532         and gdb/testsuite/gdb.base/step-line.c.
16533
16534 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16535
16536         * copyright.py (main): Dump the contents of
16537         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16538         even if BY_HAND is empty.
16539
16540 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16541
16542         * top.c (print_gdb_version): Update Copyright year in version
16543         message.
16544
16545 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16546
16547         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16548
16549 For older changes see ChangeLog-2017.
16550 \f
16551 Local Variables:
16552 mode: change-log
16553 left-margin: 8
16554 fill-column: 74
16555 version-control: never
16556 coding: utf-8
16557 End: