28ab3345032df67cb3539ea7c180000c219ad644
[external/binutils.git] / gdb / ChangeLog
1 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
4         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
5         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
6         (default_unwind_sp): Define new function.
7         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
8         (default_unwind_sp): Declare new function.
9         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
10         available.
11         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
12         * gdb/gdbarch.c: Regenerate.
13         * gdb/gdbarch.h: Regenerate.
14         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
15         unwind_sp.  Add additional header files to be included in
16         generated file.
17
18 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
19
20         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
21         sp clobbers.
22
23 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
24
25         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
26         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
27         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
28         'processing_has_namespace_info' from unsigned int to bool.  Update
29         comments.
30         (producer_is_icc_lt_14): Update return type.
31         (producer_is_gcc_lt_4_3): Likewise.
32         (producer_is_gxx_lt_4_6): Likewise.
33         (process_die): Write true instead of 1 into predicate fields.
34         (dwarf2_start_symtab): Likewise.
35         (var_decode_location): Likewise.
36         (dwarf2_mark_helper): Likewise.
37         (dwarf2_mark): Likewise.
38         (dwarf2_clear_marks): Write false instead of 0 into predicate
39         field.
40         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
41         0.
42
43 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
44
45         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
46         asm/sigcontext.h.
47
48 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
49
50         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
51         warning trailing new line.
52
53 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
54
55         * nat/linux-ptrace.c (kill_child): New function.
56         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
57         Add a call to kill_child in case of early return after fork.
58         (linux_check_ptrace_features): Use kill_child instead of local code.
59         (linux_test_for_tracefork): Likewise.
60
61 2018-12-14  Tom Tromey  <tom@tromey.com>
62
63         * Makefile.in: Remove "alloca" comment.
64         (INFOFILES): Remove.
65         (local-maintainer-clean): Don't use INFOFILES.
66
67 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
68
69         * syscalls/update-freebsd.sh: New file.
70         * syscalls/freebsd.xml: Regenerate.
71
72 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
73
74         * NEWS: Add entry documenting system call aliases.
75         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
76         to get_syscalls_by_name.
77         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
78         * gdbarch.h: Regenerate.
79         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
80         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
81         from get_syscall_by_name.  Now accepts a pointer to a vector of
82         integers and returns a bool.
83         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
84         (syscall_create_syscall_desc): Add alias parameter and pass it to
85         syscall_desc constructor.
86         (syscall_start_syscall): Handle alias attribute.
87         (syscall_attr): Add alias attribute.
88         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
89         Now accepts a pointer to a vector of integers and returns a
90         bool.  Add syscalls whose alias or name matches the requested
91         name.
92         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
93         accepts a pointer to a vector of integers and returns a bool.
94         * xml-syscall.h (get_syscalls_by_name): Likewise.
95
96 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
97
98         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
99         to get_syscalls_by_group.
100         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
101         false.
102         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
103         numbers to an existing vector of integers and return a bool.
104         (get_syscalls_by_group): Accept pointer to vector of integers
105         and change return type to bool.
106         * xml-syscall.h (get_syscalls_by_group): Likewise.
107
108 2018-12-13  Jim Wilson  <jimw@sifive.com>
109
110         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
111         comment for SD field, and correct xlen calculation.  For MISA, add
112         comment for MXL field, add call to register_size, and correct base
113         calculation.
114
115 2018-12-13  Stafford Horne  <shorne@gmail.com>
116
117         * NEWS(New targets): Add or1k*-*-linux*.
118
119 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
120
121         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
122         declare on one line to fix ARI warning.
123
124 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
125
126         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
127         (infcall_suspend_state::registers): New.
128         (infcall_suspend_state::restore): New.
129         (infcall_suspend_state::thread_suspend): Rename to...
130         (infcall_suspend_state::m_thread_suspend): ...this.
131         (infcall_suspend_state::registers): Rename to...
132         (infcall_suspend_state::m_registers): ...this.
133         (infcall_suspend_state::siginfo_gdbarch): Rename to...
134         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
135         (infcall_suspend_state::siginfo_data): Rename to...
136         (infcall_suspend_state::m_siginfo_data): ...this.
137         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
138         constructor.
139         (restore_infcall_suspend_state): Rewrite to use
140         infcall_suspend_state::restore method.
141         (get_infcall_suspend_state_regcache): Use
142         infcall_suspend_state::registers method.
143
144 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
145
146         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
147         arguments are passed in integer registers.
148         (riscv_call_arg_complex_float): Likewise.
149
150 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
151
152         * nat/linux-osdata.c (common_getter): New function.
153         (struct osdata_type): Change getter to take_snapshot.
154         Add LONGEST len_avail and struct buffer buffer.
155         Change all elements in the initializer.
156         Add an element for the list of types.
157         (linux_xfer_osdata_info_os_types): New function.
158         (linux_common_xfer_osdata): Use common_getter for the list of types.
159         Replace getter call by common_getter.
160         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
161         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
162         (linux_xfer_osdata_fds): Likewise.
163         (linux_xfer_osdata_modules): Likewise.
164         (linux_xfer_osdata_msg): Likewise.
165         (linux_xfer_osdata_processes): Likewise.
166         (linux_xfer_osdata_processgroups): Likewise.
167         (linux_xfer_osdata_sem): Likewise.
168         (linux_xfer_osdata_shm): Likewise.
169         (linux_xfer_osdata_isockets): Likewise.
170         (linux_xfer_osdata_threads): Likewise.
171
172 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
173
174         * nat/linux-osdata.c: Removed various trailing spaces.
175
176 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
177
178         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
179         leading whitespace before #include line.
180
181 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
182             Дилян Палаузов  <dilyan.palauzov@aegee.org>
183
184         PR gdb/23950
185         * configure.ac: Search for tgetent in libtinfow.
186         * configure: Re-generate.
187
188 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
189
190         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
191         (thread_db_err_str): Forward declare.
192         (delete_thread_db_info): Call td_ta_delete_p if available.
193         (try_thread_db_load_1): Acquire td_ta_delete address.
194         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
195
196 2018-12-08  Pedro Alves  <palves@redhat.com>
197
198         * source.c (forward_search_command): Rename to ...
199         (search_command_helper): ... this.  Add 'forward' parameter.
200         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
201         buffer.  Handle backward searches too.
202         (forward_search_command, reverse_search_command): Reimplement by
203         calling search_command_helper.
204
205 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
206
207         * .dir-locals.el: Copy most of the settings from c-mode over to
208         c++-mode.
209
210 2018-12-08  Stafford Horne  <shorne@gmail.com>
211
212         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
213         * configure.tgt: Add or1k*-*-linux*.
214         * or1k-linux-tdep.c: New file.
215         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
216
217 2018-12-07  Pedro Alves  <palves@redhat.com>
218
219         * dwarf2read.c (get_gdb_index_contents_from_section): Use
220         gdb::make_array_view.
221
222 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
223
224         * language.c (_initialize_language): Fix leak by assigning
225         a static string to language.  Same for range and case_sensitive,
226         even if no leak is detected for these variables.
227
228 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
229
230         * configure: Re-generate.
231         * configure.ac: Use separate sed expressions to escape variables
232         in auto-load directories.
233
234 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
235
236         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
237         (riscv_find_default_target_description): Use new function to
238         extract feature from gdbarch_info.
239         (riscv_gdbarch_init): Add error checks for xlen and flen between
240         target description and bfd headers.  Be smarter about when we
241         think the hardware floating point abi should be used.
242
243 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
244
245         * nat/aarch64-linux-hw-point.c
246         (aarch64_linux_any_set_debug_regs_state): New function.
247         * nat/aarch64-linux-hw-point.h
248         (aarch64_linux_any_set_debug_regs_state): New declaration.
249         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
250         BPs or WPs are set.
251
252 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
253
254         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
255         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
256
257 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
258             Simon Marchi  <simon.marchi@ericsson.com>
259
260         * linespec.c (symtab_vector_up): Remove.
261         (symtabs_from_filename): Change return type to std::vector.
262         (collect_symtabs_from_filename): Likewise.
263         (create_sals_line_offset): Assign return value of
264         collect_symtabs_from_filename to *ls->file_symtabs.
265         (convert_explicit_location_to_linespec): Remove call to release.
266         (parse_linespec): Likewise.
267         (symtab_collector) <symtab_collector>: Remove initialization of
268         m_symtabs.
269         <release_symtabs>: Change return type to std::vector<symtab *>.
270         <operator ()>: Adjust.
271
272 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
273
274         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
275         defined.
276         (union sigval32, struct siginfo32, fbsd_siginfo_size)
277         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
278         of KERN_PROC_AUXV and PT_LWPINFO.
279         (fbsd_nat_target::xfer_partial): Define method unconditionally.
280         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
281         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
282         Make TARGET_OBJECT_FREEBSD_VMMAP and
283         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
284         and KERN_PROC_PS_STRINGS.
285         * fbsd-nat.h: Include <sys/proc.h>.
286         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
287
288 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
289
290         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
291         header files.
292         (riscv_linux_nat_target::read_description): New method.
293
294 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
295
296         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
297         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
298         (riscv_tdesc_cache): New global.
299         (riscv_create_target_description): Look in the cache before
300         creating a new target description.
301
302 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
303
304         * arch/riscv.h (riscv_gdb_features::operator==): New.
305         (riscv_gdb_features::operator!=): New.
306         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
307         operator.
308
309 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
310
311         * arch/riscv.h (riscv_create_target_description): Make return type
312         const.
313         * arch/riscv.c (riscv_create_target_description): Likewise.
314         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
315
316 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
317             Keith Seitz  <keiths@redhat.com>
318             Tom Tromey  <tom@tromey.com>
319             Sergio Durigan Junior  <sergiodj@redhat.com>
320
321         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
322         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
323         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
324         inside the CU.
325
326 2018-11-30  Pedro Alves  <palves@redhat.com>
327
328         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
329         <stratum>: New override.
330         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
331         <stratum>: New override.
332         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
333         <stratum>: New override.
334         * exec.c (exec_target) <exec_target>: Delete.
335         <stratum>: New override.
336         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
337         stratum method instead of the to_stratum field.
338         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
339         <stratum>: New override.
340         (thread_db_target::thread_db_target): Delete.
341         * make-target-delegates (print_class): Don't print a ctor
342         declaration.  Print a stratum method override declaration.
343         * process-stratum-target.h (process_stratum_target)
344         <process_stratum_target>: Delete.
345         <stratum>: New override.
346         * ravenscar-thread.c (ravenscar_thread_target)
347         <ravenscar_thread_target>: Delete.
348         <stratum>: New override.
349         * record-btrace.c (record_btrace_target)
350         <record_btrace_target>: Delete.
351         <stratum>: New override.
352         * record-full.c (record_full_base_target)
353         <record_full_base_target>: Delete.
354         <stratum>: New override.
355         * record.c (record_disconnect, record_detach)
356         (record_mourn_inferior, record_kill): Adjust to use the stratum
357         method instead of the to_stratum field.
358         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
359         * sol-thread.c (sol_thread_target)
360         <sol_thread_target>: Delete.
361         <stratum>: New override.
362         * spu-multiarch.c (spu_multiarch_target)
363         <spu_multiarch_target>: Delete.
364         <stratum>: New override.
365         * target-delegates.c: Regenerate.
366         * target.c (target_stack::push, target_stack::unpush)
367         (pop_all_targets_above, pop_all_targets_at_and_above)
368         (info_target_command, target_require_runnable)
369         (target_stack::find_beneath): Adjust to use the stratum method
370         instead of the to_stratum field.
371         (dummy_target::dummy_target): Delete.
372         (dummy_target::stratum): New.
373         (debug_target::debug_target): Delete.
374         (debug_target::stratum): New.
375         (maintenance_print_target_stack): Adjust to use the stratum method
376         instead of the to_stratum field.
377         * target.h (struct target_ops) <stratum>: New method.
378         <to_stratum>: Delete.
379         <is_pushed>: Adjust to use the stratum method
380         instead of the to_stratum field.
381
382 2018-11-30  Pedro Alves  <palves@redhat.com>
383
384         * corelow.c (core_target) <has_all_memory, has_execution>: New
385         overrides.
386         * inf-child.c (inf_child_target::has_all_memory)
387         (inf_child_target::has_memory, inf_child_target::has_stack)
388         (inf_child_target::has_registers)
389         (inf_child_target::has_execution): Delete.
390         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
391         has_stack, has_registers, has_execution>: Delete.
392         * process-stratum-target.c
393         (process_stratum_target::has_all_memory)
394         (process_stratum_target::has_memory)
395         (process_stratum_target::has_stack)
396         (process_stratum_target::has_registers)
397         (process_stratum_target::has_execution): New.
398         * process-stratum-target.h (process_stratum_target)
399         <has_all_memory, has_memory, has_stack, has_registers,
400         has_execution>: New method overrides.
401         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
402         has_memory, has_stack, has_registers, has_execution>: Delete.
403         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
404         has_execution>: Delete.
405         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
406         has_registers, has_execution>: Delete.
407         * target.c (default_child_has_all_memory)
408         (default_child_has_memory, default_child_has_stack)
409         (default_child_has_registers, default_child_has_execution):
410         Delete.
411         * target.h (default_child_has_all_memory)
412         (default_child_has_memory, default_child_has_stack)
413         (default_child_has_registers, default_child_has_execution):
414         Delete.
415         * tracefile.h (tracefile_target) <has_execution>: New override.
416
417 2018-11-30  Pedro Alves  <palves@redhat.com>
418
419         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
420         * bsd-kvm.c: Include "process-stratum-target.h".
421         (bsd_kvm_target): Now inherits from process_stratum_target.
422         (bsd_kvm_target::bsd_kvm_target): Default it.
423         * corelow.c: Include "process-stratum-target.h".
424         (core_target): Now inherits from process_stratum_target.
425         (core_target::core_target): Don't set to_stratum here.
426         * inf-child.c (inf_child_target::inf_child_target): Delete.
427         * inf-child.h: Include "process-stratum-target.h".
428         (inf_child_target): Inherit from process_stratum_target.
429         (inf_child_target) <inf_child_target>: Default it.
430         <can_async_p, supports_non_stop, supports_disable_randomization>:
431         Delete overrides.
432         * process-stratum-target.c: New file.
433         * process-stratum-target.h: New file.
434         * remote-sim.c: Include "process-stratum-target.h".
435         (gdbsim_target): Inherit from process_stratum_target.
436         <gdbsim_target>: Default it.
437         * remote.c: Include "process-stratum-target.h".
438         (remote_target): Inherit from process_stratum_target.
439         <remote_target>: Default it.
440         * target.c (default_thread_address_space)
441         (default_thread_architecture): Delete.
442         * target.h (target_ops) <thread_architecture>: Now returns NULL by
443         default.
444         <thread_address_space>: Ditto.
445         * test-target.h: Include "process-stratum-target.h" instead of
446         "target.h".
447         (test_target_ops): Inherit from process_stratum_target.
448         <test_target_ops>: Default it.
449         * tracefile.c (tracefile_target::tracefile_target): Delete.
450         * tracefile.h: Include "process-stratum-target.h".
451         (tracefile_target): Inherit from process_stratum_target.
452         <tracefile_target>: Default it.
453         * target-delegates.c: Regenerate.
454
455 2018-11-30  Pedro Alves  <palves@redhat.com>
456
457         * Makefile.in (COMMON_SFILES): Add test-target.c.
458         * gdbarch-selftests.c: Include "test-target.h".
459         * regcache.c: Include "test-target.h".
460         * target.c (test_target_info, test_target_ops::info): Move to ...
461         * test-target.c: ... this new file.
462         * target.h (test_target_ops): Move to ...
463         * test-target.h: ... this new file.
464
465 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
466
467         * source.c (forward_search_command): Fix leak by using
468         xrealloc even for the first allocation in the loop, as buf
469         is static.
470
471 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
472
473         PR gdb/23093
474         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
475         (fbsd_gdb_signal_to_target): New.
476         (fbsd_init_abi): Install gdbarch "signal_from_target" and
477         "signal_to_target" methods.
478
479 2018-11-29  Tom Tromey  <tom@tromey.com>
480
481         * valarith.c (value_x_unop): Don't set argvec[3].
482
483 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
484
485         PR gdb/23917
486         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
487         semicolon.
488
489 2018-11-26  Pedro Alves  <palves@redhat.com>
490
491         * procfs.c (procfs_notice_thread): Replace uses of
492         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
493         * sol-thread.c (sol_thread_target::wait)
494         (sol_update_thread_list_callback): Likewise.
495
496 2018-11-25  Tom Tromey  <tom@tromey.com>
497
498         * ui-out.c (ui_out::field_fmt): Remove comment.
499         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
500         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
501
502 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
503
504         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
505         leak in open_source_file' has been partially undone by '2179fbc36d23
506         Return scoped_fd from open_source_file'. Re-add the transfer of
507         current s->fullname to the unique_xmalloc_ptr fullname given
508         to find_and_open_source.
509
510 2018-11-23  Pedro Alves  <palves@redhat.com>
511
512         * gdbthread.h (enum thread_state): Move comments here.
513         (is_running, is_stopped, is_exited): Remove declarations.
514
515 2018-11-22  Pedro Alves  <palves@redhat.com>
516
517         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
518         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
519         ALL_NON_EXITED_THREADS with all_non_exited_threads.
520         (print_one_breakpoint_location): Replace ALL_INFERIORS with
521         all_inferiors.
522         * bsd-kvm.c: Include inferior.h.
523         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
524         with all_non_exited_threads.
525         * common/filtered-iterator.h: New.
526         * common/safe-iterator.h: New.
527         * corelow.c (core_target_open): Don't call init_thread_list here.
528         * darwin-nat.c (thread_info_from_private_thread_info): Replace
529         ALL_THREADS with all_threads.
530         * fbsd-nat.c (fbsd_nat_target::resume): Replace
531         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
532         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
533         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
534         * fork-child.c (postfork_hook): Don't call init_thread_list here.
535         * gdbarch-selftests.c (register_to_value_test): Adjust.
536         * gdbthread.h: Don't include "inferior.h" here.
537         (struct inferior): Forward declare.
538         (enum step_over_calls_kind): Moved here from inferior.h.
539         (thread_info::deletable): Definition moved to thread.c.
540         (find_thread_ptid (inferior *, ptid_t)): Declare.
541         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
542         Include "thread-iter.h".
543         (all_threads, all_non_exited_threads, all_threads_safe): New.
544         (any_thread_p): Declare.
545         (thread_list): Delete.
546         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
547         all_non_exited_threads.
548         (proceed_after_attach_callback): Delete.
549         (proceed_after_attach): Take an inferior pointer instead of an
550         integer PID.  Adjust to use range-for.
551         (attach_post_wait): Pass down inferior pointer instead of pid.
552         Use range-for instead of ALL_NON_EXITED_THREADS.
553         (detach_command): Remove init_thread_list call.
554         * inferior-iter.h: New.
555         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
556         (delete_thread_of_inferior): Delete.
557         (delete_inferior, exit_inferior_1): Use range-for with
558         inf->threads_safe() instead of iterate_over_threads.
559         (inferior_appeared): Call init_thread_list here.
560         (discard_all_inferiors): Use all_non_exited_inferiors.
561         (find_inferior_id, find_inferior_pid): Use all_inferiors.
562         (iterate_over_inferiors): Use all_inferiors_safe.
563         (have_inferiors, number_of_live_inferiors): Use
564         all_non_exited_inferiors.
565         (number_of_inferiors): Use all_inferiors and std::distance.
566         (print_inferior): Use all_inferiors.
567         * inferior.h: Include gdbthread.h.
568         (enum step_over_calls_kind): Moved to gdbthread.h.
569         (struct inferior) <thread_list>: New field.
570         <threads, non_exited_threads, threads_safe>: New methods.
571         (ALL_INFERIORS): Delete.
572         Include "inferior-iter.h".
573         (ALL_NON_EXITED_INFERIORS): Delete.
574         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
575         functions.
576         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
577         ALL_NON_EXITED_THREADS with all_non_exited_threads.
578         * infrun.c (follow_exec): Use all_threads_safe.
579         (clear_proceed_status, proceed): Use all_non_exited_threads.
580         (init_wait_for_inferior): Don't clear inline frame state here.
581         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
582         all_threads instead of ALL_NON_EXITED_THREADS.
583         (random_pending_event_thread): Use all_non_exited_threads instead
584         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
585         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
586         instead of ALL_NON_EXITED_THREADS.
587         (handle_no_resumed): Use all_non_exited_threads instead of
588         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
589         ALL_INFERIORS.
590         (restart_threads, switch_back_to_stepped_thread): Use
591         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
592         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
593         all_inferiors.
594         (kill_unfollowed_fork_children): Use inf->non_exited_threads
595         instead of ALL_NON_EXITED_THREADS.
596         * linux-tdep.c (linux_make_corefile_notes): Use
597         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
598         * linux-thread-db.c (thread_db_target::update_thread_list):
599         Replace ALL_INFERIORS with all_inferiors.
600         (thread_db_target::thread_handle_to_thread_info): Use
601         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
602         * mi/mi-interp.c (multiple_inferiors_p): New.
603         (mi_on_resume_1): Simplify using all_non_exited_threads and
604         multiple_inferiors_p.
605         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
606         instead of ALL_NON_EXITED_THREADS.
607         * nto-procfs.c (nto_procfs_target::open): Don't call
608         init_thread_list here.
609         * record-btrace.c (record_btrace_target_open)
610         (record_btrace_target::stop_recording)
611         (record_btrace_target::close)
612         (record_btrace_target::record_is_replaying)
613         (record_btrace_target::resume, record_btrace_target::wait)
614         (record_btrace_target::record_stop_replaying): Use
615         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
616         * record-full.c (record_full_wait_1): Use all_non_exited_threads
617         instead of ALL_NON_EXITED_THREADS.
618         * regcache.c (cooked_read_test): Remove reference to global
619         thread_list.
620         * remote-sim.c (gdbsim_target::create_inferior): Don't call
621         init_thread_list here.
622         * remote.c (remote_target::update_thread_list): Use
623         all_threads_safe instead of ALL_NON_EXITED_THREADS.
624         (remote_target::process_initial_stop_replies): Replace
625         ALL_INFERIORS with all_non_exited_inferiors and use
626         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
627         (remote_target::open_1): Don't call init_thread_list here.
628         (remote_target::append_pending_thread_resumptions)
629         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
630         instead of ALL_NON_EXITED_THREADS.
631         (remote_target::commit_resume)
632         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
633         with all_non_exited_inferiors and use all_non_exited_threads
634         instead of ALL_NON_EXITED_THREADS.
635         (remote_target::kill_new_fork_children): Use
636         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
637         init_thread_list and init_wait_for_inferior calls.
638         (remote_target::remote_btrace_maybe_reopen)
639         (remote_target::thread_handle_to_thread_info): Use
640         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
641         * target.c (target_terminal::restore_inferior)
642         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
643         all_non_exited_inferiors.
644         * thread-iter.c: New file.
645         * thread-iter.h: New file.
646         * thread.c: Include "inline-frame.h".
647         (thread_list): Delete.
648         (clear_thread_inferior_resources): Call clear_inline_frame_state.
649         (init_thread_list): Use all_threads_safe instead of
650         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
651         (new_thread): Adjust to per-inferior thread lists.
652         (add_thread_silent): Pass inferior to find_thread_ptid.
653         (thread_info::deletable): New, moved from the header.
654         (delete_thread_1): Adjust to per-inferior thread lists.
655         (find_thread_global_id): Use inf->threads().
656         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
657         find_thread_ptid.
658         (find_thread_ptid(inferior*, ptid_t)): New overload.
659         (iterate_over_threads): Use all_threads_safe.
660         (any_thread_p): New.
661         (thread_count): Use all_threads and std::distance.
662         (live_threads_count): Use all_non_exited_threads and
663         std::distance.
664         (valid_global_thread_id): Use all_threads.
665         (in_thread_list): Use find_thread_ptid.
666         (first_thread_of_inferior): Adjust to per-inferior thread lists.
667         (any_thread_of_inferior, any_live_thread_of_inferior): Use
668         inf->non_exited_threads().
669         (prune_threads, delete_exited_threads): Use all_threads_safe.
670         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
671         (set_resumed, set_running): Use all_non_exited_threads.
672         (is_thread_state, is_stopped, is_exited, is_running)
673         (is_executing): Delete.
674         (set_executing, set_stop_requested, finish_thread_state): Use
675         all_non_exited_threads.
676         (print_thread_info_1): Use all_inferiors and all_threads.
677         (thread_apply_all_command): Use all_non_exited_threads.
678         (thread_find_command): Use all_threads.
679         (update_threads_executing): Use all_non_exited_threads.
680         * tid-parse.c (parse_thread_id): Use inf->threads.
681         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
682
683 2018-11-22  Pedro Alves  <palves@redhat.com>
684
685         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
686         switch to it before calling into try_open_exec_file.
687
688 2018-11-22  Pedro Alves  <palves@redhat.com>
689
690         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
691         inferior_thread instead of find_thread_ptid, and only when
692         inferior_ptid is not null_ptid.
693         * inferior.c (add_inferior): Don't include target_pid_to_str
694         output when the inferior is not started.
695         * python/py-inferior.c (python_on_normal_stop): Don't use
696         find_thread_ptid.
697         (tui_on_user_selected_context_changed): Use inferior_thread
698         instead of find_thread_ptid, and only when inferior_ptid is not
699         null_ptid.
700
701 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
702
703         PR python/23714
704         * gdb/python/python.c (execute_gdb_command): Call
705         prevent_dont_repeat earlier to avoid affecting dont_repeat.
706
707 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
708
709         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
710         (HFILES_NO_SRCDIR): Add arch/riscv.h.
711         * arch/riscv.c: New file.
712         * arch/riscv.h: New file.
713         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
714         this list, and add arch/riscv.o.
715         * features/Makefile: Add riscv features.
716         * features/riscv/32bit-cpu.c: New file.
717         * features/riscv/32bit-cpu.xml: New file.
718         * features/riscv/32bit-csr.c: New file.
719         * features/riscv/32bit-csr.xml: New file.
720         * features/riscv/32bit-fpu.c: New file.
721         * features/riscv/32bit-fpu.xml: New file.
722         * features/riscv/64bit-cpu.c: New file.
723         * features/riscv/64bit-cpu.xml: New file.
724         * features/riscv/64bit-csr.c: New file.
725         * features/riscv/64bit-csr.xml: New file.
726         * features/riscv/64bit-fpu.c: New file.
727         * features/riscv/64bit-fpu.xml: New file.
728         * features/riscv/rebuild-csr-xml.sh: New file.
729         * riscv-tdep.c: Add 'arch/riscv.h' include.
730         (riscv_gdb_reg_names): Delete.
731         (csr_reggroup): New global.
732         (struct riscv_register_alias): Delete.
733         (struct riscv_register_feature): New structure.
734         (riscv_register_aliases): Delete.
735         (riscv_xreg_feature): New global.
736         (riscv_freg_feature): New global.
737         (riscv_virtual_feature): New global.
738         (riscv_csr_feature): New global.
739         (riscv_create_csr_aliases): New function.
740         (riscv_read_misa_reg): Delete.
741         (riscv_has_feature): Delete.
742         (riscv_isa_xlen): Simplify, just return cached xlen.
743         (riscv_isa_flen): Simplify, just return cached flen.
744         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
745         (riscv_register_name): Update to make use of tdesc_register_name.
746         Look up xreg and freg names in the new globals riscv_xreg_feature
747         and riscv_freg_feature.  Don't supply csr aliases here.
748         (riscv_fpreg_q_type): Delete.
749         (riscv_register_type): Use tdesc_register_type in almost all
750         cases, override the returned type in a few specific cases only.
751         (riscv_print_one_register_info): Handle errors reading registers.
752         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
753         registers that are otherwise unknown to GDB.  Also check the
754         csr_reggroup.
755         (riscv_print_registers_info): Remove assert about upper register
756         number, and use gdbarch_register_reggroup_p instead of
757         short-cutting.
758         (riscv_find_default_target_description): New function.
759         (riscv_check_tdesc_feature): New function.
760         (riscv_add_reggroups): New function.
761         (riscv_setup_register_aliases): New function.
762         (riscv_init_reggroups): New function.
763         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
764         setup register groups.  Register new riscv debug variable.
765         * riscv-tdep.h: Add 'arch/riscv.h' include.
766         (struct gdbarch_tdep): Remove abi union, and add
767         riscv_gdbarch_features field.  Remove cached quad floating point
768         type, and provide initialisation for double type field.
769         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
770         the list of targets using the feature based target descriptions.
771         * NEWS: Mention target description support.
772
773 2018-11-21  Pedro Alves  <palves@redhat.com>
774
775         * valops.c (find_method_list, value_find_oload_method_list)
776         (find_overload_match, find_oload_champ): Rename parameters and
777         locals.
778
779 2018-11-21  Pedro Alves  <palves@redhat.com>
780
781         * valops.c (find_method_list): Replace pointer and length
782         parameters with an gdb::array_view.  Adjust.
783         (value_find_oload_method_list): Likewise.
784         (find_overload_match): Use gdb::array_view for methods list.
785         Adjust to find_oload_champ interface change.
786         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
787         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
788
789 2018-11-21  Pedro Alves  <palves@redhat.com>
790
791         * gdbtypes.c (compare_badness): Change type of parameters to const
792         reference.  Adjust to badness_vector being a std::vector now.
793         (rank_function): Adjust to badness_vector being a std::vector now.
794         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
795         (LENGTH_MATCH): Delete.
796         (compare_badness): Change type of parameters to const reference.
797         (rank_function): Return a badness_vector by value now.
798         (find_overload_match): Adjust to badness_vector being a
799         std::vector now.  Remove cleanups.
800         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
801         badness_vector pointer.
802         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
803         a badness_vector pointer.  Adjust to badness_vector being a
804         std::vector now.  Remove cleanups.
805         (find_oload_champ): 'oload_champ_bv' parameter now
806         a badness_vector pointer.  Adjust to badness_vector being a
807         std::vector now.  Remove cleanups.
808
809 2018-11-21  Pedro Alves  <palves@redhat.com>
810
811         * cp-support.c (sym_return_val_size, sym_return_val_index)
812         (sym_return_val): Delete.
813         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
814         add to the vector.
815         (make_symbol_overload_list): Adjust to return a std::vector
816         instead of maintaining a global open coded vector.
817         (make_symbol_overload_list_block): Add std::vector parameter.
818         (make_symbol_overload_list_block): Rename to ...
819         (add_symbol_overload_list_block): ... this and add std::vector
820         parameter.
821         (make_symbol_overload_list_namespace): Rename to ...
822         (add_symbol_overload_list_namespace): ... this and add std::vector
823         parameter.
824         (make_symbol_overload_list_adl_namespace): Rename to ...
825         (add_symbol_overload_list_adl_namespace): ... this and add
826         std::vector parameter.
827         (make_symbol_overload_list_adl): Delete.
828         (add_symbol_overload_list_adl): New.
829         (make_symbol_overload_list_using): Rename to ...
830         (add_symbol_overload_list_using): ... this and add std::vector
831         parameter.
832         (make_symbol_overload_list_qualified): Rename to ...
833         (add_symbol_overload_list_qualified): ... this and add std::vector
834         parameter.
835         * cp-support.h: Include "common/array-view.h" and <vector>.
836         (make_symbol_overload_list): Change return type to std::vector.
837         (make_symbol_overload_list_adl): Delete declaration.
838         (add_symbol_overload_list_adl): New declaration.
839         * valops.c (find_overload_match): Local 'oload_syms' now a
840         std::vector.
841         (find_oload_champ_namespace): 'oload_syms' parameter now a
842         std::vector pointer.
843         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
844         std::vector pointer.  Adjust to new make_symbol_overload_list
845         interface.
846
847 2018-11-21  Pedro Alves  <palves@redhat.com>
848
849         * common/array-view.h (array_view::splice(size_type, size_t)): New.
850         (array_view::splice(size_type)): New.
851         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
852         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
853         std::vector.
854         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
855         * extension.h: Include "common/array-view.h".
856         (xmethod_worker::invoke): Adjust to use gdb::array_view.
857         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
858         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
859         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
860         (xmethod_worker::do_get_result_type): Adjust to use
861         gdb::array_view.
862         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
863         * gdbtypes.h: Include "common/array-view.h".
864         (rank_function): Adjust to use gdb::array_view.
865         * python/py-xmethods.c (python_xmethod_worker::invoke)
866         (python_xmethod_worker::do_get_arg_types)
867         (python_xmethod_worker::do_get_result_type)
868         (python_xmethod_worker::invoke): Adjust to new interfaces.
869         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
870         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
871         * valops.c (find_overload_match, find_oload_champ_namespace)
872         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
873         gdb:array_view and the new xmethod_worker interfaces.
874         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
875         gdb::array_view.
876         * value.h (find_overload_match, result_type_of_xmethod)
877         (call_xmethod): Adjust to use gdb::array_view.
878         * unittests/array-view-selftests.c: Add slicing tests.
879
880 2018-11-21  Pedro Alves  <palves@redhat.com>
881
882         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
883         * common/array-view.h (make_array_view): New.
884         * compile/compile-object-run.c (compile_object_run): Adjust to
885         pass an array_view.
886         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
887         * eval.c (eval_call): Adjust to pass an array_view.
888         (evaluate_subexp_standard): Adjust to pass an array_view.
889         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
890         * guile/scm-value.c (gdbscm_value_call): Likewise.
891         * infcall.c (push_dummy_code): Replace pointer + size parameters
892         with an array_view parameter.
893         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
894         adjust.
895         * infcall.h: Include "common/array-view.h".
896         (call_function_by_hand, call_function_by_hand_dummy): Replace
897         pointer + size parameters with an array_view parameter.
898         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
899         * linux-tdep.c (linux_infcall_mmap): Likewise.
900         * objc-lang.c (lookup_objc_class, lookup_child_selector)
901         (value_nsstring, print_object_command): Likewise.
902         * python/py-value.c (valpy_call): Likewise.
903         * rust-lang.c (rust_evaluate_funcall): Likewise.
904         * spu-tdep.c (flush_ea_cache): Likewise.
905         * valarith.c (value_x_binop, value_x_unop): Likewise.
906         * valops.c (value_allocate_space_in_inferior): Likewise.
907         * unittests/array-view-selftests.c (run_tests): Add
908         gdb::make_array_view test.
909
910 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
911
912         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
913         than a fixed size buffer.
914
915 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
916
917         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
918         and remove insertion of extra spaces in GDB's output.
919         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
920         Layout field into a temporary buffer, and then output it as a
921         string field.
922
923 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
924
925         * NEWS: Document the language choice done by
926         'info [types|functions|variables]|rbreak'.
927
928 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
929
930         * symtab.c (treg_matches_sym_type_name): Use
931         scoped_switch_to_sym_language_if_auto instead of local logic.
932         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
933         to switch to SYM language when language mode is auto.
934
935 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
936
937         * language.h (scoped_switch_to_sym_language_if_auto): New class.
938
939 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
940
941         * symtab.c (search_symbols): Properly check absence of type regexp
942         before entering the loop scanning the minimal symbols.
943
944 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
945
946         * s12z-tdep.c (s12z_extract_return_value): New function.
947         (inv_reg_perm) New array.
948         (s12z_return_value): Populate readbuf if non-null.
949
950 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
951
952         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
953         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
954         to MinGW fixed by Gnulib.
955         (O_NOINHERIT): Define if not defined.
956
957 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
958
959         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
960
961 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
962
963         * infrun.c (displaced_step_inferior_state) <next>: Remove.
964
965 2018-11-19  Tom Tromey  <tom@tromey.com>
966
967         * source.c (get_filename_and_charpos): Return void.
968
969 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
970
971         * skip.c (_initialize_step_skip): Fix "info skip" help.
972
973 2018-11-16  Tom Tromey  <tom@tromey.com>
974
975         PR rust/23625:
976         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
977
978 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
979
980         * infrun.c (displaced_step_inferior_states): Change type to
981         std::forward_list.
982         (get_displaced_stepping_state): Adjust.
983         (displaced_step_in_progress_any_inferior): Adjust.
984         (add_displaced_stepping_state): Adjust.
985         (remove_displaced_stepping_state): Adjust.
986
987 2018-11-18  Tom Tromey  <tom@tromey.com>
988
989         PR build/23814:
990         * target-delegates.c: Rebuild.
991         * ia64-linux-nat.c (class ia64_linux_nat_target)
992         <have_steppable_watchpoint>: Use override.  Return true, not 1.
993         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
994         "self" argument.
995         (ia64_linux_nat_target::low_new_thread): Rename.
996         (class ia64_linux_nat_target) <read_description>: Don't declare.
997         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
998         bool.
999
1000 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1001
1002         PR gdb/22736:
1003         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1004         lang_struct_return code.
1005
1006 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1007
1008         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1009         return_method.
1010         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1011         * amd64-tdep.c (amd64_push_arguments): Likewise.
1012         (amd64_push_dummy_call): Likewise.
1013         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1014         * arc-tdep.c (arc_push_dummy_call): Likewise.
1015         * arm-tdep.c (arm_push_dummy_call): Likewise.
1016         * avr-tdep.c (avr_push_dummy_call): Likewise.
1017         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1018         * cris-tdep.c (cris_push_dummy_call): Likewise.
1019         * csky-tdep.c (csky_push_dummy_call): Likewise.
1020         * frv-tdep.c (frv_push_dummy_call): Likewise.
1021         * gdbarch.c: Regenerate.
1022         * gdbarch.h: Regenerate.
1023         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1024         return_method.
1025         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1026         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1027         (hppa64_push_dummy_call): Likewise.
1028         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1029         * i386-tdep.c (i386_push_dummy_call): Likewise.
1030         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1031         * infcall.c (call_function_by_hand_dummy): Likewise.
1032         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1033         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1034         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1035         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1036         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1037         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1038         * mep-tdep.c (mep_push_dummy_call): Likewise.
1039         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1040         (mips_n32n64_push_dummy_call): Likewise.
1041         (mips_o32_push_dummy_call): Likewise.
1042         (mips_o64_push_dummy_call): Likewise.
1043         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1044         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1045         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1046         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1047         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1048         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1049         (ppc64_sysv_abi_push_dummy_call): Likewise.
1050         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1051         (ppc64_sysv_abi_push_dummy_call): Likewise.
1052         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1053         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1054         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1055         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1056         * rx-tdep.c (rx_push_dummy_call): Likewise.
1057         * s390-tdep.c (s390_push_dummy_call): Likewise.
1058         * score-tdep.c (score_push_dummy_call): Likewise.
1059         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1060         (sh_push_dummy_call_nofpu): Likewise.
1061         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1062         (sparc32_push_dummy_call): Likewise.
1063         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1064         (sparc64_push_dummy_call): Likewise.
1065         * spu-tdep.c (spu_push_dummy_call): Likewise.
1066         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1067         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1068         * v850-tdep.c (v850_push_dummy_call): Likewise.
1069         * vax-tdep.c (vax_push_dummy_call): Likewise.
1070         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1071         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1072
1073 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1074
1075         * gdbarch.sh (enum function_call_return_method): Add enum.
1076         * gdbarch.h: Regenerate.
1077         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1078
1079 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1080
1081         * unittests/copy_bitwise-selftests.c: New file.
1082         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1083         (selftests::copy_bitwise_tests): Delete, moving this code to
1084         unittests/copy_bitwise-selftests.c instead.
1085         (_initialize_utils): Do not register copy_bitwise tests.
1086         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1087         unittests/copy_bitwise-selftests.c.
1088
1089 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1090
1091         * ada-lang.c (move_bits): Delete. Update all callers to use
1092         copy_bitwise instead.
1093         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1094         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1095         Move from here to utils.c.
1096         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1097         selftests.
1098         * utils.h (copy_bitwise): Add declaration.
1099         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1100         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1101         Moved here from dwarf2loc.c.
1102         (_initialize_utils): Register copy_bitwise selftests.
1103
1104 2018-11-14  Jim Wilson  <jimw@sifive.com>
1105
1106         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1107         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1108         then increment next_regnum if odd.
1109         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1110         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1111         function type.  Pass new arg to riscv_arg_location based on function
1112         type.
1113         (riscv_return_value): Pass new arg to riscv_arg_location.
1114
1115         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1116         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1117         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1118
1119         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1120         setting len.  New local align, set to max of arg align and xlen,
1121         and pass to first riscv_assign_stack_location call.
1122
1123 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1124
1125         * skip.c (complete_skip_number): New function.
1126         (_initialize_step_skip): Add completers to some skip commands.
1127
1128 2018-11-09  Tom Tromey  <tom@tromey.com>
1129
1130         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1131         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1132         <guesses>: Now a std::vector.
1133         (remote_g_packet_data_init, register_remote_g_packet_guess):
1134         Update.
1135         (remote_read_description_p): Update.  Return bool.
1136         (remote_target::read_description): Update.
1137         (struct remote_g_packet_guess): Add constructor.
1138
1139 2018-11-09  Tom Tromey  <tom@tromey.com>
1140
1141         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1142         move assignment operator.
1143         * psymtab.c (psymtab_to_fullname): Update.
1144         * source.h (open_source_file): Return scoped_fd.
1145         (find_and_open_source): Likewise.
1146         * source.c (open_source_file): Return scoped_fd.
1147         (get_filename_and_charpos): Update.
1148         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1149         (forward_search_command): Likewise.
1150         (reverse_search_command): Likewise.
1151         (find_and_open_source): Return scoped_fd.
1152         * tui/tui-source.c (tui_set_source_content): Update.  Use
1153         gdb_file_up.
1154
1155 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1156
1157         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1158         overflow.
1159
1160 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1161
1162         * configure: Regenerate.
1163
1164 2018-11-09  Tom de Vries  <tdevries@suse.de>
1165
1166         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1167         unconditionally, to set the language of the symbol.  Manage freeing
1168         returned pointer using gdb::unique_xmalloc_ptr.
1169
1170 2018-11-08  Tom Tromey  <tom@tromey.com>
1171
1172         * record.c (require_record_target): Upper-case "<TAB>".
1173
1174 2018-11-08  Tom Tromey  <tom@tromey.com>
1175
1176         * python/lib/gdb/command/pretty_printers.py
1177         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1178
1179 2018-11-08  Tom Tromey  <tom@tromey.com>
1180
1181         PR gdb/23555:
1182         PR gdb/23838:
1183         * target.h (target_supports_terminal_ours): Return bool.
1184         * target.c (target_supports_terminal_ours): Handle case where
1185         current_top_target returns nullptr.  Return bool.
1186
1187 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1188
1189         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1190         return the correct count for potential HFAs.
1191
1192 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1193
1194         * i387-tdep.c (i387_supply_xsave): Split handling of
1195         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1196         (i387_collect_xsave): Likewise.
1197
1198 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1199
1200         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1201         (riscv_frame_this_id): Catch errors thrown while building the
1202         frame cache, leave the frame id as the default, which is the outer
1203         frame id.
1204
1205 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1206
1207         * ada-lang.c (read_atcb): Only set task_info->called_task if
1208         task_info->state == Entry_Caller_Sleep.
1209         (print_ada_task_info): Do not check task_info->state before
1210         checking task_info->called_task.
1211         (info_task): Likewise.
1212
1213 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1214
1215         * ada-tasks.c (read_atcb): Clear task_info before computing
1216         the value of each of its fields.
1217
1218 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1219
1220         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1221         NULL before dereferencing it.
1222
1223 2018-11-06  Tom de Vries  <tdevries@suse.de>
1224
1225         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1226         program headers.
1227
1228 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1229
1230         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1231         so that it applies to uclinux as well.
1232
1233 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1234
1235         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1236         when on AAPCS.
1237
1238 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1239
1240         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1241         RISCV_CSR_SSTATUS_REGNUM.
1242
1243 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1244
1245         * source.c (open_source_file): Fix leak by transferring the
1246         current s->fullname to the unique_xmalloc_ptr fullname given
1247         to find_and_open_source.
1248
1249 2018-11-04  Tom Tromey  <tom@tromey.com>
1250
1251         * varobj.c (install_default_visualizer): Update.
1252         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1253         Return gdbpy_ref.
1254         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1255         (find_pretty_printer_from_progspace)
1256         (find_pretty_printer_from_gdb, find_pretty_printer)
1257         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1258         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1259         Update.
1260
1261 2018-11-04  Tom Tromey  <tom@tromey.com>
1262
1263         * python/python.c (gdbpy_parameter_value): Update.
1264         * python/python-internal.h (python_string_to_unicode)
1265         (python_string_to_target_python_string)
1266         (host_string_to_python_string): Return gdbpy_ref.
1267         * python/py-utils.c (python_string_to_unicode)
1268         (unicode_to_encoded_python_string)
1269         (unicode_to_target_python_string)
1270         (python_string_to_target_string)
1271         (python_string_to_target_python_string): Return gdbpy_ref.
1272         (python_string_to_host_string): Update.
1273         (host_string_to_python_string): Return gdbpy_ref.
1274         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1275         (stpy_fullname): Update.
1276         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1277         Update.
1278         * python/py-prettyprint.c (print_string_repr): Update.
1279         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1280         (objfpy_get_build_id): Update.
1281         * python/py-breakpoint.c (bppy_get_location)
1282         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1283         Update.
1284
1285 2018-11-04  Tom Tromey  <tom@tromey.com>
1286
1287         * python/python-internal.h (gdb_py_object_from_longest)
1288         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1289         * python/py-value.c (valpy_int): Update.
1290         * python/py-utils.c (gdb_py_object_from_longest): Return
1291         gdbpy_ref.
1292         (gdb_py_object_from_ulongest): Likewise.
1293         * python/py-type.c (typy_get_alignof): Update.
1294         * python/py-linetable.c (ltpy_get_all_source_lines)
1295         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1296         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1297
1298 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1299
1300         * ada-lang.c (_initialize_ada_language): Fix typo.
1301
1302 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1303
1304         * language.c (type): Remove.
1305         (_initialize_language): Remove assignment to type.
1306
1307 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1308
1309         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1310         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1311         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1312         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1313         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1314         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1315         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1316         and aarch64-ravenscar-thread.o.
1317         * NEWS: Add entry documenting Ravenscar tasking support
1318         on AArch64 ELF.
1319
1320 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1321
1322         * symtab.c (info_functions_command): Initialize quiet flag.
1323         * stack.c (info_args_command): Likewise.
1324
1325 2018-11-01  Jim Wilson  <jimw@sifive.com>
1326
1327         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1328         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1329         debugging messages.
1330
1331 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1332
1333         * ada-lang.c (ada_watch_location_expression): New function.
1334         (ada_language_defn): Set la_watch_location_expression to
1335         ada_watch_location_expression.
1336
1337 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1338
1339         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1340
1341 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1342
1343         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1344         shifting.
1345
1346 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1347             Joel Brobecker  <brobecker@adacore.com>
1348
1349         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1350         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1351         * arm-pikeos-tdep.c: New file.
1352         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1353         embedded system.
1354         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1355
1356 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1357
1358         * common/pathstuff.c (get_standard_temp_dir): New.
1359         * common/pathstuff.h (get_standard_temp_dir): New.
1360         * config.in: Re-generate.
1361         * configure: Re-generate.
1362         * configure.ac: Don't check for mkdtemp.
1363         * gnulib/aclocal-m4-deps.mk: Re-generate.
1364         * gnulib/aclocal.m4: Re-generate.
1365         * gnulib/config.in: Re-generate.
1366         * gnulib/configure: Re-generate.
1367         * gnulib/import/Makefile.am: Re-generate.
1368         * gnulib/import/Makefile.in: Re-generate.
1369         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1370         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1371         * gnulib/import/m4/mkdtemp.m4: New file.
1372         * gnulib/import/mkdtemp.c: New file.
1373         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1374         Add mkdtemp module.
1375         * unittests/mkdir-recursive-selftests.c (test): Use
1376         get_standard_temp_dir.
1377         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1378         ifdef.
1379         * compile/compile.c (get_compile_file_tempdir): Likewise.
1380
1381 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1382
1383         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1384         (SIG_FRAME_LR_OFFSET64): New define.
1385         (SIG_FRAME_FP_OFFSET64): New define.
1386         (aix_sighandle_frame_cache): New Function.
1387         (aix_sighandle_frame_this_id): New Function.
1388         (aix_sighandle_frame_prev_register): New Function.
1389         (aix_sighandle_frame_sniffer): New Function.
1390         (aix_sighandle_frame_unwind): New global variable.
1391         (rs6000_aix_init_osabi): Install new frame unwinder.
1392
1393 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1394
1395         PR gdb/23835
1396         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1397         already defined.
1398
1399 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1400
1401         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1402
1403 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1404
1405         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1406         (producer_is_icc): New function.
1407         (check_producer): Set producer_is_icc field on dwarf2_cu.
1408         (dwarf2_init_integer_type): New function.
1409         (read_base_type): Call dwarf2_init_integer_type instead of
1410         init_integer_type in all cases.
1411         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1412         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1413         LEN is greater than 0.
1414
1415 2018-10-30  Tom Tromey  <tom@tromey.com>
1416
1417         * main.c (captured_main_1): Check return value of bfd_init.
1418
1419 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1420
1421         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1422         Adjust comments.
1423
1424 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1425
1426         * procfs.c: Include common/pathstuff.h.
1427
1428 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1429
1430         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1431         Add missing braces.  No functional change.
1432
1433 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1434
1435         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1436         to report a bad option and fix indentation.
1437         * demangle.c (demangle_command): Use report_unrecognized_option_error
1438         to report a bad option and correctly report the bad option.
1439
1440 2018-10-27  Tom Tromey  <tom@tromey.com>
1441
1442         PR cli/23364:
1443         * darwin-nat.c (copied_shell): New global.
1444         (may_have_sip): Rename from should_disable_startup_with_shell.
1445         (copy_shell_to_cache, maybe_cache_shell): New functions.
1446         (darwin_nat_target::create_inferior): Update.  Use
1447         copied_shell.
1448
1449 2018-10-27  Tom Tromey  <tom@tromey.com>
1450
1451         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1452         (run_tests): Call test_to_file.
1453         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1454         temporary files.
1455         * common/scoped_fd.h (scoped_fd::to_file): New method.
1456
1457 2018-10-27  Tom Tromey  <tom@tromey.com>
1458
1459         * unittests/scoped_mmap-selftests.c (test_normal): Use
1460         gdb_mkostemp_cloexec.
1461         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1462         Use gdb_mkostemp_cloexec.
1463         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1464         gnulib/config.in, gnulib/configure,
1465         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1466         gnulib/import/m4/gnulib-cache.m4,
1467         gnulib/import/m4/gnulib-comp.m4: Update.
1468         * gnulib/import/m4/mkostemp.m4: New file.
1469         * gnulib/import/m4/mkstemp.m4: Remove.
1470         * gnulib/import/mkostemp.c: New file.
1471         * gnulib/import/mkstemp.m4: Remove.
1472         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1473         mkstemp, add mkostemp.  Apply new patch.
1474         * gnulib/import/stdlib.in.h: Apply patch.
1475         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1476         New file.
1477         * dwarf-index-write.c (write_psymtabs_to_index): Use
1478         gdb_mkostemp_cloexec.
1479         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1480
1481 2018-10-27  Tom Tromey  <tom@tromey.com>
1482
1483         * unittests/mkdir-recursive-selftests.c: New file.
1484         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1485         unittests/mkdir-recursive-selftests.c.
1486         * dwarf-index-cache.c (mkdir_recursive): Move to
1487         common/filestuff.c.
1488         (index_cache::store): Check return value of mkdir_recursive.
1489         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1490         (_initialize_index_cache): Don't register test.
1491         * common/filestuff.h (mkdir_recursive): Declare.
1492         * common/filestuff.c (mkdir_recursive): Move from
1493         dwarf-index-cache.c.  Return bool.
1494
1495 2018-10-27  Tom Tromey  <tom@tromey.com>
1496
1497         * dwarf-index-write.c (write_psymtabs_to_index): Move
1498         make_temp_filename to common/pathstuff.c.
1499         * common/pathstuff.h (make_temp_filename): Declare.
1500         * common/pathstuff.c (make_temp_filename): New function, moved
1501         from dwarf-index-write.c.
1502
1503 2018-10-27  Tom Tromey  <tom@tromey.com>
1504
1505         * procfs.c (procfs_target::create_inferior): Use get_shell.
1506         * cli/cli-cmds.c (shell_escape): Use get_shell.
1507         * windows-nat.c (windows_nat_target::create_inferior): Use
1508         get_shell.
1509         * common/pathstuff.c (get_shell): New function.
1510         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1511         (fork_inferior): Use get_shell.
1512         * common/pathstuff.h (get_shell): Declare.
1513
1514 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1515
1516         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1517
1518 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1519
1520         * stack.c (print_variable_and_value_data): Add preg and treg.
1521         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1522         and update callers.
1523         (print_frame_arg_vars): Likewise.
1524         (prepare_reg): New function.
1525         (info_locals_command): Extract info print args and use them.
1526         (info_args_command): Likewise.
1527         (_initialize_stack): Modify on-line help.
1528         * symtab.c (treg_matches_sym_type_name): New function.
1529         (search_symbols): New arg t_regexp.
1530         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1531         (info_variables_command): Extract info print args and use them.
1532         (info_functions_command): Likewise.
1533         (info_types_command): Update call to symtab_symbol_info.
1534         (_initialize_symtab): Modify on-line help.
1535         * symtab.h (treg_matches_sym_type_name): New function.
1536         (search_symbols): New t_regexp arg.
1537
1538 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1539
1540         * cli-utils.c (extract_arg_maybe_quoted): New function.
1541         (extract_info_print_args): New function.
1542         (info_print_args_help): New function.
1543         (report_unrecognized_option_error): New function.
1544         * cli-utils.h (extract_arg_maybe_quoted): New function.
1545         (extract_info_print_args): New function.
1546         (info_print_args_help): New function.
1547         (report_unrecognized_option_error): New function.
1548
1549 2018-10-26  Tom Tromey  <tom@tromey.com>
1550
1551         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1552         (compute_compunit_symtab_includes): Update.
1553         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1554         (compunit_symtab_ptr): Likewise.
1555
1556 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1557
1558         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1559         default_print_auxv_entry for specific tag values.
1560
1561 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1562
1563         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1564
1565 2018-10-26  Jim Wilson  <jimw@sifive.com>
1566
1567         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1568         (riscv_linux_sigframe_init): Declare.
1569         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1570         (riscv_linux_sigframe): New.
1571         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1572         (riscv_linux_sigframe_init): Define.
1573         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1574
1575         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1576         (riscv_isa_flen): Likewise.  Drop static.
1577         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1578         (riscv_isa_flen): Likewise.  Declare.
1579
1580 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1581             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1582
1583         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1584         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1585         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1586         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1587         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1588         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1589         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1590         Define.
1591         (struct ppc_linux_features) <htm>: New field.
1592         (ppc_linux_no_features): Add initializer for htm field.
1593         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1594         new tdescs.
1595         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1596         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1597         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1598         Define if not already defined.
1599         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1600         and rs6000/powerpc-isa207-htm-vsx64l.
1601         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1602         rs6000/powerpc-isa207-htm-vsx64l.xml.
1603         * features/rs6000/power-htm-spr.xml: New file.
1604         * features/rs6000/power-htm-core.xml: New file.
1605         * features/rs6000/power64-htm-core.xml: New file.
1606         * features/rs6000/power-htm-fpu.xml: New file.
1607         * features/rs6000/power-htm-altivec.xml: New file.
1608         * features/rs6000/power-htm-vsx.xml: New file.
1609         * features/rs6000/power-htm-ppr.xml: New file.
1610         * features/rs6000/power-htm-dscr.xml: New file.
1611         * features/rs6000/power-htm-tar.xml: New file.
1612         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1613         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1614         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1615         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1616         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1617         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1618         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1619         fetch_regset with HTM regsets.
1620         (store_register, store_ppc_registers): Call store_regset with HTM
1621         regsets.
1622         (ppc_linux_nat_target::read_description): Set htm field in the
1623         features struct if needed.
1624         * ppc-linux-tdep.c: Include
1625         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1626         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1627         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1628         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1629         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1630         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1631         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1632         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1633         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1634         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1635         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1636         (ppc32_linux_ctarregset): New globals.
1637         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1638         (ppc_linux_collect_core_cpgrregset): New function.
1639         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1640         regsets.
1641         (ppc_linux_core_read_description): Check if the tm spr section is
1642         present and set htm in the features struct.
1643         (_initialize_ppc_linux_tdep): Call
1644         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1645         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1646         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1647         Declare.
1648         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1649         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1650         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1651         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1652         New fields.
1653         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1654         Likewise.
1655         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1656         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1657         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1658         New enum fields.
1659         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1660         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1661         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1662         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1663         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1664         <PPC_CTAR_REGNUM>: Likewise.
1665         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1666         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1667         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1668         (IS_CEFP_PSEUDOREG): Define.
1669         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1670         registers.  Return names for the checkpointed DFP, VSX, and EFP
1671         pseudo registers.
1672         (rs6000_pseudo_register_type): Remove initial assert and raise an
1673         internal error in the else clause instead.  Return types for the
1674         checkpointed DFP, VSX, and EFP pseudo registers.
1675         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1676         checkpointed DFP pseudo registers.
1677         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1678         checkpointed VSX pseudo registers.
1679         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1680         from efpr_pseudo_register_read and
1681         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1682         registers.
1683         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1684         Handle checkpointed DFP, VSX, and EFP registers.
1685         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1686         (efp_ax_pseudo_register_collect): New functions.
1687         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1688         register logic to new functions.  Handle checkpointed DFP, VSX,
1689         and EFP pseudo registers.
1690         (rs6000_gdbarch_init): Look for and validate the htm features.
1691         Include checkpointed DFP, VSX and EFP pseudo-registers.
1692         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1693         HTM registers.
1694
1695 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1696
1697         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1698         without altivec or fpu.
1699
1700 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1701             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1702
1703         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1704         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1705         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1706         Define if not already defined.
1707         * features/rs6000/power-ebb.xml: New file.
1708         * features/rs6000/power-linux-pmu.xml: New file.
1709         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1710         features.
1711         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1712         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1713         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1714         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1715         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1716         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1717         fetch_regset with ebb and pmu regsets.
1718         (store_register, store_ppc_registers): Call store_regset with ebb
1719         and pmu regsets.
1720         (ppc_linux_nat_target::read_description): Set isa207 field in the
1721         features struct if ebb and pmu are avaiable.
1722         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1723         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1724         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1725         and pmu regsets.
1726         (ppc_linux_core_read_description): Check if the pmu section is
1727         present and set isa207 in the features struct.
1728         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1729         (ppc32_linux_pmuregset): Declare.
1730         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1731         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1732         <ppc_sier_regnum>: New field.
1733         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1734         New enum values.
1735         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1736         values.
1737         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1738         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1739         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1740         ebb and pmu features.
1741
1742 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1743             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1744
1745         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1746         (tdesc_powerpc_isa207_vsx64l): Declare.
1747         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1748         (struct ppc_linux_features) <isa207>: New field.
1749         (ppc_linux_no_features): Add initializer for isa207 field.
1750         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1751         new tdescs.
1752         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1753         (NT_PPC_TAR): Define if not already defined.
1754         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1755         rs6000/powerpc-isa207-vsx64l.
1756         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1757         rs6000/powerpc-isa207-vsx64l.xml.
1758         * features/rs6000/power-tar.xml: New file.
1759         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1760         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1761         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1762         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1763         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1764         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1765         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1766         fetch_regset with the TAR regset.
1767         (store_register, store_ppc_registers): Call store_regset with the
1768         TAR regset.
1769         (ppc_linux_nat_target::read_description): Set isa207 field in the
1770         features struct if needed.
1771         * ppc-linux-tdep.c: Include
1772         features/rs6000/powerpc-isa207-vsx32l.c and
1773         features/rs6000/powerpc-isa207-vsx64l.c.
1774         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1775         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1776         regset.
1777         (ppc_linux_core_read_description): Check if the tar section is
1778         present and set isa207 in the features struct.
1779         (_initialize_ppc_linux_tdep): Call
1780         initialize_tdesc_powerpc_isa207_vsx32l and
1781         initialize_tdesc_powerpc_isa207_vsx64l.
1782         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1783         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1784         (enum) <PPC_TAR_REGNUM>: New enum value.
1785         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1786         feature.
1787         (ppc_process_record_op31): Record changes to TAR.
1788
1789 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1790             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1791
1792         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1793         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1794         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1795         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1796         (struct ppc_linux_features) <ppr_dscr>: New field.
1797         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1798         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1799         new tdescs.
1800         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1801         Define if not already defined.
1802         * features/Makefile (WHICH): Add
1803         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1804         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1805         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1806         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1807         * features/rs6000/power-dscr.xml: New file.
1808         * features/rs6000/power-ppr.xml: New file.
1809         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1810         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1811         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1812         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1813         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1814         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1815         * ppc-linux-nat.c: Include <sys/uio.h>.
1816         (fetch_regset, store_regset, check_regset): New functions.
1817         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1818         DSCR and PPR regsets.
1819         (store_register, store_ppc_registers): Call store_regset with
1820         DSCR and PPR regsets.
1821         (ppc_linux_get_hwcap2): New function.
1822         (ppc_linux_nat_target::read_description): Call
1823         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1824         features struct if needed.
1825         * ppc-linux-tdep.c: Include
1826         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1827         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1828         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1829         (ppc32_linux_dscrregset): New globals.
1830         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1831         and dscr regsets.
1832         (ppc_linux_core_read_description): Check if the ppr and dscr
1833         sections are present and set ppr_dscr in the features struct.
1834         (_initialize_ppc_linux_tdep): Call
1835         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1836         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1837         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1838         (ppc32_linux_dscrregset): Declare.
1839         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1840         <ppc_dscr_regnum>: New field.
1841         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1842         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1843         and dscr features.
1844         (ppc_process_record_op31): Record changes to PPR and DSCR.
1845
1846 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1847
1848         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1849         second initializer line for the have_* variables.  Initialize
1850         have_fpu to 0 instead of 1.
1851
1852 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1853
1854         * arch/ppc-linux-common.c (ppc_linux_match_description):
1855         Parenthesize tdesc assignements and indent them properly.
1856
1857 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1858
1859         * ppc-linux-nat.c (fetch_register): Change if statement to else
1860         if.
1861         (store_register): Likewise.
1862
1863 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1864
1865         * rs6000-tdep.c: Remove reggroups.h include.
1866         (rs6000_pseudo_register_reggroup_p): Remove.
1867         (rs6000_gdbarch_init): Remove call to
1868         set_tdesc_pseudo_register_reggroup_p.
1869
1870 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1871
1872         * reggroups.c (default_register_reggroup_p): Return true for
1873         decfloat registers and float_reggroup.
1874
1875 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1876
1877         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1878         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1879         ppc_linux_collect_vrregset by regcache_collect_regset.
1880
1881 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1882
1883         * linux-tdep.c (linux_collect_regset_section_cb): Use
1884         std::vector<gdb_byte> instead of char * and malloc for buf.
1885         Remove xfree.
1886
1887 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1888
1889         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1890         symtab_start instead of always using language_unknown.
1891
1892 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1893
1894         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1895         READ_P parameter, catch and ignore register access errors from
1896         either the old or new MISA location.
1897         (riscv_has_feature): Update call to riscv_read_misa_reg.
1898
1899 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1900
1901         * python/py-function.c (convert_values_to_python): Return
1902         gdbpy_ref<>.  Add header comment.
1903         (fnpy_call): Adjust.
1904
1905 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1906
1907         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1908         (cmdpy_completer_handle_brkchars): Adjust.
1909         (cmdpy_completer): Adjust.
1910
1911 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1912
1913         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1914         Pass correct regnum to raw_supply_zeroed.
1915
1916 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1917
1918         * regcache.c (cooked_read_test): Add CSKY to the list of
1919         architectures with a save_reggroup
1920
1921 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1922
1923         PR gdb/23368
1924         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1925         transfer terminal state from old new new inferior.
1926         * terminal.h (swap_terminal_info): New function.
1927         * inflow.c (swap_terminal_info): New function.
1928
1929 2018-10-23  Tom Tromey  <tom@tromey.com>
1930
1931         * record-btrace.c (get_thread_current_frame_id): Rename from
1932         get_thread_current_frame.  Return a frame_id.
1933         (record_btrace_start_replaying): Update.
1934
1935 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1936
1937         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1938         for CSRs.
1939
1940 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1941
1942         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1943         have_nonsteppable_watchpoint attribute to 1.
1944
1945 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1946
1947         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1948         register names.
1949         (struct register_alias): Rename to...
1950         (struct riscv_register_alias): ...this, and update comment.
1951         (riscv_register_aliases): Update type, and alias names.  Remove
1952         CSR names from this list.
1953         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1954         register names.  Add an extra assertion.
1955         (riscv_is_regnum_a_named_csr): New function.
1956         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1957
1958 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1959
1960         * configure.tgt: Add configuration for s12z.
1961         * s12z-tdep.c:  New file.
1962         * NEWS: Mention new target.
1963
1964 2018-10-22  Jim Wilson  <jimw@sifive.com>
1965
1966         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1967         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1968
1969         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1970         (riscv_register_type): Use them.
1971         (riscv_print_one_register_info): Handle union of floats same as float.
1972         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1973         riscv_fpreg_q_type fields.
1974
1975 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1976
1977         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1978         * gdbarch.h: Re-generate.
1979         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1980         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1981         * eval.c (evaluate_subexp_standard): Likewise.
1982         * findvar.c (value_of_register): Likewise.
1983         (value_of_register_lazy): Likewise.
1984         (address_from_register): Likewise.
1985         * frame.c (get_frame_register_bytes): Likewise.
1986         * gdbarch-selftests.c (register_to_value_test): Likewise.
1987         * h8300-tdep.c (h8300_register_type): Likewise.
1988         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1989         (i386_svr4_reg_to_regnum): Likewise.
1990         * infcmd.c (default_print_registers_info): Likewise.
1991         (registers_info): Likewise.
1992         (print_vector_info): Likewise.
1993         (default_print_float_info): Likewise.
1994         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1995         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1996         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1997         (mi_cmd_data_list_changed_registers): Likewise.
1998         (mi_cmd_data_list_register_values): Likewise.
1999         (mi_cmd_data_write_register_values): Likewise.
2000         (mi_cmd_trace_frame_collected): Likewise.
2001         * mips-tdep.c (print_gp_register_row): Likewise.
2002         (mips_print_registers_info): Likewise.
2003         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2004         * regcache.c (init_regcache_descr): Likewise.
2005         (register_size): Likewise.
2006         (register_dump::dump): Likewise.
2007         (cooked_read_test): Likewise.
2008         (cooked_write_test): Likewise.
2009         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2010         (rs6000_gdbarch_init): Likewise.
2011         * stabsread.c (stab_reg_to_regnum): Likewise.
2012         * stack.c (info_frame_command): Likewise.
2013         * target-descriptions.c (tdesc_register_name): Likewise.
2014         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2015         * tui/tui-regs.c (tui_show_register_group): Likewise.
2016         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2017         (user_reg_map_regnum_to_name): Likewise.
2018         (value_of_user_reg): Likewise.
2019         (maintenance_print_user_registers): Likewise.
2020         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2021         (xtensa_register_name): Likewise.
2022         (xtensa_register_type): Likewise.
2023         (xtensa_reg_to_regnum): Likewise.
2024         (xtensa_pseudo_register_read): Likewise.
2025         (xtensa_pseudo_register_write): Likewise.
2026
2027 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2028
2029         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2030         correctly-sized buffer with raw_read.
2031         (amd64_pseudo_register_write): Use correctly-sized buffer for
2032         raw_read/raw_write.
2033
2034 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2035
2036         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2037         in add_prefix_cmd of set print type.
2038
2039 2018-10-19  Tom Tromey  <tom@tromey.com>
2040
2041         PR tui/18388:
2042         * NEWS: Mention tabset deprecation.
2043         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2044         (update_tab_width): New function.
2045         (tui_set_tab_width, tui_show_tab_width): New functions.
2046         (tui_set_tab_width_command): Use update_tab_width.
2047         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2048         Add new "set tui tab-width" command.
2049         * tui/tui-source.c (tui_set_source_content): Update.
2050         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2051         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2052         Don't declare.
2053         (tui_tab_width): Declare.
2054         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2055         (tui_set_default_tab_len): Remove.
2056
2057 2018-10-19  Tom Tromey  <tom@tromey.com>
2058
2059         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2060         (key_is_backspace, tui_getc): Don't declare.
2061         * tui/tui-io.c (key_is_start_sequence): Now static.
2062         (key_is_end_sequence, key_is_backspace): Remove.
2063         (tui_getc): Now static.
2064
2065 2018-10-19  Tom Tromey  <tom@tromey.com>
2066
2067         * symfile.c (reread_symbols): Clear "static_links".
2068
2069 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2070
2071         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2072         define.
2073         (aarch64_linux_sigframe_init): Extra boundary checks.
2074
2075 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2076
2077         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2078         the possibly non-existent tdesc type 'vec128', but the type of raw
2079         register v16 instead.
2080
2081 2018-10-19  Gary Benson <gbenson@redhat.com>
2082
2083         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2084
2085 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2086
2087         PR cli/23785
2088         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2089         NULL.
2090
2091 2018-10-17  Paul Koning  <paul_koning@dell.com>
2092
2093         * charset.c (convert_between_encodings): Fix unsigned overflow.
2094
2095 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2096
2097         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2098         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2099         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2100         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2101         New functions.
2102         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2103         and fbsd_info_proc_mappings_header.
2104         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2105         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2106         New.
2107
2108 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2109
2110         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2111         Solaris Maintainer.
2112
2113 2018-10-15  Tom Tromey  <tom@tromey.com>
2114
2115         * tui/tui.c (strcat_to_buf): Remove casts.
2116         * tui/tui-winsource.c (tui_show_source_line)
2117         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2118         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2119         * tui/tui-windata.c (tui_first_data_item_displayed)
2120         (tui_delete_data_content_windows, tui_erase_data_content)
2121         (tui_display_all_data, tui_display_data_from)
2122         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2123         * tui/tui-win.c (tui_set_win_height)
2124         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2125         casts.
2126         * tui/tui-win.c (tui_resize_all): Remove casts.
2127         (tui_scroll_backward_command, tui_set_focus)
2128         (tui_set_tab_width_command): Likewise.
2129         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2130         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2131         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2132         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2133         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2134         Remove casts.
2135
2136 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2137
2138         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2139         AArch64/ARM maintainer.
2140
2141 2018-10-11  Gary Benson <gbenson@redhat.com>
2142
2143         * interps.h (interp::m_name): Make private and mutable.
2144         * interps.c (interp::~interp): Free m_name.
2145
2146 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2147             Simon Marchi <simark@simark.ca>
2148
2149         * README (`configure' options): Add documentation for new
2150         "--enable-unit-tests" option.
2151         * acinclude.m4: Include "selftest.m4".
2152         * configure: Regenerate.
2153         * configure.ac: Use "GDB_AC_SELFTEST".
2154         * maint.c (maintenance_selftest): Update message informing
2155         that selftests have been disabled.
2156         (maintenance_info_selftests): Likewise.
2157         * selftest.m4: New file.
2158
2159 2018-10-10  Gary Benson <gbenson@redhat.com>
2160
2161         * remote.c (remote_target::remote_send_printf): Add
2162         missing va_end found by Coverity.
2163
2164 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2165
2166         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2167
2168 2018-10-09  Tom Tromey  <tom@tromey.com>
2169
2170         * configure: Rebuild.
2171         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2172         * NEWS: Update --enable-ubsan documentation.
2173
2174 2018-10-09  Gary Benson <gbenson@redhat.com>
2175
2176         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2177         found by Coverity.
2178
2179 2018-10-08  Tom Tromey  <tom@tromey.com>
2180
2181         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2182         variable.
2183         (riscv_fbsd_init_abi): Likewise.
2184
2185 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2186         * valops.c (value_struct_elt_for_reference): Rename local variable
2187         to work around the shadowing a previous local warning.
2188
2189 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2190
2191         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2192         * NEWS: Mention new FreeBSD/riscv native configuration.
2193         * configure.host: Add riscv*-*-freebsd*.
2194         * configure.nat: Likewise.
2195         * riscv-fbsd-nat.c: New file.
2196
2197 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2198
2199         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2200         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2201         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2202         * NEWS: Mention new FreeBSD/riscv target.
2203         * configure.tgt: Add riscv*-*-freebsd*.
2204         * riscv-fbsd-tdep.c: New file.
2205         * riscv-fbsd-tdep.h: New file.
2206
2207 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2208
2209         * regcache.h (struct regcache_map_entry): Note that this type can
2210         be used with traditional frame caches.
2211         * trad-frame.c (trad_frame_set_reg_regmap): New.
2212         * trad-frame.h (trad_frame_set_reg_regmap): New.
2213
2214 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2215
2216         PR c++/16841
2217         * valops.c (get_virtual_base_offset): New function.
2218         (value_struct_elt_for_reference): Use it to get virtual base offset
2219         and add it in calculating class member address.
2220
2221 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2222
2223         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2224         (check_producer): Check if the producer is codewarrior.
2225         (producer_is_codewarrior): New function.
2226         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2227         produced by codewarrior.
2228         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2229
2230 2018-10-06  Tom Tromey  <tom@tromey.com>
2231
2232         PR python/19399:
2233         * python/py-inferior.c: Add "architecture" entry.
2234         (infpy_architecture): New function.
2235
2236 2018-10-06  Tom Tromey  <tom@tromey.com>
2237
2238         PR python/21765:
2239         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2240         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2241         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2242         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2243
2244 2018-10-06  Tom Tromey  <tom@tromey.com>
2245
2246         PR build/17077:
2247         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2248         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2249         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2250         #include.
2251
2252 2018-10-06  Tom Tromey  <tom@tromey.com>
2253
2254         * python/py-breakpoint.c (bppy_get_location): Handle a
2255         bp_breakpoint without a location.
2256
2257 2018-10-06  Tom Tromey  <tom@tromey.com>
2258
2259         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2260         (_RegEx): Reformat help text.
2261         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2262         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2263         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2264         text.
2265         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2266         (EnableXMethod, DisableXMethod): Remove help indentation.
2267         Capitalize meta-syntactic variables.
2268         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2269         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2270         Capitalize meta-syntactic variables.
2271         * python/lib/gdb/command/explore.py (ExploreCommand)
2272         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2273         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2274         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2275         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2276         Remove help indentation.
2277         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2278         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2279         (DisableFrameFilter, SetFrameFilterPriority)
2280         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2281
2282 2018-10-06  Tom Tromey  <tom@tromey.com>
2283
2284         PR tui/28819:
2285         * tui/tui-io.c (gdb_wgetch): New function.
2286         (tui_mld_getc, tui_getc): Use it.
2287
2288 2018-10-05  Tom Tromey  <tom@tromey.com>
2289
2290         * sol-thread.c (sol_thread_target::wait): Rename inner
2291         "save_ptid".
2292
2293 2018-10-04  Tom Tromey  <tom@tromey.com>
2294
2295         * configure: Rebuild.
2296         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2297
2298 2018-10-04  Tom Tromey  <tom@tromey.com>
2299
2300         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2301         declaration of "block".
2302
2303 2018-10-04  Tom Tromey  <tom@tromey.com>
2304
2305         * common/filestuff.c (fdwalk): Remove inner declaration of
2306         "result".
2307
2308 2018-10-04  Tom Tromey  <tom@tromey.com>
2309
2310         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2311         "structs_addr" and hoist declaration.
2312
2313 2018-10-04  Tom Tromey  <tom@tromey.com>
2314
2315         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2316         variable "size".
2317
2318 2018-10-04  Tom Tromey  <tom@tromey.com>
2319
2320         * mdebugread.c (parse_partial_symbols): Use std::string.
2321
2322 2018-10-04  Tom Tromey  <tom@tromey.com>
2323
2324         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2325         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2326         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2327         header.
2328         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2329         more inner scope.
2330         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2331         * varobj.c (varobj_update): Rename inner "newobj",
2332         "type_changed".
2333         * valprint.c (generic_emit_char): Rename inner "buf".
2334         * valops.c (find_overload_match): Rename inner "temp".
2335         (value_struct_elt_for_reference): Declare "v" in more inner
2336         scope.
2337         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2338         * unittests/array-view-selftests.c (run_tests): Rename inner
2339         "vec".
2340         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2341         header.
2342         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2343         "tsv" in more inner scope.
2344         (print_one_static_tracepoint_marker): Rename inner
2345         "tuple_emitter".
2346         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2347         (tic6x_push_dummy_call): Don't redeclare "addr".
2348         * target-float.c: Declare "dto" lower.
2349         * symtab.c (lookup_local_symbol): Rename inner "sym".
2350         (find_pc_sect_line): Rename inner "pc".
2351         * stack.c (print_frame): Don't redeclare "gdbarch".
2352         (return_command): Rename inner "gdbarch".
2353         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2354         "sp".
2355         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2356         header.
2357         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2358         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2359         scope.
2360         * remote.c (remote_target::update_thread_list): Don't redeclare
2361         "tp".
2362         (remote_target::process_initial_stop_replies): Rename inner
2363         "thread".
2364         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2365         (remote_target::wait_as): Don't redeclare "stop_reply".
2366         (remote_target::get_thread_local_address): Rename inner
2367         "result".
2368         (remote_target::get_tib_address): Likewise.
2369
2370         * regcache.c (cooked_read_test): Rename "regnum".
2371         * record-btrace.c (cmd_record_btrace_start): Rename inner
2372         "exception".
2373         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2374         loop header.
2375         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2376         header.
2377         (ppu2spu_sniffer): Rename inner "buf".
2378         * parse.c (operator_check_standard): Rename inner "type",
2379         "objfile".
2380         * p-valprint.c (pascal_val_print): Introduce new scope for
2381         "low_bound", "high_bound".
2382         * p-exp.y (yylex): Declare "i" in loop header.
2383         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2384         Lower declaration of "s".
2385         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2386         header.
2387         (nios2_push_dummy_call): Rename "len".
2388         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2389         "buf".
2390         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2391         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2392         (linux_xfer_osdata_modules): Likewise.
2393         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2394         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2395         (mips_o64_push_dummy_call): Likewise.
2396         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2397         "op".
2398         * mi/mi-main.c (list_available_thread_groups): Rename inner
2399         "tuple_emitter".
2400         (mi_cmd_data_read_memory): Rename inner "opts".
2401         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2402         "tuple_emitter".
2403         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2404         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2405         more inner scope.
2406         (parse_partial_symbols): Rename inner "pst", "p", "name"
2407         * main.c (captured_main_1): Rename inner "i"s.
2408         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2409         "oso2".
2410         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2411         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2412         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2413         (handle_signal_stop): Rename inner "gdbarch".
2414         (handle_command): Declare "signum" in loop header.
2415         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2416         "status".
2417         (examine_prologue): Rename inner "sol" and "sof".
2418         (ia64_extract_return_value): Rename inner "val".  Declare another
2419         "val" in a more inner scope.
2420         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2421         inner scope.
2422         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2423         "except".
2424         * findvar.c (default_read_var_value): Don't redeclare "addr".
2425         * f-exp.y (yylex): Declare "i" in loop header.
2426         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2427         Rename inner "type", "expect_type".
2428         (evaluate_subexp_for_sizeof): Rename inner "pc".
2429         * elfread.c (elf_symfile_read): Rename inner "abfd".
2430         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2431         "bytes_read".
2432         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2433         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2434         (dwarf_decode_line_header): Rename inner "lh".
2435         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2436         "offset".  Declare "i" in loop header.
2437         (disassemble_dwarf_expression): Rename inner "addr_size".
2438         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2439         inner "result".
2440         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2441         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2442         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2443         "inner_list_emitter".
2444         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2445         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2446         declaration in a block.
2447         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2448         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2449         "obstack_final_size".
2450         * cp-support.c (inspect_type): Declare "i" in loop header.
2451         * compile/compile.c (compile_instance::insert_symbol_error):
2452         Rename inner "e".
2453         * common/agent.c (agent_run_command): Remove inner "ret"
2454         declaration.
2455         * coffread.c (coff_symfile_read): Rename inner "name".
2456         (coff_symfile_read): Rename inner "abfd".
2457         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2458         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2459         "high".
2460         * c-exp.y (lex_one_token): Move "len" declaration lower.
2461         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2462         "gdbarch".
2463         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2464         "b".
2465         (watch_command_1): Declare "mark" later.
2466         (clear_command): Don't shadow "a" or "b".
2467         (delete_command): Rename inner "b".
2468         (delete_trace_command): Likewise.
2469         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2470         "op".
2471         (arm_gdbarch_init): Remove inner "e_flags".
2472         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2473         "offset" in inner blocks.
2474
2475 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2476
2477         * dwarf-index-write.c (file_write): Don't write if the vector is
2478         empty.
2479
2480 2018-10-05  Tom de Vries  <tdevries@suse.de>
2481
2482         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2483         PyArg_ParseTuple call.
2484
2485 2018-10-05  Tom de Vries  <tdevries@suse.de>
2486
2487         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2488         PyArg_ParseTuple call.
2489
2490 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2491
2492         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2493         to avoid exceeding 80 characters per line limit.
2494
2495 2018-10-04  Tom Tromey  <tom@tromey.com>
2496
2497         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2498         (reread_symbols): Update.
2499         * complaints.h (clear_complaints): Remove argument.
2500         * complaints.c (enum complaint_series): Remove.
2501         (series): Remove global.
2502         (complaint_internal): Update.
2503         (clear_complaints): Remove argument.
2504
2505 2018-10-04  Tom Tromey  <tom@tromey.com>
2506
2507         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2508         debugging symbols" message if there is a separate debug objfile.
2509
2510 2018-10-04  Tom Tromey  <tom@tromey.com>
2511
2512         PR cli/19551:
2513         * symfile.c (symbol_file_add_with_addrs): Update output.
2514         * psymtab.c (require_partial_symbols): Update output.
2515
2516 2018-10-04  Tom Tromey  <tom@tromey.com>
2517
2518         PR cli/22234:
2519         * complaints.c: Emit \n.
2520
2521 2018-10-04  Tom Tromey  <tom@tromey.com>
2522
2523         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2524         (separate_debug_file_exists, find_separate_debug_file)
2525         (add_symbol_file_command, reread_symbols, allocate_symtab)
2526         (allocate_compunit_symtab): Use filtered printing, not
2527         unfiltered.
2528         * psymtab.c (require_partial_symbols, dump_psymtab)
2529         (allocate_psymtab): Use filtered printing, not unfiltered.
2530
2531 2018-10-04  Tom Tromey  <tom@tromey.com>
2532
2533         * complaints.c (complaint_internal): Correctly check complaint
2534         count.
2535
2536 2018-10-04  Tom Tromey  <tom@tromey.com>
2537
2538         * complaints.h (struct complaints): Remove declaration.
2539         * complaints.c (clear_complaints): Remove an unused variable.
2540
2541 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2542
2543         * MAINTAINERS (Write After Approval): Add self.
2544
2545 2018-10-03  Tom Tromey  <tom@tromey.com>
2546
2547         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2548         "buffer_contents".
2549         * coffread.c (coff_symtab_read): Initialize "newobj".
2550
2551 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2552
2553         * dwarf2read.c (read_func_scope): Remove struct keyword in
2554         range-based for.
2555
2556 2018-10-03  Tom Tromey  <tom@tromey.com>
2557
2558         * README: Mention --enable-ubsan.
2559         * NEWS: Mention --enable-ubsan.
2560         * acinclude.m4: Include sanitize.m4.
2561         * configure: Rebuild.
2562         * configure.ac: Call AM_GDB_UBSAN.
2563         * sanitize.m4: New file.
2564
2565 2018-10-03  Tom Tromey  <tom@tromey.com>
2566
2567         * expression.h (enum exp_opcode): Use uint8_t as base type.
2568         * expprint.c (op_name): Handle invalid opcodes.
2569
2570 2018-10-03  Tom Tromey  <tom@tromey.com>
2571
2572         * parse.c (prefixify_expression): Add assert.
2573         (parse_exp_in_context_1): Throw exception if the expression is
2574         empty.
2575
2576 2018-10-03  Tom Tromey  <tom@tromey.com>
2577
2578         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2579
2580 2018-10-03  Tom Tromey  <tom@tromey.com>
2581
2582         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2583
2584 2018-10-03  Tom Tromey  <tom@tromey.com>
2585
2586         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2587         unsigned.
2588
2589 2018-10-03  Tom Tromey  <tom@tromey.com>
2590
2591         * findvar.c (extract_integer): Do work in an unsigned type.
2592
2593 2018-10-03  Tom Tromey  <tom@tromey.com>
2594
2595         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2596         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2597         base type.
2598         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2599         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2600         type.
2601         * c-lang.h (enum c_string_type_values): Use unsigned as base
2602         type.
2603         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2604
2605 2018-10-03  Tom Tromey  <tom@tromey.com>
2606
2607         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2608         <~dwarf2_frame_state_reg_info>: Update.
2609         <dwarf2_frame_state_reg_info>: Update.
2610         <alloc_regs>: Add assertion.  Update.
2611         <reg>: Now a std::vector.
2612         <num_regs>: Remove.
2613         <swap>: Update.
2614         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2615         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2616
2617 2018-10-03  Tom Tromey  <tom@tromey.com>
2618
2619         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2620
2621 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2622
2623         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2624
2625 2018-10-02  Tom Tromey  <tom@tromey.com>
2626
2627         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2628
2629 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2630
2631         * NEWS: Mention changed commands.
2632         * ser-uds.c: New file.
2633         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2634         * configure: Regenerate.
2635         * Makefile.in: Add new file.
2636         * serial.c (serial_open): Check if filename is a socket
2637         and lookup the appropriate interface accordingly.
2638
2639 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2640
2641         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2642         define.
2643         (AARCH64_EXTRA_MAGIC): Likewise.
2644         (AARCH64_FPSIMD_MAGIC): Likewise.
2645         (AARCH64_SVE_MAGIC): Likewise.
2646         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2647         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2648         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2649         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2650         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2651         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2652         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2653         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2654         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2655         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2656         (read_aarch64_ctx): Add function.
2657         (aarch64_linux_sigframe_init): Detect FP registers.
2658
2659 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2660
2661         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2662         (AARCH64_D0_REGNUM): Likewise.
2663         (AARCH64_S0_REGNUM): Likewise.
2664         (AARCH64_H0_REGNUM): Likewise.
2665         (AARCH64_B0_REGNUM): Likewise.
2666         (AARCH64_SVE_V0_REGNUM): Likewise.
2667         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2668         (AARCH64_D0_REGNUM): Likewise.
2669         (AARCH64_S0_REGNUM): Likewise.
2670         (AARCH64_H0_REGNUM): Likewise.
2671         (AARCH64_B0_REGNUM): Likewise.
2672         (AARCH64_SVE_V0_REGNUM): Likewise.
2673
2674 2018-10-01  Gary Benson <gbenson@redhat.com>
2675
2676         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2677         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2678         prfpregset_t instead of gdb_prfpregset_t.
2679         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2680         * configure, config.in: Rebuild.
2681
2682 2018-10-01  Gary Benson <gbenson@redhat.com>
2683
2684         * common/gdb_proc_service.h: New file, factored out from...
2685         * gdb_proc_service.h: Moved common code to the above file.
2686         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2687
2688 2018-10-01  Gary Benson <gbenson@redhat.com>
2689
2690         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2691         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2692
2693 2018-10-01  Gary Benson <gbenson@redhat.com>
2694
2695         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2696         (AC_CHECK_HEADERS): Check for linux/elf.h.
2697         * configure, config.in: Rebuild.
2698         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2699         doesn't define elf_fpregset_t.
2700
2701 2018-10-01  Gary Benson <gbenson@redhat.com>
2702
2703         * gdb_proc_service.h: Whitespace change.
2704
2705 2018-10-01  Tom Tromey  <tom@tromey.com>
2706
2707         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2708         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2709         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2710
2711 2018-10-01  Tom Tromey  <tom@tromey.com>
2712
2713         * README: Minor change.
2714
2715 2018-09-30  Pedro Alves  <palves@redhat.com>
2716
2717         * darwin-nat-info.c (darwin_debug_regions_recurse)
2718         (info_mach_exceptions_command): Remove unused local variables.
2719         * darwin-nat.c (darwin_decode_notify_message)
2720         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2721         (darwin_stop_inferior, darwin_setup_exceptions)
2722         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2723         (darwin_nat_target::attach, darwin_nat_target::detach)
2724         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2725         local variables.
2726         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2727         variables.
2728
2729 2018-09-29  Tom Tromey  <tom@tromey.com>
2730
2731         * README: Remove some leftover text.
2732
2733 2018-09-29  Tom Tromey  <tom@tromey.com>
2734
2735         * PROBLEMS: Rewrite.
2736         * README: Update.
2737
2738 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2739
2740         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2741         case with explicit breakpoint kind.
2742         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2743         'additional_info' and related logic.
2744         (riscv_debug_breakpoints): New variable.
2745         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2746         instruction to determine the breakpoint kind.
2747         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2748         flag.  Update description of 'set/show riscv
2749         use-compressed-breakpoints' flag.
2750
2751 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2752
2753         (NEWS): Mention changes to frame related commands.
2754         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2755         (add_prefix_cmd_suppress_notification): New function.
2756         (add_com_suppress_notification): Call
2757         add_cmd_suppress_notification.
2758         * command.h (add_cmd_suppress_notification): Declare.
2759         (add_prefix_cmd_suppress_notification): Declare.
2760         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2761         (parse_frame_specification): Moved from stack.c, with
2762         simplification to handle a single argument.
2763         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2764         switch to the selected frame.  Add a header comment.
2765         * stack.c: Remove 'safe-ctype.h' include.
2766         (find_frame_for_function): Add declaration.
2767         (find_frame_for_address): New function.
2768         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2769         (frame_selection_by_function_completer): New function.
2770         (info_frame_command): Rename to...
2771         (info_frame_command_core): ...this, and update parameter types.
2772         (select_frame_command): Rename to...
2773         (select_frame_command_core): ...this, and update parameter types.
2774         (frame_command): Rename to...
2775         (frame_command_core): ...this, and update parameter types.
2776         (class frame_command_helper): New class to wrap implementations of
2777         frame related sub-commands.
2778         (frame_apply_cmd_list): New static global.
2779         (frame_cmd_list): Make static.
2780         (select_frame_cmd_list): New global for sub-commands.
2781         (info_frame_cmd_list): New global for sub-commands.
2782         (_initialize_stack): Register sub-commands for 'frame',
2783         'select-frame', and 'info frame'.  Update 'frame apply' commands
2784         to use frame_apply_cmd_list.  Move function local static
2785         frame_apply_list to file static frame_apply_cmd_list for
2786         consistency.
2787         * stack.h (select_frame_command): Delete declarationn.
2788         (select_frame_for_mi): Declare new function.
2789
2790 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2791
2792         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2793         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2794         and NOP.
2795
2796 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2797
2798         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2799
2800 2018-09-26  Tom Tromey  <tom@tromey.com>
2801
2802         * valops.c (auto_abandon): Remove dead code.
2803
2804 2018-09-26  Tom Tromey  <tom@tromey.com>
2805
2806         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2807
2808 2018-09-24  Tom Tromey  <tom@tromey.com>
2809
2810         * common/pathstuff.c (get_standard_cache_dir): Make
2811         "xdg_cache_home" and "home" const.
2812         * top.c (init_history): Make "tmpenv" const.
2813         * main.c (get_init_files): Make "homedir" const.
2814
2815 2018-09-23  Tom Tromey  <tom@tromey.com>
2816
2817         PR python/18852:
2818         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2819
2820 2018-09-23  Tom Tromey  <tom@tromey.com>
2821
2822         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2823         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2824         * python/python-internal.h (gdbpy_handle_exception): Declare.
2825         * python/py-utils.c (gdbpy_handle_exception): New function.
2826
2827 2018-09-23  Tom Tromey  <tom@tromey.com>
2828
2829         PR python/17284:
2830         * python/py-type.c (typy_template_argument): Check for negative
2831         argument number.
2832
2833 2018-09-23  Tom Tromey  <tom@tromey.com>
2834
2835         PR python/14062:
2836         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2837
2838 2018-09-23  Tom Tromey  <tom@tromey.com>
2839
2840         PR python/18170:
2841         * python/py-value.c (valpy_int): Allow conversion from pointer
2842         type.
2843
2844 2018-09-23  Tom Tromey  <tom@tromey.com>
2845
2846         PR python/20126:
2847         * python/py-value.c (valpy_int): Respect type sign.
2848
2849 2018-09-23  Tom Tromey  <tom@tromey.com>
2850
2851         PR python/18352;
2852         * python/py-value.c (valpy_float): Allow conversions from int or
2853         char.
2854         (valpy_int, valpy_long): Allow conversions from float.
2855
2856 2018-09-23  Tom Tromey  <tom@tromey.com>
2857
2858         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2859         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2860
2861 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2862
2863         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2864         __sighndlr.
2865         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2866
2867 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2868
2869         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2870         target_terminal::ours().
2871
2872 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2873
2874         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2875         of vl to ULONGEST.
2876
2877 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2878
2879         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2880         redundant condition.
2881
2882 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2883
2884         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2885
2886         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2887         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2888         * sol-thread.c (ps_pdmodel): Don't guard definition.
2889
2890         * procfs.c: Fix formatting.
2891
2892         * procfs.c (sysset_t_alloc): Remove.
2893         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2894         (procfs_debug_inferior): Likewise.
2895         (procfs_set_exec_trap): Likewise.
2896         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2897         (proc_set_traced_sysexit): Likewise.
2898
2899         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2900         (dead_procinfo): Likewise.
2901         (proc_warn): Likewise.
2902         (proc_error): Likewise.
2903         (proc_get_LDT_entry): Likewise.
2904         (do_attach): Likewise.
2905         (procfs_target::pid_to_str): Likewise.
2906         (iterate_over_mappings): Likewise.
2907
2908         * procfs.c (create_procinfo): Fix ARI warning.
2909         (proc_get_status): Likewise.
2910         (proc_stop_process): Likewise.
2911         (proc_run_process): Likewise.
2912         (proc_kill): Likewise.
2913         (proc_get_LDT_entry): Likewise.
2914         (procfs_find_LDT_entry): Likewise.
2915         (proc_update_threads): Likewise.
2916         (proc_iterate_over_threads): Likewise.
2917         (do_attach): Likewise.
2918         (procfs_xfer_memory): Likewise.
2919         (invalidate_cache): Likewise.
2920         (procfs_target::resume): Likewise.
2921         (procfs_init_inferior): Likewise.
2922         (procfs_set_exec_trap): Likewise.
2923         (procfs_target::thread_alive): Likewise.
2924         (procfs_target::pid_to_exec_file): Likewise.
2925         (iterate_over_mappings): Likewise.
2926         (procfs_target::make_corefile_notes): Likewise.
2927         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2928
2929         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2930         (procfs_find_LDT_entry): Likewise.
2931         * sol-thread.c (ps_lgetLDT): Likewise.
2932
2933 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2934
2935         PR tdep/17903
2936         * procfs.c (procfs_target): Declare pid_to_exec_file.
2937         (procfs_target::pid_to_exec_file): New.
2938
2939 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2940
2941         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2942         renaming.
2943         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2944         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2945
2946 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2947
2948         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2949         (supply_fpregset, fill_fpregset): Move ...
2950         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2951         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2952         Remove references to ioctl-based procfs.
2953         Include <sys/reg.h>.
2954         Remove PR_MODEL_NATIVE guards.
2955         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2956         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2957
2958 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2959
2960         PR gdb/20981:
2961         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2962         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2963         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2964
2965 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2966
2967         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2968         (fbsd_print_sockaddr_in6): Likewise.
2969
2970 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2971             Chris January  <chris.january@arm.com>
2972
2973         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2974         (evaluate_subexp_standard): Return a dummy type when
2975         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2976         OP_F77_UNDETERMINED_ARGLIST case.
2977         * expression.h (enum noside): Update comment.
2978
2979 2018-09-19  George Vasick <george.vasick@oracle.com>
2980
2981         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2982
2983 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2984             April Chin <april.chin@oracle.com>
2985             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2986
2987         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2988         uint_t lwpid_t.
2989         (create_procinfo): Print pids in /proc without leading zeros.
2990
2991 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2992
2993         * nios2-tdep.c (nios2_gcc_target_options): New.
2994         (nios2_gdb_arch_init): Install new hook.
2995
2996 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2997
2998         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2999         New file.
3000         * update-gnulib.sh: Apply patch.
3001         * configure: Re-generate.
3002
3003 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3004
3005         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3006         description.  Make "info proc" command descriptions more
3007         consistent.
3008
3009 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3010
3011         * NEWS: Mention 'info proc files' command.
3012
3013 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3014
3015         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3016         descriptors for IP_FILES and IP_ALL.
3017
3018 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3019
3020         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3021         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3022         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3023         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3024         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3025         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3026         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3027         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3028         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3029         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3030         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3031         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3032         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3033         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3034         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3035         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3036         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3037         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3038         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3039         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3040         (struct fbsd_sockaddr_un): New types.
3041         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3042         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3043         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3044         (fbsd_core_info_proc_files): New functions.
3045         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3046         IP_ALL.
3047         * fbsd-tdep.h (fbsd_info_proc_files_header)
3048         (fbsd_info_proc_files_entry): New.
3049
3050 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3051
3052         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3053         * infcmd.c (info_proc_cmd_files): New function.
3054         (_initialize_infcmd): Register 'info proc files' command.
3055
3056 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3057
3058         * gnulib/aclocal-m4-deps.mk: Re-generate.
3059         * gnulib/aclocal.m4: Re-generate.
3060         * gnulib/config.in: Re-generate.
3061         * gnulib/configure: Re-generate.
3062         * gnulib/import/Makefile.am: Re-generate.
3063         * gnulib/import/Makefile.in: Re-generate.
3064         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3065         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3066         * gnulib/import/arpa_inet.in.h: New file.
3067         * gnulib/import/inet_ntop.c: New file.
3068         * gnulib/import/m4/arpa_inet_h.m4: New file.
3069         * gnulib/import/m4/inet_ntop.m4: New file.
3070         * gnulib/import/m4/netinet_in_h.m4: New file.
3071         * gnulib/import/m4/socklen.m4: New file.
3072         * gnulib/import/m4/sockpfaf.m4: New file.
3073         * gnulib/import/m4/stdalign.m4: New file.
3074         * gnulib/import/m4/sys_uio_h.m4: New file.
3075         * gnulib/import/netinet_in.in.h: New file.
3076         * gnulib/import/stdalign.in.h: New file.
3077         * gnulib/import/sys_socket.c: New file.
3078         * gnulib/import/sys_socket.in.h: New file.
3079         * gnulib/import/sys_uio.in.h: New file.
3080         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3081         module.
3082
3083 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3084
3085         * gnulib/aclocal-m4-deps.mk: New file.
3086         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3087         deterministically.
3088
3089 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3090
3091         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3092         KVE_PATH.
3093
3094 2018-09-18  Tom Tromey  <tom@tromey.com>
3095
3096         * compile/compile-object-load.c (struct
3097         link_hash_table_cleanup_data): Add constructor and destructor.
3098         Use DISABLE_COPY_AND_ASSIGN.
3099         (~link_hash_table_cleanup_data): Rename from
3100         link_hash_table_free.  Now a destructor.
3101         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3102
3103 2018-09-18  Tom Tromey  <tom@tromey.com>
3104
3105         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3106         * compile/compile-object-load.c (struct munmap_list): Move to
3107         header file.
3108         (munmap_list::add): Rename from munmap_list_add; rewrite.
3109         (munmap_list::~munmap_list): Rename from munmap_list_free.
3110         (munmap_listp_free_cleanup): Remove.
3111         (compile_object_load): Update.
3112         * compile/compile-object-load.h (struct munmap_list): Move from
3113         compile-object-load.c.  Rewrite.
3114
3115 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3116
3117         * aarch64-tdep.c (pass_in_v): Use register size.
3118         (aarch64_extract_return_value): Likewise.
3119         (aarch64_store_return_value): Likewise.
3120
3121 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3122
3123         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3124         rlim_t.
3125
3126 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3127
3128         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3129         Fix short help line.
3130
3131 2018-09-17  Tom Tromey  <tom@tromey.com>
3132
3133         PR python/20445:
3134         * configure: Rebuild.
3135         * configure.ac: Conditionally use -DNDEBUG for Python.
3136
3137 2018-09-17  Tom Tromey  <tom@tromey.com>
3138
3139         * configure: Rebuild.
3140         * configure.ac: Use gmp as a library dependency when checking for
3141         mpfr.
3142
3143 2018-09-17  Pedro Alves  <palves@redhat.com>
3144
3145         * python/py-inferior.c (find_inferior_object): Delete.
3146
3147 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3148
3149         * compile/compile-cplus-types.c
3150         (compile_cplus_instance::enter_scope): Don't use new_scope after
3151         std::move.
3152
3153 2018-09-17  Tom Tromey  <tom@tromey.com>
3154
3155         * common/pathstuff.c (get_standard_cache_dir): Use
3156         ~/Library/Caches on macOS.
3157         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3158
3159 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3160
3161         PR python/23669
3162         * breakpoint.c (commands_cmd_element): New.
3163         (_initialize_breakpoint): Assign commands_cmd_element.
3164         * breakpoint.h (commands_cmd_element): New.
3165         * cli/cli-script.c (while_cmd_element, if_command,
3166         define_cmd_element): New.
3167         (command_name_equals): Remove.
3168         (process_next_line): Compare commands by pointer, not by name.
3169         (_initialize_cli_script): Assign the various cmd_list_element
3170         variables.
3171         * compile/compile.c (compile_cmd_element): New.
3172         (_initialize_compile): Assign compile_cmd_element.
3173         * compile/compile.h (compile_cmd_element): New.
3174         * guile/guile.c (guile_cmd_element): New.
3175         (install_gdb_commands): Assign guile_cmd_element.
3176         * guile/guile.h (guile_cmd_element): New.
3177         * python/python.c (python_cmd_element): New.
3178         (_initialize_python): Assign python_cmd_element.
3179         * python/python.h (python_cmd_element): New.
3180         * tracepoint.c (while_stepping_cmd_element): New.
3181         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3182         * tracepoint.h (while_stepping_cmd_element): New.
3183
3184 2018-09-17  Tom Tromey  <tom@tromey.com>
3185
3186         * infrun.c (save_infcall_suspend_state): Return
3187         infcall_suspend_state_up.
3188         (save_infcall_control_state): Return infcall_control_state_up.
3189         * inferior.h (save_infcall_suspend_state)
3190         (save_infcall_control_state): Declare later.  Return unique
3191         pointers.
3192
3193 2018-09-17  Tom Tromey  <tom@tromey.com>
3194
3195         * infrun.c (struct stop_context): Declare constructor,
3196         destructor, "changed" method.
3197         (stop_context::stop_context): Rename from save_stop_context.
3198         (stop_context::~stop_context): Rename from
3199         release_stop_context_cleanup.
3200         (normal_stop): Update.
3201         (stop_context::changed): Rename from stop_context_changed.  Return
3202         bool.
3203
3204 2018-09-17  Tom Tromey  <tom@tromey.com>
3205
3206         * inferior.h (struct infcall_suspend_state_deleter): New.
3207         (infcall_suspend_state_up): New typedef.
3208         (struct infcall_control_state_deleter): New.
3209         (infcall_control_state_up): New typedef.
3210         (make_cleanup_restore_infcall_suspend_state)
3211         (make_cleanup_restore_infcall_control_state): Don't declare.
3212         * infcall.c (call_function_by_hand_dummy): Update.
3213         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3214         (make_cleanup_restore_infcall_suspend_state): Remove.
3215         (do_restore_infcall_control_state_cleanup)
3216         (make_cleanup_restore_infcall_control_state): Remove.
3217
3218 2018-09-17  Tom Tromey  <tom@tromey.com>
3219
3220         * gdbthread.h (struct thread_control_state): Add initializer.
3221         (class thread_info) <control>: Remove initializer.
3222         * inferior.h (struct inferior_control_state): Add initializer.
3223         (class inferior) <control>: Remove initializer.
3224         (exit_inferior_1): Update.
3225         * infrun.c (struct infcall_control_state): Add constructors.
3226         (save_infcall_control_state): Use new.
3227         (restore_infcall_control_state, discard_infcall_control_state):
3228         Use delete.
3229
3230 2018-09-17  Tom Tromey  <tom@tromey.com>
3231
3232         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3233         unique_ptr.
3234         <siginfo_data>: Now a unique_xmalloc_ptr.
3235         (save_infcall_suspend_state, restore_infcall_suspend_state)
3236         (discard_infcall_suspend_state)
3237         (get_infcall_suspend_state_regcache): Update.
3238
3239 2018-09-17  Tom Tromey  <tom@tromey.com>
3240
3241         * gdbthread.h (struct thread_suspend_state): Add initializers.
3242         (class thread_info) <suspend>: Remove initializer.
3243         * infrun.c (struct infcall_suspend_state): Add initializers.
3244         (save_infcall_suspend_state): Use new.
3245         (discard_infcall_suspend_state): Use delete.
3246
3247 2018-09-16  Tom Tromey  <tom@tromey.com>
3248
3249         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3250         Remove.
3251         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3252         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3253         (py_varobj_iter_new): Likewise.
3254         (py_varobj_get_iterator): Use gdbpy_ref.
3255
3256 2018-09-16  Tom Tromey  <tom@tromey.com>
3257
3258         * python/py-threadevent.c (py_get_event_thread): Simplify.
3259         * python/py-inferior.c (infpy_thread_from_thread_handle):
3260         Return immediately after calling thread_to_thread_object.  Use
3261         Py_RETURN_NONE.
3262         (thread_to_thread_object): Set the exception on a NULL return.
3263
3264 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3265
3266         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3267
3268 2018-09-16  Tom Tromey  <tom@tromey.com>
3269
3270         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3271         Remove.
3272
3273 2018-09-16  Tom Tromey  <tom@tromey.com>
3274
3275         * python/python-internal.h (thread_to_thread_object): Change
3276         return type.
3277         * python/py-inferior.c (thread_to_thread_object): Return a new
3278         reference.
3279         (infpy_thread_from_thread_handle): Update.
3280         * python/py-infthread.c (gdbpy_selected_thread): Update.
3281         * python/py-stopevent.c (create_stop_event_object): Update.
3282         * python/py-threadevent.c (py_get_event_thread): Return a new
3283         reference.
3284         (py_get_event_thread): Update.
3285         * python/py-event.h (py_get_event_thread): Change return type.
3286         * python/py-continueevent.c (create_continue_event_object):
3287         Update.
3288
3289 2018-09-16  Tom Tromey  <tom@tromey.com>
3290
3291         * python/py-progspace.c (pspy_get_objfiles): Update.
3292         * python/python-internal.h (objfile_to_objfile_object): Change
3293         return type.
3294         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3295         Update.
3296         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3297         Update.
3298         * python/python.c (gdbpy_get_current_objfile): Update.
3299         (gdbpy_objfiles): Update.
3300         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3301         Update.
3302         (objfile_to_objfile_object): Return a new reference.
3303         * python/py-symtab.c (stpy_get_objfile): Update.
3304         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3305         Update.
3306
3307 2018-09-16  Tom Tromey  <tom@tromey.com>
3308
3309         * python/py-inferior.c (infpy_get_progspace): Update.
3310         * python/python-internal.h (pspace_to_pspace_object): Change
3311         return type.
3312         * python/py-newobjfileevent.c
3313         (create_clear_objfiles_event_object): Update.
3314         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3315         Update.
3316         * python/python.c (gdbpy_get_current_progspace): Update.
3317         (gdbpy_progspaces): Update.
3318         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3319         reference.
3320         * python/py-objfile.c (objfpy_get_progspace): Update.
3321         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3322         Update.
3323
3324 2018-09-16  Tom Tromey  <tom@tromey.com>
3325
3326         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3327         (solib_name, block_for_pc, find_pc_line): New functions.
3328         (execute_unwinders): Update.
3329         * python/py-block.c (gdbpy_block_for_pc): Remove.
3330         * python/py-inferior.c (infpy_get_progspace): New function.
3331         (inferior_object_getset) <progspace>: Add.
3332         * python/py-progspace.c (pspy_objfiles): Rewrite.
3333         (pspy_solib_name, pspy_block_for_pc)
3334         (pspy_find_pc_line, pspy_is_valid): New functions.
3335         (progspace_object_methods): Add entries for solib_name,
3336         block_for_pc, find_pc_line, is_valid.
3337         * python/python-internal.h (gdbpy_block_for_pc)
3338         (build_objfiles_list): Don't declare.
3339         * python/python.c: Don't include solib.h.
3340         (gdbpy_solib_name, gdbpy_find_pc_line)
3341         (gdbpy_get_current_progspace, build_objfiles_list)
3342         (gdbpy_objfiles): Remove.
3343         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3344         solib_name, find_pc_line>: Remove entries.
3345
3346 2018-09-16  Tom Tromey  <tom@tromey.com>
3347
3348         * top.c (new_ui_command): Use GNU style for metasyntactic
3349         variables.
3350         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3351         variables.
3352         * maint.c (maintenance_translate_address): Remove "<>" around
3353         text.
3354         * interps.c (interpreter_exec_cmd): Use GNU style for
3355         metasyntactic variables.
3356         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3357         metasyntactic variables.
3358         * tracepoint.c (tfind_range_command): Use GNU style for
3359         metasyntactic variables.
3360         (tfind_outside_command): Likewise.
3361         (_initialize_tracepoint): Likewise.
3362         * remote.c (extended_remote_target::create_inferior): Use GNU
3363         style for metasyntactic variables.
3364         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3365         metasyntactic variables.
3366         (adi_assign_command): Likewise.
3367
3368 2018-09-16  Tom Tromey  <tom@tromey.com>
3369
3370         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3371         metasyntactic variables.  Print message if no disassembler options
3372         are available.
3373
3374 2018-09-15  Tom Tromey  <tom@tromey.com>
3375
3376         * infcmd.c (get_inferior_args): Return const char *.
3377         * inferior.h (get_inferior_args): Return type now const.
3378         * linux-tdep.c (linux_fill_prpsinfo): Update.
3379         * procfs.c (procfs_target::make_corefile_notes): Update.
3380
3381 2018-09-07  Tom Tromey  <tom@tromey.com>
3382
3383         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3384         inside the TRY.
3385
3386 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3387
3388         * nios2-tdep.c (nios2_type_align): New.
3389         (nios2_gdb_arch_init): Install type_align hook.
3390
3391 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3392
3393         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3394         type that is neither object file owned, nor gdbarch owned.
3395         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3396         gdbarch is non-NULL.
3397         (alloc_type_instance): Allocate non-objfile owned types on the
3398         gdbarch obstack.
3399         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3400         using TYPE_ALLOC to ensure memory is allocated on the correct
3401         obstack.
3402         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3403         obstack, or the gdbarch obstack.
3404         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3405
3406 2018-09-14  Tom Tromey  <tom@tromey.com>
3407
3408         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3409         block.
3410
3411 2018-09-14  Tom Tromey  <tom@tromey.com>
3412
3413         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3414
3415 2018-09-13  Tom Tromey  <tom@tromey.com>
3416
3417         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3418         static.
3419
3420 2018-09-13  Tom Tromey  <tom@tromey.com>
3421
3422         * exec.c (try_open_exec_file): Use std::string.
3423
3424 2018-09-13  Tom Tromey  <tom@tromey.com>
3425
3426         * utils.h (gdb_bfd_errmsg): Return std::string.
3427         * exec.c (exec_file_attach): Update.
3428         * compile/compile-object-load.c (compile_object_load): Update.
3429         * utils.c (gdb_bfd_errmsg): Return std::string.
3430
3431 2018-09-13  Tom Tromey  <tom@tromey.com>
3432
3433         * procfs.c (struct procinfo_deleter): New.
3434         (procinfo_up): New typedef.
3435         (do_destroy_procinfo_cleanup): Remove.
3436         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3437
3438 2018-09-13  Tom Tromey  <tom@tromey.com>
3439
3440         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3441
3442 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3443 2018-09-13  Tom Tromey  <tom@tromey.com>
3444
3445         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3446         (pspy_get_objfiles): New function.
3447         (progspace_object_methods): New.
3448         (pspace_object_type): Add tp_methods callback.
3449         * python/python-internal.h (build_objfiles_list): New
3450         declaration.
3451         * python/python.c (build_objfiles_list): New function.
3452         (gdbpy_objfiles): Implement using build_objfiles_list.
3453         * NEWS: Mention the Progspace.objfiles method.
3454
3455 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3456
3457         * python/py-inferior.c (infpy_get_progspace): New function.
3458         (inferior_object_getset): Add progspace property.
3459         * NEWS: Mention the new property.
3460
3461 2018-09-13  Tom Tromey  <tom@tromey.com>
3462
3463         PR rust/23650:
3464         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3465
3466 2018-09-13  Tom Tromey  <tom@tromey.com>
3467
3468         PR rust/23626:
3469         * rust-lang.c (rust_enum_variant): Now static.
3470         (rust_empty_enum_p): New function.
3471         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3472         Handle empty enum.
3473
3474 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3475
3476         * python/py-inferior.c (infpy_repr): New.
3477         (inferior_object_type): Register infpy_repr.
3478         * python/py-objfile.c (objfpy_repr): New.
3479         (objfile_object_type): Register objfpy_repr.
3480
3481 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3482
3483         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3484
3485 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3486
3487         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3488         typo.
3489
3490 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3491
3492         * common/common-utils.c: Don't include '<sys/stat.h>'.
3493         (is_regular_file): Move to...
3494         * common/filestuff.c (is_regular_file): ... here.
3495         * common/common-utils.h (is_regular_file): Move to...
3496         * common/filestuff.h (is_regular_file): ... here.
3497
3498 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3499
3500         * skip.c (debug_skip): New variable.
3501         (skiplist_entry::do_skip_file_p): Add debug output.
3502         (skiplist_entry::do_skip_gfile_p): Likewise.
3503         (skiplist_entry::skip_function_p): Likewise.
3504         (_initialize_step_skip): Create debug command.
3505         * NEWS: Mention set/show debug skip.
3506
3507 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3508
3509         * darwin-nat.c (should_disable_startup_with_shell):
3510         New function.
3511         (darwin_nat_target::create_inferior): Add call.
3512
3513 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3514
3515         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3516         inf_port, msg_state>: Initialize.
3517         (struct darwin_thread_info) <signaled, single_step>: Change
3518         type and initialize.
3519         (struct darwin_thread_info) <event>: Initialize.
3520
3521 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3522
3523         PR gdb/23555
3524         PR gdb/23558
3525         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3526         guesses.
3527
3528 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3529
3530         Revert:
3531         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3532
3533         PR gdb/23555
3534         PR gdb/23558
3535         * gnulib/aclocal.m4: Regenerate.
3536         * gnulib/config.in: Regenerate.
3537         * gnulib/configure: Regenerate.
3538         * gnulib/import/Makefile.am: Update.
3539         * gnulib/import/Makefile.in: Update.
3540         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3541         * gnulib/import/_Noreturn.h: ... this.
3542         * gnulib/import/alloca.in.h: Update.
3543         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3544         * gnulib/import/arg-nonnull.h: ... this.
3545         * gnulib/import/assure.h: Update.
3546         * gnulib/import/at-func.c: Update.
3547         * gnulib/import/basename-lgpl.c: Update.
3548         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3549         * gnulib/import/c++defs.h: ... this.
3550         * gnulib/import/canonicalize-lgpl.c: Update.
3551         * gnulib/import/cdefs.h: Update.
3552         * gnulib/import/chdir-long.c: Update.
3553         * gnulib/import/chdir-long.h: Update.
3554         * gnulib/import/cloexec.c: Update.
3555         * gnulib/import/cloexec.h: Update.
3556         * gnulib/import/close.c: Update.
3557         * gnulib/import/closedir.c: Update.
3558         * gnulib/import/config.charset: Update.
3559         * gnulib/import/dirent-private.h: Update.
3560         * gnulib/import/dirent.in.h: Update.
3561         * gnulib/import/dirfd.c: Update.
3562         * gnulib/import/dirname-lgpl.c: Update.
3563         * gnulib/import/dirname.h: Update.
3564         * gnulib/import/dosname.h: Update.
3565         * gnulib/import/dup-safer-flag.c: Update.
3566         * gnulib/import/dup-safer.c: Update.
3567         * gnulib/import/dup.c: Update.
3568         * gnulib/import/dup2.c: Update.
3569         * gnulib/import/errno.in.h: Update.
3570         * gnulib/import/error.c: Update.
3571         * gnulib/import/error.h: Update.
3572         * gnulib/import/exitfail.c: Update.
3573         * gnulib/import/exitfail.h: Update.
3574         * gnulib/import/extra/update-copyright: Update.
3575         * gnulib/import/fchdir.c: Update.
3576         * gnulib/import/fcntl.c: Update.
3577         * gnulib/import/fcntl.in.h: Update.
3578         * gnulib/import/fd-hook.c: Update.
3579         * gnulib/import/fd-hook.h: Update.
3580         * gnulib/import/fd-safer-flag.c: Update.
3581         * gnulib/import/fd-safer.c: Update.
3582         * gnulib/import/fdopendir.c: Update.
3583         * gnulib/import/filename.h: Update.
3584         * gnulib/import/filenamecat-lgpl.c: Update.
3585         * gnulib/import/filenamecat.h: Update.
3586         * gnulib/import/flexmember.h: Update.
3587         * gnulib/import/float+.h: Update.
3588         * gnulib/import/float.c: Update.
3589         * gnulib/import/float.in.h: Update.
3590         * gnulib/import/fnmatch.c: Update.
3591         * gnulib/import/fnmatch.in.h: Update.
3592         * gnulib/import/fnmatch_loop.c: Update.
3593         * gnulib/import/fpucw.h: Update.
3594         * gnulib/import/frexp.c: Update.
3595         * gnulib/import/frexpl.c: Update.
3596         * gnulib/import/fstat.c: Update.
3597         * gnulib/import/fstatat.c: Update.
3598         * gnulib/import/getcwd-lgpl.c: Update.
3599         * gnulib/import/getcwd.c: Update.
3600         * gnulib/import/getdtablesize.c: Update.
3601         * gnulib/import/getlogin_r.c: Update.
3602         * gnulib/import/getprogname.c: Update.
3603         * gnulib/import/getprogname.h: Update.
3604         * gnulib/import/gettext.h: Update.
3605         * gnulib/import/gettimeofday.c: Update.
3606         * gnulib/import/glob-libc.h: Update.
3607         * gnulib/import/glob.c: Update.
3608         * gnulib/import/glob.in.h: Update.
3609         * gnulib/import/glob_internal.h: Update.
3610         * gnulib/import/glob_pattern_p.c: Update.
3611         * gnulib/import/globfree.c: Update.
3612         * gnulib/import/hard-locale.c: Update.
3613         * gnulib/import/hard-locale.h: Update.
3614         * gnulib/import/intprops.h: Update.
3615         * gnulib/import/inttypes.in.h: Update.
3616         * gnulib/import/isnan.c: Update.
3617         * gnulib/import/isnand-nolibm.h: Update.
3618         * gnulib/import/isnand.c: Update.
3619         * gnulib/import/isnanl-nolibm.h: Update.
3620         * gnulib/import/isnanl.c: Update.
3621         * gnulib/import/itold.c: Update.
3622         * gnulib/import/libc-config.h: Update.
3623         * gnulib/import/limits.in.h: Update.
3624         * gnulib/import/localcharset.c: Update.
3625         * gnulib/import/localcharset.h: Update.
3626         * gnulib/import/localtime-buffer.c: Update.
3627         * gnulib/import/localtime-buffer.h: Update.
3628         * gnulib/import/lstat.c: Update.
3629         * gnulib/import/m4/00gnulib.m4: Update.
3630         * gnulib/import/m4/__inline.m4: Update.
3631         * gnulib/import/m4/absolute-header.m4: Update.
3632         * gnulib/import/m4/alloca.m4: Update.
3633         * gnulib/import/m4/builtin-expect.m4: Update.
3634         * gnulib/import/m4/canonicalize.m4: Update.
3635         * gnulib/import/m4/chdir-long.m4: Update.
3636         * gnulib/import/m4/close.m4: Update.
3637         * gnulib/import/m4/closedir.m4: Update.
3638         * gnulib/import/m4/configmake.m4: Update.
3639         * gnulib/import/m4/d-ino.m4: Update.
3640         * gnulib/import/m4/d-type.m4: Update.
3641         * gnulib/import/m4/dirent_h.m4: Update.
3642         * gnulib/import/m4/dirfd.m4: Update.
3643         * gnulib/import/m4/dirname.m4: Update.
3644         * gnulib/import/m4/double-slash-root.m4: Update.
3645         * gnulib/import/m4/dup.m4: Update.
3646         * gnulib/import/m4/dup2.m4: Update.
3647         * gnulib/import/m4/eealloc.m4: Update.
3648         * gnulib/import/m4/environ.m4: Update.
3649         * gnulib/import/m4/errno_h.m4: Update.
3650         * gnulib/import/m4/error.m4: Update.
3651         * gnulib/import/m4/exponentd.m4: Update.
3652         * gnulib/import/m4/exponentl.m4: Update.
3653         * gnulib/import/m4/extensions.m4: Update.
3654         * gnulib/import/m4/extern-inline.m4: Update.
3655         * gnulib/import/m4/fchdir.m4: Update.
3656         * gnulib/import/m4/fcntl-o.m4: Update.
3657         * gnulib/import/m4/fcntl.m4: Update.
3658         * gnulib/import/m4/fcntl_h.m4: Update.
3659         * gnulib/import/m4/fdopendir.m4: Update.
3660         * gnulib/import/m4/filenamecat.m4: Update.
3661         * gnulib/import/m4/flexmember.m4: Update.
3662         * gnulib/import/m4/float_h.m4: Update.
3663         * gnulib/import/m4/fnmatch.m4: Update.
3664         * gnulib/import/m4/fnmatch_h.m4: Update.
3665         * gnulib/import/m4/fpieee.m4: Update.
3666         * gnulib/import/m4/frexp.m4: Update.
3667         * gnulib/import/m4/frexpl.m4: Update.
3668         * gnulib/import/m4/fstat.m4: Update.
3669         * gnulib/import/m4/fstatat.m4: Update.
3670         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3671         * gnulib/import/m4/getcwd-path-max.m4: Update.
3672         * gnulib/import/m4/getcwd.m4: Update.
3673         * gnulib/import/m4/getdtablesize.m4: Update.
3674         * gnulib/import/m4/getlogin.m4: Update.
3675         * gnulib/import/m4/getlogin_r.m4: Update.
3676         * gnulib/import/m4/getpagesize.m4: Update.
3677         * gnulib/import/m4/getprogname.m4: Update.
3678         * gnulib/import/m4/gettimeofday.m4: Update.
3679         * gnulib/import/m4/glibc21.m4: Update.
3680         * gnulib/import/m4/glob.m4: Update.
3681         * gnulib/import/m4/glob_h.m4: Update.
3682         * gnulib/import/m4/gnulib-cache.m4: Update.
3683         * gnulib/import/m4/gnulib-common.m4: Update.
3684         * gnulib/import/m4/gnulib-comp.m4: Update.
3685         * gnulib/import/m4/gnulib-tool.m4: Update.
3686         * gnulib/import/m4/hard-locale.m4: Update.
3687         * gnulib/import/m4/include_next.m4: Update.
3688         * gnulib/import/m4/inttypes-pri.m4: Update.
3689         * gnulib/import/m4/inttypes.m4: Update.
3690         * gnulib/import/m4/isnand.m4: Update.
3691         * gnulib/import/m4/isnanl.m4: Update.
3692         * gnulib/import/m4/largefile.m4: Update.
3693         * gnulib/import/m4/limits-h.m4: Update.
3694         * gnulib/import/m4/localcharset.m4: Update.
3695         * gnulib/import/m4/locale-fr.m4: Update.
3696         * gnulib/import/m4/locale-ja.m4: Update.
3697         * gnulib/import/m4/locale-zh.m4: Update.
3698         * gnulib/import/m4/localtime-buffer.m4: Update.
3699         * gnulib/import/m4/longlong.m4: Update.
3700         * gnulib/import/m4/lstat.m4: Update.
3701         * gnulib/import/m4/malloc.m4: Update.
3702         * gnulib/import/m4/malloca.m4: Update.
3703         * gnulib/import/m4/math_h.m4: Update.
3704         * gnulib/import/m4/mbrtowc.m4: Update.
3705         * gnulib/import/m4/mbsinit.m4: Update.
3706         * gnulib/import/m4/mbsrtowcs.m4: Update.
3707         * gnulib/import/m4/mbstate_t.m4: Update.
3708         * gnulib/import/m4/memchr.m4: Update.
3709         * gnulib/import/m4/memmem.m4: Update.
3710         * gnulib/import/m4/mempcpy.m4: Update.
3711         * gnulib/import/m4/memrchr.m4: Update.
3712         * gnulib/import/m4/mkdir.m4: Update.
3713         * gnulib/import/m4/mkstemp.m4: Update.
3714         * gnulib/import/m4/mmap-anon.m4: Update.
3715         * gnulib/import/m4/mode_t.m4: Update.
3716         * gnulib/import/m4/msvc-inval.m4: Update.
3717         * gnulib/import/m4/msvc-nothrow.m4: Update.
3718         * gnulib/import/m4/multiarch.m4: Update.
3719         * gnulib/import/m4/nocrash.m4: Update.
3720         * gnulib/import/m4/off_t.m4: Update.
3721         * gnulib/import/m4/onceonly.m4: Update.
3722         * gnulib/import/m4/open-cloexec.m4: Update.
3723         * gnulib/import/m4/open.m4: Update.
3724         * gnulib/import/m4/openat.m4: Update.
3725         * gnulib/import/m4/opendir.m4: Update.
3726         * gnulib/import/m4/pathmax.m4: Update.
3727         * gnulib/import/m4/rawmemchr.m4: Update.
3728         * gnulib/import/m4/readdir.m4: Update.
3729         * gnulib/import/m4/readlink.m4: Update.
3730         * gnulib/import/m4/realloc.m4: Update.
3731         * gnulib/import/m4/rename.m4: Update.
3732         * gnulib/import/m4/rewinddir.m4: Update.
3733         * gnulib/import/m4/rmdir.m4: Update.
3734         * gnulib/import/m4/save-cwd.m4: Update.
3735         * gnulib/import/m4/secure_getenv.m4: Update.
3736         * gnulib/import/m4/setenv.m4: Update.
3737         * gnulib/import/m4/signal_h.m4: Update.
3738         * gnulib/import/m4/ssize_t.m4: Update.
3739         * gnulib/import/m4/stat-time.m4: Update.
3740         * gnulib/import/m4/stat.m4: Update.
3741         * gnulib/import/m4/std-gnu11.m4: Update.
3742         * gnulib/import/m4/stdbool.m4: Update.
3743         * gnulib/import/m4/stddef_h.m4: Update.
3744         * gnulib/import/m4/stdint.m4: Update.
3745         * gnulib/import/m4/stdio_h.m4: Update.
3746         * gnulib/import/m4/stdlib_h.m4: Update.
3747         * gnulib/import/m4/strchrnul.m4: Update.
3748         * gnulib/import/m4/strdup.m4: Update.
3749         * gnulib/import/m4/strerror.m4: Update.
3750         * gnulib/import/m4/string_h.m4: Update.
3751         * gnulib/import/m4/strstr.m4: Update.
3752         * gnulib/import/m4/strtok_r.m4: Update.
3753         * gnulib/import/m4/sys_socket_h.m4: Update.
3754         * gnulib/import/m4/sys_stat_h.m4: Update.
3755         * gnulib/import/m4/sys_time_h.m4: Update.
3756         * gnulib/import/m4/sys_types_h.m4: Update.
3757         * gnulib/import/m4/tempname.m4: Update.
3758         * gnulib/import/m4/time_h.m4: Update.
3759         * gnulib/import/m4/unistd-safer.m4: Update.
3760         * gnulib/import/m4/unistd_h.m4: Update.
3761         * gnulib/import/m4/warn-on-use.m4: Update.
3762         * gnulib/import/m4/wchar_h.m4: Update.
3763         * gnulib/import/m4/wchar_t.m4: Update.
3764         * gnulib/import/m4/wctype_h.m4: Update.
3765         * gnulib/import/m4/wint_t.m4: Update.
3766         * gnulib/import/malloc.c: Update.
3767         * gnulib/import/malloc/scratch_buffer.h: Update.
3768         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3769         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3770         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3771         * gnulib/import/malloca.c: Update.
3772         * gnulib/import/malloca.h: Update.
3773         * gnulib/import/malloca.valgrind: Update.
3774         * gnulib/import/math.in.h: Update.
3775         * gnulib/import/mbrtowc.c: Update.
3776         * gnulib/import/mbsinit.c: Update.
3777         * gnulib/import/mbsrtowcs-impl.h: Update.
3778         * gnulib/import/mbsrtowcs-state.c: Update.
3779         * gnulib/import/mbsrtowcs.c: Update.
3780         * gnulib/import/memchr.c: Update.
3781         * gnulib/import/memmem.c: Update.
3782         * gnulib/import/mempcpy.c: Update.
3783         * gnulib/import/memrchr.c: Update.
3784         * gnulib/import/mkdir.c: Update.
3785         * gnulib/import/mkstemp.c: Update.
3786         * gnulib/import/msvc-inval.c: Update.
3787         * gnulib/import/msvc-inval.h: Update.
3788         * gnulib/import/msvc-nothrow.c: Update.
3789         * gnulib/import/msvc-nothrow.h: Update.
3790         * gnulib/import/open.c: Update.
3791         * gnulib/import/openat-die.c: Update.
3792         * gnulib/import/openat-priv.h: Update.
3793         * gnulib/import/openat-proc.c: Update.
3794         * gnulib/import/openat.c: Update.
3795         * gnulib/import/openat.h: Update.
3796         * gnulib/import/opendir.c: Update.
3797         * gnulib/import/pathmax.h: Update.
3798         * gnulib/import/pipe-safer.c: Update.
3799         * gnulib/import/rawmemchr.c: Update.
3800         * gnulib/import/readdir.c: Update.
3801         * gnulib/import/readlink.c: Update.
3802         * gnulib/import/realloc.c: Update.
3803         * gnulib/import/ref-add.sin: Update.
3804         * gnulib/import/ref-del.sin: Update.
3805         * gnulib/import/rename.c: Update.
3806         * gnulib/import/rewinddir.c: Update.
3807         * gnulib/import/rmdir.c: Update.
3808         * gnulib/import/same-inode.h: Update.
3809         * gnulib/import/save-cwd.c: Update.
3810         * gnulib/import/save-cwd.h: Update.
3811         * gnulib/import/scratch_buffer.h: Update.
3812         * gnulib/import/secure_getenv.c: Update.
3813         * gnulib/import/setenv.c: Update.
3814         * gnulib/import/signal.in.h: Update.
3815         * gnulib/import/stat-time.c: Update.
3816         * gnulib/import/stat-time.h: Update.
3817         * gnulib/import/stat-w32.c: Update.
3818         * gnulib/import/stat-w32.h: Update.
3819         * gnulib/import/stat.c: Update.
3820         * gnulib/import/stdbool.in.h: Update.
3821         * gnulib/import/stddef.in.h: Update.
3822         * gnulib/import/stdint.in.h: Update.
3823         * gnulib/import/stdio.in.h: Update.
3824         * gnulib/import/stdlib.in.h: Update.
3825         * gnulib/import/str-two-way.h: Update.
3826         * gnulib/import/strchrnul.c: Update.
3827         * gnulib/import/strdup.c: Update.
3828         * gnulib/import/streq.h: Update.
3829         * gnulib/import/strerror-override.c: Update.
3830         * gnulib/import/strerror-override.h: Update.
3831         * gnulib/import/strerror.c: Update.
3832         * gnulib/import/string.in.h: Update.
3833         * gnulib/import/stripslash.c: Update.
3834         * gnulib/import/strnlen1.c: Update.
3835         * gnulib/import/strnlen1.h: Update.
3836         * gnulib/import/strstr.c: Update.
3837         * gnulib/import/strtok_r.c: Update.
3838         * gnulib/import/sys_stat.in.h: Update.
3839         * gnulib/import/sys_time.in.h: Update.
3840         * gnulib/import/sys_types.in.h: Update.
3841         * gnulib/import/tempname.c: Update.
3842         * gnulib/import/tempname.h: Update.
3843         * gnulib/import/time.in.h: Update.
3844         * gnulib/import/unistd--.h: Update.
3845         * gnulib/import/unistd-safer.h: Update.
3846         * gnulib/import/unistd.in.h: Update.
3847         * gnulib/import/unsetenv.c: Update.
3848         * gnulib/import/verify.h: Update.
3849         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3850         * gnulib/import/wchar.in.h: Update.
3851         * gnulib/import/wctype.in.h: Update.
3852         * gnulib/import/xalloc-oversized.h: Update.
3853         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3854         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3855
3856 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3857
3858         * record-btrace.c (get_thread_current_frame): Remove
3859         old_inferior_ptid.
3860
3861 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3862
3863         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3864         with check_tag to 1 if and only if the type is tagged and the
3865         component being searched cannot been found in the current
3866         view. Otherwise, always call ada_to_fixed_type with
3867         check_tag to 0.
3868
3869 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3870
3871         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3872         declaration.
3873         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3874         * ada-varobj.c (ada_varobj_get_number_of_children,
3875         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3876
3877 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3878
3879         * ada-valprint.c (ada_value_print): Use type instead of
3880         enclosing type.
3881
3882 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3883
3884         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3885         an array of access to unconstrained array.
3886
3887 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3888
3889         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3890         (ada_check_typedef): Use it.
3891
3892 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3893
3894         * ada-varobj.c (ada_varobj_describe_struct_child)
3895         (ada_varobj_describe_child): Handle union case like struct one.
3896
3897 2018-09-10  Tom Tromey  <tom@tromey.com>
3898
3899         PR python/18380:
3900         * python/python.c (_initialize_python): Make example in "python"
3901         help work in Python 3.
3902
3903 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3904
3905         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3906         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3907         $(EXEEXT) to the script, as it is not a program.
3908
3909 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3910
3911         * python/py-prettyprint.c (pretty_print_one_value): Return
3912         gdbpy_ref<>.
3913         (print_string_repr): Adjust.
3914         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3915         * python/python-internal.h (apply_varobj_pretty_printer): Return
3916         gdbpy_ref<>.
3917         * varobj.c (varobj_value_get_print_value): Adjust.
3918
3919 2018-09-08  Tom Tromey  <tom@tromey.com>
3920
3921         PR python/16047:
3922         * python/py-prettyprint.c (pretty_print_one_value): Check for
3923         to_string method.
3924
3925 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3926
3927         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3928         replace_operator_with_call.
3929
3930 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3931
3932         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3933
3934 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3935
3936         * ada-typeprint.c (print_range): Print the bounds using TYPE
3937         rather than its TYPE_TARGET_TYPE.
3938
3939 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3940
3941         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3942         call to ada_to_fixed_value_create.
3943
3944 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3945
3946         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3947
3948 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3949
3950         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3951         by calls to error.
3952
3953 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3954
3955         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3956         Move update of loop variable "fi".
3957
3958 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3959
3960         * ada-lang.c (value_assign_to_component): In the case of
3961         big-endian targets, extract the bits of the given VAL
3962         using an src_offset of zero if container is not a scalar.
3963
3964 2018-09-06  Simon Ser  <contact@emersion.fr>
3965
3966         PR gdb/23105
3967         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3968         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3969         * fbsd-tdep.c (fbsd_make_note_desc): New.
3970         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3971         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3972         * target.h (enum target_object) Add FreeBSD-specific
3973         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3974
3975 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3976
3977         * compile/compile-c.h (generate_c_for_variable_locations):
3978         Change reference to pointer.
3979         * compile/compile-c-support.c (compile_program) <compute>:
3980         Likewise.
3981         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3982         (generate_c_for_for_one_variable): Likewise
3983         (generate_c_for_variable_locations): Likewise
3984         * compile/compile-c-types.c (compile_c_instance::convert_type):
3985         Likewise
3986         * compile/compile-cplus-symbols.c (convert_one_symbol):
3987         std::move the scope passed to enter_scope.
3988         * compile/compile-cplus-types.c
3989         (compile_cplus_instance::enter_scope): Make parameter
3990         rvalue-reference.
3991         (compile_cplus_instance::new_scope): Change reference to
3992         pointer.
3993         (compile_cplus_instance::convert_type): Likewise
3994         (compile_cplus_convert_typedef): std::move the scope passed to
3995         enter_scope.
3996         (compile_cplus_convert_struct_or_union): Likewise.
3997         (compile_cplus_convert_enum): Likewise.
3998         (compile_cplus_convert_namespace): Likewise.
3999         * compile/compile-cplus.h (compile_cplus_instance)
4000         <enter_scope>: Make parameter rvalue-reference.
4001         * compile/compile-internal.h (compile_instance)
4002         <get_cached_type>: Likewise
4003         * compile/compile-loc2c.c (push): Likewise
4004         (pushf): Likewise
4005         (unary): Likewise
4006         (binary): Likewise
4007         (print_label): Likewise
4008         (pushf_register_address): Likewise
4009         (pushf_register): Likewise
4010         (do_compile_dwarf_expr_to_c): Likewise
4011         (compile_dwarf_expr_to_c): Likewise
4012         (compile_dwarf_bounds_to_c): Likewise
4013         * compile/compile.c (compile_instance::get_cached_type):
4014         Likewise
4015         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4016         (compile_dwarf_bounds_to_c): Likewise
4017         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4018         (dwarf2_compile_property_to_c): Likewise
4019         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4020         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4021         Likewise
4022
4023 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4024
4025         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4026         * tui/tui-data.c (init_content_element): Don't initialize it.
4027
4028 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4029
4030         * tui/tui-data.h (struct tui_win_info)
4031         <detail::opaque>: Remove.
4032         * tui/tui-data.c (init_win_info): Remove assignment.
4033
4034 2018-09-05  Tom Tromey  <tom@tromey.com>
4035
4036         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4037         -Wformat-nonliteral.
4038         * target-float.c (host_float_ops<T>::to_string)
4039         (host_float_ops<T>::from_string): Use
4040         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4041         * configure: Rebuild.
4042
4043 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4044
4045         * printcmd.c (printf_c_string): Use
4046         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4047         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4048
4049 2018-09-05  Tom Tromey  <tom@tromey.com>
4050
4051         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4052
4053 2018-09-05  Tom de Vries  <tdevries@suse.de>
4054
4055         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4056         with resolve_abstract_p == true.
4057         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4058         defaulting to false. Propagate resolve_abstract_p to
4059         dwarf2_fetch_die_loc_sect_off.
4060         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4061         parameter, defaulting to false.
4062         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4063         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4064         parameter.
4065         * dwarf2read.h (struct die_info): Forward-declare.
4066         (die_info_ptr): New typedef.
4067         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4068
4069 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4070
4071         GDB 8.2 released.
4072
4073 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4074             Pedro Alves  <palves@redhat.com>
4075
4076         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4077         "aclocal-m4-deps.mk".  Include file here.
4078         $(srcdir)/aclocal.m4: Add "configure.ac".
4079         * gnulib/aclocal-m4-deps.mk: New file.
4080         * gnulib/update-gnulib.sh: Automatically update
4081         "aclocal-m4-deps.mk".
4082
4083 2018-09-04  Tom Tromey  <tom@tromey.com>
4084
4085         * configure: Rebuild.
4086         * configure.ac: Remove multi-ice code.
4087
4088 2018-09-04  Tom Tromey  <tom@tromey.com>
4089
4090         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4091         (ada-exp.o): Update.
4092
4093 2018-09-04  Tom Tromey  <tom@tromey.com>
4094
4095         * Makefile.in (printcmd.o, target-float.o): Remove.
4096         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4097
4098 2018-09-04  Tom Tromey  <tom@tromey.com>
4099
4100         * gnulib/Makefile.in: Remove obsolete comment.
4101         * Makefile.in: Remove obsolete comment.
4102
4103 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4104
4105         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4106         line with '+'.
4107
4108 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4109
4110         * riscv-tdep.c: Add 'prologue-value.h' include.
4111         (struct riscv_unwind_cache): New struct.
4112         (riscv_debug_unwinder): New global.
4113         (riscv_scan_prologue): Update arguments, capture register details
4114         from prologue scan.
4115         (riscv_skip_prologue): Reformat arguments line, move end of
4116         prologue calculation into riscv_scan_prologue.
4117         (riscv_frame_cache): Update return type, create
4118         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4119         details.
4120         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4121         (riscv_frame_prev_register): Use the trad_frame within the
4122         riscv_unwind_cache.
4123         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4124         flag.
4125
4126 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4127
4128         * trad-frame.h (trad_frame_set_realreg): Declare.
4129         (trad_frame_set_addr): Declare.
4130         * trad-frame.c (trad_frame_set_realreg): Define new function.
4131         (trad_frame_set_addr): Define new function.
4132         (trad_frame_set_reg_realreg): Use new function.
4133         (trad_frame_set_reg_addr): Use new function.
4134
4135 2018-09-01  Keith Seitz  <keiths@redhat.com>
4136
4137         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4138         pulongest instead of "%lld".
4139         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4140         ATTRIBUTE_UNUSED.
4141
4142 2018-08-31  Tom Tromey  <tom@tromey.com>
4143
4144         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4145         variant part type.
4146
4147 2018-08-31  Pedro Alves  <palves@redhat.com>
4148
4149         * gdbarch.h: Regenerate.
4150
4151 2018-08-31  Pedro Alves  <palves@redhat.com>
4152
4153         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4154         * target.h (Hardware watchpoint interfaces): Describe
4155         continuable/steppable/non-steppable watchpoints.
4156         * gdbarch.h, gdbarch.c: Regenerate.
4157
4158 2018-08-31  Pedro Alves  <palves@redhat.com>
4159
4160         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4161         Delete.
4162         * s390-linux-nat.c
4163         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4164         * target.h (target_ops::have_continuable_watchpoint): Delete.
4165         (target_have_continuable_watchpoint): Delete.
4166         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4167         * target-delegates.c: Regenerate.
4168
4169 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4170
4171         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4172         the files present in "gnulib/import/m4/".
4173
4174 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4175
4176         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4177         c.sw, c.swsp, and c.sdsp.
4178
4179 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4180
4181         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4182         (riscv_read_misa_reg): Don't cache value read into inferior data.
4183         (riscv_new_inferior_data): Delete.
4184         (riscv_inferior_data_cleanup): Delete.
4185         (riscv_inferior_data): Delete.
4186         (riscv_invalidate_inferior_data): Delete.
4187         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4188
4189 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4190
4191         * compile/compile-cplus-types.c
4192         (compile_cplus_instance::leave_scope): Take the address of scope
4193         object.
4194         (compile_cplus_instance::convert_qualified_base): Compare quals
4195         to 0.
4196
4197 2018-08-30  Keith Seitz  <keiths@redhat.com>
4198
4199         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4200         Use "%s" and host_address_to_string instead of "%p" in printf.
4201
4202 2018-08-29  Keith Seitz  <keiths@redhat.com>
4203
4204         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4205         and compile-cplus-types.c.
4206         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4207         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4208         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4209         Declare.
4210         * compile/compile-c-support.c: Include compile-cplus.h.
4211         (load_libcompile): Templatize.
4212         (get_compile_context): "New" function.
4213         (c_get_compile_context): Use get_compile_context.
4214         (cplus_get_compile_context): New function.
4215         (cplus_push_user_expression, cplus_pop_user_expression)
4216         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4217         (cplus_compute_program): Define new structs/functions.
4218         * compile/compile-cplus-symmbols.c: New file.
4219         * compile/compile-cplus-types.c: New file.
4220         * compile/compile-cplus.h: New file.
4221         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4222         Declare.
4223         * compile/compile-object-load.c (get_out_value_type): Use
4224         strncmp_iw when comparing symbol names.
4225         (compile_object_load): Add mst_bss and mst_data.
4226         * compile/compile.c (_initialize_compile): Remove
4227         -Wno-implicit-function-declaration from `compile_args'.
4228         * compile/gcc-cp-plugin.h: New file.
4229         * NEWS: Mention C++ compile support and new debug options.
4230
4231 2018-08-29  Keith Seitz  <keiths@redhat.com>
4232
4233         * linespec.c (collect_info::add_symbol): Make virtual.
4234         (struct symbol_searcher_collect_info): New struct.
4235         (symbol_searcher::find_all_symbols): New method.
4236         * symtab.h (class symbol_searcher): New class.
4237
4238 2018-08-29  Keith Seitz  <keiths@redhat.com>
4239
4240         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4241         Change to vector of block_symbol.  Update all users.
4242         (struct collect_info) <symbols>: Likewise.
4243         (collect_info::add_symbol): Take block_symbol as argument.
4244         Update all callers.
4245         (decode_compound_collector) <m_symbols>: Change type to vector
4246         of block_symbol.  Update all users.
4247         (decode_compound_collector::operator ()): Change parameter type
4248         to block_symbol.
4249         (find_method, find_function_symbols, find_linespec_symbols)
4250         (find_label_symbols_in_block, find_label_symbols): Change symbol
4251         vectors to block_symbol vectors.
4252         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4253         block_symbol.
4254
4255 2018-08-29  Keith Seitz  <keiths@redhat.com>
4256
4257         * linespec.c (symbolp): Remove typedef and VEC definitions.
4258         (bound_minimal_symbol_d): Likewise.
4259
4260 2018-08-29  Keith Seitz  <keiths@redhat.com>
4261
4262         * linespec.c (decode_compound_collector::decode_compound_collector):
4263         Remove initialization for `m_symtabs'.
4264         (decode_compound_collector::release_symbols): Change return type
4265         to std::vector.  Update all callers.
4266         (class decode_compound_collector) <m_symbols>: Change type to
4267         std::vector.
4268         (lookup_prefix_sym): Change return type to std::vector.  Update all
4269         callers.
4270         (compare_symbols): Remove.
4271         (std_compare_symbols): Rename to `compare_symbols'.
4272         (find_method): Change `sym_classes' parameter to std::vector.
4273         Update all callers.  Use std::sort to sort sym_classes.
4274         (find_linespec_symbols): Remove cleanup.
4275
4276 2018-08-29  Keith Seitz  <keiths@redhat.com>
4277
4278         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4279         std::vector.  Update all users.
4280         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4281         (struct collect_info) <minimal_symbols>: Likewise.
4282         (compare_msymbols): Return bool.  Change parameters to const
4283         bound_minimal_symbol references.
4284         (find_method, find_function_symbols, find_linespec_symbols): Change
4285         `minsyms' parameter to std::vector.  Update all callers.
4286
4287 2018-08-29  Keith Seitz  <keiths@redhat.com>
4288
4289         * linespec.c (struct linespec) <label_symbols>: Change type to
4290         std::vector.  Update all users.
4291         (find_label_symbols_in_block): Change `result' parameter to
4292         std::vector.  Update all callers.
4293         (find_label_symbols): Return std::vector.  Update all callers.
4294
4295 2018-08-29  Keith Seitz  <keiths@redhat.com>
4296
4297         * linespec.c (struct linespec) <function_symbols>: Change type to
4298         std::vector.  Update all users.
4299         (struct collect_info) <function_symbols>: Likewise.
4300         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4301         (std_compare_symbols): New function.
4302         (find_method, find_function_symbols, find_linespec_symbols)
4303         (find_label_symbols_in_block): Change `symbols' parameter to
4304         std::vector.  Update all callers.
4305         (find_label_symbols): Likewise for `function_symbols' and
4306         `label_funcs_ret'.
4307
4308 2018-08-29  Keith Seitz  <keiths@redhat.com>
4309
4310         * linespec.c (symtab_vector_up): Define.
4311         (struct linespec) <file_symtabs>: Change type to std::vector *.
4312         Update all uses.
4313         (struct collect_info) <file_symtabs>: Likewise.
4314         (collect_symtabs_from_filename): Return symtab_vector_up.
4315         Update all callers.
4316         (decode_objc): Remove cleanup.
4317         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4318         (symtab_collector::release_symtabs): Return symtab_vector_up.
4319         Update all callers.
4320         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4321         Update all users.
4322         (collect_symtabs_from_filename, symtabs_from_filename): Return
4323         symtab_vector_up.  Update all callers.
4324
4325 2018-08-29  Tom Tromey  <tom@tromey.com>
4326
4327         * csky-tdep.c (csky_analyze_prologue): Use
4328         core_addr_to_string_nz.
4329
4330 2018-08-29  Tom Tromey  <tom@tromey.com>
4331
4332         * windows-nat.c (struct xlate_exception) <them>: Change type to
4333         DWORD.
4334         (xlate): Fix formatting.  Remove last entry.
4335         (struct xlate_exception, xlate): Comment out.
4336         (windows_nat_target::resume): Use ranged for.
4337
4338 2018-08-29  Jim Wilson  <jimw@sifive.com>
4339
4340         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4341         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4342         of NT_PRFPREG.
4343         (riscv_linux_nat_target::store_registers): Likewise.
4344
4345 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4346
4347         PR gdb/23555
4348         PR gdb/23558
4349         * gnulib/aclocal.m4: Regenerate.
4350         * gnulib/config.in: Regenerate.
4351         * gnulib/configure: Regenerate.
4352         * gnulib/import/Makefile.am: Update.
4353         * gnulib/import/Makefile.in: Update.
4354         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4355         * gnulib/import/_Noreturn.h: ... this.
4356         * gnulib/import/alloca.in.h: Update.
4357         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4358         * gnulib/import/arg-nonnull.h: ... this.
4359         * gnulib/import/assure.h: Update.
4360         * gnulib/import/at-func.c: Update.
4361         * gnulib/import/basename-lgpl.c: Update.
4362         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4363         * gnulib/import/c++defs.h: ... this.
4364         * gnulib/import/canonicalize-lgpl.c: Update.
4365         * gnulib/import/cdefs.h: Update.
4366         * gnulib/import/chdir-long.c: Update.
4367         * gnulib/import/chdir-long.h: Update.
4368         * gnulib/import/cloexec.c: Update.
4369         * gnulib/import/cloexec.h: Update.
4370         * gnulib/import/close.c: Update.
4371         * gnulib/import/closedir.c: Update.
4372         * gnulib/import/config.charset: Update.
4373         * gnulib/import/dirent-private.h: Update.
4374         * gnulib/import/dirent.in.h: Update.
4375         * gnulib/import/dirfd.c: Update.
4376         * gnulib/import/dirname-lgpl.c: Update.
4377         * gnulib/import/dirname.h: Update.
4378         * gnulib/import/dosname.h: Update.
4379         * gnulib/import/dup-safer-flag.c: Update.
4380         * gnulib/import/dup-safer.c: Update.
4381         * gnulib/import/dup.c: Update.
4382         * gnulib/import/dup2.c: Update.
4383         * gnulib/import/errno.in.h: Update.
4384         * gnulib/import/error.c: Update.
4385         * gnulib/import/error.h: Update.
4386         * gnulib/import/exitfail.c: Update.
4387         * gnulib/import/exitfail.h: Update.
4388         * gnulib/import/extra/update-copyright: Update.
4389         * gnulib/import/fchdir.c: Update.
4390         * gnulib/import/fcntl.c: Update.
4391         * gnulib/import/fcntl.in.h: Update.
4392         * gnulib/import/fd-hook.c: Update.
4393         * gnulib/import/fd-hook.h: Update.
4394         * gnulib/import/fd-safer-flag.c: Update.
4395         * gnulib/import/fd-safer.c: Update.
4396         * gnulib/import/fdopendir.c: Update.
4397         * gnulib/import/filename.h: Update.
4398         * gnulib/import/filenamecat-lgpl.c: Update.
4399         * gnulib/import/filenamecat.h: Update.
4400         * gnulib/import/flexmember.h: Update.
4401         * gnulib/import/float+.h: Update.
4402         * gnulib/import/float.c: Update.
4403         * gnulib/import/float.in.h: Update.
4404         * gnulib/import/fnmatch.c: Update.
4405         * gnulib/import/fnmatch.in.h: Update.
4406         * gnulib/import/fnmatch_loop.c: Update.
4407         * gnulib/import/fpucw.h: Update.
4408         * gnulib/import/frexp.c: Update.
4409         * gnulib/import/frexpl.c: Update.
4410         * gnulib/import/fstat.c: Update.
4411         * gnulib/import/fstatat.c: Update.
4412         * gnulib/import/getcwd-lgpl.c: Update.
4413         * gnulib/import/getcwd.c: Update.
4414         * gnulib/import/getdtablesize.c: Update.
4415         * gnulib/import/getlogin_r.c: Update.
4416         * gnulib/import/getprogname.c: Update.
4417         * gnulib/import/getprogname.h: Update.
4418         * gnulib/import/gettext.h: Update.
4419         * gnulib/import/gettimeofday.c: Update.
4420         * gnulib/import/glob-libc.h: Update.
4421         * gnulib/import/glob.c: Update.
4422         * gnulib/import/glob.in.h: Update.
4423         * gnulib/import/glob_internal.h: Update.
4424         * gnulib/import/glob_pattern_p.c: Update.
4425         * gnulib/import/globfree.c: Update.
4426         * gnulib/import/hard-locale.c: Update.
4427         * gnulib/import/hard-locale.h: Update.
4428         * gnulib/import/intprops.h: Update.
4429         * gnulib/import/inttypes.in.h: Update.
4430         * gnulib/import/isnan.c: Update.
4431         * gnulib/import/isnand-nolibm.h: Update.
4432         * gnulib/import/isnand.c: Update.
4433         * gnulib/import/isnanl-nolibm.h: Update.
4434         * gnulib/import/isnanl.c: Update.
4435         * gnulib/import/itold.c: Update.
4436         * gnulib/import/libc-config.h: Update.
4437         * gnulib/import/limits.in.h: Update.
4438         * gnulib/import/localcharset.c: Update.
4439         * gnulib/import/localcharset.h: Update.
4440         * gnulib/import/localtime-buffer.c: Update.
4441         * gnulib/import/localtime-buffer.h: Update.
4442         * gnulib/import/lstat.c: Update.
4443         * gnulib/import/m4/00gnulib.m4: Update.
4444         * gnulib/import/m4/__inline.m4: Update.
4445         * gnulib/import/m4/absolute-header.m4: Update.
4446         * gnulib/import/m4/alloca.m4: Update.
4447         * gnulib/import/m4/builtin-expect.m4: Update.
4448         * gnulib/import/m4/canonicalize.m4: Update.
4449         * gnulib/import/m4/chdir-long.m4: Update.
4450         * gnulib/import/m4/close.m4: Update.
4451         * gnulib/import/m4/closedir.m4: Update.
4452         * gnulib/import/m4/configmake.m4: Update.
4453         * gnulib/import/m4/d-ino.m4: Update.
4454         * gnulib/import/m4/d-type.m4: Update.
4455         * gnulib/import/m4/dirent_h.m4: Update.
4456         * gnulib/import/m4/dirfd.m4: Update.
4457         * gnulib/import/m4/dirname.m4: Update.
4458         * gnulib/import/m4/double-slash-root.m4: Update.
4459         * gnulib/import/m4/dup.m4: Update.
4460         * gnulib/import/m4/dup2.m4: Update.
4461         * gnulib/import/m4/eealloc.m4: Update.
4462         * gnulib/import/m4/environ.m4: Update.
4463         * gnulib/import/m4/errno_h.m4: Update.
4464         * gnulib/import/m4/error.m4: Update.
4465         * gnulib/import/m4/exponentd.m4: Update.
4466         * gnulib/import/m4/exponentl.m4: Update.
4467         * gnulib/import/m4/extensions.m4: Update.
4468         * gnulib/import/m4/extern-inline.m4: Update.
4469         * gnulib/import/m4/fchdir.m4: Update.
4470         * gnulib/import/m4/fcntl-o.m4: Update.
4471         * gnulib/import/m4/fcntl.m4: Update.
4472         * gnulib/import/m4/fcntl_h.m4: Update.
4473         * gnulib/import/m4/fdopendir.m4: Update.
4474         * gnulib/import/m4/filenamecat.m4: Update.
4475         * gnulib/import/m4/flexmember.m4: Update.
4476         * gnulib/import/m4/float_h.m4: Update.
4477         * gnulib/import/m4/fnmatch.m4: Update.
4478         * gnulib/import/m4/fnmatch_h.m4: Update.
4479         * gnulib/import/m4/fpieee.m4: Update.
4480         * gnulib/import/m4/frexp.m4: Update.
4481         * gnulib/import/m4/frexpl.m4: Update.
4482         * gnulib/import/m4/fstat.m4: Update.
4483         * gnulib/import/m4/fstatat.m4: Update.
4484         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4485         * gnulib/import/m4/getcwd-path-max.m4: Update.
4486         * gnulib/import/m4/getcwd.m4: Update.
4487         * gnulib/import/m4/getdtablesize.m4: Update.
4488         * gnulib/import/m4/getlogin.m4: Update.
4489         * gnulib/import/m4/getlogin_r.m4: Update.
4490         * gnulib/import/m4/getpagesize.m4: Update.
4491         * gnulib/import/m4/getprogname.m4: Update.
4492         * gnulib/import/m4/gettimeofday.m4: Update.
4493         * gnulib/import/m4/glibc21.m4: Update.
4494         * gnulib/import/m4/glob.m4: Update.
4495         * gnulib/import/m4/glob_h.m4: Update.
4496         * gnulib/import/m4/gnulib-cache.m4: Update.
4497         * gnulib/import/m4/gnulib-common.m4: Update.
4498         * gnulib/import/m4/gnulib-comp.m4: Update.
4499         * gnulib/import/m4/gnulib-tool.m4: Update.
4500         * gnulib/import/m4/hard-locale.m4: Update.
4501         * gnulib/import/m4/include_next.m4: Update.
4502         * gnulib/import/m4/inttypes-pri.m4: Update.
4503         * gnulib/import/m4/inttypes.m4: Update.
4504         * gnulib/import/m4/isnand.m4: Update.
4505         * gnulib/import/m4/isnanl.m4: Update.
4506         * gnulib/import/m4/largefile.m4: Update.
4507         * gnulib/import/m4/limits-h.m4: Update.
4508         * gnulib/import/m4/localcharset.m4: Update.
4509         * gnulib/import/m4/locale-fr.m4: Update.
4510         * gnulib/import/m4/locale-ja.m4: Update.
4511         * gnulib/import/m4/locale-zh.m4: Update.
4512         * gnulib/import/m4/localtime-buffer.m4: Update.
4513         * gnulib/import/m4/longlong.m4: Update.
4514         * gnulib/import/m4/lstat.m4: Update.
4515         * gnulib/import/m4/malloc.m4: Update.
4516         * gnulib/import/m4/malloca.m4: Update.
4517         * gnulib/import/m4/math_h.m4: Update.
4518         * gnulib/import/m4/mbrtowc.m4: Update.
4519         * gnulib/import/m4/mbsinit.m4: Update.
4520         * gnulib/import/m4/mbsrtowcs.m4: Update.
4521         * gnulib/import/m4/mbstate_t.m4: Update.
4522         * gnulib/import/m4/memchr.m4: Update.
4523         * gnulib/import/m4/memmem.m4: Update.
4524         * gnulib/import/m4/mempcpy.m4: Update.
4525         * gnulib/import/m4/memrchr.m4: Update.
4526         * gnulib/import/m4/mkdir.m4: Update.
4527         * gnulib/import/m4/mkstemp.m4: Update.
4528         * gnulib/import/m4/mmap-anon.m4: Update.
4529         * gnulib/import/m4/mode_t.m4: Update.
4530         * gnulib/import/m4/msvc-inval.m4: Update.
4531         * gnulib/import/m4/msvc-nothrow.m4: Update.
4532         * gnulib/import/m4/multiarch.m4: Update.
4533         * gnulib/import/m4/nocrash.m4: Update.
4534         * gnulib/import/m4/off_t.m4: Update.
4535         * gnulib/import/m4/onceonly.m4: Update.
4536         * gnulib/import/m4/open-cloexec.m4: Update.
4537         * gnulib/import/m4/open.m4: Update.
4538         * gnulib/import/m4/openat.m4: Update.
4539         * gnulib/import/m4/opendir.m4: Update.
4540         * gnulib/import/m4/pathmax.m4: Update.
4541         * gnulib/import/m4/rawmemchr.m4: Update.
4542         * gnulib/import/m4/readdir.m4: Update.
4543         * gnulib/import/m4/readlink.m4: Update.
4544         * gnulib/import/m4/realloc.m4: Update.
4545         * gnulib/import/m4/rename.m4: Update.
4546         * gnulib/import/m4/rewinddir.m4: Update.
4547         * gnulib/import/m4/rmdir.m4: Update.
4548         * gnulib/import/m4/save-cwd.m4: Update.
4549         * gnulib/import/m4/secure_getenv.m4: Update.
4550         * gnulib/import/m4/setenv.m4: Update.
4551         * gnulib/import/m4/signal_h.m4: Update.
4552         * gnulib/import/m4/ssize_t.m4: Update.
4553         * gnulib/import/m4/stat-time.m4: Update.
4554         * gnulib/import/m4/stat.m4: Update.
4555         * gnulib/import/m4/std-gnu11.m4: Update.
4556         * gnulib/import/m4/stdbool.m4: Update.
4557         * gnulib/import/m4/stddef_h.m4: Update.
4558         * gnulib/import/m4/stdint.m4: Update.
4559         * gnulib/import/m4/stdio_h.m4: Update.
4560         * gnulib/import/m4/stdlib_h.m4: Update.
4561         * gnulib/import/m4/strchrnul.m4: Update.
4562         * gnulib/import/m4/strdup.m4: Update.
4563         * gnulib/import/m4/strerror.m4: Update.
4564         * gnulib/import/m4/string_h.m4: Update.
4565         * gnulib/import/m4/strstr.m4: Update.
4566         * gnulib/import/m4/strtok_r.m4: Update.
4567         * gnulib/import/m4/sys_socket_h.m4: Update.
4568         * gnulib/import/m4/sys_stat_h.m4: Update.
4569         * gnulib/import/m4/sys_time_h.m4: Update.
4570         * gnulib/import/m4/sys_types_h.m4: Update.
4571         * gnulib/import/m4/tempname.m4: Update.
4572         * gnulib/import/m4/time_h.m4: Update.
4573         * gnulib/import/m4/unistd-safer.m4: Update.
4574         * gnulib/import/m4/unistd_h.m4: Update.
4575         * gnulib/import/m4/warn-on-use.m4: Update.
4576         * gnulib/import/m4/wchar_h.m4: Update.
4577         * gnulib/import/m4/wchar_t.m4: Update.
4578         * gnulib/import/m4/wctype_h.m4: Update.
4579         * gnulib/import/m4/wint_t.m4: Update.
4580         * gnulib/import/malloc.c: Update.
4581         * gnulib/import/malloc/scratch_buffer.h: Update.
4582         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4583         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4584         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4585         * gnulib/import/malloca.c: Update.
4586         * gnulib/import/malloca.h: Update.
4587         * gnulib/import/malloca.valgrind: Update.
4588         * gnulib/import/math.in.h: Update.
4589         * gnulib/import/mbrtowc.c: Update.
4590         * gnulib/import/mbsinit.c: Update.
4591         * gnulib/import/mbsrtowcs-impl.h: Update.
4592         * gnulib/import/mbsrtowcs-state.c: Update.
4593         * gnulib/import/mbsrtowcs.c: Update.
4594         * gnulib/import/memchr.c: Update.
4595         * gnulib/import/memmem.c: Update.
4596         * gnulib/import/mempcpy.c: Update.
4597         * gnulib/import/memrchr.c: Update.
4598         * gnulib/import/mkdir.c: Update.
4599         * gnulib/import/mkstemp.c: Update.
4600         * gnulib/import/msvc-inval.c: Update.
4601         * gnulib/import/msvc-inval.h: Update.
4602         * gnulib/import/msvc-nothrow.c: Update.
4603         * gnulib/import/msvc-nothrow.h: Update.
4604         * gnulib/import/open.c: Update.
4605         * gnulib/import/openat-die.c: Update.
4606         * gnulib/import/openat-priv.h: Update.
4607         * gnulib/import/openat-proc.c: Update.
4608         * gnulib/import/openat.c: Update.
4609         * gnulib/import/openat.h: Update.
4610         * gnulib/import/opendir.c: Update.
4611         * gnulib/import/pathmax.h: Update.
4612         * gnulib/import/pipe-safer.c: Update.
4613         * gnulib/import/rawmemchr.c: Update.
4614         * gnulib/import/readdir.c: Update.
4615         * gnulib/import/readlink.c: Update.
4616         * gnulib/import/realloc.c: Update.
4617         * gnulib/import/ref-add.sin: Update.
4618         * gnulib/import/ref-del.sin: Update.
4619         * gnulib/import/rename.c: Update.
4620         * gnulib/import/rewinddir.c: Update.
4621         * gnulib/import/rmdir.c: Update.
4622         * gnulib/import/same-inode.h: Update.
4623         * gnulib/import/save-cwd.c: Update.
4624         * gnulib/import/save-cwd.h: Update.
4625         * gnulib/import/scratch_buffer.h: Update.
4626         * gnulib/import/secure_getenv.c: Update.
4627         * gnulib/import/setenv.c: Update.
4628         * gnulib/import/signal.in.h: Update.
4629         * gnulib/import/stat-time.c: Update.
4630         * gnulib/import/stat-time.h: Update.
4631         * gnulib/import/stat-w32.c: Update.
4632         * gnulib/import/stat-w32.h: Update.
4633         * gnulib/import/stat.c: Update.
4634         * gnulib/import/stdbool.in.h: Update.
4635         * gnulib/import/stddef.in.h: Update.
4636         * gnulib/import/stdint.in.h: Update.
4637         * gnulib/import/stdio.in.h: Update.
4638         * gnulib/import/stdlib.in.h: Update.
4639         * gnulib/import/str-two-way.h: Update.
4640         * gnulib/import/strchrnul.c: Update.
4641         * gnulib/import/strdup.c: Update.
4642         * gnulib/import/streq.h: Update.
4643         * gnulib/import/strerror-override.c: Update.
4644         * gnulib/import/strerror-override.h: Update.
4645         * gnulib/import/strerror.c: Update.
4646         * gnulib/import/string.in.h: Update.
4647         * gnulib/import/stripslash.c: Update.
4648         * gnulib/import/strnlen1.c: Update.
4649         * gnulib/import/strnlen1.h: Update.
4650         * gnulib/import/strstr.c: Update.
4651         * gnulib/import/strtok_r.c: Update.
4652         * gnulib/import/sys_stat.in.h: Update.
4653         * gnulib/import/sys_time.in.h: Update.
4654         * gnulib/import/sys_types.in.h: Update.
4655         * gnulib/import/tempname.c: Update.
4656         * gnulib/import/tempname.h: Update.
4657         * gnulib/import/time.in.h: Update.
4658         * gnulib/import/unistd--.h: Update.
4659         * gnulib/import/unistd-safer.h: Update.
4660         * gnulib/import/unistd.in.h: Update.
4661         * gnulib/import/unsetenv.c: Update.
4662         * gnulib/import/verify.h: Update.
4663         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4664         * gnulib/import/wchar.in.h: Update.
4665         * gnulib/import/wctype.in.h: Update.
4666         * gnulib/import/xalloc-oversized.h: Update.
4667         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4668         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4669
4670 2018-08-16  Gary Benson <gbenson@redhat.com>
4671
4672         PR gdb/13000:
4673         * gdb/main.c (captured_main_1): Exit with nonzero status
4674         in batch mode if the last command to be executed failed.
4675         * NEWS: Mention the above.
4676
4677 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4678
4679         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4680         end of warning message.
4681
4682 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4683
4684         PR gdb/22943:
4685         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4686         (aarch64_extract_return_value): Use
4687         aapcs_is_vfp_call_or_return_candidate.
4688         (aarch64_return_in_memory): Likewise.
4689         (aarch64_store_return_value): Likewise.
4690
4691 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4692
4693         * aarch64-tdep.c
4694         (aapcs_is_vfp_call_or_return_candidate): Make static
4695         (pass_in_v_or_stack): Remove function.
4696         (pass_in_v_vfp_candidate): New function.
4697         (aarch64_push_dummy_call): Check for float register candidates.
4698
4699 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4700
4701         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4702         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4703         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4704
4705 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4706
4707         PR build/23399
4708         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4709         (struct ipa_sym_addresses): Rename to...
4710         (struct ipa_sym_addresses_common): ... this.
4711         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4712
4713 2018-08-28  Tom Tromey  <tom@tromey.com>
4714
4715         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4716         (token_fifo): Now a std::vector.
4717         (yylex, c_parse): Update.
4718         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4719         (token_fifo): Now a std::vector.
4720         (yylex, d_parse): Update.
4721         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4722         (token_fifo): Now a std::vector.
4723         (yylex, go_parse): Update.
4724
4725 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4726
4727         * parser-defs.h (struct type_stack) <elements>: Change type to
4728         std::vector<union type_stack_elt>.
4729         <depth, size>: Remove.
4730         * parse.c (parse_exp_in_context_1): Adjust.
4731         (type_stack_reserve): Remove.
4732         (check_type_stack_depth): Remove.
4733         (insert_into_type_stack): Adjust to std::vector.
4734         (insert_type): Likewise.
4735         (push_type): Likewise.
4736         (push_type_int): Likewise.
4737         (insert_type_address_space): Likewise.
4738         (pop_type): Likewise.
4739         (pop_type_int): Likewise.
4740         (pop_typelist): Likewise.
4741         (pop_type_stack): Likewise.
4742         (append_type_stack): Likewise.
4743         (push_type_stack): Likewise.
4744         (get_type_stack): Likewise.
4745         (type_stack_cleanup): Likewise.
4746         (push_typelist): Likewise.
4747         (follow_types): Likewise.
4748         (_initialize_parse): Likewise.
4749
4750 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4751
4752         * NEWS: Mention csky target.
4753
4754 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4755             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4756             Don Breazeal  <donb@codesourcery.com>
4757
4758         * csky-linux-tdep.c: New file.
4759         * csky-tdep.c: Likewise.
4760         * csky-tdep.h: Likewise.
4761         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4762         csky-tdep.o.
4763         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4764         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4765         * configure.tgt: Add csky support.
4766
4767 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4768
4769         * python/py-framefilter.c (py_print_frame): Print frame architecture
4770         when printing on an MI output.
4771
4772 2018-08-27  Tom Tromey  <tom@tromey.com>
4773
4774         PR build/23087:
4775         * configure: Rebuild.
4776         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4777
4778 2018-08-27  Tom Tromey  <tom@tromey.com>
4779
4780         * aarch64-linux-tdep.c
4781         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4782         casts to int.
4783
4784 2018-08-27  Tom Tromey  <tom@tromey.com>
4785
4786         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4787         unsigned.
4788         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4789         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4790         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4791         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4792         unsigned.
4793
4794 2018-08-27  Tom Tromey  <tom@tromey.com>
4795
4796         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4797         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4798
4799 2018-08-27  Tom Tromey  <tom@tromey.com>
4800
4801         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4802         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4803         ULONGEST_MAX.
4804         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4805         ULONGEST_MAX.
4806         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4807         ULONGEST_MAX.
4808         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4809         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4810         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4811         ULONGEST_MAX.
4812         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4813         (ppc64_linux_sigaction_tramp_frame)
4814         (ppc32_linux_sighandler_tramp_frame)
4815         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4816         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4817         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4818         * mn10300-linux-tdep.c (am33_linux_sigframe)
4819         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4820         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4821         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4822         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4823         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4824         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4825         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4826         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4827         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4828         * microblaze-linux-tdep.c
4829         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4830         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4831         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4832         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4833         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4834         * common/common-types.h (ULONGEST_MAX): New define.
4835         (CORE_ADDR_MAX): Fix formatting.
4836         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4837         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4838         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4839         (arm_linux_rt_sigreturn_tramp_frame)
4840         (arm_eabi_linux_sigreturn_tramp_frame)
4841         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4842         (thumb2_eabi_linux_sigreturn_tramp_frame)
4843         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4844         (arm_linux_restart_syscall_tramp_frame)
4845         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4846         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4847         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4848         ULONGEST_MAX.
4849         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4850
4851 2018-08-27  Tom Tromey  <tom@tromey.com>
4852
4853         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4854         CORE_ADDR_MAX.
4855         * mips-tdep.c (mips_deal_with_atomic_sequence)
4856         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4857         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4858         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4859         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4860         CORE_ADDR_MAX.
4861         * aarch64-tdep.c (aarch64_software_single_step): Use
4862         CORE_ADDR_MAX.
4863
4864 2018-08-27  Tom Tromey  <tom@tromey.com>
4865
4866         * linespec.c (complete_linespec_component): Add cast to "char".
4867         * completer.c (completion_tracker::build_completion_result): Add
4868         cast to "char".
4869
4870 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4871
4872         * solist.h (struct solist, struct target_so_ops): Fix
4873         indentation.
4874
4875 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4876
4877         * ada-tasks.c (ada_task_info_s): Remove typedef.
4878         (DEF_VEC_O(ada_task_info_s)): Remove.
4879         (struct ada_tasks_inferior_data): Initialize fields.
4880         <task_list>: Make an std::vector.
4881         (get_ada_tasks_inferior_data): Allocate with new.
4882         (ada_get_task_number): Adjust.
4883         (get_task_number_from_id): Likewise.
4884         (valid_task_id): Likewise.
4885         (ada_get_task_info_from_ptid): Likewise.
4886         (iterate_over_live_ada_tasks): Likewise.
4887         (add_ada_task): Likewise.
4888         (read_known_tasks): Likewise.
4889         (ada_build_task_list): Likewise.
4890         (print_ada_task_info): Likewise.
4891         (info_task): Likewise.
4892         (task_command_1): Likewise.
4893
4894 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4895
4896         * ada-lang.c (add_angle_brackets): Return std::string.
4897
4898 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4899
4900         * python/py-threadevent.c (py_get_event_thread): Initialize
4901         pythread.
4902
4903 2018-08-24  Pedro Alves  <palves@redhat.com>
4904
4905         * python/py-bpevent.c (create_breakpoint_event_object): Use
4906         copy-initialization.
4907         * python/py-continueevent.c (emit_continue_event): Use
4908         copy-initialization.
4909         * python/py-exitedevent.c (create_exited_event_object): Return a
4910         gdbpy_ref<>.
4911         (emit_exited_event): Use copy-initialization.
4912         * python/py-inferior.c (python_new_inferior)
4913         (python_inferior_deleted, add_thread_object): Use
4914         copy-initialization.
4915         * python/py-infevents.c (create_inferior_call_event_object)
4916         (create_register_changed_event_object)
4917         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4918         (emit_inferior_call_event, emit_memory_changed_event)
4919         (emit_register_changed_event): Use copy-initialization.
4920         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4921         Return a gdbpy_ref<>.
4922         (emit_new_objfile_event): Use copy-initialization.
4923         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4924         (emit_clear_objfiles_event): Use copy-initialization.
4925         * python/py-signalevent.c (create_signal_event_object): Use
4926         copy-initialization.
4927         * python/py-threadevent.c (create_thread_event_object): Use
4928         copy-initialization.
4929
4930 2018-08-24  Pedro Alves  <palves@redhat.com>
4931             Simon Marchi  <simon.marchi@ericsson.com>
4932
4933         PR gdb/23379
4934         * python/py-continueevent.c: Include "gdbthread.h".
4935         (create_continue_event_object): Add intro comment.  Add 'ptid'
4936         parameter.  Use it to find thread to pass to
4937         create_thread_event_object.
4938         (emit_continue_event): Pass PTID down to
4939         create_continue_event_object.
4940         * python/py-event.h (py_get_event_thread): Declare.
4941         (create_thread_event_object): Remove default from 'thread'
4942         parameter.
4943         * python/py-stopevent.c (create_stop_event_object): Use
4944         py_get_event_thread.
4945         * python/py-threadevent.c (get_event_thread): Rename to ...
4946         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4947         and use it to find the thread.
4948         (create_thread_event_object): Assert that THREAD isn't null.
4949         Don't find the event thread here.
4950
4951 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4952
4953         * block.h (blockrange, blockranges): New struct declarations.
4954         (struct block): Add new field named `ranges'.
4955         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4956         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4957         macros for accessing ranges in struct block.
4958         (make_blockranges): New declaration.
4959         block.c (make_blockranges): New function.
4960         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4961         for block.
4962         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4963         * blockframe.c (cache_pc_function_block): New static global.
4964         (clear_pc_function_cache): Clear cache_pc_function_block.
4965         (find_pc_partial_function): Move comment to symtab.h.  Add
4966         support for non-contiguous blocks.
4967         * cli/cli-cmds.c (block.h): Include.
4968         (print_disassembly): Handle printing of non-contiguous blocks.
4969         (disassemble_current_function): Likewise.
4970         (disassemble_command): Likewise.
4971
4972         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4973         BLOCK_START.
4974         * blockframe.c (get_pc_function_start): Likewise.
4975         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4976         (gcc_symbol_address): Likewise.
4977         * compile/compile-object-run.c (compile_object_run): Likewise.
4978         * compile/compile.c (get_expr_block_and_pc): Likewise.
4979         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4980         (func_addr_to_tail_call_list): Likewise.
4981         * findvar.c (default_read_var_value): Likewise.
4982         * inline-frame.c (inline_frame_this_id): Likewise.
4983         (skip-inline_frames): Likewise.
4984         * infcmd.c (until_next_command): Likewise.
4985         * linespec.c (convert_linespec_to_sals): Likewise.
4986         * parse.c (parse_exp_in_context_1): Likewise.
4987         * printcmd.c (build_address_symbolic): likewise.
4988         (info_address_command): Likewise.
4989         symtab.c (find_function_start_sal): Likewise.
4990         (skip_prologue_sal): Likewise.
4991         (find_function_alias_target): Likewise.
4992         (find_gnu_ifunc): Likewise.
4993         * stack.c (find_frame_funname): Likewise.
4994         * symtab.c (fixup_symbol_section): Likewise.
4995         (find_function_start_sal): Likewise.
4996         (skip_prologue_sal): Likewsie.
4997         (find_function_alias_target): Likewise.
4998         (find_gnu_ifunc): Likewise.
4999         * tracepoint.c (info_scope_command): Likewise.
5000         * value.c (value_fn_field): Likewise.
5001
5002         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5003         in place of find_pc_partial_function.
5004         * blockframe.c (find_function_entry_range_from_pc): New function.
5005         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5006         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5007         for each range in a block.
5008
5009
5010 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5011
5012         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5013         incrementation.
5014
5015 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5016
5017         * solib-svr4.c (read_program_headers_from_bfd): Return
5018         gdb::optional<gdb::byte_vector>.
5019         (svr4_exec_displacement): Adjust.
5020
5021 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5022
5023         * solib-svr4.c (read_program_header): Return
5024         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5025         (find_program_interpreter): Return
5026         gdb::optional<gdb::byte_vector>.
5027         (scan_dyntag_auxv): Adjust.
5028         (enable_break): Adjust.
5029         (svr4_exec_displacement): Adjust.
5030
5031 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5032
5033         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5034         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5035
5036 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5037
5038         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5039         string_vprintf.
5040         * guile/scm-utils.c (gdbscm_printf): Likewise.
5041         * serial.c (serial_printf): Likewise.
5042         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5043
5044 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5045
5046         * stack.c (print_frame): Print frame architecture when printing on
5047         an MI output.
5048         * NEWS: Mention new "arch" attribute in frame output.
5049
5050 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5051
5052         * arch/aarch64.h (aarch64_regnum): Update comment.
5053
5054 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5055
5056         * NEWS: Add SVE to 8.2 section.
5057
5058 2018-08-21  Pedro Alves  <palves@redhat.com>
5059
5060         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5061         out from gdbscm_parse_function_args.
5062         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5063         gdbscm_parse_function_args_1.
5064
5065 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5066
5067         PR gdb/17816
5068         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5069         operator.
5070
5071 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5072
5073         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5074
5075 2018-08-19  Michael Spang  <spang@google.com>
5076
5077         PR gdb/11786
5078         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5079         for PT_TLS segments.
5080
5081 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5082
5083         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5084         dwarf_variable_value.
5085         * dwarf2-frame.c (class dwarf_expr_executor):
5086         Add override for dwarf_variable_value.
5087         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5088         (class symbol_needs_eval_context): Likewise.
5089         (indirect_synthetic_pointer): Add forward declaration.
5090         (sect_variable_value): New function.
5091         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5092         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5093         for DW_OP_GNU_variable_value.
5094
5095 2018-08-16  Tom Tromey  <tom@tromey.com>
5096
5097         * top.c (read_command_file): Update.
5098         (command_line_input): Remove "repeat" argument.
5099         * ada-lang.c (get_selections): Update.
5100         * linespec.c (decode_line_2): Update.
5101         * defs.h (command_line_input): Remove argument.
5102         * cli/cli-script.c (read_next_line): Update.
5103         * python/py-gdb-readline.c: Update.
5104
5105 2018-08-17  Tom Tromey  <tom@tromey.com>
5106
5107         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5108         command_line_input.
5109
5110 2018-08-15  Tom Tromey  <tom@tromey.com>
5111
5112         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5113
5114 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5115
5116         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5117         If used, use find_pc_partial_function to find address range
5118         to disassemble.
5119         * mi/mi-main.c (mi_cmd_list_features): Report
5120         "data-disassemble-a-option" feature.
5121         * NEWS: Mention new -data-disassemble option -a.
5122
5123 2018-08-13  Tom Tromey  <tom@tromey.com>
5124
5125         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5126
5127 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5128
5129         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5130         (aarch64_linux_collect_sve_regset): Likewise.
5131         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5132         * regcache.h (regcache_map_entry_size): New function.
5133
5134 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5135
5136         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5137         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5138         (SVE_HEADER_VL_LENGTH): Likewise.
5139         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5140         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5141         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5142         (SVE_HEADER_SIZE_OFFSET): Likewise.
5143         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5144         (SVE_HEADER_VL_OFFSET): Likewise.
5145         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5146         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5147         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5148         (SVE_HEADER_SIZE): Likewise.
5149         (aarch64_linux_core_read_vq): Add function.
5150         (aarch64_linux_core_read_description): Check for SVE section.
5151
5152 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5153
5154         * aarch64-fbsd-tdep.c
5155         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5156         collect_size.
5157         * aarch64-linux-tdep.c
5158         (aarch64_linux_iterate_over_regset_sections): Likewise.
5159         * alpha-linux-tdep.c
5160         (alpha_linux_iterate_over_regset_sections):
5161         * alpha-nbsd-tdep.c
5162         (alphanbsd_iterate_over_regset_sections): Likewise.
5163         * amd64-fbsd-tdep.c
5164         (amd64fbsd_iterate_over_regset_sections): Likewise.
5165         * amd64-linux-tdep.c
5166         (amd64_linux_iterate_over_regset_sections): Likewise.
5167         * arm-bsd-tdep.c
5168         (armbsd_iterate_over_regset_sections): Likewise.
5169         * arm-fbsd-tdep.c
5170         (arm_fbsd_iterate_over_regset_sections): Likewise.
5171         * arm-linux-tdep.c
5172         (arm_linux_iterate_over_regset_sections): Likewise.
5173         * corelow.c (get_core_registers_cb): Likewise.
5174         (core_target::fetch_registers): Likewise.
5175         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5176         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5177         * gdbarch.h (void): Regenerate.
5178         * gdbarch.sh: Add supply_size and collect_size.
5179         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5180         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5181         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5182         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5183         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5184         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5185         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5186         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5187         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5188         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5189         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5190         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5191         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5192         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5193         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5194         Likewise.
5195         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5196         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5197         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5198         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5199         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5200         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5201         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5202         Likewise.
5203         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5204         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5205         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5206         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5207         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5208         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5209         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5210         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5211
5212 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5213
5214         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5215         with string_printf.
5216
5217 2018-08-10  Keith Seitz  <keiths@redhat.com>
5218
5219         * compile/compile-c-support.c (add_code_header, add_code_footer):
5220         Move into policy class.
5221         (c_push_user_expression, pop_user_expression_nop)
5222         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5223         (compile_program): New host class.
5224         (c_compile_program): New typedef.
5225         (c_compute_porgram): Use c_compile_program.
5226
5227 2018-08-10  Keith Seitz  <keiths@redhat.com>
5228
5229         * compile/compile-internal.h (compile_instance::~compile_instance):
5230         Remove calls to htab_delete.
5231         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5232         * compile.c (compile_instance::compile_instance): Initialize
5233         htab unique pointers.
5234         (compile_instance::get_cached_type, compile_instance::insert_type)
5235         (compile_instance::error_symbol_once): Update for unique_ptr.
5236
5237 2018-08-10  Keith Seitz  <keiths@redhat.com>
5238
5239         * compile/compile-c-symbols.c (struct symbol_error)
5240         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5241         (compile_instance::insert_symbol_error)
5242         (compile_instance::error_symbol_once): Move to ...
5243         * compile/compile.c: ... here.
5244
5245 2018-08-10  Keith Seitz  <keiths@redhat.com>
5246
5247         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5248         instead of `new_compile_instance'.
5249         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5250         Update description.
5251         If the symbol error map is not initialized, create it.
5252         (generate_c_for_for_one_symbol): Do not check/initialize
5253         the symbol error map.
5254         * compile/compile-c-types.c (compile_c_instance): Make a class.
5255         Update all callers.
5256         (compile_instance::compile_instance): Initialize the type cache.
5257         (get_cached_type): New function.
5258         (insert_type): Update description.
5259         (compile_c_instance::m_default_cflags): Define.
5260         (convert_type): Update description.  Use get_cached_type.
5261         (delete_instance): Moved to destructor.
5262         (new_compile_instance): Moved to constructor.
5263         * compile/compile-c.h (compile_c_instance): Make class inheriting
5264         from compile_instance.
5265         <base>: Remove field.
5266         <type_map, symbol_err_map>: Move to base class.
5267         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5268         * compile/compile-internal.h (compile_instance): Make class.
5269         <type_map_t, symbol_err_map_t>: Define.
5270         <fe>: Rename to `m_gcc_fe'.
5271         <scope, block, gcc_target_options>: Add `m_' prefix.
5272         <m_type_map, m_symbol_err_map>: New fields, moved from
5273         compile_c_instance.
5274         <destroy>: Remove.
5275         (convert_type, new_compile_instance): Remove.
5276         * compile/compile.c (cleanup_compile_instance): Remove.
5277         (compile_to_object): Use unique_ptr to eliminate cleanups.
5278         (compile_instance::set_print_callback, compile_instance::version)
5279         (compile_instance::set_verbose)
5280         (compile_instance::set_driver_filename)
5281         (compile_instance::set_triplet_regexp)
5282         (compile_instance::set_arguments)
5283         (compile_instance::set_source_file)
5284         (compile_instance::compile): Define.
5285
5286 2018-08-10  Keith Seitz  <keiths@redhat.com>
5287
5288         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5289         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5290         gcc-c-fe.def to define C plugin.
5291         (delete_instance): Delete `c_plugin'.
5292         (new_compile_instance): Initialize `c_plugin'.
5293         * compile/compile-c.h: Include gcc_c_plugin.h.
5294         (struct compile_c_instance) <c_plugin>: New member.
5295         * gcc-c-plugin.h: New file.
5296         Update all callers with API change.
5297
5298 2018-08-10  Keith Seitz  <keiths@redhat.com>
5299
5300         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5301         (HFILES_NO_SRCDIR): ... to here.
5302         Add compile-internal.h and compile-c.h.
5303         * compile/compile-c-support.c: Include compile-c.h.
5304         * compile/compile-c-symbols.c: Include compile-c.h.
5305         (generate_c_for_variable_locations): Update comment.
5306         * compile/compile-c-types.c: Include compile-c.h.
5307         * compile/compile-c.h: New file -- moved C language declarations
5308         from other files here.
5309         * compile/compile-internal.h: Do not include hashtab.h or
5310         common/enum-flags.h.
5311         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5312         (gcc_convert_symbol, gcc_symbol_address)
5313         (generate_c_for_variable_locations, c_get_mode_for_size)
5314         (c_get_range_decl_name): Definitions moved to compile-c.h.
5315         * compile/compile-loc2c.c: Include compile-c.h.
5316
5317 2018-08-10  Keith Seitz  <keiths@redhat.com>
5318
5319         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5320         (c_symbol_substitution_name): ... this.
5321         Update all callers.
5322
5323 2018-08-10  Keith Seitz  <keiths@redhat.com>
5324
5325         * compile/compile-c-support.c (c_compute_program): Use
5326         unique_xmalloc_ptr to eliminate cleanup.
5327         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5328         Return a unique_xmalloc_ptr and eliminate cleanup.
5329         * compile/compile-internal.h (generate_c_for_variable_locations):
5330         Return unique_xmalloc_ptr and update description.
5331
5332 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5333
5334         * corelow.c (core_target::get_core_register_section): Rename
5335         min_size to section_min_size.
5336
5337 2018-08-09  Jim Wilson  <jimw@sifive.com>
5338
5339         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5340         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5341         * NEWS: Mention new GNU/Linux RISC-V target.
5342         * configure.host: Add riscv*-*-linux*.
5343         * configure.nat: Add riscv*.
5344         * configure.tgt: Add riscv*-*-linux*.
5345         * riscv-linux-nat.c: New file.
5346         * riscv-linux-tdep.c: New file.
5347
5348 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5349
5350         * infrun.c (resume): Make static, add forward declaration.
5351         (proceed): Update header comment.
5352         * infrun.h (resume): Delete declaration.
5353
5354 2018-08-09  Tom Tromey  <tom@tromey.com>
5355
5356         * riscv-tdep.h: Minor formatting fixes.
5357
5358 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5359
5360         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5361         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5362         (test_mkdir_recursive): Likewise.
5363         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5364
5365 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5366
5367         * valarith.c (value_subscripted_rvalue): If an array is not in
5368         memory, and we don't know the upper bound, then we can't know that
5369         the requested element exists or not.
5370
5371 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5372
5373         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5374         (target_options_to_string): Add comment.
5375
5376 2018-08-08  Tom Tromey  <tom@tromey.com>
5377
5378         * unittests/scoped_mmap-selftests.c: Check result of "write".
5379
5380 2018-08-08  Jim Wilson  <jimw@sifive.com>
5381
5382         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5383         (decode_register_index_short): New.
5384         (decode_j_type_insn, decode_cj_type_insn): New.
5385         (decode_b_type_insn, decode_cb_type_insn): New.
5386         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5387         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5388         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5389         is_c_sw_insn instead of is_sw_insn.
5390         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5391         (riscv_software_single_step): New.
5392         * riscv-tdep.h (riscv_software_single_step): Declare.
5393
5394         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5395         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5396
5397 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5398
5399         PR gdb/18050:
5400         * target.c (dispose_inferior): Don't dispose of inferiors that are
5401         already killed.
5402
5403 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5404
5405         * remote.c (remote_target::download_tracepoint): Change char* to
5406         const char*.
5407
5408 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5409
5410         * target.h (target_options_to_string): Return an std::string.
5411         * target.c (str_comma_list_concat_elem): Return void, use
5412         std::string.
5413         (do_option): Likewise.
5414         (target_options_to_string): Return an std::string.
5415         * linux-nat.c (linux_nat_target::wait): Adjust.
5416         * target-debug.h (target_debug_print_options): Adjust.
5417
5418 2018-08-07  Tom Tromey  <tom@tromey.com>
5419
5420         * Makefile.in (CPPFLAGS): New variable.
5421         (INTERNAL_CPPFLAGS): Use it.
5422
5423 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5424
5425         * NEWS: Mention the index cache.
5426
5427 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5428
5429         * common/pathstuff.h (get_standard_cache_dir): New.
5430         * common/pathstuff.c (get_standard_cache_dir): New.
5431         * build-id.h (build_id_to_string): New.
5432         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5433         DEBUG_STR_SUFFIX): Move to here.
5434         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5435         DEBUG_STR_SUFFIX): Move from there.
5436         (write_psymtabs_to_index): Make non-static, add basename
5437         parameter.  Write to temporary files, rename when done.
5438         (save_gdb_index_command): Adjust call to
5439         write_psymtabs_to_index.
5440         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5441         field.
5442         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5443         (get_gdb_index_contents_from_cache): New.
5444         (get_gdb_index_contents_from_cache_dwz): New.
5445         (dwarf2_initialize_objfile): Read index from cache.
5446         (dwarf2_build_psymtabs): Save to index.
5447         * dwarf-index-cache.h: New file.
5448         * dwarf-index-cache.c: New file.
5449         * dwarf-index-write.h: New file.
5450
5451 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5452
5453         * gnulib/aclocal.m4: Re-generate.
5454         * gnulib/config.in: Re-generate.
5455         * gnulib/configure: Re-generate.
5456         * gnulib/import/Makefile.am: Re-generate.
5457         * gnulib/import/Makefile.in: Re-generate.
5458         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5459         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5460         * gnulib/import/m4/mkdir.m4: New file.
5461         * gnulib/import/mkdir.c: New file.
5462         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5463         module.
5464
5465 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5466
5467         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5468         * common/scoped_mmap.c: New file.
5469         * common/scoped_mmap.h (destroy): New method.
5470         (~scoped_mmap, reset): Use destroy.
5471         (scoped_mmap): New move constructor.
5472         (mmap_file): New declaration.
5473         * unittests/scoped_mmap-selftests.c (test_normal,
5474         test_invalid_filename, run_tests): New functions.
5475         (_initialize_scoped_mmap_selftests): Register selftest.
5476
5477 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5478
5479         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5480         (read_gdb_index_from_buffer): ... this.  Remove section
5481         parameter, add buffer parameter.
5482         (get_gdb_index_contents_ftype,
5483         get_gdb_index_contents_dwz_ftype): New typedefs.
5484         (dwarf2_read_gdb_index): Add callback parameters to get the
5485         index contents.
5486         (get_gdb_index_contents_from_section): New.
5487         (dwarf2_initialize_objfile): Update call to
5488         dwarf2_read_gdb_index.
5489
5490 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5491
5492         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5493         (gdb_open_cloexec): Likewise.
5494         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5495         (commandline_from_pid): Likewise.
5496         (linux_xfer_osdata_threads): Likewise.
5497         (linux_xfer_osdata_fds): Likewise.
5498         * ada-lang.c (is_package_name): Likewise.
5499         * auxv.c (procfs_xfer_auxv): Likewise.
5500         * breakpoint.c (print_one_breakpoint_location): Use
5501         uiout::field_fmt.
5502         (print_one_catch_solib): Use string_printf.
5503         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5504         (add_pe_forwarded_sym): Likewise.
5505         * dwarf2read.c (create_type_unit_group): Likewise.
5506         (build_error_marker_type): Likewise.
5507         * infcall.c (get_function_name): Likewise.
5508         * valprint.c (print_converted_chars_to_obstack): Likewise.
5509         * xtensa-tdep.c (xtensa_register_type): Likewise.
5510
5511 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5512
5513         * remote.c (remote_target::download_tracepoint): Fix format
5514         string errors.
5515
5516 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5517
5518         * tracefile.c: Include common/byte-vector.h.
5519         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5520         with trace_regblock_size if needed.  Update uses of buf.
5521
5522 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5523
5524         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5525         std::vector<unsigned char>.
5526         * tracepoint.c (collection_list::collection_list): Remove
5527         m_regs_mask initializer from initializer list.  Resize
5528         m_regs_mask using the largest remote register number.
5529         (collection_list::add_remote_register): Remove size check on
5530         m_regs_mask.  Use at to access element.
5531         (collection_list::stringify): Change type of temp_buf to
5532         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5533         stringify the register mask.  Use pack_hex_byte for the register
5534         mask.
5535
5536 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5537
5538         * tracepoint.h (class collection_list) <add_register>: Remove.
5539         <add_remote_register, add_ax_registers, add_local_register>:
5540         Declare.
5541         <add_memrange>: Add scope parameter.
5542         * tracepoint.c (encode_actions_1): Likewise.
5543         (collection_list::add_register): Rename to ...
5544         (collection_list::add_remote_register): ... this.  Update
5545         comment.
5546         (collection_list::add_ax_registers, add_local_register): New
5547         methods.
5548         (collection_list::add_memrange): Add scope parameter.  Call
5549         add_local_register instead of add_register.
5550         (finalize_tracepoint_aexpr): New function.
5551         (collection_list::collect_symbol): Update calls to add_memrange.
5552         Call add_local_register instead of add_register.  Call
5553         add_ax_registers.  Call finalize_tracepoint_aexpr.
5554         (encode_actions_1): Get remote regnos for $reg action.  Call
5555         add_remote_register, add_ax_registers, and add_local_register.
5556         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5557         (validate_actionline): Call finalize_tracepoint_aexpr.
5558
5559 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5560
5561         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5562         Replace array buf with gdb::char_vector buf, of size
5563         get_remote_packet_size ().  Replace references to buf and
5564         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5565         and xsnprintf with snprintf.  Raise errors if the buffer is too
5566         small.
5567
5568 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5569
5570         * remote.c (remote_target::download_tracepoint): Fix the has_more
5571         predicate in the QTDP action list iteration.
5572
5573 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5574
5575         * remote.c (remote_target::download_tracepoint): Fix indentation
5576         in for block.
5577
5578 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5579
5580         * proc-api.c (_initialize_proc_api): Remove c, unused.
5581         * procfs.c (procfs_init_inferior): Remove signals, unused.
5582         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5583         unused.
5584
5585 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5586             Andrew Burgess  <andrew.burgess@embecosm.com>
5587
5588         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5589         'W_STOPCODE (0)' as this could be ambiguous.
5590
5591 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5592
5593         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5594         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5595         "ai_socktype").
5596
5597 2018-08-02  Tom Tromey  <tom@tromey.com>
5598
5599         PR symtab/16842.
5600         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5601         symbols.
5602         (process_structure_scope): Likewise.
5603
5604 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5605
5606         PR gdb/22629:
5607         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5608         kill inferior.
5609
5610 2018-08-02  Tom Tromey  <tom@tromey.com>
5611
5612         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5613         (darwin_suspend_inferior, darwin_resume_inferior)
5614         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5615         (darwin_check_new_threads): Check result of get_darwin_inferior.
5616
5617 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5618
5619         GDB 8.1.1 released.
5620
5621 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5622
5623         * varobj.c (varobj_get_path_expr_parent): Report an error if
5624         parent is a dynamic varobj.
5625
5626 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5627
5628         * gnulib/aclocal.m4: Re-generate.
5629         * gnulib/config.in: Re-generate.
5630         * gnulib/configure: Re-generate.
5631         * gnulib/import/Makefile.in: Re-generate.
5632         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5633         * gnulib/import/m4/onceonly.m4: Re-generate.
5634
5635 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5636
5637         * target-descriptions.c (struct xml_test_tdesc): New.
5638         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5639         (record_xml_tdesc): Update.
5640         (maintenance_check_xml_descriptions): Update.
5641         * target-descriptions.h (record_xml_tdesc): Update comment.
5642
5643 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5644
5645         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5646         checking array bounds are defined.
5647
5648 2018-07-30  Tom Tromey  <tom@tromey.com>
5649
5650         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5651         irreflexivity violation.
5652
5653 2018-07-30  Tom Tromey  <tom@tromey.com>
5654
5655         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5656         * value.c (unpack_long): Remove lint code.
5657         * valops.c (value_ind): Remove lint code.
5658         * valarith.c (value_x_binop, value_x_unop, value_equal)
5659         (value_pos): Remove lint code.
5660
5661 2018-07-28  Tom de Vries  <tdevries@suse.de>
5662
5663         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5664         with undefined upper bound as <optimized out>.
5665
5666 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5667
5668         * gcore.in: Rename variable "name" to "prefix".  Expand
5669         "usage" text.
5670
5671 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5672
5673         * windows-nat.c (windows_nat_target::create_inferior): Update to
5674         call close() in global namespace.
5675
5676 2018-07-26  Tom Tromey  <tom@tromey.com>
5677
5678         * dwarf-index-write.c (add_address_entry): Don't add objfile
5679         offsets.
5680         * dbxread.c (find_stab_function): Rename from
5681         find_stab_function_addr.  Return a bound_minimal_symbol.
5682         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5683         Don't add objfile offsets.
5684         (end_psymtab): Use raw_text_low, raw_text_high,
5685         MSYMBOL_VALUE_RAW_ADDRESS.
5686         (read_ofile_symtab): Update.
5687         (process_one_symbol): Update.
5688         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5689         offsets.
5690         (dw2_relocate): Remove.
5691         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5692         searching addrmap.
5693         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5694         Update.
5695         (process_psymtab_comp_unit_reader, add_partial_symbol)
5696         (add_partial_subprogram, dwarf2_ranges_read): Update.
5697         (load_partial_dies): Update.
5698         (add_address_entry): Don't add objfile offsets.
5699         (dwarf2_build_include_psymtabs): Update.
5700         (create_addrmap_from_aranges): Don't add objfile offsets.
5701         (dw2_find_pc_sect_compunit_symtab): Update.
5702         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5703         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5704         Update.
5705         (parse_partial_symbols): Don't add objfile offsets.  Use
5706         raw_text_low, raw_text_high.  Update.
5707         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5708         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5709         or call 'relocate' quick function.  Clear psymbol_map.
5710         * psympriv.h (struct partial_symbol) <address>: Add section
5711         offset.
5712         <set_unrelocated_address>: Rename from set_address.
5713         <raw_text_low, raw_text_high>: New methods.
5714         <text_low, text_high>: Add objfile parameter.
5715         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5716         set_unrelocated_address.
5717         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5718         (find_pc_psymbol): Update.
5719         (fixup_psymbol_section, relocate_psymtabs): Remove.
5720         (dump_psymtab, psym_functions): Update.
5721         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5722         parameter.
5723         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5724         (start_psymtab_common): Update.
5725         * symfile-debug.c (debug_qf_relocate): Remove.
5726         (debug_sym_quick_functions): Update.
5727         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5728         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5729         Update.
5730
5731 2018-07-26  Tom Tromey  <tromey@redhat.com>
5732
5733         * dbxread.c (end_psymtab): Use text_high_valid and
5734         text_low_valid.
5735         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5736         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5737         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5738         Update comment.
5739         <text_low_valid, text_high_valid>: New fields.
5740         <set_text_low, set_text_high>: Update.
5741         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5742
5743 2018-07-26  Tom Tromey  <tom@tromey.com>
5744
5745         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5746         Update.
5747         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5748         textlow and texthigh fields.
5749         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5750         Update.
5751         * mdebugread.c (parse_lines, parse_partial_symbols)
5752         (psymtab_to_symtab_1): Update.
5753         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5754         Rename fields.  Update comment.  Now private.
5755         <text_low, text_high, set_text_low, set_text_high>: New methods.
5756         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5757         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5758         (start_psymtab_common, maintenance_info_psymtabs)
5759         (maintenance_check_psymtabs): Update.
5760         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5761         texthigh fields.
5762         (scan_xcoff_symtab): Update.
5763
5764 2018-07-26  Tom Tromey  <tromey@redhat.com>
5765
5766         * psympriv.h (struct partial_symbol) <unrelocated_address,
5767         address, set_address>: New methods.
5768         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5769         (fixup_psymbol_section, relocate_psymtabs): Update.
5770         (print_partial_symbols): Add 'objfile' parameter.  Update.
5771         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5772         Update.
5773
5774 2018-07-26  Tom Tromey  <tom@tromey.com>
5775
5776         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5777         (debug_names::write_psymbols): Update.
5778         * psympriv.h (struct partial_symbol): Derive from
5779         general_symbol_info.
5780         <obj_section>: New method.
5781         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5782         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5783         (find_pc_sect_psymbol, fixup_psymbol_section)
5784         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5785         (print_partial_symbols, recursively_search_psymtabs)
5786         (compare_psymbols, psymbol_hash, psymbol_compare)
5787         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5788         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5789
5790 2018-07-26  Tom Tromey  <tromey@redhat.com>
5791
5792         * dbxread.c (end_psymtab): Remove dead code.
5793
5794 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5795
5796         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5797         DWARF unwinders are disabled.
5798         * dwarf2-frame.c: Add dwarf2read.h include.
5799         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5800         disabled.
5801         (dwarf2_frame_unwinders_enabled_p): Define.
5802         (show_dwarf_unwinders_enabled_p): New function.
5803         (_initialize_dwarf2_frame): Register switch to control DWARF
5804         unwinder use.
5805         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5806         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5807         (show_dwarf_cmdlist): Remove static keyword.
5808         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5809         (show_dwarf_cmdlist): Declare.
5810         * NEWS: Document new feature.
5811
5812 2018-07-26  Tom de Vries  <tdevries@suse.de>
5813
5814         PR breakpoints/23366
5815         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5816
5817 2018-07-26  Tom de Vries  <tdevries@suse.de>
5818
5819         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5820         DW_AT_count can't be translated to a dynamic prop.
5821
5822 2018-07-25  Tom de Vries  <tdevries@suse.de>
5823
5824         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5825         try/catch.
5826
5827 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5828
5829         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5830
5831 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5832
5833         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5834
5835 2018-07-24  Keith Seitz  <keiths@redhat.comt
5836
5837         PR symtab/23010
5838         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5839         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5840         instead of add_symbol_to_list.
5841         (read_file_scope): Call prepare_one_comp_unit before reading
5842         any other DIEs.
5843
5844 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5845
5846         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5847
5848 2018-07-24  Tom Tromey  <tom@tromey.com>
5849
5850         * utils.c (malloc, realloc, free): Don't declare.
5851         * configure, config.in: Rebuild.
5852         * configure.ac: Don't check for declarations of free, malloc, or
5853         realloc.
5854
5855 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5856
5857         * aarch64-linux-nat.c
5858         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5859         variable.
5860         * arm-linux-nat.c (fetch_regs): Likewise.
5861         (store_regs): Likewise.
5862         (fetch_vfp_regs): Likewise.
5863         (store_vfp_regs): Likewise.
5864         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5865         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5866         (arm_linux_nat_target::insert_watchpoint): Likewise.
5867         (arm_linux_nat_target::remove_watchpoint): Likewise.
5868         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5869         Likewise.
5870         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5871         Likewise.
5872         * ppc-linux-nat.c (fetch_register): Likewise.
5873         (fetch_all_gp_regs): Likewise.
5874         (fetch_ppc_registers): Likewise.
5875         (store_all_gp_regs): Likewise.
5876         (store_ppc_registers): Likewise.
5877         (hwdebug_insert_point): Likewise.
5878         (can_use_watchpoint_cond_accel): Likewise.
5879         * remote-sim.c (gdb_os_write_stdout): Likewise.
5880
5881 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5882             Tom Tromey  <tom@tromey.com>
5883
5884         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5885         test for it.
5886         * configure: Rebuild.
5887
5888 2018-07-22  Tom Tromey  <tom@tromey.com>
5889
5890         * regformats/regdat.sh: Define xmltarget_${name} inside
5891         #ifndef IN_PROCESS_AGENT.
5892
5893 2018-07-22  Tom Tromey  <tom@tromey.com>
5894
5895         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5896
5897 2018-07-22  Tom Tromey  <tom@tromey.com>
5898
5899         * symfile.c (reread_symbols): Notify iter, not objfile.
5900
5901 2018-07-22  Tom Tromey  <tom@tromey.com>
5902
5903         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5904         Use arch_ops.
5905         (ravenscar_thread_target::prepare_to_store): Likewise.
5906
5907 2018-07-22  Tom Tromey  <tom@tromey.com>
5908
5909         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5910         unused variable.  Call value_fetch_lazy when needed.
5911         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5912         Remove unused variable.  Call value_fetch_lazy when needed.
5913
5914 2018-07-22  Tom Tromey  <tom@tromey.com>
5915
5916         * m32c-tdep.c (mark_dma): Return void.
5917         (make_regs): Remove unused declarations.
5918
5919 2018-07-22  Tom Tromey  <tom@tromey.com>
5920
5921         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5922         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5923         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5924         bkscm_get_valid_block_smob_arg_unsafe for effect.
5925
5926 2018-07-22  Tom Tromey  <tom@tromey.com>
5927
5928         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5929         value_type.
5930
5931 2018-07-22  Tom Tromey  <tom@tromey.com>
5932
5933         * windows-nat.c (saved_context): Conditionally define.
5934         * remote.c (remote_target::remote_btrace_maybe_reopen):
5935         Conditionally declare "warned".
5936         * inflow.c (sigquit_ours): Conditionally define.
5937         (new_tty): Move "tty" declaration inside #if.
5938         * guile/guile.c (guile_datadir): Conditionally define.
5939         * charset.c (set_be_le_names): Move some declarations inside #if.
5940         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5941         #if.
5942         (parse_xml_btrace_conf): Likewise.
5943
5944 2018-07-22  Tom Tromey  <tom@tromey.com>
5945
5946         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5947
5948 2018-07-22  Tom Tromey  <tom@tromey.com>
5949
5950         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5951         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5952         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5953         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5954         * stack.c (frame_apply_level_command): Remove unused variable.
5955         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5956         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5957         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5958         unused variable.
5959         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5960         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5961         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5962         variable.
5963         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5964         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5965         variable.
5966         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5967         Remove unused variable.
5968         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5969         variable.
5970         * common/tdesc.c (print_xml_feature::visit): Remove unused
5971         variable.
5972         * compile/compile-object-load.c (store_regs): Remove unused
5973         variables.
5974         * complaints.c (clear_complaints): Remove unused variable.
5975         * corelow.c (core_target_open): Remove unused variable.
5976         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5977         variable.
5978         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5979         variable.
5980         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5981         variable.
5982         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5983         variable.
5984         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5985         variable.
5986         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5987         variable.
5988         * ia64-tdep.c (examine_prologue): Remove unused variable.
5989         * infcall.c (run_inferior_call): Remove unused variable.
5990         * inferior.c (exit_inferior): Remove unused variable.
5991         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5992         * linespec.c (decode_line_2): Remove unused variable.
5993         * linux-nat.c (super_close): Remove.
5994         * linux-tdep.c (linux_info_proc): Remove unused variable.
5995         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5996         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5997         Remove unused variable.
5998         * parse.c (find_minsym_type_and_address): Remove unused variable.
5999         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6000         variable.
6001         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6002         variable.
6003         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6004         variables.
6005         * record-btrace.c (record_btrace_target::store_registers): Remove
6006         unused variable.
6007         (cmd_show_record_btrace_cpu): Remove unused variable.
6008         * riscv-tdep.c (riscv_register_reggroup_p)
6009         (riscv_push_dummy_call, riscv_return_value): Remove unused
6010         variable.
6011         * rust-exp.y (literal): Remove unused variable.
6012         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6013         unused variable.
6014         <STRUCTOP_ANONYMOUS>: Likewise.
6015         * s390-linux-tdep.c (s390_linux_init_abi_31)
6016         (s390_linux_init_abi_64): Remove unused variable.
6017         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6018         (file_select_thread, net_windows_open, _initialize_ser_windows):
6019         Remove unused variables.
6020         * symtab.c (find_pc_sect_line): Remove unused variable.
6021         * target-memory.c (compute_garbled_blocks): Remove unused
6022         variable.
6023         (target_write_memory_blocks): Remove unused variable.
6024         * target.c (target_stack::unpush): Remove unused variables.
6025         * tracepoint.c (start_tracing, all_tracepoint_actions)
6026         (merge_uploaded_trace_state_variables)
6027         (print_one_static_tracepoint_marker): Remove unused variable.
6028         * unittests/basic_string_view/element_access/char/1.cc (test01):
6029         Remove unused variable.
6030         * windows-nat.c (windows_continue, windows_add_all_dlls)
6031         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6032         Remove unused variables.
6033
6034 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6035
6036         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6037         attr_profile in HAVE_ELF.
6038         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6039         HAVE_ELF.
6040
6041 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6042
6043         * frame.c (frame_register_unwind): Change parameter name.
6044         (frame_unwind_register): Likewise.
6045         (frame_unwind_register_value): Likewise.
6046         (frame_unwind_register_signed): Likewise.
6047         (frame_unwind_register_unsigned): Likewise.
6048         * frame.h (frame_register_unwind): Likewise.
6049         (frame_unwind_register): Likewise.
6050         (frame_unwind_register_value): Likewise.
6051         (frame_unwind_register_signed): Likewise.
6052         (frame_unwind_register_unsigned): Likewise.
6053         (frame_unwind_arch): Likewise.
6054
6055 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6056
6057         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6058         ISA maintenance.
6059
6060 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6061
6062         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6063         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6064         hand.
6065
6066 2018-07-20  Keith Seitz  <keiths@redhat.com>
6067
6068         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6069         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6070         m_compunit_symtab, m_language>: Add "m_" prefix.
6071         Update all uses.
6072         * buildsym.c: Update all uses.
6073
6074 2018-07-20  Tom Tromey  <tom@tromey.com>
6075
6076         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6077         * buildsym.h (record_line_ftype): Remove typedef.
6078
6079 2018-07-20  Tom Tromey  <tom@tromey.com>
6080
6081         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6082         (end_expandable_symtab): Likewise.
6083         (end_symtab_get_static_block): Likewise.
6084         (end_symtab_from_static_block): Likewise.
6085         * buildsym-legacy.c (augment_type_symtab): Remove.
6086         (end_expandable_symtab): Remove.
6087         (end_symtab_get_static_block): Remove.
6088         (end_symtab_from_static_block): Remove.
6089
6090 2018-07-20  Tom Tromey  <tom@tromey.com>
6091
6092         * dwarf2read.c: Include buildsym.h.
6093         (struct dwarf2_cu) <builder>: New method.
6094         (fixup_go_packaging): Update.
6095         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6096         use scoped_free_pendings.
6097         (using_directives): Add "cu" parameter, remove "language".
6098         (read_import_statement, setup_type_unit_groups, )
6099         (read_func_scope, read_lexical_block_scope)
6100         (dwarf2_record_block_ranges, read_namespace): Update.
6101         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6102         (lnp_state_machine::handle_end_sequence): Update.
6103         (class lnp_state_machine) <m_cu>: New member.
6104         <m_record_line_callback>: Remove.
6105         <m_currently_recording_lines>: New member.
6106         (lnp_state_machine::handle_set_file): Update.
6107         (noop_record_line): Remove.
6108         (dwarf_record_line_p): Add cu parameter.
6109         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6110         (lnp_state_machine::record_line)
6111         (lnp_state_machine::lnp_state_machine)
6112         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6113         (dwarf_decode_lines): Update.
6114         (dwarf2_start_subfile): Add cu parameter.
6115         (dwarf2_start_symtab, new_symbol): Update.
6116         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6117         Remove dwarf2_per_objfile parameter.
6118         (dwarf_decode_macros): Update.
6119
6120 2018-07-20  Tom Tromey  <tom@tromey.com>
6121
6122         * stabsread.c (define_symbol): Update.
6123         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6124         * dwarf2read.c (new_symbol): Update.
6125         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6126         * cp-namespace.c: Include buildsym.h.
6127         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6128         * buildsym-legacy.c (get_buildsym_compunit): New function.
6129
6130 2018-07-20  Tom Tromey  <tom@tromey.com>
6131
6132         * xcoffread.c: Include buildsym-legacy.h.
6133         * windows-nat.c: Include buildsym-legacy.h.
6134         * stabsread.c: Include buildsym-legacy.h.
6135         * mdebugread.c: Include buildsym-legacy.h.
6136         * buildsym-legacy.h: New file.
6137         * buildsym-legacy.c: New file, from buildsym.c.
6138         * go32-nat.c: Include buildsym-legacy.h.
6139         * dwarf2read.c: Include buildsym-legacy.h.
6140         * dbxread.c: Include buildsym-legacy.h.
6141         * cp-namespace.c: Include buildsym-legacy.h.
6142         * coffread.c: Include buildsym-legacy.h.
6143         * buildsym.h: Move some contents to buildsym-legacy.h.
6144         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6145         buildsym-legacy.c.
6146         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6147
6148 2018-07-20  Tom Tromey  <tom@tromey.com>
6149
6150         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6151         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6152         (buildsym_compunit::buildsym_compunit)
6153         (buildsym_compunit::~buildsym_compunit)
6154         (buildsym_compunit::get_macro_table): Define.
6155
6156 2018-07-20  Tom Tromey  <tom@tromey.com>
6157
6158         * buildsym.c (reset_symtab_globals): Remove.
6159         (buildsym_compunit::end_symtab_from_static_block): Update.
6160         (buildsym_compunit::augment_type_symtab): Update.
6161         (end_symtab_from_static_block): Call free_buildsym_compunit.
6162         (augment_type_symtab, end_symtab, end_expandable_symtab):
6163         Likewise.
6164
6165 2018-07-20  Tom Tromey  <tom@tromey.com>
6166
6167         * arch-utils.c: Do not include buildsym.h.
6168         * mipsread.c: Do not include buildsym.h.
6169         * machoread.c: Do not include buildsym.h.
6170         * elfread.c: Do not include buildsym.h.
6171
6172 2018-07-20  Tom Tromey  <tom@tromey.com>
6173
6174         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6175         initialization.
6176         (buildsym_compunit): Add new constructor.
6177         (struct buildsym_compunit) <get_last_source_file, finish_block,
6178         record_block_range, start_subfile, patch_subfile_names,
6179         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6180         set_last_source_start_addr, get_last_source_start_addr,
6181         get_local_using_directives, set_local_using_directives,
6182         get_global_using_directives, outermost_context_p,
6183         get_current_context_stack, get_context_stack_depth,
6184         get_current_subfile, get_local_symbols, get_file_symbols,
6185         get_global_symbols, record_debugformat, record_producer,
6186         push_context, pop_context, end_symtab_get_static_block,
6187         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6188         New public methods.
6189         <record_pending_block, finish_block_internal, make_blockvector,
6190         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6191         private methods.
6192         Update all users.
6193
6194 2018-05-22  Tom Tromey  <tom@tromey.com>
6195
6196         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6197         parameter.
6198         (finish_block_internal): Update.
6199
6200 2018-07-20  Tom Tromey  <tom@tromey.com>
6201
6202         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6203         parameter.
6204         (finish_block_internal): Update.
6205
6206 2018-07-20  Tom Tromey  <tom@tromey.com>
6207
6208         * buildsym.h (EXTERN): Don't define or undef.
6209         * buildsym.c (EXTERN): Don't define.
6210
6211 2018-07-20  Tom Tromey  <tom@tromey.com>
6212
6213         * buildsym.c: Remove TODO comment.
6214
6215 2018-07-20  Tom Tromey  <tom@tromey.com>
6216
6217         * coffread.c (coff_symtab_read): Update.
6218         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6219         (xcoff_new_init): Update.
6220         * mipsread.c (mipscoff_new_init): Update.
6221         * mdebugread.c (mdebug_build_psymtabs): Update.
6222         * elfread.c (elf_new_init): Update.
6223         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6224         Update.
6225         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6226         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6227         (stabsect_build_psymtabs): Update.
6228         * buildsym.h (buildsym_init): Don't declare.
6229         * buildsym.c: Update comment.
6230         (prepare_for_building): Remove.
6231         (start_symtab, restart_symtab): Update.
6232         (reset_symtab_globals): Update comment.
6233         (buildsym_init): Remove.
6234
6235 2018-07-20  Tom Tromey  <tom@tromey.com>
6236
6237         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6238         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6239         (read_enum_type, common_block_start, common_block_end)
6240         (cleanup_undefined_types_1, finish_global_stabs): Update.
6241         * mdebugread.c (psymtab_to_symtab_1): Update.
6242         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6243         (read_lexical_block_scope, new_symbol): Update.
6244         * dbxread.c (process_one_symbol): Update.
6245         * coffread.c (coff_symtab_read, process_coff_symbol)
6246         (coff_read_enum_type): Update.
6247         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6248         declare.
6249         (get_local_symbols, get_file_symbols, get_global_symbols): New
6250         functions.
6251         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6252         m_global_symbols.
6253         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6254         (~scoped_free_pendings): Update.
6255         (finish_block, prepare_for_building, reset_symtab_globals)
6256         (end_symtab_get_static_block, end_symtab_with_blockvector)
6257         (augment_type_symtab, push_context): Update.
6258         (get_local_symbols, get_file_symbols, get_global_symbols): New
6259         functions.
6260         (buildsym_init): Update.
6261
6262 2018-07-20  Tom Tromey  <tom@tromey.com>
6263
6264         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6265         (process_full_type_unit): Likewise.
6266         (dwarf2_start_symtab): Set list_in_scope.
6267
6268 2018-07-20  Tom Tromey  <tom@tromey.com>
6269
6270         * dwarf2read.c (process_psymtab_comp_unit_reader)
6271         (build_type_psymtabs_reader): Do not set list_in_scope.
6272
6273 2018-07-20  Tom Tromey  <tom@tromey.com>
6274
6275         * buildsym.c (free_pendings): Remove.
6276         (add_symbol_to_list, scoped_free_pendings)
6277         (finish_block_internal, buildsym_init): Update.
6278
6279 2018-07-20  Tom Tromey  <tom@tromey.com>
6280
6281         * xcoffread.c (read_xcoff_symtab): Update.
6282         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6283         Update.
6284         * dbxread.c (process_one_symbol): Update.
6285         * coffread.c (coff_symtab_read): Update.
6286         * buildsym.h (finish_block): Update.
6287         * buildsym.c (finish_block): Remove "listhead" argument.
6288         (end_symtab_get_static_block): Update.
6289
6290 2018-07-20  Tom Tromey  <tom@tromey.com>
6291
6292         * buildsym.h (class scoped_free_pendings): Remove constructor.
6293         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6294         method.
6295         <m_pending_block_obstack, m_pending_blocks>: New members.
6296         (pending_block_obstack, pending_blocks): Remove.
6297         (scoped_free_pendings::scoped_free_pendings): Default.
6298         (~scoped_free_pendings): Update.
6299         (free_pending_blocks): Remove.
6300         (finish_block_internal, record_pending_block, make_blockvector)
6301         (end_symtab_get_static_block, augment_type_symtab, push_context)
6302         (buildsym_init): Update.
6303
6304 2018-07-20  Tom Tromey  <tom@tromey.com>
6305
6306         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6307         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6308         members.
6309         (pending_addrmap, pending_addrmap_obstack)
6310         (pending_addrmap_interesting): Remove.
6311         (scoped_free_pendings, record_block_range, make_blockvector)
6312         (prepare_for_building, reset_symtab_globals, buildsym_init):
6313         Update.
6314
6315 2018-07-20  Tom Tromey  <tom@tromey.com>
6316
6317         * xcoffread.c (process_linenos): Update.
6318         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6319         * mdebugread.c (psymtab_to_symtab_1): Update.
6320         * dwarf2read.c (setup_type_unit_groups)
6321         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6322         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6323         * dbxread.c (process_one_symbol): Update.
6324         * coffread.c (coff_symtab_read, enter_linenos)
6325         (process_coff_symbol): Update.
6326         * buildsym.h (current_subfile): Don't declare.
6327         (get_current_subfile): Declare.
6328         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6329         member.
6330         (start_subfile, free_buildsym_compunit, push_subfile)
6331         (prepare_for_building, start_symtab): Update.
6332         (get_current_subfile): New function.
6333
6334 2018-07-20  Tom Tromey  <tom@tromey.com>
6335
6336         * coffread.c (coff_symtab_read): Update.
6337         * xcoffread.c (read_xcoff_symtab): Update.
6338         * dwarf2read.c (new_symbol): Update.
6339         (read_func_scope, read_lexical_block_scope): Update.
6340         * dbxread.c (process_one_symbol): Update.
6341         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6342         (outermost_context_p): Remove macro.
6343         (outermost_context_p, get_current_context_stack)
6344         (get_context_stack_depth): Declare.
6345         (pop_context): Return struct context_stack.
6346         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6347         member.
6348         (context_stack_size): Remove.
6349         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6350         (prepare_for_building, end_symtab_get_static_block)
6351         (augment_type_symtab, push_context): Update.
6352         (pop_context): Return struct context_stack.
6353         (outermost_context_p, get_current_context_stack)
6354         (get_context_stack_depth): New functions.
6355         (buildsym_init): Update.
6356
6357 2018-07-20  Tom Tromey  <tom@tromey.com>
6358
6359         * rust-exp.y: Now a pure parser.  Update all rules.
6360         (%union): Move earlier.
6361         (current_parser, work_obstack): Remove globals.
6362         (rust_parser, ~rust_parser): Update.
6363         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6364         lex_character, lex_number, lex_string, lex_identifier,
6365         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6366         convert_name, convert_params_to_expression,
6367         convert_ast_to_expression, ast_basic_type, ast_operation,
6368         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6369         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6370         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6371         ast_array_type, ast_slice_type, ast_reference_type,
6372         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6373         (rust_parse): Update.
6374         (rustyyerror, rustyylex): Add parser parameter.
6375         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6376         (rust_lex_stringish_test, rust_lex_test_sequence)
6377         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6378         (rust_lex_test_push_back, rust_lex_tests): Update.
6379
6380 2018-07-19  Pedro Alves  <palves@redhat.com>
6381
6382         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6383         gdb::unique_xmalloc_ptr.
6384         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6385         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6386         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6387         copy-initialization.
6388         * guile/scm-pretty-print.c (ppscm_print_children): Use
6389         gdb::unique_xmalloc_ptr instead of cleanups.
6390         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6391         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6392         gdb::unique_xmalloc_ptr.
6393         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6394         Adjust to use gdb::unique_xmalloc_ptr.
6395         * guile/scm-utils.c (extract_arg): Adjust.
6396         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6397         gdb::unique_xmalloc_ptr instead of a cleanup.
6398
6399 2018-07-19  Tom Tromey  <tom@tromey.com>
6400
6401         * utils.c (do_value_free_to_mark)
6402         (make_cleanup_value_free_to_mark): Remove.
6403         * utils.h (make_cleanup_value_free_to_mark): Remove.
6404
6405 2018-07-19  Pedro Alves  <palves@redhat.com>
6406
6407         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6408         forwarding reference.
6409
6410 2018-07-18  Pedro Alves  <palves@redhat.com>
6411
6412         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6413         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6414         cleanup.
6415
6416 2018-07-18  Pedro Alves  <palves@redhat.com>
6417
6418         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6419         exceptions.
6420         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6421         (gdbscm_wrap): New.
6422         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6423         directly instead of a cleanup.
6424         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6425         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6426         (vlscm_binop_gdbthrow): New, factored out from ...
6427         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6428         (vlscm_rich_compare): Use gdbscm_wrap.
6429         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6430         instead of a cleanup.
6431         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6432         cleanup.
6433         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6434         Use xfree directly instead of a cleanup.
6435         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6436         Adjust to use gdbscm_wrap and scoped_value_mark.
6437         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6438         (gdbscm_value_address, gdbscm_value_dereference)
6439         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6440         scoped_value_mark.
6441         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6442         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6443         scoped_value_mark.
6444         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6445         gdbscm_wrap and scoped_value_mark.
6446         (gdbscm_value_to_string): Use xfree directly instead of a
6447         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6448         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6449         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6450         scoped_value_mark.
6451         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6452         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6453         scoped_value_mark.
6454         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6455         gdbscm_wrap.
6456
6457 2018-07-18  Tom de Vries  <tdevries@suse.de>
6458
6459         * findvar.c (default_read_var_value): Also resolve dynamic type for
6460         LOC_OPTIMIZED_OUT vars.
6461
6462 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6463
6464         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6465         decoding.
6466
6467 2018-07-17  Tom Tromey  <tom@tromey.com>
6468
6469         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6470         (compute_enum_list, pascm_set_param_value_x)
6471         (gdbscm_parameter_value): Update.
6472         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6473         (gdbscm_scm_to_host_string): Update.
6474         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6475         Update.
6476         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6477         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6478         * guile/scm-string.c (gdbscm_scm_to_string): Return
6479         unique_xmalloc_ptr.
6480         (gdbscm_scm_to_host_string): Likewise.
6481
6482 2018-07-17  Tom Tromey  <tom@tromey.com>
6483
6484         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6485         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6486         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6487         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6488         unique_xmalloc_ptr.
6489
6490 2018-07-17  Tom Tromey  <tom@tromey.com>
6491
6492         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6493         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6494         Update.
6495         * guile/scm-cmd.c (cmdscm_function): Update.
6496         * guile/scm-pretty-print.c
6497         (ppscm_print_exception_unless_memory_error): Update.
6498         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6499         Return unique_xmalloc_ptr.
6500
6501 2018-07-17  Tom Tromey  <tom@tromey.com>
6502
6503         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6504         Use string_printf.
6505
6506 2018-07-17  Jim Wilson  <jimw@sifive.com>
6507
6508         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6509         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6510         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6511         unecessary braces after EF_RISCV_RVC test.  Delete call to
6512         set_gdbarch_decr_pc_after_break.
6513
6514         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6515         RISCV_LAST_FP_REGNUM + 1.
6516         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6517
6518 2018-07-17  Tom Tromey  <tom@tromey.com>
6519
6520         * configure.ac: Remove --disable-gdbcli.
6521         * configure: Rebuild.
6522         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6523         (SUBDIR_CLI_CFLAGS): Remove.
6524         (SFILES): Use SUBDIR_CLI_SRCS.
6525         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6526
6527 2018-07-17  Tom Tromey  <tom@tromey.com>
6528
6529         PR gdb/18624:
6530         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6531
6532 2018-07-16  Jim Wilson  <jimw@sifive.com>
6533
6534         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6535
6536 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6537
6538         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6539         variable.
6540         (libunwind_frame_sniffer): Likewise.
6541         (libunwind_frame_prev_register): Likewise.
6542         (libunwind_sigtramp_frame_sniffer): Likewise.
6543         * ia64-tdep.c (ia64_access_reg): Likewise.
6544         (ia64_access_rse_reg): Likewise.
6545         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6546         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6547
6548 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6549
6550         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6551
6552 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6553
6554         * remote-sim.c (gdbsim_target::close,
6555         gdbsim_target::mourn_inferior): Remove unused variables.
6556
6557 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6558
6559         * ia64-tdep.c (ktab_buf): New global.
6560         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6561         (get_kernel_table): Adjust.
6562
6563 2018-07-16  Tom Tromey  <tom@tromey.com>
6564
6565         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6566         * dwarf2read.c (using_directives, new_symbol): Use
6567         outermost_context_p.
6568         * dbxread.c (process_one_symbol): Use outermost_context_p.
6569         * coffread.c (coff_symtab_read): Use outermost_context_p.
6570
6571 2018-07-16  Tom Tromey  <tom@tromey.com>
6572
6573         * dwarf2read.c (using_directives, read_func_scope)
6574         (read_lexical_block_scope): Update.
6575         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6576         * buildsym.h (local_using_directives, global_using_directives):
6577         Don't declare.
6578         (get_local_using_directives, set_local_using_directives)
6579         (get_global_using_directives): Declare.
6580         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6581         m_global_using_directives>: New members.
6582         (finish_block_internal, prepare_for_building)
6583         (reset_symtab_globals, end_symtab_get_static_block)
6584         (push_context): Update.
6585         (get_local_using_directives, set_local_using_directives)
6586         (get_global_using_directives): New functions.
6587         (buildsym_init): Update.
6588
6589 2018-07-16  Tom Tromey  <tom@tromey.com>
6590
6591         * xcoffread.c (xcoff_initial_scan): Don't call
6592         free_pending_blocks.
6593         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6594         * buildsym.h (class scoped_free_pendings): Add constructor.
6595         (free_pending_blocks): Don't declare.
6596         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6597         (free_pending_blocks): Now static.
6598
6599 2018-07-16  Tom Tromey  <tom@tromey.com>
6600
6601         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6602         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6603         member.
6604         (struct subfile_stack): Remove.
6605         (subfile_stack): Remove.
6606         (push_subfile, pop_subfile, buildsym_init): Update.
6607
6608 2018-07-16  Tom Tromey  <tom@tromey.com>
6609
6610         * buildsym.c (push_subfile): Use gdb_assert.
6611         (pop_subfile): Use gdb_assert.
6612
6613 2018-07-16  Tom Tromey  <tom@tromey.com>
6614
6615         * buildsym.h (merge_symbol_lists): Remove.
6616         * buildsym.c (merge_symbol_lists): Remove.
6617
6618 2018-07-16  Tom Tromey  <tom@tromey.com>
6619
6620         * stabsread.c (scan_file_globals): Update comment.
6621         * stabsread.h (scan_file_globals): Move from buildsym.h.
6622         * buildsym.h (scan_file_globals): Move to stabsread.h.
6623
6624 2018-07-16  Tom Tromey  <tom@tromey.com>
6625
6626         * xcoffread.c (xcoff_new_init): Update.
6627         * mipsread.c (mipscoff_new_init): Update.
6628         * mdebugread.c (mdebug_build_psymtabs): Update.
6629         * elfread.c (elf_new_init): Update.
6630         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6631         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6632         * buildsym.h (buildsym_new_init): Don't declare.
6633         * buildsym.c (buildsym_new_init): Remove.
6634
6635 2018-07-16  Tom Tromey  <tom@tromey.com>
6636
6637         * stabsread.h (within_function): Move from buildsym.h.
6638         * stabsread.c (start_stabs): Clear within_function.
6639         * coffread.c (coff_start_symtab): Clear within_function.
6640         * buildsym.h (within_function): Move to stabsread.h.
6641         * buildsym.c (prepare_for_building): Update.
6642
6643 2018-07-16  Tom Tromey  <tom@tromey.com>
6644
6645         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6646         * dwarf2read.c (dwarf2_start_symtab): Don't set
6647         processing_gcc_compilation.
6648         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6649
6650 2018-07-16  Tom Tromey  <tom@tromey.com>
6651
6652         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6653         (next_symbol_text_func): Move from buildsym.h.
6654         * stabsread.c (hashname): Move from buildsym.c.
6655         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6656         (next_symbol_text_func, hashname): Move to stabsread.h.
6657         * buildsym.c: Don't include bcache.h
6658         (hashname): Move to stasbread.c.
6659
6660 2018-07-16  Tom Tromey  <tom@tromey.com>
6661
6662         * buildsym.h (context_stack_size): Don't declare.
6663         * buildsym.c (context_stack_size): New global.
6664
6665 2018-07-16  Tom Tromey  <tom@tromey.com>
6666
6667         * dbxread.c (processing_acc_compilation): New global.
6668         * buildsym.h (processing_acc_compilation): Don't declare.
6669
6670 2018-07-16  Tom Tromey  <tom@tromey.com>
6671
6672         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6673         * dbxread.c (read_ofile_symtab): Update.
6674         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6675         * buildsym.h (last_source_start_addr): Remove.
6676         (set_last_source_start_addr, get_last_source_start_addr):
6677         Declare.
6678         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6679         parameter.
6680         (struct buildsym_compunit) <m_last_source_start_addr>: New
6681         member.
6682         (prepare_for_building): Remove start_addr parameter.
6683         (start_symtab, restart_symtab, end_symtab_get_static_block)
6684         (end_symtab_with_blockvector): Update.
6685         (set_last_source_start_addr, get_last_source_start_addr): New
6686         functions.
6687
6688 2018-07-16  Tom Tromey  <tom@tromey.com>
6689
6690         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6691         member.
6692         (have_line_numbers): Remove.
6693         (record_line, prepare_for_building, end_symtab_get_static_block)
6694         (augment_type_symtab): Update.
6695
6696 2018-07-16  Tom Tromey  <tom@tromey.com>
6697
6698         * buildsym.c (~buildsym_compunit): Free the macro table.
6699         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6700         methods.
6701         <m_pending_macros>: New member.
6702         (pending_macros): Remove.
6703         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6704         (reset_symtab_globals, end_symtab_get_static_block)
6705         (end_symtab_with_blockvector, augment_type_symtab)
6706         (buildsym_init): Update.
6707
6708 2018-07-16  Tom Tromey  <tom@tromey.com>
6709
6710         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6711         parameter.
6712         (buildsym_compunit::set_last_source_file): New method.
6713         <m_last_source_file>: New member.
6714         (prepare_for_building): Remove "name" parameter.
6715         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6716         (last_source_file): Remove.
6717         (set_last_source_file, get_last_source_file): Update.
6718
6719 2018-07-16  Tom Tromey  <tom@tromey.com>
6720
6721         * buildsym.c (prepare_for_building): Add assert.
6722
6723 2018-07-16  Tom Tromey  <tom@tromey.com>
6724
6725         * buildsym.c (~buildsym_compunit): Update.
6726         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6727         (start_subfile, patch_subfile_names)
6728         (end_symtab_with_blockvector): Update.
6729
6730 2018-07-16  Tom Tromey  <tom@tromey.com>
6731
6732         * buildsym.c (struct buildsym_compunit): Add constructor,
6733         destructor, initializers.
6734         (start_buildsym_compunit): Remove.
6735         (free_buildsym_compunit): Use "delete".
6736         (start_symtab, restart_symtab): Use "new".
6737
6738 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6739
6740         * symfile.c (set_objfile_default_section_offset): Remove struct
6741         keyword.
6742
6743 2018-07-14  Stafford Horne  <shorne@gmail.com>
6744
6745         * (Responsible Maintainers): Add myself as or1k maintainer.
6746
6747 2018-07-13  Tom Tromey  <tom@tromey.com>
6748
6749         * symfile.c (set_objfile_default_section_offset): Use extra braces
6750         around initializer.
6751
6752 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6753
6754         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6755         non-branching basr.
6756
6757 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6758
6759         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6760         unittests/cli-utils-selftests.c
6761         * unittests/cli-utils-selftests.c: New file.
6762
6763 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6764
6765         * NEWS: Mention new commands. Mention change to 'thread apply'.
6766
6767 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6768
6769         * thread.c (thr_try_catch_cmd): New function.
6770         (thread_apply_all_command): Handle qcs flags.
6771         (thread_apply_command): Handle qcs flags.
6772         (taas_command): New function.
6773         (tfaas_command): New function.
6774         (_initialize_thread): Update to setup the new commands 'taas
6775         and 'tfaas'. Change doc string for 'thread apply'.
6776
6777 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6778
6779         * stack.c: (trailing_outermost_frame): New function, mostly
6780         extracted from backtrace_command_1.
6781         (leading_innermost_frame): New function.
6782         (backtrace_command_1): Update to call trailing_outermost_frame.
6783         (frame_apply_command_count): New function.
6784         (frame_apply_level_command): New function.
6785         (frame_apply_all_command): New function.
6786         (frame_apply_command): New function.
6787         (faas_command): New function.
6788         (frame_cmd_list): New variable.
6789         (_initialize_stack): Update to setup the new commands 'frame apply'
6790         and 'faas'.
6791
6792 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6793
6794         * cli-utils.c (number_or_range_parser::get_number): Only handle
6795         numbers or convenience var as numbers.
6796         (parse_flags): New function.
6797         (parse_flags_qcs): New function.
6798         (number_or_range_parser::finished): Ensure parsing end is detected
6799         before end of string.
6800         * cli-utils.h (parse_flags): New function.
6801         (parse_flags_qcs): New function.
6802         (number_or_range_parser): Remove m_finished bool.
6803         (number_or_range_parser::skip_range): Set m_in_range to false.
6804
6805 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6806
6807         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6808         on Windows.
6809
6810 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6811             Jan Kratochvil  <jan.kratochvil@redhat.com>
6812             Paul Fertser  <fercerpav@gmail.com>
6813             Tsutomu Seki  <sekiriki@gmail.com>
6814             Pedro Alves  <palves@redhat.com>
6815
6816         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6817         'unittests/parse-connection-spec-selftests.c'.
6818         (COMMON_SFILES): Add 'common/netstuff.c'.
6819         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6820         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6821         * common/netstuff.c: New file.
6822         * common/netstuff.h: New file.
6823         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6824         (wait_for_connect): Update comment.  New parameter
6825         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6826         Use 'sock' directly instead of 'scb->fd'.
6827         (try_connect): New function, with code from 'net_open'.
6828         (net_open): Rewrite main loop to deal with multiple
6829         sockets/addresses.  Handle IPv6-style hostnames; implement
6830         support for IPv6 connections.
6831         * unittests/parse-connection-spec-selftests.c: New file.
6832
6833 2018-07-11  Pedro Alves  <palves@redhat.com>
6834
6835         PR gdb/23377
6836         * remote.c (remote_target::remote_detach_pid): Call
6837         set_current_process.
6838
6839 2018-07-11  Pedro Alves  <palves@redhat.com>
6840
6841         * h8300-tdep.c (h8300_gdbarch_init): Remove
6842         set_gdbarch_ecoff_reg_to_regnum calls.
6843
6844 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6845
6846         PR c++/23373
6847         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6848         offsets/sizes for static members of a class/struct.
6849
6850 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6851
6852         * target-descriptions.c (tdesc_register_bitsize): Rename.
6853         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6854         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6855         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6856
6857 2018-07-10  Tom Tromey  <tom@tromey.com>
6858
6859         * breakpoint.c (moribund_locations): Now static and a
6860         std::vector.
6861         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6862         (build_bpstat_chain, update_global_location_list)
6863         (breakpoint_retire_moribund): Update.
6864         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6865         VEC.
6866
6867 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6868
6869         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6870         (riscv_register_reggroup_p): Use new function, remove unneeded
6871         parenthesis.
6872         (riscv_push_dummy_call): Extend assert to compare against xlen or
6873         flen based on register type.
6874
6875 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6876
6877         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6878
6879 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6880
6881         * remote.c (show_hardware_watchpoint_limit): New function.
6882         (show_hardware_watchpoint_length_limit): New function.
6883         (show_hardware_breakpoint_limit): New function.
6884         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6885         where appropriate, update help text.
6886
6887 2018-07-09  Tom Tromey  <tom@tromey.com>
6888
6889         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6890         (CLIBS): Don't mention NAT_CLIBS.
6891
6892 2018-07-09  Tom Tromey  <tom@tromey.com>
6893
6894         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6895         (LIBGDB_OBS, clean mostlyclean): Update.
6896         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6897
6898 2018-07-09  Tom Tromey  <tom@tromey.com>
6899
6900         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6901         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6902         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6903
6904 2018-07-09  Tom Tromey  <tom@tromey.com>
6905
6906         * Makefile.in (ALLDEPFILES): Remove exec.c.
6907         (COMMON_OBS): Remove exec.o.
6908         (COMMON_SFILES): Add exec.c.
6909
6910 2018-07-09  Tom Tromey  <tom@tromey.com>
6911
6912         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6913
6914 2018-07-09  Tom Tromey  <tom@tromey.com>
6915
6916         * Makefile.in (clean mostlyclean): Remove stamp-version.
6917         (version.c): Depend on stamp-version.
6918         (stamp-version): New rule, from version.c rule.
6919
6920 2018-07-09  Tom Tromey  <tom@tromey.com>
6921
6922         * Makefile.in (init.c): Depend on stamp-init.
6923         (stamp-init): New rule, from init.c rule.
6924         (clean mostlyclean): Remove stamp-init.
6925
6926 2018-07-09  Tom Tromey  <tom@tromey.com>
6927
6928         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6929         SUBDIR_GCC_COMPILE_SRCS.
6930
6931 2018-07-09  Tom Tromey  <tom@tromey.com>
6932
6933         * Makefile.in (init.c): Remove some unused sed rules.
6934
6935 2018-07-09  Tom Tromey  <tom@tromey.com>
6936
6937         * Makefile.in (TSOBS): Remove.
6938         (INIT_FILES): Update.
6939         (LIBGDB_OBS): Update.
6940         (COMMON_SFILES): Add inflow.c.
6941         (SFILES): Remove inflow.c.
6942
6943 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6944
6945         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6946
6947 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6948
6949         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6950         get_saveloc_name, is_signal_frame_name, step_name,
6951         init_remote_name, create_addr_space_name,
6952         destroy_addr_space_name, search_unwind_table_name,
6953         find_dyn_list_name): Constify.
6954
6955 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6956
6957         * darwin-nat.c (darwin_pthread_kill): New function.
6958         (darwin_resume_thread): Use darwin_pthread_kill.
6959
6960 2018-07-05  Tom de Vries  <tdevries@suse.de>
6961
6962         * macroexp.c (macro_buffer) <operator=>: New member function.
6963
6964 2018-07-04  Tom Tromey  <tom@tromey.com>
6965
6966         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6967
6968 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6969
6970         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6971         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6972         * maint.c: Likewise.
6973         * top.c: Likewise.
6974
6975 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6976
6977         * NEWS: Create a new section for the next release branch.
6978         Rename the section of the current branch, now that it has
6979         been cut.
6980
6981 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6982
6983         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6984         * version.in: Bump version to 8.2.50.DATE-git.
6985
6986 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6987             Pedro Alves  <palves@redhat.com>
6988
6989         * linux-nat.c (linux_init_ptrace): Rename to ...
6990         (linux_init_ptrace_procfs): ... this.  Call
6991         linux_proc_init_warnings.
6992         (linux_nat_target::post_attach)
6993         (linux_nat_target::post_startup_inferior): Adjust.
6994         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6995         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6996
6997 2018-07-04  Tom de Vries  <tdevries@suse.de>
6998
6999         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7000         check ...
7001         (read_comp_unit_head): ... here.
7002
7003 2018-07-03  Tom Tromey  <tom@tromey.com>
7004
7005         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7006         (stop_tracing, tstatus_command)
7007         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7008         (print_one_static_tracepoint_marker): Update.
7009         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7010         std::vector.
7011         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7012         VEC.
7013         (all_tracepoints, static_tracepoints_here): Return std::vector.
7014
7015 2018-07-03  Tom Tromey  <tom@tromey.com>
7016
7017         * common/ptid.c (ptid_equal): Remove.
7018         * common/ptid.h (ptid_equal): Don't declare.
7019         * ada-tasks.c: Update.
7020         * breakpoint.c: Update.
7021         * common/agent.c: Update.
7022         * corelow.c: Update.
7023         * darwin-nat-info.c: Update.
7024         * darwin-nat.c: Update.
7025         * dcache.c: Update.
7026         * dtrace-probe.c: Update.
7027         * dummy-frame.c: Update.
7028         * fbsd-nat.c: Update.
7029         * frame.c: Update.
7030         * gdbthread.h: Update.
7031         * gnu-nat.c: Update.
7032         * go32-nat.c: Update.
7033         * inf-loop.c: Update.
7034         * inf-ptrace.c: Update.
7035         * infcall.c: Update.
7036         * infcmd.c: Update.
7037         * inflow.c: Update.
7038         * infrun.c: Update.
7039         * linux-fork.c: Update.
7040         * linux-nat.c: Update.
7041         * linux-thread-db.c: Update.
7042         * mi/mi-cmd-var.c: Update.
7043         * mi/mi-interp.c: Update.
7044         * mi/mi-main.c: Update.
7045         * nto-procfs.c: Update.
7046         * ppc-linux-tdep.c: Update.
7047         * procfs.c: Update.
7048         * python/py-inferior.c: Update.
7049         * python/py-record-btrace.c: Update.
7050         * python/py-record.c: Update.
7051         * ravenscar-thread.c: Update.
7052         * regcache.c: Update.
7053         * remote-sim.c: Update.
7054         * remote.c: Update.
7055         * sol-thread.c: Update.
7056         * solib.c: Update.
7057         * target.c: Update.
7058         * tui/tui-stack.c: Update.
7059         * varobj.c: Update.
7060         * windows-nat.c: Update.
7061         * windows-tdep.c: Update.
7062
7063 2018-07-03  Tom Tromey  <tom@tromey.com>
7064
7065         * common/ptid.c (ptid_match): Remove.
7066         * common/ptid.h (ptid_match): Don't declare.
7067         * fbsd-nat.c: Update.
7068         * infcmd.c: Update.
7069         * infrun.c: Update.
7070         * linux-nat.c: Update.
7071         * record-btrace.c: Update.
7072         * regcache.c: Update.
7073         * remote.c: Update.
7074
7075 2018-07-03  Tom Tromey  <tom@tromey.com>
7076
7077         * common/ptid.c (ptid_tid_p): Remove.
7078         * common/ptid.h (ptid_tid_p): Don't declare.
7079         * sol-thread.c: Update.
7080
7081 2018-07-03  Tom Tromey  <tom@tromey.com>
7082
7083         * common/ptid.c (ptid_lwp_p): Remove.
7084         * common/ptid.h (ptid_lwp_p): Don't declare.
7085         * fbsd-nat.c: Update.
7086         * linux-nat.c: Update.
7087         * nat/linux-procfs.c: Update.
7088         * nat/x86-linux-dregs.c: Update.
7089         * sol-thread.c: Update.
7090
7091 2018-07-03  Tom Tromey  <tom@tromey.com>
7092
7093         * common/ptid.c (ptid_is_pid): Remove.
7094         * common/ptid.h (ptid_is_pid): Don't declare.
7095         * infrun.c: Update.
7096         * linux-nat.c: Update.
7097         * mi/mi-interp.c: Update.
7098         * remote.c: Update.
7099         * thread.c: Update.
7100
7101 2018-07-03  Tom Tromey  <tom@tromey.com>
7102
7103         * common/ptid.c (ptid_get_tid): Remove.
7104         * common/ptid.h (ptid_get_tid): Don't declare.
7105         * ada-tasks.c: Update.
7106         * aix-thread.c: Update.
7107         * bsd-uthread.c: Update.
7108         * darwin-nat.c: Update.
7109         * fbsd-nat.c: Update.
7110         * i386-darwin-nat.c: Update.
7111         * infrun.c: Update.
7112         * linux-tdep.c: Update.
7113         * nto-procfs.c: Update.
7114         * ppc-ravenscar-thread.c: Update.
7115         * python/py-infthread.c: Update.
7116         * ravenscar-thread.c: Update.
7117         * sol-thread.c: Update.
7118         * sparc-ravenscar-thread.c: Update.
7119         * windows-nat.c: Update.
7120
7121 2018-07-03  Tom Tromey  <tom@tromey.com>
7122
7123         * common/ptid.c (ptid_get_lwp): Remove.
7124         * common/ptid.h (ptid_get_lwp): Don't declare.
7125         * aarch64-linux-nat.c: Update.
7126         * ada-tasks.c: Update.
7127         * aix-thread.c: Update.
7128         * amd64-linux-nat.c: Update.
7129         * arm-linux-nat.c: Update.
7130         * corelow.c: Update.
7131         * fbsd-nat.c: Update.
7132         * fbsd-tdep.c: Update.
7133         * gnu-nat.c: Update.
7134         * i386-cygwin-tdep.c: Update.
7135         * i386-gnu-nat.c: Update.
7136         * i386-linux-nat.c: Update.
7137         * ia64-linux-nat.c: Update.
7138         * inf-ptrace.c: Update.
7139         * infrun.c: Update.
7140         * linux-fork.c: Update.
7141         * linux-nat.c: Update.
7142         * linux-tdep.c: Update.
7143         * linux-thread-db.c: Update.
7144         * mips-linux-nat.c: Update.
7145         * nat/aarch64-linux-hw-point.c: Update.
7146         * nat/aarch64-linux.c: Update.
7147         * nat/linux-btrace.c: Update.
7148         * nat/linux-osdata.c: Update.
7149         * nat/linux-procfs.c: Update.
7150         * nat/x86-linux-dregs.c: Update.
7151         * obsd-nat.c: Update.
7152         * ppc-fbsd-nat.c: Update.
7153         * ppc-linux-nat.c: Update.
7154         * procfs.c: Update.
7155         * python/py-infthread.c: Update.
7156         * ravenscar-thread.c: Update.
7157         * remote.c: Update.
7158         * s390-linux-nat.c: Update.
7159         * sol-thread.c: Update.
7160         * sol2-tdep.c: Update.
7161         * spu-linux-nat.c: Update.
7162         * x86-linux-nat.c: Update.
7163         * xtensa-linux-nat.c: Update.
7164
7165 2018-07-03  Tom Tromey  <tom@tromey.com>
7166
7167         * common/ptid.c (ptid_get_pid): Remove.
7168         * common/ptid.h (ptid_get_pid): Don't declare.
7169         * aarch64-linux-nat.c: Update.
7170         * ada-lang.c: Update.
7171         * aix-thread.c: Update.
7172         * alpha-bsd-nat.c: Update.
7173         * amd64-fbsd-nat.c: Update.
7174         * amd64-linux-nat.c: Update.
7175         * arm-linux-nat.c: Update.
7176         * arm-nbsd-nat.c: Update.
7177         * auxv.c: Update.
7178         * break-catch-syscall.c: Update.
7179         * breakpoint.c: Update.
7180         * bsd-uthread.c: Update.
7181         * corelow.c: Update.
7182         * ctf.c: Update.
7183         * darwin-nat.c: Update.
7184         * fbsd-nat.c: Update.
7185         * fbsd-tdep.c: Update.
7186         * gcore.c: Update.
7187         * gnu-nat.c: Update.
7188         * hppa-nbsd-nat.c: Update.
7189         * hppa-obsd-nat.c: Update.
7190         * i386-fbsd-nat.c: Update.
7191         * ia64-linux-nat.c: Update.
7192         * inf-ptrace.c: Update.
7193         * infcmd.c: Update.
7194         * inferior.c: Update.
7195         * inferior.h: Update.
7196         * inflow.c: Update.
7197         * infrun.c: Update.
7198         * linux-fork.c: Update.
7199         * linux-nat.c: Update.
7200         * linux-tdep.c: Update.
7201         * linux-thread-db.c: Update.
7202         * m68k-bsd-nat.c: Update.
7203         * mi/mi-interp.c: Update.
7204         * mi/mi-main.c: Update.
7205         * mips-linux-nat.c: Update.
7206         * mips-nbsd-nat.c: Update.
7207         * mips64-obsd-nat.c: Update.
7208         * nat/aarch64-linux-hw-point.c: Update.
7209         * nat/aarch64-linux.c: Update.
7210         * nat/linux-btrace.c: Update.
7211         * nat/linux-osdata.c: Update.
7212         * nat/linux-procfs.c: Update.
7213         * nat/x86-linux-dregs.c: Update.
7214         * nto-procfs.c: Update.
7215         * obsd-nat.c: Update.
7216         * ppc-linux-nat.c: Update.
7217         * ppc-nbsd-nat.c: Update.
7218         * ppc-obsd-nat.c: Update.
7219         * proc-service.c: Update.
7220         * procfs.c: Update.
7221         * python/py-inferior.c: Update.
7222         * python/py-infthread.c: Update.
7223         * ravenscar-thread.c: Update.
7224         * record.c: Update.
7225         * remote-sim.c: Update.
7226         * remote.c: Update.
7227         * rs6000-nat.c: Update.
7228         * s390-linux-nat.c: Update.
7229         * sh-nbsd-nat.c: Update.
7230         * sol-thread.c: Update.
7231         * sparc-nat.c: Update.
7232         * sparc64-tdep.c: Update.
7233         * spu-linux-nat.c: Update.
7234         * spu-tdep.c: Update.
7235         * target-debug.h: Update.
7236         * target.c: Update.
7237         * thread.c: Update.
7238         * tid-parse.c: Update.
7239         * tracefile-tfile.c: Update.
7240         * vax-bsd-nat.c: Update.
7241         * windows-nat.c: Update.
7242         * x86-linux-nat.c: Update.
7243         * x86-nat.c: Update.
7244
7245 2018-07-03  Tom Tromey  <tom@tromey.com>
7246
7247         * common/ptid.c (pid_to_ptid): Remove.
7248         * common/ptid.h (pid_to_ptid): Don't declare.
7249         * aix-thread.c: Update.
7250         * arm-linux-nat.c: Update.
7251         * common/ptid.c: Update.
7252         * common/ptid.h: Update.
7253         * corelow.c: Update.
7254         * ctf.c: Update.
7255         * darwin-nat.c: Update.
7256         * fbsd-nat.c: Update.
7257         * fork-child.c: Update.
7258         * gnu-nat.c: Update.
7259         * go32-nat.c: Update.
7260         * inf-ptrace.c: Update.
7261         * infcmd.c: Update.
7262         * inferior.c: Update.
7263         * infrun.c: Update.
7264         * linux-fork.c: Update.
7265         * linux-nat.c: Update.
7266         * nat/aarch64-linux-hw-point.c: Update.
7267         * nat/fork-inferior.c: Update.
7268         * nat/x86-linux-dregs.c: Update.
7269         * nto-procfs.c: Update.
7270         * obsd-nat.c: Update.
7271         * procfs.c: Update.
7272         * progspace.c: Update.
7273         * remote.c: Update.
7274         * rs6000-nat.c: Update.
7275         * s390-linux-nat.c: Update.
7276         * sol-thread.c: Update.
7277         * spu-linux-nat.c: Update.
7278         * target.c: Update.
7279         * top.c: Update.
7280         * tracefile-tfile.c: Update.
7281         * windows-nat.c: Update.
7282
7283 2018-07-03  Tom Tromey  <tom@tromey.com>
7284
7285         * common/ptid.h (ptid_build): Don't declare.
7286         * common/ptid.c (ptid_build): Remove.
7287         * aix-thread.c: Update.
7288         * bsd-kvm.c: Update.
7289         * bsd-uthread.c: Update.
7290         * common/agent.c: Update.
7291         * common/ptid.c: Update.
7292         * common/ptid.h: Update.
7293         * corelow.c: Update.
7294         * darwin-nat.c: Update.
7295         * fbsd-nat.c: Update.
7296         * gnu-nat.c: Update.
7297         * linux-fork.c: Update.
7298         * linux-nat.c: Update.
7299         * linux-thread-db.c: Update.
7300         * nat/linux-osdata.c: Update.
7301         * nat/linux-procfs.c: Update.
7302         * nto-procfs.c: Update.
7303         * obsd-nat.c: Update.
7304         * proc-service.c: Update.
7305         * procfs.c: Update.
7306         * ravenscar-thread.c: Update.
7307         * remote-sim.c: Update.
7308         * remote.c: Update.
7309         * sol-thread.c: Update.
7310         * target.c: Update.
7311         * windows-nat.c: Update.
7312
7313 2018-07-03  Tom Tromey  <tom@tromey.com>
7314
7315         * infrun.c (follow_exec): Use exit_inferior_silent.
7316         * inferior.c (exit_inferior_num_silent): Remove.
7317         * inferior.h (exit_inferior_num_silent): Don't declare.
7318
7319 2018-07-03  Tom Tromey  <tom@tromey.com>
7320
7321         PR cli/23340:
7322         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7323         inferior_ptid on error.
7324
7325 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7326             Simon Marchi  <simon.marchi@polymtl.ca>
7327
7328         PR tdep/8282
7329         * disasm.h (gdb_disassembler): Add
7330         `m_disassembler_options_holder'. member
7331         * disasm.c (get_all_disassembler_options): New function.
7332         (gdb_disassembler::gdb_disassembler): Use it.
7333         (gdb_buffered_insn_length_init_dis): Likewise.
7334         (gdb_buffered_insn_length): Adjust accordingly.
7335         (set_disassembler_options): Handle options with arguments.
7336         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7337         line if showing options with descriptions.
7338         (disassembler_options_completer): Adapt to using the
7339         `disasm_options_and_args_t' structure.
7340         * mips-tdep.c (mips_disassembler_options): New variable.
7341         (mips_disassembler_options_o32): Likewise.
7342         (mips_disassembler_options_n32): Likewise.
7343         (mips_disassembler_options_n64): Likewise.
7344         (gdb_print_insn_mips): Don't set `disassembler_options'.
7345         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7346         functions.
7347         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7348         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7349         `gdbarch_disassembler_options_implicit' and
7350         `gdbarch_valid_disassembler_options'.
7351         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7352         `disasm_options_and_args_t' structure.
7353         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7354         method.
7355         (valid_disassembler_options): Switch from `disasm_options_t' to
7356         the `disasm_options_and_args_t' structure.
7357         * NEWS: Document `set disassembler-options' support for the MIPS
7358         target.
7359         * gdbarch.h: Regenerate.
7360         * gdbarch.c: Regenerate.
7361
7362 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7363
7364         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7365
7366 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7367
7368         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7369         parameter in call to amd64_target_description.
7370         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7371         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7372         (amd64fbsd_init_abi): Likewise.
7373         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7374         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7375         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7376         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7377
7378 2018-06-29  Pedro Alves  <palves@redhat.com>
7379
7380         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7381         "segments" parameter.
7382         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7383         (_initialize_amd64_tdep): Update call to
7384         amd64_create_target_description.
7385         (amd64_target_description): Add "segments" parameter.  Adjust
7386         the implementation to use it.
7387         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7388         call to amd64_create_target_description.
7389         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7390         * gdb/arch/amd64.h (amd64_create_target_description): Add
7391         "segments" register.
7392         * gdb/arch/amd64.c (amd64_create_target_description): Add
7393         "segments" parameter.  Call create_feature_i386_64bit_segments
7394         only if SEGMENTS is true.
7395         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7396         call to amd64_create_target_description.
7397
7398 2018-06-29  Pedro Alves  <palves@redhat.com>
7399
7400         * thread.c (thread_target_id_str): New, factored out from ...
7401         (print_thread_info_1): ... here.  Use it to compute the max
7402         "Target Id" column width.
7403
7404 2018-06-29  Pedro Alves  <palves@redhat.com>
7405
7406         * remote.c (remote_target::extra_thread_info): Delete
7407         'display_buf' and 'n' locals.  from the cache, regardless of
7408         packet mechanims is in use.  Use cache for qThreadExtra and qP
7409         methods too.
7410
7411 2018-06-29  Pedro Alves  <palves@redhat.com>
7412
7413         * blockframe.c (find_pc_sect_containing_function): New function.
7414         * breakpoint.c (print_breakpoint_location): Don't call
7415         find_pc_sect_function.
7416         * linespec.c (create_sals_line_offset): Record the location's
7417         symbol in the sal.
7418         * linespec.c (convert_address_location_to_sals): Fill in sal's
7419         symbol with find_pc_sect_containing_function.
7420         * symtab.c (find_function_start_sal): Rename to ...
7421         (find_function_start_sal_1): ... this.
7422         (find_function_start_sal): Reimplement as wrapper around
7423         find_function_start_sal_1, and use
7424         find_pc_sect_containing_function to fill in the sal's symbol.
7425         (find_function_start_sal(symbol*, bool)): Adjust.
7426         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7427         comments.
7428         (find_pc_sect_containing_function): Declare.
7429
7430 2018-06-29  Pedro Alves  <palves@redhat.com>
7431
7432         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7433         true if the the location has no symbol.
7434
7435 2018-06-28  Tom Tromey  <tom@tromey.com>
7436
7437         * NEWS: Mention --enable-codesign.
7438         * silent-rules.mk (ECHO_SIGN): New variable.
7439         * configure.ac: Add --enable-codesign.
7440         * configure: Rebuild.
7441         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7442         (gdb$(EXEEXT)): Optionally invoke codesign.
7443
7444 2018-06-28  Pedro Alves  <palves@redhat.com>
7445
7446         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7447         comments.
7448         (switch_to_thread_no_regs): Adjust comment.
7449         * infcmd.c (stop_pc): Delete.
7450         (post_create_inferior, info_program_command): Replace references
7451         to stop_pc with references to thread_info->suspend.stop_pc.
7452         * inferior.h (stop_pc): Delete declaration.
7453         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7454         (handle_inferior_event_1, handle_signal_stop)
7455         (process_event_stop_test, keep_going_stepped_thread)
7456         (handle_step_into_function, handle_step_into_function_backward)
7457         (print_stop_location): Replace references to stop_pc with
7458         references to thread_info->suspend.stop_pc.
7459         (struct infcall_suspend_state) <stop_pc>: Delete field.
7460         (save_infcall_suspend_state, restore_infcall_suspend_state):
7461         Remove references to inf_stat->stop_pc.
7462         * linux-fork.c (fork_load_infrun_state): Likewise.
7463         * record-btrace.c (record_btrace_set_replay): Likewise.
7464         * record-full.c (record_full_goto_entry): Likewise.
7465         * remote.c (print_one_stopped_thread): Likewise.
7466         * target.c (target_resume): Extend comment.
7467         * thread.c (set_executing_thread): New.
7468         (set_executing): Use it.
7469         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7470         Remove references to stop_pc.
7471
7472 2018-06-28  Pedro Alves  <palves@redhat.com>
7473
7474         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7475         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7476
7477 2018-06-28  Tom Tromey  <tom@tromey.com>
7478
7479         * coffread.c (coff_symfile_finish): Update.
7480         * xcoffread.c (xcoff_symfile_finish): Update.
7481         * elfread.c (elf_symfile_finish): Update.
7482         * symfile.h (dwarf2_free_objfile): Don't declare.
7483         * dwarf2read.c (_initialize_dwarf2_read): Use
7484         register_objfile_data_with_cleanup.
7485         (dwarf2_free_objfile): Now static.  Change signature.
7486
7487 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7488
7489         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7490         option "-o" to add-symbol-file-load to add an offset to each
7491         section's load address.
7492         * symfile.c (set_objfile_default_section_offset): New function.
7493
7494 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7495
7496         * symfile.c (add_symbol_file_command): Make sure that sections
7497         with the same name are sorted in the same order.
7498
7499 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7500
7501         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7502         require the second argument.  If omitted, load sections at the
7503         addresses specified in the file.
7504
7505 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7506
7507         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7508         (_initialize_symfile): Add option "-o" to symbol-file to add an
7509         offset to each section of the symbol file.
7510
7511 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7512
7513         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7514
7515 2018-06-27  Tom Tromey  <tom@tromey.com>
7516
7517         * stack.c (_initialize_stack): Update "func" help text.
7518
7519 2018-06-27  Tom Tromey  <tom@tromey.com>
7520
7521         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7522         std::vector.
7523         (unwind_infopy_str, pyuw_create_unwind_info)
7524         (unwind_infopy_add_saved_register, pyuw_sniffer)
7525         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7526         Update.
7527         (struct saved_reg): Add constructor.
7528         <value>: Now a gdbpy_ref<>.
7529
7530 2018-06-27  Tom Tromey  <tom@tromey.com>
7531
7532         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7533
7534 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7535
7536         * gdb-gdb.py.in: Format using autopep8.
7537
7538 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7539
7540         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7541         (type_lookup_function): Recognize CORE_ADDR values.
7542
7543 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7544
7545         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7546         print tag_name.
7547
7548 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7549
7550         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7551         <__lt__>: Add.
7552
7553 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7554
7555         * gdb-gdb.py: Move to...
7556         * gdb-gdb.py.in: ... here.
7557         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7558         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7559         dependencies.
7560         (distclean): Remove gdb-gdb.py when cleaning.
7561         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7562         * configure: Re-generate.
7563
7564 2018-06-27  Pedro Alves  <palves@redhat.com>
7565
7566         * proc-service.c (get_ps_regcache): New.
7567         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7568         (ps_lsetfpregs): Use it.
7569
7570 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7571
7572         PR gdb/21695
7573         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7574         declaration.
7575         (dwarf_decode_lines_1): Adjust.
7576
7577 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7578
7579         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7580         override.
7581         <info_proc>: Likewise.
7582
7583 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7584
7585         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7586         to windows_fetch_one_register, and only handle the case of
7587         fetching one register.  Move the code that reloads the context
7588         and iterates over all registers if R is negative to...
7589         (windows_nat_target::fetch_registers): ... here.
7590         (do_windows_store_inferior_registers): Rename to
7591         windows_store_one_register, and only handle the case of storing
7592         one register.  Move the code that handles the case where r is
7593         negative to...
7594         (windows_nat_target::store_registers) ... here.
7595
7596 2018-06-26  Tom Tromey  <tom@tromey.com>
7597
7598         PR rust/22574:
7599         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7600         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7601         Update.
7602         (rust_internal_print_type): Add podata parameter.
7603         (rust_print_type): Update.
7604
7605 2018-06-26  Tom Tromey  <tom@tromey.com>
7606
7607         * typeprint.h (struct print_offset_data) <update, finish,
7608         maybe_print_hole>: New methods.
7609         <indentation>: New constant.
7610         * typeprint.c (print_offset_data::indentation): Define.
7611         (print_offset_data::maybe_print_hole, print_offset_data::update)
7612         (print_offset_data::finish): Move from c-typeprint.c and rename.
7613         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7614         (print_spaces_filtered_with_print_options): Update.
7615         (c_print_type_union_field_offset, maybe_print_hole)
7616         (c_print_type_struct_field_offset): Move to typeprint.c and
7617         rename.
7618         (c_type_print_base_struct_union): Update.
7619
7620 2018-06-25  Pedro Alves  <palves@redhat.com>
7621
7622         * gdbthread.h (thread_info_ref, delete_thread)
7623         (delete_thread_silent, first_thread_of_inferior)
7624         (any_thread_of_inferior, switch_to_thread)
7625         (enable_thread_stack_temporaries)
7626         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7627         (get_last_thread_stack_temporary)
7628         (value_in_thread_stack_temporaries, can_access_registers_thread):
7629         Spell out "struct thread_info" instead of just "thread_info".
7630         * inferior.h (notice_new_inferior): Likewise.
7631
7632 2018-06-25  Pedro Alves  <palves@redhat.com>
7633
7634         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7635         pass thread_info pointer to delete_thread.
7636         (windows_nat_target::detach): Pass inferior pointer to
7637         detach_inferior.
7638         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7639         delete_thread.
7640         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7641         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7642         and pass a thread_info pointer to delete_thread.
7643         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7644         pass thread_info pointer to delete_thread.
7645         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7646         delete_thread_silent call.
7647         * procfs.c (procfs_target::detach): Pass inferior pointer to
7648         detach_inferior.
7649         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7650         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7651         delete_thread_silent call.
7652         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7653         pass thread_info pointer to delete_thread.
7654         (windows_nat_target::detach): Pass inferior pointer to
7655         delete_inferior.
7656
7657 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7658
7659         * regcache.c (readable_regcache::read_part): Fix asserts.
7660         (reg_buffer::raw_collect_part): New function.
7661         (regcache::write_part): Fix asserts.
7662         (reg_buffer::raw_supply_part): New function.
7663         (regcache::transfer_regset_register): New helper function.
7664         (regcache::transfer_regset): Call new functions.
7665         (regcache_supply_regset): Use gdb_byte*.
7666         (regcache::supply_regset): Likewise.
7667         (regcache_collect_regset): Likewise.
7668         (regcache::collect_regset): Likewise.
7669         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7670         (reg_buffer::raw_supply_part): Likewise.
7671         (regcache::transfer_regset_register): Likewise.
7672         (regcache::transfer_regset): Use gdb_byte*.
7673
7674 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7675
7676         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7677
7678 2018-06-21  Pedro Alves  <palves@redhat.com>
7679
7680         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7681         instead of a ptid_t.  All callers adjusted.
7682         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7683         adjusted.
7684         (print_ada_task_info, display_current_task_id, task_command_1):
7685         Adjust.
7686         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7687         inferior_thread.
7688         (breakpoint_kind): Adjust.
7689         (remove_breakpoints_pid): Rename to ...
7690         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7691         pointer.  All callers adjusted.
7692         (bpstat_clear_actions): Use inferior_thread.
7693         (get_bpstat_thread): New.
7694         (bpstat_do_actions): Use it.
7695         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7696         to take a thread_info pointer.  All callers adjusted.
7697         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7698         (breakpoint_re_set_thread): Use inferior_thread.
7699         * breakpoint.h (struct inferior): Forward declare.
7700         (bpstat_stop_status): Update.
7701         (remove_breakpoints_pid): Delete.
7702         (remove_breakpoints_inf): New.
7703         * bsd-uthread.c (bsd_uthread_target::wait)
7704         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7705         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7706         (maint_btrace_packet_history_cmd)
7707         (maint_btrace_clear_packet_history_cmd): Adjust.
7708         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7709         inferior_thread.
7710         * cli/cli-interp.c: Include "inferior.h".
7711         * common/refcounted-object.h (struct
7712         refcounted_object_ref_policy): New.
7713         * compile/compile-object-load.c: Include gdbthread.h.
7714         (store_regs): Use inferior_thread.
7715         * corelow.c (core_target::close): Use current_inferior.
7716         (core_target_open): Adjust to use first_thread_of_inferior and use
7717         the current inferior.
7718         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7719         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7720         <thread>: ... this new field.  All references adjusted.
7721         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7722         Take a thread_info pointer instead of a ptid_t.
7723         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7724         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7725         thread_info pointer instead of a ptid_t.
7726         * elfread.c: Include "inferior.h".
7727         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7728         Use inferior_thread.
7729         * eval.c (evaluate_subexp): Likewise.
7730         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7731         inferior_thread.
7732         * gdb_proc_service.h (struct thread_info): Forward declare.
7733         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7734         <thread>: ... this new field.  All references adjusted.
7735         * gdbarch.h, gdbarch.c: Regenerate.
7736         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7737         'thread' parameter.  All implementations and callers adjusted.
7738         * gdbthread.h (thread_info) <set_running>: New method.
7739         (delete_thread, delete_thread_silent): Take a thread_info pointer
7740         instead of a ptid.
7741         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7742         (first_thread_of_process): Delete, replaced by ...
7743         (first_thread_of_inferior): ... this new function.  All callers
7744         adjusted.
7745         (any_live_thread_of_process): Delete, replaced by ...
7746         (any_live_thread_of_inferior): ... this new function.  All callers
7747         adjusted.
7748         (switch_to_thread, switch_to_no_thread): Declare.
7749         (is_executing): Delete.
7750         (enable_thread_stack_temporaries): Update comment.
7751         <enable_thread_stack_temporaries>: Take a thread_info pointer
7752         instead of a ptid_t.  Incref the thread.
7753         <~enable_thread_stack_temporaries>: Decref the thread.
7754         <m_ptid>: Delete
7755         <m_thr>: New.
7756         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7757         (get_last_thread_stack_temporary)
7758         (value_in_thread_stack_temporaries, can_access_registers_thread):
7759         Take a thread_info pointer instead of a ptid_t.  All callers
7760         adjusted.
7761         * infcall.c (get_call_return_value): Use inferior_thread.
7762         (run_inferior_call): Work with thread pointers instead of ptid_t.
7763         (call_function_by_hand_dummy): Work with thread pointers instead
7764         of ptid_t.  Use thread_info_ref.
7765         * infcmd.c (proceed_thread_callback): Access thread's state
7766         directly.
7767         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7768         access thread's state directly.
7769         (continue_command): Use inferior_thread.
7770         (info_program_command): Use find_thread_ptid and access thread
7771         state directly.
7772         (proceed_after_attach_callback): Use thread state directly.
7773         (notice_new_inferior): Take a thread_info pointer instead of a
7774         ptid_t.  All callers adjusted.
7775         (exit_inferior): Take an inferior pointer instead of a pid.  All
7776         callers adjusted.
7777         (exit_inferior_silent): New.
7778         (detach_inferior): Delete.
7779         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7780         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7781         (detach_inferior_command, kill_inferior_command): Use
7782         find_inferior_id instead of valid_gdb_inferior_id and
7783         gdb_inferior_id_to_pid.
7784         (inferior_command): Use inferior and thread pointers.
7785         * inferior.h (struct thread_info): Forward declare.
7786         (notice_new_inferior): Take a thread_info pointer instead of a
7787         ptid_t.  All callers adjusted.
7788         (detach_inferior): Delete declaration.
7789         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7790         instead of a pid.  All callers adjusted.
7791         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7792         (valid_gdb_inferior_id): Delete.
7793         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7794         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7795         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7796         ...
7797         <inf>: ... this new field.
7798         <step_ptid>: Delete, replaced by ...
7799         <step_thread>: ... this new field.
7800         (get_displaced_stepping_state): Take an inferior pointer instead
7801         of a pid.  All callers adjusted.
7802         (displaced_step_in_progress_any_inferior): Adjust.
7803         (displaced_step_in_progress_thread): Take a thread pointer instead
7804         of a ptid_t.  All callers adjusted.
7805         (displaced_step_in_progress, add_displaced_stepping_state): Take
7806         an inferior pointer instead of a pid.  All callers adjusted.
7807         (get_displaced_step_closure_by_addr): Adjust.
7808         (remove_displaced_stepping_state): Take an inferior pointer
7809         instead of a pid.  All callers adjusted.
7810         (displaced_step_prepare_throw, displaced_step_prepare)
7811         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7812         All callers adjusted.
7813         (start_step_over): Adjust.
7814         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7815         displaced step queue.
7816         (do_target_resume): Adjust.
7817         (fetch_inferior_event): Use inferior_thread.
7818         (context_switch, get_inferior_stop_soon): Take an
7819         execution_control_state pointer instead of a ptid_t.  All callers
7820         adjusted.
7821         (switch_to_thread_cleanup): Delete.
7822         (stop_all_threads): Use scoped_restore_current_thread.
7823         * inline-frame.c: Include "gdbthread.h".
7824         (inline_state) <inline_state>: Take a thread pointer instead of a
7825         ptid_t.  All callers adjusted.
7826         <ptid>: Delete, replaced by ...
7827         <thread>: ... this new field.
7828         (find_inline_frame_state): Take a thread pointer instead of a
7829         ptid_t.  All callers adjusted.
7830         (skip_inline_frames, step_into_inline_frame)
7831         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7832         pointer instead of a ptid_t.  All callers adjusted.
7833         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7834         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7835         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7836         pointers directly.
7837         * linux-nat.c (get_detach_signal): Likewise.
7838         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7839         (thread_db_notice_clone): Adjust.
7840         (thread_db_find_new_threads_silently)
7841         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7842         a thread pointer instead of a ptid_t.  All callers adjusted.
7843         * mi/mi-cmd-var.c: Include "inferior.h".
7844         (mi_cmd_var_update_iter): Update to use thread pointers.
7845         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7846         inferior directly.
7847         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7848         out to ...
7849         (mi_output_running): ... this new function.
7850         (mi_on_resume_1): Adjust to use it.
7851         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7852         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7853         directly.
7854         (interrupt_thread_callback): : Adjust to use thread and inferior
7855         pointers.
7856         * proc-service.c: Include "gdbthread.h".
7857         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7858         * progspace-and-thread.c: Include "inferior.h".
7859         * progspace.c: Include "inferior.h".
7860         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7861         hold a reference to an inferior_object.
7862         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7863         inferior_thread.
7864         * python/py-inferior.c (struct inferior_object): Give the type a
7865         tag name instead of a typedef.
7866         (python_on_normal_stop): No need to check if the current thread is
7867         listed.
7868         (inferior_to_inferior_object): Change return type to
7869         inferior_object.  All callers adjusted.
7870         (find_thread_object): Delete, bits factored out to ...
7871         (thread_to_thread_object): ... this new function.
7872         * python/py-infthread.c (create_thread_object): Use
7873         inferior_to_inferior_object.
7874         (thpy_is_stopped): Use thread pointer directly.
7875         (gdbpy_selected_thread): Use inferior_thread.
7876         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7877         field, replaced with ...
7878         <thread>: ... this new field.  All users adjusted.
7879         (btpy_insn_or_gap_new): Drop const.
7880         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7881         callers adjusted.
7882         * python/py-record.c: Include "gdbthread.h".
7883         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7884         a ptid_t.  All callers adjusted.
7885         (gdbpy_current_recording): Use inferior_thread.
7886         * python/py-record.h (recpy_record_object) <ptid>: Delete
7887         field, replaced with ...
7888         <thread>: ... this new field.  All users adjusted.
7889         (recpy_element_object) <ptid>: Delete
7890         field, replaced with ...
7891         <thread>: ... this new field.  All users adjusted.
7892         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7893         a ptid_t.  All callers adjusted.
7894         * python/py-threadevent.c: Include "gdbthread.h".
7895         (get_event_thread): Use thread_to_thread_object.
7896         * python/python-internal.h (struct inferior_object): Forward
7897         declare.
7898         (find_thread_object, find_inferior_object): Delete declarations.
7899         (thread_to_thread_object, inferior_to_inferior_object): New
7900         declarations.
7901         * record-btrace.c: Include "inferior.h".
7902         (require_btrace_thread): Use inferior_thread.
7903         (record_btrace_frame_sniffer)
7904         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7905         (get_thread_current_frame): Use scoped_restore_current_thread and
7906         switch_to_thread.
7907         (get_thread_current_frame): Use thread pointer directly.
7908         (record_btrace_replay_at_breakpoint): Use thread's inferior
7909         pointer directly.
7910         * record-full.c: Include "inferior.h".
7911         * regcache.c: Include "gdbthread.h".
7912         (get_thread_arch_regcache): Use the inferior's address space
7913         directly.
7914         (get_thread_regcache, registers_changed_thread): New.
7915         * regcache.h (get_thread_regcache(thread_info *thread)): New
7916         overload.
7917         (registers_changed_thread): New.
7918         (remote_target) <remote_detach_1>: Swap order of parameters.
7919         (remote_add_thread): <remote_add_thread>: Return the new thread.
7920         (get_remote_thread_info(ptid_t)): New overload.
7921         (remote_target::remote_notice_new_inferior): Use thread pointers
7922         directly.
7923         (remote_target::process_initial_stop_replies): Use
7924         thread_info::set_running.
7925         (remote_target::remote_detach_1, remote_target::detach)
7926         (extended_remote_target::detach): Adjust.
7927         * stack.c (frame_show_address): Use inferior_thread.
7928         * target-debug.h (target_debug_print_thread_info_pp): New.
7929         * target-delegates.c: Regenerate.
7930         * target.c (default_thread_address_space): Delete.
7931         (memory_xfer_partial_1): Use current_inferior.
7932         (target_detach): Use current_inferior.
7933         (target_thread_address_space): Delete.
7934         (generic_mourn_inferior): Use current_inferior.
7935         * target.h (struct target_ops) <thread_address_space>: Delete.
7936         (target_thread_address_space): Delete.
7937         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7938         pointers directly.
7939         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7940         thread pointer instead of a ptid_t.  Adjust all callers.
7941         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7942         (first_thread_of_process): Delete, replaced by ...
7943         (first_thread_of_inferior): ... this new function.  All callers
7944         adjusted.
7945         (any_thread_of_process): Rename to ...
7946         (any_thread_of_inferior): ... this, and take an inferior pointer.
7947         (any_live_thread_of_process): Rename to ...
7948         (any_live_thread_of_inferior): ... this, and take an inferior
7949         pointer.
7950         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7951         (value_in_thread_stack_temporaries)
7952         (get_last_thread_stack_temporary): Take a thread pointer instead
7953         of a ptid_t.  Adjust all callers.
7954         (thread_info::set_running): New.
7955         (validate_registers_access): Use inferior_thread.
7956         (can_access_registers_ptid): Rename to ...
7957         (can_access_registers_thread): ... this, and take a thread
7958         pointer.
7959         (print_thread_info_1): Adjust to compare thread pointers instead
7960         of ptids.
7961         (switch_to_no_thread, switch_to_thread): Make extern.
7962         (scoped_restore_current_thread::~scoped_restore_current_thread):
7963         Use m_thread pointer directly.
7964         (scoped_restore_current_thread::scoped_restore_current_thread):
7965         Use inferior_thread.
7966         (thread_command): Use thread pointer directly.
7967         (thread_num_make_value_helper): Use inferior_thread.
7968         * top.c (execute_command): Use inferior_thread.
7969         * tui/tui-interp.c: Include "inferior.h".
7970         * varobj.c (varobj_create): Use inferior_thread.
7971         (value_of_root_1): Use find_thread_global_id instead of
7972         global_thread_id_to_ptid.
7973
7974 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7975
7976         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7977         possible.
7978         (regcache::write_part): Likewise.
7979         (readable_regcache::cooked_read_part): Update comment.
7980         (readable_regcache::cooked_write_part): Likewise.
7981         * regcache.h: (readable_regcache::read_part): Likewise.
7982         (regcache::write_part): Likewise.
7983
7984 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7985             Dirk Schubert  <dirk.schubert@arm.com>
7986
7987         * aarch64-linux-nat.c (post_attach): New.
7988         (aarch64_linux_nat_target::post_attach): Override post_attach to
7989         record the number of hardware debug registers.
7990
7991 2018-06-20  Tom Tromey  <tom@tromey.com>
7992
7993         * python/py-param.c (add_setshow_generic): Make parameters const.
7994         (parmpy_init): Update.
7995
7996 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7997
7998         * regcache.h (regcache_cooked_read_ftype): Rename to...
7999         (register_read_ftype): ...this, change type to function_view.
8000         (class reg_buffer) <save>: Remove src parameter.
8001         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8002         parameter non-const in first overload.  Remove src parameter in
8003         second overload.
8004         * regcache.c (do_cooked_read): Remove.
8005         (readonly_detached_regcache::readonly_detached_regcache): Make
8006         parameter non-const, adjust call to other constructor.
8007         (reg_buffer::save): Remove src parameter.
8008         * frame.c (do_frame_register_read): Remove.
8009         (frame_save_as_regcache): Use lambda function.
8010         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8011         parameter to ppu2spu_data *.
8012         (ppu2spu_sniffer): Use lambda function.
8013
8014 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8015
8016         * record-full.c (record_full_target::insert_breakpoint): Remove
8017         "struct" keyword, add const.
8018
8019 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8020
8021         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8022         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8023         * configure.ac: Remove AC_PREREQ, add missing quoting.
8024         * gnulib/configure.ac: Modernize usage of
8025         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8026         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8027         (AUTOMAKE_VERSION): Bump to 1.15.1.
8028         * configure: Re-generate.
8029         * config.in: Re-generate.
8030         * aclocal.m4: Re-generate.
8031         * gnulib/aclocal.m4: Re-generate.
8032         * gnulib/config.in: Re-generate.
8033         * gnulib/configure: Re-generate.
8034         * gnulib/import/Makefile.in: Re-generate.
8035
8036 2018-06-19  Pedro Alves  <palves@redhat.com>
8037
8038         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8039         (lookup_minimal_symbol_by_pc_section): ... here with
8040         gdb_assert_not_reached added.
8041
8042 2018-06-19  Pedro Alves  <palves@redhat.com>
8043
8044         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8045         parameter with a block parameter.  Compare location's block symbol
8046         with the frame's block instead of addresses.
8047         (skip_inline_frames): Pass the current block instead of the
8048         frame's address.  Break out as soon as we determine the frame
8049         should not be skipped.
8050
8051 2018-06-18  Tom Tromey  <tom@tromey.com>
8052
8053         * solib-aix.c (solib_aix_get_section_offsets): Return
8054         unique_xmalloc_ptr.
8055         (solib_aix_solib_create_inferior_hook): Update.
8056
8057 2018-06-18  Tom Tromey  <tom@tromey.com>
8058
8059         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8060
8061 2018-06-18  Tom Tromey  <tom@tromey.com>
8062
8063         * solib-frv.c (frv_relocate_main_executable): Use
8064         unique_xmalloc_ptr.
8065         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8066         unique_xmalloc_ptr.
8067
8068 2018-06-18  Tom Tromey  <tom@tromey.com>
8069
8070         * objfiles.h (inhibit_section_map_updates): Update.
8071         (resume_section_map_updates, resume_section_map_updates_cleanup):
8072         Remove.
8073         * solib-svr4.c (svr4_handle_solib_event): Update.
8074         * objfiles.c (inhibit_section_map_updates): Return
8075         scoped_restore_tmpl<int>.
8076         (resume_section_map_updates, resume_section_map_updates_cleanup):
8077         Remove.
8078
8079 2018-06-18  Tom Tromey  <tom@tromey.com>
8080
8081         * valprint.h (read_string): Update.
8082         * valprint.c (read_string): Change type of "buffer".
8083         (val_print_string): Update.
8084         * python/py-value.c (valpy_string): Update.
8085         * language.h (struct language_defn) <la_get_string>: Change
8086         type of "buffer".
8087         (default_get_string, c_get_string): Update.
8088         * language.c (default_get_string): Change type of "buffer".
8089         * guile/scm-value.c (gdbscm_value_to_string): Update.
8090         * c-lang.c (c_get_string): Change type of "buffer".
8091
8092 2018-06-18  Tom Tromey  <tom@tromey.com>
8093
8094         * ser-mingw.c (struct pipe_state_destroyer): New.
8095         (pipe_state_up): New typedef.
8096         (cleanup_pipe_state): Remove.
8097         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8098
8099 2018-06-18  Tom Tromey  <tom@tromey.com>
8100
8101         * rust-lang.h (rust_yyerror): Don't declare.
8102         * rust-lang.c (rust_language_defn): Update.
8103         * rust-exp.y (yyerror): Now static.
8104         * parse.c (parse_exp_in_context_1): Update.
8105         * p-lang.h (p_yyerror): Don't declare.
8106         * p-lang.c (p_language_defn): Update.
8107         * p-exp.y (yyerror): Now static.
8108         * opencl-lang.c (opencl_language_defn): Update.
8109         * objc-lang.c (objc_language_defn): Update.
8110         * m2-lang.h (m2_yyerror): Don't declare.
8111         * m2-lang.c (m2_language_defn): Update.
8112         * m2-exp.y (yyerror): Now static.
8113         * language.h (struct language_defn) <la_error>: Remove.
8114         * language.c (unk_lang_error): Remove.
8115         (unknown_language_defn, auto_language_defn): Remove.
8116         * go-lang.h (go_yyerror): Don't declare.
8117         * go-lang.c (go_language_defn): Update.
8118         * go-exp.y (yyerror): Now static.
8119         * f-lang.h (f_yyerror): Don't declare.
8120         * f-lang.c (f_language_defn): Update.
8121         * f-exp.y (yyerror): Now static.
8122         * d-lang.h (d_yyerror): Don't declare.
8123         * d-lang.c (d_language_defn): Update.
8124         * d-exp.y (yyerror): Now static.
8125         * c-lang.h (c_yyerror): Don't declare.
8126         * c-lang.c (c_language_defn, cplus_language_defn)
8127         (asm_language_defn, minimal_language_defn): Update.
8128         * c-exp.y (yyerror): Now static.
8129         * ada-lang.h (ada_yyerror): Don't declare.
8130         * ada-lang.c (ada_language_defn): Update.
8131         * ada-exp.y (yyerror): Now static.
8132
8133 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8134
8135         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8136         (store_sveregs_to_thread): Likewise.
8137         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8138         (aarch64_linux_store_inferior_registers): Likewise.
8139         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8140         function.
8141         (aarch64_sve_regs_copy_to_regcache): Likewise.
8142         (aarch64_sve_regs_copy_from_regcache): Likewise.
8143         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8144         declaration.
8145         (aarch64_sve_regs_copy_to_regcache): Likewise.
8146         (aarch64_sve_regs_copy_from_regcache): Likewise.
8147         (sve_context): Structure from Linux headers.
8148         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8149         (SVE_SIG_ZREG_SIZE): Likewise.
8150         (SVE_SIG_PREG_SIZE): Likewise.
8151         (SVE_SIG_FFR_SIZE): Likewise.
8152         (SVE_SIG_REGS_OFFSET): Likewise.
8153         (SVE_SIG_ZREGS_OFFSET): Likewise.
8154         (SVE_SIG_ZREG_OFFSET): Likewise.
8155         (SVE_SIG_ZREGS_SIZE): Likewise.
8156         (SVE_SIG_PREGS_OFFSET): Likewise.
8157         (SVE_SIG_PREG_OFFSET): Likewise.
8158         (SVE_SIG_PREGS_SIZE): Likewise.
8159         (SVE_SIG_FFR_OFFSET): Likewise.
8160         (SVE_SIG_REGS_SIZE): Likewise.
8161         (SVE_SIG_CONTEXT_SIZE): Likewise.
8162         (SVE_PT_REGS_MASK): Likewise.
8163         (SVE_PT_REGS_FPSIMD): Likewise.
8164         (SVE_PT_REGS_SVE): Likewise.
8165         (SVE_PT_VL_INHERIT): Likewise.
8166         (SVE_PT_VL_ONEXEC): Likewise.
8167         (SVE_PT_REGS_OFFSET): Likewise.
8168         (SVE_PT_FPSIMD_OFFSET): Likewise.
8169         (SVE_PT_FPSIMD_SIZE): Likewise.
8170         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8171         (SVE_PT_SVE_PREG_SIZE): Likewise.
8172         (SVE_PT_SVE_FFR_SIZE): Likewise.
8173         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8174         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8175         (__SVE_SIG_TO_PT): Likewise.
8176         (SVE_PT_SVE_OFFSET): Likewise.
8177         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8178         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8179         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8180         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8181         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8182         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8183         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8184         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8185         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8186         (SVE_PT_SVE_SIZE): Likewise.
8187         (SVE_PT_SIZE): Likewise.
8188         (HAS_SVE_STATE): New define.
8189
8190 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8191
8192         * nat/aarch64-sve-linux-sigcontext.h: New file.
8193         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8194         new files.
8195         (SVE_VQ_MIN): Likewise.
8196         (SVE_VQ_MAX): Likewise.
8197         (SVE_VL_MIN): Likewise.
8198         (SVE_VL_MAX): Likewise.
8199         (SVE_NUM_ZREGS): Likewise.
8200         (SVE_NUM_PREGS): Likewise.
8201         (sve_vl_valid): Likewise.
8202         (struct user_sve_header): Likewise.
8203
8204 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8205             Richard Bunt <Richard.Bunt@arm.com>
8206
8207         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8208         was requested by GDB.
8209
8210 2018-06-15  Tom de Vries  <tdevries@suse.de>
8211
8212         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8213
8214 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8215
8216         * gnulib/update-gnulib.sh: Print expected versions of
8217         autoconf/aclocal.
8218
8219 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8220
8221         * arch-utils.c (default_type_align): Use type_length_units.
8222         * gdbtypes.c (type_align): Use type_length_units.
8223
8224 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8225
8226         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8227         of 'define' command.
8228
8229 2018-06-14  Tom de Vries  <tdevries@suse.de>
8230
8231         PR cli/22573
8232         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8233         get_no_prettyformat_print_options.
8234
8235 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8236
8237         * sparc-nat.h: Include target.h.
8238         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8239         <fetch_registers>: Remove this argument in function call.
8240         <store_registers>: Remove this argument in function call, remove
8241         extra semicolon.
8242         <low_forget_process>: Call sparc64_forget_process instead of
8243         sparc_forget_process.
8244
8245 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8246
8247         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8248         (procfs_target::make_corefile_notes): Adjust to new
8249         target_read_alloc return type.
8250
8251 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8252             Stephen Roberts  <stephen.roberts@arm.com>
8253
8254         PR gdb/22882
8255         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8256         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8257         Move should_notify_stop local into more inner scope.
8258
8259 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8260             Stephen Roberts  <stephen.roberts@arm.com>
8261
8262         PR gdb/22882
8263         * infrun.c (resume_1): Add call to mark_async_event_handler.
8264
8265 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8266
8267         * infrun.c (do_target_wait): Change old version of $pc printed.
8268
8269 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8270
8271         * dwarf2read.c (read_index_from_section): Rename to...
8272         (read_gdb_index_from_section): ... this, update all callers.
8273         (dwarf2_read_index): Rename to...
8274         (dwarf2_read_gdb_index): ... this, update all callers.
8275
8276 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8277
8278         * hppa-linux-nat.c
8279         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8280         hppa_linux_nat_target::fetch_registers.
8281
8282 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8283
8284         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8285         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8286         (AARCH64_DWARF_SVE_FFR): Likewise.
8287         (AARCH64_DWARF_SVE_P0): Likewise.
8288         (AARCH64_DWARF_SVE_Z0): Likewise.
8289
8290 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8291
8292         * common/common-regcache.h (raw_compare): New function.
8293         * regcache.c (regcache::raw_compare): Likewise.
8294         * regcache.h (regcache::raw_compare): New declaration.
8295
8296 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8297
8298         * common/common-regcache.h (reg_buffer_common): New structure.
8299         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8300         (reg_buffer::raw_supply): Likewise.
8301         (reg_buffer::raw_supply_integer): Likewise.
8302         (reg_buffer::raw_supply_zeroed): Likewise.
8303         (reg_buffer::raw_collect): Likewise.
8304         (reg_buffer::raw_collect_integer): Likewise.
8305         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8306         (reg_buffer::raw_supply): Likewise.
8307         (reg_buffer::raw_supply_integer): Likewise.
8308         (reg_buffer::raw_supply_zeroed): Likewise.
8309         (reg_buffer::raw_collect): Likewise.
8310         (reg_buffer::raw_collect_integer): Likewise.
8311
8312 2018-06-10  Tom Tromey  <tom@tromey.com>
8313
8314         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8315         (class remote_state) <stop_reply_queue>: Now std::vector.
8316         (remote_state::~remote_state)
8317         (remote_target::stop_reply_queue_length): Update.
8318         (struct queue_iter_param, remove_child_of_pending_fork)
8319         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8320         (check_pending_event_prevents_wildcard_vcont_callback)
8321         (remove_stop_reply_for_inferior)
8322         (remove_stop_reply_of_remote_state)
8323         (remote_notif_remove_once_on_match)
8324         (stop_reply_match_ptid_and_ws)
8325         (remote_kill_child_of_pending_fork): Remove.
8326         (remote_target::remove_new_fork_children)
8327         (remote_target::check_pending_events_prevent_wildcard_vcont)
8328         (remote_target::discard_pending_stop_replies)
8329         (remote_target::discard_pending_stop_replies_in_queue)
8330         (remote_target::remote_notif_remove_queued_reply)
8331         (remote_target::queued_stop_reply)
8332         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8333         (remote_target::wait, remote_target::kill_new_fork_children)
8334         (remote_target::async): Update.
8335
8336 2018-06-10  Tom Tromey  <tom@tromey.com>
8337
8338         * record-full.c (record_full_arch_list_cleanups): Remove.
8339         (record_full_message): Use try/catch.
8340         (record_full_wait_cleanups): Remove.
8341         (record_full_wait_1): Use try/catch.
8342         (record_full_restore): Likewise.
8343
8344 2018-06-10  Tom Tromey  <tom@tromey.com>
8345
8346         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8347         declare VEC.  Add constructor.
8348         <in_target_beneath>: Now bool.
8349         (record_full_breakpoints): Now a std::vector, static.
8350         (record_full_sync_record_breakpoints)
8351         (record_full_init_record_breakpoints)
8352         (record_full_target::insert_breakpoint)
8353         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8354
8355 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8356
8357         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8358         * serial.c (serial_interface_lookup): Remove struct keyword.
8359
8360 2018-06-10  Tom Tromey  <tom@tromey.com>
8361
8362         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8363         method.
8364         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8365         a method.
8366         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8367         method.
8368         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8369         "beneath" as a method.
8370         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8371         Use "beneath" as a method.
8372
8373 2018-06-10  Tom Tromey  <tom@tromey.com>
8374
8375         * tracefile.c (struct trace_file_writer_deleter): New.
8376         <operator()>: Rename from trace_file_writer_xfree.
8377         (trace_file_writer_up): New typedef.
8378         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8379
8380 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8381
8382         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8383         <m_registers, m_register_status>: Change type to
8384         std::unique_ptr.
8385         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8386         XCNEWVEC.
8387
8388 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8389
8390         * common/common-regcache.h (enum register_status): Add
8391         underlying type "signed char".
8392         * regcache.h (reg_buffer) <m_register_status>: Change type to
8393         register_status *.
8394         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8395         register_status instead of signed char.
8396         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8397         (reg_buffer::get_register_status): Remove cast.
8398         (readable_regcache::raw_read): Remove cast.
8399         (readable_regcache::cooked_read): Remove cast.
8400
8401 2018-06-09  Tom Tromey  <tom@tromey.com>
8402
8403         * source.c (reverse_search_command, forward_search_command): Use
8404         scoped_fd.
8405
8406 2018-06-09  Tom Tromey  <tom@tromey.com>
8407
8408         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8409         (serial_ops_list): Now static, std::vector.
8410         (serial_interface_lookup, serial_add_interface): Update.
8411
8412 2018-06-09  Tom Tromey  <tom@tromey.com>
8413
8414         * dwarf2read.c (process_cu_includes): Update.
8415         (process_full_comp_unit): Update.
8416         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8417         std::vector.
8418
8419 2018-06-08  Paul Koning  <paul_koning@dell.com>
8420
8421         PR gdb/23252
8422
8423         * python/python.c (do_start_initialization):
8424         Avoid call to internal Python API.
8425         (init__gdb_module): New function.
8426
8427 2018-06-08  Gary Benson <gbenson@redhat.com>
8428
8429         * linux-thread-db.c (valprint.h): New include.
8430         (struct check_thread_db_info): New structure.
8431         (check_thread_db_on_load, tdb_testinfo): New static globals.
8432         (check_thread_db, check_thread_db_callback): New functions.
8433         (try_thread_db_load_1): Run integrity checks if requested.
8434         (maintenance_check_libthread_db): New function.
8435         (_initialize_thread_db): Register "maint check libthread-db"
8436         and "maint set/show check-libthread-db".
8437         * NEWS: Mention the above new commands.
8438
8439 2018-06-08  Tom Tromey  <tom@tromey.com>
8440
8441         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8442         now a method.
8443
8444 2018-06-08  Tom Tromey  <tom@tromey.com>
8445
8446         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8447
8448 2018-06-08  Tom Tromey  <tom@tromey.com>
8449
8450         * common/btrace-common.h (struct btrace_data): Add constructor,
8451         destructor, move assignment operator.
8452         <empty, clear, fini>: New methods.
8453         <format>: Initialize.
8454         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8455         (btrace_data_empty): Don't declare.
8456         * common/btrace-common.c (btrace_data_init): Remove.
8457         (btrace_data::fini): Rename from btrace_data_fini.
8458         (btrace_data::empty): Rename from btrace_data_empty.
8459         (btrace_data::clear): Rename from btrace_data_clear.  Return
8460         bool.
8461         * btrace.h (make_cleanup_btrace_data): Don't declare.
8462         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8463         (parse_xml_btrace): Update.
8464         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8465         (maint_btrace_clear_packet_history_cmd): Update.
8466
8467 2018-06-07  Pedro Alves  <palves@redhat.com>
8468
8469         * target.h (target_ops) <beneath>: Now a method.  All references
8470         updated.
8471         (class target_stack): New.
8472         * target.c (g_target_stack): New.
8473         (g_current_top_target): Delete.
8474         (current_top_target): Get the top target out of g_target_stack.
8475         (target_stack::push, target_stack::unpush): New.
8476         (push_target, unpush_target): Reimplement.
8477         (target_is_pushed): Reimplement in terms of g_target_stack.
8478         (target_ops::beneath, target_stack::find_beneath): New.
8479
8480 2018-06-07  Pedro Alves  <palves@redhat.com>
8481
8482         * target.h (find_target_beneath): Delete declaration.
8483         * target.c (find_target_beneath): Delete definition.
8484         * aix-thread.c: All callers of find_target_beneath adjusted to
8485         call target_ops::beneath instead.
8486         * bsd-uthread.c: Likewise.
8487         * linux-thread-db.c: Likewise.
8488         * ravenscar-thread.c: Likewise.
8489         * sol-thread.c: Likewise.
8490         * spu-multiarch.c: Likewise.
8491
8492 2018-06-07  Pedro Alves  <palves@redhat.com>
8493
8494         * target.h (target_ops) <beneath>: Now a method.  All references
8495         updated.
8496         (target_ops) <m_beneath>: New.
8497         * target.c (target_ops::beneath): New.
8498         * corelow.c: Adjust all references to target_ops::beneath.
8499         * linux-thread-db.c: Likewise.
8500         * make-target-delegates: Likewise.
8501         * record-btrace.c: Likewise.
8502         * record-full.c: Likewise.
8503         * remote.c: Likewise.
8504         * target.c: Likewise.
8505         * target-delegates.c: Regenerate.
8506
8507 2018-06-07  Pedro Alves  <palves@redhat.com>
8508
8509         * target.h (target_stack): Delete.
8510         (current_top_target): Declare function.
8511         * target.c (target_stack): Delete.
8512         (g_current_top_target): New.
8513         (current_top_target): New function.
8514         * auxv.c: Use current_top_target instead of target_stack
8515         throughout.
8516         * avr-tdep.c: Likewise.
8517         * breakpoint.c: Likewise.
8518         * corefile.c: Likewise.
8519         * elfread.c: Likewise.
8520         * eval.c: Likewise.
8521         * exceptions.c: Likewise.
8522         * frame.c: Likewise.
8523         * gdbarch-selftests.c: Likewise.
8524         * gnu-v3-abi.c: Likewise.
8525         * ia64-tdep.c: Likewise.
8526         * ia64-vms-tdep.c: Likewise.
8527         * infcall.c: Likewise.
8528         * infcmd.c: Likewise.
8529         * infrun.c: Likewise.
8530         * linespec.c: Likewise.
8531         * linux-tdep.c: Likewise.
8532         * minsyms.c: Likewise.
8533         * ppc-linux-nat.c: Likewise.
8534         * ppc-linux-tdep.c: Likewise.
8535         * procfs.c: Likewise.
8536         * regcache.c: Likewise.
8537         * remote.c: Likewise.
8538         * rs6000-tdep.c: Likewise.
8539         * s390-linux-nat.c: Likewise.
8540         * s390-tdep.c: Likewise.
8541         * solib-aix.c: Likewise.
8542         * solib-darwin.c: Likewise.
8543         * solib-dsbt.c: Likewise.
8544         * solib-spu.c: Likewise.
8545         * solib-svr4.c: Likewise.
8546         * solib-target.c: Likewise.
8547         * sparc-tdep.c: Likewise.
8548         * sparc64-tdep.c: Likewise.
8549         * spu-tdep.c: Likewise.
8550         * symfile.c: Likewise.
8551         * symtab.c: Likewise.
8552         * target-descriptions.c: Likewise.
8553         * target-memory.c: Likewise.
8554         * target.c: Likewise.
8555         * target.h: Likewise.
8556         * tracefile-tfile.c: Likewise.
8557         * tracepoint.c: Likewise.
8558         * valops.c: Likewise.
8559         * valprint.c: Likewise.
8560         * value.c: Likewise.
8561         * windows-tdep.c: Likewise.
8562         * mi/mi-main.c: Likewise.
8563
8564 2018-06-07  Tom Tromey  <tom@tromey.com>
8565
8566         * valprint.h (build_address_symbolic): Declare.
8567         * printcmd.c (print_address_symbolic): Update.
8568         (build_address_symbolic): Change "name" and "filename" to
8569         std::string.
8570         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8571         Update.
8572         * defs.h (build_address_symbolic): Remove declaration.
8573
8574 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8575
8576         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8577         (aarch64_vnv_type): Add function.
8578         (aarch64_pseudo_register_name): Add V regs for SVE.
8579         (aarch64_pseudo_register_type): Likewise.
8580         (aarch64_pseudo_register_reggroup_p): Likewise.
8581         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8582         (aarch64_pseudo_read_value): Add V regs for SVE.
8583         (aarch64_pseudo_write_2): Use V0 offset for SVE
8584         (aarch64_pseudo_write): Add V regs for SVE.
8585         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8586
8587 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8588
8589         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8590         (sve_vl_from_vq): Likewise.
8591
8592 2018-06-05  Tom Tromey  <tom@tromey.com>
8593
8594         * cli/cli-cmds.c (show_version): Update.
8595         * top.c (print_gdb_version): Add "interactive" parameter.
8596         Update.
8597         * main.c (captured_main_1): Update.
8598         * top.h (print_gdb_version): Add "interactive" parameter and a
8599         comment.
8600
8601 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8602
8603         * common/enum-flags.h: Add trailing semicolon to example in
8604         comment.
8605
8606 2018-06-05  Tom Tromey  <tom@tromey.com>
8607
8608         PR cli/12326:
8609         * NEWS: Add entry about pager.
8610         * utils.c (pagination_disabled_for_command): New global.
8611         (prompt_for_continue): Allow "c" response to prompt.
8612         (reinitialize_more_filter): Clear
8613         pagination_disabled_for_command.
8614         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8615
8616 2018-06-04  Tom Tromey  <tom@tromey.com>
8617
8618         * ada-lang.h (ada_lookup_symbol_list): Update.
8619         * ada-lang.c (resolve_subexp): Update.
8620         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8621         parameter.
8622         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8623         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8624         results parameter to std::vector.
8625         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8626         Update.
8627         * ada-exp.y (block_lookup): Update.
8628         (select_possible_type_sym): Change type of syms.  Remove nsyms
8629         parameter.
8630         (write_var_or_type, write_name_assoc): Update.
8631
8632 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8633
8634         * windows-nat.c (windows_nat_target::xfer_partial): Return
8635         TARGET_XFER_E_IO if we need to delegate to the target beneath
8636         but BENEATH is NULL.
8637
8638 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8639
8640         * Makefile.in (config.status): Add configure.nat as a
8641         dependency.
8642
8643 2018-06-04  Tom Tromey  <tom@tromey.com>
8644
8645         * cp-name-parser.y (cpname_state): Add method declarations.
8646         (HANDLE_QUAL): Update.
8647         (cpname_state::d_grab, cpname_state::fill_comp)
8648         (cpname_state::make_operator, cpname_state::make_dtor)
8649         (cpname_state::make_builtin_type, cpname_state::make_name)
8650         (cpname_state::d_qualify, cpname_state::d_int_type)
8651         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8652         (%union): Move earlier.
8653
8654 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8655
8656         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8657
8658 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8659
8660         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8661         (aarch64_pseudo_write_1): Likewise.
8662         (aarch64_pseudo_read_value): Use helper.
8663         (aarch64_pseudo_write): Likewise.
8664
8665 2018-06-04  Pedro Alves  <palves@redhat.com>
8666
8667         * darwin-nat.c (darwin_ops): Delete.
8668         (darwin_attach_pid): Use get_native_target.
8669
8670 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8671
8672         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8673         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8674
8675 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8676
8677         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8678         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8679         (aarch64_gdbarch_init): Check for SVE.
8680         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8681
8682 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8683
8684         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8685         * aarch64-tdep.h (aarch64_read_description): Likewise.
8686         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8687         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8688         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8689         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8690         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8691
8692 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8693
8694         * value.c (value_fetch_lazy_bitfield): New.
8695         (value_fetch_lazy_memory): New.
8696         (value_fetch_lazy_register): New.
8697         (value_fetch_lazy): Factor out to smaller functions.
8698
8699 2018-06-01  Tom Tromey  <tom@tromey.com>
8700
8701         * cp-name-parser.y (backslashable, represented): Now const.
8702
8703 2018-06-01  Tom Tromey  <tom@tromey.com>
8704
8705         * cp-name-parser.y: Include parser-defs.h.
8706         (parser_fprintf): Remove declaration.
8707
8708 2018-06-01  Tom Tromey  <tom@tromey.com>
8709
8710         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8711         %parse-param.
8712         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8713         (global_result): Remove globals.
8714         (struct cpname_state): New.
8715         (yyparse): Don't declare.
8716         (yylex, yyerror): Move declarations after %union.
8717         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8718         (make_name): Add state parameter.
8719         Update all callers.
8720         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8721         parameter.
8722         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8723         Update.
8724         (yylex): Add lvalp, state parameters.
8725         (yyerror): Add state parameter.
8726         (cp_demangled_name_to_comp): Update.
8727
8728 2018-06-01  Tom Tromey  <tom@tromey.com>
8729
8730         * cp-name-parser.y (parser_fprintf): Declare.
8731         (GDB_YY_REMAP_PREFIX): Define.
8732         Include yy-remap.h.  Don't redefine yy* identifiers.
8733
8734 2018-06-01  Tom Tromey  <tom@tromey.com>
8735
8736         * python/py-type.c (typy_legacy_template_argument): Update.
8737         * cp-support.h (cp_demangled_name_to_comp): Update.
8738         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8739         parameter to be a "std::string *".
8740         (main): Update.
8741
8742 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8743
8744         * ada-lex.l: Include "diagnostics.h" instead of
8745         "common/diagnostics.h".
8746         * unittests/environ-selftests.c: Likewise.
8747         * common/diagnostics.h: Moved to ../include.
8748
8749 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8750
8751         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8752         to language_mode_manual while calling breakpoint_re_set_one.
8753
8754 2018-06-01  Tom Tromey  <tom@tromey.com>
8755
8756         * valops.c (value_cast_structs, destructor_name_p): Update.
8757         * symtab.c (gdb_mangle_name): Update.
8758         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8759         Update.
8760         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8761         (pascal_object_print_value_fields, pascal_object_print_value):
8762         Update.
8763         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8764         * linespec.c (find_methods): Update.
8765         * gdbtypes.h (type_name_no_tag): Remove.
8766         (type_name_or_error): Rename from type_name_no_tag_or_error.
8767         * gdbtypes.c (type_name_no_tag): Remove.
8768         (type_name_or_error): Rename from type_name_no_tag_or_error.
8769         (lookup_struct_elt_type, check_typedef): Update.
8770         * expprint.c (print_subexp_standard): Update.
8771         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8772         * d-namespace.c (d_lookup_nested_symbol): Update.
8773         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8774         (cp_print_class_member): Update.
8775         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8776         * completer.c (add_struct_fields): Update.
8777         * c-typeprint.c (cp_type_print_derivation_info)
8778         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8779         Update.
8780         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8781         (ada_prefer_type, ada_is_exception_sym): Update.
8782
8783 2018-06-01  Tom Tromey  <tom@tromey.com>
8784
8785         * valops.c (enum_constant_from_type, value_namespace_elt)
8786         (value_maybe_namespace_elt): Update.
8787         * valarith.c (find_size_for_pointer_math): Update.
8788         * target-descriptions.c (make_gdb_type): Update.
8789         * symmisc.c (print_symbol): Update.
8790         * stabsread.c (define_symbol, read_type)
8791         (complain_about_struct_wipeout, add_undefined_type)
8792         (cleanup_undefined_types_1): Update.
8793         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8794         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8795         (rust_internal_print_type, rust_composite_type)
8796         (rust_evaluate_funcall, rust_evaluate_subexp)
8797         (rust_inclusive_range_type_p): Update.
8798         * python/py-type.c (typy_get_tag): Update.
8799         * p-typeprint.c (pascal_type_print_base): Update.
8800         * mdebugread.c (parse_symbol, parse_type): Update.
8801         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8802         Update.
8803         * guile/scm-type.c (gdbscm_type_tag): Update.
8804         * go-lang.c (sixg_string_p): Update.
8805         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8806         Update.
8807         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8808         (TYPE_TAG_NAME): Remove.
8809         * gdbtypes.c (type_name_no_tag): Simplify.
8810         (check_typedef, check_types_equal, recursive_dump_type)
8811         (copy_type_recursive, arch_composite_type): Update.
8812         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8813         in summary mode when needed.
8814         * eval.c (evaluate_funcall): Update.
8815         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8816         (process_structure_scope, read_enumeration_type)
8817         (read_namespace_type, read_module_type, determine_prefix): Update.
8818         * cp-support.c (inspect_type): Update.
8819         * coffread.c (process_coff_symbol, decode_base_type): Update.
8820         * c-varobj.c (c_is_path_expr_parent): Update.
8821         * c-typeprint.c (c_type_print_base_struct_union): Update.
8822         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8823         summary when using C language.
8824         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8825         (gen_maybe_namespace_elt): Update.
8826         * ada-lang.c (ada_type_name): Simplify.
8827         (empty_record, ada_template_to_fixed_record_type_1)
8828         (template_to_static_fixed_type)
8829         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8830
8831 2018-06-01  Tom Tromey  <tom@tromey.com>
8832
8833         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8834         c_print_type.
8835         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8836         (c_print_type): Update.
8837         (c_print_type): New overload.
8838         (c_type_print_varspec_prefix, c_type_print_args)
8839         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8840         (c_type_print_base_struct_union, c_type_print_base_1)
8841         (cp_type_print_method_args): Add "language" parameter.
8842         (c_type_print_base): Update.
8843         * c-lang.h (c_print_type): Add new overload.
8844
8845 2018-06-01  Tom Tromey  <tom@tromey.com>
8846
8847         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8848         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8849
8850 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8851
8852         * aarch64-tdep.c (aarch64_sve_register_names): New const
8853         var.
8854         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8855         (AARCH64_SVE_Z_REGS_NUM): New define.
8856         (AARCH64_SVE_P_REGS_NUM): Likewise.
8857         (AARCH64_SVE_NUM_REGS): Likewise.
8858
8859 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8860
8861         * nat/linux-ptrace.h [__alpha__]
8862         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8863         definitions.
8864
8865 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8866
8867         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8868         the endianness selected.
8869         * NEWS: Document `set endian auto' mode operation update.
8870
8871 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8872
8873         * Makefile.in: Add new header.
8874         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8875         (sve_vl_from_vg): Likewise.
8876         (sve_vq_from_vl): Likewise.
8877         (sve_vl_from_vq): Likewise.
8878         (sve_vq_from_vg): Likewise.
8879         (sve_vg_from_vq): Likewise.
8880         * configure.nat: Add new c file.
8881         * nat/aarch64-sve-linux-ptrace.c: New file.
8882         * nat/aarch64-sve-linux-ptrace.h: New file.
8883
8884 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8885
8886         * aarch64-linux-nat.c (aarch64_linux_read_description):
8887         Add parmeter zero.
8888         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8889         Likewise.
8890         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8891         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8892         (aarch64_gdbarch_init): Add parmeter zero.
8893         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8894         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8895         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8896         parmeter.
8897         * doc/gdb.texinfo: Describe SVE feature
8898         * features/aarch64-sve.c: New file.
8899
8900 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8901
8902         PR gdb/23210
8903         * gdbarch.sh (significant_addr_bit): Default to zero when
8904         not set by target architecture.
8905         * gdbarch.c: Re-generated.
8906         * utils.c (address_significant): Update.
8907
8908 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8909
8910         * stack.c (func_command): Remove trailing newline in call to error.
8911
8912 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8913
8914         * regcache.h (regcache_raw_collect): Remove, update callers to
8915         use regcache::raw_collect.
8916         * regcache.c (regcache_raw_collect): Remove.
8917
8918 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8919
8920         * regcache.h (regcache_raw_supply): Remove, update callers to
8921         use detached_regcache::raw_supply.
8922         * regcache.c (regcache_raw_supply): Remove.
8923
8924 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8925
8926         * regcache.h (regcache_cooked_write_part): Remove, update
8927         callers to use regcache::cooked_write_part.
8928         * regcache.c (regcache_cooked_write_part): Remove.
8929
8930 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8931
8932         * regcache.h (regcache_cooked_read_part): Remove, update callers
8933         to use readable_regcache::cooked_read_part.
8934         * regcache.c (regcache_cooked_read_part): Remove.
8935
8936 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8937
8938         * regcache.h (regcache_cooked_read_value): Remove, update
8939         callers to use readable_regcache::cooked_read_value.
8940         * regcache.c (regcache_cooked_read_value): Remove.
8941
8942 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8943
8944         * regcache.h (regcache_cooked_write): Remove, update callers to
8945         use regcache::cooked_write.
8946         * regcache.c (regcache_cooked_write): Remove.
8947
8948 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8949
8950         * regcache.h (regcache_invalidate): Remove, update callers to
8951         use detached_regcache::invalidate instead.
8952         * regcache.c (regcache_invalidate): Remove.
8953
8954 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8955
8956         * regcache.h (regcache_raw_write_part): Remove, update callers
8957         to use regcache::raw_write_part instead.
8958         * regcache.c (regcache_raw_write_part): Remove.
8959
8960 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8961
8962         * regcache.h (regcache_raw_read_part): Remove, update callers to
8963         use readable_regcache::raw_read_part instead.
8964         * regcache.c (regcache_raw_read_part): Remove.
8965
8966 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8967
8968         * regcache.h (regcache_cooked_read): Remove, update callers to
8969         use readable_regcache::cooked_read instead.
8970         * regcache.c (regcache_cooked_read): Remove.
8971
8972 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8973
8974         * regcache.h (regcache_raw_write): Remove, update callers to use
8975         regcache::raw_write instead.
8976         * regcache.c (regcache_raw_write): Remove.
8977
8978 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8979
8980         * regcache.h (regcache_raw_read): Remove, update callers to use
8981         readable_regcache::raw_read instead.
8982         * regcache.c (regcache_raw_read): Remove.
8983
8984 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8985
8986         * regcache.h (regcache_raw_update): Remove, update callers to
8987         use readable_regcache::raw_update instead.
8988         * regcache.c (regcache_raw_update): Remove.
8989
8990 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8991
8992         * regcache.h (regcache_register_status): Remove, update callers
8993         to use reg_buffer::get_register_status directly instead.
8994         * regcache.c (regcache_register_status): Remove.
8995
8996 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8997
8998         * regcache.h (regcache_get_ptid): Remove, update all callers to
8999         call regcache::ptid instead.
9000         * regcache.c (regcache_get_ptid): Remove.
9001
9002 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9003
9004         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9005
9006 2018-05-30  Pedro Alves  <palves@redhat.com>
9007
9008         * common/common-exceptions.h (exception_rethrow): Use
9009         ATTRIBUTE_NORETURN.
9010
9011 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9012
9013         * breakpoint.c (print_solib_event, check_status_catch_solib):
9014         Remove struct keyword in range-based for loops.
9015         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9016         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9017         Likewise.
9018         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9019         Likewise.
9020         * symfile.c (addr_info_make_relative): Likewise.
9021         * thread.c (value_in_thread_stack_temporaries): Likewise.
9022
9023 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9024
9025         PR gdb/16841
9026         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9027         aggregate type to get its real type before accessing it.
9028
9029 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9030
9031         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9032         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9033         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9034         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9035         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9036         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9037         * printcmd.c (info_address_command): Likewise.
9038
9039 2018-05-29  Tom Tromey  <tom@tromey.com>
9040
9041         * windows-nat.c (handle_exception): Update fall-through comment.
9042
9043 2018-05-29  Tom Tromey  <tom@tromey.com>
9044
9045         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9046         (struct program_space) <added_solibs>: Now a std::vector.
9047         * breakpoint.c (print_solib_event): Update.
9048         (check_status_catch_solib): Update.
9049         * progspace.c (clear_program_space_solib_cache): Update.
9050         * solib.c (update_solib_list): Update.
9051
9052 2018-05-29  Tom Tromey  <tom@tromey.com>
9053
9054         * python/py-type.c (typy_richcompare): Update.
9055         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9056         * gdbtypes.h (types_deeply_equal): Return bool.
9057         (types_equal): Likewise.
9058         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9059         declare VEC.
9060         (check_types_equal): Change worklist to std::vector.  Return
9061         bool.
9062         (struct type_equality_entry): Add constructor.
9063         (compare_maybe_null_strings): Return bool.
9064         (check_types_worklist): Return bool.  Change worklist to
9065         std::vector.
9066         (types_deeply_equal): Use std::vector.
9067         (types_equal): Return bool.
9068         (compare_maybe_null_strings): Simplify.
9069
9070 2018-05-29  Tom Tromey  <tom@tromey.com>
9071
9072         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9073
9074 2018-05-29  Tom Tromey  <tom@tromey.com>
9075
9076         * objc-lang.h: Don't include cp-support.h.
9077         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9078         declare VEC.
9079
9080 2018-05-27  Tom Tromey  <tom@tromey.com>
9081
9082         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9083
9084 2018-05-25  Tom Tromey  <tom@tromey.com>
9085
9086         * value.c (value::location): Initialize.
9087
9088 2018-05-25  Tom Tromey  <tom@tromey.com>
9089
9090         * dbxread.c (init_bincl_list): Remove.
9091         (bincl_list): Now a std::vector.
9092         (bincls_allocated, next_bincl): Remove.
9093         (free_bincl_list, do_free_bincl_list_cleanup)
9094         (make_cleanup_free_bincl_list): Remove.
9095         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9096         unique_xmalloc_ptr.
9097         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9098         (struct header_file_location): Add constructor.
9099         (add_bincl_to_list): Remove.
9100
9101 2018-05-25  Tom Tromey  <tom@tromey.com>
9102
9103         * tui/tui.c (tui_enable): Update.
9104         * mi/mi-interp.c (mi_interp::init): Update.
9105         * interps.h (class interp) <name>: New method.
9106         <m_name>: Rename from name.
9107         (~scoped_restore_interp): Update.
9108         * interps.c (interp::interp): Update.
9109         (interp_add, interp_set, interp_lookup_existing)
9110         (current_interp_named_p): Update.
9111
9112 2018-05-25  Tom Tromey  <tom@tromey.com>
9113
9114         * interps.c (interp_name): Remove.
9115         * mi/mi-interp.c (mi_interp::init): Update.
9116         * interps.h (interp_name): Remove.
9117         (~scoped_restore_interp): Update.
9118         * tui/tui.c (tui_enable): Update.
9119
9120 2018-05-25  Tom Tromey  <tom@tromey.com>
9121
9122         * utils.c (fputs_maybe_filtered): Update.
9123         * linespec.c (decode_line_full): Update.
9124         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9125         (mi_print_breakpoint_for_event, mi_solib_loaded)
9126         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9127         (mi_user_selected_context_changed): Update.
9128         * mi/mi-main.c (mi_execute_command): Update.
9129         * cli/cli-script.c (execute_control_command): Update.
9130         * python/python.c (execute_gdb_command): Update.
9131         * solib.c (info_sharedlibrary_command): Update.
9132         * interps.c (interp_ui_out): Remove.
9133         * interps.h (interp_ui_out): Remove.
9134
9135 2018-05-25  Tom Tromey  <tom@tromey.com>
9136
9137         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9138         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9139         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9140
9141 2018-05-25  Tom Tromey  <tom@tromey.com>
9142
9143         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9144         * interps.c (interp_exec): Use scoped_restore.
9145
9146 2018-05-25  Tom Tromey  <tom@tromey.com>
9147
9148         * remote.c (remote_target::remote_file_get): Use
9149         gdb::byte_vector.
9150         (remote_target::remote_file_put): Likewise.
9151
9152 2018-05-25  Tom Tromey  <tom@tromey.com>
9153
9154         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9155         a std::string.
9156         (get_pe_section_index, add_pe_exported_sym): Update.
9157         (read_pe_exported_syms): Use gdb::def_vector.
9158
9159 2018-05-25  Tom Tromey  <tom@tromey.com>
9160
9161         * frame.c (remove_prev_frame): Remove.
9162         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9163
9164 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9165
9166         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9167         Remove prototypes.
9168         * mips-linux-nat.c (supply_fpregset): Always call
9169         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9170         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9171         `mips_fill_fpregset'.
9172         * mips-linux-tdep.c (mips_supply_fpregset)
9173         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9174         (mips_fill_fpregset_wrapper): Remove functions.
9175         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9176         (mips_linux_fpregset): Remove variable.
9177         (mips_linux_iterate_over_regset_sections): Use
9178         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9179         (mips_linux_o32_sigframe_init): Remove comment.
9180
9181 2018-05-25  Pedro Alves  <palves@redhat.com>
9182
9183         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9184         (struct readahead_cache, struct packet_reg, struct
9185         remote_arch_state, class remote_state): Move higher up in the
9186         file.
9187         (remote_target::m_remote_state): Now an object instead of a pointer.
9188         (remote_target::get_remote_state): Adjust.
9189
9190 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9191
9192         * stack.c (select_and_print_frame): Delete.
9193         (struct function_bounds): Move struct within function.
9194         (func_command): Most content moved into new function
9195         find_frame_for_function, use new function, print result, add
9196         function comment.
9197         (find_frame_for_function): New function, now returns a result.
9198
9199 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9200
9201         * stack.c (iterate_over_block_arg_vars): Fix comment.
9202         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9203
9204 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9205
9206         PR gdb/23203
9207         * frame.c
9208         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9209         Define.
9210         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9211         Define.
9212         * frame.h (class scoped_restore_selected_frame): New class.
9213         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9214         of any exception, use scoped_restore_selected_frame to restore the
9215         frame instead.
9216
9217 2018-05-24  Pedro Alves  <palves@redhat.com>
9218
9219         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9220         override.
9221
9222 2018-05-23  Tom Tromey  <tom@tromey.com>
9223
9224         * complaints.c (struct complaints): Remove.
9225         (symfile_complaint_book): Remove.
9226         (series): New global.
9227         (complaint_internal): Update.
9228         (clear_complaints): Update.
9229
9230 2018-05-23  Tom Tromey  <tom@tromey.com>
9231
9232         * complaints.c (counters): New global.
9233         (struct complain): Remove.
9234         (struct complaints) <root>: Remove.
9235         (complaint_sentinel): Remove.
9236         (symfile_complaint_book): Update.
9237         (find_complaint) Remove.
9238         (complaint_internal, clear_complaints): Update.
9239
9240 2018-05-23  Tom Tromey  <tom@tromey.com>
9241
9242         * complaints.c (struct complain) <file, line>: Remove.
9243         (find_complaint): Remove file, line parameters.
9244         (complaint_internal): Update.
9245
9246 2018-05-23  Tom Tromey  <tom@tromey.com>
9247
9248         * complaints.c (vcomplaint): Remove.
9249         (complaint_internal) Merge in contents of vcomplaint.
9250
9251 2018-05-23  Tom Tromey  <tom@tromey.com>
9252
9253         * complaints.c (struct complaints) <explanation>: Remove.
9254         (symfile_explanations): Remove.
9255         (symfile_complaint_book): Update.
9256         (vcomplaint): Update.
9257         (struct explanation): Remove.
9258
9259 2018-05-23  Tom Tromey  <tom@tromey.com>
9260
9261         * complaints.c (symfile_complaints): Remove.
9262         (complaint_internal): Remove "complaints" parameter.
9263         (clear_complaints, vcomplaint): Remove "c" parameter.
9264         (get_complaints): Remove.
9265         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9266         (dwarf2_debug_line_missing_file_complaint)
9267         (dwarf2_debug_line_missing_end_sequence_complaint)
9268         (dwarf2_complex_location_expr_complaint)
9269         (dwarf2_const_value_length_mismatch_complaint)
9270         (dwarf2_section_buffer_overflow_complaint)
9271         (dwarf2_macro_malformed_definition_complaint)
9272         (dwarf2_invalid_attrib_class_complaint)
9273         (create_addrmap_from_index, dw2_symtab_iter_next)
9274         (dw2_expand_marked_cus)
9275         (dw2_debug_names_iterator::find_vec_in_debug_names)
9276         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9277         (create_debug_type_hash_table, init_cutu_and_read_dies)
9278         (partial_die_parent_scope, add_partial_enumeration)
9279         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9280         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9281         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9282         (create_cus_hash_table, create_dwp_hash_table)
9283         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9284         (dwarf2_rnglists_process, dwarf2_ranges_process)
9285         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9286         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9287         (handle_struct_member_die, process_structure_scope)
9288         (read_array_type, read_common_block, read_module_type)
9289         (read_tag_pointer_type, read_typedef, read_base_type)
9290         (read_subrange_type, load_partial_dies, partial_die_info::read)
9291         (partial_die_info::read, partial_die_info::read)
9292         (partial_die_info::read, read_checked_initial_length_and_offset)
9293         (dwarf2_string_attr, read_formatted_entries)
9294         (dwarf_decode_line_header)
9295         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9296         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9297         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9298         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9299         (get_signatured_type, get_DW_AT_signature_type)
9300         (decode_locdesc, file_file_name, consume_improper_spaces)
9301         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9302         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9303         (dwarf2_symbol_mark_computed, set_die_type)
9304         (read_attribute_value): Update.
9305         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9306         Update.
9307         * dbxread.c (unknown_symtype_complaint)
9308         (lbrac_mismatch_complaint, repeated_header_complaint)
9309         (set_namestring, function_outside_compilation_unit_complaint)
9310         (read_dbx_symtab, process_one_symbol): Update.
9311         * gdbtypes.c (stub_noname_complaint): Update.
9312         * windows-nat.c (handle_unload_dll): Update.
9313         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9314         (decode_base_type): Update.
9315         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9316         (eb_complaint, record_include_begin, record_include_end)
9317         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9318         (process_xcoff_symbol, read_symbol)
9319         (function_outside_compilation_unit_complaint)
9320         (scan_xcoff_symtab): Update.
9321         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9322         * buildsym.c (finish_block_internal, make_blockvector)
9323         (end_symtab_get_static_block, augment_type_symtab): Update.
9324         * dtrace-probe.c (dtrace_process_dof)
9325         (dtrace_static_probe_ops::get_probes): Update.
9326         * complaints.h (struct complaint): Don't declare.
9327         (symfile_complaints): Remove.
9328         (complaint_internal): Remove "complaints" parameter.
9329         (complaint): Likewise.
9330         (clear_complaints): Likewise.
9331         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9332         (reread_symbols): Update.
9333         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9334         (dwarf2_frame_cache, decode_frame_entry): Update.
9335         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9336         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9337         (info_selectors_command): Update.
9338         * macrotab.c (macro_include, check_for_redefinition)
9339         (macro_undef): Update.
9340         * objfiles.c (filter_overlapping_sections): Update.
9341         * stabsread.c (invalid_cpp_abbrev_complaint)
9342         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9343         (define_symbol, error_type, read_type, rs6000_builtin_type)
9344         (stabs_method_name_from_physname, read_member_functions)
9345         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9346         (attach_fields_to_type, complain_about_struct_wipeout)
9347         (read_range_type, read_args, common_block_start)
9348         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9349         Update.
9350         * mdebugread.c (index_complaint, unknown_ext_complaint)
9351         (basic_type_complaint, bad_tag_guess_complaint)
9352         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9353         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9354         (parse_procedure, parse_lines)
9355         (function_outside_compilation_unit_complaint)
9356         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9357         (bad_tag_guess_complaint, reg_value_complaint): Update.
9358         * cp-support.c (demangled_name_complaint): Update.
9359         * macroscope.c (sal_macro_scope): Update.
9360         * dwarf-index-write.c (class debug_names): Update.
9361
9362 2018-05-23  Tom Tromey  <tom@tromey.com>
9363
9364         * complaints.c (clear_complaints): Remove "noisy" parameter.
9365         * complaints.h (clear_complaints): Update.
9366         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9367         (reread_symbols): Update.
9368
9369 2018-05-23  Tom Tromey  <tom@tromey.com>
9370
9371         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9372         SUBSEQUENT_MESSAGE.
9373         (vcomplaint, clear_complaints): Update.
9374         (symfile_explanations): Remove some messages.
9375
9376 2018-05-23  Tom Tromey  <tom@tromey.com>
9377
9378         * complaints.c (internal_complaint): Remove.
9379         * complaints.h (internal_complaint): Remove.
9380
9381 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9382
9383         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9384
9385 2018-05-22  Pedro Alves  <palves@redhat.com>
9386
9387         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9388         (remote_fileio_badfd, remote_fileio_return_errno)
9389         (remote_fileio_return_success, remote_fileio_func_open)
9390         (remote_fileio_func_open, remote_fileio_func_close)
9391         (remote_fileio_func_read, remote_fileio_func_write)
9392         (remote_fileio_func_lseek, remote_fileio_func_rename)
9393         (remote_fileio_func_unlink, remote_fileio_func_stat)
9394         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9395         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9396         remote_target parameter.
9397         (remote_fio_func_map) <func>: Add remote_target parameter.
9398         (do_remote_fileio_request, remote_fileio_request):
9399         * remote-fileio.h (remote_fileio_request):
9400         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9401         remote_target parameter.
9402         (remote_notif_process, handle_notification): Adjust to pass down
9403         the remote.
9404         (remote_notif_state_allocate): Add remote_target parameter.  Save
9405         it.
9406         * remote-notif.h (struct remote_target): Forward declare.
9407         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9408         remote_target parameter.
9409         (struct remote_notif_state) <remote>: New field.
9410         (remote_notif_ack, remote_notif_parse): Add remote_target
9411         parameter.
9412         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9413         remote_target parameter.
9414         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9415         (threads_listing_context, rmt_thread_action, protocol_feature)
9416         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9417         (packet_result, struct threads_listing_context, remote_state):
9418         Move definitions and declarations higher up.
9419         (remote_target) <~remote_target>: Declare.
9420         (remote_download_command_source, remote_file_put, remote_file_get)
9421         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9422         (remote_hostio_pread_vFile, remote_hostio_send_command)
9423         (remote_hostio_set_filesystem, remote_hostio_open)
9424         (remote_hostio_close, remote_hostio_unlink, remote_state)
9425         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9426         (get_memory_write_packet_size, get_memory_read_packet_size)
9427         (append_pending_thread_resumptions, remote_detach_1)
9428         (append_resumption, remote_resume_with_vcont)
9429         (add_current_inferior_and_thread, wait_ns, wait_as)
9430         (process_stop_reply, remote_notice_new_inferior)
9431         (process_initial_stop_replies, remote_add_thread)
9432         (btrace_sync_conf, remote_btrace_maybe_reopen)
9433         (remove_new_fork_children, kill_new_fork_children)
9434         (discard_pending_stop_replies, stop_reply_queue_length)
9435         (check_pending_events_prevent_wildcard_vcont)
9436         (discard_pending_stop_replies_in_queue, stop_reply)
9437         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9438         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9439         (remote_interrupt_as, remote_interrupt_ns)
9440         (remote_get_noisy_reply, remote_query_attached)
9441         (remote_add_inferior, remote_current_thread, get_current_thread)
9442         (set_thread, set_general_thread, set_continue_thread)
9443         (set_general_process, write_ptid)
9444         (remote_unpack_thread_info_response, remote_get_threadinfo)
9445         (parse_threadlist_response, remote_get_threadlist)
9446         (remote_threadlist_iterator, remote_get_threads_with_ql)
9447         (remote_get_threads_with_qxfer)
9448         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9449         (get_offsets, remote_check_symbols, remote_supported_packet)
9450         (remote_query_supported, remote_packet_size)
9451         (remote_serial_quit_handler, remote_detach_pid)
9452         (remote_vcont_probe, remote_resume_with_hc)
9453         (send_interrupt_sequence, interrupt_query)
9454         (remote_notif_get_pending_events, fetch_register_using_p)
9455         (send_g_packet, process_g_packet, fetch_registers_using_g)
9456         (store_register_using_P, store_registers_using_G)
9457         (set_remote_traceframe, check_binary_download)
9458         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9459         (remote_xfer_live_readonly_partial, remote_read_bytes)
9460         (remote_send_printf, remote_flash_write, readchar)
9461         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9462         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9463         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9464         (extended_remote_disable_randomization, extended_remote_run)
9465         (send_environment_packet, extended_remote_environment_support)
9466         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9467         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9468         (packet_command): Now methods of ...
9469         (remote_target): ... this class.
9470         (m_remote_state) <remote_target>: New field.
9471         (struct remote_state) <stop_reply_queue,
9472         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9473         fields.
9474         (remote_state::remote_state): Allocate stop_reply_queue.
9475         (remote_state): Delete global.
9476         (get_remote_state_raw): Delete.
9477         (remote_target::get_remote_state): Allocate m_remote_state on
9478         demand.
9479         (get_current_remote_target): New.
9480         (remote_ops, extended_remote_ops): Delete.
9481         (wait_forever_enabled_p, remote_async_inferior_event_token):
9482         Delete, moved to struct remote_state.
9483         (remote_target::close): Delete self.  Destruction bits split to
9484         ...
9485         (remote_target::~remote_target): ... this.
9486         (show_memory_packet_size): Adjust to use
9487         get_current_remote_target.
9488         (struct protocol_feature) <func>: Add remote_target parameter.
9489         All callers adjusted.
9490         (curr_quit_handler_target): New.
9491         (remote_serial_quit_handler): Reimplement.
9492         (remote_target::open_1): Adjust to use get_current_remote_target.
9493         Heap-allocate remote_target/extended_remote_target instances.
9494         (vcont_builder::vcont_builder): Add remote_target parameter, and
9495         save it in m_remote.  All callers adjusted.
9496         (vcont_builder::m_remote): New field.
9497         (vcont_builder::restart, vcont_builder::flush)
9498         (vcont_builder::push_action): Use it.
9499         (remote_target::commit_resume): Use it.
9500         (struct queue_iter_param) <remote>: New field.
9501         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9502         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9503         (check_pending_event_prevents_wildcard_vcont_callback)
9504         (remote_target::check_pending_events_prevent_wildcard_vcont)
9505         (remote_target::discard_pending_stop_replies)
9506         (remote_target::discard_pending_stop_replies_in_queue)
9507         (remote_target::remote_notif_remove_queued_reply): Fill in
9508         'remote' field.
9509         (remote_notif_get_pending_events): New.
9510         (remote_target::readchar, remote_target::remote_serial_write):
9511         Save/restore curr_quit_handler_target.
9512         (putpkt): New.
9513         (kill_new_fork_children): Fill in 'remote' field.
9514         (packet_command): Use get_current_remote_target, defer to
9515         remote_target method of same name.
9516         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9517         parameter, and save it in m_remote.  All callers adjusted.
9518         (scoped_remote_fd::release): Use m_remote.
9519         (scoped_remote_fd::m_remote): New field.
9520         (remote_file_put, remote_file_get, remote_file_delete): Use
9521         get_current_remote_target, defer to remote_target method of same
9522         name.
9523         (remote_btrace_reset): Add remote_state paremeter.  Update all
9524         callers.
9525         (remote_async_inferior_event_handler). Pass down 'data'.
9526         (remote_new_objfile): Use get_current_remote_target.
9527         (remote_target::vcont_r_supported): New.
9528         (set_range_stepping): Use get_current_remote_target and
9529         remote_target::vcont_r_supported.
9530         (_initialize_remote): Don't allocate 'remote_state' and
9531         'stop_reply_queue' globals.
9532         * remote.h (struct remote_target): Forward declare.
9533         (getpkt, putpkt, remote_notif_get_pending_events): Add
9534         'remote_target' parameter.
9535
9536 2018-05-22  Pedro Alves  <palves@redhat.com>
9537
9538         * remote.c (vcont_builder): Now a class.  Make all data members
9539         private.
9540         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9541         Declare methods.
9542         (vcont_builder_restart): Rename to ...
9543         (vcont_builder::restart): ... this.
9544         (vcont_builder_flush): Rename to ...
9545         (vcont_builder::flush): ... this.
9546         (vcont_builder_push_action): Rename to ...
9547         (vcont_builder::push_action): ... this.
9548         (remote_target::commit_resume): Adjust.
9549
9550 2018-05-22  Pedro Alves  <palves@redhat.com>
9551
9552         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9553         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9554         (get_fixed_memory_packet_size): New.
9555         (get_memory_packet_size): Use it.
9556         (set_memory_packet_size): Don't override the config size with
9557         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9558         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9559         Don't refer to get_memory_packet_size if not connected to a remote
9560         target.  Show "(default)" if configured size is 0.
9561
9562 2018-05-22  Pedro Alves  <palves@redhat.com>
9563
9564         * remote.c (remote_target::mourn_inferior): Move
9565         discard_pending_stop_replies call here from ...
9566         (_initialize_remote): ... here.
9567
9568 2018-05-22  Pedro Alves  <palves@redhat.com>
9569
9570         * remote.c (compare_section_command): Remove set_general_process
9571         call.
9572
9573 2018-05-22  Pedro Alves  <palves@redhat.com>
9574
9575         * remote.c (struct packet_reg, struct remote_arch_state):
9576         Move higher up in the file.
9577         (remote_state) <m_arch_states>: Store remote_arch_state values
9578         instead of remote_arch_state pointers.
9579         (remote_state::get_remote_arch_state): Adjust.
9580
9581 2018-05-22  Pedro Alves  <palves@redhat.com>
9582
9583         * remote.c: Include <unordered_map>.
9584         (remote_state): Now a class.
9585         (remote_state) <get_remote_arch_state>: Declare method.
9586         <get_remote_arch_state>: New field.
9587         (remote_arch_state) <remote_arch_state>: Declare ctor.
9588         <regs>: Now a unique_ptr.
9589         (remote_gdbarch_data_handle): Delete.
9590         (get_remote_arch_state): Delete.
9591         (remote_state::get_remote_arch_state): New.
9592         (get_remote_state): Adjust to call remote_state's
9593         get_remote_arch_state method.
9594         (init_remote_state): Delete, bits factored out to ...
9595         (remote_arch_state::remote_arch_state): ... this new method.
9596         (get_remote_packet_size, get_memory_packet_size)
9597         (process_g_packet, remote_target::fetch_registers)
9598         (remote_target::prepare_to_store, store_registers_using_G)
9599         (remote_target::store_registers, remote_target::get_trace_status):
9600         Adjust to call remote_state's method.
9601         (_initialize_remote): Remove reference to
9602         remote_gdbarch_data_handle.
9603
9604 2018-05-22  Pedro Alves  <palves@redhat.com>
9605
9606         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9607         pread>: New method declarations.
9608         (remote_target::open_1): Adjust.
9609         (readahead_cache_invalidate): Rename to ...
9610         (readahead_cache::invalidate): ... this, and adjust to be a class
9611         method.
9612         (readahead_cache_invalidate_fd): Rename to ...
9613         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9614         class method.
9615         (remote_hostio_pwrite): Adjust.
9616         (remote_hostio_pread_from_cache): Rename to ...
9617         (readahead_cache::pread): ... this, and adjust to be a class
9618         method.
9619         (remote_hostio_close): Adjust.
9620
9621 2018-05-22  Pedro Alves  <palves@redhat.com>
9622
9623         * remote.c (remote_hostio_close_cleanup): Delete.
9624         (class scoped_remote_fd): New.
9625         (remote_file_put, remote_file_get): Use it.
9626
9627 2018-05-22  Pedro Alves  <palves@redhat.com>
9628
9629         (struct vCont_action_support): Use bool and initialize all fields.
9630         (struct readahead_cache): Initialize all fields.
9631         (remote_state): Use bool and initialize all fields.
9632         (remote_state::remote_state, remote_state::~remote_state): New.
9633         (new_remote_state): Delete.
9634         (_initialize_remote): Use new to allocate remote_state.
9635
9636 2018-05-22  Pedro Alves  <palves@redhat.com>
9637             張俊芝  <zjz@zjz.name>
9638
9639         PR gdb/22973
9640         * c-exp.y: Include "c-support.h".
9641         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9642         of tolower.  Use c_ident_is_alpha to scan names.
9643         * c-lang.c: Include "c-support.h".
9644         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9645         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9646         * c-support.h: New file, with bits factored out from ...
9647         * cp-name-parser.y: ... this file.
9648         Include "c-support.h".
9649         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9650         c-support.h and renamed.
9651         (symbol_end, yylex): Adjust.
9652
9653 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9654
9655         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9656         parameter type to CORE_ADDR.
9657         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9658         parameter type in declaration to CORE_ADDR.
9659         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9660         target_auxv_search to get AT_HWCAP and use the result to get the
9661         target description.
9662         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9663         to CORE_ADDR. Remove the cast of the return value to unsigned
9664         long. Fix error predicate of target_auxv_search.
9665         (ppc_linux_nat_target::read_description): Change the type of the
9666         hwcap variable to CORE_ADDR.
9667
9668 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9669
9670         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9671         if the size of fpscr is larger than 32 bits.
9672
9673 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9674
9675         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9676         (ppc32_linux_vsxregmap): New global.
9677         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9678         regcache_supply_regset, and regcache_collect_regset.
9679         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9680         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9681         (fetch_vsx_register, store_vsx_register): Remove.
9682         (fetch_vsx_registers): Add regno parameter. Get regset using
9683         ppc_linux_vsxregset. Use regset to supply registers.
9684         (store_vsx_registers): Add regno parameter. Get regset using
9685         ppc_linux_vsxregset. Use regset to collect registers.
9686         (fetch_register): Call fetch_vsx_registers instead of
9687         fetch_vsx_register.
9688         (store_register): Call store_vsx_registers instead of
9689         store_vsx_register.
9690         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9691         new regno parameter.
9692         (store_ppc_registers): Call store_vsx_registers with -1 for the
9693         new regno parameter.
9694         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9695         (ppc_collect_vsxregset): Remove.
9696
9697 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9698
9699         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9700         offset fields.
9701         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9702         for vector register offset fields.
9703         (ppc64_fbsd_reg_offsets): Likewise.
9704         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9705         to vector register offset fields.
9706         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9707         to vector register offset fields.
9708         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9709         vector register offset fields.
9710         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9711         initializers for vector register offset fields.
9712         (rs6000_aix64_reg_offsets): Likewise.
9713         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9714         (ppc_supply_vrregset): Remove.
9715         (ppc_collect_vrregset): Remove.
9716         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9717         (ppc_linux_vrregset) : New function.
9718         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9719         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9720         (ppc32_linux_vrregset): Remove.
9721         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9722         and use result instead of ppc32_linux_vrregset.
9723         (ppc32_linux_reg_offsets): Remove initializers for vector register
9724         offset fields.
9725         (ppc64_linux_reg_offsets): Likewise.
9726         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9727         * ppc-linux-nat.c: Include regset.h.
9728         (gdb_vrregset_t): Adjust comment to account for little-endian
9729         mode.
9730         (supply_vrregset, fill_vrregset): Remove.
9731         (fetch_altivec_register, store_altivec_register): Remove.
9732         (fetch_altivec_registers): Add regno parameter. Get regset using
9733         ppc_linux_vrregset. Use regset to supply registers.
9734         (store_altivec_registers): Add regno parameter. Get regset using
9735         ppc_linux_vrregset. Use regset to collect registers.
9736         (fetch_register): Call fetch_altivec_registers instead of
9737         fetch_altivec_register.
9738         (store_register): Call store_altivec_registers instead of
9739         store_altivec_register.
9740         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9741         the new regno parameter.
9742         (store_ppc_registers): Call store_altivec_registers with -1 for
9743         the new regno parameter.
9744
9745 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9746
9747         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9748         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9749         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9750         (gdb_vrregset_t): Change array type size to
9751         PPC_LINUX_SIZEOF_VRREGSET.
9752         (gdb_vsxregset_t): Change array type size to
9753         PPC_LINUX_SIZEOF_VSXREGSET.
9754         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9755         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9756         PPC_LINUX_SIZEOF_VSXREGSET.
9757
9758 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9759
9760         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9761         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9762         nat/ppc-linux.c.
9763         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9764         ppc_linux_target_wordsize with tid.
9765         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9766         wordsize with tid.
9767         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9768         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9769         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9770         tid parameter. Remove static specifier.
9771         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9772         (ppc_linux_target_wordsize): New declaration.
9773
9774 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9775
9776         * arch/ppc-linux-common.c: New file.
9777         * arch/ppc-linux-common.h: New file.
9778         * arch/ppc-linux-tdesc.h: New file.
9779         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9780         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9781         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9782         arch/ppc-linux-tdesc.h.
9783         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9784         arch/ppc-linux-tdesc.h.
9785         (ppc_linux_nat_target::read_description): Remove target
9786         description matching code. Fill a ppc_linux_features struct and
9787         call ppc_linux_match_description with it. Move comment about ISA
9788         2.05 to ppc-linux-common.c.
9789         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9790         arch/ppc-linux-tdesc.h.
9791         (ppc_linux_core_read_description): Remove target description
9792         matching code. Fill a ppc_linux_features struct and call
9793         ppc_linux_match_description with it.
9794         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9795         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9796         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9797         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9798         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9799         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9800         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9801         (tdesc_powerpc_e500l): Remove.
9802
9803 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9804
9805         * ada-lang.c (catch_assert_command): Pass empty string instead
9806         of NULL for excep_string argument.
9807
9808 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9809
9810         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9811         the width of the requested register exceeds the width of the
9812         `ptrace' data type.
9813
9814 2018-05-21  Tom Tromey  <tom@tromey.com>
9815
9816         * printcmd.c (output_command): Remove.
9817         (output_command_const): Rename to output_command.
9818         * valprint.h (output_command): Rename from output_command_const.
9819         * tracepoint.c (trace_dump_actions): Call output_command.
9820
9821 2018-05-21  Tom Tromey  <tom@tromey.com>
9822
9823         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9824         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9825         * ada-lang.h (create_ada_exception_catchpoint): Update.
9826         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9827         std::string.
9828         (create_excep_cond_exprs, ~ada_catchpoint)
9829         (should_stop_exception, print_one_exception)
9830         (print_mention_exception, print_recreate_exception): Update.
9831         (ada_get_next_arg): Remove.
9832         (catch_ada_exception_command_split): Use std::string.  Change type
9833         of "excep_string", "cond_string".
9834         (catch_ada_exception_command): Update.
9835         (create_ada_exception_catchpoint): Change type of excep_string.
9836         (ada_exception_sal): Remove excep_string parameter.
9837         (~ada_catchpoint): Remove.
9838
9839 2018-05-21  Tom Tromey  <tom@tromey.com>
9840
9841         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9842         cleanup.
9843
9844 2018-05-21  Tom Tromey  <tom@tromey.com>
9845
9846         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9847         Return unique_xmalloc_ptr.
9848         (print_it_exception): Update.
9849
9850 2018-05-21  Tom Tromey  <tom@tromey.com>
9851
9852         * tracepoint.c (trace_dump_actions): Use std::string.
9853
9854 2018-05-21  Tom Tromey  <tom@tromey.com>
9855
9856         * symfile.c (reread_symbols): Use std::string for original_name.
9857
9858 2018-05-21  Tom Tromey  <tom@tromey.com>
9859
9860         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9861         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9862         constructor.
9863
9864 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9865
9866         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9867         instance to...
9868         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9869         * objfiles.c (get_objfile_bfd_data): Allocate
9870         objfile_per_bfd_storage with obstack_new when allocating on
9871         obstack.
9872
9873 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9874
9875         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9876         OBSTACK_ZALLOC.
9877         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9878         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9879         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9880         (add_pending): Likewise.
9881         (parse_symbol): Likewise.
9882         (parse_partial_symbols): Likewise.
9883         (psymtab_to_symtab_1): Likewise.
9884         (new_psymtab): Likewise.
9885         (elfmdebug_build_psymtabs): Likewise.
9886         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9887         * objfiles.c (get_objfile_bfd_data): Likewise.
9888         (objfile_register_static_link): Likewise.
9889         * psymtab.c (allocate_psymtab): Likewise.
9890         * stabsread.c (read_member_functions): Likewise.
9891         * xcoffread.c (xcoff_end_psymtab): Likewise.
9892
9893 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9894
9895         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9896         compiler supports std::is_trivially_constructible.
9897         * common/poison.h: Include obstack.h.
9898         (IsMallocable): Define to is_trivially_constructible if the
9899         compiler supports it, define to true_type otherwise.
9900         (xobnew): New.
9901         (XOBNEW): Redefine.
9902         (xobnewvec): New.
9903         (XOBNEWVEC): Redefine.
9904         * gdb_obstack.h (obstack_zalloc): New.
9905         (OBSTACK_ZALLOC): Redefine.
9906         (obstack_calloc): New.
9907         (OBSTACK_CALLOC): Redefine.
9908         (obstack_new): New.
9909         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9910         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9911         gdbarch.c.
9912         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9913         obstack_calloc/obstack_zalloc.
9914         (gdbarch_obstack_zalloc): Remove.
9915         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9916
9917 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9918
9919         * stack.c (backtrace_command_1): Remove useless variable int i.
9920
9921 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9922
9923         * stack.c (print_frame_info): Fix comment.
9924
9925 2018-05-18  Tom Tromey  <tom@tromey.com>
9926
9927         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9928         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9929         (~dwarf2_per_objfile): Update
9930         (dwarf2_get_dwz_file): Use new.
9931         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9932         unique_ptr.
9933
9934 2018-05-18  Tom Tromey  <tom@tromey.com>
9935
9936         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9937         unique_ptr.
9938         * dwarf2read.c (struct dwp_file): Add constructor and
9939         initializers.
9940         (open_and_init_dwp_file): Return a unique_ptr.
9941         (dwarf2_per_objfile, create_dwp_hash_table)
9942         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9943         (lookup_dwo_unit_in_dwp): Update.
9944         (open_and_init_dwp_file, get_dwp_file): Update.
9945
9946 2018-05-18  Tom Tromey  <tom@tromey.com>
9947
9948         * dwarf2read.c (dwarf2_per_objfile): Update.
9949         (struct mapped_index): Add initializers.
9950         (dwarf2_read_index): Use new.
9951         (dw2_symtab_iter_init): Update.
9952         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9953         unique_ptr.
9954
9955 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9956
9957         * dwarf2read.c (mapped_index) <total_size>: Remove.
9958
9959 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9960
9961         * unittests/format_pieces-selftests.c (test_format_specifier):
9962         Add ARI comments.
9963
9964 2018-05-18  Tom Tromey  <tom@tromey.com>
9965
9966         * c-typeprint.c (maybe_print_hole): New function.
9967         (c_print_type_struct_field_offset): Update.
9968         (c_type_print_base_struct_union): Call maybe_print_hole.
9969
9970 2018-05-17  Keith Seitz  <keiths@redhat.com>
9971
9972         * breakpoint.c (build_bpstat_chain): New function, moved from
9973         bpstat_stop_status.
9974         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9975         If no stop chain is passed, call build_bpstat_chain to build it.
9976         * breakpoint.h (build_bpstat_chain): Declare.
9977         (bpstat_stop_status): Move documentation here from breakpoint.c.
9978         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9979         build the stop chain and pass it to skip_inline_frames.
9980         Pass this stop chain to bpstat_stop_status.
9981         * inline-frame.c: Include breakpoint.h.
9982         (stopped_by_user_bp_inline_frame): New function.
9983         (skip_inline_frames): Add parameter `stop_chain'.
9984         Move documention to inline-frame.h.
9985         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9986         whether the frame should be elided.
9987         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9988         Add moved documentation and update for new parameter.
9989
9990 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9991
9992         PR cli/14975
9993         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9994         unittests/format_pieces-selftests.c.
9995         * common/format.h (format_piece) <operator==>: New.
9996         (format_pieces) <operator[]>: Remove.
9997         * common/format.c (format_pieces::format_pieces): Handle \e.
9998         * unittests/format_pieces-selftests.c: New.
9999
10000 2018-05-17  Tom Tromey  <tom@tromey.com>
10001
10002         PR symtab/23010:
10003         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10004         (dw2_instantiate_symtab): Add skip_partial parameter.
10005         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10006         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10007         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10008         (dw2_expand_symtabs_matching_one)
10009         (dw2_find_pc_sect_compunit_symtab)
10010         (dw2_debug_names_lookup_symbol)
10011         (dw2_debug_names_expand_symtabs_for_function): Update.
10012         (init_cutu_and_read_dies): Add skip_partial parameter.
10013         (process_psymtab_comp_unit, build_type_psymtabs_1)
10014         (process_skeletonless_type_unit, load_partial_comp_unit)
10015         (psymtab_to_symtab_1): Update.
10016         (load_full_comp_unit): Add skip_partial parameter.
10017         (process_imported_unit_die, dwarf2_read_addr_index)
10018         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10019         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10020         (read_signatured_type): Update.
10021
10022 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10023
10024         * value.c (release_value): Remove unused variable.
10025         (record_latest_value): Likewise.
10026         (access_value_history): Likewise.
10027         (preserve_values): Likewise.
10028
10029 2018-05-17  Tom Tromey  <tom@tromey.com>
10030
10031         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10032         Initialize.
10033
10034 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10035
10036         PR gdb/22286
10037         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10038         Also handle registers whose width is not a multiple of
10039         PTRACE_TYPE_RET.
10040         (linux_nat_trad_target::store_register): Likewise.
10041
10042 2018-05-16  Tom Tromey  <tom@tromey.com>
10043
10044         * gdbcore.h (core_bfd): Redefine.
10045         * corelow.c (core_target::close): Update.
10046         (core_target_open): Update.
10047         * progspace.h (struct program_space) <cbfd>: Now a
10048         gdb_bfd_ref_ptr.
10049
10050 2018-05-16  Tom Tromey  <tom@tromey.com>
10051
10052         PR cli/19551:
10053         * symfile-add-flags.h (enum symfile_add_flags)
10054         <SYMFILE_NOT_FILENAME>: New constant.
10055         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10056         objfile name from BFD.
10057         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10058         * minidebug.c (find_separate_debug_file_in_section): Put
10059         ".gnu_debugdata" into BFD's file name.
10060
10061 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10062
10063         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10064         Remove.
10065
10066 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10067
10068         PR binutils/21446
10069         * aarch64-tdep.c (aarch64_analyze_prologue,
10070         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10071         Indicate not interested in errors.
10072
10073 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10074
10075         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10076         Supply the MIPS_ZERO_REGNUM register.
10077
10078 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10079
10080         * mips-tdep.c (mask_address_var): Make variable static.
10081
10082 2018-05-14  Tom Tromey  <tom@tromey.com>
10083
10084         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10085
10086 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10087
10088         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10089         FXSAVE_ADDR for the mxcsr register.
10090
10091 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10092
10093         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10094
10095 2018-05-11  Pedro Alves  <palves@redhat.com>
10096
10097         * corelow.c (core_target) <core_target>: No longer inline.
10098         Initialize m_core_gdbarch, m_core_vec and build the section table
10099         here.
10100         <~core_target>: New.
10101         <core_gdbarch, get_core_register_section>: New methods.
10102         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10103         factored out from ...
10104         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10105         (core_ops): Delete.
10106         (sniff_core_bfd): Add gdbarch parameter.
10107         (core_close): Delete, merged into ...
10108         (core_target::close): ... here.  Delete self.
10109         (core_close_cleanup): Delete.
10110         (core_target_open): Allocate a core_target on the heap.  Use a
10111         unique_ptr instead of a cleanup.  Bits moved into the core_target
10112         ctor.  Adjust to use core_target methods instead of globals.
10113         (get_core_register_section): Rename to ...
10114         (core_target::get_core_register_section): ... this and adjust.
10115         (struct get_core_registers_cb_data): New.
10116         (get_core_registers_cb): Use it.  Use bool.
10117         (core_target::fetch_registers, core_target::files_info)
10118         (core_target::xfer_partial, core_target::read_description)
10119         (core_target::pid_to, core_target::thread_name): Adjust to
10120         reference class fields instead of globals.
10121         * target.h (struct target_ops_deleter, target_ops_up): New.
10122
10123 2018-05-11  Pedro Alves  <palves@redhat.com>
10124
10125         * corefile.c (core_file_command): Move to corelow.c.
10126         * corelow.c (the_core_target): Delete.
10127         (core_file_command): Moved from corefile.c.  Check exec_bfd
10128         instead of the_core_target.  Use target_detach instead of calling
10129         into the_core_target directly.
10130         (maybe_say_no_core_file_now): New.
10131         (core_target::detach): Use it.
10132         (_initialize_corelow): Remove references to the_core_target.
10133         * gdbcore.h (the_core_target): Delete.
10134
10135 2018-05-11  Tom Tromey  <tromey@redhat.com>
10136             Pedro Alves  <palves@redhat.com>
10137
10138         * corefile.c (core_bfd): Remove.
10139         * gdbcore.h (core_bfd): Now a macro.
10140         * progspace.h (struct program_space) <cbfd>: New field.
10141
10142 2018-05-11  Tom Tromey  <tom@tromey.com>
10143
10144         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10145         gdb::def_vector.
10146
10147 2018-05-10  Tom Tromey  <tom@tromey.com>
10148
10149         * configure: Rebuild.
10150         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10151
10152 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10153
10154         PR server/23158:
10155         * regformats/regdat.sh: Adjust script, following the addition
10156         of the new expedite_regs parameter to init_target_desc.
10157
10158 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10159     
10160         PR gdb/23127
10161         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10162         set_gdbarch_significant_addr_bit.
10163         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10164         set_gdbarch_significant_addr_bit.
10165         * utils.c (address_significant): Update to sign extend addr.
10166
10167 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10168
10169         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10170         (xtensa_linux_init_abi): Limit tdep->num_regs by
10171         tdep->num_nopriv_regs.
10172         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10173         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10174         not initialized.
10175
10176 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10177
10178         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10179
10180 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10181
10182         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10183         (I387_MXCSR_INIT_VAL): New constant.
10184         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10185         buffer if it was supplied by the inferior.
10186         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10187         (i387_xsave_get_clear_bv): New function.
10188         (i387_supply_xsave): Only read x87 control registers from the
10189         xsave buffer if the feature is enabled, and the state will have
10190         been written, otherwise, provide a suitable default.
10191         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10192         including x87 control registers.  Update control registers if they
10193         have changed from the default value, and mark features as enabled
10194         as required.
10195         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10196
10197 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10198
10199         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10200
10201 2018-05-07  Tom Tromey  <tom@tromey.com>
10202
10203         * configure: Rebuild.
10204         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10205
10206 2018-05-07  Tom Tromey  <tom@tromey.com>
10207
10208         PR tdep/20362:
10209         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10210         bit.  Use correct value for VDIV.
10211
10212 2018-05-04  Tom Tromey  <tom@tromey.com>
10213
10214         * configure: Rebuild.
10215         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10216
10217 2018-05-04  Tom Tromey  <tom@tromey.com>
10218
10219         * linux-record.c (record_linux_system_call) <case
10220         RECORD_SYS_RECVFROM>: Add "break".
10221
10222 2018-05-04  Tom Tromey  <tom@tromey.com>
10223
10224         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10225         Add missing "break".
10226         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10227         Add missing "break".
10228
10229 2018-05-04  Tom Tromey  <tom@tromey.com>
10230
10231         * rs6000-tdep.c (ppc_process_record_op4)
10232         (ppc_process_record_op63): Add fall-through comment.
10233
10234 2018-05-04  Tom Tromey  <tom@tromey.com>
10235
10236         * i386-tdep.c (i386_process_record): Add fall-through comment.
10237
10238 2018-05-04  Tom Tromey  <tom@tromey.com>
10239
10240         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10241         comment.
10242
10243 2018-05-04  Tom Tromey  <tom@tromey.com>
10244
10245         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10246         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10247         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10248         comment.
10249         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10250         comment.
10251         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10252         comment.
10253
10254 2018-05-04  Tom Tromey  <tom@tromey.com>
10255
10256         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10257
10258 2018-05-04  Tom Tromey  <tom@tromey.com>
10259
10260         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10261         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10262         * symfile.c (section_is_mapped): Fix fall-through comment.
10263         * stabsread.c (define_symbol, read_member_functions): Fix
10264         fall-through comment.
10265         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10266         comment.
10267         * remote.c (remote_wait_as): Fix fall-through comment.
10268         * p-exp.y (yylex): Fix fall-through comment.
10269         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10270         comment.
10271         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10272         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10273         * jv-exp.y (yylex): Fix fall-through comment.
10274         * go-exp.y (lex_one_token): Fix fall-through comment.
10275         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10276         fall-through comment.
10277         * f-exp.y (yylex): Fix fall-through comment.
10278         * dwarf2read.c (process_die): Fix fall-through comments.
10279         * dbxread.c (process_one_symbol): Fix fall-through comment.
10280         * d-exp.y (lex_one_token): Fix fall-through comment.
10281         * cp-name-parser.y (yylex): Fix fall-through comment.
10282         * coffread.c (coff_symtab_read): Fix fall-through comment.
10283         * c-exp.y (lex_one_token): Fix fall-through comment.
10284         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10285         comment.
10286         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10287         comment.
10288
10289 2018-05-04  Tom Tromey  <tom@tromey.com>
10290
10291         PR python/22730:
10292         * NEWS: Mention gdb.execute change.
10293         * gdbcmd.h (execute_control_command): Don't declare.
10294         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10295         execute_control_commands, execute_control_commands_to_string.
10296         * cli/cli-script.h (execute_control_commands)
10297         (execute_control_commands_to_string): Declare.
10298         (execute_control_command): Add from_tty parameter.
10299         * cli/cli-script.c (execute_control_commands)
10300         (execute_control_commands_to_string): New functions.
10301         (execute_user_command): Use execute_control_commands.
10302         (execute_control_command_1): Add "from_tty" parameter.  Update.
10303         (execute_control_command): Likewise.
10304
10305 2018-05-04  Tom Tromey  <tom@tromey.com>
10306
10307         PR python/22731:
10308         * NEWS: Mention that breakpoint commands are writable.
10309         * python/py-breakpoint.c (bppy_set_commands): New function.
10310         (breakpoint_object_getset) <"commands">: Use it.
10311
10312 2018-05-04  Tom Tromey  <tom@tromey.com>
10313
10314         * tracepoint.c (actions_command): Update.
10315         * mi/mi-cmd-break.c (mi_command_line_array)
10316         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10317         (mi_read_next_line): Remove.
10318         (mi_cmd_break_commands): Update.
10319         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10320         function_view.
10321         * cli/cli-script.c (get_command_line): Update.
10322         (process_next_line): Use function_view.  Constify.
10323         (recurse_read_control_structure, read_command_lines)
10324         (read_command_lines_1): Change argument types to function_view.
10325         (do_define_command, document_command): Update.
10326         * breakpoint.h (check_tracepoint_command): Don't declare.
10327         * breakpoint.c (check_tracepoint_command): Remove.
10328         (commands_command_1, create_tracepoint_from_upload): Update.
10329
10330 2018-05-04  Tom Tromey  <tom@tromey.com>
10331
10332         PR gdb/11750:
10333         * cli/cli-script.h (enum command_control_type) <define_control>:
10334         New constant.
10335         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10336         (build_command_line, execute_control_command_1)
10337         (process_next_line): Likewise.
10338         (do_define_command): New function, extracted from define_command.
10339         (define_command): Use it.
10340
10341 2018-05-04  Tom Tromey  <tom@tromey.com>
10342
10343         * tracepoint.c (actions_command): Update.
10344         * cli/cli-script.h (read_command_lines): Update.
10345         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10346         (MAX_TMPBUF): Remove define.
10347         (define_command): Use string_printf.
10348         (document_command): Likewise.
10349         * breakpoint.c (commands_command_1): Update.
10350
10351 2018-05-04  Tom Tromey  <tom@tromey.com>
10352
10353         * top.c (execute_command): Update.
10354         * cli/cli-script.h (print_command_lines): Now varargs.
10355         * cli/cli-script.c (print_command_lines): Now varargs.
10356         (execute_control_command_1) <case while_control, case if_control>:
10357         Update.
10358
10359 2018-05-04  Tom Tromey  <tom@tromey.com>
10360
10361         * tracepoint.c (all_tracepoint_actions): Rename from
10362         all_tracepoint_actions_and_cleanup.  Change return type.
10363         (actions_command, encode_actions_1, encode_actions)
10364         (trace_dump_actions, tdump_command): Update.
10365         * remote.c (remote_download_command_source): Update.
10366         * python/python.c (gdbpy_eval_from_control_command)
10367         (python_command, python_interactive_command): Update.
10368         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10369         * guile/guile.c (guile_command)
10370         (gdbscm_eval_from_control_command, guile_command): Update.
10371         * compile/compile.c (compile_code_command)
10372         (compile_print_command, compile_to_object): Update.
10373         * cli/cli-script.h (struct command_lines_deleter): New.
10374         (counted_command_line): New typedef.
10375         (struct command_line): Add constructor, destructor.
10376         <body_list>: Remove.
10377         <body_list_0, body_list_1>: New members.
10378         (command_line_up): Remove typedef.
10379         (read_command_lines, read_command_lines_1, get_command_line):
10380         Update.
10381         (copy_command_lines): Don't declare.
10382         * cli/cli-script.c (build_command_line): Use "new".
10383         (get_command_line): Return counted_command_line.
10384         (print_command_lines, execute_user_command)
10385         (execute_control_command_1, while_command, if_command): Update.
10386         (realloc_body_list): Remove.
10387         (process_next_line, recurse_read_control_structure): Update.
10388         (read_command_lines, read_command_lines_1): Return counted_command_line.
10389         (free_command_lines): Use "delete".
10390         (copy_command_lines): Remove.
10391         (define_command, document_command, show_user_1): Update.
10392         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10393         a counted_command_line.
10394         * breakpoint.h (counted_command_line): Remove typedef.
10395         (breakpoint_set_commands): Update.
10396         * breakpoint.c (check_no_tracepoint_commands)
10397         (validate_commands_for_breakpoint): Update.
10398         (breakpoint_set_commands): Change commands to be a
10399         counted_command_line.
10400         (commands_command_1, update_dprintf_command_list)
10401         (create_tracepoint_from_upload): Update.
10402
10403 2018-05-04  Tom Tromey  <tom@tromey.com>
10404
10405         * cli/cli-decode.h (cmd_list_element): New constructor.
10406         (~cmd_list_element): New destructor.
10407         (struct cmd_list_element): Add initializers.
10408         * cli/cli-decode.c (do_add_cmd): Use "new".
10409         (delete_cmd): Use "delete".
10410
10411 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10412             Pedro Alves <palves@redhat.com>
10413
10414         PR breakpoints/19806 and support for PR external/20207.
10415         * NEWS: Mention Aarch64 watchpoint improvements.
10416         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10417         watchpoints and PR external/20207 watchpoints.
10418         * nat/aarch64-linux-hw-point.c
10419         (kernel_supports_any_contiguous_range): New.
10420         (aarch64_watchpoint_offset): New.
10421         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10422         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10423         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10424         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10425         next_addr_orig_p.  Support PR external/20207 watchpoints.
10426         (aarch64_downgrade_regs): New.
10427         (aarch64_dr_state_insert_one_point): New parameters offset and
10428         addr_orig.
10429         (aarch64_dr_state_remove_one_point): Likewise.
10430         (aarch64_handle_breakpoint): Update caller.
10431         (aarch64_handle_aligned_watchpoint): Likewise.
10432         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10433         aligned_offset.
10434         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10435         aarch64_downgrade_regs.
10436         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10437         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10438         (DR_CONTROL_MASK): ... this.
10439         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10440         (unsigned int aarch64_watchpoint_offset): New prototype.
10441         (aarch64_linux_set_debug_regs): Remove const from state.
10442         * utils.c (align_up, align_down): Move to ...
10443         * common/common-utils.c (align_up, align_down): ... here.
10444         * utils.h (align_up, align_down): Move to ...
10445         * common/common-utils.h (align_up, align_down): ... here.
10446
10447 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10448
10449         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10450         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10451         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10452         Re-implement to match the ABI as summarized in GCC's
10453         gcc/config/sparc/sparc.c.  All callers updated.
10454         (sparc32_store_arguments): Remove assertion.
10455
10456 2018-05-04  Tom Tromey  <tom@tromey.com>
10457
10458         * printcmd.c: Don't include tui.h.
10459         (decode_format): Use skip_spaces.
10460
10461 2018-05-04  Tom Tromey  <tom@tromey.com>
10462
10463         PR gdb/22619:
10464         * printcmd.c (last_count): New global.
10465         (x_command): Use saved count when repeating.
10466
10467 2018-05-04  Tom Tromey  <tom@tromey.com>
10468
10469         * nto-procfs.c (do_closedir_cleanup): Remove.
10470         (procfs_pidlist): Use gdb_dir_up.
10471         * procfs.c (do_closedir_cleanup): Remove.
10472         (proc_update_threads): Use gdb_dir_up.
10473         * common/filestuff.h (struct gdb_dir_deleter): New.
10474         (gdb_dir_up): New typedef.
10475
10476 2018-05-04  Tom Tromey  <tom@tromey.com>
10477
10478         * ada-lang.c (print_mention_exception): Use std::string.
10479
10480 2018-05-04  Tom Tromey  <tom@tromey.com>
10481
10482         * ada-lang.c (create_excep_cond_exprs): Update.
10483         (ada_exception_catchpoint_cond_string): Use std::string.
10484
10485 2018-05-04  Tom Tromey  <tom@tromey.com>
10486
10487         * ada-lang.c (xget_renaming_scope): Return std::string.
10488         (old_renaming_is_invisible): Update.
10489
10490 2018-05-04  Tom Tromey  <tom@tromey.com>
10491
10492         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10493         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10494
10495 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10496
10497         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10498
10499 2018-05-04  Tom Tromey  <tom@tromey.com>
10500
10501         * remote.c (remote_query_supported_append): Change type.
10502         (remote_check_symbols): Update.
10503
10504 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10505
10506         PR gdb/11420
10507         * configure.ac: Prepend libpython.
10508         * python/python-config.py: Likewise.
10509         * configure: Regenerate.
10510
10511 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10512
10513         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10514
10515 2018-05-03  Pedro Alves  <palves@redhat.com>
10516
10517         * s390-linux-nat.c
10518         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10519         override.  Write 'true' instead of '1'.
10520         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10521         declaration.
10522
10523 2018-05-02  Pedro Alves  <palves@redhat.com>
10524
10525         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10526         add_inf_child_target.
10527         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10528         add_inf_child_target.
10529         * aix-thread.c (aix_thread_target_info): New.
10530         (aix_thread_target) <shortname, longname, doc>: Delete.
10531         <info>: New.
10532         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10533         add_inf_child_target.
10534         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10535         add_inf_child_target.
10536         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10537         add_inf_child_target.
10538         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10539         add_inf_child_target.
10540         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10541         add_inf_child_target.
10542         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10543         add_inf_child_target.
10544         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10545         add_inf_child_target.
10546         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10547         add_inf_child_target.
10548         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10549         add_inf_child_target.
10550         * bfd-target.c (target_bfd_target_info): New.
10551         (target_bfd) <shortname, longname, doc>: Delete.
10552         <info>: New.
10553         * bsd-kvm.c (bsd_kvm_target_info): New.
10554         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10555         <info>: New.
10556         (bsd_kvm_target::open): Rename to ...
10557         (bsd_kvm_target_open): ... this.  Adjust.
10558         * bsd-uthread.c (bsd_uthread_target_info): New.
10559         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10560         <info>: New.
10561         * corefile.c (core_file_command): Adjust.
10562         * corelow.c (core_target_info): New.
10563         (core_target) <shortname, longname, doc>: Delete.
10564         <info>: New.
10565         (core_target::open): Rename to ...
10566         (core_target_open): ... this.  Adjust.
10567         * ctf.c (ctf_target_info): New.
10568         (ctf_target) <shortname, longname, doc>: Delete.
10569         <info>: New.
10570         (ctf_target::open): Rename to ...
10571         (ctf_target_open): ... this.
10572         (_initialize_ctf): Adjust.
10573         * exec.c (exec_target_info): New.
10574         (exec_target) <shortname, longname, doc>: Delete.
10575         <info>: New.
10576         (exec_target::open): Rename to ...
10577         (exec_target_open): ... this.
10578         * gdbcore.h (core_target_open): Declare.
10579         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10580         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10581         add_inf_child_target.
10582         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10583         add_inf_child_target.
10584         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10585         add_inf_child_target.
10586         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10587         add_inf_child_target.
10588         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10589         add_inf_child_target.
10590         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10591         add_inf_child_target.
10592         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10593         add_inf_child_target.
10594         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10595         add_inf_child_target.
10596         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10597         add_inf_child_target.
10598         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10599         add_inf_child_target.
10600         * inf-child.c (inf_child_target_info): New.
10601         (inf_child_target::info): New.
10602         (inf_child_open_target): Remove 'target' parameter.  Use
10603         get_native_target instead.
10604         (inf_child_target::open): Delete.
10605         (add_inf_child_target): New.
10606         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10607         Delete.
10608         <info>: New.
10609         (add_inf_child_target): Declare.
10610         (inf_child_open_target): Declare.
10611         * linux-thread-db.c (thread_db_target_info): New.
10612         (thread_db_target) <shortname, longname, doc>: Delete.
10613         <info>: New.
10614         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10615         add_inf_child_target.
10616         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10617         add_inf_child_target.
10618         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10619         add_inf_child_target.
10620         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10621         add_inf_child_target.
10622         * make-target-delegates (print_class): Adjust.
10623         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10624         add_inf_child_target.
10625         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10626         add_inf_child_target.
10627         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10628         add_inf_child_target.
10629         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10630         add_inf_child_target.
10631         * nto-procfs.c (nto_native_target_info): New.
10632         (nto_procfs_target_native) <shortname, longname, doc>:
10633         Delete.
10634         <info>: New.
10635         (nto_procfs_target_info): New.
10636         (nto_procfs_target_procfs) <shortname, longname, doc>:
10637         Delete.
10638         <info>: New.
10639         (init_procfs_targets): Adjust.
10640         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10641         add_inf_child_target.
10642         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10643         add_inf_child_target.
10644         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10645         add_inf_child_target.
10646         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10647         add_inf_child_target.
10648         * ravenscar-thread.c (ravenscar_target_info): New.
10649         (ravenscar_thread_target) <shortname, longname, doc>:
10650         Delete.
10651         <info>: New.
10652         * record-btrace.c (record_btrace_target_info):
10653         (record_btrace_target) <shortname, longname, doc>: Delete.
10654         <info>: New.
10655         (record_btrace_target::open): Rename to ...
10656         (record_btrace_target_open): ... this.  Adjust.
10657         * record-full.c (record_longname, record_doc): New.
10658         (record_full_base_target) <shortname, longname, doc>: Delete.
10659         <info>: New.
10660         (record_full_target_info): New.
10661         (record_full_target): <shortname>: Delete.
10662         <info>: New.
10663         (record_full_core_open_1, record_full_open_1): Update comments.
10664         (record_full_base_target::open): Rename to ...
10665         (record_full_open): ... this.
10666         (cmd_record_full_restore): Update.
10667         (_initialize_record_full): Update.
10668         * remote-sim.c (remote_sim_target_info): New.
10669         (gdbsim_target) <shortname, longname, doc>: Delete.
10670         <info>: New.
10671         (gdbsim_target::open): Rename to ...
10672         (gdbsim_target_open): ... this.
10673         (_initialize_remote_sim): Adjust.
10674         * remote.c (remote_doc): New.
10675         (remote_target_info): New.
10676         (remote_target) <shortname, longname, doc>: Delete.
10677         <info>: New.
10678         (extended_remote_target_info): New.
10679         (extended_remote_target) <shortname, longname, doc>: Delete.
10680         <info>: New.
10681         (remote_target::open_1): Make static.  Adjust.
10682         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10683         * s390-linux-nat.c (_initialize_s390_nat): Use
10684         add_inf_child_target.
10685         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10686         add_inf_child_target.
10687         * sol-thread.c (thread_db_target_info): New.
10688         (sol_thread_target) <shortname, longname, doc>: Delete.
10689         <info>: New.
10690         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10691         add_inf_child_target.
10692         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10693         add_inf_child_target.
10694         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10695         add_inf_child_target.
10696         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10697         add_inf_child_target.
10698         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10699         add_inf_child_target.
10700         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10701         add_inf_child_target.
10702         * spu-linux-nat.c (_initialize_spu_nat): Use
10703         add_inf_child_target.
10704         * spu-multiarch.c (spu_multiarch_target_info): New.
10705         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10706         <info>: New.
10707         * target-delegates.c: Regenerate.
10708         * target.c: Include <unordered_map>.
10709         (target_ops_p): Delete.
10710         (DEF_VEC_P(target_ops_p)): Delete.
10711         (target_factories): New.
10712         (test_target_info): New.
10713         (test_target_ops::info): New.
10714         (open_target): Adjust to use target_factories.
10715         (add_target_with_completer): Rename to ...
10716         (add_target): ... this.  Change prototype.  Register target_info
10717         and open callback in target_factories.  Register target_info in
10718         command context instead of target_ops.
10719         (add_target): Delete old implementation.
10720         (add_deprecated_target_alias): Change prototype.  Adjust.
10721         (the_native_target): New.
10722         (set_native_target, get_native_target): New.
10723         (find_default_run_target): Use the_native_target.
10724         (find_attach_target, find_run_target): Simplify.
10725         (target_ops::open): Delete.
10726         (dummy_target_info): New.
10727         (dummy_target::shortname, dummy_target::longname)
10728         (dummy_target::doc): Delete.
10729         (dummy_target::info): New.
10730         (debug_target::shortname, debug_target::longname)
10731         (debug_target::doc): Delete.
10732         (debug_target::info): New.
10733         * target.h (struct target_info): New.
10734         (target_ops::~target_ops): Add comment.
10735         (target_ops::info): New.
10736         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10737         longer virtual.  Implement in terms of target_info.
10738         (set_native_target, get_native_target): Declare.
10739         (target_open_ftype): New.
10740         (add_target, add_target_with_completer)
10741         (add_deprecated_target_alias): Change prototype.
10742         (test_target) <shortname, longname, doc>: Delete.
10743         <info>: New.
10744         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10745         add_inf_child_target.
10746         * tracefile-tfile.c (tfile_target_info): New.
10747         (tfile_target) <shortname, longname, doc>: Delete.
10748         <info>: New.
10749         (tfile_target::open): Rename to ...
10750         (tfile_target_open): ... this.
10751         (_initialize_tracefile_tfile): Adjust.
10752         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10753         add_inf_child_target.
10754         * windows-nat.c (_initialize_windows_nat): Use
10755         add_inf_child_target.
10756         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10757         add_inf_child_target.
10758
10759 2018-05-02  Pedro Alves  <palves@redhat.com>
10760
10761         * linux-nat.h (linux_nat_target) <low_new_thread,
10762         low_delete_thread, low_new_fork, low_forget_process,
10763         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10764         New virtual methods.
10765         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10766         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10767         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10768         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10769         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10770         Delete.
10771         * linux-fork.c (delete_fork): Adjust to call low method.
10772         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10773         (linux_nat_new_fork, linux_nat_forget_process_hook)
10774         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10775         (linux_nat_status_is_event):
10776         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10777         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10778         to call low method.
10779         (sigtrap_is_event): Rename to ...
10780         (linux_nat_target::low_status_is_event): ... this.
10781         (linux_nat_set_status_is_event): Delete.
10782         (save_stop_reason, linux_nat_wait_1)
10783         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10784         low methods.
10785         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10786         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10787         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10788         (linux_nat_set_prepare_to_resume): Delete.
10789         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10790         low virtual methods.
10791         * amd64-linux-nat.c: Likewise.
10792         * arm-linux-nat.c: Likewise.
10793         * i386-linux-nat.c: Likewise.
10794         * ia64-linux-nat.c: Likewise.
10795         * mips-linux-nat.c: Likewise.
10796         * ppc-linux-nat.c: Likewise.
10797         * s390-linux-nat.c: Likewise.
10798         * sparc64-linux-nat.c: Likewise.
10799         * x86-linux-nat.c: Likewise.
10800         * x86-linux-nat.h: Include "nat/x86-linux.h".
10801         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10802         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10803         Override methods.
10804
10805 2018-05-02  Pedro Alves  <palves@redhat.com>
10806
10807         * target.h (target_ops)
10808         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10809         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10810         stopped_by_watchpoint, have_continuable_watchpoint,
10811         stopped_data_address, watchpoint_addr_within_range,
10812         can_accel_watchpoint_condition, can_run, thread_alive,
10813         has_all_memory, has_memory, has_stack, has_registers,
10814         has_execution, can_async_p, is_async_p, supports_non_stop,
10815         always_non_stop_p, can_execute_reverse, supports_multi_process,
10816         supports_enable_disable_tracepoint,
10817         supports_disable_randomization, supports_string_tracing,
10818         supports_evaluation_of_breakpoint_conditions,
10819         can_run_breakpoint_commands, filesystem_is_local,
10820         can_download_tracepoint, get_trace_state_variable_value,
10821         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10822         record_is_replaying, record_will_replay,
10823         augmented_libraries_svr4_read>: Adjust to return bool.
10824         * aarch64-linux-nat.c: All implementations adjusted.
10825         * aix-thread.c: All implementations adjusted.
10826         * arm-linux-nat.c: All implementations adjusted.
10827         * breakpoint.c: All implementations adjusted.
10828         * bsd-kvm.c: All implementations adjusted.
10829         * bsd-uthread.c: All implementations adjusted.
10830         * corelow.c: All implementations adjusted.
10831         * ctf.c: All implementations adjusted.
10832         * darwin-nat.c: All implementations adjusted.
10833         * darwin-nat.h: All implementations adjusted.
10834         * exec.c: All implementations adjusted.
10835         * fbsd-nat.c: All implementations adjusted.
10836         * fbsd-nat.h: All implementations adjusted.
10837         * gnu-nat.c: All implementations adjusted.
10838         * gnu-nat.h: All implementations adjusted.
10839         * go32-nat.c: All implementations adjusted.
10840         * ia64-linux-nat.c: All implementations adjusted.
10841         * inf-child.c: All implementations adjusted.
10842         * inf-child.h: All implementations adjusted.
10843         * inf-ptrace.c: All implementations adjusted.
10844         * inf-ptrace.h: All implementations adjusted.
10845         * linux-nat.c: All implementations adjusted.
10846         * linux-nat.h: All implementations adjusted.
10847         * mips-linux-nat.c: All implementations adjusted.
10848         * nto-procfs.c: All implementations adjusted.
10849         * ppc-linux-nat.c: All implementations adjusted.
10850         * procfs.c: All implementations adjusted.
10851         * ravenscar-thread.c: All implementations adjusted.
10852         * record-btrace.c: All implementations adjusted.
10853         * record-full.c: All implementations adjusted.
10854         * remote-sim.c: All implementations adjusted.
10855         * remote.c: All implementations adjusted.
10856         * s390-linux-nat.c: All implementations adjusted.
10857         * sol-thread.c: All implementations adjusted.
10858         * spu-multiarch.c: All implementations adjusted.
10859         * target-delegates.c: All implementations adjusted.
10860         * target.c: All implementations adjusted.
10861         * target.h: All implementations adjusted.
10862         * tracefile-tfile.c: All implementations adjusted.
10863         * tracefile.c: All implementations adjusted.
10864         * tracefile.h: All implementations adjusted.
10865         * windows-nat.c: All implementations adjusted.
10866         * x86-linux-nat.h: All implementations adjusted.
10867         * x86-nat.h: All implementations adjusted.
10868
10869 2018-05-02  Pedro Alves  <palves@redhat.com>
10870
10871         * make-target-delegates (scan_target_h): Don't trim lines here.
10872         Replace sequences of tabs and/or whitespace with a single
10873         whitespace.
10874         (top level, parsing methods): Trim each line before processing it
10875         here.
10876
10877 2018-05-02  Pedro Alves  <palves@redhat.com>
10878             John Baldwin  <jhb@freebsd.org>
10879
10880         * target.h (enum strata) <debug_stratum>: New.
10881         (struct target_ops) <all delegation methods>: Replace by C++
10882         virtual methods, and drop "to_" prefix.  All references updated
10883         throughout.
10884         <to_shortname, to_longname, to_doc, to_data,
10885         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10886         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10887         virtual methods.  All references updated throughout.
10888         <can_attach, supports_terminal_ours, can_create_inferior,
10889         get_thread_control_capabilities, attach_no_wait>: New
10890         virtual methods.
10891         <insert_breakpoint, remove_breakpoint>: Now
10892         TARGET_DEFAULT_NORETURN methods.
10893         <info_proc>: Now returns bool.
10894         <to_magic>: Delete.
10895         (OPS_MAGIC): Delete.
10896         (current_target): Delete.  All references replaced by references
10897         to ...
10898         (target_stack): ... this.  New.
10899         (target_shortname, target_longname): Adjust.
10900         (target_can_run): Now a function declaration.
10901         (default_child_has_all_memory, default_child_has_memory)
10902         (default_child_has_stack, default_child_has_registers)
10903         (default_child_has_execution): Remove target_ops parameter.
10904         (complete_target_initialization): Delete.
10905         (memory_breakpoint_target): New template class.
10906         (test_target_ops): Refactor as a C++ class with virtual methods.
10907         * make-target-delegates (NAME_PART): Tighten.
10908         (POINTER_PART, CP_SYMBOL): New.
10909         (SIMPLE_RETURN_PART): Reimplement.
10910         (VEC_RETURN_PART): Expect less.
10911         (RETURN_PART, VIRTUAL_PART): New.
10912         (METHOD): Adjust to C++ virtual methods.
10913         (scan_target_h): Remove reference to C99.
10914         (dname): Output "target_ops::" prefix.
10915         (write_function_header): Adjust to output a C++ class method.
10916         (write_declaration): New.
10917         (write_delegator): Adjust to output a C++ class method.
10918         (tdname): Output "dummy_target::" prefix.
10919         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10920         method.
10921         (tdefault_names, debug_names): Delete.
10922         (return_types, tdefaults, styles, argtypes_array): New.
10923         (top level): All methods are delegators.
10924         (print_class): New.
10925         (top level): Print dummy_target and debug_target classes.
10926         * target-delegates.c: Regenerate.
10927         * target-debug.h (target_debug_print_enum_info_proc_what)
10928         (target_debug_print_thread_control_capabilities)
10929         (target_debug_print_thread_info_p): New.
10930         * target.c (dummy_target): Delete.
10931         (the_dummy_target, the_debug_target): New.
10932         (target_stack): Now extern.
10933         (set_targetdebug): Push/unpush debug target.
10934         (default_child_has_all_memory, default_child_has_memory)
10935         (default_child_has_stack, default_child_has_registers)
10936         (default_child_has_execution): Remove target_ops parameter.
10937         (complete_target_initialization): Delete.
10938         (add_target_with_completer): No longer call
10939         complete_target_initialization.
10940         (target_supports_terminal_ours): Use regular delegation.
10941         (update_current_target): Delete.
10942         (push_target): No longer check magic number.  Don't call
10943         update_current_target.
10944         (unpush_target): Don't call update_current_target.
10945         (target_is_pushed): No longer check magic number.
10946         (target_require_runnable): Skip for all stratums over
10947         process_stratum.
10948         (target_ops::info_proc): New.
10949         (target_info_proc): Use find_target_at and
10950         find_default_run_target.
10951         (target_supports_disable_randomization): Use regular delegation.
10952         (target_get_osdata): Use find_target_at.
10953         (target_ops::open, target_ops::close, target_ops::can_attach)
10954         (target_ops::attach, target_ops::can_create_inferior)
10955         (target_ops::create_inferior, target_ops::can_run)
10956         (target_can_run): New.
10957         (default_fileio_target): Use regular delegation.
10958         (target_ops::fileio_open, target_ops::fileio_pwrite)
10959         (target_ops::fileio_pread, target_ops::fileio_fstat)
10960         (target_ops::fileio_close, target_ops::fileio_unlink)
10961         (target_ops::fileio_readlink): New.
10962         (target_fileio_open_1, target_fileio_unlink)
10963         (target_fileio_readlink): Always call the target method.  Handle
10964         FILEIO_ENOSYS.
10965         (return_zero, return_zero_has_execution): Delete.
10966         (init_dummy_target): Delete.
10967         (dummy_target::dummy_target, dummy_target::shortname)
10968         (dummy_target::longname, dummy_target::doc)
10969         (debug_target::debug_target, debug_target::shortname)
10970         (debug_target::longname, debug_target::doc): New.
10971         (target_supports_delete_record): Use regular delegation.
10972         (setup_target_debug): Delete.
10973         (maintenance_print_target_stack): Skip debug_stratum.
10974         (initialize_targets): Instantiate the_dummy_target and
10975         the_debug_target.
10976         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10977         use target_stack.
10978         (target_auxv_search, fprint_target_auxv): Adjust.
10979         (info_auxv_command): Adjust to use target_stack.
10980         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10981         * exceptions.c (print_flush): Handle a NULL target_stack.
10982         * regcache.c (target_ops_no_register): Refactor as class with
10983         virtual methods.
10984
10985         * exec.c (exec_target): New class.
10986         (exec_ops): Now an exec_target.
10987         (exec_open, exec_close_1, exec_get_section_table)
10988         (exec_xfer_partial, exec_files_info, exec_has_memory)
10989         (exec_make_note_section): Refactor as exec_target methods.
10990         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10991         Delete.
10992         (exec_target::find_memory_regions): New.
10993         (_initialize_exec): Don't call init_exec_ops.
10994         * gdbcore.h (exec_file_clear): Delete.
10995
10996         * corefile.c (core_target): Delete.
10997         (core_file_command): Adjust.
10998         * corelow.c (core_target): New class.
10999         (the_core_target): New.
11000         (core_close): Remove target_ops parameter.
11001         (core_close_cleanup): Adjust.
11002         (core_target::close): New.
11003         (core_open, core_detach, get_core_registers, core_files_info)
11004         (core_xfer_partial, core_thread_alive, core_read_description)
11005         (core_pid_to_str, core_thread_name, core_has_memory)
11006         (core_has_stack, core_has_registers, core_info_proc): Rework as
11007         core_target methods.
11008         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11009         (_initialize_corelow): Initialize the_core_target.
11010         * gdbcore.h (core_target): Delete.
11011         (the_core_target): New.
11012
11013         * ctf.c: (ctf_target): New class.
11014         (ctf_ops): Now a ctf_target.
11015         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11016         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11017         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11018         methods.
11019         (init_ctf_ops): Delete.
11020         (_initialize_ctf): Don't call it.
11021         * tracefile-tfile.c (tfile_target): New class.
11022         (tfile_ops): Now a tfile_target.
11023         (tfile_open, tfile_close, tfile_files_info)
11024         (tfile_get_tracepoint_status, tfile_trace_find)
11025         (tfile_fetch_registers, tfile_xfer_partial)
11026         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11027         Refactor as tfile_target methods.
11028         (tfile_xfer_partial_features): Remove target_ops parameter.
11029         (init_tfile_ops): Delete.
11030         (_initialize_tracefile_tfile): Don't call it.
11031         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11032         (tracefile_has_stack, tracefile_has_registers)
11033         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11034         tracefile_target methods.
11035         (init_tracefile_ops): Delete.
11036         (tracefile_target::tracefile_target): New.
11037         * tracefile.h: Include "target.h".
11038         (tracefile_target): New class.
11039         (init_tracefile_ops): Delete.
11040
11041         * spu-multiarch.c (spu_multiarch_target): New class.
11042         (spu_ops): Now a spu_multiarch_target.
11043         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11044         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11045         (spu_search_memory, spu_mourn_inferior): Refactor as
11046         spu_multiarch_target methods.
11047         (init_spu_ops): Delete.
11048         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11049         complete_target_initialization.
11050
11051         * ravenscar-thread.c (ravenscar_thread_target): New class.
11052         (ravenscar_ops): Now a ravenscar_thread_target.
11053         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11054         (ravenscar_thread_alive, ravenscar_pid_to_str)
11055         (ravenscar_fetch_registers, ravenscar_store_registers)
11056         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11057         (ravenscar_stopped_by_hw_breakpoint)
11058         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11059         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11060         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11061         methods.
11062         (init_ravenscar_thread_ops): Delete.
11063         (_initialize_ravenscar): Remove references to
11064         init_ravenscar_thread_ops and complete_target_initialization.
11065
11066         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11067         (bsd_uthread_target): New class.
11068         (bsd_uthread_ops): Now a bsd_uthread_target.
11069         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11070         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11071         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11072         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11073         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11074         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11075         (bsd_uthread_target): Delete function.
11076         (_initialize_bsd_uthread): Remove reference to
11077         complete_target_initialization.
11078
11079         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11080         (target_bfd): ... this new class.
11081         (target_bfd_xfer_partial, target_bfd_get_section_table)
11082         (target_bfd_close): Refactor as target_bfd methods.
11083         (target_bfd::~target_bfd): New.
11084         (target_bfd_reopen): Adjust.
11085         (target_bfd::close): New.
11086
11087         * record-btrace.c (record_btrace_target): New class.
11088         (record_btrace_ops): Now a record_btrace_target.
11089         (record_btrace_open, record_btrace_stop_recording)
11090         (record_btrace_disconnect, record_btrace_close)
11091         (record_btrace_async, record_btrace_info)
11092         (record_btrace_insn_history, record_btrace_insn_history_range)
11093         (record_btrace_insn_history_from, record_btrace_call_history)
11094         (record_btrace_call_history_range)
11095         (record_btrace_call_history_from, record_btrace_record_method)
11096         (record_btrace_is_replaying, record_btrace_will_replay)
11097         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11098         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11099         (record_btrace_store_registers, record_btrace_prepare_to_store)
11100         (record_btrace_to_get_unwinder)
11101         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11102         (record_btrace_commit_resume, record_btrace_wait)
11103         (record_btrace_stop, record_btrace_can_execute_reverse)
11104         (record_btrace_stopped_by_sw_breakpoint)
11105         (record_btrace_supports_stopped_by_sw_breakpoint)
11106         (record_btrace_stopped_by_hw_breakpoint)
11107         (record_btrace_supports_stopped_by_hw_breakpoint)
11108         (record_btrace_update_thread_list, record_btrace_thread_alive)
11109         (record_btrace_goto_begin, record_btrace_goto_end)
11110         (record_btrace_goto, record_btrace_stop_replaying_all)
11111         (record_btrace_execution_direction)
11112         (record_btrace_prepare_to_generate_core)
11113         (record_btrace_done_generating_core): Refactor as
11114         record_btrace_target methods.
11115         (init_record_btrace_ops): Delete.
11116         (_initialize_record_btrace): Remove reference to
11117         init_record_btrace_ops.
11118         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11119         the execution_direction global.
11120         (record_full_base_target, record_full_target)
11121         (record_full_core_target): New classes.
11122         (record_full_ops): Now a record_full_target.
11123         (record_full_core_ops): Now a record_full_core_target.
11124         (record_full_target::detach, record_full_target::disconnect)
11125         (record_full_core_target::disconnect)
11126         (record_full_target::mourn_inferior, record_full_target::kill):
11127         New.
11128         (record_full_open, record_full_close, record_full_async): Refactor
11129         as methods of the record_full_base_target class.
11130         (record_full_resume, record_full_commit_resume): Refactor
11131         as methods of the record_full_target class.
11132         (record_full_wait, record_full_stopped_by_watchpoint)
11133         (record_full_stopped_data_address)
11134         (record_full_stopped_by_sw_breakpoint)
11135         (record_full_supports_stopped_by_sw_breakpoint)
11136         (record_full_stopped_by_hw_breakpoint)
11137         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11138         methods of the record_full_base_target class.
11139         (record_full_store_registers, record_full_xfer_partial)
11140         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11141         Refactor as methods of the record_full_target class.
11142         (record_full_can_execute_reverse, record_full_get_bookmark)
11143         (record_full_goto_bookmark, record_full_execution_direction)
11144         (record_full_record_method, record_full_info, record_full_delete)
11145         (record_full_is_replaying, record_full_will_replay)
11146         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11147         (record_full_stop_replaying): Refactor as methods of the
11148         record_full_base_target class.
11149         (record_full_core_resume, record_full_core_kill)
11150         (record_full_core_fetch_registers)
11151         (record_full_core_prepare_to_store)
11152         (record_full_core_store_registers, record_full_core_xfer_partial)
11153         (record_full_core_insert_breakpoint)
11154         (record_full_core_remove_breakpoint)
11155         (record_full_core_has_execution): Refactor
11156         as methods of the record_full_core_target class.
11157         (record_full_base_target::supports_delete_record): New.
11158         (init_record_full_ops): Delete.
11159         (init_record_full_core_ops): Delete.
11160         (record_full_save): Refactor as method of the
11161         record_full_base_target class.
11162         (_initialize_record_full): Remove references to
11163         init_record_full_ops and init_record_full_core_ops.
11164
11165         * remote.c (remote_target, extended_remote_target): New classes.
11166         (remote_ops): Now a remote_target.
11167         (extended_remote_ops): Now an extended_remote_target.
11168         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11169         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11170         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11171         (remote_pass_signals, remote_set_syscall_catchpoint)
11172         (remote_program_signals, )
11173         (remote_thread_always_alive): Remove target_ops parameter.
11174         (remote_thread_alive, remote_thread_name)
11175         (remote_update_thread_list, remote_threads_extra_info)
11176         (remote_static_tracepoint_marker_at)
11177         (remote_static_tracepoint_markers_by_strid)
11178         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11179         (remote_open): Refactor as methods of remote_target.
11180         (extended_remote_open, extended_remote_detach)
11181         (extended_remote_attach, extended_remote_post_attach):
11182         (extended_remote_supports_disable_randomization)
11183         (extended_remote_create_inferior): : Refactor as method of
11184         extended_remote_target.
11185         (remote_set_permissions, remote_open_1, remote_detach)
11186         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11187         (remote_resume, remote_commit_resume, remote_stop)
11188         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11189         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11190         (remote_prepare_to_store, remote_store_registers)
11191         (remote_flash_erase, remote_flash_done, remote_files_info)
11192         (remote_kill, remote_mourn, remote_insert_breakpoint)
11193         (remote_remove_breakpoint, remote_insert_watchpoint)
11194         (remote_watchpoint_addr_within_range)
11195         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11196         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11197         (remote_supports_stopped_by_sw_breakpoint)
11198         (remote_stopped_by_hw_breakpoint)
11199         (remote_supports_stopped_by_hw_breakpoint)
11200         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11201         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11202         (remote_verify_memory): Refactor as methods of remote_target.
11203         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11204         parameter.
11205         (remote_xfer_partial, remote_get_memory_xfer_limit)
11206         (remote_search_memory, remote_rcmd, remote_memory_map)
11207         (remote_pid_to_str, remote_get_thread_local_address)
11208         (remote_get_tib_address, remote_read_description): Refactor as
11209         methods of remote_target.
11210         (remote_target::fileio_open, remote_target::fileio_pwrite)
11211         (remote_target::fileio_pread, remote_target::fileio_close): New.
11212         (remote_hostio_readlink, remote_hostio_fstat)
11213         (remote_filesystem_is_local, remote_can_execute_reverse)
11214         (remote_supports_non_stop, remote_supports_disable_randomization)
11215         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11216         (remote_supports_enable_disable_tracepoint)
11217         (remote_supports_string_tracing)
11218         (remote_can_run_breakpoint_commands, remote_trace_init)
11219         (remote_download_tracepoint, remote_can_download_tracepoint)
11220         (remote_download_trace_state_variable, remote_enable_tracepoint)
11221         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11222         (remote_trace_start, remote_get_trace_status)
11223         (remote_get_tracepoint_status, remote_trace_stop)
11224         (remote_trace_find, remote_get_trace_state_variable_value)
11225         (remote_save_trace_data, remote_get_raw_trace_data)
11226         (remote_set_disconnected_tracing, remote_core_of_thread)
11227         (remote_set_circular_trace_buffer, remote_traceframe_info)
11228         (remote_get_min_fast_tracepoint_insn_len)
11229         (remote_set_trace_buffer_size, remote_set_trace_notes)
11230         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11231         (remote_disable_btrace, remote_teardown_btrace)
11232         (remote_read_btrace, remote_btrace_conf)
11233         (remote_augmented_libraries_svr4_read, remote_load)
11234         (remote_pid_to_exec_file, remote_can_do_single_step)
11235         (remote_execution_direction, remote_thread_handle_to_thread_info):
11236         Refactor as methods of remote_target.
11237         (init_remote_ops, init_extended_remote_ops): Delete.
11238         (remote_can_async_p, remote_is_async_p, remote_async)
11239         (remote_thread_events, remote_upload_tracepoints)
11240         (remote_upload_trace_state_variables): Refactor as methods of
11241         remote_target.
11242         (_initialize_remote): Remove references to init_remote_ops and
11243         init_extended_remote_ops.
11244
11245         * remote-sim.c (gdbsim_target): New class.
11246         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11247         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11248         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11249         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11250         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11251         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11252         Refactor as methods of gdbsim_target.
11253         (gdbsim_ops): Now a gdbsim_target.
11254         (init_gdbsim_ops): Delete.
11255         (gdbsim_cntrl_c): Adjust.
11256         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11257
11258         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11259         (the_amd64_linux_nat_target): New.
11260         (amd64_linux_fetch_inferior_registers)
11261         (amd64_linux_store_inferior_registers): Refactor as methods of
11262         amd64_linux_nat_target.
11263         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11264         * i386-linux-nat.c: Don't include "linux-nat.h".
11265         (i386_linux_nat_target): New class.
11266         (the_i386_linux_nat_target): New.
11267         (i386_linux_fetch_inferior_registers)
11268         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11269         as methods of i386_linux_nat_target.
11270         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11271         * inf-child.c (inf_child_ops): Delete.
11272         (inf_child_fetch_inferior_registers)
11273         (inf_child_store_inferior_registers): Delete.
11274         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11275         methods of inf_child_target.
11276         (inf_child_target::supports_terminal_ours)
11277         (inf_child_target::terminal_init)
11278         (inf_child_target::terminal_inferior)
11279         (inf_child_target::terminal_ours_for_output)
11280         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11281         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11282         New.
11283         (inf_child_open, inf_child_disconnect, inf_child_close)
11284         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11285         (inf_child_post_startup_inferior, inf_child_can_run)
11286         (inf_child_pid_to_exec_file): Refactor as methods of
11287         inf_child_target.
11288         (inf_child_follow_fork): Delete.
11289         (inf_child_target::can_create_inferior)
11290         (inf_child_target::can_attach): New.
11291         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11292         (inf_child_target::has_stack, inf_child_target::has_registers)
11293         (inf_child_target::has_execution): New.
11294         (inf_child_fileio_open, inf_child_fileio_pwrite)
11295         (inf_child_fileio_pread, inf_child_fileio_fstat)
11296         (inf_child_fileio_close, inf_child_fileio_unlink)
11297         (inf_child_fileio_readlink, inf_child_use_agent)
11298         (inf_child_can_use_agent): Refactor as methods of
11299         inf_child_target.
11300         (return_zero, inf_child_target): Delete.
11301         (inf_child_target::inf_child_target): New.
11302         * inf-child.h: Include "target.h".
11303         (inf_child_target): Delete function prototype.
11304         (inf_child_target): New class.
11305         (inf_child_open_target, inf_child_mourn_inferior)
11306         (inf_child_maybe_unpush_target): Delete.
11307         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11308         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11309         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11310         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11311         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11312         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11313         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11314         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11315         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11316         methods of inf_ptrace_target.
11317         (inf_ptrace_target): Delete function.
11318         * inf-ptrace.h: Include "inf-child.h".
11319         (inf_ptrace_target): Delete function declaration.
11320         (inf_ptrace_target): New class.
11321         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11322         * linux-nat.c (linux_target): New.
11323         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11324         (linux_nat_target::~linux_nat_target): New.
11325         (linux_child_post_attach, linux_child_post_startup_inferior)
11326         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11327         (linux_child_remove_fork_catchpoint)
11328         (linux_child_insert_vfork_catchpoint)
11329         (linux_child_remove_vfork_catchpoint)
11330         (linux_child_insert_exec_catchpoint)
11331         (linux_child_remove_exec_catchpoint)
11332         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11333         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11334         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11335         (linux_nat_stopped_data_address)
11336         (linux_nat_stopped_by_sw_breakpoint)
11337         (linux_nat_supports_stopped_by_sw_breakpoint)
11338         (linux_nat_stopped_by_hw_breakpoint)
11339         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11340         (linux_nat_kill, linux_nat_mourn_inferior)
11341         (linux_nat_xfer_partial, linux_nat_thread_alive)
11342         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11343         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11344         (linux_child_static_tracepoint_markers_by_strid)
11345         (linux_nat_is_async_p, linux_nat_can_async_p)
11346         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11347         (linux_nat_supports_multi_process)
11348         (linux_nat_supports_disable_randomization, linux_nat_async)
11349         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11350         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11351         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11352         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11353         methods of linux_nat_target.
11354         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11355         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11356         parameter.
11357         (check_stopped_by_watchpoint): Adjust.
11358         (linux_xfer_partial): Delete.
11359         (linux_target_install_ops, linux_target, linux_nat_add_target):
11360         Delete.
11361         (linux_nat_target::linux_nat_target): New.
11362         * linux-nat.h: Include "inf-ptrace.h".
11363         (linux_nat_target): New.
11364         (linux_target, linux_target_install_ops, linux_nat_add_target):
11365         Delete function declarations.
11366         (linux_target): Declare global.
11367         * linux-thread-db.c (thread_db_target): New.
11368         (thread_db_target::thread_db_target): New.
11369         (thread_db_ops): Delete.
11370         (the_thread_db_target): New.
11371         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11372         (thread_db_update_thread_list, thread_db_pid_to_str)
11373         (thread_db_extra_thread_info)
11374         (thread_db_thread_handle_to_thread_info)
11375         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11376         (thread_db_resume): Refactor as methods of thread_db_target.
11377         (init_thread_db_ops): Delete.
11378         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11379         * x86-linux-nat.c: Don't include "linux-nat.h".
11380         (super_post_startup_inferior): Delete.
11381         (x86_linux_nat_target::~x86_linux_nat_target): New.
11382         (x86_linux_child_post_startup_inferior)
11383         (x86_linux_read_description, x86_linux_enable_btrace)
11384         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11385         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11386         methods of x86_linux_nat_target.
11387         (x86_linux_create_target): Delete.  Bits folded ...
11388         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11389         pointer.
11390         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11391         (x86_linux_nat_target): New class.
11392         (x86_linux_create_target): Delete.
11393         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11394         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11395         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11396         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11397         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11398         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11399         make extern.
11400         (x86_use_watchpoints): Delete.
11401         * x86-nat.h: Include "breakpoint.h" and "target.h".
11402         (x86_use_watchpoints): Delete.
11403         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11404         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11405         (x86_insert_watchpoint, x86_remove_watchpoint)
11406         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11407         (x86_stopped_by_hw_breakpoint): New declarations.
11408         (x86_nat_target): New template class.
11409
11410         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11411         (the_ppc_linux_nat_target): New.
11412         (ppc_linux_fetch_inferior_registers)
11413         (ppc_linux_can_use_hw_breakpoint)
11414         (ppc_linux_region_ok_for_hw_watchpoint)
11415         (ppc_linux_ranged_break_num_registers)
11416         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11417         (ppc_linux_insert_mask_watchpoint)
11418         (ppc_linux_remove_mask_watchpoint)
11419         (ppc_linux_can_accel_watchpoint_condition)
11420         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11421         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11422         (ppc_linux_watchpoint_addr_within_range)
11423         (ppc_linux_masked_watch_num_registers)
11424         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11425         (ppc_linux_read_description): Refactor as methods of
11426         ppc_linux_nat_target.
11427         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11428
11429         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11430         (procfs_target): New class.
11431         (the_procfs_target): New.
11432         (procfs_target): Delete function.
11433         (procfs_auxv_parse, procfs_attach, procfs_detach)
11434         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11435         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11436         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11437         (procfs_create_inferior, procfs_update_thread_list)
11438         (procfs_thread_alive, procfs_pid_to_str)
11439         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11440         (procfs_stopped_data_address, procfs_insert_watchpoint)
11441         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11442         (proc_find_memory_regions, procfs_info_proc)
11443         (procfs_make_note_section): Refactor as methods of procfs_target.
11444         (_initialize_procfs): Adjust.
11445         * sol-thread.c (sol_thread_target): New class.
11446         (sol_thread_ops): Now a sol_thread_target.
11447         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11448         (sol_thread_fetch_registers, sol_thread_store_registers)
11449         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11450         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11451         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11452         (init_sol_thread_ops): Delete.
11453         (_initialize_sol_thread): Adjust.  Remove references to
11454         init_sol_thread_ops and complete_target_initialization.
11455
11456         * windows-nat.c (windows_nat_target): New class.
11457         (windows_fetch_inferior_registers)
11458         (windows_store_inferior_registers, windows_resume, windows_wait)
11459         (windows_attach, windows_detach, windows_pid_to_exec_file)
11460         (windows_files_info, windows_create_inferior)
11461         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11462         (windows_close, windows_pid_to_str, windows_xfer_partial)
11463         (windows_get_tib_address, windows_get_ada_task_ptid)
11464         (windows_thread_name, windows_thread_alive): Refactor as
11465         windows_nat_target methods.
11466         (do_initial_windows_stuff): Adjust.
11467         (windows_target): Delete function.
11468         (_initialize_windows_nat): Adjust.
11469
11470         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11471         (darwin_mourn_inferior, darwin_kill_inferior)
11472         (darwin_create_inferior, darwin_attach, darwin_detach)
11473         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11474         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11475         (darwin_supports_multi_process): Refactor as darwin_nat_target
11476         methods.
11477         (darwin_resume_to, darwin_files_info): Delete.
11478         (_initialize_darwin_inferior): Rename to ...
11479         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11480         * darwin-nat.h: Include "inf-child.h".
11481         (darwin_nat_target): New class.
11482         (darwin_complete_target): Delete.
11483         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11484         (darwin_target): New.
11485         (i386_darwin_fetch_inferior_registers)
11486         (i386_darwin_store_inferior_registers): Refactor as methods of
11487         darwin_nat_target.
11488         (darwin_complete_target): Delete, with ...
11489         (_initialize_i386_darwin_nat): ... bits factored out here.
11490
11491         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11492         (the_alpha_linux_nat_target): New.
11493         (alpha_linux_register_u_offset): Refactor as
11494         alpha_linux_nat_target method.
11495         (_initialize_alpha_linux_nat): Adjust.
11496         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11497         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11498         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11499         methods of linux_nat_trad_target.
11500         (linux_trad_target): Delete.
11501         * linux-nat-trad.h (linux_trad_target): Delete function.
11502         (linux_nat_trad_target): New class.
11503         * mips-linux-nat.c (mips_linux_nat_target): New class.
11504         (super_fetch_registers, super_store_registers, super_close):
11505         Delete.
11506         (the_mips_linux_nat_target): New.
11507         (mips64_linux_regsets_fetch_registers)
11508         (mips64_linux_regsets_store_registers)
11509         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11510         (mips_linux_register_u_offset, mips_linux_read_description)
11511         (mips_linux_can_use_hw_breakpoint)
11512         (mips_linux_stopped_by_watchpoint)
11513         (mips_linux_stopped_data_address)
11514         (mips_linux_region_ok_for_hw_watchpoint)
11515         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11516         (mips_linux_close): Refactor as methods of mips_linux_nat.
11517         (_initialize_mips_linux_nat): Adjust to C++ification.
11518
11519         * aix-thread.c (aix_thread_target): New class.
11520         (aix_thread_ops): Now an aix_thread_target.
11521         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11522         (aix_thread_fetch_registers, aix_thread_store_registers)
11523         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11524         (aix_thread_thread_alive, aix_thread_pid_to_str)
11525         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11526         Refactor as methods of aix_thread_target.
11527         (init_aix_thread_ops): Delete.
11528         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11529         and complete_target_initialization.
11530         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11531         (rs6000_nat_target): New class.
11532         (the_rs6000_nat_target): New.
11533         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11534         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11535         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11536         (super_create_inferior): Delete.
11537         (_initialize_rs6000_nat): Adjust to C++ification.
11538
11539         * arm-linux-nat.c (arm_linux_nat_target): New class.
11540         (the_arm_linux_nat_target): New.
11541         (arm_linux_fetch_inferior_registers)
11542         (arm_linux_store_inferior_registers, arm_linux_read_description)
11543         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11544         (arm_linux_remove_hw_breakpoint)
11545         (arm_linux_region_ok_for_hw_watchpoint)
11546         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11547         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11548         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11549         arm_linux_nat_target.
11550         (_initialize_arm_linux_nat): Adjust to C++ification.
11551
11552         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11553         (the_aarch64_linux_nat_target): New.
11554         (aarch64_linux_fetch_inferior_registers)
11555         (aarch64_linux_store_inferior_registers)
11556         (aarch64_linux_child_post_startup_inferior)
11557         (aarch64_linux_read_description)
11558         (aarch64_linux_can_use_hw_breakpoint)
11559         (aarch64_linux_insert_hw_breakpoint)
11560         (aarch64_linux_remove_hw_breakpoint)
11561         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11562         (aarch64_linux_region_ok_for_hw_watchpoint)
11563         (aarch64_linux_stopped_data_address)
11564         (aarch64_linux_stopped_by_watchpoint)
11565         (aarch64_linux_watchpoint_addr_within_range)
11566         (aarch64_linux_can_do_single_step): Refactor as methods of
11567         aarch64_linux_nat_target.
11568         (super_post_startup_inferior): Delete.
11569         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11570
11571         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11572         (the_hppa_linux_nat_target): New.
11573         (hppa_linux_fetch_inferior_registers)
11574         (hppa_linux_store_inferior_registers): Refactor as methods of
11575         hppa_linux_nat_target.
11576         (_initialize_hppa_linux_nat): Adjust to C++ification.
11577
11578         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11579         (the_ia64_linux_nat_target): New.
11580         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11581         (ia64_linux_stopped_data_address)
11582         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11583         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11584         ia64_linux_nat_target methods.
11585         (super_xfer_partial): Delete.
11586         (_initialize_ia64_linux_nat): Adjust to C++ification.
11587
11588         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11589         (the_m32r_linux_nat_target): New.
11590         (m32r_linux_fetch_inferior_registers)
11591         (m32r_linux_store_inferior_registers): Refactor as
11592         m32r_linux_nat_target methods.
11593         (_initialize_m32r_linux_nat): Adjust to C++ification.
11594
11595         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11596         (the_m68k_linux_nat_target): New.
11597         (m68k_linux_fetch_inferior_registers)
11598         (m68k_linux_store_inferior_registers): Refactor as
11599         m68k_linux_nat_target methods.
11600         (_initialize_m68k_linux_nat): Adjust to C++ification.
11601
11602         * s390-linux-nat.c (s390_linux_nat_target): New class.
11603         (the_s390_linux_nat_target): New.
11604         (s390_linux_fetch_inferior_registers)
11605         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11606         (s390_insert_watchpoint, s390_remove_watchpoint)
11607         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11608         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11609         (s390_auxv_parse, s390_read_description): Refactor as methods of
11610         s390_linux_nat_target.
11611         (_initialize_s390_nat): Adjust to C++ification.
11612
11613         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11614         (the_sparc_linux_nat_target): New.
11615         (_initialize_sparc_linux_nat): Adjust to C++ification.
11616         * sparc-nat.c (sparc_fetch_inferior_registers)
11617         (sparc_store_inferior_registers): Remove target_ops parameter.
11618         * sparc-nat.h (sparc_fetch_inferior_registers)
11619         (sparc_store_inferior_registers): Remove target_ops parameter.
11620         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11621         (the_sparc64_linux_nat_target): New.
11622         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11623
11624         * spu-linux-nat.c (spu_linux_nat_target): New class.
11625         (the_spu_linux_nat_target): New.
11626         (spu_child_post_startup_inferior, spu_child_post_attach)
11627         (spu_child_wait, spu_fetch_inferior_registers)
11628         (spu_store_inferior_registers, spu_xfer_partial)
11629         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11630         methods.
11631         (_initialize_spu_nat): Adjust to C++ification.
11632
11633         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11634         (the_tilegx_linux_nat_target): New.
11635         (fetch_inferior_registers, store_inferior_registers):
11636         Refactor as methods.
11637         (_initialize_tile_linux_nat): Adjust to C++ification.
11638
11639         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11640         (the_xtensa_linux_nat_target): New.
11641         (xtensa_linux_fetch_inferior_registers)
11642         (xtensa_linux_store_inferior_registers): Refactor as
11643         xtensa_linux_nat_target methods.
11644         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11645
11646         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11647         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11648         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11649         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11650         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11651         (fbsd_stopped_by_sw_breakpoint)
11652         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11653         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11654         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11655         (fbsd_post_startup_inferior, fbsd_post_attach)
11656         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11657         (fbsd_set_syscall_catchpoint)
11658         (super_xfer_partial, super_resume, super_wait)
11659         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11660         (fbsd_handle_debug_trap): Remove target_ops parameter.
11661         (fbsd_nat_add_target): Delete.
11662         * fbsd-nat.h: Include "inf-ptrace.h".
11663         (fbsd_nat_add_target): Delete.
11664         (USE_SIGTRAP_SIGINFO): Define.
11665         (fbsd_nat_target): New class.
11666
11667         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11668         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11669         (amd64bsd_target): Delete.
11670         * amd64-bsd-nat.h: New file.
11671         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11672         "x86-bsd-nat.h".
11673         (amd64_fbsd_nat_target): New class.
11674         (the_amd64_fbsd_nat_target): New.
11675         (amd64fbsd_read_description): Refactor as method of
11676         amd64_fbsd_nat_target.
11677         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11678         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11679         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11680         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11681         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11682         (i386bsd_target): Delete.
11683         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11684         (i386bsd_fetch_inferior_registers)
11685         (i386bsd_store_inferior_registers): Declare.
11686         (i386_bsd_nat_target): New class.
11687         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11688         (the_i386_fbsd_nat_target): New.
11689         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11690         i386_fbsd_nat_target methods.
11691         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11692         (_initialize_i386fbsd_nat): Adjust to C++ification.
11693         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11694         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11695         (_initialize_x86_bsd_nat): Adjust to C++ification.
11696         * x86-bsd-nat.h: Include "x86-nat.h".
11697         (x86bsd_target): Delete declaration.
11698         (x86bsd_nat_target): New class.
11699
11700         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11701         (the_aarch64_fbsd_nat_target): New.
11702         (aarch64_fbsd_fetch_inferior_registers)
11703         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11704         aarch64_fbsd_nat_target.
11705         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11706         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11707         (the_alpha_bsd_nat_target): New.
11708         (alphabsd_fetch_inferior_registers)
11709         (alphabsd_store_inferior_registers): Refactor as
11710         alpha_bsd_nat_target methods.
11711         (_initialize_alphabsd_nat): Refactor as methods of
11712         alpha_bsd_nat_target.
11713         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11714         (the_amd64_nbsd_nat_target): New.
11715         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11716         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11717         (the_amd64_obsd_nat_target): New.
11718         (_initialize_amd64obsd_nat): Adjust to C++ification.
11719         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11720         (the_arm_fbsd_nat_target): New.
11721         (arm_fbsd_fetch_inferior_registers)
11722         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11723         (_initialize_arm_fbsd_nat): Refactor as methods of
11724         arm_fbsd_nat_target.
11725         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11726         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11727         (the_arm_netbsd_nat_target): New.
11728         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11729         arm_netbsd_nat_target.
11730         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11731         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11732         (the_hppa_nbsd_nat_target): New.
11733         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11734         hppa_nbsd_nat_target methods.
11735         (_initialize_hppanbsd_nat): Adjust to C++ification.
11736         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11737         (the_hppa_obsd_nat_target): New.
11738         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11739         methods of hppa_obsd_nat_target.
11740         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11741         add_target.
11742         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11743         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11744         add_target.
11745         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11746         (_initialize_i386obsd_nat): Use add_target.
11747         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11748         (the_m68k_bsd_nat_target): New.
11749         (m68kbsd_fetch_inferior_registers)
11750         (m68kbsd_store_inferior_registers): Refactor as methods of
11751         m68k_bsd_nat_target.
11752         (_initialize_m68kbsd_nat): Adjust to C++ification.
11753         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11754         (the_mips_fbsd_nat_target): New.
11755         (mips_fbsd_fetch_inferior_registers)
11756         (mips_fbsd_store_inferior_registers): Refactor as methods of
11757         mips_fbsd_nat_target.
11758         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11759         add_target.
11760         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11761         (the_mips_nbsd_nat_target): New.
11762         (mipsnbsd_fetch_inferior_registers)
11763         (mipsnbsd_store_inferior_registers): Refactor as methods of
11764         mips_nbsd_nat_target.
11765         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11766         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11767         (the_mips64_obsd_nat_target): New.
11768         (mips64obsd_fetch_inferior_registers)
11769         (mips64obsd_store_inferior_registers): Refactor as methods of
11770         mips64_obsd_nat_target.
11771         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11772         add_target.
11773         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11774         nbsd_nat_target.
11775         * nbsd-nat.h: Include "inf-ptrace.h".
11776         (nbsd_nat_target): New class.
11777         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11778         (obsd_wait): Refactor as methods of obsd_nat_target.
11779         (obsd_add_target): Delete.
11780         * obsd-nat.h: Include "inf-ptrace.h".
11781         (obsd_nat_target): New class.
11782         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11783         (the_ppc_fbsd_nat_target): New.
11784         (ppcfbsd_fetch_inferior_registers)
11785         (ppcfbsd_store_inferior_registers): Refactor as methods of
11786         ppc_fbsd_nat_target.
11787         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11788         add_target.
11789         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11790         (the_ppc_nbsd_nat_target): New.
11791         (ppcnbsd_fetch_inferior_registers)
11792         (ppcnbsd_store_inferior_registers): Refactor as methods of
11793         ppc_nbsd_nat_target.
11794         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11795         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11796         (the_ppc_obsd_nat_target): New.
11797         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11798         methods of ppc_obsd_nat_target.
11799         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11800         add_target.
11801         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11802         (the_sh_nbsd_nat_target): New.
11803         (shnbsd_fetch_inferior_registers)
11804         (shnbsd_store_inferior_registers): Refactor as methods of
11805         sh_nbsd_nat_target.
11806         (_initialize_shnbsd_nat): Adjust to C++ification.
11807         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11808         (inf_ptrace_xfer_partial): Delete.
11809         (sparc_xfer_partial, sparc_target): Delete.
11810         * sparc-nat.h (sparc_fetch_inferior_registers)
11811         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11812         (sparc_target): Delete function declaration.
11813         (sparc_target): New template class.
11814         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11815         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11816         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11817         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11818         add_target.
11819         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11820         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11821         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11822         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11823         add_target.
11824         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11825         (the_vax_bsd_nat_target): New.
11826         (vaxbsd_fetch_inferior_registers)
11827         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11828         methods.
11829         (_initialize_vaxbsd_nat): Adjust to C++ification.
11830
11831         * bsd-kvm.c (bsd_kvm_target): New class.
11832         (bsd_kvm_ops): Now a bsd_kvm_target.
11833         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11834         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11835         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11836         bsd_kvm_target.
11837         (bsd_kvm_return_one): Delete.
11838         (bsd_kvm_add_target): Adjust to C++ification.
11839
11840         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11841         (nto_procfs_target_procfs): New classes.
11842         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11843         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11844         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11845         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11846         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11847         (procfs_remove_hw_breakpoint, procfs_resume)
11848         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11849         (procfs_kill_inferior, procfs_store_registers)
11850         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11851         as methods of nto_procfs_target.
11852         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11853         (nto_native_ops): Delete.
11854         (procfs_open, procfs_native_open): Delete.
11855         (nto_native_ops): Now an nto_procfs_target_native.
11856         (init_procfs_targets): Adjust to C++ification.
11857         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11858         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11859         Refactor as methods of nto_procfs_target.
11860
11861         * go32-nat.c (go32_nat_target): New class.
11862         (the_go32_nat_target): New.
11863         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11864         (go32_store_registers, go32_xfer_partial, go32_files_info)
11865         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11866         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11867         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11868         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11869         (go32_target): Delete.
11870         (_initialize_go32_nat): Adjust to C++ification.
11871
11872         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11873         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11874         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11875         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11876         gnu_nat_target.
11877         (gnu_target): Delete.
11878         * gnu-nat.h (gnu_target): Delete.
11879         (gnu_nat_target): New class.
11880         * i386-gnu-nat.c (gnu_base_target): New.
11881         (i386_gnu_nat_target): New class.
11882         (the_i386_gnu_nat_target): New.
11883         (_initialize_i386gnu_nat): Adjust to C++ification.
11884
11885 2018-05-02  Pedro Alves  <palves@redhat.com>
11886
11887         * bfd-target.c (target_bfd_xclose): Rename to ...
11888         (target_bfd_close): ... this.
11889         (target_bfd_reopen): Adjust.
11890         * target.c (target_close): Remove references to to_xclose.
11891         * target.h (target_ops::to_xclose): Delete.
11892         (target_ops::to_close): Update comments.
11893
11894 2018-05-02  Pedro Alves  <palves@redhat.com>
11895
11896         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11897         "linux-nat.h".
11898         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11899         * inf-ptrace.c (inf_ptrace_register_u_offset)
11900         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11901         (inf_ptrace_store_register, inf_ptrace_store_registers)
11902         (inf_ptrace_trad_target): Move to ...
11903         * linux-nat-trad.c: ... this new file.
11904         * linux-nat-trad.h: New file.
11905         * linux-nat.c (linux_target_install_ops): Make extern.
11906         (linux_trad_target): Delete.
11907         * linux-nat.h (linux_trad_target): Delete declaration.
11908         (linux_target_install_ops): Declare.
11909         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11910         "linux-nat.h".
11911
11912 2018-05-02  Pedro Alves  <palves@redhat.com>
11913
11914         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11915         procfs_target/add_target here.
11916         * procfs.c (procfs_target): Make static.
11917         (_initialize_procfs): Call add_target here.
11918         * procfs.h (struct target_ops): Remove forward declaration.
11919         (procfs_target): Remove declaration.
11920         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11921
11922 2018-05-02  Pedro Alves  <palves@redhat.com>
11923
11924         * procfs.c (procfs_stopped_by_watchpoint)
11925         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11926         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11927         Forward declare.
11928         (procfs_use_watchpoints): Delete, move contents...
11929         (procfs_target): ... here.
11930         * procfs.h (procfs_use_watchpoints): Delete declaration.
11931         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11932         procfs_use_watchpoints.
11933         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11934         procfs_use_watchpoints.
11935
11936 2018-05-02  Tom Tromey  <tom@tromey.com>
11937
11938         PR python/20084:
11939         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11940         and var_zuinteger_unlimited.
11941         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11942         and PARAM_ZUINTEGER_UNLIMITED.
11943         (set_parameter_value): Handle var_zuinteger and
11944         var_zuinteger_unlimited.
11945         (add_setshow_generic): Likewise.
11946         (parmpy_init): Likewise.
11947
11948 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11949
11950         PR rust/23124
11951         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11952         pointer is not null before dereferencing it.
11953
11954 2018-04-30  Tom Tromey  <tom@tromey.com>
11955
11956         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11957         is_mi_like_p.
11958
11959 2018-04-30  Tom Tromey  <tom@tromey.com>
11960
11961         * breakpoint.c (mention): Remove use of is_mi_like_p.
11962         (print_mention_ranged_breakpoint): Likewise.
11963         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11964         of is_mi_like_p.
11965
11966 2018-04-30  Tom Tromey  <tom@tromey.com>
11967
11968         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11969
11970 2018-04-30  Tom Tromey  <tom@tromey.com>
11971
11972         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11973         (info_spu_event_command): Remove some uses of is_mi_like_p.
11974
11975 2018-04-30  Tom Tromey  <tom@tromey.com>
11976
11977         * python/py-framefilter.c (py_print_single_arg)
11978         (enumerate_locals, py_print_args, py_print_frame): Remove some
11979         uses of is_mi_like_p.
11980
11981 2018-04-30  Tom Tromey  <tom@tromey.com>
11982
11983         * ui-out.c: Update.
11984         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11985         * ui-out.h (ui_out::is_mi_like_p): Now const.
11986         (ui_out::do_is_mi_like_p): Now const.
11987         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11988
11989 2018-04-30  Tom Tromey  <tom@tromey.com>
11990
11991         * varobj.c (varobj_set_visualizer): Use new_reference.
11992         * python/python.c (gdbpy_decode_line): Use new_reference.
11993         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11994         new_reference.
11995
11996 2018-04-30  Tom Tromey  <tom@tromey.com>
11997
11998         * varobj.c (install_new_value): Use new_reference.
11999         * value.h (value_incref): Return void.  Swap intro comment with
12000         value_decref.
12001         * value.c (set_value_parent): Use new_reference.
12002         (value_incref): Return void.  Update intro comment.
12003         (release_value): Use new_reference.
12004         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12005
12006 2018-04-30  Tom Tromey  <tom@tromey.com>
12007
12008         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12009         * gdb_bfd.h (new_bfd_ref): Remove.
12010         (gdb_bfd_open): Update comment.
12011         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12012         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12013         (gdb_bfd_fdopenr): Use new_reference.
12014         * exec.c (exec_file_attach): Use new_reference.
12015
12016 2018-04-30  Tom Tromey  <tom@tromey.com>
12017
12018         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12019         method.
12020
12021 2018-04-30  Tom Tromey  <tom@tromey.com>
12022
12023         * jit.c (jit_read_code_entry): Use type_align.
12024         * i386-tdep.c (i386_gdbarch_init): Don't call
12025         set_gdbarch_long_long_align_bit.
12026         * gdbarch.sh: Remove long_long_align_bit.
12027         * gdbarch.c, gdbarch.h: Rebuild.
12028         * arc-tdep.c (arc_type_align): New function.
12029         (arc_gdbarch_init): Use arc_type_align.  Don't call
12030         set_gdbarch_long_long_align_bit.
12031
12032 2018-04-30  Tom Tromey  <tom@tromey.com>
12033
12034         * rust-lang.c (rust_type_alignment): Remove.
12035         (rust_composite_type): Use type_align.
12036
12037 2018-04-30  Tom Tromey  <tom@tromey.com>
12038
12039         * NEWS: Mention Type.align.
12040         * python/py-type.c (typy_get_alignof): New function.
12041         (type_object_getset): Add "alignof".
12042
12043 2018-04-30  Tom Tromey  <tom@tromey.com>
12044
12045         PR exp/17095:
12046         * NEWS: Update.
12047         * std-operator.def (UNOP_ALIGNOF): New operator.
12048         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12049         New.
12050         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12051         * c-lang.c (c_op_print_tab): Add alignof.
12052         * c-exp.y (ALIGNOF): New token.
12053         (exp): Add "ALIGNOF" production.
12054         (ident_tokens): Add _Alignof and alignof.
12055
12056 2018-04-30  Tom Tromey  <tom@tromey.com>
12057
12058         * i386-tdep.c (i386_type_align): New function.
12059         (i386_gdbarch_init): Update.
12060         * gdbarch.sh (type_align): New method.
12061         * gdbarch.c, gdbarch.h: Rebuild.
12062         * arch-utils.h (default_type_align): Declare.
12063         * arch-utils.c (default_type_align): New function.
12064         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12065         (struct type) <align_log2>: New field.
12066         <instance_flags>: Now a bitfield.
12067         (TYPE_RAW_ALIGN): New macro.
12068         (type_align, type_raw_align, set_type_align): Declare.
12069         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12070         functions.
12071         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12072         (get_alignment, maybe_set_alignment): New functions.
12073         (read_structure_type, read_enumeration_type, read_array_type)
12074         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12075         (read_subrange_type, read_base_type): Set type alignment.
12076
12077 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12078
12079         * dwarf2read.c (read_index_from_section): Use bool.
12080
12081 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12082
12083         PR gdb/22950
12084         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12085         with #ifdef.
12086
12087 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12088
12089         PR build/22873
12090         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12091         last step, and do it atomically.
12092
12093 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12094
12095         * compile/compile-c-types.c (convert_int, convert_float):
12096         Update for C FE v1.
12097
12098 2018-04-27  Tom Tromey  <tom@tromey.com>
12099
12100         PR rust/22545:
12101         * rust-lang.c (rust_inclusive_range_type_p): New function.
12102         (rust_range): Handle inclusive ranges.
12103         (rust_compute_range): Likewise.
12104         * rust-exp.y (struct rust_op) <inclusive>: New field.
12105         (DOTDOTEQ): New constant.
12106         (range_expr): Add "..=" productions.
12107         (operator_tokens): Add "..=" token.
12108         (ast_range): Add "inclusive" parameter.
12109         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12110         ranges.
12111         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12112         bounds values.
12113         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12114         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12115         Update comments.
12116         * expprint.c (print_subexp_standard): Handle new bounds values.
12117         (dump_subexp_body_standard): Likewise.
12118
12119 2018-04-27  Tom Tromey  <tom@tromey.com>
12120
12121         * configure: Rebuild.
12122         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12123         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12124         "OVERRIDE".
12125         (class symbol_needs_eval_context): Likewise.
12126         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12127         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12128         "virtual".
12129         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12130         "override".
12131         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12132         * aarch64-tdep.c (instruction_reader::read): Use "override".
12133         (instruction_reader_test::read): Likewise.
12134         * arm-tdep.c (instruction_reader::read): Use "override".
12135         (instruction_reader_thumb::read): Likewise.
12136
12137 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12138
12139         PR remote/9665
12140         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12141         instead of remote_send.
12142         (remote_send): Remove.
12143
12144 2018-04-26  Pedro Alves  <palves@redhat.com>
12145
12146         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12147         find_function_start_sal instead of find_pc_line.
12148
12149 2018-04-26  Pedro Alves  <palves@redhat.com>
12150
12151         * breakpoint.c (set_breakpoint_location_function): Handle
12152         mst_data_gnu_ifunc.
12153         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12154         * elfread.c (elf_symtab_read): Give data symbols with
12155         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12156         (elf_rel_plt_read): Update comment.
12157         * linespec.c (convert_linespec_to_sals): Handle
12158         mst_data_gnu_ifunc.
12159         (minsym_found): Handle mst_data_gnu_ifunc.
12160         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12161         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12162         * parse.c (find_minsym_type_and_address): Handle
12163         mst_data_gnu_ifunc.
12164         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12165         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12166         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12167         comment.
12168         <mst_data_gnu_ifunc>: New enumerator.
12169
12170 2018-04-26  Pedro Alves  <palves@redhat.com>
12171
12172         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12173         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12174         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12175         Handle it.
12176         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12177         (lookup_minimal_symbol_by_pc): Adjust.
12178         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12179         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12180         * minsyms.h (lookup_msym_prefer): New enum.
12181         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12182         parameter by a lookup_msym_prefer parameter.
12183
12184 2018-04-26  Pedro Alves  <palves@redhat.com>
12185
12186         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12187         ends in "@plt" instead of looking at the symbol's section.
12188
12189 2018-04-26  Pedro Alves  <palves@redhat.com>
12190
12191         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12192         all references.
12193         (find_pc_partial_function_gnu_ifunc): Rename to ...
12194         (find_pc_partial_function): ... this, and remove references to
12195         'is_gnu_ifunc_p'.
12196         (find_pc_partial_function): Delete old implementation.
12197         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12198
12199 2018-04-26  Pedro Alves  <palves@redhat.com>
12200
12201         * linespec.c (struct bound_minimal_symbol_search_key): New.
12202         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12203         skip first line if we found a GNU ifunc minimal symbol by name.
12204         (compare_msymbols): Change parameters to work with a destructured
12205         lhs minsym.
12206         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12207         functions.
12208
12209 2018-04-26  Pedro Alves  <palves@redhat.com>
12210
12211         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12212         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12213         address/name.
12214         (add_location_to_breakpoint): Store the minsym and the objfile in
12215         the breakpoint location.
12216         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12217         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12218         Record the minsym in the sal.
12219         * symtab.h (symtab_and_line) <msymbol>: New field.
12220
12221 2018-04-26  Pedro Alves  <palves@redhat.com>
12222
12223         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12224         unless we actually resolved the ifunc.
12225
12226 2018-04-26  Pedro Alves  <palves@redhat.com>
12227
12228         * c-exp.y (variable production): Prefer ifunc minsyms over
12229         regular function symbols.
12230         * symtab.c (find_gnu_ifunc): New function.
12231         * minsyms.h (lookup_msym_prefer): New enum.
12232         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12233         parameter by a lookup_msym_prefer parameter.
12234         * symtab.h (find_gnu_ifunc): New declaration.
12235
12236 2018-04-26  Pedro Alves  <palves@redhat.com>
12237
12238         * blockframe.c (find_gnu_ifunc_target_type): New function.
12239         (find_function_type): New.
12240         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12241         return a value with a memory address.
12242         (eval_call): For calls to GNU ifunc functions, try to find the
12243         type of the target function from the type that the resolver
12244         returns.
12245         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12246         symbols.
12247         * infcall.c (find_function_return_type): Delete.
12248         (find_function_addr): Add 'function_type' parameter.  For calls to
12249         GNU ifunc functions, try to find the type of the target function
12250         from the type that the resolver returns, and return it via
12251         FUNCTION_TYPE.
12252         (call_function_by_hand_dummy): Adjust to use the function type
12253         returned by find_function_addr.
12254         (find_function_addr): Add 'function_type' parameter and move
12255         description here.
12256         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12257         declarations.
12258
12259 2018-04-26  Pedro Alves  <palves@redhat.com>
12260
12261         * c-exp.y (variable production): Skip finding an alias for ifunc
12262         symbols.
12263
12264 2018-04-26  Pedro Alves  <palves@redhat.com>
12265
12266         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12267
12268 2018-04-25  Pedro Alves  <palves@redhat.com>
12269
12270         * infcmd.c (kill_command): Print the pid as string, not the whole
12271         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12272         message.
12273         * remote.c (remote_detach_1): Print the pid as string, not the
12274         whole thread's ptid.
12275
12276 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12277             Sergio Durigan Junior  <sergiodj@redhat.com>
12278             Pedro Alves  <palves@redhat.com>
12279
12280         * infcmd.c (kill_command): Print message when inferior has
12281         been killed.
12282         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12283         '1'.
12284         (add_inferior): Improve message printed when
12285         'print_inferior_events' is on.
12286         (exit_inferior): Remove message printed when
12287         'print_inferior_events' is on.
12288         (detach_inferior): Improve message printed when
12289         'print_inferior_events' is on.
12290         (initialize_inferiors): Use 'add_inferior_silent' to set
12291         'current_inferior_'.
12292         * inferior.h (print_inferior_events): Declare here as
12293         'extern'.
12294         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12295         '[Detaching...]' messages when 'print_inferior_events' is on.
12296         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12297         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12298         'Detaching after fork from child...', replace it by '... from
12299         parent...'.
12300         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12301         prefix/suffix when printing 'Detaching...' messages.  Print
12302         them when 'print_inferior_events' is on.
12303         * remote.c (remote_detach_1): Print message when detaching
12304         from inferior and '!is_fork_parent'.
12305
12306 2018-04-24  Tom Tromey  <tom@tromey.com>
12307
12308         * cli-out.h: Reindent.
12309
12310 2018-04-24  Tom Tromey  <tom@tromey.com>
12311
12312         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12313         (cli_ui_out::do_field_string): Use fputs_filtered.
12314         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12315
12316 2018-04-23  Tom Tromey  <tom@tromey.com>
12317
12318         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12319         gdb::unique_xmalloc_ptr.
12320
12321 2018-04-23  Tom Tromey  <tom@tromey.com>
12322
12323         * configure: Rebuild.
12324
12325 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12326
12327         PR gdb/23095
12328         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12329         prepare_for_testing.  Set normal_bp to r_debug_state if target
12330         is bsd.
12331
12332 2018-04-21  Pedro Alves  <palves@redhat.com>
12333             Rajendra SY  <rajendra.sy@gmail.com>
12334
12335         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12336         * remote.c (extended_remote_attach): In all-stop mode, mark the
12337         thread as executing.
12338
12339 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12340
12341         * thread.c (thread_apply_all_command): Fix comment.
12342         (thread_command): Fix comment.
12343
12344 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12345
12346         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12347         parameter.
12348         * features/aarch64-core.c (create_feature_aarch64_core):
12349         Regenerate.
12350         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12351         Likewise.
12352         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12353         Likewise.
12354         * features/i386/32bit-avx512.c
12355         (create_feature_i386_32bit_avx512): Likewise.
12356         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12357         Likewise.
12358         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12359         Likewise.
12360         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12361         Likewise.
12362         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12363         Likewise.
12364         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12365         Likewise.
12366         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12367         Likewise.
12368         * features/i386/64bit-avx512.c
12369         (create_feature_i386_64bit_avx512): Likewise.
12370         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12371         Likewise.
12372         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12373         Likewise.
12374         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12375         Likewise.
12376         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12377         Likewise.
12378         * features/i386/64bit-segments.c
12379         (create_feature_i386_64bit_segments): Likewise.
12380         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12381         Likewise.
12382         * features/i386/x32-core.c
12383         (create_feature_i386_x32_core): Likewise.
12384         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12385         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12386         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12387         * target-descriptions.c: In generated code, don't pass xml
12388         filename.
12389
12390 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12391
12392         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12393         (print_xml_feature::visit_post): Likewise.
12394         (print_xml_feature::visit): Likewise.
12395         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12396         (print_xml_feature): Add new class.
12397         * regformats/regdat.sh: Null xmltarget on feature targets.
12398         * target-descriptions.c (struct target_desc): Add xmltarget.
12399         (maintenance_check_tdesc_xml_convert): Add unittest function.
12400         (tdesc_get_features_xml): Add function to get xml.
12401         (maintenance_check_xml_descriptions): Test xml generation.
12402         * xml-tdesc.c (string_read_description_xml): Add function.
12403         * xml-tdesc.h (string_read_description_xml): Add declaration.
12404
12405 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12406
12407         * features/Makefile: Add feature marker to targets with new style
12408         target descriptions.
12409         * regformats/aarch64.dat: Regenerate.
12410         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12411         * regformats/i386/amd64-avx-linux.dat: Likewise.
12412         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12413         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12414         * regformats/i386/amd64-linux.dat: Likewise.
12415         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12416         * regformats/i386/amd64.dat: Likewise.
12417         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12418         * regformats/i386/i386-avx-linux.dat: Likewise.
12419         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12420         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12421         * regformats/i386/i386-linux.dat: Likewise.
12422         * regformats/i386/i386-mmx-linux.dat: Likewise.
12423         * regformats/i386/i386-mpx-linux.dat: Likewise.
12424         * regformats/i386/i386.dat: Likewise.
12425         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12426         * regformats/i386/x32-avx-linux.dat: Likewise.
12427         * regformats/i386/x32-linux.dat: Likewise.
12428         * regformats/tic6x-c62x-linux.dat: Likewise.
12429         * regformats/tic6x-c64x-linux.dat: Likewise.
12430         * regformats/tic6x-c64xp-linux.dat: Likewise.
12431         * regformats/regdat.sh: Parse feature marker.
12432
12433 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12434
12435         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12436         (tdesc_osabi_name): Likewise.
12437         * target-descriptions.c (tdesc_architecture_name): Add new
12438         function.
12439         (tdesc_osabi_name): Likewise.
12440
12441 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12442
12443         * common/tdesc.c (tdesc_predefined_type): Move to here.
12444         (tdesc_named_type): Likewise.
12445         (tdesc_create_vector): Likewise.
12446         (tdesc_create_struct): Likewise.
12447         (tdesc_set_struct_size): Likewise.
12448         (tdesc_create_union): Likewise.
12449         (tdesc_create_flags): Likewise.
12450         (tdesc_create_enum): Likewise.
12451         (tdesc_add_field): Likewise.
12452         (tdesc_add_typed_bitfield): Likewise.
12453         (tdesc_add_bitfield): Likewise.
12454         (tdesc_add_flag): Likewise.
12455         (tdesc_add_enum_value): Likewise.
12456         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12457         (struct tdesc_type_vector): Likewise.
12458         (struct tdesc_type_field): Likewise.
12459         (struct tdesc_type_with_fields): Likewise.
12460         (tdesc_create_enum): Add declaration.
12461         (tdesc_add_typed_bitfield): Likewise.
12462         (tdesc_add_enum_value): Likewise.
12463         * target-descriptions.c (tdesc_type_field): Move from here.
12464         (tdesc_type_builtin): Likewise.
12465         (tdesc_type_vector): Likewise.
12466         (tdesc_type_with_fields): Likewise.
12467         (tdesc_predefined_types): Likewise.
12468         (tdesc_named_type): Likewise.
12469         (tdesc_create_vector): Likewise.
12470         (tdesc_create_struct): Likewise.
12471         (tdesc_set_struct_size): Likewise.
12472         (tdesc_create_union): Likewise.
12473         (tdesc_create_flags): Likewise.
12474         (tdesc_create_enum): Likewise.
12475         (tdesc_add_field): Likewise.
12476         (tdesc_add_typed_bitfield): Likewise.
12477         (tdesc_add_bitfield): Likewise.
12478         (tdesc_add_flag): Likewise.
12479         (tdesc_add_enum_value): Likewise.
12480         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12481         (tdesc_add_typed_bitfield): Likewise.
12482         (tdesc_add_enum_value): Likewise.
12483
12484 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12485
12486         * common/tdesc.c (tdesc_feature::accept): Move to here.
12487         (tdesc_feature::operator==): Likewise.
12488         (tdesc_create_reg): Likewise.
12489         * common/tdesc.h (tdesc_type_kind): Likewise.
12490         (struct tdesc_type): Likewise.
12491         (struct tdesc_feature): Likewise.
12492         * regformats/regdat.sh: Create a feature.
12493         * target-descriptions.c (tdesc_type_kind): Move from here.
12494         (tdesc_type): Likewise.
12495         (tdesc_type_up): Likewise.
12496         (tdesc_feature): Likewise.
12497         (tdesc_create_reg): Likewise.
12498
12499 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12500
12501         * Makefile.in: Add arch/tdesc.c
12502         * common/tdesc.c: New file.
12503         * common/tdesc.h (tdesc_element_visitor): Move to here.
12504         (tdesc_element): Likewise.
12505         (tdesc_reg): Likewise.
12506         (tdesc_reg_up): Likewise.
12507         * regformats/regdef.h (reg): Add offset to constructors.
12508         * target-descriptions.c (tdesc_element_visitor): Move from here.
12509         (tdesc_element): Likewise.
12510         (tdesc_reg): Likewise.
12511         (tdesc_reg_up): Likewise.
12512
12513 2018-04-17  Tom Tromey  <tom@tromey.com>
12514
12515         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12516         discriminant field.
12517
12518 2018-04-17  Tom Tromey  <tom@tromey.com>
12519
12520         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12521
12522 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12523
12524         * symtab.c (print_symbol_info): Skip printing filename and line
12525         number when `last' is NULL.
12526         (symtab_symbol_info): Use empty string instead of NULL for first
12527         invocation of print_symbol_info.
12528         (rbreak_command): Pass NULL to `last' parameter of
12529         print_symbol_info.
12530
12531 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12532
12533         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12534         instead of nullptr.
12535
12536 2018-04-16  Pedro Alves  <palves@redhat.com>
12537
12538         * MAINTAINERS (sh): Remove.
12539         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12540         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12541         (ALLDEPFILES): Remove sh64-tdep.c.
12542         * NEWS: Mentions that support for SH-5/SH64 is removed.
12543         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12544         (sh*-*-openbsd*): Ditto.
12545         (sh64-*-elf*): Remove.
12546         (sh*): Remove.
12547         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12548         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12549         * sh-tdep.c: No longer include "sh64-tdep.h".
12550         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12551         * sh64-tdep.c, sh64-tdep.h: Remove files.
12552
12553 2018-04-16  Pedro Alves  <palves@redhat.com>
12554
12555         * MAINTAINERS: Remove m88k.
12556         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12557         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12558         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12559         * NEWS: Mention that support for m88k was removed.
12560         * configure.host (m88*-*-*): Remove support.
12561         * configure.nat (m88k-*-*): Remove support.
12562         * configure.tgt (m88*-*-openbsd*): Remove.
12563         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12564
12565 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12566
12567         * configure.tgt (x86_tobjs): New variable.
12568         (amd64_tobjs, i386_tobjs): Use it.
12569
12570 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12571
12572         * symtab.c (print_symbol_info): Precede the symbol definition by
12573         the line number when available.
12574         * NEWS: Advertise this enhancement.
12575
12576 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12577
12578         * NEWS (New options): announce set/show record btrace cpu.
12579         * btrace.c: Include record-btrace.h.
12580         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12581         the vendor is unknown.
12582         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12583         Maybe overwrite the btrace configuration's cpu.
12584         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12585         (btrace_fetch): Add cpu parameter.  Update callers.
12586         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12587         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12588         errata workarounds if the vendor is unknown.
12589         * python/py-record-btrace.c: Include record-btrace.h.
12590         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12591         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12592         * record-btrace.c (record_btrace_cpu_state_kind): New.
12593         (record_btrace_cpu): New.
12594         (set_record_btrace_cpu_cmdlist): New.
12595         (record_btrace_get_cpu): New.
12596         (require_btrace_thread, record_btrace_info)
12597         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12598         (cmd_set_record_btrace_cpu_none): New.
12599         (cmd_set_record_btrace_cpu_auto): New.
12600         (cmd_set_record_btrace_cpu): New.
12601         (cmd_show_record_btrace_cpu): New.
12602         (_initialize_record_btrace): Initialize set/show record btrace cpu
12603         commands.
12604         * record-btrace.h (record_btrace_get_cpu): New.
12605
12606 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12607
12608         * record.c (set_record_command): Fix typo in message.
12609
12610 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12611
12612         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12613
12614 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12615
12616         * infrun.c (process_event_stop_test): Call
12617         gdbarch_in_indirect_branch_thunk.
12618         * gdbarch.sh (in_indirect_branch_thunk): New.
12619         * gdbarch.c: Regenerated.
12620         * gdbarch.h: Regenerated.
12621         * x86-tdep.h: New.
12622         * x86-tdep.c: New.
12623         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12624         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12625         (ALLDEPFILES): Add x86-tdep.c.
12626         * arch-utils.h (default_in_indirect_branch_thunk): New.
12627         * arch-utils.c (default_in_indirect_branch_thunk): New.
12628         * i386-tdep: Include x86-tdep.h.
12629         (i386_in_indirect_branch_thunk): New.
12630         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12631         function.
12632         * amd64-tdep: Include x86-tdep.h.
12633         (amd64_in_indirect_branch_thunk): New.
12634         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12635
12636 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12637
12638         PR gdb/23053
12639         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12640         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12641         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12642         regression.
12643
12644 2018-04-12  Tom Tromey  <tom@tromey.com>
12645
12646         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12647         (rust_evaluate_subexp): Likewise.
12648
12649 2018-04-12  Pedro Alves  <palves@redhat.com>
12650
12651         * procfs.c (procfs_detach): Make forward declaration's prototype
12652         match definition's protototype.
12653         (proc_get_LDT_entry): Remove stale do_cleanups call.
12654
12655 2018-04-12  Pedro Alves  <palves@redhat.com>
12656
12657         * target.h (target_ops::to_has_exited): Delete.
12658         (target_has_exited): Delete.
12659         * target-delegates.c: Regenerate.
12660
12661 2018-04-11  Pedro Alves  <palves@redhat.com>
12662
12663         * target.c (fileio_fh_t::t): Add comment.
12664         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12665         (target_fileio_close): Handle a NULL target.
12666         (invalidate_fileio_fh): New.
12667         (target_close): Call it.
12668         * remote.c (remote_hostio_send_command): No longer check whether
12669         remote_desc is open.
12670
12671 2018-04-11  Pedro Alves  <palves@redhat.com>
12672
12673         * target.c (fileio_fh_t): Make it a named struct instead of a
12674         typedef.
12675         (fileio_fh_t::is_closed): New method.
12676         (DEF_VEC_O (fileio_fh_t)): Remove.
12677         (fileio_fhandles): Now a std::vector.
12678         (is_closed_fileio_fh): Delete.
12679         (acquire_fileio_fd): Adjust.  Rename parameters.
12680         (release_fileio_fd): Adjust.
12681         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12682         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12683         (target_fileio_close): Adjust.
12684
12685 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12686
12687         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12688         index.
12689
12690 2018-04-10  Pedro Alves  <palves@redhat.com>
12691
12692         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12693         (scoped_finish_thread_state): New class.
12694         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12695         cleanup.
12696         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12697         (fetch_inferior_event, normal_stop): Likewise.
12698         * thread.c (finish_thread_state_cleanup): Delete.
12699
12700 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12701             Pedro Alves  <palves@redhat.com>
12702
12703         * value.c: Include "selftest.h" and "common/array-view.h".
12704         (struct range) <operator ==>: New.
12705         (test_ranges_contain): New.
12706         (check_ranges_vector): New.
12707         (test_insert_into_bit_range_vector): New.
12708         (_initialize_values): Register selftests.
12709         * common/array-view.h (operator==, operator!=): New.
12710
12711 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12712
12713         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12714         an iterator.
12715         * inline-frame.c: Include <algorithm>.
12716         (struct inline_state): Add constructor.
12717         (inline_state_s): Remove.
12718         (DEF_VEC_O(inline_state_s)): Remove.
12719         (inline_states): Change type to std::vector.
12720         (find_inline_frame_state): Adjust to std::vector.
12721         (allocate_inline_frame_state): Remove.
12722         (clear_inline_frame_state): Adjust to std::vector.
12723         (skip_inline_frames): Adjust to std::vector.
12724
12725 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12726
12727         * tracepoint.h (struct trace_state_variable): Add constructor.
12728         <name>: Change type to std::string.
12729         * tracepoint.c (tsv_s): Remove.
12730         (DEF_VEC_O(tsv_s)): Remove.
12731         (tvariables): Change to std::vector.
12732         (create_trace_state_variable): Adjust to std::vector.
12733         (find_trace_state_variable): Likewise.
12734         (find_trace_state_variable_by_number): Likewise.
12735         (delete_trace_state_variable): Likewise.
12736         (trace_variable_command): Adjust to std::string.
12737         (delete_trace_variable_command): Likewise.
12738         (tvariables_info_1): Adjust to std::vector.
12739         (save_trace_state_variables): Likewise.
12740         (start_tracing): Likewise.
12741         (merge_uploaded_trace_state_variables): Adjust to std::vector
12742         and std::string.
12743         * target.h (struct target_ops)
12744         <to_download_trace_state_variable>: Pass reference to
12745         trace_state_variable.
12746         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12747         * target-delegates.c: Re-generate.
12748         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12749         (mi_tsv_deleted): Likewise.
12750         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12751         * remote.c (remote_download_trace_state_variable): Change
12752         pointer to reference and adjust.
12753         * make-target-delegates (parse_argtypes): Handle references.
12754         (write_function_header): Likewise.
12755         (munge_type): Likewise.
12756
12757 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12758
12759         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12760         string_view-selftests.c.
12761         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12762         testsuite.
12763         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12764         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12765         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12766         * unittests/basic_string_view/element_access/char/1.cc:
12767         Likewise.
12768         * unittests/basic_string_view/element_access/char/empty.cc:
12769         Likewise.
12770         * unittests/basic_string_view/element_access/char/front_back.cc:
12771         Likewise.
12772         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12773         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12774         Likewise.
12775         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12776         Likewise.
12777         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12778         Likewise.
12779         * unittests/basic_string_view/operations/compare/char/1.cc:
12780         Likewise.
12781         * unittests/basic_string_view/operations/compare/char/13650.cc:
12782         Likewise.
12783         * unittests/basic_string_view/operations/copy/char/1.cc:
12784         Likewise.
12785         * unittests/basic_string_view/operations/data/char/1.cc:
12786         Likewise.
12787         * unittests/basic_string_view/operations/find/char/1.cc:
12788         Likewise.
12789         * unittests/basic_string_view/operations/find/char/2.cc:
12790         Likewise.
12791         * unittests/basic_string_view/operations/find/char/3.cc:
12792         Likewise.
12793         * unittests/basic_string_view/operations/find/char/4.cc:
12794         Likewise.
12795         * unittests/basic_string_view/operations/rfind/char/1.cc:
12796         Likewise.
12797         * unittests/basic_string_view/operations/rfind/char/2.cc:
12798         Likewise.
12799         * unittests/basic_string_view/operations/rfind/char/3.cc:
12800         Likewise.
12801         * unittests/basic_string_view/operations/substr/char/1.cc:
12802         Likewise.
12803         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12804         * unittests/string_view-selftests.c: New file.
12805
12806 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12807
12808         * unittests/basic_string_view/capacity/1.cc: New file.
12809         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12810         * unittests/basic_string_view/cons/char/1.cc: New file.
12811         * unittests/basic_string_view/cons/char/2.cc: New file.
12812         * unittests/basic_string_view/cons/char/3.cc: New file.
12813         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12814         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12815         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12816         * unittests/basic_string_view/element_access/char/1.cc: New file.
12817         * unittests/basic_string_view/element_access/char/2.cc: New file.
12818         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12819         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12820         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12821         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12822         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12823         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12824         * unittests/basic_string_view/include.cc: New file.
12825         * unittests/basic_string_view/inserters/char/1.cc: New file.
12826         * unittests/basic_string_view/inserters/char/2.cc: New file.
12827         * unittests/basic_string_view/inserters/char/3.cc: New file.
12828         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12829         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12830         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12831         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12832         * unittests/basic_string_view/literals/types.cc: New file.
12833         * unittests/basic_string_view/literals/values.cc: New file.
12834         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12835         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12836         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12837         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12838         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12839         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12840         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12841         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12842         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12843         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12844         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12845         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12846         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12847         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12848         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12849         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12850         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12851         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12852         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12853         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12854         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12855         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12856         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12857         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12858         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12859         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12860         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12861         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12862         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12863         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12864         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12865         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12866         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12867         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12868         * unittests/basic_string_view/operators/char/2.cc: New file.
12869         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12870         * unittests/basic_string_view/range_access/char/1.cc: New file.
12871         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12872         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12873         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12874         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12875         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12876         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12877         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12878         * unittests/basic_string_view/typedefs.cc: New file.
12879         * unittests/basic_string_view/types/1.cc: New file.
12880
12881 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12882
12883         * common/gdb_string_view.h: Remove libstdc++ implementation
12884         details, adjust to gdb reality.
12885         * common/gdb_string_view.tcc: Likewise.
12886         * cli/cli-script.c (struct string_view): Remove.
12887         (user_args) <m_args>: Change element type to gdb::string_view.
12888         (user_args::insert_args): Adjust.
12889
12890 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12891
12892         * common/gdb_string_view.h: New file.
12893         * common/gdb_string_view.tcc: New file.
12894
12895 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12896
12897         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12898         * configure: Re-generate.
12899
12900 2018-04-09  Pedro Alves  <palves@redhat.com>
12901
12902         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12903         (set_target_gdbarch): Call
12904         gdb::observers::architecture_changed.notify instead of
12905         observer_notify_architecture_changed.
12906
12907 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12908
12909         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12910         (do_restore_current_traceframe_cleanup): Remove.
12911         (restore_current_traceframe_cleanup_dtor): Remove.
12912         (make_cleanup_restore_current_traceframe): Remove.
12913         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12914         New.
12915         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12916         * infrun.c (fetch_inferior_event): Use
12917         scoped_restore_current_traceframe.
12918
12919 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12920
12921         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12922         Remove.
12923         <n_allocated_type_units>: Remove.
12924         <all_type_units>: Change to std::vector.
12925         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12926         to std::vector change.
12927         (dwarf2_per_objfile::get_cutu): Likewise.
12928         (dwarf2_per_objfile::get_tu): Likewise.
12929         (create_signatured_type_table_from_index): Likewise.
12930         (create_signatured_type_table_from_debug_names): Likewise.
12931         (dw2_symtab_iter_next): Likewise.
12932         (dw2_print_stats): Likewise.
12933         (dw2_expand_all_symtabs): Likewise.
12934         (dw2_expand_marked_cus): Likewise.
12935         (dw2_debug_names_iterator::next): Likewise.
12936         (dwarf2_initialize_objfile): Likewise.
12937         (add_signatured_type_cu_to_table): Likewise.
12938         (create_all_type_units): Likewise.
12939         (add_type_unit): Likewise.
12940         (struct tu_abbrev_offset): Add constructor.
12941         (build_type_psymtabs_1): Adjust to std::vector change.
12942         (print_tu_stats): Likewise.
12943         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12944         (write_debug_names): Likewise.
12945
12946 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12947
12948         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12949         Make an std::vector.
12950         <n_comp_units>: Remove.
12951         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12952         to std::vector change.
12953         (dwarf2_per_objfile::get_cutu): Likewise.
12954         (dwarf2_per_objfile::get_cu): Likewise.
12955         (create_cus_from_index): Likewise.
12956         (create_addrmap_from_index): Likewise.
12957         (create_addrmap_from_aranges): Likewise.
12958         (dwarf2_read_index): Likewise.
12959         (dw2_find_last_source_symtab): Likewise.
12960         (dw2_map_symtabs_matching_filename): Likewise.
12961         (dw2_symtab_iter_next): Likewise.
12962         (dw2_print_stats): Likewise.
12963         (dw2_expand_all_symtabs): Likewise.
12964         (dw2_expand_symtabs_with_fullname): Likewise.
12965         (dw2_expand_marked_cus): Likewise.
12966         (dw2_map_symbol_filenames): Likewise.
12967         (create_cus_from_debug_names): Likewise.
12968         (dwarf2_read_debug_names): Likewise.
12969         (dw2_debug_names_iterator::next): Likewise.
12970         (dwarf2_initialize_objfile): Likewise.
12971         (set_partial_user): Likewise.
12972         (dwarf2_build_psymtabs_hard): Likewise.
12973         (read_comp_units_from_section): Remove arguments, adjust to
12974         std::vector change.
12975         (create_all_comp_units): Adjust to std::vector and
12976         read_comp_units_from_section changes.
12977         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12978         change.
12979         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12980         (psyms_seen_size): Likewise.
12981         (write_gdbindex): Likewise.
12982         (write_debug_names): Likewise.
12983
12984 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12985
12986         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12987         with dwarf2_per_objfile.
12988         (create_cus_from_index): Likewise.
12989         (create_signatured_type_table_from_index): Likewise.
12990         (dwarf2_read_index): Likewise.
12991         (dwarf2_initialize_objfile): Likewise.
12992         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12993         per_cu rather than get_dwarf2_per_objfile.
12994
12995 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12996
12997         * dwarf2read.h (struct signatured_type): Forward declare.
12998         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12999         New methods.
13000         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13001         (dw2_get_cutu): ...this.
13002         (dwarf2_per_objfile::get_cu): Rename from...
13003         (dw2_get_cu): ...this.
13004         (dwarf2_per_objfile::get_tu): New.
13005         (create_addrmap_from_index): Adjust.
13006         (create_addrmap_from_aranges): Adjust.
13007         (dw2_find_last_source_symtab): Adjust.
13008         (dw2_map_symtabs_matching_filename): Adjust.
13009         (dw2_symtab_iter_next): Adjust.
13010         (dw2_print_stats): Adjust.
13011         (dw2_expand_all_symtabs): Adjust.
13012         (dw2_expand_symtabs_with_fullname): Adjust.
13013         (dw2_expand_marked_cus): Adjust.
13014         (dw_expand_symtabs_matching_file_matcher): Adjust.
13015         (dw2_map_symbol_filenames): Adjust.
13016         (dw2_debug_names_iterator::next): Adjust.
13017         (dwarf2_initialize_objfile): Adjust.
13018         (set_partial_user): Adjust.
13019         (dwarf2_build_psymtabs_hard): Adjust.
13020
13021 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13022
13023         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13024         Remove unused variables.
13025         (dw2_map_symtabs_matching_filename): Likewise.
13026         (dwarf2_record_block_ranges): Likewise.
13027         (dwarf2_read_addr_index): Likewise.
13028         (follow_die_offset): Likewise.
13029
13030 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13031
13032         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13033         to symbol_file_add_main.
13034
13035 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13036
13037         PR mi/22299
13038         * mi/mi-console.c (do_fputc_async_safe): New.
13039         (mi_console_file::write_async_safe): New.
13040         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13041         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13042         New.
13043         * ui-file.c (ui_file::putstrn): Adjust call to
13044         fputstrn_unfiltered.
13045         * utils.c (printchar): Replace do_fputs and do_fprintf
13046         parameters by do_fputc.
13047         (fputstr_filtered): Adjust call to printchar.
13048         (fputstr_unfiltered): Likewise.
13049         (fputstrn_filtered): Likewise.
13050         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13051         printchar.
13052         * utils.h (do_fputc_ftype): New typedef.
13053         (fputstrn_unfiltered): Add do_fputc parameter.
13054
13055 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13056
13057         * regformats/i386/i386-avx.dat: Remove.
13058
13059 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13060
13061         PR gdb/22979
13062         * amd64-tdep.c (amd64_none_init_abi): New function.
13063         (amd64_x32_none_init_abi): New function.
13064         (_initialize_amd64_tdep): Register handlers for x86-64 and
13065         x64_32 with GDB_OSABI_NONE.
13066         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13067         GDB_OSABI_NONE osabi.
13068
13069 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13070
13071         PR gdb/22980
13072         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13073         GDB_OSABI_NONE.
13074         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13075         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13076
13077 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13078
13079         * common/byte-vector.h (char_vector): New type.
13080         * target.h (target_read_alloc): Return
13081         gdb::optional<byte_vector>.
13082         (target_read_stralloc): Return gdb::optional<char_vector>.
13083         (target_get_osdata): Return gdb::optional<char_vector>.
13084         * target.c (target_read_alloc_1): Templatize.  Replacement
13085         manual memory management with vector.
13086         (target_read_alloc): Change return type, adjust.
13087         (target_read_stralloc): Change return type, adjust.
13088         (target_get_osdata): Change return type, adjust.
13089         * auxv.c (struct auxv_info) <length>: Remove.
13090         <data>: Change type to gdb::optional<byte_vector>.
13091         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13092         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13093         (target_auxv_search): Adjust.
13094         (fprint_target_auxv): Adjust.
13095         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13096         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13097         (linux_make_corefile_notes): Adjust.
13098         * osdata.c (get_osdata): Adjust.
13099         * remote.c (remote_get_threads_with_qxfer): Adjust.
13100         (remote_memory_map): Adjust.
13101         (remote_traceframe_info): Adjust.
13102         (btrace_read_config): Adjust.
13103         (remote_read_btrace): Adjust.
13104         (remote_pid_to_exec_file): Adjust.
13105         * solib-aix.c (solib_aix_get_library_list): Adjust.
13106         * solib-dsbt.c (decode_loadmap): Don't free buf.
13107         (dsbt_get_initial_loadmaps): Adjust.
13108         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13109         * solib-target.c (solib_target_current_sos): Adjust.
13110         * tracepoint.c (sdata_make_value): Adjust.
13111         * xml-support.c (xinclude_start_include): Adjust.
13112         (xml_fetch_content_from_file): Adjust.
13113         * xml-support.h (xml_fetch_another): Change return type.
13114         (xml_fetch_content_from_file): Change return type.
13115         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13116         * xml-tdesc.c (file_read_description_xml): Adjust.
13117         (fetch_available_features_from_target): Change return type.
13118         (target_fetch_description_xml): Adjust.
13119         (target_read_description_xml): Adjust.
13120
13121 2018-04-06  Tom Tromey  <tom@tromey.com>
13122
13123         * value.c (~value): Update.
13124         (struct value) <contents>: Now unique_xmalloc_ptr.
13125         (value_contents_bits_eq, allocate_value_contents)
13126         (value_contents_raw, value_contents_all_raw)
13127         (value_contents_for_printing, value_contents_for_printing_const)
13128         (set_value_enclosing_type): Update.
13129
13130 2018-04-06  Tom Tromey  <tom@tromey.com>
13131
13132         * value.c (range_s): Remove typedef, VEC.
13133         (struct range): Add operator<.
13134         (range_lessthan): Remove.
13135         (ranges_contain): Change type.
13136         (~value): Update.
13137         (struct value) <unavailable, optimized_out>: Now std::vector.
13138         (value_entirely_available)
13139         (value_entirely_covered_by_range_vector)
13140         (value_entirely_unavailable, value_entirely_optimized_out):
13141         Update.
13142         (insert_into_bit_range_vector): Change argument type.
13143         (find_first_range_overlap): Likewise.
13144         (struct ranges_and_idx, value_contents_bits_eq)
13145         (require_not_optimized_out, require_available): Update.
13146         (ranges_copy_adjusted): Change argument types.
13147         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13148
13149 2018-04-06  Tom Tromey  <tom@tromey.com>
13150
13151         * value.c (~value): Update.
13152         (struct value) <parent>: Now a value_ref_ptr.
13153         (value_parent, set_value_parent, value_address, value_copy):
13154         Update.
13155
13156 2018-04-06  Tom Tromey  <tom@tromey.com>
13157
13158         * value.c (struct value): Add constructor, destructor, and member
13159         initializers.
13160         (allocate_value_lazy, value_decref): Update.
13161
13162 2018-04-06  Tom Tromey  <tom@tromey.com>
13163
13164         * value.c (struct value) <released, next>: Remove.
13165         (all_values): Now a std::vector.
13166         (allocate_value_lazy): Update.
13167         (value_next): Remove.
13168         (value_mark, value_free_to_mark, release_value)
13169         (value_release_to_mark): Update.
13170
13171 2018-04-06  Tom Tromey  <tom@tromey.com>
13172
13173         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13174         (free_value_chain): Remove.
13175         * value.c (free_value_chain): Remove.
13176         (value_release_to_mark): Return a std::vector.
13177         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13178         std::vector.
13179         (check_condition): Update.
13180         * eval.c (fetch_subexp_value): Change "val_chain" to a
13181         std::vector.
13182         * breakpoint.c (update_watchpoint): Update.
13183         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13184
13185 2018-04-06  Tom Tromey  <tom@tromey.com>
13186
13187         * value.h (free_all_values): Remove.
13188         * value.c (free_all_values): Remove.
13189
13190 2018-04-06  Tom Tromey  <tom@tromey.com>
13191
13192         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13193         (value_history_chain, value_history_count): Remove.
13194         (value_history): New global.
13195         (record_latest_value, access_value_history, show_values)
13196         (preserve_values): Update.
13197
13198 2018-04-06  Tom Tromey  <tom@tromey.com>
13199
13200         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13201         * varobj.c (varobj_set_display_format, varobj_set_value)
13202         (install_default_visualizer, construct_visualizer)
13203         (install_new_value, ~varobj, varobj_get_value_type)
13204         (my_value_of_variable, varobj_editable_p): Update.
13205         * c-varobj.c (c_describe_child, c_value_of_variable)
13206         (cplus_number_of_children, cplus_describe_child): Update.
13207         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13208         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13209         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13210
13211 2018-04-06  Tom Tromey  <tom@tromey.com>
13212
13213         * printcmd.c (last_examine_address): Change type to
13214         value_ref_ptr.
13215         (do_examine, x_command): Update.
13216
13217 2018-04-06  Tom Tromey  <tom@tromey.com>
13218
13219         * value.c (release_value): Update.
13220         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13221         (struct bpstats) <val>: Now a value_ref_ptr.
13222         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13223         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13224         (~watchpoint, print_it_watchpoint, watch_command_1)
13225         (invalidate_bp_value_on_memory_change): Update.
13226
13227 2018-04-06  Tom Tromey  <tom@tromey.com>
13228
13229         * varobj.c (varobj_clear_saved_item)
13230         (update_dynamic_varobj_children, install_new_value, ~varobj):
13231         Update.
13232         * value.h (value_incref): Move declaration earlier.
13233         (value_decref): Rename from value_free.
13234         (struct value_ref_policy): New.
13235         (value_ref_ptr): New typedef.
13236         (struct value_deleter): Remove.
13237         (gdb_value_up): Remove typedef.
13238         (release_value): Change return type.
13239         (release_value_or_incref): Remove.
13240         * value.c (set_value_parent): Update.
13241         (value_incref): Change return type.
13242         (value_decref): Rename from value_free.
13243         (value_free_to_mark, free_all_values, free_value_chain): Update.
13244         (release_value): Return value_ref_ptr.
13245         (release_value_or_incref): Remove.
13246         (record_latest_value, set_internalvar, clear_internalvar):
13247         Update.
13248         * stack.c (info_frame_command): Don't call value_free.
13249         * python/py-value.c (valpy_dealloc, valpy_new)
13250         (value_to_value_object): Update.
13251         * printcmd.c (do_examine): Update.
13252         * opencl-lang.c (lval_func_free_closure): Update.
13253         * mi/mi-main.c (register_changed_p): Don't call value_free.
13254         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13255         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13256         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13257         value_free.
13258         * guile/scm-value.c (vlscm_free_value_smob)
13259         (vlscm_scm_from_value): Update.
13260         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13261         (frame_unwind_register_unsigned, get_frame_register_bytes)
13262         (put_frame_register_bytes): Don't call value_free.
13263         * findvar.c (address_from_register): Don't call value_free.
13264         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13265         * dwarf2loc.c (entry_data_value_free_closure)
13266         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13267         (dwarf2_evaluate_loc_desc_full): Update.
13268         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13269         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13270         (~watchpoint, watch_command_1)
13271         (invalidate_bp_value_on_memory_change): Update.
13272         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13273
13274 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13275
13276         PR gdb/23022
13277         * warning.m4: Add -Wno-error=deprecated-register.
13278         * configure: Re-generate.
13279
13280 2018-04-05  Tom Tromey  <tom@tromey.com>
13281
13282         * linespec.h: Remove include of "vec.h".
13283
13284 2018-04-05  Tom Tromey  <tom@tromey.com>
13285
13286         * linespec.c (typep): Remove typedef.
13287         (find_methods, find_superclass_methods): Take a std::vector.
13288         (find_method): Use std::vector.
13289
13290 2018-04-05  Tom Tromey  <tom@tromey.com>
13291
13292         * utils.c (compare_strings): Remove.
13293         * utils.h (compare_strings): Remove.
13294         * objc-lang.h (find_imps): Update.
13295         * objc-lang.c (find_methods): Take a std::vector.
13296         (uniquify_strings, find_imps): Likewise.
13297         * linespec.c (find_methods): Take a std::vector.
13298         (decode_objc): Use std::vector.
13299         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13300         a std::vector.
13301         (find_method, find_function_symbols): Use std::vector.
13302
13303 2018-04-05  Tom Tromey  <tom@tromey.com>
13304
13305         * completer.c (completion_tracker::completion_tracker): Remove
13306         cast.
13307         (completion_tracker::discard_completions): Likewise.
13308         * breakpoint.c (ambiguous_names_p): Remove cast.
13309         * ada-lang.c (_initialize_ada_language): Remove cast.
13310         * utils.h (streq): Update.
13311         (streq_hash): Add new declaration.
13312         * utils.c (streq): Return bool.
13313         (streq_hash): New function.
13314
13315 2018-04-05  Tom Tromey  <tom@tromey.com>
13316
13317         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13318         Remove a string copy.
13319
13320 2018-04-05  Tom Tromey  <tom@tromey.com>
13321
13322         * linespec.c (filter_results): Use std::vector.
13323         (decode_line_2, decode_line_full): Update.
13324
13325 2018-04-05  Tom Tromey  <tom@tromey.com>
13326
13327         * linespec.c (canonical_to_fullform): Return std::string.
13328         (filter_results): Update.
13329         (struct decode_line_2_item): Add constructor.
13330         <fullform, displayform>: Now std::string.
13331         (decode_line_2_compare_items): Now a std::sort comparator.
13332         (decode_line_2): Update.
13333
13334 2018-04-05  Tom Tromey  <tom@tromey.com>
13335
13336         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13337         (unexpected_linespec_error): Update.
13338         (linespec_parse_basic, parse_linespec): Update.
13339
13340 2018-04-05  Tom Tromey  <tom@tromey.com>
13341
13342         * linespec.c (linespec_parse_basic): Reindent.
13343
13344 2018-04-05  Tom Tromey  <tom@tromey.com>
13345
13346         * minsyms.h (iterate_over_minimal_symbols): Update.
13347         * minsyms.c (iterate_over_minimal_symbols): Take a
13348         gdb::function_view.
13349         * linespec.c (struct collect_minsyms): Remove.
13350         (compare_msyms): Now a std::sort comparator.
13351         (add_minsym): Add parameters.
13352         (search_minsyms_for_name): Update.  Use std::vector.
13353
13354 2018-04-03  Tom Tromey  <tom@tromey.com>
13355
13356         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13357         gdb::byte_vector.
13358
13359 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13360
13361         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13362
13363 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13364
13365         PR gdb/16959
13366         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13367         printing static type.
13368
13369 2018-04-01  Tom Tromey  <tom@tromey.com>
13370
13371         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13372         (rs6000_xfer_shared_libraries): Update.
13373
13374 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13375
13376         * common/gdb_vecs.h (char_ptr): Remove.
13377         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13378
13379 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13380
13381         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13382         with std::vector.
13383         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13384
13385 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13386
13387         * tracepoint.h (struct uploaded_tp): Initialize fields.
13388         <actions, step_actions, cmd_strings>: Change type to
13389         std::vector<char *>.
13390         * tracepoint.c (get_uploaded_tp): Allocate with new.
13391         (free_uploaded_tps): Free with delete.
13392         (parse_tracepoint_definition): Adjust to std::vector change.
13393         * breakpoint.c (read_uploaded_action): Likewise.
13394         (create_tracepoint_from_upload): Likewise.
13395         * ctf.c (ctf_write_uploaded_tp): Likewise.
13396         (SET_ARRAY_FIELD): Likewise.
13397         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13398
13399 2018-03-30  Tom Tromey  <tom@tromey.com>
13400
13401         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13402         std::unique_ptr.
13403         (svr4_keep_data_in_core): Update.
13404         (svr4_read_so_list): Update.
13405
13406 2018-03-30  Tom Tromey  <tom@tromey.com>
13407
13408         * windows-nat.c (handle_output_debug_string, handle_exception):
13409         Update.
13410         * target.h (target_read_string): Update.
13411         * target.c (target_read_string): Change "string" to
13412         unique_xmalloc_ptr.
13413         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13414         Update.
13415         * solib-frv.c (frv_current_sos): Update.
13416         * solib-dsbt.c (dsbt_current_sos): Update.
13417         * solib-darwin.c (darwin_current_sos): Update.
13418         * linux-thread-db.c (inferior_has_bug): Update.
13419         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13420         Update.  Remove alloca.
13421         * ada-lang.c (ada_main_name): Update.
13422
13423 2018-03-30  Tom Tromey  <tom@tromey.com>
13424
13425         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13426         (struct dwo_file_deleter): New.
13427         (dwo_file_up): New typedef.
13428         (open_and_init_dwo_file): Use dwo_file_up.
13429         (free_dwo_file_cleanup): Remove.
13430
13431 2018-03-30  Tom Tromey  <tom@tromey.com>
13432
13433         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13434         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13435
13436 2018-03-30  Tom Tromey  <tom@tromey.com>
13437
13438         * dwarf2read.c (class free_cached_comp_units): New class.
13439         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13440         (free_cached_comp_units): Remove function.
13441
13442 2018-03-30  Tom Tromey  <tom@tromey.com>
13443
13444         * utils.h (make_cleanup_unpush_target): Remove.
13445         * inf-ptrace.c (struct target_unpusher): New.
13446         (target_unpush_up) New typedef.
13447         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13448         target_unpush_up.
13449         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13450
13451 2018-03-27  Tom Tromey  <tom@tromey.com>
13452
13453         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13454
13455 2018-03-27  Pedro Alves  <palves@redhat.com>
13456             Tom Tromey  <tom@tromey.com>
13457
13458         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13459         destructor.  Now a class.
13460         (gdb_readline_wrapper_cleanup): Remove function.
13461         (gdb_readline_wrapper): Remove cleanups.
13462
13463 2018-03-27  Tom Tromey  <tom@tromey.com>
13464
13465         * typeprint.h (struct type_print_options) <local_typedefs,
13466         global_typedefs>: Remove "struct" keyword.
13467         (class typedef_hash_table): New class.
13468         (recursively_update_typedef_hash, add_template_parameters)
13469         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13470         (find_typedef_in_hash): Don't declare.
13471         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13472         (typedef_hash_table::recursively_update): Rename from
13473         recursively_update_typedef_hash.  Now a member.
13474         (typedef_hash_table::add_template_parameters): Rename from
13475         add_template_parameters.  Now a member.
13476         (typedef_hash_table::typedef_hash_table): Now a constructor;
13477         rename from create_typedef_hash.
13478         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13479         rename from free_typedef_hash.
13480         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13481         (do_free_global_table): Remove.
13482         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13483         from copy_type_recursive.
13484         (create_global_typedef_table): Remove.
13485         (typedef_hash_table::find_global_typedef): Now a member of
13486         typedef_hash_table.
13487         (typedef_hash_table::find_typedef): Rename from
13488         find_typedef_in_hash; now a member.
13489         (whatis_exp): Update.
13490         * extension.h (struct ext_lang_type_printers): Add constructor and
13491         destructor.
13492         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13493         declare.
13494         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13495         Now a constructor; rename from start_ext_lang_type_printers.
13496         (ext_lang_type_printers): Now a destructor; rename from
13497         free_ext_lang_type_printers.
13498         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13499         Update.
13500         (c_type_print_base_struct_union): Update.  Remove cleanups.
13501
13502 2018-03-27  Tom Tromey  <tom@tromey.com>
13503
13504         * dwarf-index-write.c: Include <cmath>.
13505
13506 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13507
13508         * NEWS: Add entry describing new "set|show varsize-limit" command.
13509         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13510         command.
13511         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13512         "set variable".
13513
13514 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13515
13516         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13517         dwarf-index-write.c
13518         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13519         * dwarf-index-common.c: New file.
13520         * dwarf-index-common.h: New file.
13521         * dwarf-index-write.c: New file.
13522         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13523         (struct dwarf2_section_info): Move from here.
13524         (dwarf2_section_info_def): Likewise.
13525         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13526         (offset_type): Likewise.
13527         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13528         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13529         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13530         (byte_swap): Likewise.
13531         (MAYBE_SWAP): Likewise.
13532         (dwarf2_per_cu_ptr): Likewise.
13533         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13534         (struct tu_stats): Likewise.
13535         (struct dwarf2_per_objfile): Likewise.
13536         (struct dwarf2_per_cu_data): Likewise.
13537         (struct signatured_type): Likewise.
13538         (sig_type_ptr): Likewise.
13539         (DEF_VEC_P (sig_type_ptr)): Likewise.
13540         (INDEX4_SUFFIX): Likewise.
13541         (INDEX5_SUFFIX): Likewise.
13542         (DEBUG_STR_SUFFIX): Likewise.
13543         (dwarf2_read_section): Make non-static.
13544         (mapped_index_string_hash): Move from here.
13545         (dwarf5_djb_hash): Likewise.
13546         (file_write): Likewise.
13547         (class data_buf): Likewise.
13548         (struct symtab_index_entry): Likewise.
13549         (struct mapped_symtab): Likewise.
13550         (find_slot): Likewise.
13551         (hash_expand): Likewise.
13552         (add_index_entry): Likewise.
13553         (uniquify_cu_indices): Likewise.
13554         (class c_str_view): Likewise.
13555         (class c_str_view_hasher): Likewise.
13556         (class vector_hasher): Likewise.
13557         (write_hash_table): Likewise.
13558         (psym_index_map): Likewise.
13559         (struct addrmap_index_data): Likewise.
13560         (add_address_entry): Likewise.
13561         (add_address_entry_worker): Likewise.
13562         (write_address_map): Likewise.
13563         (symbol_kind): Likewise.
13564         (write_psymbols): Likewise.
13565         (struct signatured_type_index_data): Likewise.
13566         (write_one_signatured_type): Likewise.
13567         (recursively_count_psymbols): Likewise.
13568         (recursively_write_psymbols): Likewise.
13569         (class debug_names): Likewise.
13570         (check_dwarf64_offsets): Likewise.
13571         (psyms_seen_size): Likewise.
13572         (write_gdbindex): Likewise.
13573         (write_debug_names): Likewise.
13574         (assert_file_size): Likewise.
13575         (write_psymtabs_to_index): Likewise.
13576         (save_gdb_index_command): Likewise.
13577         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13578         command.
13579         * dwarf2read.h: New file.
13580
13581 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13582
13583         PR gdb/22670
13584         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13585         symbol name if the CU's language stores symbol names in linkage
13586         format.
13587         * language.h (struct language_defn)
13588         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13589         all instances of this struct.
13590
13591 2018-03-26  Tom Tromey  <tom@tromey.com>
13592
13593         * stack.c (backtrace_command_1): Remove verbose code.
13594
13595 2018-03-26  Tom Tromey  <tom@tromey.com>
13596
13597         * python/py-framefilter.c (py_print_type): Don't catch
13598         exceptions.  Return void.
13599         (py_print_value): Likewise.
13600         (py_print_single_arg): Likewise.
13601         (enumerate_args): Don't catch exceptions.
13602         (py_print_args): Likewise.
13603         (py_print_frame): Likewise.
13604         (gdbpy_apply_frame_filter): Catch exceptions here.
13605
13606 2018-03-26  Tom Tromey  <tom@tromey.com>
13607
13608         * stack.c (_initialize_stack): Remove trailing newlines from help
13609         text.  Add "Usage" line to "backtrace" help.
13610
13611 2018-03-26  Tom Tromey  <tom@tromey.com>
13612
13613         PR python/16486:
13614         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13615
13616 2018-03-26  Tom Tromey  <tom@tromey.com>
13617
13618         * python/py-framefilter.c (py_print_single_arg): Return
13619         EXT_LANG_BT_ERROR from catch.
13620
13621 2018-03-26  Tom Tromey  <tom@tromey.com>
13622
13623         PR backtrace/15584:
13624         * stack.c (backtrace_command_1): Move some code into no-filters
13625         "if".
13626
13627 2018-03-26  Tom Tromey  <tom@tromey.com>
13628
13629         * python/py-framefilter.c (throw_quit_or_print_exception): New
13630         function.
13631         (gdbpy_apply_frame_filter): Use it.
13632
13633 2018-03-26  Tom Tromey  <tom@tromey.com>
13634
13635         PR cli/17716:
13636         * python/py-framefilter.c (py_print_type, py_print_value)
13637         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13638         RETURN_MASK_ERROR.
13639
13640 2018-03-26  Tom Tromey  <tom@tromey.com>
13641
13642         * python/py-framefilter.c (enumerate_args): Use
13643         gdb::unique_xmalloc_ptr.
13644
13645 2018-03-26  Tom Tromey  <tom@tromey.com>
13646
13647         * python/py-framefilter.c (py_print_frame): Return
13648         EXT_LANG_BT_OK.
13649         (gdbpy_apply_frame_filter): Update comment.
13650         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13651         Remove.
13652         <EXT_LANG_BT_NO_FILTERS>: Change value.
13653
13654 2018-03-26  Tom Tromey  <tom@tromey.com>
13655
13656         PR backtrace/15582:
13657         * stack.c (backtrace_command): Parse "hide" argument.
13658         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13659         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13660         constant.
13661
13662 2018-03-26  Tom Tromey  <tom@tromey.com>
13663
13664         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13665         add "flags".
13666         (backtrace_command): Remove "fulltrace", add "flags".
13667
13668 2018-03-26  Tom Tromey  <tom@tromey.com>
13669
13670         * stack.c (backtrace_command): Rewrite command line parsing.
13671
13672 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13673
13674         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13675
13676 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13677
13678         * filename-seen-cache.h: Add include guard.
13679
13680 2018-03-26  Keith Seitz  <keiths@redhat.com>
13681
13682         * symfile.c (place_section): Remove "struct" from section_addr_info
13683         in comment.
13684         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13685         "struct" keyword from section_addr_info.
13686
13687 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13688
13689         * regformats/regdef.h (reg): Add constructors.
13690
13691 2018-03-25  Pedro Alves  <palves@redhat.com>
13692
13693         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13694         if then/else bodies in var_func_name extraction.
13695
13696 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13697
13698         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13699         lookup_minimal_symbol() to find symbol entry.
13700         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13701
13702 2018-03-23  Keith Seitz  <keiths@redhat.com>
13703
13704         PR c++/22968
13705         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13706         nested type definitions for C++, too.
13707
13708 2018-03-23  Tom Tromey  <tom@tromey.com>
13709
13710         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13711         a typedef.
13712         (macho_register_oso): Remove.
13713         (macho_symtab_read): Take a std::vector.
13714         (oso_el_compare_name): Now a std::sort comparator.
13715         (macho_symfile_read_all_oso): Take a std::vector.
13716         (macho_symfile_read): Use std::vector.  Remove cleanups.
13717
13718 2018-03-22  Tom Tromey  <tom@tromey.com>
13719
13720         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13721         (record_full_goto_bookmark): Use std::string.
13722
13723 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13724
13725         PR tdep/18295
13726         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13727         a single mask.
13728
13729 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13730
13731         * rs6000-tdep.c (store_insn_p): New function.
13732         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13733         and cr_reg to their unshifted values. Use store_insn_p to
13734         match LR saves using either R1 or fdata->alloca_reg. Use
13735         store_insn_p to match CR saves. Set alloca_reg_offset
13736         when alloca_reg and framep are set. Remove lr_reg shift
13737         when assigning to fdata->lr_register.
13738
13739 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13740
13741         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13742         command line args instead of emitting a warning.
13743
13744 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13745
13746         * tracepoint.h (struct static_tracepoint_marker): Initialize
13747         fields, define default constructor, move constructor and move
13748         assignment, disable the rest.
13749         <str_id, extra>: Make std::string.
13750         (release_static_tracepoint_marker): Remove.
13751         (free_current_marker): Remove.
13752         * tracepoint.c (free_current_marker): Remove.
13753         (parse_static_tracepoint_marker_definition): Adjust to
13754         std::string, use new hex2str overload.
13755         (release_static_tracepoint_marker): Remove.
13756         (print_one_static_tracepoint_marker): Get marker by reference
13757         and adjust to std::string.
13758         (info_static_tracepoint_markers_command): Adjust to std::vector
13759         changes
13760         * target.h (static_tracepoint_marker_p): Remove typedef.
13761         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13762         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13763         bool.
13764         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13765         * target-debug.h
13766         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13767         (target_debug_print_std_vector_static_tracepoint_marker): New.
13768         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13769         to...
13770         (target_debug_print_static_tracepoint_marker_p): ... this.
13771         * target-delegates.c: Re-generate.
13772         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13773         Make std::string.
13774         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13775         (decode_static_tracepoint_spec): Adjust to std::vector.
13776         (tracepoint_print_one_detail): Adjust to std::string.
13777         (strace_marker_decode_location): Adjust to std::string.
13778         (update_static_tracepoint): Adjust to std::string, remove call
13779         to release_static_tracepoint_marker.
13780         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13781         Adjust to std::vector.
13782         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13783         (remote_static_tracepoint_markers_by_strid): Adjust to
13784         std::vector.
13785         * common/rsp-low.h (hex2str): New overload with explicit count
13786         of bytes.
13787         * common/rsp-low.c (hex2str): New overload with explicit count
13788         of bytes.
13789         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13790         (_initialize_rsp_low_selftests): Add test_hex2str test.
13791         * unittests/tracepoint-selftests.c
13792         (test_parse_static_tracepoint_marker_definition): Adjust to
13793         std::string.
13794
13795 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13796
13797         * tracepoint.c (parse_static_tracepoint_marker_definition):
13798         Consider case where the definition is followed by more
13799         definitions.
13800         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13801         tracepoint-selftests.c.
13802         * unittests/tracepoint-selftests.c: New.
13803
13804 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13805
13806         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13807         Carvalho.
13808
13809 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13810
13811         * symtab.c (find_pc_sect_line): fixed indentation.
13812
13813 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13814
13815         * symtab.c (find_pc_sect_line): now uses binary search.
13816
13817 2018-03-19  Tom Tromey  <tom@tromey.com>
13818
13819         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13820         "IDENT" production.
13821
13822 2018-03-19  Pedro Alves  <palves@redhat.com>
13823             Tom Tromey  <tom@tromey.com>
13824
13825         * unittests/observable-selftests.c: New file.
13826         * common/observable.h: New file.
13827         * observable.h: New file.
13828         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13829         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13830         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13831         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13832         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13833         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13834         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13835         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13836         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13837         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13838         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13839         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13840         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13841         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13842         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13843         tui/tui-interp.c, valops.c: Update all users.
13844         * tui/tui-hooks.c (tui_bp_created_observer)
13845         (tui_bp_deleted_observer, tui_bp_modified_observer)
13846         (tui_inferior_exit_observer, tui_before_prompt_observer)
13847         (tui_normal_stop_observer, tui_register_changed_observer):
13848         Remove.
13849         (tui_observers_token): New global.
13850         (attach_or_detach, tui_attach_detach_observers): New functions.
13851         (tui_install_hooks, tui_remove_hooks): Use
13852         tui_attach_detach_observers.
13853         * record-btrace.c (record_btrace_thread_observer): Remove.
13854         (record_btrace_thread_observer_token): New global.
13855         * observer.sh: Remove.
13856         * observer.c: Rename to observable.c.
13857         * observable.c (namespace gdb_observers): Define new objects.
13858         (observer_debug): Move into gdb_observers namespace.
13859         (struct observer, struct observer_list, xalloc_observer_list_node)
13860         (xfree_observer_list_node, generic_observer_attach)
13861         (generic_observer_detach, generic_observer_notify): Remove.
13862         (_initialize_observer): Update.
13863         Don't include observer.inc.
13864         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13865         (clean mostlyclean): Likewise.
13866         (observer.h, observer.inc): Remove targets.
13867         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13868         (COMMON_SFILES): Use observable.c, not observer.c.
13869         * .gitignore: Remove observer.h.
13870
13871 2018-03-18  Tom Tromey  <tom@tromey.com>
13872
13873         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13874         gdb::def_vector.
13875         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13876
13877 2018-03-17  Tom Tromey  <tom@tromey.com>
13878
13879         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13880
13881 2018-03-17  Tom Tromey  <tom@tromey.com>
13882
13883         * target.c (class scoped_target_fd): New.
13884         (target_fileio_close_cleanup): Remove.
13885         (target_fileio_read_alloc_1): Use scoped_target_fd.
13886
13887 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13888
13889         * silent-rules.mk: New.
13890         * Makefile.in: Include silent-rules.mk
13891         (srcdir, VPATH, top_srcdir): Move up.
13892         (COMPILE): Add ECHO_CXX.
13893         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13894         (init.c): Add ECHO_INIT_C.
13895         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13896         (version.c): Add ECHO_GEN.
13897         (printcmd.o): Add ECHO_CXX.
13898         (target-float.o): Add ECHO_CXX.
13899         (ada-exp.o): Add ECHO_CXX.
13900         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13901         (insight$(EXEEXT)): Add ECHO_CXXLD.
13902         * gnulib/configure.ac: Add AM_SILENT_RULES.
13903         * gnulib/aclocal.m4: Re-generate.
13904         * gnulib/configure: Re-generate.
13905         * gnulib/import/Makefile.in: Re-generate.
13906
13907 2018-03-16  Tom Tromey  <tom@tromey.com>
13908
13909         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13910         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13911         * utils.c (do_free_section_addr_info)
13912         (make_cleanup_free_section_addr_info): Remove.
13913         * symfile.h (struct other_sections): Add constructor.
13914         (struct section_addr_info): Remove.
13915         (section_addr_info): New typedef.
13916         (struct sym_fns) <sym_offsets>: Change type of parameter.
13917         (build_section_addr_info_from_objfile)
13918         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13919         (default_symfile_offsets, symbol_file_add)
13920         (symbol_file_add_from_bfd)
13921         (build_section_addr_info_from_section_table): Update.
13922         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13923         * symfile.c (alloc_section_addr_info): Remove.
13924         (build_section_addr_info_from_section_table): Change return type.
13925         Update.
13926         (build_section_addr_info_from_bfd)
13927         (build_section_addr_info_from_objfile): Likewise.
13928         (free_section_addr_info): Remove.
13929         (relative_addr_info_to_section_offsets): Change type of "addrs".
13930         (addrs_section_compar): Now a std::sort comparator.
13931         (addrs_section_sort): Change return type.
13932         (addr_info_make_relative): Change type of "addrs".  Update.
13933         (default_symfile_offsets, syms_from_objfile_1)
13934         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13935         (symbol_file_add_separate): Update.
13936         (symbol_file_add): Change type of "addrs".  Update.
13937         (add_symbol_file_command): Update.  Remove cleanups.
13938         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13939         cleanups.
13940         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13941         * solib.c (solib_read_symbols): Update.
13942         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13943         * machoread.c (macho_symfile_offsets): Update.
13944         * jit.c (jit_bfd_try_read_symtab): Update.
13945
13946 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13947
13948         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13949         unittests/utils-selftests.c.
13950         * unittests/utils-selftests.c: New file.
13951
13952 2018-03-14  Tom Tromey  <tom@tromey.com>
13953
13954         PR cli/14977:
13955         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13956         for NULL.
13957
13958 2018-03-14  Tom Tromey  <tom@tromey.com>
13959
13960         PR cli/19918:
13961         * printcmd.c (printf_pointer): Allow "-" in format.
13962
13963 2018-03-14  Tom Tromey  <tom@tromey.com>
13964
13965         * printcmd.c (_initialize_printcmd): Add usage to printf.
13966
13967 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13968
13969         * MAINTAINERS: Update my email address.
13970
13971 2018-03-13  Tom Tromey  <tom@tromey.com>
13972
13973         * machoread.c (macho_check_dsym): Change filenamep to a
13974         std::string*.
13975         (macho_symfile_read): Update.
13976         * symfile.c (load_command): Use std::string.
13977
13978 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13979
13980         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13981         to error message string.
13982         (riscv_register_name): Use xsnprintf instead of sprintf.
13983         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13984         internal_error.
13985         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13986         error.
13987         (riscv_push_dummy_call): Likewise.
13988
13989 2018-03-12  Tom Tromey  <tom@tromey.com>
13990
13991         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13992         Use gdb::byte_vector.
13993         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13994
13995 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13996
13997         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13998         parameter type to readable_regcache.
13999         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14000         the declaration.
14001
14002 2018-03-11  Tom Tromey  <tom@tromey.com>
14003
14004         * dwarf2read.c (struct nextfield): Add initializers.
14005         (struct nextfnfield): Remove.
14006         (struct fnfieldlist): Add initializers.  Remove "length" and
14007         "head", use std::vector.
14008         (struct decl_field_list): Remove.
14009         (struct field_info): Add initializers.
14010         <fields, baseclasses>: Now std::vector.
14011         <nbaseclasses, nfnfields, typedef_field_list_count,
14012         nested_types_list_count>: Remove.
14013         (dwarf2_add_field, dwarf2_add_type_defn)
14014         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14015         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14016         (process_structure_scope): Update.
14017
14018 2018-03-11  Tom Tromey  <tom@tromey.com>
14019
14020         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14021         for use by std::sort.
14022         (build_type_psymtabs_1): Use std::vector.
14023
14024 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14025
14026         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14027         and LIBMPFR in the printed configuration.
14028
14029 2018-03-08  Tom Tromey  <tom@tromey.com>
14030
14031         * source.c (get_filename_and_charpos): Use scoped_fd.
14032         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14033         (procfs_pidlist): Likewise.
14034         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14035         (iterate_over_mappings): Likewise.
14036
14037 2018-03-08  Tom Tromey  <tom@tromey.com>
14038
14039         * infcall.c (struct call_return_meta_info)
14040         <stack_temporaries_enabled>: Remove.
14041         (get_call_return_value, call_function_by_hand_dummy): Update.
14042         * thread.c (disable_thread_stack_temporaries): Remove.
14043         (enable_thread_stack_temporaries): Remove.
14044         (thread_stack_temporaries_enabled_p): Return bool.
14045         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14046         (get_last_thread_stack_temporary): Update.
14047         * eval.c (evaluate_subexp): Update.
14048         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14049         class, not a function.
14050         (value_ptr, value_vec): Remove typedefs.
14051         (class thread_info) <stack_temporaries_enabled>: Now bool.
14052         <stack_temporaries>: Now a std::vector.
14053         (thread_stack_temporaries_enabled_p)
14054         (value_in_thread_stack_temporaries): Return bool.
14055
14056 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14057
14058         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14059         (getpkt_or_notif_sane_1): Likewise.
14060
14061 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14062
14063         * build-id.c (build_id_to_debug_bfd): Use std::string.
14064
14065 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14066
14067         * build-id.c (find_separate_debug_file_by_buildid): Return
14068         std::string.
14069         * build-id.h (find_separate_debug_file_by_buildid): Return
14070         std::string.
14071         * coffread.c (coff_symfile_read): Adjust to std::string.
14072         * elfread.c (elf_symfile_read): Adjust to std::string.
14073         * symfile.c (separate_debug_file_exists): Change parameter to
14074         std::string.
14075         (find_separate_debug_file): Return std::string.
14076         (find_separate_debug_file_by_debuglink): Return std::string.
14077         * symfile.h (find_separate_debug_file_by_debuglink): Return
14078         std::string.
14079
14080 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14081
14082         * common/xml-utils.c (xml_escape_text): Move code to...
14083         (xml_escape_text_append): ... this new function.
14084         * common/xml-utils.h (xml_escape_text_append): New declaration.
14085         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14086         New function.
14087         (_initialize_xml_utils): register test_xml_escape_text_append as
14088         a selftest.
14089
14090 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14091
14092         * defs.h: Remove MAX_REGISTER_SIZE.
14093         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14094         asserts.
14095         * python/py-unwind.c (pyuw_sniffer): Likewise.
14096
14097 2018-03-07  Tom Tromey  <tom@tromey.com>
14098
14099         * linux-tdep.c (linux_info_proc): Update.
14100         * target.h (struct target_ops) <to_fileio_readlink>: Return
14101         optional<string>.
14102         (target_fileio_readlink): Return optional<string>.
14103         * remote.c (remote_hostio_readlink): Return optional<string>.
14104         * inf-child.c (inf_child_fileio_readlink): Return
14105         optional<string>.
14106         * target.c (target_fileio_readlink): Return optional<string>.
14107
14108 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14109
14110         * regcache.c (cooked_read_test): Add riscv to the list of
14111         architectures that have a save_reggroup.
14112
14113 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14114
14115         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14116         value is not a dynamic class object.
14117
14118 2018-03-06  Tom Tromey  <tom@tromey.com>
14119
14120         * rust-exp.y: Formatting fixes.
14121
14122 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14123
14124         * riscv-tdep.c (riscv_register_name): Remove target description
14125         support.
14126         (riscv_gdbarch_init): Remove target description check.
14127
14128 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14129
14130         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14131         comment.
14132         * riscv-tdep.h: Likewise.
14133
14134 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14135
14136         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14137         (riscv_pseudo_register_write): Delete.
14138         (riscv_gdbarch_init): Remove all use of pseudo registers.
14139
14140 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14141
14142         * record-btrace.c (btrace_print_lines): Replace cleanup
14143         parameter with RAII equivalents.
14144         (btrace_insn_history): Replace cleanup with RAII equivalents.
14145         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14146         make_cleanup_ui_out_tuple_begin_end): Remove.
14147         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14148         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14149         make_cleanup_ui_out_list_begin_end): Remove.
14150
14151 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14152
14153         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14154         parameter types to std::vector.  Use bool.
14155         (record_btrace_wait): Replace VEC(tp_t) with
14156         std::vector<thread_info *>.
14157         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14158
14159 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14160
14161         * record-btrace.c (record_btrace_disable_callback): Remove.
14162         (struct scoped_btrace_disable): New.
14163         (record_btrace_open): Use scoped_btrace_disable.
14164
14165 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14166
14167         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14168         reading values from registers.
14169
14170 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14171
14172         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14173         where appropriate.
14174
14175 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14176
14177         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14178         change parameter type.  Use GDB's print functions, and use
14179         core_addr_to_string where appropriate.
14180         (riscv_push_dummy_call): Use core_addr_to_string where
14181         appropriate, update call to riscv_print_arg_location, and reindent
14182         a few lines.
14183         (riscv_return_value): Update call to riscv_print_arg_location.
14184
14185 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14186             Tim Newsome <tim@sifive.com>
14187             Albert Ou <a0u@eecs.berkeley.edu>
14188             Darius Rad <darius@bluespec.com>
14189
14190         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14191         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14192         (ALLDEPFILES): Add riscv-tdep.c
14193         * configure.tgt: Add riscv support.
14194         * riscv-tdep.c: New file.
14195         * riscv-tdep.h: New file.
14196         * NEWS: Mention new target.
14197         * MAINTAINERS: Add entry for riscv.
14198
14199 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14200
14201         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14202         fields within aggregates.
14203
14204 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14205
14206         * record-btrace.c (btrace_print_lines): Change type of flags to
14207         gdb_disassembly_flags.
14208
14209 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14210
14211         * fbsd-nat.c: Include "inf-ptrace.h".
14212         (USE_SIGTRAP_SIGINFO): Conditionally define.
14213         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14214         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14215         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14216         function.
14217         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14218         Likewise.
14219         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14220         Likewise.
14221         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14222         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14223         "supports_stopped_by_hw_breakpoint" target methods.
14224
14225 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14226
14227         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14228         * fbsd-nat.c (debug_fbsd_nat): New variable.
14229         (show_fbsd_nat_debug): New function.
14230         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14231         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14232
14233 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14234
14235         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14236         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14237         prototype.
14238         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14239         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14240         method.
14241
14242 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14243
14244         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14245         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14246
14247 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14248
14249         * charset.c (struct charset_vector): New.
14250         (charsets): Change type to charset_vector.
14251         (find_charset_names): Adjust.
14252         (add_one): Adjust.
14253         (_initialize_charset): Adjust.
14254
14255 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14256
14257         * progspace.h (struct program_space) <deleted_solibs>: Change
14258         type to std::vector<std::string>.
14259         * progspace.c (clear_program_space_solib_cache): Adjust.
14260         * breakpoint.c (print_solib_event): Adjust.
14261         (check_status_catch_solib): Adjust.
14262         * solib.c (update_solib_list): Adjust.
14263         * ui-out.h (class ui_out) <field_string>: New overload.
14264         * ui-out.c (ui_out::field_string): New overload.
14265
14266 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14267
14268         * progspace.h (struct program_space): Add constructor and
14269         destructor, initialize fields.
14270         (add_program_space): Remove.
14271         * progspace.c (add_program_space): Rename to...
14272         (program_space::program_space): ... this.
14273         (release_program_space): Rename to...
14274         (program_space::~program_space): ... this.
14275         (delete_program_space): Use delete to delete program_space.
14276         (initialize_progspace): Use new to allocate program_space.
14277         * inferior.c (add_inferior_with_spaces): Likewise.
14278         (clone_inferior_command): Likewise.
14279         * infrun.c (follow_fork_inferior): Likewise.
14280         (handle_vfork_child_exec_or_exit): Likewise.
14281
14282 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14283
14284         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14285         (delim_string_to_char_ptr_vec): Return std::vector of
14286         gdb::unique_xmalloc_ptr.
14287         (dirnames_to_char_ptr_vec_append): Take std::vector of
14288         gdb::unique_xmalloc_ptr.
14289         (dirnames_to_char_ptr_vec): Return std::vector of
14290         gdb::unique_xmalloc_ptr.
14291         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14292         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14293         (delim_string_to_char_ptr_vec): Return an std::vector of
14294         gdb::unique_xmalloc_ptr, adjust the code.
14295         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14296         gdb::unique_xmalloc_ptr, adjust the code.
14297         (dirnames_to_char_ptr_vec): Return an std::vector of
14298         gdb::unique_xmalloc_ptr, adjust the code.
14299         * auto-load.c (auto_load_safe_path_vec): Change type to
14300         std::vector of gdb::unique_xmalloc_ptr.
14301         (auto_load_expand_dir_vars): Return an std::vector of
14302         gdb::unique_xmalloc_ptr, adjust the code.
14303         (auto_load_safe_path_vec_update): Adjust.
14304         (filename_is_in_auto_load_safe_path_vec): Adjust.
14305         (auto_load_objfile_script_1): Adjust.
14306         * build-id.c (build_id_to_debug_bfd): Adjust.
14307         * linux-thread-db.c (thread_db_load_search): Adjust.
14308         * source.c (add_path): Adjust.
14309         (openp): Adjust.
14310         * symfile.c (find_separate_debug_file): Adjust.
14311         * utils.c (do_free_char_ptr_vec): Remove.
14312         (make_cleanup_free_char_ptr_vec): Remove.
14313
14314 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14315
14316         PR gdb/22907
14317         * common/pathstuff.c: Conditionally include "<windows.h>".
14318
14319 2018-03-01  Georg Sauthoff  <mail@georg.so>
14320
14321         PR gdb/22888
14322         * gcore.in: Quote variables and switch interpreter to bash.
14323
14324 2018-03-01  Tom Tromey  <tom@tromey.com>
14325
14326         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14327         assertion.  Add assertion for discriminant_index.
14328         (quirk_rust_enum): Use correct base type name in univariant case.
14329
14330 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14331
14332         * record.c (get_call_history_modifiers): Return a
14333         record_print_flags.
14334         (cmd_record_call_history): Adjust.
14335         * record-btrace.c (record_btrace_call_history): Adjust.
14336         (record_btrace_call_history_range): Adjust.
14337         (record_btrace_call_history_from): Adjust.
14338         * target-debug.h (target_debug_print_record_print_flags): New.
14339         * target-delegates.c: Re-generate.
14340         * target.c (target_call_history): Change flags type.
14341         (target_call_history_from): Likewise.
14342         (target_call_history_range): Likewise.
14343         * target.h (struct target_ops) <target_call_history>: Likewise.
14344         (target_call_history_from): Likewise.
14345         (target_call_history_range): Likewise.
14346
14347 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14348             Simon Marchi  <simon.marchi@polymtl.ca>
14349
14350         * common/common-utils.c: Include "sys/stat.h".
14351         (is_regular_file): Move here from "source.c"; change return
14352         type to "bool".
14353         * common/common-utils.h (is_regular_file): New prototype.
14354         * common/pathstuff.c (contains_dir_separator): New function.
14355         * common/pathstuff.h (contains_dir_separator): New prototype.
14356         * source.c: Don't include "sys/stat.h".
14357         (is_regular_file): Move to "common/common-utils.c".
14358
14359 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14360
14361         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14362         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14363         * auto-load.c: Include "common/pathstuff.h".
14364         * common/common-def.h (current_directory): Move here.
14365         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14366         function.
14367         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14368         prototype.
14369         * common/pathstuff.c: New file.
14370         * common/pathstuff.h: New file.
14371         * compile/compile.c: Include "common/pathstuff.h".
14372         * defs.h (current_directory): Move to "common/common-defs.h".
14373         * dwarf2read.c: Include "common/pathstuff.h".
14374         * exec.c: Likewise.
14375         * guile/scm-safe-call.c: Likewise.
14376         * linux-thread-db.c: Likewise.
14377         * main.c: Likewise.
14378         * nto-tdep.c: Likewise.
14379         * objfiles.c: Likewise.
14380         * source.c: Likewise.
14381         * symtab.c: Likewise.
14382         * utils.c: Include "common/pathstuff.h".
14383         (gdb_realpath): Move to "common/pathstuff.c".
14384         (gdb_realpath_keepfile): Likewise.
14385         (gdb_abspath): Likewise.
14386         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14387         (gdb_realpath_keepfile): Likewise.
14388         (gdb_abspath): Likewise.
14389
14390 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14391
14392         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14393         wildcard process pid for super_resume for kernels with a
14394         specific bug.
14395
14396 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14397
14398         * compile/compile.c (get_args): Add additional comments
14399         explaining function.
14400
14401 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14402             Tom Tromey  <tom@tromey.com>
14403
14404         * target.h (memory_write_request_s): Remove typedef.  Don't define
14405         VEC.
14406         (target_write_memory_blocks): Change argument to std::vector.
14407         (struct memory_write_request): Add constructor.
14408         * target-memory.c (compare_block_starting_address): Return bool.
14409         Change argument types.
14410         (claim_memory): Change arguments to use std::vector.
14411         (split_regular_and_flash_blocks, blocks_to_erase)
14412         (compute_garbled_blocks): Likewise.
14413         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14414         (target_write_memory_blocks): Change argument to std::vector.
14415         * symfile.c (struct load_section_data): Add constructor and
14416         destructor.  Use std::vector for "requests".
14417         (struct load_progress_data): Add initializers.
14418         (load_section_callback): Update.  Use "new".
14419         (clear_memory_write_data): Remove.
14420         (generic_load): Update.
14421
14422 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14423
14424         * arch/aarch64.h: Use common/tdesc.h.
14425
14426 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14427
14428         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14429         architecture with a 64-bit ABI.
14430
14431 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14432
14433         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14434         ahead of target description loading.
14435
14436 2018-02-26  Tom Tromey  <tom@tromey.com>
14437
14438         * stack.c (backtrace_command_1): Update.
14439         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14440         of "flags".
14441         * python/py-framefilter.c (py_print_frame)
14442         (gdbpy_apply_frame_filter): Change type of "flags".
14443         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14444         of "flags".
14445         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14446         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14447         * extension.h (enum frame_filter_flag): Rename from
14448         frame_filter_flags.
14449         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14450         (apply_ext_lang_frame_filter): Change type of "flags".
14451         * extension.c (apply_ext_lang_frame_filter): Change type of
14452         "flags".
14453         * extension-priv.h (struct extension_language_ops)
14454         <apply_frame_filter>: Change type of "flags".
14455
14456 2018-02-26  Tom Tromey  <tom@tromey.com>
14457
14458         PR python/16497:
14459         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14460         off-by-one in py_end computation.
14461         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14462         PRINT_MORE_FRAMES.
14463         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14464         constant.
14465
14466 2018-02-26  Tom Tromey  <tom@tromey.com>
14467
14468         * dwarf2read.c (struct variant_field): New.
14469         (struct nextfield) <variant>: New field.
14470         (dwarf2_add_field): Handle DW_TAG_variant_part.
14471         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14472         discriminated union.
14473         (read_structure_type): Handle DW_TAG_variant_part.
14474         (handle_struct_member_die): New function, extracted from
14475         process_structure_scope.  Handle DW_TAG_variant.
14476         (process_structure_scope): Handle discriminated unions.  Call
14477         handle_struct_member_die.
14478
14479 2018-02-26  Tom Tromey  <tom@tromey.com>
14480
14481         * rust-lang.h (rust_last_path_segment): Declare.
14482         * rust-lang.c (rust_last_path_segment): Now public.  Change
14483         contract.
14484         (struct disr_info): Remove.
14485         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14486         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14487         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14488         (rust_enum_p, rust_enum_variant): New function.
14489         (rust_underscore_fields): Remove "offset" parameter.
14490         (rust_print_enum): New function.
14491         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14492         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14493         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14494         enums.
14495         (rust_internal_print_type): New function, from rust_print_type.
14496         Remove enum code.
14497         (rust_print_type): Call rust_internal_print_type.
14498         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14499         Update enum handling.
14500         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14501         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14502         (rust_union_quirks): New functions.
14503         (process_full_comp_unit, process_full_type_unit): Call
14504         rust_union_quirks.
14505         (process_structure_scope): Update rust_unions if necessary.
14506
14507 2018-02-26  Tom Tromey  <tom@tromey.com>
14508
14509         * value.h (value_union_variant): Declare.
14510         * valops.c (value_union_variant): New function.
14511         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14512         (struct discriminant_info): New.
14513         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14514         enumerator.
14515         (struct main_type) <flag_discriminated_union>: New field.
14516
14517 2018-02-26  Tom Tromey  <tom@tromey.com>
14518
14519         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14520         unittests/unpack-selftests.c.
14521         * unittests/unpack-selftests.c: New file.
14522         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14523
14524 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14525
14526         * dwarf2read.c (struct partial_die_info) <read>: New method.
14527         (read_partial_die): Remove the declaration.
14528         (load_partial_dies): Update.
14529         (partial_die_info::partial_die_info):
14530         (read_partial_die): Change it to partial_die_info::read.
14531
14532 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14533
14534         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14535         (fixup_partial_die): Remove declaration.
14536         (scan_partial_symbols): Update.
14537         (partial_die_parent_scope): Likewise.
14538         (partial_die_full_name): Likewise.
14539         (fixup_partial_die): Change it to partial_die_info::fixup.
14540
14541 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14542
14543         * dwarf2read.c (read_partial_die): Update the declaration.
14544         (load_partial_dies): Caller update.
14545         (read_partial_die): Remove one argument abbrev_len.
14546
14547 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14548
14549         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14550         assignment operator.
14551         (load_partial_dies): Use ctor and copy ctor.
14552         (read_partial_die): Update.
14553         (dwarf2_cu::find_partial_die): Use ctor.
14554
14555 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14556
14557         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14558         (find_partial_die_in_comp_unit): Change it to
14559         dwarf2_cu::find_partial_die.
14560         (find_partial_die): Update.
14561
14562 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14563
14564         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14565         is NULL.
14566
14567 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14568
14569         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14570
14571 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14572
14573         * arch/amd64.h: Use common/tdesc.h.
14574         * arch/i386.c: Likewise.
14575         * arch/i386.h: Likewise.
14576         * arch/tic6x.c: Likewise.
14577         * arch/tdesc.h: Move file from here...
14578         * common/tdesc.h: ...to here.
14579         * features/aarch64-core.c: Regenerate.
14580         * features/aarch64-fpu.c: Regenerate.
14581         * features/i386/32bit-avx.c: Regenerate.
14582         * features/i386/32bit-avx512.c: Regenerate.
14583         * features/i386/32bit-core.c: Regenerate.
14584         * features/i386/32bit-linux.c: Regenerate.
14585         * features/i386/32bit-mpx.c: Regenerate.
14586         * features/i386/32bit-pkeys.c: Regenerate.
14587         * features/i386/32bit-sse.c: Regenerate.
14588         * features/i386/64bit-avx.c: Regenerate.
14589         * features/i386/64bit-avx512.c: Regenerate.
14590         * features/i386/64bit-core.c: Regenerate.
14591         * features/i386/64bit-linux.c: Regenerate.
14592         * features/i386/64bit-mpx.c: Regenerate.
14593         * features/i386/64bit-pkeys.c: Regenerate.
14594         * features/i386/64bit-segments.c: Regenerate.
14595         * features/i386/64bit-sse.c: Regenerate.
14596         * features/i386/x32-core.c: Regenerate.
14597         * features/tic6x-c6xp.c: Regenerate.
14598         * features/tic6x-core.c: Regenerate.
14599         * features/tic6x-gp.c: Regenerate.
14600         * target-descriptions.c: Use common/tdesc.h.
14601         * target-descriptions.h: Likewise.
14602
14603 2018-02-24  Tom Tromey  <tom@tromey.com>
14604
14605         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14606         (try_thread_db_load_from_dir, thread_db_load_search): Use
14607         std::string.
14608         (info_auto_load_libthread_db_compare): Return bool.  Change
14609         argument types.
14610         (info_auto_load_libthread_db): Use std::vector, std::string.
14611         Remove cleanups.
14612
14613 2018-02-24  Tom Tromey  <tom@tromey.com>
14614
14615         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14616         std::string.
14617         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14618         std::string*.
14619         * gdbarch.c: Rebuild.
14620         * gdbarch.h: Rebuild.
14621         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14622         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14623         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14624         std::string*.
14625
14626 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14627
14628         * gdbtypes.h (sect_offset): Change type to uint64_t.
14629         (sect_offset_str): New function.
14630         * dwarf2read.c (create_addrmap_from_aranges): Use
14631         sect_offset_str.
14632         (error_check_comp_unit_head): Likewise.
14633         (create_debug_type_hash_table): Likewise.
14634         (read_cutu_die_from_dwo): Likewise.
14635         (init_cutu_and_read_dies): Likewise.
14636         (init_cutu_and_read_dies_no_follow): Likewise.
14637         (process_psymtab_comp_unit_reader): Likewise.
14638         (partial_die_parent_scope): Likewise.
14639         (peek_die_abbrev): Likewise.
14640         (process_queue): Likewise.
14641         (dwarf2_physname): Likewise.
14642         (read_namespace_alias): Likewise.
14643         (read_import_statement): Likewise.
14644         (create_dwo_cu_reader): Likewise.
14645         (create_cus_hash_table): Likewise.
14646         (lookup_dwo_cutu): Likewise.
14647         (inherit_abstract_dies): Likewise.
14648         (read_func_scope): Likewise.
14649         (read_call_site_scope): Likewise.
14650         (dwarf2_add_member_fn): Likewise.
14651         (read_common_block): Likewise.
14652         (read_module_type): Likewise.
14653         (read_typedef): Likewise.
14654         (read_subrange_type): Likewise.
14655         (load_partial_dies): Likewise.
14656         (read_partial_die): Likewise.
14657         (find_partial_die): Likewise.
14658         (read_str_index): Likewise.
14659         (dwarf2_string_attr): Likewise.
14660         (build_error_marker_type): Likewise.
14661         (lookup_die_type): Likewise.
14662         (dump_die_shallow): Likewise.
14663         (follow_die_ref): Likewise.
14664         (dwarf2_fetch_die_loc_sect_off): Likewise.
14665         (dwarf2_fetch_constant_bytes): Likewise.
14666         (follow_die_sig): Likewise.
14667         (get_signatured_type): Likewise.
14668         (get_DW_AT_signature_type): Likewise.
14669         (dwarf2_find_containing_comp_unit): Likewise.
14670         (set_die_type): Likewise.
14671
14672 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14673
14674         * arch/aarch64.c: Include "common-defs.h".
14675         * arch/amd64.c: Likewise.
14676         * arch/i386.c: Likewise.
14677
14678 2018-02-21  Tom Tromey  <tom@tromey.com>
14679
14680         * value.h: (extract_field_op): Update.
14681         * eval.c (extract_field_op): Return a const char *.
14682         * expression.h (parse_expression_for_completion): Update.
14683         * completer.c (complete_expression): Update.
14684         (add_struct_fields): Make fieldname const.
14685         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14686         (mark_completion_tag, parse_exp_in_context_1): Update.
14687         (parse_expression_for_completion): Change "name" to
14688         unique_xmalloc_ptr*.
14689
14690 2018-02-21  Tom Tromey  <tom@tromey.com>
14691
14692         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14693
14694 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14695
14696         * avr-tdep.c (avr_read_pc): Change parameter type to
14697         readable_regcache.
14698         * gdbarch.sh (read_pc): Likewise.
14699         * gdbarch.c: Re-generated.
14700         * gdbarch.h: Re-generated.
14701         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14702         readable_regcache.
14703         * ia64-tdep.c (ia64_read_pc): Likewise.
14704         * mips-tdep.c (mips_read_pc): Likewise.
14705         * spu-tdep.c (spu_read_pc): Likewise.
14706
14707 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14708
14709         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14710         * regcache-dump.c: New file.
14711         * regcache.c: Move register_dump to regcache-dump.c.
14712         (maintenance_print_registers): Likewise.
14713         (maintenance_print_raw_registers): Likewise.
14714         (maintenance_print_cooked_registers): Likewise.
14715         (maintenance_print_register_groups): Likewise.
14716         (maintenance_print_remote_registers): Likewise.
14717         (_initialize_regcache): Likewise.
14718         * regcache.h (register_dump): Moved from regcache.c.
14719
14720 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14721
14722         * regcache.c (regcache::regcache): Update.
14723         (regcache::invalidate): Move it to detached_regcache::invalidate.
14724         (get_thread_arch_aspace_regcache): Update.
14725         (regcache::raw_update): Update.
14726         (regcache::cooked_read): Remove some code.
14727         (regcache::cooked_read_value): Likewise.
14728         (regcache::raw_write): Remove assert on m_readonly_p.
14729         (regcache::raw_supply_integer): Move it to
14730         detached_regcache::raw_supply_integer.
14731         (regcache::raw_supply_zeroed): Likewise.
14732         * regcache.h (detached_regcache) <raw_supply_integer>: New
14733         declaration.
14734         <raw_supply_zeroed, invalidate>: Likewise.
14735         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14736         <invalidate>: Likewise.
14737         <m_readonly_p>: Removed.
14738
14739 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14740
14741         * infcmd.c (get_return_value): Let stop_regs point to
14742         get_current_regcache.
14743         * regcache.c (regcache::regcache): Remove.
14744         (register_dump_reg_buffer): New class.
14745         (regcache_print): Adjust.
14746         * regcache.h (regcache): Remove constructors.
14747
14748 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14749
14750         * regcache.c (class register_dump): New class.
14751         (register_dump_regcache, register_dump_none): New class.
14752         (register_dump_remote, register_dump_groups): New class.
14753         (regcache_print): Update.
14754         * regcache.h (regcache_dump_what): Move it to regcache.c.
14755         (regcache) <dump>: Remove.
14756
14757 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14758
14759         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14760          reg_buffer_rw *.
14761         (jit_unwind_reg_set_impl): Call raw_supply.
14762         (jit_frame_sniffer): Use reg_buffer_rw.
14763         * record-full.c (record_full_core_regbuf): Change its type.
14764         (record_full_core_open_1): Use reg_buffer_rw.
14765         (record_full_close): Likewise.
14766         (record_full_core_fetch_registers): Use regcache->raw_supply.
14767         (record_full_core_store_registers): Likewise.
14768         * regcache.c (regcache::get_register_status): Move it to
14769         reg_buffer.
14770         (regcache_raw_set_cached_value): Remove.
14771         (regcache::raw_set_cached_value): Remove.
14772         (regcache::raw_write): Call raw_supply.
14773         (regcache::raw_supply): Move it to reg_buffer_rw.
14774         * regcache.h (regcache_raw_set_cached_value): Remove.
14775         (reg_buffer_rw): New class.
14776
14777 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14778
14779         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14780         readonly_detached_regcache.
14781         (dummy_frame_prev_register): Use regcache->cooked_read.
14782         * frame.c (frame_save_as_regcache): Change return type.
14783         (frame_pop): Update.
14784         * frame.h (frame_save_as_regcache): Update declaration.
14785         * inferior.h (get_infcall_suspend_state_regcache): Update
14786         declaration.
14787         * infrun.c (infcall_suspend_state) <registers>: use
14788         readonly_detached_regcache.
14789         (save_infcall_suspend_state): Don't use regcache_dup.
14790         (get_infcall_suspend_state_regcache): Change return type.
14791         * linux-fork.c (struct fork_info) <savedregs>: Change to
14792         readonly_detached_regcache.
14793         <pc>: New field.
14794         (fork_save_infrun_state): Don't use regcache_dup.
14795         (info_checkpoints_command): Adjust.
14796         * mi/mi-main.c (register_changed_p): Update declaration.
14797         (mi_cmd_data_list_changed_registers): Use
14798         readonly_detached_regcache.
14799         (register_changed_p): Change parameter type to
14800         readonly_detached_regcache.
14801         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14802         readonly_detached_regcache.
14803         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14804         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14805         New.
14806         (regcache::save): Move it to reg_buffer.
14807         (regcache::restore): Change parameter type.
14808         (regcache_dup): Remove.
14809         * regcache.h (reg_buffer) <save>: New method.
14810         (readonly_detached_regcache): New class.
14811         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14812         readonly_detached_regcache.
14813         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14814
14815 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14816
14817         * frame.c (frame_save_as_regcache): Use regcache method save.
14818         (frame_pop): Use regcache method restore.
14819         * infrun.c (restore_infcall_suspend_state): Likewise.
14820         * linux-fork.c (fork_load_infrun_state): Likewise.
14821         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14822         save.
14823         * regcache.c (regcache_save): Remove.
14824         (regcache::restore): More asserts.
14825         (regcache_cpy): Remove.
14826         * regcache.h (regcache_save): Remove the declaration.
14827         (regcache::restore): Move from private to public.
14828         Remove the friend declaration of regcache_cpy.
14829         (regcache_cpy): Remove declaration.
14830
14831 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14832
14833         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14834         parameter type to 'readable_regcache *'.
14835         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14836         * arm-tdep.c (arm_neon_quad_read): Likewise.
14837         (arm_pseudo_read): Likewise.
14838         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14839         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14840         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14841         * gdbarch.c: Re-generated.
14842         * gdbarch.h: Re-generated.
14843         * gdbarch.sh (pseudo_register_read): Change parameter type to
14844         'readable_regcache *'.
14845         (pseudo_register_read_value): Likewise.
14846         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14847         (h8300_pseudo_register_read): Likewise.
14848         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14849         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14850         (i386_pseudo_register_read_into_value): Likewise.
14851         (i386_pseudo_register_read_value): Likewise.
14852         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14853         declaration.
14854         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14855         * m32c-tdep.c (m32c_raw_read): Likewise.
14856         (m32c_read_flg): Likewise.
14857         (m32c_banked_register): Likewise.
14858         (m32c_banked_read): Likewise.
14859         (m32c_sb_read): Likewise.
14860         (m32c_part_read): Likewise.
14861         (m32c_cat_read): Likewise.
14862         (m32c_r3r2r1r0_read): Likewise.
14863         (m32c_pseudo_register_read): Likewise.
14864         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14865         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14866         (mep_pseudo_cr64_read): Likewise.
14867         (mep_pseudo_register_read): Likewise.
14868         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14869         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14870         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14871         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14872         (regcache::cooked_read): Likewise.
14873         (regcache::cooked_read_value): Likewise.
14874         (regcache_cooked_read_signed):
14875         (regcache::cooked_read): Likewise.
14876         * regcache.h (readable_regcache): New class.
14877         (regcache): Inherit readable_regcache.  Move some methods to
14878         readable_regcache.
14879         * rl78-tdep.c (rl78_pseudo_register_read): Change
14880         parameter type to 'readable_regcache *'.
14881         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14882         (e500_pseudo_register_read): Change parameter type to
14883         'readable_regcache *'.
14884         (dfp_pseudo_register_read): Likewise.
14885         (vsx_pseudo_register_read): Likewise.
14886         (efpr_pseudo_register_read): Likewise.
14887         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14888         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14889         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14890         (sh64_pseudo_register_read): Likewise.
14891         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14892         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14893         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14894         (spu_pseudo_register_read): Likewise.
14895         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14896         (xtensa_pseudo_register_read): Likewise.
14897
14898 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14899
14900         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14901         (regcache::arch): Move it to reg_buffer::arch.
14902         (regcache::register_buffer): Likewise.
14903         (regcache::assert_regnum): Likewise.
14904         (regcache::num_raw_registers): Likewise.
14905         * regcache.h (reg_buffer): New class.
14906         (regcache): Inherit reg_buffer.
14907
14908 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14909
14910         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14911         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14912
14913 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14914
14915         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14916
14917 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14918
14919         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14920         (SFILES): Remove common/*.c files.
14921         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14922         * common/common.host: Add common reference.
14923         * configure.ac: Likewise.
14924         * configure: Regenerate.
14925
14926 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14927
14928         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14929         (block_initialize_namespace): Use new.
14930         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14931         (dwarf2_free_objfile): Use delete.
14932         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14933         (copy_type_recursive): Use new.
14934         * gdb_obstack.h (allocate_on_obstack): New.
14935
14936 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14937
14938         PR gdb/22849
14939         * inferior.c (exit_inferior_1): Reset inf->control.
14940
14941 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14942
14943         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14944         declaration.
14945
14946 2018-02-14  Pedro Alves  <palves@redhat.com>
14947
14948         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14949         frame_cleanup_after_sniffer on exception.
14950
14951 2018-02-14  Tom Tromey  <tom@tromey.com>
14952
14953         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14954         const.
14955         (solib_bfd_open): Make pathname const.
14956         * solib.c (solib_bfd_open): Make pathname const.
14957         * solib-spu.c (spu_bfd_fopen): Make name const.
14958         (spu_bfd_open): Make pathname const.
14959         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14960         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14961
14962 2018-02-14  Tom Tromey  <tom@tromey.com>
14963
14964         * symfile.c (symfile_bfd_open): Update.
14965         * source.h (openp, source_full_path_of, find_and_open_source):
14966         Change argument type to unique_xmalloc_ptr.
14967         * source.c (openp): Take a unique_xmalloc_ptr.
14968         (source_full_path_of, find_and_open_source): Likewise.
14969         (open_source_file, symtab_to_fullname): Update.
14970         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14971         unique_xmalloc_ptr.
14972         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14973         (exec_file_find): Update.
14974         * psymtab.c (psymtab_to_fullname): Update.
14975         * nto-tdep.h (nto_find_and_open_solib): Update.
14976         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14977         unique_xmalloc_ptr.
14978         * exec.c (exec_file_attach): Update.
14979         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14980         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14981
14982 2018-02-14  Tom Tromey  <tom@tromey.com>
14983
14984         * solib.c: Include source.h.
14985         * nto-tdep.c: Include source.h.
14986         * mi/mi-cmd-env.c: Include source.h.
14987         * infcmd.c: Include source.h.
14988         * exec.c: Include source.h.
14989         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14990         (add_path, directory_switch, source_path, init_source_path): Move
14991         declarations...
14992         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14993         (add_path, directory_switch, source_path, init_source_path):
14994         ...here.
14995
14996 2018-02-14  Tom Tromey  <tom@tromey.com>
14997
14998         * solist.h (exec_file_find, solib_find): Return
14999         unique_xmalloc_ptr.
15000         (solib_bfd_fopen): Take a const char *.
15001         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15002         (exec_file_find, solib_find): Likewise.
15003         (solib_bfd_fopen): Do not take ownership of "pathname".
15004         (solib_bfd_open): Use unique_xmalloc_ptr.
15005         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15006         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15007         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15008         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15009
15010 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15011
15012         * ada-lang.c (name_match_type_from_name): Remove reference to
15013         ada_name_for_lookup in function's documentation.
15014         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15015
15016 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15017
15018         * defs.h (enum openp_flags): New enum.
15019         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15020         Move to enum openp_flags.
15021         (openp_flags): New enum flags.
15022         (openp): Change parameter type to openp_flags.
15023         * source.c (openp): Change parameter type to openp_flags.
15024         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15025         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15026
15027 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15028
15029         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15030         per-command.
15031
15032 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15033
15034         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15035         into...
15036         (class dwarf2_queue_guard): ...the destructor of this new class.
15037         (dw2_do_instantiate_symtab): Create instance of the new class
15038         dwarf2_queue_guard, remove cleanup.
15039
15040 2018-02-09  Tom Tromey  <tom@tromey.com>
15041
15042         * source.c (find_source_lines): Don't reference past the end of
15043         the vector.
15044
15045 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15046
15047         * remote.c (remote_btrace_maybe_reopen): Change error message.
15048         * btrace.c (btrace_enable): Likewise.
15049         (parse_xml_btrace): Likewise.
15050         (parse_xml_btrace_conf): Likewise.
15051
15052 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15053
15054         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15055         (linux_enable_pt, linux_enable_bts): Call
15056         diagnose_perf_event_open_fail.
15057
15058 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15059
15060         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15061         Remove parameter and change return type.  Update callers.  Move it.
15062         (linux_enable_bts, linux_enable_pt): Improve error message.
15063         (linux_enable_pt): Remove zero buffer size check.
15064         (linux_enable_btrace): Improve error messages.  Remove NULL return
15065         check.
15066
15067 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15068
15069         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15070         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15071         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15072         (linux_supports_pt, linux_supports_btrace): Remove.
15073         (linux_enable_bts): Call cpu_supports_bts.
15074         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15075         * remote.c (remote_supports_btrace): Remove.
15076         (init_remote_ops): Remove remote_supports_btrace.
15077         * target-delegates.c: Regenerated.
15078         * target.c (target_supports_btrace): Remove.
15079         * target.h (target_ops) <to_supports_btrace>: Remove
15080         (target_supports_btrace): Remove.
15081         * x86-linux-nat.c (x86_linux_create_target): Remove
15082         linux_supports_btrace.
15083
15084 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15085
15086         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15087         btrace failed.
15088         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15089         exception and use message in own exception.
15090
15091 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15092
15093         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15094         (perf_event_pt_event_type): Use gdb_file_up.
15095         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15096         scoped_fd, and scoped_mmap.
15097
15098 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15099
15100         * common/scoped_mmap.h: New.
15101         * unittests/scoped_mmap-selftest.c: New.
15102         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15103         unittests/scoped_mmap-selftest.c.
15104
15105 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15106
15107         * common/scoped_fd.h: New.
15108         * unittests/scoped_fd-selftest.c: New.
15109         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15110         unittests/scoped_fd-selftest.c.
15111
15112 2018-02-09  Tom Tromey  <tom@tromey.com>
15113
15114         * auto-load.c (auto_load_section_scripts): Use
15115         gdb::unique_xmalloc_ptr.
15116
15117 2018-02-09  Tom Tromey  <tom@tromey.com>
15118
15119         * auto-load.c (execute_script_contents): Use std::string.
15120
15121 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15122
15123         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15124         Python function, rather than a new command.
15125
15126 2018-02-08  Tom Tromey  <tom@tromey.com>
15127
15128         * solib.c (solib_find_1): Use std::string.
15129         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15130
15131 2018-02-08  Tom Tromey  <tom@tromey.com>
15132
15133         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15134
15135 2018-02-08  Tom Tromey  <tom@tromey.com>
15136
15137         * source.c (find_source_lines): Use gdb::def_vector.
15138
15139 2018-02-08  Tom Tromey  <tom@tromey.com>
15140
15141         * macrocmd.c (struct temporary_macro_definition): New.
15142         (macro_define_command): Use temporary_macro_definition.  Remove
15143         cleanups.
15144         (free_macro_definition_ptr): Remove.
15145
15146 2018-02-08  Tom Tromey  <tom@tromey.com>
15147
15148         * macroexp.c (maybe_expand): Use std::string.
15149
15150 2018-02-08  Tom Tromey  <tom@tromey.com>
15151
15152         * macroexp.c (struct macro_buffer): Add initializers for some
15153         members.
15154         (init_buffer, init_shared_buffer, free_buffer)
15155         (free_buffer_return_text): Remove.
15156         (macro_buffer): New constructors.
15157         (~macro_buffer): New destructor.
15158         (macro_buffer::set_shared): New method.
15159         (macro_buffer::resize_buffer, macro_buffer::appendc)
15160         (macro_buffer::appendmem): Now methods, not free functions.
15161         (set_token, append_tokens_without_splicing, stringify)
15162         (macro_stringify): Update.
15163         (gather_arguments): Change return type.  Remove argc_p argument,
15164         add args_ptr argument.  Use std::vector.
15165         (substitute_args): Remove argc argument.  Accept std::vector.
15166         (expand): Update.  Use std::vector.
15167         (scan, macro_expand, macro_expand_next): Update.
15168
15169 2018-02-08  Tom Tromey  <tom@tromey.com>
15170
15171         * symtab.c (default_collect_symbol_completion_matches_break_on):
15172         Use unique_xmalloc_ptr.
15173         * macroscope.h: (sal_macro_scope, user_macro_scope)
15174         (default_macro_scope): Return unique_xmalloc_ptr.
15175         * macroscope.c (sal_macro_scope, user_macro_scope)
15176         (default_macro_scope): Return unique_xmalloc_ptr.
15177         * macroexp.h (macro_expand, macro_expand_once): Return
15178         unique_xmalloc_ptr.
15179         * macroexp.c (macro_expand, macro_expand_once): Return
15180         unique_xmalloc_ptr.
15181         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15182         (info_macro_command, info_macros_command): Use
15183         unique_xmalloc_ptr.
15184         * compile/compile-c-support.c (write_macro_definitions): Use
15185         unique_xmalloc_ptr.
15186         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15187
15188 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15189
15190         * value.c (value_static_field): Assign field type instead of
15191         containing type when returning an optimized out value.
15192
15193 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15194
15195         * ft32-tdep.c (ft32_read_pc): Remove.
15196         (ft32_write_pc): Remove.
15197         (ft32_gdbarch_init): Update.
15198         * m32r-tdep.c (m32r_read_pc): Remove.
15199         (m32r_gdbarch_init): Update.
15200         * mep-tdep.c (mep_read_pc): Remove.
15201         (mep_gdbarch_init): Update.
15202         * microblaze-tdep.c (microblaze_write_pc): Remove.
15203         (microblaze_gdbarch_init): Update.
15204         * mn10300-tdep.c (mn10300_read_pc): Remove.
15205         (mn10300_write_pc): Remove.
15206         (mn10300_gdbarch_init): Update.
15207         * moxie-tdep.c (moxie_read_pc): Remove.
15208         (moxie_write_pc): Remove.
15209         (moxie_gdbarch_init): Update.
15210
15211 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15212
15213         * expprint.c (print_subexp_standard): Handle
15214         OP_F77_UNDETERMINED_ARGLIST.
15215         (dump_subexp_body_standard): Likewise.
15216
15217 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15218
15219         * target-descriptions.c (tdesc_element_visitor) Add empty
15220         implementations.
15221         (tdesc_type): Move make_gdb_type from here.
15222         (tdesc_type_builtin): Likewise.
15223         (tdesc_type_vector): Likewise.
15224         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15225         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15226         (make_gdb_type_union): Likewise.
15227         (make_gdb_type_flags): Likewise.
15228         (make_gdb_type_enum): Likewise.
15229         (make_gdb_type): New function.
15230         (tdesc_register_type): Use static make_gdb_type.
15231
15232 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15233
15234         * infcmd.c (default_print_one_register_info): Align natural-format
15235         column values consistently one under another.
15236         (pad_to_column): New function.
15237
15238 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15239
15240         * dwarf2read.c (dwarf2_physname): Move commment.
15241
15242 2018-02-01  Leszek Swirski  <leszeks@google.com>
15243
15244         * varobj.c (varobj_formatted_print_options): Allow recursive
15245         pretty printing if pretty printing is enabled.
15246
15247 2018-02-01  Leszek Swirski  <leszeks@google.com>
15248
15249         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15250         names after a structop as a filename.
15251
15252 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15253
15254         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15255         (arm_record_coproc_data_proc): Likewise.
15256
15257 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15258
15259         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15260
15261 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15262
15263         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15264         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15265
15266 2018-01-31  Pedro Alves  <palves@redhat.com>
15267
15268         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15269         * inflow.c (child_terminal_save_inferior): Wrap reference to
15270         tcgetpgrp in HAVE_TERMIOS_H.
15271         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15272         _WIN32.
15273         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15274         always iterate over all inferiors.
15275         (gdbsim_cntrl_c): Adjust.
15276         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15277
15278 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15279
15280         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15281         index type is objfile-owned if the element type is as well.
15282
15283 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15284
15285         GDB 8.1 released.
15286
15287 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15288
15289         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15290         "features/s390x-linux64.c".
15291         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15292         s390_linux32 and s390x_linux64.
15293         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15294         default tdesc.
15295         * s390-tdep.c: Include "features/s390-linux32.c" and
15296         "features/s390x-linux64.c".
15297         (s390_tdesc_valid): Add check for tdesc_has_registers.
15298         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15299         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15300         tdesc_s390x_linux64.
15301         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15302         tdesc_s390x_linux64 to...
15303         * s390-tdep.h: ...here.
15304
15305 2018-01-30  Pedro Alves  <palves@redhat.com>
15306
15307         PR gdb/13211
15308         * config.in, configure: Regenerate.
15309         * configure.ac: Check for getpgid.
15310         * go32-nat.c (go32_pass_ctrlc): New.
15311         (go32_target): Install it.
15312         * inf-child.c (inf_child_target): Install
15313         child_terminal_save_inferior, child_pass_ctrlc and
15314         child_interrupt.
15315         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15316         (inf_ptrace_target): No longer install it.
15317         * infcmd.c (interrupt_target_1): Adjust.
15318         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15319         (child_interrupt): Declare.
15320         (inferior::terminal_state): New.
15321         * inflow.c (struct terminal_info): Update comments.
15322         (inferior_process_group): Delete.
15323         (terminal_is_ours): Delete.
15324         (gdb_tty_state): New.
15325         (child_terminal_init): Adjust.
15326         (is_gdb_terminal, sharing_input_terminal_1)
15327         (sharing_input_terminal): New functions.
15328         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15329         Set the process's actual process group in the foreground if
15330         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15331         mark terminal as the inferior's if not sharing GDB's terminal.
15332         Don't check attach_flag.
15333         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15334         pass down a target_terminal_state.
15335         (child_terminal_save_inferior): New, factored out from ...
15336         (child_terminal_ours_1): ... this.  Handle
15337         target_terminal_state::is_ours_for_output.
15338         (child_interrupt, child_pass_ctrlc): New.
15339         (inflow_inferior_exit): Clear the inferior's terminal_state.
15340         (copy_terminal_info): Copy the inferior's terminal state.
15341         (_initialize_inflow): Remove reference to terminal_is_ours.
15342         * inflow.h (inferior_process_group): Delete.
15343         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15344         * procfs.c (procfs_target): Don't install procfs_interrupt.
15345         (procfs_interrupt): Delete.
15346         * remote.c (remote_serial_quit_handler): Adjust.
15347         (remote_interrupt): Remove ptid parameter.  Adjust.
15348         * target-delegates.c: Regenerate.
15349         * target.c: Include "terminal.h".
15350         (target_terminal::terminal_state): Rename to ...
15351         (target_terminal::m_terminal_state): ... this.
15352         (target_terminal::init): Adjust.
15353         (target_terminal::inferior): Adjust to per-inferior
15354         terminal_state.
15355         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15356         (target_terminal::ours, target_terminal::ours_for_output): Use
15357         target_terminal_is_ours_kind.
15358         (target_interrupt): Remove ptid parameter.  Adjust.
15359         (default_target_pass_ctrlc): Adjust.
15360         * target.h (target_ops::to_terminal_save_inferior): New field.
15361         (target_ops::to_interrupt): Remove ptid_t parameter.
15362         (target_interrupt): Remove ptid_t parameter.  Update comment.
15363         (target_pass_ctrlc): Update comment.
15364         * target/target.h (target_terminal_state): New scoped enum,
15365         factored out of ...
15366         (target_terminal::terminal_state): ... here.
15367         (target_terminal::inferior): Update comments.
15368         (target_terminal::restore_inferior): New.
15369         (target_terminal::is_inferior, target_terminal::is_ours)
15370         (target_terminal::is_ours_for_output): Adjust.
15371         (target_terminal::scoped_restore_terminal_state): Adjust to
15372         rename, and call restore_inferior() instead of inferior().
15373         (target_terminal::scoped_restore_terminal_state::m_state): Change
15374         type.
15375         (target_terminal::terminal_state): Rename to ...
15376         (target_terminal::m_terminal_state): ... this and change type.
15377
15378 2018-01-30  Pedro Alves  <palves@redhat.com>
15379
15380         * linux-nat.c (wait_for_signal): New function.
15381         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15382         directly.
15383         (async_terminal_is_ours)
15384         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15385         (linux_nat_add_target): Don't override
15386         to_terminal_inferior/to_terminal_ours.
15387
15388 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15389
15390         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15391
15392 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15393
15394         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15395         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15396         dwarf2_per_objfile_free here.
15397         (dwarf2_per_objfile_free): Remove.
15398         (_initialize_dwarf2_read): Don't register
15399         dwarf2_per_objfile_free as a registry cleanup.
15400
15401 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15402
15403         Avoid compilation errors in MinGW native builds
15404
15405         The error is triggered by including python-internal.h, and the
15406         error message is:
15407
15408              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15409                       from build-gnulib/import/math.h:27,
15410                       from d:/usr/Python26/include/pyport.h:235,
15411                       from d:/usr/Python26/include/Python.h:58,
15412                       from python/python-internal.h:94,
15413                       from python/py-arch.c:24:
15414              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15415         using ::hypot;
15416                 ^~~~~
15417
15418         This happens because Python headers define 'hypot' to expand t
15419         '_hypot' in the Windows builds.
15420         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15421         'hypoth'.  This avoids a compilation error.
15422
15423 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15424
15425         * MAINTAINERS (Write After Approval): Fix ordering.
15426
15427 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15428
15429         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15430
15431 2018-01-26  Alan Modra  <amodra@gmail.com>
15432
15433         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15434         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15435         Remove nop.  Make const.  Comment.
15436         (powerpc32_plt_stub_so_2): New.
15437         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15438         Correct count.  Update uses.
15439         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15440         Move common code reading PLT entry word.  Correct
15441         powerpc32_plt_stub PLT address calculation.
15442         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15443         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15444         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15445         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15446         (ppc64_standard_linkage8): Likewise.
15447         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15448         Correct insns description.
15449         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15450
15451 2018-01-24  Pedro Alves  <palves@redhat.com>
15452
15453         GCC PR libstdc++/83906
15454         * gdbtypes.c (operator==(const dynamic_prop &,
15455         const dynamic_prop &)): New.
15456         (operator==(const range_bounds &, const range_bounds &)): New.
15457         (check_types_equal): Use them instead of memcmp.
15458         * gdbtypes.h (operator==(const dynamic_prop &,
15459         const dynamic_prop &)): Declare.
15460         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15461         (operator==(const range_bounds &, const range_bounds &)): Declare.
15462         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15463
15464 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15465
15466         * s390-linux-tdep.c (s390_record_address_mask)
15467         (s390_record_calc_disp_common, s390_record_calc_disp)
15468         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15469         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15470         (s390_process_record): Move to s390-tdep.c.
15471         (s390_linux_init_abi_any): Adjust.
15472         * s390-tdep.c (s390_record_address_mask)
15473         (s390_record_calc_disp_common, s390_record_calc_disp)
15474         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15475         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15476         (s390_process_record): Moved from s390-linux-tdep.c
15477         (s390_gdbarch_init): Adjust.
15478
15479 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15480
15481         * s390-linux-nat.c (s390-tdep.h): New include.
15482         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15483         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15484         (ALLDEPFILES): Add s390-tdep.c.
15485         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15486         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15487         * s390-tdep.h: ...this.  New file.
15488         * s390-linux-tdep.c (s390-tdep.h): New include.
15489         (_initialize_s390_tdep): Rename to...
15490         (_initialize_s390_linux_tdep): ...this and adjust.
15491         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15492         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15493         s390-tdep.h.
15494         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15495         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15496         (s390_is_partial_instruction, s390_software_single_step)
15497         (is_non_branch_ril, s390_displaced_step_copy_insn)
15498         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15499         (s390_prologue_data, s390_addr, s390_store, s390_load)
15500         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15501         (s390_register_call_saved, s390_guess_tracepoint_registers)
15502         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15503         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15504         (s390_pseudo_register_name, s390_pseudo_register_type)
15505         (s390_pseudo_register_read, s390_pseudo_register_write)
15506         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15507         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15508         (s390_addr_bits_remove, s390_address_class_type_flags)
15509         (s390_address_class_type_flags_to_name)
15510         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15511         (s390_function_arg_float, s390_function_arg_vector)
15512         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15513         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15514         (s390_frame_align, s390_register_return_value, s390_return_value)
15515         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15516         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15517         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15518         (s390_trad_frame_prev_register, s390_unwind_cache)
15519         (s390_prologue_frame_unwind_cache)
15520         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15521         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15522         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15523         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15524         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15525         (s390_frame_base_address, s390_local_base_address)
15526         (s390_frame_base, s390_gcc_target_options)
15527         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15528         (s390_validate_reg_range, s390_tdesc_valid)
15529         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15530         * s390-tdep.c: ...this.  New file.
15531
15532 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15533
15534         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15535         (s390_process_record, s390_gdbarch_tdep_alloc)
15536         (s390_linux_init_abi_any): Use/set new hook.
15537
15538 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15539
15540         * s390-linux-tdep.c (osabi.h): New include.
15541         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15542         (s390_linux_init_abi_any): New functions.
15543         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15544
15545 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15546
15547         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15548         tdesc_has_registers check
15549
15550 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15551
15552         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15553         (s390_validate_reg_range): New macro.
15554         (s390_gdbarch_init): Adjust.
15555
15556 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15557
15558         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15559         (s390_gdbarch_tdep_alloc): Adjust.
15560         (s390_gdbarch_init): Adjust.
15561
15562 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15563
15564         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15565         <have_tdb>: Change type to bool.
15566         (s390_gdbarch_tdep_alloc): Adjust.
15567         (s390_gdbarch_init): Adjust.
15568
15569 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15570
15571         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15572         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15573         (s390_gdbarch_tdep_alloc): New function.
15574         (s390_gdbarch_init): Allocate tdep at start and use its fields
15575         instead of separate variables.
15576
15577 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15578
15579         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15580         when looking for cached gdbarch and add comment for remaining.
15581
15582 2018-01-22  Pedro Alves  <palves@redhat.com>
15583             Sergio Durigan Junior  <sergiodj@redhat.com>
15584
15585         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15586         case.
15587
15588 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15589
15590         * MAINTAINERS: Update my company e-mail address.
15591
15592 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15593
15594         * regcache.c (cooked_write_test): New function.
15595         (_initialize_regcache): Register the test.
15596
15597 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15598
15599         * ia64-tdep.c (ia64_pseudo_register_read): Call
15600         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15601         * m32c-tdep.c (m32c_cat_read): Likewise.
15602         (m32c_r3r2r1r0_read): Likewise.
15603         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15604         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15605
15606 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15607
15608         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15609         method raw_read instead of regcache_raw_read.
15610         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15611         * arm-tdep.c (arm_neon_quad_read): Likewise.
15612         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15613         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15614         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15615         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15616         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15617         (i386_pseudo_register_read_into_value): Likewise.
15618         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15619         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15620         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15621         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15622         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15623         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15624         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15625         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15626         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15627
15628 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15629
15630         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15631         * configure.tgt: Remove target mt.
15632         * mt-tdep.c: Remove.
15633         * regcache.c (cooked_read_test): Remove the check for mt.
15634
15635 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15636
15637         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15638         instead of gdbarch_pseudo_register_read_value.
15639
15640 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15641
15642         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15643         language is Ada.
15644
15645 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15646
15647         * linespec.c (create_sals_line_offset): Remove code that preserved
15648         the symtab_and_line's line number.
15649
15650 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15651
15652         * varobj.c (varobj_create): Don't set valid_block when creating a
15653         floating varobj.
15654
15655 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15656
15657         * varobj.c (varobj_create): Remove out of date comment.
15658
15659 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15660
15661         PR mi/20395
15662         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15663         updating innermost block.
15664         * parse.c (innermost_block_tracker::update): Take extra type
15665         parameter, and check types match before updating innermost block.
15666         (write_dollar_variable): Update innermost block for registers.
15667         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15668         (innermost_block_tracker::innermost_block_tracker): Initialise
15669         m_types member.
15670         (innermost_block_tracker::reset): Take type parameter.
15671         (innermost_block_tracker::update): Take type parameter, and pass
15672         type through as needed.
15673         (innermost_block_tracker::m_types): New member.
15674         * varobj.c (varobj_create): Pass type when reseting innermost
15675         block.
15676
15677 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15678
15679         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15680         * ada-lang.c (resolve_subexp): Likewise.
15681         * breakpoint.c (set_breakpoint_condition) Likewise.
15682         (watch_command_1) Likewise.
15683         * c-exp.y (variable): Likewise.
15684         * d-exp.y (PrimaryExpression): Likewise.
15685         * f-exp.y (variable): Likewise.
15686         * go-exp.y (variable): Likewise.
15687         * m2-exp.y (variable): Likewise.
15688         * objfiles.c (objfile::~objfile): Likewise.
15689         * p-exp.y (variable): Likewise.
15690         * parse.c (innermost_block): Change type.
15691         * parser-defs.h (class innermost_block_tracker): New.
15692         (innermost_block): Change to innermost_block_tracker.
15693         * printcmd.c (display_command): Switch to innermost_block API.
15694         (do_one_display): Likewise.
15695         * rust-exp.y (do_one_display): Likewise.
15696         * symfile.c (clear_symtab_users): Likewise.
15697         * varobj.c (varobj_create): Switch to innermost_block API, replace
15698         use of innermost_block with block stored on varobj object.
15699
15700 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15701
15702         * expression.h (innermost_block): Remove declaration.
15703         * varobj.c: Add 'parser-defs.h' include.
15704
15705 2018-01-19  Tom Tromey  <tom@tromey.com>
15706
15707         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15708         symbols in the static and global blocks.
15709
15710 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15711
15712         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15713         gdb_ptrace.h, and move including gdb_wait.h ...
15714         * nat/linux-ptrace.h: ... to here.
15715
15716 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15717
15718         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15719         inf_ptrace_detach_success.
15720         (inf_ptrace_detach_success): Add inferior parameter, use it
15721         instead of inferior_ptid, pass it to detach_inferior.
15722         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15723         parameter.
15724         * inferior.c (detach_inferior): Add overload that takes an
15725         inferior object.
15726         * inferior.h (detach_inferior): Likewise.
15727         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15728         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15729         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15730
15731 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15732
15733         * target.h (struct target_ops) <to_detach>: Add inferior
15734         parameter.
15735         (target_detach): Likewise.
15736         * target.c (dispose_inferior): Pass inferior down.
15737         (target_detach): Pass inferior down.  Assert that it is equal to
15738         the current inferior.
15739         * aix-thread.c (aix_thread_detach): Pass inferior down.
15740         * corefile.c (core_file_command): Pass current_inferior() down.
15741         * corelow.c (core_detach): Add inferior parameter.
15742         * darwin-nat.c (darwin_detach): Likewise.
15743         * gnu-nat.c (gnu_detach): Likewise.
15744         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15745         * infcmd.c (detach_command): Pass current_inferior() down to
15746         target_detach.
15747         * infrun.c (follow_fork_inferior): Pass parent_inf to
15748         target_detach.
15749         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15750         target_detach.
15751         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15752         * linux-thread-db.c (thread_db_detach): Likewise.
15753         * nto-procfs.c (procfs_detach): Likewise.
15754         * procfs.c (procfs_detach): Likewise.
15755         * record.c (record_detach): Likewise.
15756         * record.h (struct inferior): Forward-declare.
15757         (record_detach): Add inferior parameter.
15758         * remote-sim.c (gdbsim_detach): Likewise.
15759         * remote.c (remote_detach_1): Likewise.
15760         (remote_detach): Likewise.
15761         (extended_remote_detach): Likewise.
15762         * sol-thread.c (sol_thread_detach): Likewise.
15763         * target-debug.h (target_debug_print_inferior_p): New macro.
15764         * target-delegates.c: Re-generate.
15765         * top.c (kill_or_detach): Pass inferior down to target_detach.
15766         * windows-nat.c (windows_detach): Add inferior parameter.
15767
15768 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15769
15770         * target.h (struct target_ops) <to_detach>: Remove args
15771         parameter.
15772         (target_detach): Likewise.
15773         * target.c (dispose_inferior): Adjust.
15774         (target_detach): Remove args parameter, adjust.
15775         * aix-thread.c (aix_thread_detach): Adjust.
15776         * corefile.c (core_file_command): Adjust.
15777         * corelow.c (core_detach): Adjust.
15778         * darwin-nat.c (darwin_detach): Adjust.
15779         * gnu-nat.c (gnu_detach): Adjust.
15780         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15781         * infcmd.c (detach_command): Adjust
15782         * infrun.c (follow_fork_inferior): Adjust.
15783         (handle_vfork_child_exec_or_exit): Adjust.
15784         * linux-fork.c (linux_fork_detach): Remove args parameter.
15785         * linux-fork.h (linux_fork_detach): Likewise.
15786         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15787         * linux-thread-db.c (thread_db_detach): Likewise.
15788         * nto-procfs.c (procfs_detach): Likewise.
15789         * procfs.c (procfs_detach): Likewise.
15790         (do_detach): Remove signo parameter.
15791         * record.c (record_detach): Remove args parameter.
15792         * record.h (record_detach): Likewise.
15793         * remote-sim.c (gdbsim_detach): Likewise.
15794         * remote.c (remote_detach_1): Likewise.
15795         (remote_detach): Likewise.
15796         (extended_remote_detach): Likewise.
15797         * sol-thread.c (sol_thread_detach): Likewise.
15798         * target-delegates.c: Re-generate.
15799         * top.c (struct qt_args) <args>: Remove field.
15800         (kill_or_detach): Don't pass args.
15801         (quit_force): Don't set args.
15802         * windows-nat.c (windows_detach): Remove args parameter.
15803
15804 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15805
15806         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15807         (arm_linux_init_abi): Install it.
15808
15809 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15810
15811         * osabi.c (gdb_osabi_names): Extend the regexp for
15812         arm-linux-gnueabihf.
15813
15814 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15815
15816         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15817         m_abbrevs.
15818         (abbrev_table::add_abbrev): Update.
15819         (abbrev_table::lookup_abbrev): Update.
15820
15821 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15822
15823         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15824
15825 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15826
15827         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15828         to "std::string".
15829
15830 2018-01-17  Tom Tromey  <tom@tromey.com>
15831
15832         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15833
15834 2018-01-17  Tom Tromey  <tom@tromey.com>
15835
15836         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15837         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15838         (create_array_type_with_stride): Update.
15839         * dwarf2read.c (set_die_type): Update.
15840
15841 2018-01-17  Tom Tromey  <tom@tromey.com>
15842
15843         * dwarf2read.c (delayed_method_info): Remove typedef.
15844         (dwarf2_cu::method_info): Now a std::vector.
15845         (add_to_method_list): Update.
15846         (free_delayed_list): Remove.
15847         (compute_delayed_physnames): Update.
15848         (process_full_comp_unit, process_full_type_unit): Clear the method
15849         list.  Remove cleanups.
15850         (psymtab_include_file_name): Add name_holder parameter.  Use
15851         unique_xmalloc_ptr.
15852         (dwarf_decode_lines): Update.
15853
15854 2018-01-17  Tom Tromey  <tom@tromey.com>
15855             Simon Marchi  <simon.marchi@ericsson.com>
15856
15857         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15858         (dwarf2_per_objfile::free_cached_comp_units)
15859         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15860         (init_cutu_and_read_dies_no_follow): Update.
15861         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15862         (dwarf2_cu::~dwarf2_cu): New.
15863         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15864         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15865
15866 2018-01-17  Tom Tromey  <tom@tromey.com>
15867             Simon Marchi  <simon.marchi@ericsson.com>
15868
15869         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15870         (struct die_reader_specs) <abbrev_table>: New member.
15871         (struct abbrev_table): Add constructor.
15872         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15873         <abbrev_obstack>: Now an auto_obstack.
15874         (abbrev_table_up): New typedef.
15875         (init_cu_die_reader): Add abbrev_table parameter.
15876         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15877         Add result_dwo_abbrev_table.
15878         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15879         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15880         Update.
15881         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15882         parameter.
15883         (skip_children): Update.
15884         (abbrev_table::alloc_abbrev): Rename from
15885         abbrev_table_alloc_abbrev.
15886         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15887         (abbrev_table::lookup_abbrev): Rename from
15888         abbrev_table_lookup_abbrev.
15889         (abbrev_table_read_table): Return abbrev_table_up.
15890         (abbrev_table_free, abbrev_table_free_cleanup)
15891         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15892         (load_partial_dies): Update.
15893
15894 2018-01-17  Tom Tromey  <tom@tromey.com>
15895
15896         * dwarf2read.c (dwarf2_compute_name): Update comment.
15897         (read_func_scope, read_variable): Update.
15898         (new_symbol): Remove.
15899         (new_symbol_full): Rename to new_symbol.
15900
15901 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15902
15903         PR gdb/16577
15904         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15905         a warning instead of throwing an error, set section size to 0 and return
15906         NULL.
15907         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15908
15909 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15910
15911         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15912         std::string.
15913         (linux_ptrace_attach_fail_reason_string): Likewise.
15914         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15915         Likewise.
15916         (linux_ptrace_attach_fail_reason_string): Likewise.
15917         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15918
15919 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15920
15921         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15922
15923 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15924
15925         PR gdb/21559
15926         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15927         checking for fs_base/gs_base fields in struct user_regs_struct.
15928         * configure: Regenerate.
15929
15930 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15931
15932         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15933         function.
15934         (aarch64_linux_init_abi): Install it to gdbarch hook
15935         gcc_target_options.
15936
15937 2018-01-15  Pedro Alves  <palves@redhat.com>
15938
15939         * common/signals-state-save-restore.c
15940         (save_original_signals_state): Fix typos.
15941
15942 2017-01-12  Tom Tromey  <tom@tromey.com>
15943             Sergio Durigan Junior  <sergiodj@redhat.com>
15944
15945         * Makefile.in (install-only): Install gdb-add-index.
15946
15947 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15948
15949         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15950
15951 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15952
15953         * infrun.c (keep_going_pass_signal): Clear step-over info when
15954         insert_breakpoints fails.
15955
15956 2018-01-11  Pedro Alves  <palves@redhat.com>
15957
15958         PR gdb/22583
15959         * infrun.c (resume): Rename to ...
15960         (resume_1): ... this.
15961         (resume): Reimplement as wrapper around resume_1.
15962
15963 2018-01-11  Pedro Alves  <palves@redhat.com>
15964
15965         PR remote/22597
15966         * remote.c (remote_parse_stop_reply): Default to the last-set
15967         general thread instead of to 'magic_null_ptid'.
15968
15969 2018-01-10  Pedro Alves  <palves@redhat.com>
15970
15971         * language.h (language_get_symbol_name_matcher): Rename ...
15972         (get_symbol_name_matcher): ... this.
15973         * language.c (language_get_symbol_name_matcher): Ditto.
15974         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15975         callers adjusted.
15976
15977 2018-01-10  Pedro Alves  <palves@redhat.com>
15978
15979         PR gdb/22670
15980         * dwarf2read.c
15981         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15982         Adjust to use language_get_symbol_name_matcher instead of
15983         language_defn::la_get_symbol_name_matcher.
15984         * language.c (language_get_symbol_name_matcher): If in Ada mode
15985         and the lookup name is a verbatim match, return Ada's matcher.
15986         * language.h (language_get_symbol_name_matcher): Adjust comment.
15987         (ada_lookup_name_info::verbatim_p):: New method.
15988
15989 2018-01-10  Pedro Alves  <palves@redhat.com>
15990
15991         PR gdb/22670
15992         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15993         minsym's language is language_auto or language_cplus, pass down
15994         language_ada instead.
15995         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15996
15997 2018-01-10  Pedro Alves  <palves@redhat.com>
15998
15999         PR gdb/22670
16000         * minsyms.c (linkage_name_str): New function.
16001         (iterate_over_minimal_symbols): Use it.
16002
16003 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16004
16005         * NEWS: Document that 'info proc' now works on FreeBSD.
16006
16007 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16008
16009         * configure.ac: Check for kinfo_getfile in libutil.
16010         * configure: Regenerate.
16011         * config.in: Regenerate.
16012         * fbsd-nat.c: Include "fbsd-tdep.h".
16013         (fbsd_fetch_cmdline): New.
16014         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16015         rather than calling error.
16016         (fbsd_info_proc): New.
16017         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16018         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16019         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16020
16021 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16022
16023         * fbsd-nat.c (struct free_deleter): Remove.
16024         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16025
16026 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16027
16028         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16029         NULL for an empty pathname.
16030
16031 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16032
16033         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16034         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16035         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16036         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16037         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16038         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16039         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16040         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16041         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16042         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16043         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16044         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16045         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16046         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16047         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16048
16049 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16050
16051         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16052         (gnu_xfer_auxv): New function.
16053         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16054         TARGET_OBJECT_AUXV.
16055
16056 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16057             Simon Marchi  <simon.marchi@ericsson.com>
16058
16059         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16060         common/selftest.c.
16061         (COMMON_OBS): Remove selftest.o.
16062         * configure.ac: Append selftest-arch.c and common/selftest.c to
16063         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16064         * configure: Re-generated.
16065         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16066         GDB_SELF_TEST.
16067         (maintenance_info_selftests): Likewise.
16068
16069 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16070
16071         * ada-valprint.c (val_print_packed_array_elements): Use
16072         proper number of elements when printing an array indexed
16073         by an enumeration type.
16074
16075 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16076
16077         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16078         (dw2_get_file_names_reader): Adjust.
16079         (lookup_dwo_signatured_type): Adjust.
16080         (lookup_dwp_signatured_type): Adjust.
16081         (lookup_signatured_type): Adjust.
16082         (create_type_unit_group): Adjust.
16083         (get_type_unit_group): Adjust.
16084         (process_psymtab_comp_unit_reader): Adjust.
16085         (build_type_psymtabs_reader): Adjust.
16086         (scan_partial_symbols): Adjust.
16087         (add_partial_symbol): Adjust.
16088         (add_partial_subprogram): Adjust.
16089         (peek_die_abbrev): Adjust.
16090         (fixup_go_packaging): Adjust.
16091         (process_imported_unit_die): Adjust.
16092         (dwarf2_compute_name): Adjust.
16093         (dwarf2_physname): Adjust.
16094         (read_import_statement): Adjust.
16095         (handle_DW_AT_stmt_list): Adjust.
16096         (read_file_scope): Adjust.
16097         (read_func_scope): Adjust.
16098         (read_lexical_block_scope): Adjust.
16099         (read_call_site_scope): Adjust.
16100         (read_variable): Adjust.
16101         (dwarf2_rnglists_process): Adjust.
16102         (dwarf2_ranges_process): Adjust.
16103         (dwarf2_ranges_read): Adjust.
16104         (dwarf2_get_pc_bounds): Adjust.
16105         (dwarf2_record_block_ranges): Adjust.
16106         (dwarf2_add_field): Adjust.
16107         (dwarf2_add_member_fn): Adjust.
16108         (read_structure_type): Adjust.
16109         (process_structure_scope): Adjust.
16110         (read_enumeration_type): Adjust.
16111         (read_array_type): Adjust.
16112         (mark_common_block_symbol_computed): Adjust.
16113         (read_common_block): Adjust.
16114         (read_namespace_type): Adjust.
16115         (read_namespace): Adjust.
16116         (read_module_type): Adjust.
16117         (read_tag_pointer_type): Adjust.
16118         (read_tag_ptr_to_member_type): Adjust.
16119         (read_tag_string_type): Adjust.
16120         (read_subroutine_type): Adjust.
16121         (read_typedef): Adjust.
16122         (read_base_type): Adjust.
16123         (attr_to_dynamic_prop): Adjust.
16124         (read_subrange_type): Adjust.
16125         (read_unspecified_type): Adjust.
16126         (dwarf2_read_abbrevs): Adjust.
16127         (load_partial_dies): Adjust.
16128         (read_partial_die): Adjust.
16129         (find_partial_die): Adjust.
16130         (guess_partial_die_structure_name): Adjust.
16131         (fixup_partial_die): Adjust.
16132         (read_attribute_value): Adjust.
16133         (read_addr_index): Adjust.
16134         (read_addr_index_from_leb128): Adjust.
16135         (read_str_index): Adjust.
16136         (dwarf2_string_attr): Adjust.
16137         (get_debug_line_section): Adjust.
16138         (dwarf_decode_line_header): Adjust.
16139         (lnp_state_machine::check_line_address): Adjust.
16140         (dwarf_decode_lines_1): Adjust.
16141         (dwarf_decode_lines): Adjust.
16142         (dwarf2_start_symtab): Adjust.
16143         (var_decode_location): Adjust.
16144         (new_symbol_full): Adjust.
16145         (dwarf2_const_value_data): Adjust.
16146         (dwarf2_const_value_attr): Adjust.
16147         (dwarf2_const_value): Adjust.
16148         (die_type): Adjust.
16149         (die_containing_type): Adjust.
16150         (build_error_marker_type): Adjust.
16151         (lookup_die_type): Adjust.
16152         (guess_full_die_structure_name): Adjust.
16153         (anonymous_struct_prefix): Adjust.
16154         (determine_prefix): Adjust.
16155         (dwarf2_name): Adjust.
16156         (follow_die_ref_or_sig): Adjust.
16157         (follow_die_offset): Adjust.
16158         (follow_die_ref): Adjust.
16159         (follow_die_sig_1): Adjust.
16160         (follow_die_sig): Adjust.
16161         (get_signatured_type): Adjust.
16162         (get_DW_AT_signature_type): Adjust.
16163         (decode_locdesc): Adjust.
16164         (dwarf_decode_macros): Adjust.
16165         (cu_debug_loc_section): Adjust.
16166         (fill_in_loclist_baton): Adjust.
16167         (dwarf2_symbol_mark_computed): Adjust.
16168         (init_one_comp_unit): Don't assign
16169         dwarf2_cu::dwarf2_per_objfile.
16170         (set_die_type): Adjust.
16171
16172 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16173
16174         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16175         <dwarf2_per_objfile>: New field.
16176         (dwarf2_per_objfile): Remove global.
16177         (get_dwarf2_per_objfile): New function.
16178         (set_dwarf2_per_objfile): New function.
16179         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16180         dwarf2_per_objfile.
16181         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16182         (read_abbrev_offset): Likewise.
16183         (read_indirect_string): Likewise.
16184         (read_indirect_line_string): Likewise.
16185         (read_indirect_string_at_offset): Likewise.
16186         (read_indirect_string_from_dwz): Likewise.
16187         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16188         dwarf2_per_objfile.
16189         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16190         (create_all_comp_units): Change objfile parameter to
16191         dwarf2_per_objfile.
16192         (create_all_type_units): Likewise.
16193         (process_queue): Add dwarf2_per_objfile parameter.
16194         (read_and_check_comp_unit_head): Likewise.
16195         (lookup_dwo_unit_in_dwp): Likewise.
16196         (get_dwp_file): Likewise.
16197         (process_cu_includes): Likewise.
16198         (struct free_dwo_file_cleanup_data): New struct.
16199         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16200         set_dwarf2_per_objfile.
16201         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16202         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16203         context, adjust calls.
16204         (dw2_instantiate_symtab): Likewise.
16205         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16206         (dw2_get_cu): Likewise.
16207         (create_cu_from_index_list): Change objfile parameter to
16208         dwarf2_per_objfile.
16209         (create_cus_from_index_list): Get dwarf2_per_objfile from
16210         context, adjust calls.
16211         (create_cus_from_index): Likewise.
16212         (create_signatured_type_table_from_index): Change objfile
16213         parameter to dwarf2_per_objfile.
16214         (create_signatured_type_table_from_debug_names): Change objfile
16215         parameter to dwarf2_per_objfile.
16216         (create_addrmap_from_index): Likewise.
16217         (create_addrmap_from_aranges): Likewise.
16218         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16219         (dw2_setup): Remove.
16220         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16221         context.
16222         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16223         get_dwarf2_per_objfile.
16224         (dw2_forget_cached_source_info): Likewise.
16225         (dw2_map_symtabs_matching_filename): Likewise.
16226         (struct dw2_symtab_iterator) <index>: Remove.
16227         <dwarf2_per_objfile>: New field.
16228         (dw2_symtab_iter_init): Replace index parameter with
16229         dwarf2_per_objfile.
16230         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16231         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16232         (dw2_print_stats): Likewise.
16233         (dw2_dump): Likewise.
16234         (dw2_expand_symtabs_for_function): Likewise.
16235         (dw2_expand_all_symtabs): Likewise.
16236         (dw2_expand_symtabs_with_fullname): Likewise.
16237         (dw2_expand_marked_cus): Replace index and objfile parameters
16238         with dwarf2_per_objfile.
16239         (dw_expand_symtabs_matching_file_matcher): Add
16240         dwarf2_per_objfile parameter and adjust calls.
16241         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16242         adjust calls.
16243         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16244         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16245         adjust calls.
16246         (create_cus_from_debug_names_list): Replace objfile parameter
16247         with dwarf2_per_objfile and adjust calls.
16248         (create_cus_from_debug_names): Likewise.
16249         (dwarf2_read_debug_names): Likewise.
16250         (mapped_debug_names::namei_to_name): Adjust call.
16251         (dw2_debug_names_iterator::next): Likewise.
16252         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16253         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16254         (dw2_debug_names_dump): Likewise.
16255         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16256         (dw2_debug_names_expand_symtabs_matching): Likewise.
16257         (dwarf2_initialize_objfile): Likewise.
16258         (dwarf2_build_psymtabs): Likewise.
16259         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16260         this_cu.
16261         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16262         (read_and_check_comp_unit_head): Likewise.
16263         (read_abbrev_offset): Likewise.
16264         (create_debug_type_hash_table): Likewise.
16265         (create_debug_types_hash_table): Likewise.
16266         (create_all_type_units): Replace objfile parameter with
16267         dwarf2_per_objfile.
16268         (add_type_unit): Add dwarf2_per_objfile parameter.
16269         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16270         with dwarf2_per_objfile.
16271         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16272         (lookup_dwp_signatured_type): Likewise.
16273         (lookup_signatured_type): Likewise.
16274         (read_cutu_die_from_dwo): Likewise.
16275         (init_tu_and_read_dwo_dies): Likewise.
16276         (init_cutu_and_read_dies): Likewise.
16277         (init_cutu_and_read_dies_no_follow): Likewise.
16278         (allocate_type_unit_groups_table): Add objfile parameter.
16279         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16280         (get_type_unit_group): Likewise.
16281         (process_psymtab_comp_unit): Update call.
16282         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16283         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16284         (print_tu_stats): Likewise.
16285         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16286         in void* parameter.
16287         (build_type_psymtabs): Change objfile parameter to
16288         dwarf2_per_objfile.
16289         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16290         passed in void* parameter.
16291         (process_skeletonless_type_units): Change objfile parameter to
16292         dwarf2_per_objfile.
16293         (set_partial_user): Likewise.
16294         (dwarf2_build_psymtabs_hard): Likewise.
16295         (read_comp_units_from_section): Likewise.
16296         (create_all_comp_units): Likewise.
16297         (scan_partial_symbols): Update calls.
16298         (add_partial_symbol): Likewise.
16299         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16300         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16301         (process_queue): Add dwarf2_per_objfile parameter.
16302         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16303         (compute_compunit_symtab_includes): Likewise.
16304         (process_cu_includes): Add dwarf2_per_objfile parameter.
16305         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16306         (process_full_type_unit): Likewise.
16307         (process_imported_unit_die): Update call.
16308         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16309         (read_file_scope): Likewise.
16310         (allocate_dwo_file_hash_table): Add objfile parameter.
16311         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16312         (create_cus_hash_table): Likewise.
16313         (create_dwp_hash_table): Likewise.
16314         (create_dwo_unit_in_dwp_v1): Likewise.
16315         (create_dwp_v2_section): Likewise.
16316         (create_dwo_unit_in_dwp_v2): Likewise.
16317         (lookup_dwo_unit_in_dwp): Likewise.
16318         (try_open_dwop_file): Likewise.
16319         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16320         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16321         cleanup to include a reference to dwarf2_per_objfile.
16322         (open_dwp_file): Add dwarf2_per_objfile parameter.
16323         (open_and_init_dwp_file): Likewise.
16324         (get_dwp_file): Likewise.
16325         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16326         (queue_and_load_all_dwo_tus): Update call.
16327         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16328         data.
16329         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16330         (dwarf2_ranges_process): Likewise.
16331         (dwarf2_get_pc_bounds): Likewise.
16332         (mark_common_block_symbol_computed): Likewise.
16333         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16334         (dwarf2_read_abbrevs): Update call.
16335         (read_partial_die): Use dwarf2_per_objfile from cu.
16336         (find_partial_die): Likewise.
16337         (fixup_partial_die): Likewise.
16338         (read_attribute_value): Likewise.
16339         (read_indirect_string_at_offset_from): Add objfile parameter.
16340         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16341         parameter.
16342         (read_indirect_string_from_dwz): Add objfile parameter.
16343         (read_indirect_string): Add objfile parameter.
16344         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16345         (read_addr_index): Use dwarf2_per_objfile from cu.
16346         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16347         call dw2_setup.
16348         (read_str_index): Use dwarf2_per_objfile from cu.
16349         (get_debug_line_section): Likewise.
16350         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16351         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16352         (new_symbol_full): Use dwarf2_per_objfile from cu.
16353         (build_error_marker_type): Likewise.
16354         (lookup_die_type): Likewise.
16355         (determine_prefix): Likewise.
16356         (follow_die_offset): Likewise.
16357         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16358         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16359         (dwarf2_fetch_die_type_sect_off): Likewise.
16360         (dwarf2_get_die_type): Likewise.
16361         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16362         (get_signatured_type): Likewise.
16363         (get_DW_AT_signature_type): Likewise.
16364         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16365         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16366         (cu_debug_loc_section): Likewise.
16367         (fill_in_loclist_baton): Likewise.
16368         (dwarf2_symbol_mark_computed): Likewise.
16369         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16370         dwarf2_per_objfile.
16371         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16372         parameter.
16373         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16374         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16375         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16376         (set_die_type): Use dwarf2_free_objfile from cu.
16377         (get_die_type_at_offset): Likewise.
16378         (dwarf2_per_objfile_free): Don't assign global variable.
16379         (debug_names) <constructor>: Add dwarf2_per_objfile
16380         parameter, update m_debugstrlookup construction.
16381         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16382         parameter.
16383         <m_dwarf2_per_objfile>: New field.
16384         <lookup>: Use m_dwarf2_per_objfile.
16385         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16386         (psyms_seen_size): Likewise.
16387         (write_gdbindex): Replace objfile parameter with
16388         dwarf2_per_objfile.
16389         (write_debug_names): Likewise.
16390         (write_psymtabs_to_index): Likewise.
16391         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16392         calls.
16393
16394 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16395
16396         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16397         <dwarf2_per_objfile>: New field.
16398         (struct dwarf2_per_cu_data) <objfile>: Remove.
16399         <dwarf2_per_objfile>: New field.
16400         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16401         of objfile.
16402         (create_signatured_type_table_from_index): Likewise.
16403         (create_debug_type_hash_table): Likewise.
16404         (fill_in_sig_entry_from_dwo_entry): Likewise.
16405         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16406         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16407         objfile.
16408         (create_partial_symtab): Access objfile through
16409         dwarf2_per_objfile.
16410         (process_psymtab_comp_unit_reader): Likewise.
16411         (read_comp_units_from_section): Likewise.
16412         (scan_partial_symbols): Likewise.
16413         (add_partial_symbol): Likewise.
16414         (add_partial_subprogram): Likewise.
16415         (peek_die_abbrev): Likewise.
16416         (fixup_go_packaging): Likewise.
16417         (process_full_comp_unit): Likewise.
16418         (process_full_type_unit): Likewise.
16419         (process_imported_unit_die): Likewise.
16420         (dwarf2_compute_name): Likewise.
16421         (dwarf2_physname): Likewise.
16422         (read_import_statement): Likewise.
16423         (create_cus_hash_table): Assign dwarf2_physname instead of
16424         objfile.
16425         (read_func_scope): Access objfile through dwarf2_per_objfile.
16426         (read_lexical_block_scope): Likewise.
16427         (read_call_site_scope): Likewise.
16428         (read_variable): Likewise.
16429         (dwarf2_rnglists_process): Likewise.
16430         (dwarf2_ranges_process): Likewise.
16431         (dwarf2_ranges_read): Likewise.
16432         (dwarf2_record_block_ranges): Likewise.
16433         (dwarf2_add_field): Likewise.
16434         (dwarf2_add_member_fn): Likewise.
16435         (read_structure_type): Likewise.
16436         (process_structure_scope): Likewise.
16437         (read_enumeration_type): Likewise.
16438         (read_array_type): Likewise.
16439         (read_common_block): Likewise.
16440         (read_namespace_type): Likewise.
16441         (read_namespace): Likewise.
16442         (read_module_type): Likewise.
16443         (read_tag_pointer_type): Likewise.
16444         (read_tag_ptr_to_member_type): Likewise.
16445         (read_tag_string_type): Likewise.
16446         (read_subroutine_type): Likewise.
16447         (read_typedef): Likewise.
16448         (read_base_type): Likewise.
16449         (attr_to_dynamic_prop): Likewise.
16450         (read_subrange_type): Likewise.
16451         (read_unspecified_type): Likewise.
16452         (load_partial_dies): Likewise.
16453         (read_partial_die): Likewise.
16454         (find_partial_die): Likewise.
16455         (guess_partial_die_structure_name): Likewise.
16456         (fixup_partial_die): Likewise.
16457         (read_attribute_value): Likewise.
16458         (read_addr_index_from_leb128): Likewise.
16459         (dwarf2_read_addr_index): Likewise.
16460         (dwarf2_string_attr): Likewise.
16461         (lnp_state_machine::check_line_address): Likewise.
16462         (dwarf_decode_lines_1): Likewise.
16463         (dwarf_decode_lines): Likewise.
16464         (dwarf2_start_symtab): Likewise.
16465         (var_decode_location): Likewise.
16466         (new_symbol_full): Likewise.
16467         (dwarf2_const_value_data): Likewise.
16468         (dwarf2_const_value_attr): Likewise.
16469         (dwarf2_const_value): Likewise.
16470         (die_type): Likewise.
16471         (die_containing_type): Likewise.
16472         (lookup_die_type): Likewise.
16473         (guess_full_die_structure_name): Likewise.
16474         (anonymous_struct_prefix): Likewise.
16475         (dwarf2_name): Likewise.
16476         (follow_die_ref_or_sig): Likewise.
16477         (follow_die_offset): Likewise.
16478         (follow_die_ref): Likewise.
16479         (dwarf2_fetch_die_loc_sect_off): Likewise.
16480         (dwarf2_fetch_constant_bytes): Likewise.
16481         (dwarf2_fetch_die_type_sect_off): Likewise.
16482         (dwarf2_get_die_type): Likewise.
16483         (follow_die_sig): Likewise.
16484         (decode_locdesc): Likewise.
16485         (dwarf2_per_cu_objfile): Likewise.
16486         (dwarf2_per_cu_text_offset): Likewise.
16487         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16488         objfile.
16489         (set_die_type): Access objfile through
16490         dwarf2_per_objfile.
16491
16492 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16493
16494         * valprint.c (converted_character_d): Remove typedef.
16495         (DEF_VEC_O (converted_character_d)): Remove.
16496         (count_next_character): Use std::vector.
16497         (print_converted_chars_to_obstack): Likewise.
16498         (generic_printstr): Likewise.
16499
16500 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16501
16502         * xml-support.h (struct gdb_xml_value): Add constructor.
16503         <value>: Change type to unique_xmalloc_ptr.
16504         (gdb_xml_value_s): Remove typedef.
16505         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16506         (gdb_xml_element_start_handler): Change parameter type to
16507         std::vector.
16508         (xml_find_attribute): Likewise.
16509         * xml-support.c (xml_find_attribute): Change parameter type to
16510         std::vector and adjust.
16511         (gdb_xml_values_cleanup): Remove.
16512         (gdb_xml_parser::start_element): Adjust to std::vector.
16513         (xinclude_start_include): Change paraeter type to std::vector
16514         and adjust.
16515         * btrace.c (check_xml_btrace_version): Likewise.
16516         (parse_xml_btrace_block): Likewise.
16517         (parse_xml_btrace_pt_config_cpu): Likewise.
16518         (parse_xml_btrace_pt): Likewise.
16519         (parse_xml_btrace_conf_bts): Likewise.
16520         (parse_xml_btrace_conf_pt): Likewise.
16521         * memory-map.c (memory_map_start_memory): Likewise.
16522         (memory_map_start_property): Likewise.
16523         * osdata.c (osdata_start_osdata): Likewise.
16524         (osdata_start_item): Likewise.
16525         (osdata_start_column): Likewise.
16526         * remote.c (start_thread): Likewise.
16527         * solib-aix.c (library_list_start_library): Likewise.
16528         (library_list_start_list): Likewise.
16529         * solib-svr4.c (library_list_start_library): Likewise.
16530         (svr4_library_list_start_list): Likewise.
16531         * solib-target.c (library_list_start_segment): Likewise.
16532         (library_list_start_section): Likewise.
16533         (library_list_start_library): Likewise.
16534         (library_list_start_list): Likewise.
16535         * tracepoint.c (traceframe_info_start_memory): Likewise.
16536         (traceframe_info_start_tvar): Likewise.
16537         * xml-syscall.c (syscall_start_syscall): Likewise.
16538         * xml-tdesc.c (tdesc_start_target): Likewise.
16539         (tdesc_start_feature): Likewise.
16540         (tdesc_start_reg): Likewise.
16541         (tdesc_start_union): Likewise.
16542         (tdesc_start_struct): Likewise.
16543         (tdesc_start_flags): Likewise.
16544         (tdesc_start_enum): Likewise.
16545         (tdesc_start_field): Likewise.
16546         (tdesc_start_enum_value): Likewise.
16547         (tdesc_start_vector): Likewise.
16548
16549 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16550
16551         * extension.h (struct xmethod_worker) <clone>: Remove.
16552         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16553         Remove.
16554         (python_xmethod_worker::clone): Remove.
16555         * valops.c (find_overload_match): Use std::move instead of
16556         clone.
16557
16558 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16559
16560         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16561         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16562         <free_xmethod_worker_data>: Remove.
16563         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16564         <get_xmethod_arg_types>: Remove.
16565         <get_xmethod_result_type>: Remove.
16566         <invoke_xmethod>: Remove.
16567         * extension.c (new_xmethod_worker): Remove.
16568         (clone_xmethod_worker): Remove.
16569         (get_matching_xmethod_workers): Return void, pass std::vector by
16570         pointer.
16571         (get_xmethod_arg_types): Rename to...
16572         (xmethod_worker::get_arg_types): ... this, and adjust.
16573         (get_xmethod_result_type): Rename to...
16574         (xmethod_worker::get_result_type): ... this, and adjust.
16575         (invoke_xmethod): Remove.
16576         (free_xmethod_worker): Remove.
16577         (free_xmethod_worker_vec): Remove.
16578         * extension.h (enum ext_lang_rc): Move here from
16579         extension-priv.h.
16580         (struct xmethod_worker): Add constructor and destructor.
16581         <data>: Remove.
16582         <value>: Remove.
16583         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16584         virtual pure methods.
16585         <get_arg_types, get_result_type>: New methods.
16586         (xmethod_worker_ptr): Remove typedef.
16587         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16588         (xmethod_worker_vec): Remove typedef.
16589         (xmethod_worker_up): New typedef.
16590         (invoke_xmethod): Remove.
16591         (clone_xmethod_worker): Remove.
16592         (free_xmethod_worker): Remove.
16593         (free_xmethod_worker_vec): Remove.
16594         (get_xmethod_arg_types): Remove.
16595         (get_xmethod_result_type): Remove.
16596         * valops.c (find_method_list): Use std::vector, don't use
16597         intermediate vector.
16598         (value_find_oload_method_list): Use std::vector.
16599         (find_overload_match): Use std::vector.
16600         (find_oload_champ): Use std::vector.
16601         * value.c (value_free): Use operator delete.
16602         (value_of_xmethod): Rename to...
16603         (value_from_xmethod): ... this.  Don't assign
16604         xmethod_worker::value, take rvalue-reference.
16605         (result_type_of_xmethod): Adjust.
16606         (call_xmethod): Adjust.
16607         * value.h: Include extension.h.
16608         (struct xmethod_worker): Don't forward-declare.
16609         (value_of_xmethod): Rename to...
16610         (value_from_xmethod): ... this, take rvalue-reference.
16611         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16612         (struct python_xmethod_worker): ... this, add constructor and
16613         destructor.
16614         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16615         (gdbpy_free_xmethod_worker_data): Rename to...
16616         (python_xmethod_worker::~python_xmethod_worker): ... this and
16617         adjust.
16618         (gdbpy_clone_xmethod_worker_data): Rename to...
16619         (python_xmethod_worker::clone): ... this and adjust.
16620         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16621         temporary vector.
16622         (gdbpy_get_xmethod_arg_types): Rename to...
16623         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16624         (gdbpy_get_xmethod_result_type): Rename to...
16625         (python_xmethod_worker::do_get_result_type): ... this and
16626         adjust.
16627         (gdbpy_invoke_xmethod): Rename to...
16628         (python_xmethod_worker::invoke): ... this and adjust.
16629         (new_python_xmethod_worker): Rename to...
16630         (python_xmethod_worker::python_xmethod_worker): ... this and
16631         adjust.
16632         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16633         Remove.
16634         (gdbpy_free_xmethod_worker_data): Remove.
16635         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16636         (gdbpy_get_xmethod_arg_types): Remove.
16637         (gdbpy_get_xmethod_result_type): Remove.
16638         (gdbpy_invoke_xmethod): Remove.
16639         * python/python.c (python_extension_ops): Remove obsolete
16640         callbacks.
16641
16642 2018-01-05  Pedro Alves  <palves@redhat.com>
16643
16644         PR gdb/18653
16645         * common/signals-state-save-restore.c
16646         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16647         find a custom handler preinstalled, instead of internal erroring.
16648         But only warn if !quiet.
16649         * common/signals-state-save-restore.h
16650         (save_original_signals_state): New parameter 'quiet'.
16651         * main.c (captured_main_1): Move save_original_signals_state call
16652         after option handling, and pass QUIET.
16653
16654 2018-01-05  Pedro Alves  <palves@redhat.com>
16655
16656         * spu-tdep.c (spu_catch_start): Pass
16657         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16658
16659 2018-01-05  Pedro Alves  <palves@redhat.com>
16660
16661         PR gdb/22670
16662         * ada-lang.c (literal_symbol_name_matcher): New function.
16663         (ada_get_symbol_name_matcher): Use it for
16664         symbol_name_match_type::SEARCH_NAME.
16665         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16666         it down instead of assuming symbol_name_match_type::FULL.
16667         * block.h (block_lookup_symbol): New parameter 'match_type'.
16668         * c-valprint.c (print_unpacked_pointer): Use
16669         lookup_symbol_search_name instead of lookup_symbol.
16670         * compile/compile-object-load.c (get_out_value_type): Pass down
16671         symbol_name_match_type::SEARCH_NAME.
16672         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16673         symbol_name_match_type::FULL.
16674         * cp-support.c (cp_get_symbol_name_matcher): Handle
16675         symbol_name_match_type::SEARCH_NAME.
16676         * infrun.c (insert_exception_resume_breakpoint): Use
16677         lookup_symbol_search_name.
16678         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16679         * psymtab.c (maintenance_check_psymtabs): Use
16680         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16681         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16682         SYMBOL_SEARCH_NAME.
16683         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16684         if symbol_name_match_type::SEARCH_NAME.
16685         (lookup_symbol_in_language): Pass down
16686         symbol_name_match_type::FULL.
16687         (lookup_symbol_search_name): New.
16688         (lookup_language_this): Pass down
16689         symbol_name_match_type::SEARCH_NAME.
16690         (lookup_symbol_aux, lookup_local_symbol): New parameter
16691         'match_type'.  Pass it down.
16692         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16693         (lookup_symbol_search_name): New declaration.
16694         (lookup_symbol_in_block): New 'match_type' parameter.
16695
16696 2018-01-05  Pedro Alves  <palves@redhat.com>
16697
16698         PR gdb/22670
16699         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16700         ada_lookup_symbol.
16701         (ada_lookup_symbol): Reimplement in terms of
16702         ada_lookup_symbol_list, bits factored out from
16703         ada_lookup_encoded_symbol.
16704
16705 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16706
16707         * ada-exp.y (write_object_renaming): When subscripting an array
16708         using a symbol as the index, pass the block in call to
16709         ada_lookup_encoded_symbol when looking that symbol up.
16710
16711 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16712
16713         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16714         TYPE_INDEX_TYPE.
16715
16716 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16717
16718         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16719         the case where VALUE_LVAL (val0) is not lval_memory.
16720
16721 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16722
16723         * ada-valprint.c (print_optional_low_bound): Handle
16724         character-indexed array printing like boolean-indexed array
16725         printing.
16726
16727 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16728
16729         * NEWS: Create a new section for the next release branch.
16730         Rename the section of the current branch, now that it has
16731         been cut.
16732
16733 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16734
16735         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16736         * version.in: Bump version to 8.1.50.DATE-git.
16737
16738 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16739
16740         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16741         Add field.
16742         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16743         Add field.
16744         (default_exception_support_info) <catch_handlers_sym>: Add field.
16745         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16746         (ada_exception_name_addr_1): Add "catch handlers" handling.
16747         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16748         Update all callers.
16749         (create_excep_cond_exprs) <ex>: Add parameter.
16750         (re_set_exception): Update create_excep_cond_exprs call.
16751         (print_it_exception, print_one_exception, print_mention_exception)
16752         (print_recreate_exception): Add "catch handler" handling.
16753         (allocate_location_catch_handlers, re_set_catch_handlers)
16754         (check_status_catch_handlers, print_it_catch_handlers)
16755         (print_one_catch_handlers, print_mention_catch_handlers)
16756         (print_recreate_catch_handlers): New function.
16757         (catch_handlers_breakpoint_ops): New variable.
16758         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16759         Add parameter.  Add "catch handler" handling.
16760         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16761         Add "catch handler" handling.
16762         (ada_exception_catchpoint_cond_string): Add "catch handler"
16763         handling.
16764         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16765         call.
16766         (catch_ada_handlers_command): New function.
16767         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16768         operations structure.
16769         (_initialize_ada_language): Add "catch handlers" command entry.
16770         * NEWS: Document "catch handlers" feature.
16771
16772 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16773
16774         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16775         account when creating the array type of the slice.
16776         (ada_value_slice): Likewise.
16777
16778 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16779
16780         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16781         New enum value.
16782         (create_array_type_with_stride): Add byte_stride_prop parameter.
16783         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16784         New parameter.  Update all callers in this file.
16785         (array_type_has_dynamic_stride): New function.
16786         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16787         of arrays with dynamic byte strides.
16788         * dwarf2read.c (read_array_type): Add support for dynamic
16789         DW_AT_byte_stride attributes.
16790
16791 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16792
16793         * dwarf2read.c (read_unspecified_type): Treat
16794         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16795
16796 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16797
16798         Update copyright year range in all GDB files.
16799
16800 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16801
16802         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16803         and gdb/testsuite/gdb.base/step-line.c.
16804
16805 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16806
16807         * copyright.py (main): Dump the contents of
16808         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16809         even if BY_HAND is empty.
16810
16811 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16812
16813         * top.c (print_gdb_version): Update Copyright year in version
16814         message.
16815
16816 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16817
16818         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16819
16820 For older changes see ChangeLog-2017.
16821 \f
16822 Local Variables:
16823 mode: change-log
16824 left-margin: 8
16825 fill-column: 74
16826 version-control: never
16827 coding: utf-8
16828 End: